JuniuController.php 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <?php
  2. namespace app\api\controller;
  3. use app\models\store\Order;
  4. use app\Request;
  5. use crmeb\services\HttpService;
  6. use crmeb\services\UtilService;
  7. class JuniuController
  8. {
  9. private static $url = "https://new.juniuzu.com";
  10. /**
  11. * 获取商品列表
  12. * @param Request $request
  13. */
  14. public function lst(Request $request)
  15. {
  16. list($page,$keyword,$sort_field,$sort_way) = UtilService::postMore(
  17. [
  18. ['page',1],
  19. ['keyword',''],
  20. ['sort_field','sales_show'],
  21. ['sort_way','desc'],
  22. ],$request,true
  23. );
  24. $rs = do_request(self::$url.'/api/goods/getlist?'.http_build_query(compact('page','keyword','sort_field','sort_way')),[],null,false);
  25. return app('json')->success('获取成功',json_decode($rs,true));
  26. }
  27. /**
  28. * 获取商品详情
  29. * @param Request $request
  30. */
  31. public function info(Request $request)
  32. {
  33. $id = input('id',0);
  34. $rs = do_request(self::$url.'/api/goods/getdetail?'.http_build_query(compact('id')),[],null,false);
  35. return app('json')->success('获取成功',json_decode($rs,true));
  36. }
  37. /**
  38. * 获取物流信息
  39. * @param Request $request
  40. * @return mixed
  41. */
  42. public function getexpress(Request $request)
  43. {
  44. $sn = input('sn',0);
  45. $rs = do_request(self::$url.'/api/order/getexpress?'.http_build_query(compact('sn')),[],null,false);
  46. return app('json')->success('获取成功',json_decode($rs,true));
  47. }
  48. /**
  49. * 创建订单
  50. * @param Request $request
  51. */
  52. public function order_create(Request $request)
  53. {
  54. $data = UtilService::postMore([
  55. ['real_name',''],
  56. ['user_phone',''],
  57. ['user_address',''],
  58. ['province',''],
  59. ['city',''],
  60. ['district',''],
  61. ['pay_price',0],
  62. ['goods_id',0],
  63. ['goods_name',''],
  64. ['goods_image',''],
  65. ['goods_num',''],
  66. ['spec',[]],
  67. ],$request);
  68. $data1 = $data;
  69. $data['user_address'] = $data['province']." ".$data['city']." ".$data['district']." ".$data['user_address'];
  70. $data['uid'] = $request->uid();
  71. $user = $request->user();
  72. if($data['real_name']=='') return app('json')->fail('输入姓名');
  73. if($data['user_phone']=='') return app('json')->fail('输入手机号');
  74. if($data['user_address']=='') return app('json')->fail('输入详细地址');
  75. if($data['goods_name']=='') return app('json')->fail('商品名称不能为空');
  76. if($data['goods_image']=='') return app('json')->fail('商品图片不能为空');
  77. if($data['goods_num']<1) return app('json')->fail('商品数量不能小于1');
  78. if(bcsub($user['integral'],$data['pay_price'])<0)return app('json')->fail('用户积分不足,不能兑换');
  79. $rs = Order::order_create($data);
  80. if($rs)
  81. {
  82. $param['items'] = json_encode([['goods_id'=>$data['goods_id'],'num'=>$data['goods_num'],'spec'=>$data['spec']]]);
  83. $param['province_name'] = $data['province'];
  84. $param['city_name'] = $data['city'];
  85. $param['district_name'] = $data['district'];
  86. $param['address'] = $data1['user_address'];
  87. $param['consignee'] = $data1['real_name'];
  88. $param['tel'] = $data1['user_phone'];
  89. $rs1 = Order::sign($param);
  90. $rs2 = HttpService::postRequest(self::$url."/api/order/cooperationadd",$rs1);
  91. $rs2 = json_decode($rs2,true);
  92. if(isset($rs2['order_sn']))
  93. {
  94. Order::where('id',$rs['id'])->update(['sn'=>$rs2['order_sn'],'rs'=>json_encode($rs2)]);
  95. }
  96. else {
  97. Order::where('id', $rs['id'])->update(['rs' => json_encode($rs2)]);
  98. }
  99. return app('json')->success($rs->toarray());
  100. }
  101. else
  102. {
  103. return app('json')->fail(Order::getErrorInfo());
  104. }
  105. }
  106. public function order_lst(Request $request)
  107. {
  108. $where = UtilService::getMore([
  109. ['page',1],
  110. ['limit',10],
  111. ['uid',$request->uid()],
  112. ],$request);
  113. $rs = Order::lst($where);
  114. return app('json')->success($rs);
  115. }
  116. }