Cat.php 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\model\ActionLog;
  4. use app\BaseController;
  5. use think\App;
  6. use think\facade\Db;
  7. class Cat extends BaseController
  8. {
  9. public $post="";
  10. public function __construct(App $app)
  11. {
  12. parent::__construct($app);
  13. $this->post=$this->request->post();
  14. }
  15. public function list(){
  16. $where=[];
  17. $pid = isset($this->post['pid']) &&$this->post['pid']!=="" ?intval($this->post['pid']): "0";
  18. $where[]=["pid","=",$pid];
  19. $cat_name=isset($this->post['cat_name']) && $this->post['cat_name'] !==""? intval($this->post['cat_name']) :"";
  20. if($cat_name!==""){
  21. $where[]=['cat_name',"like","%$cat_name%"];
  22. }
  23. $data = Db::name("cat")->where($where)->select();
  24. $vmp = [];
  25. foreach ($data as $sts){
  26. $vmp[]=stro($sts);
  27. }
  28. return app_show(0,"获取成功",$vmp);
  29. }
  30. public function plist(){
  31. $page = isset($this->post['page']) && $this->post['page'] !=="" ? intval($this->post['page']) :"1";
  32. $size = isset($this->post['size']) && $this->post['size'] !=="" ? intval($this->post['size']) :"10";
  33. $where =[];
  34. $cat_name=isset($this->post['cat_name']) && $this->post['cat_name'] !==""? trim($this->post['cat_name']) :"";
  35. if($cat_name!==""){
  36. $where[]=['cat_name',"like","%$cat_name%"];
  37. }
  38. $pid=isset($this->post['pid']) && $this->post['pid'] !==""? intval($this->post['pid']) :"";
  39. if($pid!==""){
  40. $where[]=['pid',"=",$pid];
  41. }
  42. $status=isset($this->post['status']) && $this->post['status'] !==""? intval($this->post['status']) :"";
  43. if($status!==""){
  44. $where[]=['status',"=",$status];
  45. }
  46. $count = Db::name("cat")->where($where)->count();
  47. $total = ceil($count / $size);
  48. $page = $page >= $total ? $total : $page;
  49. $list = Db::name('cat')->where($where)->page($page, $size)->select();
  50. return app_show(0, "获取成功", ['list' => $list, 'count' => $count]);
  51. }
  52. public function create()
  53. {
  54. $cat_name = isset($this->post['cat_name']) && $this->post['cat_name'] !== "" ? trim($this->post['cat_name']) : "";
  55. if ($cat_name == "") {
  56. return error_show(1002, "参数cat_name不能为空");
  57. }
  58. $pid = isset($this->post['pid']) && $this->post['pid'] !== "" ? intval($this->post['pid']) : "";
  59. if ($pid === "") {
  60. return error_show(1002, "参数pid不能为空");
  61. }
  62. $level = isset($this->post['level']) && $this->post['level'] !== "" ? intval($this->post['level']) : "";
  63. $levl=Db::name('cat')->where(['id'=>$pid])->find();
  64. $level =1;
  65. if ($pid !== 0) {
  66. if(empty($levl)){
  67. return error_show(1002,"未找到父级数据");
  68. }
  69. $level =$levl['level']+1;
  70. }
  71. $rate = isset($this->post['rate']) && $this->post['rate'] !== "" ? intval($this->post['rate']) : "";
  72. $weight = isset($this->post['weight']) && $this->post['weight'] !== "" ? intval($this->post['weight']) : "0";
  73. $status = isset($this->post['status']) && $this->post['status'] !== "" ? intval($this->post['status']) : "1";
  74. $data = [
  75. "cat_name" => $cat_name,
  76. "pid" => $pid,
  77. "level" => $level,
  78. "rate" => $rate,
  79. "weight" => $weight,
  80. "status" => $status,
  81. "addtime" => date("Y-m-d H:i:s"),
  82. "updatetime" => date("Y-m-d H:i:s")
  83. ];
  84. $datainfo = Db::name('cat')->insert($data);
  85. if ($datainfo) {
  86. $stx = ["order_code"=>$pid,"status"=>$status,"action_remark"=>'',"action_type"=>"create"];
  87. ActionLog::logAdd($this->post['token'],$stx,"sxd",$status,$stx);
  88. return error_show(0, "新建成功");
  89. } else {
  90. return error_show(1002, "新建失败");
  91. }
  92. }
  93. public function edit(){
  94. $id = isset($this->post['id']) && $this->post['id'] !==""? intval($this->post['id']) :"";
  95. $idinfo = Db::name('cat')->where(['id'=>$id])->find();
  96. if($idinfo==""){
  97. return error_show(1002,"未找到商品数据");
  98. }
  99. $cat_name= isset($this->post['cat_name']) && $this->post['cat_name'] !=="" ? trim($this->post['cat_name']) :"";
  100. if($cat_name==""){
  101. return error_show(1002,"参数cat_name不能为空");
  102. }
  103. $pid = isset($this->post['pid']) && $this->post['pid'] !=="" ? intval($this->post['pid']) :"";
  104. if($pid==""){
  105. return error_show(1002,"参数pid不能为空");
  106. }
  107. $level = isset($this->post['level']) && $this->post['level'] !=="" ? intval($this->post['level']) :"";
  108. $weight = isset($this->post['weight']) && $this->post['weight']!==""? intval($this->post['weight']):"0";
  109. $status = isset($this->post['status']) && $this->post['status'] !==""?intval($this->post['status']) :"1";
  110. $str = [
  111. "id"=>$id,
  112. "cat_name"=>$cat_name,
  113. "pid"=>$pid,
  114. "level"=>$level,
  115. "weight"=>$weight,
  116. "status"=>$status,
  117. "updatetime"=>date("Y-m-d H:i:s")
  118. ];
  119. $strinfo = Db::name('cat')->where(['id'=>$id])->save($str);
  120. if($strinfo){
  121. $order = ["order_code"=>$id,"status"=>$status,"action_remark"=>'',"action_type"=>"edit"];
  122. ActionLog::logAdd($this->post['token'],$order,"sxd",$status,$order);
  123. return error_show(0,"编辑成功");
  124. }else{
  125. return error_show(1002,"编辑失败");
  126. }
  127. }
  128. public function info(){
  129. $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']) :"";
  130. if($id==""){
  131. return error_show(1002,"参数id不能为空");
  132. }
  133. $idinfo = Db::name('cat')->where(['id'=>$id])->find();
  134. return app_show(0,"获取成功",$idinfo);
  135. }
  136. public function status(){
  137. $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']):"";
  138. if($id===""){
  139. return error_show(1002,"参数id不能为空");
  140. }
  141. $stn = Db::name('cat')->where(['id'=>$id])->find();
  142. if(empty($stn)){
  143. return error_show(1002,"未找到商品数据");
  144. }
  145. $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']) :"";
  146. if($status===""){
  147. return error_show(1002,"参数status不能为空");
  148. }
  149. $pd= $stn['status'];
  150. $stn['status']=$status;
  151. $stn['updatetime']=date("Y-m-d H:i:s");
  152. $str = Db::name('cat')->where(['id'=>$id])->save($stn);
  153. if($str){
  154. $order = ["order_code"=>$id,"status"=>$pd,"action_remark"=>'',"action_type"=>"edit"];
  155. ActionLog::logAdd($this->post['token'],$order,"sxd",$stn['status'],$order);
  156. return error_show(0,"状态更新成功");
  157. }else{
  158. return error_show(1002,"状态更新失败");
  159. }
  160. }
  161. }