ChannelAdminHandler.java 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. package com.iamberry.wechat.handles.channel;
  2. import com.iamberry.wechat.core.entity.ResultMsg;
  3. import com.iamberry.wechat.core.entity.WechatUtils;
  4. import com.iamberry.wechat.core.entity.channel.ChannelAdmin;
  5. import com.iamberry.wechat.core.entity.member.Member;
  6. import com.iamberry.wechat.core.entity.order.Order;
  7. import com.iamberry.wechat.core.entity.order.OrderItem;
  8. import com.iamberry.wechat.core.entity.page.PageRequest;
  9. import com.iamberry.wechat.core.entity.page.PagedResult;
  10. import com.iamberry.wechat.core.entity.receive.ChargerReceive;
  11. import com.iamberry.wechat.face.channel.ChannelAdminService;
  12. import com.iamberry.wechat.face.channel.MainChannelService;
  13. import com.iamberry.wechat.face.member.MemberService;
  14. import com.iamberry.wechat.face.order.AdminOrderService;
  15. import com.iamberry.wechat.tools.ResultInfo;
  16. import com.iamberry.wechat.utils.StitchAttrUtil;
  17. import org.slf4j.Logger;
  18. import org.slf4j.LoggerFactory;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.stereotype.Controller;
  21. import org.springframework.web.bind.annotation.RequestMapping;
  22. import org.springframework.web.bind.annotation.RequestParam;
  23. import org.springframework.web.bind.annotation.ResponseBody;
  24. import javax.servlet.http.HttpServletRequest;
  25. import java.util.ArrayList;
  26. import java.util.List;
  27. @Controller
  28. @RequestMapping("/wechat/channelAdmin")
  29. public class ChannelAdminHandler {
  30. private Logger logger = LoggerFactory.getLogger(ChannelAdminHandler.class);
  31. @Autowired
  32. private MemberService memberService;
  33. @Autowired
  34. private ChannelAdminService channelAdminService;
  35. @Autowired
  36. private MainChannelService mainChannelService;
  37. @Autowired
  38. private AdminOrderService adminOrderService;
  39. /**
  40. * 获取提货列表
  41. * 主渠道下面所有的提货
  42. * 主渠道下面所有子渠道的
  43. * @param request
  44. * @return
  45. * @throws Exception
  46. */
  47. @ResponseBody
  48. @RequestMapping(value = "/getChannelList")
  49. public ResultMsg getChannelList(HttpServletRequest request,Order order,
  50. @RequestParam(value= "pageSize",defaultValue= "10" ,required=false) Integer pageSize,
  51. @RequestParam(value = "pageNO", defaultValue = "1",required=false) Integer pageNO,
  52. @RequestParam(value = "totalNum", defaultValue = "0", required = false) Integer totalNum
  53. ) throws Exception {
  54. ResultMsg msg = ResultMsg.getError();
  55. // 用户信息
  56. String openId = WechatUtils.getUserBySession(request).getUserOpenid();
  57. ChannelAdmin channelAdmin = new ChannelAdmin();
  58. channelAdmin.setChannelAdminOpenId(openId);
  59. channelAdmin.setChannelAdminStatus(1);
  60. channelAdmin.setChannelType(1); //主渠道
  61. List<ChannelAdmin> channelAdminList = channelAdminService.getChannelAdminList(channelAdmin);
  62. if(channelAdminList == null || channelAdminList.size() < 1){
  63. logger.info("====="+openId+"不是主渠道的管理员!");
  64. msg.setMessage("您还不是主渠道的管理员,请联系上朵!");
  65. return msg;
  66. }
  67. List<Integer> ids = new ArrayList<>();
  68. for (int i=0;i<channelAdminList.size();i++){
  69. ids.add(channelAdminList.get(i).getChannelId());
  70. }
  71. order.setChannelIds(ids);
  72. order.setSalesTransportationType(2);
  73. // 封装请求数据
  74. PageRequest<Order> pageRequest = new PageRequest<>(order, pageNO, pageSize, totalNum == 0);
  75. // 查询订单列表
  76. PagedResult<Order> result = channelAdminService.listOrderPage(pageRequest);
  77. List<Order> orderList = result.getDataList();
  78. for (Order or :orderList) {
  79. List<OrderItem>orderItemList = adminOrderService.getShopOrderItemByOrderId(or.getSalesOrderid());
  80. or.setOrderItemList(orderItemList);
  81. }
  82. msg = ResultMsg.getSuccess();
  83. msg.setData(orderList);
  84. return msg;
  85. }
  86. /**
  87. * 修改订单状态为已提货
  88. * 订单状态: 已付款 --> 已发货
  89. * @param request
  90. * @return
  91. * @throws Exception
  92. */
  93. @ResponseBody
  94. @RequestMapping(value = "/updateStatus")
  95. public ResultMsg updateStatus(HttpServletRequest request,String salesOrderid) throws Exception {
  96. ResultMsg msg = ResultMsg.getError();
  97. if(salesOrderid == null || "".equals(salesOrderid)){
  98. msg.setMessage("订单号不能为空");
  99. return msg;
  100. }
  101. Order order = adminOrderService.getShopOrderByOrderId(salesOrderid);
  102. if(order.getSalesStatus() != 2){
  103. msg.setMessage("该订单无法修改为已提货");
  104. return msg;
  105. }
  106. order = new Order();
  107. order.setSalesOrderid(salesOrderid);
  108. order.setSalesStatus(5);
  109. order.setOldStatus(2);
  110. boolean flag = adminOrderService.updateOrderStatusByOrderId(order);
  111. if(flag){
  112. msg = ResultMsg.getSuccess();
  113. return msg;
  114. }else{
  115. msg.setMessage("修改订单状态失败!");
  116. return msg;
  117. }
  118. }
  119. }