Selleraccountgroup.php 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. <?php
  2. namespace app\api\controller;
  3. use think\facade\Lang;
  4. /**
  5. *
  6. *
  7. * ----------------------------------------------------------------------------
  8. *
  9. * 卖家账户组控制器
  10. */
  11. class Selleraccountgroup extends MobileSeller
  12. {
  13. public function initialize()
  14. {
  15. parent::initialize();
  16. Lang::load(base_path() . 'home/lang/' . config('lang.default_lang') . '/selleraccount.lang.php');
  17. }
  18. /**
  19. * @api {POST} api/Selleraccountgroup/group_list 账户组列表
  20. * @apiVersion 1.0.0
  21. * @apiGroup Selleraccountgroup
  22. *
  23. * @apiHeader {String} X-DS-KEY 卖家授权token
  24. *
  25. * @apiSuccess {String} code 返回码,10000为成功
  26. * @apiSuccess {String} message 返回消息
  27. * @apiSuccess {Object} result 返回数据
  28. * @apiSuccess {Object[]} result.seller_group_list 卖家账户组列表 (返回字段参考sellergroup表)
  29. */
  30. public function group_list()
  31. {
  32. $sellergroup_model = model('sellergroup');
  33. $seller_group_list = $sellergroup_model->getSellergroupList(array('store_id' => $this->store_info['store_id']));
  34. ds_json_encode(10000, '', array('seller_group_list' => $seller_group_list));
  35. }
  36. /**
  37. * @api {POST} api/Selleraccountgroup/get_common_data 新增/编辑账户组公共数据
  38. * @apiVersion 1.0.0
  39. * @apiGroup Selleraccountgroup
  40. *
  41. * @apiHeader {String} X-DS-KEY 卖家授权token
  42. *
  43. * @apiSuccess {String} code 返回码,10000为成功
  44. * @apiSuccess {String} message 返回消息
  45. * @apiSuccess {Object} result 返回数据
  46. * @apiSuccess {Object[]} result.smt_list 店铺消息模板列表
  47. * @apiSuccess {String} result.smt_list.storemt_code 店铺消息模板代码
  48. * @apiSuccess {String} result.smt_list.storemt_name 店铺消息模板名称
  49. * @apiSuccess {Object[]} result.seller_menu 卖家功能菜单列表 (返回字段参考\app\home\controller\BaseSeller::getSellerMenuList)
  50. */
  51. public function get_common_data()
  52. {
  53. Lang::load(base_path() . 'home/lang/' . config('lang.default_lang') . '/baseseller.lang.php');
  54. // 店铺消息模板列表
  55. $smt_list = model('storemsgtpl')->getStoremsgtplList(array(), 'storemt_code,storemt_name');
  56. $seller_menu = \app\home\controller\BaseSeller::getSellerMenuList($this->store_info['store_id']);
  57. ds_json_encode(10000, '', array('smt_list' => $smt_list, 'seller_menu' => $seller_menu));
  58. }
  59. /**
  60. * @api {POST} api/Selleraccountgroup/group_edit 获取账户组数据
  61. * @apiVersion 1.0.0
  62. * @apiGroup Selleraccountgroup
  63. *
  64. * @apiHeader {String} X-DS-KEY 卖家授权token
  65. *
  66. * @apiParam {Int} group_id 账户组ID
  67. *
  68. * @apiSuccess {String} code 返回码,10000为成功
  69. * @apiSuccess {String} message 返回消息
  70. * @apiSuccess {Object} result 返回数据
  71. * @apiSuccess {String} result.group_name 帐号组名称
  72. * @apiSuccess {String[]} result.group_limits 卖家按钮列表
  73. * @apiSuccess {String[]} result.smt_limits 店铺消息模板列表
  74. */
  75. public function group_edit()
  76. {
  77. $group_id = intval(input('param.group_id'));
  78. if ($group_id <= 0) {
  79. ds_json_encode(10001, lang('param_error'));
  80. }
  81. $sellergroup_model = model('sellergroup');
  82. $seller_group_info = $sellergroup_model->getSellergroupInfo(array('sellergroup_id' => $group_id, 'store_id' => $this->store_info['store_id']));
  83. if (empty($seller_group_info)) {
  84. ds_json_encode(10001, lang('there_no_group'));
  85. }
  86. ds_json_encode(10000, '', array('group_name' => $seller_group_info['sellergroup_name'], 'group_limits' => explode(',', $seller_group_info['sellergroup_limits']), 'smt_limits' => explode(',', $seller_group_info['smt_limits'])));
  87. }
  88. /**
  89. * @api {POST} api/Selleraccountgroup/group_save 保存账户组数据
  90. * @apiVersion 1.0.0
  91. * @apiGroup Selleraccountgroup
  92. *
  93. * @apiHeader {String} X-DS-KEY 卖家授权token
  94. *
  95. * @apiParam {Int} group_id 账户组ID 0新增
  96. * @apiParam {String} seller_group_name 账户组名称
  97. * @apiParam {Array} limits 操作权限
  98. * @apiParam {Array} smt_limits 消息接收权限
  99. *
  100. * @apiSuccess {String} code 返回码,10000为成功
  101. * @apiSuccess {String} message 返回消息
  102. * @apiSuccess {Object} result 返回数据
  103. */
  104. public function group_save()
  105. {
  106. $seller_info = array();
  107. $group_id = intval(input('param.group_id'));
  108. $seller_info['sellergroup_name'] = input('post.seller_group_name');
  109. $seller_info['sellergroup_limits'] = implode(',', input('post.limits/a'));
  110. $seller_info['smt_limits'] = empty(input('post.smt_limits/a')) ? '' : implode(',', input('post.smt_limits/a'));
  111. $seller_info['store_id'] = $this->store_info['store_id'];
  112. $sellergroup_model = model('sellergroup');
  113. if (empty($group_id)) {
  114. $result = $sellergroup_model->addSellergroup($seller_info);
  115. $this->recordSellerlog(lang('add_group_successfully') . $result);
  116. if ($result) {
  117. ds_json_encode(10000, lang('add_success'));
  118. } else {
  119. ds_json_encode(10001, lang('add_failure'));
  120. }
  121. } else {
  122. $condition = array();
  123. $condition[] = array('sellergroup_id', '=', $group_id);
  124. $condition[] = array('store_id', '=', $this->store_info['store_id']);
  125. $result = $sellergroup_model->editSellergroup($seller_info, $condition);
  126. $this->recordSellerlog(lang('editorial_team_succeeds') . $group_id);
  127. if ($result) {
  128. ds_json_encode(10000, lang('edit_success'));
  129. } else {
  130. ds_json_encode(10001, lang('edit_failure'));
  131. }
  132. }
  133. }
  134. /**
  135. * @api {POST} api/Selleraccountgroup/group_del 删除账户组
  136. * @apiVersion 1.0.0
  137. * @apiGroup Selleraccountgroup
  138. *
  139. * @apiHeader {String} X-DS-KEY 卖家授权token
  140. *
  141. * @apiParam {Int} group_id 账户组ID 0新增
  142. *
  143. * @apiSuccess {String} code 返回码,10000为成功
  144. * @apiSuccess {String} message 返回消息
  145. * @apiSuccess {Object} result 返回数据
  146. */
  147. public function group_del()
  148. {
  149. $group_id = intval(input('param.group_id'));
  150. if ($group_id > 0) {
  151. //判断当前用户组下是否有用户
  152. $condition = array(
  153. 'seller.store_id' => $this->store_info['store_id'],
  154. 'seller.sellergroup_id' => $group_id
  155. );
  156. $seller_list = model('seller')->getSellerList($condition);
  157. if (!empty($seller_list)) {
  158. ds_json_encode(10001, lang('please_change_account_group'));
  159. }
  160. $condition = array();
  161. $condition[] = array('sellergroup_id', '=', $group_id);
  162. $condition[] = array('store_id', '=', $this->store_info['store_id']);
  163. $sellergroup_model = model('sellergroup');
  164. $result = $sellergroup_model->delSellergroup($condition);
  165. if ($result) {
  166. $this->recordSellerlog(lang('group_deleted_successfully') . $group_id);
  167. ds_json_encode(10000, lang('ds_common_op_succ'));
  168. } else {
  169. $this->recordSellerlog(lang('deletion_group_failed') . $group_id);
  170. ds_json_encode(10001, lang('ds_common_op_fail'));
  171. }
  172. } else {
  173. ds_json_encode(10001, lang('param_error'));
  174. }
  175. }
  176. }