Commit b8262b96 authored by 张晓林's avatar 张晓林

Merge branch 'development' of http://gitlab-ebiz.yiyao365.cn/newshop/newshopback into development

parents e51473ca c4d3b47e
...@@ -12,6 +12,7 @@ return [ ...@@ -12,6 +12,7 @@ return [
'controller'=>[ 'controller'=>[
'swagger', 'swagger',
'v1/branch/branch', 'v1/branch/branch',
'v1/branch/branch-score',
'v1/rbacuser/rbac-user', 'v1/rbacuser/rbac-user',
'v1/shopuser/shop-user-membergrade', 'v1/shopuser/shop-user-membergrade',
'v1/shopuser/user-department', 'v1/shopuser/user-department',
......
...@@ -2,207 +2,11 @@ ...@@ -2,207 +2,11 @@
namespace backend\controllers\v1\branch; namespace backend\controllers\v1\branch;
use app\models\v1\branch\ShopBranchScore;
use Yii; use Yii;
use backend\controllers\v1\BaseController; use backend\controllers\v1\BaseController;
use yii\web\BadRequestHttpException;
use yii\web\ServerErrorHttpException;
class BranchController extends BaseController class BranchController extends BaseController
{ {
public $modelClass = 'app\models\v1\branch\ShopBranch'; public $modelClass = 'app\models\v1\branch\ShopBranch';
/**
* @OA\GET(
* path="/backend/web/v1/branch/branches/branch-score-list",
* tags={"门店&DC"},
* summary="门店评价列表(侯贺政)",
* description="门店服务打分列表",
* @OA\Parameter(name="BRANCH_CODE",in="query",description="门店编号",@OA\Schema(type="string")),
* @OA\Parameter(name="ARTIFICIAL_NUMBER",in="query",description="导入人工号",@OA\Schema(type="string")),
* @OA\Response(response="200",description="
* GUID:评分GUID
* BRANCH_NAME:门店名称,
* BRANCH_CODE:门店编号,
* BASIC_SERVICES:基础服务分数,
* QUALITY_ASSURANCE:质量管理分数,
* OPERATION_MANAGEMENT:运营管理分数,
* STORE_IMAGE:门店形象分数,
* ELECTRICITY_MANAGEMENT:店务管理分数,
* CUSTOMERE_VALUATION:手动干预评价分数,
* SCORE:门店评价原值,
* REAL_SCORE:门店评价最终值,
* STORE_CONFIGURATION:门店配置分数,
* ARTIFICIAL_NUMBER:导入员工,
* ARTIFICIAL_NAME:导入员工姓名,
* UPDATE_TIME:更新时间"),
* security={{"Authorization":{}}}
* )
*/
public function actionBranchScoreList()
{
$model = new ShopBranchScore();
$params = Yii::$app->request->queryParams;
$model->attributes = $params;
if (!$model->validate()) {
throw new BadRequestHttpException('Data Validation Failed !');
}
$data = $model->branchScoreList($params);
if (!$list = $data->getModels()) {
throw new BadRequestHttpException('未找到符合条件的数据');
}
//门店评价最终值计算
foreach ($list as $key => $value) {
$list[$key]['REAL_SCORE'] = $value['SCORE'] + $value['CUSTOMERE_VALUATION'];
}
$data->setModels($list);
return $data;
}
/**
* @OA\GET(
* path="/backend/web/v1/branch/branches/score-info",
* tags={"门店&DC"},
* summary="门店评价详情(侯贺政)",
* description="门店服务打分详情",
* @OA\Parameter(name="id",in="query",required=true,description="评分GUID",@OA\Schema(type="string")),
* @OA\Response(response="200",description="
* GUID:评分GUID
* BRANCH_NAME:门店名称,
* BRANCH_CODE:门店编号,
* BASIC_SERVICES:基础服务分数,
* QUALITY_ASSURANCE:质量管理分数,
* OPERATION_MANAGEMENT:运营管理分数,
* STORE_IMAGE:门店形象分数,
* ELECTRICITY_MANAGEMENT:店务管理分数,
* CUSTOMERE_VALUATION:顾客评价分数(手动干预评价分数),
* STORE_CONFIGURATION:门店配置分数,
* ARTIFICIAL_NUMBER:导入员工,
* ARTIFICIAL_NAME:导入员工姓名"),
* security={{"Authorization":{}}}
* )
*/
public function actionScoreInfo($id)
{
$model = new ShopBranchScore();
$model->GUID = $id;
if (!$model->validate()) {
throw new BadRequestHttpException('Data Validation Failed !');
}
$info = $model->soreInfo($id);
if (!$info) {
throw new BadRequestHttpException('请求有误,不存在该评分!');
}
return $info;
}
/**
* @OA\Put(
* path="/backend/web/v1/branch/branches/score-info-update",
* tags={"门店&DC"},
* summary="更新门店服务打分(侯贺政)",
* description="更新门店服务打分",
* @OA\RequestBody(
* required=true,
* description="填入需要更新的参数以及数据,GUID必填",
* @OA\JsonContent(
* type="object",
* required={"GUID"},
* @OA\Property(property="GUID", type="string",description="评分GUID"),
* @OA\Property(property="BASIC_SERVICES" ,type="float(12,2)", description="基础服务分数"),
* @OA\Property(property="QUALITY_ASSURANCE", type="float(12,2)",description="质量管理分数"),
* @OA\Property(property="OPERATION_MANAGEMENT", type="float(12,2)",description="运营管理分数"),
* @OA\Property(property="STORE_IMAGE", type="float(12,2)",description="门店形象分数"),
* @OA\Property(property="ELECTRICITY_MANAGEMENT", type="float(12,2)",description="店务管理分数"),
* @OA\Property(property="CUSTOMERE_VALUATION", type="float(12,2)",description="顾客评价分数(手动干预评价分数)"),
* @OA\Property(property="STORE_CONFIGURATION", type="float(12,2)",description="门店配置分数"),
* @OA\Property(property="ARTIFICIAL_NUMBER:", type="string",description="导入员工"),
* @OA\Property(property="ARTIFICIAL_NAME", type="string",description="导入员工姓名"),
* example={"GUID":"123","BASIC_SERVICES":"10"}
* ),
* @OA\MediaType(
* mediaType="application/x-www-form-urlencoded",
* @OA\Schema(
* type="object",
* required={"GUID"},
* @OA\Property(property="GUID", type="string",description="评分GUID"),
* @OA\Property(property="BASIC_SERVICES" ,type="float(12,2)", description="基础服务分数"),
* @OA\Property(property="QUALITY_ASSURANCE", type="float(12,2)",description="质量管理分数"),
* @OA\Property(property="OPERATION_MANAGEMENT", type="float(12,2)",description="运营管理分数"),
* @OA\Property(property="STORE_IMAGE", type="float(12,2)",description="门店形象分数"),
* @OA\Property(property="ELECTRICITY_MANAGEMENT", type="float(12,2)",description="店务管理分数"),
* @OA\Property(property="CUSTOMERE_VALUATION", type="float(12,2)",description="顾客评价分数(手动干预评价分数)"),
* @OA\Property(property="STORE_CONFIGURATION", type="float(12,2)",description="门店配置分数"),
* @OA\Property(property="ARTIFICIAL_NUMBER:", type="string",description="导入员工"),
* @OA\Property(property="ARTIFICIAL_NAME", type="string",description="导入员工姓名"),
* )
* )
* ),
* @OA\Response(
* response=200,
* description="OK,succeed"
* ),
* security={{"Authorization":{}}},
* )
*/
public function actionScoreInfoUpdate()
{
$params = Yii::$app->request->bodyParams;
$model = ShopBranchScore::findOne($params['GUID']);
if (!$model) {
throw new BadRequestHttpException('Requested resource does not exist !');
}
$model->attributes = $params;
if (!$model->validate()) {
throw new BadRequestHttpException('Your request probably have some mistake !');
}
$model->UPDATE_TIME = date('Y-m-d H:i:s',time());
if (!$model->save()) {
throw new ServerErrorHttpException('保存失败!');
}
return ['code'=>200,'message'=>'保存成功!'];
}
/**
* @OA\Delete(
* path="/backend/web/v1/branch/branches/score-info-del",
* tags={"门店&DC"},
* summary="门店服务评价删除(侯贺政)",
* description="门店服务打分删除",
* @OA\Parameter(
* description="要删除的门店服务评价GUID",
* in="query",
* name="guid",
* required=true,
* @OA\Schema(
* type="string",
* )
* ),
* @OA\Response(
* response=400,
* description="Invalid ID supplied"
* ),
* security={{"Authorization":{}}},
* )
*/
public function actionScoreInfoDel($guid)
{
$model = ShopBranchScore::findOne($guid);
if (!$model) {
throw new BadRequestHttpException("Requested resource does not exist !");
}
if (!$model->delete()) {
throw new ServerErrorHttpException('删除失败!');
}
return ['code'=>200,'message'=>'删除成功!'];
}
} }
<?php
namespace backend\controllers\v1\branch;
use app\models\v1\branch\ShopBranchScore;
use Yii;
use backend\controllers\v1\BaseController;
use backend\helpers\Func;
use yii\web\BadRequestHttpException;
use yii\web\ServerErrorHttpException;
class BranchScoreController extends BaseController
{
public $modelClass = 'app\models\v1\branch\ShopBranchScore';
/**
* @OA\GET(
* path="/backend/web/v1/branch/branch-scores/branch-score-list",
* tags={"门店&DC"},
* summary="门店评价列表(侯贺政)",
* description="门店服务打分列表",
* @OA\Parameter(name="BRANCH_CODE",in="query",description="门店编号",@OA\Schema(type="string")),
* @OA\Parameter(name="ARTIFICIAL_NUMBER",in="query",description="导入人工号",@OA\Schema(type="string")),
* @OA\Response(response="200",description="
* GUID:评分GUID
* BRANCH_NAME:门店名称,
* BRANCH_CODE:门店编号,
* BASIC_SERVICES:基础服务分数,
* QUALITY_ASSURANCE:质量管理分数,
* OPERATION_MANAGEMENT:运营管理分数,
* STORE_IMAGE:门店形象分数,
* ELECTRICITY_MANAGEMENT:店务管理分数,
* CUSTOMERE_VALUATION:手动干预评价分数,
* SCORE:门店评价原值,
* REAL_SCORE:门店评价最终值,
* STORE_CONFIGURATION:门店配置分数,
* ARTIFICIAL_NUMBER:导入员工,
* ARTIFICIAL_NAME:导入员工姓名,
* UPDATE_TIME:更新时间"),
* security={{"Authorization":{}}}
* )
*/
public function actionBranchScoreList()
{
$model = new ShopBranchScore();
$params = Yii::$app->request->queryParams;
$model->attributes = $params;
if (!$model->validate()) {
throw new BadRequestHttpException(json_encode($model->errors));
}
$data = $model->branchScoreList($params);
if (!$list = $data->getModels()) {
throw new BadRequestHttpException('未找到符合条件的数据');
}
//门店评价最终值计算
foreach ($list as $key => $value) {
$list[$key]['REAL_SCORE'] = $value['SCORE'] + $value['CUSTOMERE_VALUATION'];
}
$data->setModels($list);
return $data;
}
/**
* @OA\GET(
* path="/backend/web/v1/branch/branch-scores/score-info",
* tags={"门店&DC"},
* summary="门店评价详情(侯贺政)",
* description="门店服务打分详情",
* @OA\Parameter(name="id",in="query",required=true,description="评分GUID",@OA\Schema(type="string")),
* @OA\Response(response="200",description="
* GUID:评分GUID
* BRANCH_NAME:门店名称,
* BRANCH_CODE:门店编号,
* BASIC_SERVICES:基础服务分数,
* QUALITY_ASSURANCE:质量管理分数,
* OPERATION_MANAGEMENT:运营管理分数,
* STORE_IMAGE:门店形象分数,
* ELECTRICITY_MANAGEMENT:店务管理分数,
* CUSTOMERE_VALUATION:顾客评价分数(手动干预评价分数),
* STORE_CONFIGURATION:门店配置分数,
* ARTIFICIAL_NUMBER:导入员工,
* ARTIFICIAL_NAME:导入员工姓名"),
* security={{"Authorization":{}}}
* )
*/
public function actionScoreInfo($id)
{
$model = new ShopBranchScore();
$model->GUID = $id;
if (!$model->validate()) {
throw new BadRequestHttpException(json_encode($model->errors));
}
$info = $model->soreInfo($id);
if (!$info) {
throw new BadRequestHttpException('请求有误,不存在该评分!');
}
return $info;
}
/**
* @OA\Put(
* path="/backend/web/v1/branch/branch-scores/score-info-update",
* tags={"门店&DC"},
* summary="更新门店服务打分(侯贺政)",
* description="更新门店服务打分",
* @OA\RequestBody(
* required=true,
* description="注:评分GUID、操作人工号、操作人姓名必填,其他根据需要选填",
* @OA\JsonContent(
* type="object",
* required={"GUID"},
* @OA\Property(property="GUID", type="string",description="评分GUID"),
* @OA\Property(property="BASIC_SERVICES" ,type="float", description="基础服务分数"),
* @OA\Property(property="QUALITY_ASSURANCE", type="float(12,2)",description="质量管理分数"),
* @OA\Property(property="OPERATION_MANAGEMENT", type="float(12,2)",description="运营管理分数"),
* @OA\Property(property="STORE_IMAGE", type="float(12,2)",description="门店形象分数"),
* @OA\Property(property="ELECTRICITY_MANAGEMENT", type="float(12,2)",description="店务管理分数"),
* @OA\Property(property="CUSTOMERE_VALUATION", type="float(12,2)",description="顾客评价分数(手动干预评价分数)"),
* @OA\Property(property="STORE_CONFIGURATION", type="float(12,2)",description="门店配置分数"),
* @OA\Property(property="ARTIFICIAL_NUMBER", type="string",description="操作人工号"),
* @OA\Property(property="ARTIFICIAL_NAME", type="string",description="操作人姓名必填"),
* example={"GUID":"123","BASIC_SERVICES":"10"}
* ),
* @OA\MediaType(
* mediaType="application/x-www-form-urlencoded",
* @OA\Schema(
* type="object",
* required={"GUID","ARTIFICIAL_NUMBER","ARTIFICIAL_NAME"},
* @OA\Property(property="GUID", type="string",description="评分GUID"),
* @OA\Property(property="BASIC_SERVICES" ,type="float(12,2)", description="基础服务分数"),
* @OA\Property(property="QUALITY_ASSURANCE", type="float(12,2)",description="质量管理分数"),
* @OA\Property(property="OPERATION_MANAGEMENT", type="float(12,2)",description="运营管理分数"),
* @OA\Property(property="STORE_IMAGE", type="float(12,2)",description="门店形象分数"),
* @OA\Property(property="ELECTRICITY_MANAGEMENT", type="float(12,2)",description="店务管理分数"),
* @OA\Property(property="CUSTOMERE_VALUATION", type="float(12,2)",description="顾客评价分数(手动干预评价分数)"),
* @OA\Property(property="STORE_CONFIGURATION", type="float(12,2)",description="门店配置分数"),
* @OA\Property(property="ARTIFICIAL_NUMBER", type="string",description="操作人工号"),
* @OA\Property(property="ARTIFICIAL_NAME", type="string",description="操作人姓名必填"),
* )
* )
* ),
* @OA\Response(
* response=200,
* description="更新成功!"
* ),
* security={{"Authorization":{}}},
* )
*/
public function actionScoreInfoUpdate()
{
$params = Yii::$app->request->bodyParams;
$model = ShopBranchScore::findOne($params['GUID']);
if (!$model) {
throw new BadRequestHttpException('Requested resource does not exist !');
}
$model->scenario = 'update';
$model->attributes = $params;
if (!$model->validate()) {
throw new BadRequestHttpException(json_encode($model->errors));
}
$model->UPDATE_TIME = date('Y-m-d H:i:s', time());
if (!$model->save()) {
throw new ServerErrorHttpException('更新失败!');
}
return ['code' => 200, 'message' => '更新成功!'];
}
/**
* @OA\Delete(
* path="/backend/web/v1/branch/branch-scores/score-info-del",
* tags={"门店&DC"},
* summary="门店服务评价删除(侯贺政)",
* description="门店服务打分删除",
* @OA\Parameter(
* description="要删除的门店服务评价GUID",
* in="query",
* name="guid",
* required=true,
* @OA\Schema(
* type="string",
* )
* ),
* @OA\Response(
* response=200,
* description="删除成功!"
* ),
* security={{"Authorization":{}}},
* )
*/
public function actionScoreInfoDel($guid)
{
$model = ShopBranchScore::findOne($guid);
if (!$model) {
throw new BadRequestHttpException("Requested resource does not exist !");
}
if (!$model->delete()) {
throw new ServerErrorHttpException('删除失败!');
}
return ['code' => 200, 'message' => '删除成功!'];
}
/**
* @OA\Post(
* path="/backend/web/v1/branch/branch-scores/add-branch-score",
* tags={"门店&DC"},
* summary="新建门店服务评价(侯贺政)",
* description="新建门店服务打分",
* @OA\RequestBody(
* required=true,
* description="注:门店编号、操作人工号、操作人姓名必填,且不能填入已存在评分的门店编码,其他根据需要选填。",
* @OA\JsonContent(
* type="object",
* required={"BRANCH_CODE,ARTIFICIAL_NUMBER,ARTIFICIAL_NAME"},
* @OA\Property(property="BRANCH_CODE" ,type="string", description="门店编号(门店不能重复)"),
* @OA\Property(property="BASIC_SERVICES" ,type="float(12,2)", description="基础服务分数"),
* @OA\Property(property="QUALITY_ASSURANCE", type="float(12,2)",description="质量管理分数"),
* @OA\Property(property="OPERATION_MANAGEMENT", type="float(12,2)",description="运营管理分数"),
* @OA\Property(property="STORE_IMAGE", type="float(12,2)",description="门店形象分数"),
* @OA\Property(property="ELECTRICITY_MANAGEMENT", type="float(12,2)",description="店务管理分数"),
* @OA\Property(property="CUSTOMERE_VALUATION", type="float(12,2)",description="顾客评价分数(手动干预评价分数)"),
* @OA\Property(property="STORE_CONFIGURATION", type="float(12,2)",description="门店配置分数"),
* @OA\Property(property="ARTIFICIAL_NUMBER:", type="string",description="操作人工号"),
* @OA\Property(property="ARTIFICIAL_NAME", type="string",description="操作人姓名"),
* example={"BRANCH_CODE": "A001", "BASIC_SERVICES": "","QUALITY_ASSURANCE":"","STORE_IMAGE":"","ELECTRICITY_MANAGEMENT":"","CUSTOMERE_VALUATION":"","STORE_CONFIGURATION":"","ARTIFICIAL_NUMBER":"12345","ARTIFICIAL_NAME":"韩梅梅"}
* ),
* @OA\MediaType(
* mediaType="application/x-www-form-urlencoded",
* @OA\Schema(
* type="object",
* required={"BRANCH_CODE","ARTIFICIAL_NUMBER","ARTIFICIAL_NAME"},
* @OA\Property(property="BRANCH_CODE" ,type="string", description="门店编号(门店不能重复)"),
* @OA\Property(property="BASIC_SERVICES" ,type="float(12,2)", description="基础服务分数"),
* @OA\Property(property="QUALITY_ASSURANCE", type="float(12,2)",description="质量管理分数"),
* @OA\Property(property="OPERATION_MANAGEMENT", type="float(12,2)",description="运营管理分数"),
* @OA\Property(property="STORE_IMAGE", type="float(12,2)",description="门店形象分数"),
* @OA\Property(property="ELECTRICITY_MANAGEMENT", type="float(12,2)",description="店务管理分数"),
* @OA\Property(property="CUSTOMERE_VALUATION", type="float(12,2)",description="顾客评价分数(手动干预评价分数)"),
* @OA\Property(property="STORE_CONFIGURATION", type="float(12,2)",description="门店配置分数"),
* @OA\Property(property="ARTIFICIAL_NUMBER", type="string",description="操作人工号"),
* @OA\Property(property="ARTIFICIAL_NAME", type="string",description="操作人姓名")
* )
* )
* ),
* @OA\Response(
* response=200,
* description="OK,保存成功"
* ),
* security={{"Authorization":{}}}
* )
*/
public function actionAddBranchScore()
{
$model = new ShopBranchScore();
$model->scenario = 'creation';
$model->attributes = Yii::$app->request->post();
$model->GUID = Func::create_guid();
if (!$model->validate()) {
throw new BadRequestHttpException(json_encode($model->errors));
}
$model->UPDATE_TIME = date('Y-m-d H:i:s', time());
if (!$model->save()) {
throw new ServerErrorHttpException('保存失败!');
}
return ['code' => 200, 'message' => '保存成功!'];
}
}
...@@ -45,10 +45,23 @@ class ShopBranchScore extends BaseModel ...@@ -45,10 +45,23 @@ class ShopBranchScore extends BaseModel
[['GUID', 'BRANCH_CODE', 'BRANCH_NAME'], 'string', 'max' => 50], [['GUID', 'BRANCH_CODE', 'BRANCH_NAME'], 'string', 'max' => 50],
[['ARTIFICIAL_NUMBER'], 'string', 'max' => 12], [['ARTIFICIAL_NUMBER'], 'string', 'max' => 12],
[['ARTIFICIAL_NAME'], 'string', 'max' => 20], [['ARTIFICIAL_NAME'], 'string', 'max' => 20],
[['GUID'], 'unique', 'on' => ['creation']], [['GUID', 'BRANCH_CODE'], 'unique', 'on' => ['creation']],
[['ARTIFICIAL_NUMBER', 'ARTIFICIAL_NAME'], 'required', 'on' => ['creation', 'update']],
]; ];
} }
/**
* {@inheritdoc}
*/
// public function scenarios()
// {
// return [
// //更新时,防止BRANCH_CODE,BRANCH_NAME被赋值更新
// 'update' => [
// 'BASIC_SERVICES', 'QUALITY_ASSURANCE', 'OPERATION_MANAGEMENT', 'STORE_IMAGE', 'ELECTRICITY_MANAGEMENT', 'CUSTOMERE_VALUATION', 'STORE_CONFIGURATION','ARTIFICIAL_NUMBER', 'ARTIFICIAL_NAME', 'UPDATE_TIME',
// ]
// ];
// }
/** /**
* {@inheritdoc} * {@inheritdoc}
*/ */
......
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