Out.php 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. <?php
  2. namespace app\admin\controller\user;
  3. use app\admin\controller\AuthController;
  4. use app\admin\controller\Union;
  5. use app\admin\model\User;
  6. use crmeb\services\{ExpressService,
  7. FormBuilder,
  8. JsonService,
  9. MiniProgramService,
  10. upload\Upload,
  11. WechatService,
  12. FormBuilder as Form,
  13. CacheService,
  14. UtilService as Util,
  15. JsonService as Json
  16. };
  17. use app\admin\model\system\{SystemAdmin,
  18. SystemAttachment as SystemAttachmentModel,
  19. SystemAttachmentCategory as Category
  20. };
  21. use think\Db;
  22. use think\facade\Route as Url;
  23. use think\facade\Validate;
  24. use app\admin\model\user\Out as model;
  25. class Out extends AuthController
  26. {
  27. public function index()
  28. {
  29. $this->assign('admin', $this->adminInfo);
  30. return $this->fetch();
  31. }
  32. public function list()
  33. {
  34. $where = Util::getMore([
  35. ['status', ''],
  36. ['page', 1],
  37. ['limit', 20],
  38. ['auction'],
  39. ['uid'],
  40. ['null']
  41. ]);
  42. $data = model::list($where);
  43. return Json::successlayui($data);
  44. }
  45. /**
  46. * 显示创建资源表单页.
  47. *
  48. * @return \think\Response
  49. */
  50. public function create($id = 0)
  51. {
  52. $f = [];
  53. $f[] = Form::input('name', '名称')->col(12);
  54. $f[] = Form::textarea('info', '简介');
  55. $f[] = Form::number('number', '达标额度')->col(12);
  56. $f[] = Form::frameFiles('pics', '轮播图', Url::buildUrl('admin/widget.images/index', array('fodder' => 'images')))->maxLength(5)->icon('image')->width('100%')->height('500px');
  57. $f[] = Form::radio('status', '状态', 1)->options([['label' => '开启', 'value' => 1], ['label' => '关闭', 'value' => 0]]);
  58. $form = Form::make_post_form('添加', $f, Url::buildUrl('save'));
  59. $this->assign(compact('form'));
  60. return $this->fetch('public/form-builder');
  61. }
  62. public function save()
  63. {
  64. $mode = new model;
  65. $data = Util::postMore([
  66. 'name',
  67. 'info',
  68. 'number',
  69. 'status',
  70. ['pics', []]
  71. ]);
  72. $validate = Validate::rule('name', 'require')->rule([
  73. 'name' => 'require',
  74. 'number' => 'require',
  75. ]);
  76. $validate->message([
  77. 'name.require' => '名称不能为空',
  78. 'number.require' => '达标额度不能为空',
  79. ]);
  80. $data['pics'] = implode(',', $data['pics']);
  81. if (!$validate->check($data)) {
  82. return Json::fail($validate->getError());
  83. }
  84. $res = $mode->save($data);
  85. if ($res) {
  86. return Json::success('添加成功!');
  87. } else {
  88. return Json::fail(\app\admin\model\auction\Auction::getErrorInfo());
  89. }
  90. }
  91. /**
  92. * 删除
  93. * @param $id
  94. * @return void
  95. * @throws \Exception
  96. */
  97. public function delete($id)
  98. {
  99. if (!$id) Json::fail('删除失败');
  100. $model = new model;
  101. $res = $model->where('id', $id)->delete();
  102. if ($res) {
  103. return Json::success('删除成功!');
  104. } else {
  105. return Json::fail(\app\admin\model\auction\Auction::getErrorInfo());
  106. }
  107. }
  108. public function set_status($id, $status)
  109. {
  110. if (empty($id)) return Json::fail('修改失败');
  111. $res = model::update(['status' => $status, 'id' => $id]);
  112. if ($res) {
  113. return Json::success('修改成功!');
  114. } else {
  115. return Json::fail(\app\admin\model\auction\Auction::getErrorInfo());
  116. }
  117. }
  118. public function edit($id)
  119. {
  120. if (!$id) Json::fail('数据不存在');
  121. $data = model::find($id);
  122. $f = [];
  123. $f[] = Form::input('name', '名称', $data->getData('name'))->col(12);
  124. $f[] = Form::textarea('info', '介绍', $data->getData('info'));
  125. $f[] = Form::frameFiles('pics', '轮播图', Url::buildUrl('admin/widget.images/index', array('fodder' => 'images')), explode(',', $data->getData('pics')))->maxLength(5)->icon('image')->width('100%')->height('500px');
  126. $f[] = Form::number('number', '达标额度', $data->getData('number'))->col(12);
  127. $f[] = Form::radio('status', '状态', $data->getData('status'))->options([['label' => '开启', 'value' => 1], ['label' => '关闭', 'value' => 0]]);
  128. $form = Form::make_post_form('修改', $f, Url::buildUrl('update', compact('id')));
  129. $this->assign(compact('form'));
  130. return $this->fetch('public/form-builder');
  131. }
  132. public function update()
  133. {
  134. $data = Util::postMore([
  135. 'id',
  136. 'name',
  137. 'info',
  138. 'status',
  139. 'number',
  140. ['pics', []]
  141. ]);
  142. $validate = Validate::rule('name', 'require')->rule([
  143. 'name' => 'require',
  144. 'number' => 'require',
  145. ]);
  146. $validate->message([
  147. 'name.require' => '名称不能为空',
  148. 'number.require' => '达标数量不能为空',
  149. ]);
  150. $data['pics'] = implode(',', $data['pics']);
  151. if (!$validate->check($data)) {
  152. return Json::fail($validate->getError());
  153. }
  154. $res = model::update($data);
  155. if ($res) {
  156. return Json::success('修改成功!');
  157. } else {
  158. return Json::fail(\app\admin\model\auction\Auction::getErrorInfo());
  159. }
  160. }
  161. public function edit_content($id)
  162. {
  163. if (!$id) return $this->failed('数据不存在');
  164. $seckill = model::get($id);
  165. if (!$seckill) return Json::fail('数据不存在!');
  166. $this->assign([
  167. 'content' => htmlspecialchars_decode($seckill['content']),
  168. 'field' => 'content',
  169. 'action' => Url::buildUrl('change_field', ['id' => $id, 'field' => 'content'])
  170. ]);
  171. return $this->fetch('public/edit_content');
  172. }
  173. public function change_field($id)
  174. {
  175. if (!$id) return $this->failed('数据不存在');
  176. $seckill = model::get($id);
  177. if (!$seckill) return Json::fail('数据不存在!');
  178. $data['content'] = request()->post('content');
  179. $res = model::edit($data, $id);
  180. if ($res)
  181. return Json::successful('添加成功');
  182. else
  183. return Json::fail('添加失败');
  184. }
  185. }