WxGoods.php 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <?php
  2. namespace app\api\controller\h5;
  3. use app\hander\HelpHander;
  4. use think\App;
  5. use think\Db;
  6. use app\api\controller\Base;
  7. class WxGoods extends Base
  8. {
  9. public function __construct(App $app = null) {
  10. parent::__construct($app);
  11. // $this->orgId = 3;
  12. }
  13. public function getUser(){
  14. $user =Db::name('wxuser')
  15. ->where('id',$this->userId)
  16. ->field('id,nickname,img,phone')
  17. ->find();
  18. $map[] = ['user_id','=',$this->userId];
  19. $map[] = ['org_id','=',$this->orgId];
  20. $map[] = ['del','=',0];
  21. $dfk = Db::name('wx_orders')
  22. ->where($map)
  23. ->where('status',0)
  24. ->count();
  25. $map1 = [];
  26. $ids = Db::name('wx_orders_refund')
  27. ->where('org_id',$this->orgId)
  28. ->where('user_id',$this->userId)
  29. ->where('del',0)
  30. ->column('order_id');
  31. if(!empty($ids)){
  32. $map1[]=['id','not in',$ids];
  33. }
  34. $dfh = Db::name('wx_orders')
  35. ->where($map)
  36. ->where($map1)
  37. ->where('status',1)
  38. ->count();
  39. $dsh = Db::name('wx_orders')
  40. ->where($map)
  41. ->where('status',2)
  42. ->count();
  43. $th = Db::name('wx_orders_refund')
  44. ->where('user_id',$this->userId)
  45. ->where('org_id',$this->orgId)
  46. ->where('del',0)
  47. ->group('order_id')
  48. ->count();
  49. $user['dfk'] = $dfk;
  50. $user['dfh'] = $dfh;
  51. $user['dsh'] = $dsh;
  52. $user['th'] = $th;
  53. HelpHander::success($user);
  54. }
  55. public function getPhone(){
  56. $res = (new \app\common\model\Config())
  57. ->getConfig('org_wx_shop_phone',$this->orgId);
  58. HelpHander::success($res?$res:'');
  59. }
  60. public function getBanner(){
  61. $ret = model('Banner')->getList(5,3);
  62. HelpHander::success($ret);
  63. }
  64. public function getIndex(){
  65. $data = [
  66. // 'phone'=>(new \app\common\model\Config())
  67. // ->getConfig('org_wx_shop_phone',$this->orgId),
  68. // 'banner'=>model('Banner')->getList(5,3),
  69. // 'notice'=>model('WxNotice')->getOne($this->orgId),
  70. // 'orgName'=>Db::name('org')
  71. // ->where('id',$this->orgId)->value('name'),
  72. 'phone'=>(new \app\common\model\Config())
  73. ->getConfig('org_phone',$this->orgId),
  74. ];
  75. HelpHander::success($data);
  76. }
  77. public function getTjGoods(){
  78. $ret = model('WxGoods')->getTjGoods($this->orgId);
  79. HelpHander::success($ret);
  80. }
  81. public function getIndexGoods(){
  82. $ret = model('WxGoods')->getIndexGoods($this->orgId);
  83. HelpHander::success($ret);
  84. }
  85. public function getTjGoodsList(){
  86. $page = input('page/d',1);
  87. $size = input('size/d',20);
  88. $ret = model('WxGoods')->getTjGoodsList($this->orgId,$page,$size);
  89. HelpHander::success($ret);
  90. }
  91. public function getIndexGoodsList(){
  92. $keywords=input('keywords','','trim');
  93. $page = input('page/d',1);
  94. $size = input('size/d',20);
  95. $type = input('type/d',0);
  96. $sort=input('sortName','sale');
  97. $asc=input('sortAsc','desc');
  98. $ret = model('WxGoods')->getIndexGoodsList($this->orgId,$page,$size,$type,$sort,$asc,$keywords);
  99. HelpHander::success($ret);
  100. }
  101. public function getCateList(){
  102. $list = model('WxGoodsCate')->lists($this->orgId);
  103. HelpHander::success($list);
  104. }
  105. public function getCateInfo(){
  106. $id = input('id/d',0);
  107. $info = Db::name('wx_goods_cate')
  108. ->field('id,title,is_water,path')
  109. ->where(['id'=>$id])->find();
  110. HelpHander::success($info);
  111. }
  112. public function cateGoodsList(){
  113. $keywords=input('keywords','','trim');
  114. $cateId=input('cateId/d',0);
  115. $sort=input('sortName','sale');
  116. $asc=input('sortAsc','desc');
  117. $ret = model('WxGoods')->cateGoodsList($this->userId,$this->orgId,$cateId,$keywords,$sort,$asc);
  118. HelpHander::success($ret);
  119. }
  120. public function setGoodsNum(){
  121. $id=input('goodsId/d',0);
  122. $nums=input('nums/d',1);
  123. $type=input('type/d',0);
  124. if(empty($id)){
  125. HelpHander::error('参数错误');
  126. }
  127. $ret = model('WxCart')->setGoodsNum($this->userId,$id,$type,$nums);
  128. if($ret){
  129. HelpHander::success([],'操作成功');
  130. }else{
  131. HelpHander::error('操作失败');
  132. }
  133. }
  134. public function goodsFav(){
  135. $id=input('goodsId/d',0);
  136. if(empty($id)){
  137. HelpHander::error('参数错误');
  138. }
  139. $ret = model('WxCart')->goodsFav($this->userId,$id);
  140. if($ret){
  141. $msg = $ret['type']==0?'取消成功':'收藏成功';
  142. if(!$ret['ret']){
  143. $msg = $ret['type']==0?'取消失败':'收藏失败';
  144. HelpHander::error($msg);
  145. }
  146. HelpHander::success([],$msg);
  147. }else{
  148. HelpHander::error('操作失败');
  149. }
  150. }
  151. public function favGoodsList(){
  152. $page = input('page/d',1);
  153. $size = input('size/d',20);
  154. $ret = model('WxGoods')->favGoodsList($this->userId,$this->orgId,$page,$size);
  155. HelpHander::success($ret);
  156. }
  157. public function noticeList(){
  158. $page = input('page/d',1);
  159. $size = input('size/d',20);
  160. $list = Db::name('wx_notice')
  161. ->field('id,title,content,create_time')
  162. ->where('del',0)
  163. ->where('org_id',$this->orgId)
  164. ->order(['id'=>'desc'])
  165. ->page($page,$size)
  166. ->select();
  167. HelpHander::success($list);
  168. }
  169. public function noticeDetail(){
  170. $id = input('id/d',0);
  171. $list = Db::name('wx_notice')
  172. ->field('id,title,content,create_time,user_id')
  173. ->where('del',0)
  174. ->where('id',$id)
  175. ->where('org_id',$this->orgId)
  176. ->find();
  177. $list['create_date'] = date('Y-m-d',strtotime($list['create_time']));
  178. $list['user_name'] = Db::name('user')
  179. ->where('id',$list['user_id'])
  180. ->value('real_name');
  181. HelpHander::success($list);
  182. }
  183. public function goodsDetail(){
  184. $id = input('id/d',0);
  185. $info = model('WxGoods')->details($id,$this->userId);
  186. $info?HelpHander::success($info):HelpHander::error('商品信息不存在');
  187. }
  188. public function barrelList(){
  189. $page = input('page/d',1);
  190. $size = input('size/d',20);
  191. $ret = model('WxGoods')->barrelList($this->orgId,$page,$size);
  192. HelpHander::success($ret);
  193. }
  194. public function myBarrelList(){
  195. $page = input('page/d',1);
  196. $size = input('size/d',20);
  197. $ret = model('WxGoods')->myBarrelList($this->orgId,$this->userId,$page,$size);
  198. HelpHander::success($ret);
  199. }
  200. public function myRefundBarrelList(){
  201. $page = input('page/d',1);
  202. $size = input('size/d',20);
  203. $ret = model('WxGoods')->myRefundBarrelList($this->orgId,$this->userId,$page,$size);
  204. HelpHander::success($ret);
  205. }
  206. }