ShowTemplate.php 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. <?php
  2. declare (strict_types = 1);
  3. namespace app\system\controller;
  4. use app\BaseController;
  5. use app\model\api\ShowTemplate as ShowTemplateModel;
  6. use app\Request;
  7. use library\services\UtilService;
  8. // +----------------------------------------------------------------------
  9. // | [ WE CAN DO IT MORE SIMPLE ]
  10. // +----------------------------------------------------------------------
  11. // | Copyright (c) 2018-2020 rights reserved.
  12. // +----------------------------------------------------------------------
  13. // | [ 皮肤模板管理 ]
  14. // +----------------------------------------------------------------------
  15. // | Date: 2020-09-06 21:53
  16. // +----------------------------------------------------------------------
  17. class ShowTemplate extends BaseController{
  18. /**
  19. * 商品列表
  20. * @param Request $request
  21. * @return type
  22. */
  23. public function list(Request $request) {
  24. $post = UtilService::getMore([
  25. ['is_hot', '0'],
  26. ['is_recommend', '0'],
  27. ['status', ''],
  28. ['page', 1],
  29. ['pageSize', 50],
  30. ], $request);
  31. $post["pageSize"] = $post["pageSize"]>50 ? 50 : (int)$post["pageSize"];
  32. $post["page"] = $post["page"]<=0 ? 1 : (int)$post["page"];
  33. $where=[];
  34. if(is_numeric($post['status'])) {
  35. $where[]=["status","=",(int)$post['status']];
  36. }
  37. if((int)$post["is_hot"]==1){
  38. $where[]=["is_hot","=",1];
  39. }
  40. if((int)$post["is_recommend"]==1){
  41. $where[]=["is_recommend","=",1];
  42. }
  43. $totalCount = (new ShowTemplateModel)->where($where)->count();
  44. $data=null;
  45. if($totalCount>0){
  46. $data = (new ShowTemplateModel)
  47. ->field("*")
  48. ->where($where)
  49. ->order("id", "desc")
  50. ->page($post["page"], $post["pageSize"])
  51. ->select();
  52. foreach($data as $k=>$v){
  53. $data[$k]["time"] = date("Y-m-d H:i:s",$v["time"]);
  54. $data[$k]["imgs"] = getImageAr($v["imgs"]);
  55. $data[$k]["img"] = getImageAr($v["imgs"],0);
  56. }
  57. }
  58. $data = empty($data)?[]:$data;
  59. return app('json')->success(["list" => $data, "pageSize" => $post["pageSize"],"page"=>$post["page"],"totalCount"=>$totalCount]);
  60. }
  61. /**
  62. * 添加编辑商品
  63. * @param Request $request
  64. * @return type
  65. */
  66. public function add(Request $request){
  67. $post = UtilService::getMore([
  68. ['id',''],
  69. ['title','','empty','请填写模板标题'],
  70. ['price','0','is_numeric','请输入正确的模板售价'],
  71. ['old_price','0','is_numeric','请输入正确的模板原价'],
  72. // ['imgs',[],'empty','请上传商品主图'],
  73. ['imgs',[]],
  74. ['is_hot','0'],
  75. ['is_recommend','0'],
  76. ['code','','empty','请输入CODE'],
  77. ['status','0'],
  78. ['unreal_sales','0'],
  79. ],$request);
  80. $save=[];
  81. $save["title"] = $post["title"];
  82. $save["price"] = floatval($post["price"]);
  83. $save["old_price"] = floatval($post["old_price"]);
  84. $save["status"] = (int)$post["status"]==1?1:0;
  85. $save["imgs"] = empty($post["imgs"]) ? "" : implode(",", $post["imgs"]);
  86. $save["is_hot"] = (int)$post["is_hot"]==1?1:0;
  87. $save["is_recommend"] = (int)$post["is_recommend"]==1?1:0;
  88. $save["code"] = $post["code"];
  89. $save["unreal_sales"] = (int)$post["unreal_sales"];
  90. $save["admin_time"] = time();
  91. $save["admin_id"] = $request->adminInfo['id'];
  92. if($save["price"]<0 || $save["old_price"]<0){
  93. return app('json')->fail("请输入正确的价格");
  94. }
  95. $id = empty($post["id"])?0:(int)$post["id"];
  96. $codeWhere[]=["code","=",$save["code"]];
  97. if($id>0){
  98. $save["time"] = time();
  99. $codeWhere[]=["id","<>",$id];
  100. }
  101. $count = (new ShowTemplateModel)->where($codeWhere)->where("id","<>",$id)->count();
  102. if($count>0){
  103. return app('json')->fail("当前code已存在");
  104. }
  105. $r=0;
  106. if(empty($id) || $id=="0"){
  107. $r = (new ShowTemplateModel)->insert($save);
  108. }else{
  109. $r = (new ShowTemplateModel)->where("id",$id)->update($save);
  110. }
  111. if($r){
  112. return app('json')->success("数据保存成功");
  113. }else{
  114. return app('json')->fail("数据保存失败");
  115. }
  116. }
  117. }