diff --git a/app/api/controller/Merchant.php b/app/api/controller/Merchant.php new file mode 100644 index 00000000..ea2391c9 --- /dev/null +++ b/app/api/controller/Merchant.php @@ -0,0 +1,150 @@ + +// +---------------------------------------------------------------------- +declare (strict_types=1); + +namespace app\api\controller; + +use app\common\model\store\StoreSettle; +use app\common\model\UploadFile; +use think\response\Json; +use app\store\model\Merchant as MerchantModel; +use app\store\model\Style as StyleModel; +use app\common\model\Channel; +use app\store\model\store\User as StoreUserModel; + +/** + * 商户ID、商店ID 隔离商城里面的商户 + * Class Store + * @package app\store\controller + */ +class Merchant extends Controller +{ + /** + * 获取当前登录的商城信息 + * @return Json + */ + public function userinfo(): Json + { + $model = new StoreUserModel; + $listUser = $model->getList($this->request->param())->toArray(); + $list = []; + foreach ($listUser['data'] as $l) { + if (!empty($l['user_name'])) { + array_push($list, $l['user_name']); + } + } + + $model2 = new MerchantModel; + $list2 = $model2->getList($this->request->param())->toArray(); + $userIds = array_column($list2['data'], "user_name"); + + $list = array_diff($list, $userIds); + return $this->renderSuccess(compact('list')); + } + + /** + * 获取当前登录的商城信息 + * @return Json + */ + public function info(): Json + { + // 商城详情 + $model = MerchantModel::detail($this->storeId); + return $this->renderSuccess(['storeInfo' => $model]); + } + + /** + * 更新商城信息 + * @return Json + */ + public function edit(): Json + { + // 商城详情 + $model = MerchantModel::detail($this->postForm()['merchant_id']); + // 更新记录 + if (!$model->edit($this->postForm())) { + return $this->renderError($model->getError() ?: '更新失败'); + } + return $this->renderSuccess('更新成功'); + + } + + /** + * 更新商城信息 + * @return Json + */ + public function add(): Json + { + // 新增记录 + $model = new MerchantModel; + $data = $this->postForm(); + if ($model->add($data)) { + return $this->renderSuccess('添加成功'); + } + return $this->renderError($model->getError() ?: '添加失败'); + } + + /** + * 删除门店 + * @param int $shopId + * @return Json + */ + public function delete(int $merchantId): Json + { + // 门店详情 + $model = MerchantModel::detail($merchantId); + if (!$model->setDelete()) { + return $this->renderError($model->getError() ?: '删除失败'); + } + return $this->renderSuccess('删除成功'); + } + + /** + * 列表 + */ + public function list(): Json { + $model = new MerchantModel; + $list = $model->getList($this->request->param())->toArray(); + foreach ($list['data'] as $kr => $r) { + $res[$kr]['licenseImg'] = []; + if ($r['license_img_id']) { + $img_ids = explode(",", $r['license_img_id']); + $files = UploadFile::getFileList($img_ids); + $list['data'][$kr]['licenseImg'] = $files ?: null; + } + } + return $this->renderSuccess($list); + } + + + /** + * 更新商城信息 + * @return Json + */ + public function setPageStyle(): Json + { + // 新增记录 + $model = new StyleModel; + $data = $this->postForm(); + if ($model->add($data)) { + return $this->renderSuccess('添加成功'); + } + return $this->renderError($model->getError() ?: '添加失败'); + } + + public function getPageStyle(): Json + { + // 新增记录 + $detail = StyleModel::detail(); + return $this->renderSuccess(compact('detail')); + } + +}