Commit 8ee77278 authored by 姚书霞's avatar 姚书霞 🐘

修改字段

parent b2fb5e1a
......@@ -158,16 +158,16 @@ class CityDistributionSettingController extends BaseController
* SETTING_TYPE:电子围栏类型:1:B2C范围,2:O2O范围,
* REGION:O2O设置的下级围栏区域数组(二维),
* GUID:区域GUID,
* ORDEX:区域序号,
* SORT:区域序号,
* CITY_DISTR_GUID:同城配送设置表,关联CITY_DISTRIBUTION_SETTING表GUID,
* COLORS:区域颜色,
* HF_TYPE:区域划分方式,1半径 2自定义,
* DIVIDE_TYPE:区域划分方式,1半径 2自定义,
* REGION_R:划分方式为半径,存半径的值,
* REGION_RANGE:划分方式自定义时,存数组值,
* QS_PRICE:起送价格,
* PS_PRICE:配送价格,
* INITIAL_PRICE:起送价格,
* DELIVERY_PRICE:配送价格,
* WEEK:配送时间周*,
* IS_TYPE:配送时段和区域,QY为区域,SJ为时间,QS_PRICE和PS_PRICE为起始时间字段,
* IS_TYPE:配送时段和区域,QY为区域,SJ为时间,INITIAL_PRICE和DELIVERY_PRICE为起始时间字段,
* B2C:门店B2C电子围栏信息数组(字段注释同020),
* "),
* security={{"Authorization": {}}}
......@@ -203,18 +203,18 @@ class CityDistributionSettingController extends BaseController
* @OA\Property(property="STATUS",description = "是否开启配送,1:是",type="string"),
* @OA\Property(property="REGION",title = "电子围栏区域数组",
* @OA\Property(
* @OA\Property(property="ORDEX",description = "区域序号",type="string"),
* @OA\Property(property="SORT",description = "区域序号",type="string"),
* @OA\Property(property="COLORS",description = "区域颜色",type="string"),
* @OA\Property(property="HF_TYPE",description = "区域划分方式,1半径 2自定义",type="string"),
* @OA\Property(property="DIVIDE_TYPE",description = "区域划分方式,1半径 2自定义",type="string"),
* @OA\Property(property="REGION_R",description = "划分方式为半径,存半径的值",type="string"),
* @OA\Property(property="REGION_RANGE",description = "划分方式自定义时,存数组值",type="string"),
* @OA\Property(property="QS_PRICE",description = "起送价格",type="string"),
* @OA\Property(property="PS_PRICE",description = "配送价格",type="string"),
* @OA\Property(property="INITIAL_PRICE",description = "起送价格",type="string"),
* @OA\Property(property="DELIVERY_PRICE",description = "配送价格",type="string"),
* ),
* ),
* example={"SETTING_TYPE": "1", "BRANCH_GUID":"123","GUID":"","REGION_TYPE":"1","REGION_DISTR_DISTANCE":"0",
* "REGION_DISTR_PRICE":"0","INCREASE_DISTANCE":"0","INCREASE_PRICE":"0","STATUS":"1","REGION":{
* {"ORDEX":"1","COLORS":"#123","HF_TYPE":"1","REGION_R":"1000","REGION_RANGE":"21312212","QS_PRICE":"1","PS_PRICE":"1"}}
* {"SORT":"1","COLORS":"#123","DIVIDE_TYPE":"1","REGION_R":"1000","REGION_RANGE":"21312212","INITIAL_PRICE":"1","DELIVERY_PRICE":"1"}}
* }
* )
* )
......@@ -235,7 +235,7 @@ class CityDistributionSettingController extends BaseController
if(!$model){
throw new BadRequestHttpException('没有找到记录');
}
// $model->scenario = 'update';//创建的场景
$model->setAttributes(Yii::$app->getRequest()->post());
}else{
$model = $this->modelClass::findOne(['SETTING_TYPE'=>$setting_type,'BRANCH_GUID'=>$branch_guid]);
if($model){
......@@ -243,20 +243,23 @@ class CityDistributionSettingController extends BaseController
}else{
$model = new $this->modelClass();
}
$model->setAttributes(Yii::$app->getRequest()->post());
$other_param = array(
'GUID'=>Func::create_guid(),
'ORG_GUID'=>'100',//Yii::$app->user->identity->ORG_GUID,
);
$model->setAttributes($other_param,false);
$model->scenario = 'update';//创建的场景
// $model->attribute->GUID='123';
$model->attributes=$other_param;
}
$model->setAttributes(Yii::$app->getRequest()->post());
$region_model = new ShopCityDistributionRegion();
//开启事务
$trans = $model->getDb()->beginTransaction();
try{
//添加主表
print_r($model);die;
if($model->save()===false){
if(!$model->hasErrors()){
throw new ServerErrorHttpException('Failed to update the object for unknown reason.');
......@@ -279,13 +282,15 @@ class CityDistributionSettingController extends BaseController
"CITY_DISTR_GUID"=>$model->GUID,
);
$region_model->setAttributes($other_param_region,false);
$region_model->scenario = 'save';//创建的场景
if ($region_model->validate()) {
$region_value[] = $region_model->getAttributes(["GUID","ORG_GUID","CITY_DISTR_GUID","ORDEX","COLORS","HF_TYPE","REGION_R","REGION_RANGE","QS_PRICE","PS_PRICE"]);
$region_value[] = $region_model->getAttributes(["GUID","ORG_GUID","CITY_DISTR_GUID","SORT","COLORS","DIVIDE_TYPE","REGION_R","REGION_RANGE","INITIAL_PRICE","DELIVERY_PRICE"]);
}else{
return $region_model;
}
}
$model->getDb()->createCommand()->batchInsert(ShopCityDistributionRegion::tableName(), ["GUID","ORG_GUID","CITY_DISTR_GUID","ORDEX","COLORS","HF_TYPE","REGION_R","REGION_RANGE","QS_PRICE","PS_PRICE"], $region_value)->execute();
$model->getDb()->createCommand()->batchInsert(ShopCityDistributionRegion::tableName(), ["GUID","ORG_GUID","CITY_DISTR_GUID","SORT","COLORS","DIVIDE_TYPE","REGION_R","REGION_RANGE","INITIAL_PRICE","DELIVERY_PRICE"], $region_value)->execute();
$trans->commit();
return $model;
} catch (\Throwable $e){
......@@ -294,4 +299,38 @@ class CityDistributionSettingController extends BaseController
}
}
/**
* @OA\DELETE(
* path="/backend/web/v1/branch/city-distribution-settings/city-distribution-setting-delete",
* tags={"门店&DC"},
* summary="删除电子围栏接口(姚书侠)",
* description="删除电子围栏组接口",
* @OA\RequestBody(
* required=true,
* @OA\MediaType(
* mediaType="application/x-www-form-urlencoded",
* @OA\Schema(
* type="object",
* @OA\Property(property="GUID",description="要删除的门店GUID",type="string"),
* )
* )
* ),
* @OA\Response(response=200,description="成功时返回access-token"),
* security={{"Authorization": {}}}
* )
*/
public function actionCityDistributionSettingDelete()
{
$guid = Yii::$app->getRequest()->post('GUID');
//删除所有门店ID下的电子围栏 数据库外键会删除region表
$res = $this->modelClass::deleteAll(["BRANCH_GUID"=>$guid]);
if ($res === false) {
throw new ServerErrorHttpException('Failed to delete the object for unknown reason.');
}
Yii::$app->getResponse()->setStatusCode(204);
return null;
}
}
\ No newline at end of file
......@@ -11,13 +11,13 @@ use app\models\v1\branch\ShopCityDistributionSetting;
* @property string $GUID 电子围栏GUID
* @property string $ORG_GUID 组织机构号
* @property string $CITY_DISTR_GUID 同城配送设置表,关联CITY_DISTRIBUTION_SETTING表GUID
* @property string $ORDEX 区域序号
* @property string $SORT 区域序号
* @property string $COLORS 区域颜色
* @property int $HF_TYPE 区域划分方式,1半径 2自定义
* @property int $DIVIDE_TYPE 区域划分方式,1半径 2自定义
* @property string $REGION_R 划分方式为半径,存半径的值
* @property string $REGION_RANGE 划分方式自定义时,存数组值
* @property string $QS_PRICE 起送价格
* @property string $PS_PRICE 配送价格
* @property string $INITIAL_PRICE 起送价格
* @property string $DELIVERY_PRICE 配送价格
* @property string $WEEK 配送时间周*
* @property int $IS_TYPE 配送时段和区域,1为区域,2为时间
*
......@@ -39,11 +39,11 @@ class ShopCityDistributionRegion extends BaseModel
public function rules()
{
return [
[['ORDEX', 'COLORS','HF_TYPE','REGION_R','REGION_RANGE','QS_PRICE','PS_PRICE'], 'required'],
[['HF_TYPE'], 'in', 'range' => [1, 2]],
[['REGION_R'], 'integer'],
[['GUID','SORT','COLORS','DIVIDE_TYPE','REGION_R','REGION_RANGE','INITIAL_PRICE','DELIVERY_PRICE'], 'required','on'=>"save"],
[['DIVIDE_TYPE'], 'in', 'range' => [1, 2],'on'=>"save"],
[['SORT'], 'integer'],
[['REGION_RANGE'], 'string'],
[['QS_PRICE', 'PS_PRICE'], 'double'],
[['INITIAL_PRICE', 'DELIVERY_PRICE','REGION_R'], 'double'],
];
}
......@@ -56,13 +56,13 @@ class ShopCityDistributionRegion extends BaseModel
'GUID' => 'Guid',
'ORG_GUID' => 'Org Guid',
'CITY_DISTR_GUID' => 'City Distr Guid',
'ORDEX' => 'Ordex',
'SORT' => 'SORT',
'COLORS' => 'Colors',
'HF_TYPE' => 'Hf Type',
'DIVIDE_TYPE' => 'Hf Type',
'REGION_R' => 'Region R',
'REGION_RANGE' => 'Region Range',
'QS_PRICE' => 'Qs Price',
'PS_PRICE' => 'Ps Price',
'INITIAL_PRICE' => 'Qs Price',
'DELIVERY_PRICE' => 'Ps Price',
'WEEK' => 'Week',
'IS_TYPE' => 'Is Type',
];
......
......@@ -19,8 +19,8 @@ use app\models\v1\branch\ShopCityDistributionRegion;
* @property string $REGION_TYPE 配送区域类型
* @property string $SIMPLE_DISTR_NOTES 简易版配送范围介绍,暂不用
* @property string $SIMPLE_DISTR_PIC 简易版配送范围图片,暂不用
* @property string $SIMPLE_DISTR_QS_PRICE 简易版配送金额,暂不用
* @property string $SIMPLE_DISTR_PS_PRICE 简易版配送费,暂不用
* @property string $SIMPLE_DISTR_INITIAL_PRICE 简易版配送金额,暂不用
* @property string $SIMPLE_DISTR_DELIVERY_PRICE 简易版配送费,暂不用
* @property string $REGION_DISTR_DISTANCE 不同距离不同配送费**公里内
* @property string $REGION_DISTR_PRICE 不同距离不同配送费*公里内*元
* @property string $INCREASE_DISTANCE 不同距离不同配送费增加*公里
......@@ -57,8 +57,9 @@ class ShopCityDistributionSetting extends BaseModel
[['BRANCH_GUID','REGION_TYPE','SETTING_TYPE',], 'required'],
[['REGION_DISTR_DISTANCE', 'REGION_DISTR_PRICE','INCREASE_DISTANCE','INCREASE_PRICE'], 'double'],
[['STATUS'], 'boolean'],
[['ORG_GUID','GUID'], 'safe','on'=>'update'],
[['REGION_TYPE','SETTING_TYPE'], 'in', 'range' => [1, 2]],
// [['BRANCH_GUID'], 'exist', 'skipOnError' => true, 'targetClass' => ShopBranch::className(), 'targetAttribute' => ['BRANCH_GUID' => 'GUID']],
[['BRANCH_GUID'], 'exist', 'skipOnError' => true, 'targetClass' => ShopBranch::className(), 'targetAttribute' => ['BRANCH_GUID' => 'GUID']],
];
}
......@@ -78,8 +79,8 @@ class ShopCityDistributionSetting extends BaseModel
'REGION_TYPE' => 'Region Type',
'SIMPLE_DISTR_NOTES' => 'Simple Distr Notes',
'SIMPLE_DISTR_PIC' => 'Simple Distr Pic',
'SIMPLE_DISTR_QS_PRICE' => 'Simple Distr Qs Price',
'SIMPLE_DISTR_PS_PRICE' => 'Simple Distr Ps Price',
'SIMPLE_DISTR_INITIAL_PRICE' => 'Simple Distr Qs Price',
'SIMPLE_DISTR_DELIVERY_PRICE ' => 'Simple Distr Ps Price',
'REGION_DISTR_DISTANCE' => 'Region Distr Distance',
'REGION_DISTR_PRICE' => 'Region Distr Price',
'INCREASE_DISTANCE' => 'Increase Distance',
......@@ -175,8 +176,8 @@ class ShopCityDistributionSetting extends BaseModel
//门店下面的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.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";
$select .= "cds.STATUS,cds.SETTING_TYPE,cdr.GUID REGION_GUID,cdr.CITY_DISTR_GUID,cdr.SORT,cdr.COLORS,";
$select .= "cdr.DIVIDE_TYPE,cdr.REGION_R,cdr.REGION_RANGE,cdr.INITIAL_PRICE,cdr.DELIVERY_PRICE,cdr.WEEK,cdr.IS_TYPE";
$setting_info = $this->find()->alias("cds")
->select($select)
->where(["cds.BRANCH_GUID"=>$branchguid])
......@@ -202,14 +203,14 @@ class ShopCityDistributionSetting extends BaseModel
if(!empty($value['REGION_GUID'])){
array_push($b2c['REGION'],array(
"GUID"=>$value['REGION_GUID'],
"ORDEX"=>$value['ORDEX'],
"SORT"=>$value['SORT'],
"CITY_DISTR_GUID"=>$value['CITY_DISTR_GUID'],
"COLORS"=>$value['COLORS'],
"HF_TYPE"=>$value['HF_TYPE'],
"DIVIDE_TYPE"=>$value['DIVIDE_TYPE'],
"REGION_R"=>$value['REGION_R'],
"REGION_RANGE"=>$value['REGION_RANGE'],
"QS_PRICE"=>$value['QS_PRICE'],
"PS_PRICE"=>$value['PS_PRICE'],
"INITIAL_PRICE"=>$value['INITIAL_PRICE'],
"DELIVERY_PRICE"=>$value['DELIVERY_PRICE'],
"WEEK"=>$value['WEEK'],
"IS_TYPE"=>$value['IS_TYPE'],
));
......@@ -218,14 +219,14 @@ class ShopCityDistributionSetting extends BaseModel
if(!empty($value['REGION_GUID'])){
array_push($b2c['REGION'],array(
"GUID"=>$value['REGION_GUID'],
"ORDEX"=>$value['ORDEX'],
"SORT"=>$value['SORT'],
"CITY_DISTR_GUID"=>$value['CITY_DISTR_GUID'],
"COLORS"=>$value['COLORS'],
"HF_TYPE"=>$value['HF_TYPE'],
"DIVIDE_TYPE"=>$value['DIVIDE_TYPE'],
"REGION_R"=>$value['REGION_R'],
"REGION_RANGE"=>$value['REGION_RANGE'],
"QS_PRICE"=>$value['QS_PRICE'],
"PS_PRICE"=>$value['PS_PRICE'],
"INITIAL_PRICE"=>$value['INITIAL_PRICE'],
"DELIVERY_PRICE"=>$value['DELIVERY_PRICE'],
"WEEK"=>$value['WEEK'],
"IS_TYPE"=>$value['IS_TYPE'],
));
......@@ -245,14 +246,14 @@ class ShopCityDistributionSetting extends BaseModel
if(!empty($value['REGION_GUID'])){
array_push($o2o['REGION'],array(
"GUID"=>$value['REGION_GUID'],
"ORDEX"=>$value['ORDEX'],
"SORT"=>$value['SORT'],
"CITY_DISTR_GUID"=>$value['CITY_DISTR_GUID'],
"COLORS"=>$value['COLORS'],
"HF_TYPE"=>$value['HF_TYPE'],
"DIVIDE_TYPE"=>$value['DIVIDE_TYPE'],
"REGION_R"=>$value['REGION_R'],
"REGION_RANGE"=>$value['REGION_RANGE'],
"QS_PRICE"=>$value['QS_PRICE'],
"PS_PRICE"=>$value['PS_PRICE'],
"INITIAL_PRICE"=>$value['INITIAL_PRICE'],
"DELIVERY_PRICE"=>$value['DELIVERY_PRICE'],
"WEEK"=>$value['WEEK'],
"IS_TYPE"=>$value['IS_TYPE'],
));
......@@ -261,14 +262,14 @@ class ShopCityDistributionSetting extends BaseModel
if(!empty($value['REGION_GUID'])){
array_push($o2o['REGION'],array(
"GUID"=>$value['REGION_GUID'],
"ORDEX"=>$value['ORDEX'],
"SORT"=>$value['SORT'],
"CITY_DISTR_GUID"=>$value['CITY_DISTR_GUID'],
"COLORS"=>$value['COLORS'],
"HF_TYPE"=>$value['HF_TYPE'],
"DIVIDE_TYPE"=>$value['DIVIDE_TYPE'],
"REGION_R"=>$value['REGION_R'],
"REGION_RANGE"=>$value['REGION_RANGE'],
"QS_PRICE"=>$value['QS_PRICE'],
"PS_PRICE"=>$value['PS_PRICE'],
"INITIAL_PRICE"=>$value['INITIAL_PRICE'],
"DELIVERY_PRICE"=>$value['DELIVERY_PRICE'],
"WEEK"=>$value['WEEK'],
"IS_TYPE"=>$value['IS_TYPE'],
));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment