Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
newShopBack
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
newshop
newShopBack
Commits
8cba6786
Commit
8cba6786
authored
Nov 27, 2019
by
姚书霞
🐘
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
电子围栏导出和查看详情
parent
d930accc
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
181 additions
and
14 deletions
+181
-14
urlmanager.php
backend/config/urlmanager.php
+2
-3
CityDistributionSettingController.php
...ntrollers/v1/branch/CityDistributionSettingController.php
+26
-4
ShopCityDistributionSetting.php
backend/models/v1/branch/ShopCityDistributionSetting.php
+153
-7
No files found.
backend/config/urlmanager.php
View file @
8cba6786
...
@@ -142,9 +142,8 @@ return [
...
@@ -142,9 +142,8 @@ return [
'extraPatterns'
=>
[
'extraPatterns'
=>
[
'GET,OPTIONS city-distribution-setting-list'
=>
'city-distribution-setting-list'
,
'GET,OPTIONS city-distribution-setting-list'
=>
'city-distribution-setting-list'
,
'GET,OPTIONS city-distribution-setting-detail'
=>
'city-distribution-setting-detail'
,
'GET,OPTIONS city-distribution-setting-detail'
=>
'city-distribution-setting-detail'
,
'PUT,OPTIONS membergrade-revise'
=>
'membergrade-revise'
,
'POST,OPTIONS city-distribution-setting-save'
=>
'city-distribution-setting-save'
,
'POST,OPTIONS membergrade-add'
=>
'membergrade-add'
,
'DELETE,OPTIONS city-distribution-setting-delete'
=>
'city-distribution-setting-delete'
,
'DELETE,OPTIONS membergrade-delete'
=>
'membergrade-delete'
,
],
],
],
],
//用户列表
//用户列表
...
...
backend/controllers/v1/branch/CityDistributionSettingController.php
View file @
8cba6786
...
@@ -19,13 +19,14 @@ class CityDistributionSettingController extends BaseController
...
@@ -19,13 +19,14 @@ class CityDistributionSettingController extends BaseController
* summary="电子围栏列表(姚书侠)",
* summary="电子围栏列表(姚书侠)",
* description="电子围栏列表接口",
* description="电子围栏列表接口",
* @OA\Parameter(in = "query",name = "code",description = "门店编码",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "code",description = "门店编码",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "province",description = "省
名称
",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "province",description = "省
份
",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "city",description = "
市名称
",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "city",description = "
城市
",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "region",description = "
区名称
",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "region",description = "
县区
",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "b2c_issetting",description = "是否设置B2C(1是 0否)",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "b2c_issetting",description = "是否设置B2C(1是 0否)",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "o2o_issetting",description = "是否设置020(1是 0否)",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "o2o_issetting",description = "是否设置020(1是 0否)",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "page",description = "分页页码",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "page",description = "分页页码",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "pageSize",description = "分页大小",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "pageSize",description = "分页大小",required = false,@OA\Schema(type="string")),
* @OA\Parameter(in = "query",name = "export",description = "是否导出 传1生效 导出则分页设置不管用",required = false,@OA\Schema(type="string")),
* @OA\Response(response="200",description="
* @OA\Response(response="200",description="
* GUID:门店GUID,
* GUID:门店GUID,
* CODE:门店CODE,
* CODE:门店CODE,
...
@@ -44,8 +45,9 @@ class CityDistributionSettingController extends BaseController
...
@@ -44,8 +45,9 @@ class CityDistributionSettingController extends BaseController
//重写index
//重写index
public
function
actionCityDistributionSettingList
()
public
function
actionCityDistributionSettingList
()
{
{
$params
=
Yii
::
$app
->
getRequest
()
->
get
();
$model
=
new
$this
->
modelClass
();
$model
=
new
$this
->
modelClass
();
$result
=
$model
->
getList
();
$result
=
$model
->
getList
(
$params
);
return
$result
;
return
$result
;
}
}
...
@@ -69,4 +71,24 @@ class CityDistributionSettingController extends BaseController
...
@@ -69,4 +71,24 @@ class CityDistributionSettingController extends BaseController
return
$result
;
return
$result
;
}
}
/**
* @OA\Get(
* path="/backend/web/v1/branch/city-distribution-settings/city-distribution-setting-save",
* tags={"门店&DC"},
* summary="电子围栏保存(姚书侠)",
* description="电子围栏保存接口",
* @OA\Parameter(name="guid",in="query",required=true,description="门店GUID",@OA\Schema(type="string")),
* @OA\Response(response = 200,description = "success"),
* security={{"Authorization": {}}}
* )
*/
//编辑用
public
function
actionCityDistributionSettingSave
()
{
$branchguid
=
Yii
::
$app
->
getRequest
()
->
get
(
'guid'
);
$model
=
new
$this
->
modelClass
();
$result
=
$model
->
getDetail
(
$branchguid
);
return
$result
;
}
}
}
\ No newline at end of file
backend/models/v1/branch/ShopCityDistributionSetting.php
View file @
8cba6786
...
@@ -5,6 +5,7 @@ use Yii;
...
@@ -5,6 +5,7 @@ use Yii;
use
app\models\v1\BaseModel
;
use
app\models\v1\BaseModel
;
use
app\models\v1\branch\ShopBranch
;
use
app\models\v1\branch\ShopBranch
;
use
yii\data\ActiveDataProvider
;
use
yii\data\ActiveDataProvider
;
use
yidas\phpSpreadsheet\Helper
;
/**
/**
...
@@ -119,10 +120,8 @@ class ShopCityDistributionSetting extends BaseModel
...
@@ -119,10 +120,8 @@ class ShopCityDistributionSetting extends BaseModel
/**
/**
* 获取电子围栏列表(就是门店列表,连电子围栏表)
* 获取电子围栏列表(就是门店列表,连电子围栏表)
*/
*/
public
function
getList
()
public
function
getList
(
$params
)
{
{
$params
=
Yii
::
$app
->
getRequest
()
->
get
();
//根据条件查询门店
//根据条件查询门店
$branch_query
=
ShopBranch
::
find
()
->
alias
(
'sb'
)
$branch_query
=
ShopBranch
::
find
()
->
alias
(
'sb'
)
->
select
(
"vwb.PROVINCE,vwb.CITY,vwb.REGION,sb.NAME,sb.PHONE,sb.GUID,sb.CODE,sb.ADDRESS,group_concat(cds.SETTING_TYPE) SETTING_TYPES "
)
->
select
(
"vwb.PROVINCE,vwb.CITY,vwb.REGION,sb.NAME,sb.PHONE,sb.GUID,sb.CODE,sb.ADDRESS,group_concat(cds.SETTING_TYPE) SETTING_TYPES "
)
...
@@ -164,11 +163,44 @@ class ShopCityDistributionSetting extends BaseModel
...
@@ -164,11 +163,44 @@ class ShopCityDistributionSetting extends BaseModel
}
}
}
}
//如果是导出
if
(
isset
(
$params
[
'export'
])
&&
$params
[
'export'
]
==
'1'
)
{
$result
=
$branch_query
->
all
();
$export_result
=
[];
foreach
(
$result
as
$key
=>&
$value
){
$export
=
array
(
$value
[
'NAME'
],
$value
[
'PROVINCE'
],
$value
[
'CITY'
],
$value
[
'REGION'
],
$value
[
'PHONE'
],
$value
[
'ADDRESS'
]
);
if
(
strstr
(
$value
[
'SETTING_TYPES'
],
'1'
)){
$export
[
'B2C_ISSETTING'
]
=
'是'
;
}
else
{
$export
[
'B2C_ISSETTING'
]
=
'否'
;
}
if
(
strstr
(
$value
[
'SETTING_TYPES'
],
'2'
)){
$export
[
'020_ISSETTING'
]
=
'是'
;
}
else
{
$export
[
'020_ISSETTING'
]
=
'否'
;
}
array_push
(
$export_result
,
$export
);
}
unset
(
$result
);
Helper
::
newSpreadsheet
()
->
addRow
([
'门店名称'
,
'省'
,
'市'
,
'区/县'
,
'电话'
,
'门店地址'
,
'是否设置O2O围栏'
,
'是否设置B2C围栏'
])
->
addRows
(
$export_result
)
->
output
(
"门店电子围栏"
,
"Csv"
);
exit
();
}
$result
=
new
ActiveDataProvider
(
$result
=
new
ActiveDataProvider
(
[
[
'query'
=>
$branch_query
,
'query'
=>
$branch_query
,
'pagination'
=>
[
'pagination'
=>
[
'pageSize'
=>
$
requestP
arams
[
'pageSize'
]
??
20
,
'pageSize'
=>
$
p
arams
[
'pageSize'
]
??
20
,
]
]
]
]
);
);
...
@@ -197,9 +229,123 @@ class ShopCityDistributionSetting extends BaseModel
...
@@ -197,9 +229,123 @@ class ShopCityDistributionSetting extends BaseModel
*/
*/
public
function
getDetail
(
$branchguid
)
public
function
getDetail
(
$branchguid
)
{
{
$a
=
ShopBranch
::
findOne
(
$branchguid
)
//门店信息
->
select
(
"GUID,NAME"
);
$branch_info
=
ShopBranch
::
find
()
->
where
([
"GUID"
=>
$branchguid
])
->
select
(
"GUID,NAME,LAT,LNG,ADDRESS"
)
->
asArray
()
->
one
();
//门店下面的O2O和B2C设置,以及对应的区域
$select
=
"cds.GUID SETTING_GUID,cds.REGION_TYPE,cds.REGION_DISTR_DISTANCE,cds.REGION_DISTR_PRICE,cds.INCREASE_DISTANCE,cds.INCREASE_PRICE,"
;
$select
.=
"cds.LAT,cds.LNG,cds.STATUS,cds.SETTING_TYPE,cdr.GUID REGION_GUID,cdr.CITY_DISTR_GUID,cdr.ORDEX,cdr.COLORS,"
;
$select
.=
"cdr.HF_TYPE,cdr.REGION_R,cdr.REGION_RANGE,cdr.QS_PRICE,cdr.PS_PRICE,cdr.WEEK,cdr.IS_TYPE"
;
$setting_info
=
$this
->
find
()
->
alias
(
"cds"
)
->
select
(
$select
)
->
where
([
"cds.BRANCH_GUID"
=>
$branchguid
])
->
leftJoin
(
"shop_city_distribution_region cdr"
,
"cdr.CITY_DISTR_GUID=cds.GUID"
)
->
asArray
()
->
all
();
//整合数组
$o2o
=
[];
$b2c
=
[];
foreach
(
$setting_info
as
$key
=>
$value
){
if
(
$value
[
'SETTING_TYPE'
]
==
'1'
){
if
(
empty
(
$b2c
[
'GUID'
])){
$b2c
[
'GUID'
]
=
$value
[
'SETTING_GUID'
];
$b2c
[
'REGION_TYPE'
]
=
$value
[
'REGION_TYPE'
];
$b2c
[
'REGION_DISTR_DISTANCE'
]
=
$value
[
'REGION_DISTR_DISTANCE'
];
$b2c
[
'REGION_DISTR_PRICE'
]
=
$value
[
'REGION_DISTR_PRICE'
];
$b2c
[
'INCREASE_DISTANCE'
]
=
$value
[
'INCREASE_DISTANCE'
];
$b2c
[
'INCREASE_PRICE'
]
=
$value
[
'INCREASE_PRICE'
];
$b2c
[
'LAT'
]
=
$value
[
'LAT'
];
$b2c
[
'LNG'
]
=
$value
[
'LNG'
];
$b2c
[
'STATUS'
]
=
$value
[
'STATUS'
];
$b2c
[
'SETTING_TYPE'
]
=
$value
[
'SETTING_TYPE'
];
$b2c
[
'REGION'
]
=
[];
if
(
!
empty
(
$value
[
'REGION_GUID'
])){
array_push
(
$b2c
[
'REGION'
],
array
(
"GUID"
=>
$value
[
'REGION_GUID'
],
"ORDEX"
=>
$value
[
'ORDEX'
],
"CITY_DISTR_GUID"
=>
$value
[
'CITY_DISTR_GUID'
],
"COLORS"
=>
$value
[
'COLORS'
],
"HF_TYPE"
=>
$value
[
'HF_TYPE'
],
"REGION_R"
=>
$value
[
'REGION_R'
],
"REGION_RANGE"
=>
$value
[
'REGION_RANGE'
],
"QS_PRICE"
=>
$value
[
'QS_PRICE'
],
"PS_PRICE"
=>
$value
[
'PS_PRICE'
],
"WEEK"
=>
$value
[
'WEEK'
],
"IS_TYPE"
=>
$value
[
'IS_TYPE'
],
));
}
}
else
{
if
(
!
empty
(
$value
[
'REGION_GUID'
])){
array_push
(
$b2c
[
'REGION'
],
array
(
"GUID"
=>
$value
[
'REGION_GUID'
],
"ORDEX"
=>
$value
[
'ORDEX'
],
"CITY_DISTR_GUID"
=>
$value
[
'CITY_DISTR_GUID'
],
"COLORS"
=>
$value
[
'COLORS'
],
"HF_TYPE"
=>
$value
[
'HF_TYPE'
],
"REGION_R"
=>
$value
[
'REGION_R'
],
"REGION_RANGE"
=>
$value
[
'REGION_RANGE'
],
"QS_PRICE"
=>
$value
[
'QS_PRICE'
],
"PS_PRICE"
=>
$value
[
'PS_PRICE'
],
"WEEK"
=>
$value
[
'WEEK'
],
"IS_TYPE"
=>
$value
[
'IS_TYPE'
],
));
}
}
}
else
if
(
$value
[
'SETTING_TYPE'
]
==
'2'
){
if
(
empty
(
$o2o
[
'GUID'
])){
$o2o
[
'GUID'
]
=
$value
[
'SETTING_GUID'
];
$o2o
[
'REGION_TYPE'
]
=
$value
[
'REGION_TYPE'
];
$o2o
[
'REGION_DISTR_DISTANCE'
]
=
$value
[
'REGION_DISTR_DISTANCE'
];
$o2o
[
'REGION_DISTR_PRICE'
]
=
$value
[
'REGION_DISTR_PRICE'
];
$o2o
[
'INCREASE_DISTANCE'
]
=
$value
[
'INCREASE_DISTANCE'
];
$o2o
[
'INCREASE_PRICE'
]
=
$value
[
'INCREASE_PRICE'
];
$o2o
[
'LAT'
]
=
$value
[
'LAT'
];
$o2o
[
'LNG'
]
=
$value
[
'LNG'
];
$o2o
[
'STATUS'
]
=
$value
[
'STATUS'
];
$o2o
[
'SETTING_TYPE'
]
=
$value
[
'SETTING_TYPE'
];
$o2o
[
'REGION'
]
=
[];
if
(
!
empty
(
$value
[
'REGION_GUID'
])){
array_push
(
$o2o
[
'REGION'
],
array
(
"GUID"
=>
$value
[
'REGION_GUID'
],
"ORDEX"
=>
$value
[
'ORDEX'
],
"CITY_DISTR_GUID"
=>
$value
[
'CITY_DISTR_GUID'
],
"COLORS"
=>
$value
[
'COLORS'
],
"HF_TYPE"
=>
$value
[
'HF_TYPE'
],
"REGION_R"
=>
$value
[
'REGION_R'
],
"REGION_RANGE"
=>
$value
[
'REGION_RANGE'
],
"QS_PRICE"
=>
$value
[
'QS_PRICE'
],
"PS_PRICE"
=>
$value
[
'PS_PRICE'
],
"WEEK"
=>
$value
[
'WEEK'
],
"IS_TYPE"
=>
$value
[
'IS_TYPE'
],
));
}
}
else
{
if
(
!
empty
(
$value
[
'REGION_GUID'
])){
array_push
(
$o2o
[
'REGION'
],
array
(
"GUID"
=>
$value
[
'REGION_GUID'
],
"ORDEX"
=>
$value
[
'ORDEX'
],
"CITY_DISTR_GUID"
=>
$value
[
'CITY_DISTR_GUID'
],
"COLORS"
=>
$value
[
'COLORS'
],
"HF_TYPE"
=>
$value
[
'HF_TYPE'
],
"REGION_R"
=>
$value
[
'REGION_R'
],
"REGION_RANGE"
=>
$value
[
'REGION_RANGE'
],
"QS_PRICE"
=>
$value
[
'QS_PRICE'
],
"PS_PRICE"
=>
$value
[
'PS_PRICE'
],
"WEEK"
=>
$value
[
'WEEK'
],
"IS_TYPE"
=>
$value
[
'IS_TYPE'
],
));
}
}
}
}
print_r
(
$a
);
die
;
$branch_info
[
'020'
]
=
$o2o
;
$branch_info
[
'B2C'
]
=
$b2c
;
return
$branch_info
;
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment