UserGroupLevel.php 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <?php
  2. namespace app\admin\controller\user;
  3. use app\admin\controller\AuthController;
  4. use app\models\system\SystemGroupLevel;
  5. use think\facade\Route as Url;
  6. use crmeb\traits\CurdControllerTrait;
  7. use crmeb\services\{UtilService, JsonService, FormBuilder as Form};
  8. /**
  9. * 会员设置
  10. * Class UserLevel
  11. * @package app\admin\controller\user
  12. */
  13. class UserGroupLevel extends AuthController
  14. {
  15. use CurdControllerTrait;
  16. /*
  17. * 等级展示
  18. * */
  19. public function index()
  20. {
  21. return $this->fetch();
  22. }
  23. /*
  24. * 创建form表单
  25. * */
  26. public function create($id = 0)
  27. {
  28. if ($id) $vipinfo = SystemGroupLevel::get($id);
  29. $field[] = Form::input('name', '等级名称', isset($vipinfo) ? $vipinfo->name : '')->col(Form::col(24));
  30. $field[] = Form::number('suit_award', "套装极差奖", isset($vipinfo) ? $vipinfo->suit_award : 0)->min(0)->col(8);
  31. $field[] = Form::number('group_award', "普通商品极差奖(%)", isset($vipinfo) ? $vipinfo->group_award : 0)->min(0)->col(8);
  32. $field[] = Form::number('integral_group_award', "积分商品极差奖(%)", isset($vipinfo) ? $vipinfo->integral_group_award : 0)->min(0)->col(8);
  33. $field[] = Form::number('level_num', "伞下套装单数", isset($vipinfo) ? $vipinfo->level_num : 0)->min(0)->col(8);
  34. $field[] = Form::radio('system_award', '参与加权分红', isset($vipinfo) ? $vipinfo->system_award : 0)->options([['label' => '是', 'value' => 1], ['label' => '否', 'value' => 0]])->col(8);
  35. $field[] = Form::radio('is_show', '是否显示', isset($vipinfo) ? $vipinfo->is_show : 0)->options([['label' => '显示', 'value' => 1], ['label' => '隐藏', 'value' => 0]])->col(8);
  36. $field[] = Form::textarea('explain', '等级说明', isset($vipinfo) ? $vipinfo->explain : '');
  37. $form = Form::make_post_form('添加等级设置', $field, Url::buildUrl('save', ['id' => $id]), 2);
  38. $this->assign(compact('form'));
  39. return $this->fetch('public/form-builder');
  40. }
  41. /*
  42. * 会员等级添加或者修改
  43. * @param $id 修改的等级id
  44. * @return json
  45. * */
  46. public function save($id = 0)
  47. {
  48. $data = UtilService::postMore([
  49. ['name', ''],
  50. ['suit_award', 0],
  51. ['group_award', 0],
  52. ['integral_group_award', 0],
  53. ['level_num', 0],
  54. ['is_show', ''],
  55. ['system_award', 0],
  56. ['explain', ''],
  57. ]);
  58. if (!$data['name']) JsonService::fail('请输入等级名称');
  59. SystemGroupLevel::beginTrans();
  60. try {
  61. //修改
  62. if ($id) {
  63. if (SystemGroupLevel::edit($data, $id)) {
  64. SystemGroupLevel::commitTrans();
  65. JsonService::successful('修改成功');
  66. } else {
  67. SystemGroupLevel::rollbackTrans();
  68. JsonService::fail('修改失败');
  69. }
  70. } else {
  71. //新增
  72. $data['add_time'] = time();
  73. if (SystemGroupLevel::create($data)) {
  74. SystemGroupLevel::commitTrans();
  75. JsonService::successful('添加成功');
  76. } else {
  77. SystemGroupLevel::rollbackTrans();
  78. JsonService::fail('添加失败');
  79. }
  80. }
  81. } catch (\Exception $e) {
  82. SystemGroupLevel::rollbackTrans();
  83. JsonService::fail($e->getMessage());
  84. }
  85. }
  86. /*
  87. * 获取系统设置的vip列表
  88. * @param int page
  89. * @param int limit
  90. * */
  91. public function get_system_vip_list()
  92. {
  93. $where = UtilService::getMore([
  94. ['page', 0],
  95. ['limit', 10],
  96. ['title', ''],
  97. ['is_show', ''],
  98. ]);
  99. JsonService::successlayui(SystemGroupLevel::getSystemList($where));
  100. }
  101. /*
  102. * 删除会员等级
  103. * @param int $id
  104. * */
  105. public function delete($id = 0)
  106. {
  107. if (SystemGroupLevel::edit(['is_del' => 1], $id))
  108. JsonService::successful('删除成功');
  109. else
  110. JsonService::fail('删除失败');
  111. }
  112. public function set_show($is_show = '', $id = '')
  113. {
  114. ($is_show == '' || $id == '') && JsonService::fail('缺少参数');
  115. $res = SystemGroupLevel::where(['id' => $id])->update(['is_show' => (int)$is_show]);
  116. if ($res) {
  117. JsonService::successful($is_show == 1 ? '显示成功' : '隐藏成功');
  118. } else {
  119. JsonService::fail($is_show == 1 ? '显示失败' : '隐藏失败');
  120. }
  121. }
  122. public function set_value($field = '', $id = '', $value = '')
  123. {
  124. $field == '' || $id == '' || $value == '' && JsonService::fail('缺少参数');
  125. if (SystemGroupLevel::where(['id' => $id])->update([$field => $value]))
  126. JsonService::successful('保存成功');
  127. else
  128. JsonService::fail('保存失败');
  129. }
  130. }