BusinessSchool.php 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. <?php
  2. namespace app\controller\merchant\business;
  3. use crmeb\basic\BaseController;
  4. use FormBuilder\Factory\Elm;
  5. use think\facade\Db;
  6. use think\facade\Route;
  7. class BusinessSchool extends BaseController
  8. {
  9. public function classify_list(){
  10. $list = Db::name("business_school_classify") ->where('mer_id',$this->request->merId())->where('is_del',0)->order("sort desc,id desc")-> select() -> toArray();
  11. return app("json") -> success($list);
  12. }
  13. public function classify_del(){
  14. $id=$this->request->params(['id']);
  15. $count=Db::name('business_school')->where('mer_id',$this->request->merId())->where('classify',$id['id'])->where('is_del',0)->count();
  16. if($count){
  17. return app('json')->fail('该分类下有数据,不能直接删除~');
  18. }
  19. Db::name('business_school_classify')->where('mer_id',$this->request->merId())->where('id',$id['id'])->update(['is_del'=>1]);
  20. return app("json") -> success('删除成功');
  21. }
  22. public function classify_add_form(){
  23. $data['state']=1;
  24. $data['sort']=0;
  25. $form= Elm::createForm(Route::buildUrl('business_school_classify_save')->build(), [
  26. Elm::input('name', '分类名称')->required(),
  27. Elm::number('sort', '排序')->required(),
  28. Elm::switches('state', '状态')->inactiveValue(0)->activeValue(1)->inactiveText('关闭')->activeText('开启'),
  29. ]);
  30. $form->setTitle('添加分类')->formData($data);
  31. $list=formToData($form);
  32. $list['data']=$data;
  33. return app('json')->success($list);
  34. }
  35. public function classify_save_form()
  36. {
  37. $id=$this->request->param('id');
  38. $data=Db::name('business_school_classify')->find($id);
  39. if(!$data){
  40. return app('json')->fail('数据不存在');
  41. }
  42. $data['state']=(int)$data['state'];
  43. $form= Elm::createForm(Route::buildUrl('business_school_classify_save', compact('id'))->build(), [
  44. Elm::input('name', '分类名称')->required(),
  45. Elm::number('sort', '排序')->required(),
  46. Elm::switches('state', '状态')->inactiveValue(0)->activeValue(1)->inactiveText('关闭')->activeText('开启'),
  47. ]);
  48. $form->setTitle('修改分类')->formData($data);
  49. $list=formToData($form);
  50. $list['data']=$data;
  51. return app('json')->success($list);
  52. }
  53. public function classify_save(){
  54. $data = $this -> request -> params([
  55. 'name',
  56. 'state',
  57. 'sort',
  58. 'id'
  59. ]);
  60. if(!$data['name']){
  61. return app("json") -> fail('请输入名称');
  62. }
  63. if (mb_strlen($data['name'],'UTF-8') > 10) {
  64. return app('json')->fail('名称最多支持输入 10 个汉字');
  65. }
  66. $id = $data['id'] ?? 0;
  67. $data['mer_id']=$this->request->merId();
  68. unset($data['id']);
  69. if ($id == 0){
  70. //新增
  71. $res = Db::name("business_school_classify") -> insert($data);
  72. if ($res)return app("json") -> success("成功");
  73. return app("json") -> fail('出错');
  74. }else{
  75. //
  76. $res = Db::name("business_school_classify") -> where("id",$id) -> update($data);
  77. return app("json") -> success("成功");
  78. }
  79. }
  80. public function get_sort(){
  81. $data=Db::name('business_school')->field('sort')->where('mer_id',$this->request->merId())->where('is_del',0)->order('sort desc,id desc')->find();
  82. $sort=1;
  83. if($data){
  84. $sort=$data['sort']+1;
  85. }
  86. return app("json") -> success("成功",['sort'=>$sort]);
  87. }
  88. public function lst(){
  89. [$page, $limit] = $this->getPage();
  90. $where = $this->request->params(['classify','type','state','name','date']);
  91. $query=Db::name('business_school')
  92. -> alias("sp")
  93. -> join("business_school_classify spc","sp.classify = spc.id","left")
  94. ->where('spc.mer_id',$this->request->merId())
  95. ->where('sp.is_del',0)
  96. -> when(isset($where['type']) && $where['type']!='',function ($query) use ($where){
  97. $query -> where("sp.type",$where['type']);
  98. })
  99. -> when(isset($where['state']) && $where['state']!='',function ($query) use ($where){
  100. $query -> where("sp.state",$where['state']);
  101. })
  102. -> when(isset($where['name']) && $where['name']!='',function ($query) use ($where){
  103. $query -> whereLike("sp.name","%".$where['name']."%");
  104. })
  105. -> when(isset($where['classify']) && $where['classify']!='',function ($query) use ($where){
  106. $query -> where("sp.classify",$where['classify']);
  107. })
  108. -> when(isset($where['date']) && $where['date']!='',function ($query) use ($where){
  109. getModelTime($query, $where['date'], 'sp.create_time');
  110. })
  111. ->field("sp.*,spc.name as classify_name");
  112. $count = $query -> count();
  113. $list = $query ->order("sp.sort desc,sp.id desc")->page($page,$limit)->select()->toArray();
  114. return app('json')->success(compact("list","count"));
  115. }
  116. public function del(){
  117. $id_str=$this->request->param('id');
  118. if($id_str=='' || is_array($id_str)){
  119. return app("json") -> fail('请选择数据~');
  120. }
  121. Db::name('business_school')->where('mer_id',$this->request->merId())->whereIn('id',explode(',',$id_str))->update(['is_del'=>1]);
  122. return app("json") -> success('删除成功');
  123. }
  124. public function get_one(){
  125. $id=$this->request->params(['id']);
  126. if(empty($id['id'])){
  127. return app('json')->fail('id不存在');
  128. }
  129. $data=Db::name('business_school') ->where('mer_id',$this->request->merId())->where('id',$id['id'])->find();
  130. return app("json") -> success($data);
  131. }
  132. public function save(){
  133. $data = $this -> request -> params([
  134. 'name',
  135. 'image',
  136. 'classify',
  137. 'type',
  138. 'state',
  139. 'sort',
  140. 'mp4',
  141. 'cover',
  142. 'content',
  143. 'id'
  144. ]);
  145. if(!$data['name']){
  146. return app("json") -> fail('请输入名称');
  147. }
  148. $id = $data['id'] ?? 0;
  149. $data['mer_id']=$this->request->merId();
  150. unset($data['id']);
  151. if ($id == 0){
  152. //新增
  153. $res = Db::name("business_school") -> insert($data);
  154. if ($res)return app("json") -> success("成功");
  155. return app("json") -> fail('出错');
  156. }else{
  157. //
  158. $res = Db::name("business_school") -> where("id",$id) -> update($data);
  159. return app("json") -> success("成功");
  160. }
  161. }
  162. public function save_state(){
  163. $id_str=$this->request->param('id');
  164. $state=$this->request->param('state');
  165. if($id_str=='' || is_array($id_str)){
  166. return app("json") -> fail('请选择数据~');
  167. }
  168. $ids=explode(',',$id_str);
  169. Db::name('business_school')
  170. ->where('mer_id',$this->request->merId())
  171. ->whereIn('id',$ids)
  172. ->update(['state'=>$state==1?1:0]);
  173. return app("json") -> success('操作成功');
  174. }
  175. public function save_share_classify(){
  176. $data = $this -> request -> params([
  177. 'name',
  178. 'sort',
  179. "id"
  180. ]);
  181. if(!$data['name']){
  182. return app("json") -> fail('请输入分类名称');
  183. }
  184. $id = $data['id'] ?? 0;
  185. unset($data['id']);
  186. $data['mer_id']=$this->request->merId();
  187. if ($id == 0 ){
  188. $res = Db::name("business_school_classify") -> insert($data);
  189. }else{
  190. $res = Db::name("business_school_classify") ->where('mer_id',$this->request->merId()) -> where("id",$id) -> update($data);
  191. return app("json") -> success("成功");
  192. }
  193. if ($res)return app("json") -> success("成功");
  194. return app("json") -> fail('出错');
  195. }
  196. }