|
@@ -11,14 +11,17 @@ import com.qs.mp.admin.domain.param.UserDeliverOrderShipParam;
|
|
|
import com.qs.mp.admin.domain.vo.TicketPackageVO;
|
|
|
import com.qs.mp.admin.service.ITicketBoxService;
|
|
|
import com.qs.mp.admin.service.ITicketPackageService;
|
|
|
+import com.qs.mp.channel.domain.Channel;
|
|
|
import com.qs.mp.channel.domain.ChannelOrder;
|
|
|
import com.qs.mp.channel.domain.ChannelOrderDetail;
|
|
|
import com.qs.mp.channel.domain.ChannelOrderItem;
|
|
|
+import com.qs.mp.channel.domain.vo.ChannelOrderInfoVO;
|
|
|
import com.qs.mp.channel.domain.vo.ChannelOrderItemVO;
|
|
|
import com.qs.mp.channel.domain.vo.ChannelOrderVO;
|
|
|
import com.qs.mp.channel.service.IChannelOrderDetailService;
|
|
|
import com.qs.mp.channel.service.IChannelOrderItemService;
|
|
|
import com.qs.mp.channel.service.IChannelOrderService;
|
|
|
+import com.qs.mp.channel.service.IChannelService;
|
|
|
import com.qs.mp.common.annotation.Log;
|
|
|
import com.qs.mp.common.core.domain.AjaxResult;
|
|
|
import com.qs.mp.common.core.page.TableDataInfo;
|
|
@@ -27,12 +30,14 @@ import com.qs.mp.common.domain.DeliveryCompany;
|
|
|
import com.qs.mp.common.enums.BusinessType;
|
|
|
import com.qs.mp.common.enums.ErrorCodeEnum;
|
|
|
import com.qs.mp.common.enums.TicketPkgStatusEnum;
|
|
|
+import com.qs.mp.common.service.IDeliveryCompanyService;
|
|
|
import com.qs.mp.user.domain.UserDeliverOrderItem;
|
|
|
import com.qs.mp.web.controller.common.BaseApiController;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import ma.glasnost.orika.MapperFacade;
|
|
@@ -61,6 +66,12 @@ public class ChannelOrderMgrController extends BaseApiController {
|
|
|
@Autowired
|
|
|
private IChannelOrderDetailService channelOrderDetailService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IChannelService channelService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IDeliveryCompanyService deliveryCompanyService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private ITicketBoxService ticketBoxService;
|
|
|
|
|
@@ -108,14 +119,38 @@ public class ChannelOrderMgrController extends BaseApiController {
|
|
|
if(null == order || StringUtils.isBlank(order.getOrderId())) {
|
|
|
return error(ErrorCodeEnum.ERROR_CODE_1001);
|
|
|
}
|
|
|
- LambdaQueryWrapper<ChannelOrder> queryWrapper = new LambdaQueryWrapper<ChannelOrder>();
|
|
|
- queryWrapper.eq(ChannelOrder::getOrderId, order.getOrderId());
|
|
|
-
|
|
|
- ChannelOrder channelOrder = channelOrderService.getOne(queryWrapper);
|
|
|
- ChannelOrderVO channelOrderVO = mapperFacade.map(channelOrder, ChannelOrderVO.class);
|
|
|
- channelOrderVO.setItems(channelOrderItemService.list(new LambdaQueryWrapper<ChannelOrderItem>()
|
|
|
- .eq(ChannelOrderItem::getOrderId, channelOrderVO.getOrderId())));
|
|
|
- return AjaxResult.success(channelOrderVO);
|
|
|
+ ChannelOrder channelOrder = channelOrderService.getById(order.getOrderId());
|
|
|
+ if(null == channelOrder || StringUtils.isBlank(channelOrder.getOrderId())) {
|
|
|
+ return error(ErrorCodeEnum.ERROR_CODE_1001);
|
|
|
+ }
|
|
|
+ ChannelOrderInfoVO channelOrderInfoVO = mapperFacade.map(channelOrder, ChannelOrderInfoVO.class);
|
|
|
+
|
|
|
+ if(null != channelOrderInfoVO && null != channelOrderInfoVO.getChannelId()) {
|
|
|
+ Channel channel = channelService.getById(channelOrderInfoVO.getChannelId());
|
|
|
+ channelOrderInfoVO.setChannel(channel);
|
|
|
+ }
|
|
|
+ if(null != channelOrderInfoVO && null != channelOrderInfoVO.getDeliveryId()) {
|
|
|
+ DeliveryCompany deliveryCompany = deliveryCompanyService.getById(channelOrderInfoVO.getDeliveryId());
|
|
|
+ channelOrderInfoVO.setDeliveryCompany(deliveryCompany);
|
|
|
+ }
|
|
|
+ List<ChannelOrderItem> itemList = channelOrderItemService.list(new LambdaQueryWrapper<ChannelOrderItem>()
|
|
|
+ .eq(ChannelOrderItem::getOrderId, channelOrderInfoVO.getOrderId()));
|
|
|
+
|
|
|
+ List<ChannelOrderItemVO> itemVOList = mapperFacade.mapAsList(itemList, ChannelOrderItemVO.class);
|
|
|
+ if(null != itemVOList && itemVOList.size() > 0) {
|
|
|
+ for(ChannelOrderItemVO itemVO : itemVOList) {
|
|
|
+ if(null != itemVO && StringUtils.isNotBlank(itemVO.getBoxId())
|
|
|
+ && StringUtils.isNotBlank(itemVO.getOrderId())) {
|
|
|
+ LambdaQueryWrapper<ChannelOrderDetail> detailQueryWrapper = new LambdaQueryWrapper<ChannelOrderDetail>();
|
|
|
+ detailQueryWrapper.eq(ChannelOrderDetail::getOrderId, itemVO.getOrderId());
|
|
|
+ detailQueryWrapper.eq(ChannelOrderDetail::getBoxId, itemVO.getBoxId());
|
|
|
+ List<ChannelOrderDetail> detailList = channelOrderDetailService.list(detailQueryWrapper);
|
|
|
+ itemVO.setDetailList(detailList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ channelOrderInfoVO.setItems(itemVOList);
|
|
|
+ return AjaxResult.success(channelOrderInfoVO);
|
|
|
}
|
|
|
|
|
|
|
|
@@ -132,7 +167,12 @@ public class ChannelOrderMgrController extends BaseApiController {
|
|
|
}
|
|
|
if(null != shipParam && null != shipParam.getPkgIds()
|
|
|
&& shipParam.getPkgIds().size() > 0) {
|
|
|
- boolean rtn = channelOrderService.channelOrderShip(shipParam.getOrderId(), shipParam.getPkgIds());
|
|
|
+ ChannelOrder channelOrder = new ChannelOrder();
|
|
|
+ channelOrder.setOrderId(shipParam.getOrderId());
|
|
|
+ channelOrder.setDeliveryId(shipParam.getDeliveryId());
|
|
|
+ channelOrder.setDeliveryFlowId(shipParam.getDeliveryFlowId());
|
|
|
+ channelOrder.setDeliveryTime(new Date());
|
|
|
+ boolean rtn = channelOrderService.channelOrderShip(channelOrder, shipParam.getPkgIds());
|
|
|
return rtn ? AjaxResult.success() : AjaxResult.error("发货失败");
|
|
|
}
|
|
|
return AjaxResult.error("发货失败");
|