SaleHouse.php 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. <?php
  2. /**
  3. * @copyright Copyright (c) 2017 https://www.sapixx.com All rights reserved.
  4. * @license Licensed (http://www.apache.org/licenses/LICENSE-2.0).
  5. * @author pillar<ltmn@qq.com>
  6. * 商品管理
  7. */
  8. namespace app\popupshop\controller;
  9. use app\common\controller\Manage;
  10. use app\popupshop\model\SaleHouse as House;
  11. use app\popupshop\model\SaleCategory;
  12. use think\facade\Request;
  13. class SaleHouse extends Manage{
  14. public function initialize() {
  15. parent::initialize();
  16. $this->assign('pathMaps',[['name'=>'商品仓库','url'=>url("popupshop/SaleHouse/index")]]);
  17. }
  18. /**
  19. * 列表
  20. */
  21. public function index(){
  22. $view['keyword'] = Request::param('keyword');
  23. $view['status'] = Request::param('status',0);
  24. $view['page'] = Request::param('page',0);
  25. $view['lists'] = House::list($this->member_miniapp_id,$view['status'],$view['keyword']);
  26. return view()->assign($view);
  27. }
  28. /**
  29. * 添加
  30. */
  31. public function add(){
  32. if(request()->isAjax()){
  33. $data = [
  34. 'category_id' => Request::param('category_id/d'),
  35. 'title' => Request::param('title/s'),
  36. 'name' => Request::param('name/s'),
  37. 'note' => Request::param('note/s'),
  38. 'sell_price' => Request::param('sell_price/f'),
  39. 'cost_price' => Request::param('cost_price/f'),
  40. 'imgs' => Request::param('imgs/a'),
  41. 'img' => Request::param('img/s'),
  42. 'content' => Request::param('content/s'),
  43. ];
  44. $validate = $this->validate($data,'SaleHouse.save');
  45. if(true !== $validate){
  46. return json(['code'=>0,'msg'=>$validate]);
  47. }
  48. $result = House::edit($this->member_miniapp_id,$data);
  49. if($result){
  50. return json(['code'=>200,'url' => url('popupshop/saleHouse/index'),'msg'=>'操作成功']);
  51. }else{
  52. return json(['code'=>0,'msg'=>'操作失败']);
  53. }
  54. }else{
  55. $view['cate'] = SaleCategory::where(['member_miniapp_id' => $this->member_miniapp_id])->select();
  56. return view()->assign($view);
  57. }
  58. }
  59. /**
  60. * 编辑
  61. */
  62. public function edit(){
  63. if(request()->isAjax()){
  64. $data = [
  65. 'id' => Request::param('id/d'),
  66. 'category_id' => Request::param('category_id/d'),
  67. 'title' => Request::param('title/s'),
  68. 'name' => Request::param('name/s'),
  69. 'note' => Request::param('note/s'),
  70. 'sell_price' => Request::param('sell_price/f'),
  71. 'cost_price' => Request::param('cost_price/f'),
  72. 'imgs' => Request::param('imgs/a'),
  73. 'img' => Request::param('img/s'),
  74. 'content' => Request::param('content/s'),
  75. ];
  76. $validate = $this->validate($data,'SaleHouse.save');
  77. if(true !== $validate){
  78. return json(['code'=>0,'msg'=>$validate]);
  79. }
  80. $result = House::edit($this->member_miniapp_id,$data);
  81. if($result){
  82. return json(['code'=>200,'url' => url('popupshop/saleHouse/index'),'msg'=>'操作成功']);
  83. }else{
  84. return json(['code'=>0,'msg'=>'操作失败']);
  85. }
  86. }else{
  87. $view['id'] = Request::param('id/d');
  88. $view['info'] = House::where(['member_miniapp_id' => $this->member_miniapp_id,'id' => $view['id']])->find();
  89. $view['cate'] = SaleCategory::where(['member_miniapp_id' => $this->member_miniapp_id])->select();
  90. $view['imgs'] = json_decode($view['info']['imgs'],true);
  91. $view['status'] = Request::param('status',0);
  92. $view['page'] = Request::param('page',0);
  93. return view()->assign($view);
  94. }
  95. }
  96. /**
  97. * 删除
  98. */
  99. public function delete(){
  100. $id = Request::param('id/d',0);
  101. $ids = Request::param('ids/s');
  102. $result = House::deletes($id,$ids);
  103. if($result){
  104. return enjson();
  105. }else{
  106. return enjson(403);
  107. }
  108. }
  109. /**
  110. * 上架,下架,从回收站恢复
  111. */
  112. public function ids_action(){
  113. if(request()->isAjax()){
  114. $issale = Request::param('issale/d',0);
  115. $ids = Request::param('ids/s');
  116. if(empty($ids)){
  117. return enjson(403,'没有选择任何要操作商品');
  118. }else{
  119. House::ids_action($issale,$ids);
  120. return enjson();
  121. }
  122. }
  123. }
  124. /**
  125. * 选择商品
  126. * @return void
  127. */
  128. public function select(){
  129. $view['pathMaps'] = [['name' => '商品选择','url'=>'javascript:;']];
  130. $view['keyword'] = Request::param('keyword');
  131. $view['input'] = Request::param('input','item_id');
  132. $view['lists'] = House::list($this->member_miniapp_id,'',$view['keyword']);
  133. return view()->assign($view);
  134. }
  135. /**
  136. * 选择商品读取价格
  137. * @return void
  138. */
  139. public function getView(){
  140. $id = Request::param('id',0);
  141. $info = House::where(['member_miniapp_id' => $this->member_miniapp_id,'id' => $id])->find();
  142. $data = [];
  143. $data['sell_price'] = $info->sell_price;
  144. $data['cost_price'] = $info->cost_price;
  145. return enjson(200,'成功',$data);
  146. }
  147. }