MerchantController.php 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. <?php
  2. namespace hd\controllers;
  3. use biz\shop\classes\ShopAdminClass;
  4. use biz\sj\classes\MerchantClass;
  5. use bizHd\auth\services\AuthService;
  6. use biz\sj\services\MerchantExtendService;
  7. use biz\sj\services\MerchantService;
  8. use bizHd\saas\services\SetAuthService;
  9. use Yii;
  10. use common\components\util;
  11. use bizHd\merchant\services\ShopService;
  12. use yii\web\Controller;
  13. class MerchantController extends BaseController
  14. {
  15. public $guestAccess = ['detail', 'introduce-shop'];
  16. //运费设置 ssh 2019.12.8
  17. public function actionFreightSetting()
  18. {
  19. $get = Yii::$app->request->get();
  20. $first = isset($get['first']) && is_numeric($get['first']) ? $get['first'] : 5;
  21. $add = isset($get['add']) && is_numeric($get['add']) ? $get['add'] : 5;
  22. MerchantExtendService::updateByCondition(['sjId' => $this->sjId], ['freeDistance' => $first, 'freight' => $add]);
  23. util::complete();
  24. }
  25. //商家信息 ssh 2019.12.8
  26. public function actionDetail()
  27. {
  28. $merchant = isset($this->sj) && !empty($this->sj) ? $this->sj->attributes : [];
  29. if (empty($merchant)) {
  30. util::success([]);
  31. }
  32. $ext = isset($this->sjExtend) && !empty($this->sjExtend) ? $this->sjExtend->attributes : [];
  33. $merchant = MerchantService::getInfo($merchant, $ext);
  34. util::success($merchant);
  35. }
  36. //商家现有的会员等级 ssh 2019.12.12
  37. public function actionMemberLevel()
  38. {
  39. $list = MerchantExtendService::getGradeList($this->sjExtend->attributes, false, false);
  40. $extend = $this->sjExtend->attributes;
  41. $gradeSwitch = isset($extend['gradeSwitch']) ? $extend['gradeSwitch'] : 1;
  42. util::success(['list' => $list, 'gradeSwitch' => $gradeSwitch]);
  43. }
  44. //会员等级更新 ssh 2019.12.18
  45. public function actionMemberLevelUpdate()
  46. {
  47. $extend = $this->sjExtend->attributes;
  48. if ($extend['gradeSwitch'] == 0) {
  49. util::fail('会员等级已设置不能修改');
  50. }
  51. $list = Yii::$app->request->post('list');
  52. if (empty($list) || is_array($list) == false) {
  53. util::fail('请填写会员等级');
  54. }
  55. if (count($list) > 9) {
  56. util::fail('最多可以设置9个等级');
  57. }
  58. $data = [];
  59. foreach ($list as $key => $val) {
  60. if ($key > 0) {
  61. $currentGrowth = $val[1];
  62. $previousGrowth = $list[$key - 1][1];
  63. if ($currentGrowth <= $previousGrowth) {
  64. util::fail('等级越高成长值也要越高');
  65. }
  66. $currentDiscount = $val[2];
  67. $previousDiscount = $list[$key - 1][2];
  68. if ($currentDiscount >= $previousDiscount) {
  69. util::fail('等级越高折扣要越低');
  70. }
  71. }
  72. $data[] = $val[0] . '_' . $val[1] . '_' . $val[2];
  73. }
  74. if (empty($data)) {
  75. util::fail('请填写会员等级!');
  76. }
  77. $string = implode('I', $data);
  78. MerchantExtendService::updateByCondition(['sjId' => $this->sjId], ['gradeList' => $string, 'gradeSwitch' => 0]);
  79. util::complete('提交成功');
  80. }
  81. //常用链接
  82. public function actionCommonUrl()
  83. {
  84. $list = MerchantService::getCommonUrlList();
  85. util::success($list);
  86. }
  87. //商家当前的权限id列表 ssh 2020.1.23
  88. public function actionAuth()
  89. {
  90. $merchant = $this->sj->attributes;
  91. $setId = $merchant['setId'];
  92. $endId = 1;
  93. $ids = SetAuthService::getAuthIdList($setId, $endId);
  94. util::success(['ids' => $ids]);
  95. }
  96. //商家信息 ssh 2020.1.11
  97. public function actionIntroduceShop()
  98. {
  99. $ghsShopAdminId = Yii::$app->request->get('ghsShopAdminId');
  100. $hdShopAdminId = Yii::$app->request->get('hdShopAdminId');
  101. if (!empty($ghsShopAdminId)) {
  102. $relation = ShopAdminClass::getById($ghsShopAdminId);
  103. } else {
  104. if (empty($hdShopAdminId)) {
  105. util::success([]);
  106. }
  107. $relation = ShopAdminClass::getById($hdShopAdminId);
  108. }
  109. if (empty($relation)) {
  110. util::success([]);
  111. }
  112. $sjId = $relation['sjId'];
  113. $merchant = MerchantClass::getMerchantById($sjId);
  114. if (empty($merchant)) {
  115. util::success([]);
  116. }
  117. util::success(['introduce' => $merchant]);
  118. }
  119. //当前用户获取门店信息
  120. public function actionGetShopInfo()
  121. {
  122. $merchant = $this->sj->attributes;
  123. $merchant['defaultShop'] = ShopService::getDefaultShopInfo($merchant);
  124. util::success($merchant);
  125. }
  126. //当前用户获取商家信息
  127. public function actionGetInfo()
  128. {
  129. $merchant = MerchantService::getInfo($this->sj->attributes, $this->sjExtend);
  130. util::success($merchant);
  131. }
  132. //客户的会员等级 ssh 2020.1.2
  133. public function actionUserGrade()
  134. {
  135. $list = MerchantExtendService::getGradeList($this->sjExtend->attributes, 'asc', false);
  136. util::success($list);
  137. }
  138. //获取商家的到期时间 ssh 2020.2.22
  139. public function actionGetDeadline()
  140. {
  141. $id = Yii::$app->request->get('sjId');
  142. $merchant = MerchantService::getById($id);
  143. $deadline = $merchant['deadline'];
  144. util::success(['date' => $deadline]);
  145. }
  146. }