OrderBehavior.php 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. <?php
  2. /**
  3. *
  4. * @author: xaboy<365615158@qq.com>
  5. * @day: 2017/12/18
  6. */
  7. namespace behavior\admin;
  8. use app\admin\model\routine\RoutineFormId;
  9. use basic\ModelBasic;
  10. use app\admin\model\user\User;
  11. use app\admin\model\order\StoreOrder as AdminStoreOrder;
  12. use app\admin\model\user\UserAddress;
  13. use app\admin\model\user\UserBill;
  14. use app\admin\model\wechat\WechatUser;
  15. use service\SystemConfigService;
  16. use service\WechatTemplateService;
  17. use service\RoutineTemplateService;
  18. class OrderBehavior
  19. {
  20. /**
  21. * 修改发货状态 为送货
  22. * @param $data
  23. * $data array 送货方式 送货人姓名 送货人电话
  24. * @param $oid
  25. * $oid string store_order表中的id
  26. */
  27. public static function storeProductOrderDeliveryAfter($data,$oid){
  28. AdminStoreOrder::orderPostageAfter($oid,$data);
  29. // AdminStoreOrder::sendOrderGoods($oid,$data);
  30. }
  31. /**
  32. * 修改发货状态 为发货
  33. * @param $data
  34. * $data array 发货方式 送货人姓名 送货人电话
  35. * @param $oid
  36. * $oid string store_order表中的id
  37. */
  38. public static function storeProductOrderDeliveryGoodsAfter($data,$oid){
  39. AdminStoreOrder::orderPostageAfter($oid,$data);
  40. // AdminStoreOrder::sendOrderGoods($oid,$data);
  41. }
  42. /**
  43. * 后台修改状态 为已收货
  44. * @param $data
  45. * $data array status 状态为 已收货
  46. * @param $oid
  47. * $oid string store_order表中的id
  48. */
  49. public static function storeProductOrderTakeDelivery($order)
  50. {
  51. $res1 = AdminStoreOrder::gainUserIntegral($order);
  52. $res2 = User::backOrderBrokerage($order);
  53. AdminStoreOrder::orderTakeAfter($order);
  54. if(!($res1 && $res2)) exception('收货失败!');
  55. }
  56. /**
  57. * 修改状态为 已退款
  58. * @param $data
  59. * $data array type 1 直接退款 2 退款后返回原状态 refund_price 退款金额
  60. * @param $oid
  61. * $oid string store_order表中的id
  62. */
  63. public static function storeProductOrderRefundYAfter($data,$oid){
  64. if($data['is_channel']) AdminStoreOrder::refundRoutineTemplate($oid); //TODO 小程序余额退款模板消息
  65. else AdminStoreOrder::refundTemplate($data,$oid);//TODO 公众号余额退款模板消息
  66. }
  67. /**
  68. * 修改状态为 不退款
  69. * @param $data
  70. * $data string 退款原因
  71. * @param $oid
  72. * $oid string store_order表中的id
  73. */
  74. public static function storeProductOrderRefundNAfter($data,$oid){
  75. }
  76. /**
  77. * 线下付款
  78. * @param $id
  79. * $id 订单id
  80. */
  81. public static function storeProductOrderOffline($id){
  82. }
  83. /**
  84. * 修改订单状态
  85. * @param $data
  86. * data total_price 商品总价 pay_price 实际支付
  87. * @param $oid
  88. * oid 订单id
  89. */
  90. public static function storeProductOrderEditAfter($data,$oid){
  91. }
  92. /**
  93. * 修改送货信息
  94. * @param $data
  95. * $data array 送货人姓名/快递公司 送货人电话/快递单号
  96. * @param $oid
  97. * $oid string store_order表中的id
  98. */
  99. public static function storeProductOrderDistributionAfter($data,$oid){
  100. }
  101. /**
  102. * 用户申请退款
  103. * @param $oid
  104. * @param $uid
  105. */
  106. public static function storeProductOrderApplyRefundAfter($oid, $uid)
  107. {
  108. $order = AdminStoreOrder::where('id',$oid)->find();
  109. WechatTemplateService::sendAdminNoticeTemplate([
  110. 'first'=>"亲,您有一个订单申请退款 \n订单号:{$order['order_id']}",
  111. 'keyword1'=>'申请退款',
  112. 'keyword2'=>'待处理',
  113. 'keyword3'=>date('Y/m/d H:i',time()),
  114. 'remark'=>'请及时处理'
  115. ]);
  116. }
  117. /**
  118. * 评价产品
  119. * @param $replyInfo
  120. * @param $cartInfo
  121. */
  122. public static function storeProductOrderReply($replyInfo, $cartInfo)
  123. {
  124. //StoreOrder::checkOrderOver($cartInfo['oid']);
  125. }
  126. /**
  127. * 退积分
  128. * @param $product
  129. * $product 商品信息
  130. * @param $back_integral
  131. * $back_integral 退多少积分
  132. */
  133. public static function storeOrderIntegralBack($product,$back_integral){
  134. }
  135. /**
  136. * TODO 后台余额退款
  137. * @param $product
  138. * @param $refund_data
  139. */
  140. public static function storeOrderYueRefund($product,$refund_data)
  141. {
  142. $res = AdminStoreOrder::integralBack($product['id']);
  143. if(!$res) exception('退积分失败!');
  144. }
  145. }