Browse Source

fix(SaleOrder): 修复关联显示异常,查询异常

muti_db
Yen 7 months ago
parent
commit
6ef33608fb
  1. 15
      src/main/java/com/qs/serve/modules/oms/controller/OmsSaleOrderController.java
  2. 18
      src/main/java/com/qs/serve/modules/oms/entity/OmsSaleOrder.java
  3. 2
      src/main/java/com/qs/serve/modules/oms/entity/OmsSaleOrderItem.java
  4. 7
      src/main/java/com/qs/serve/modules/oms/service/OmsSaleOrderService.java
  5. 29
      src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderServiceImpl.java
  6. 2
      src/main/java/com/qs/serve/modules/third/PortalGoodsController.java

15
src/main/java/com/qs/serve/modules/oms/controller/OmsSaleOrderController.java

@ -9,6 +9,7 @@ import com.qs.serve.common.model.enums.BizType;
import com.qs.serve.common.model.enums.SystemModule;
import com.qs.serve.common.util.AuthContextUtils;
import com.qs.serve.common.util.PageUtil;
import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.bms.entity.BmsSupplier;
import com.qs.serve.modules.bms.entity.BmsSupplierAddress;
import com.qs.serve.modules.bms.mapper.BmsSupplierMapper;
@ -60,6 +61,20 @@ public class OmsSaleOrderController {
private BmsSupplierMapper bmsSupplierMapper;
private SeeYonRequestBaseService seeYonRequestBaseService;
/**
* 获取历史订单
* @param code
* @return
*/
@GetMapping("/listHistoryByCode")
public R<?> getHistoryOrder(String code){
if(!StringUtils.hasText(code)){
return R.ok();
}
List<OmsSaleOrder> saleOrders = omsSaleOrderService.listHistoryOrderByCode(code);
return R.ok(saleOrders);
}
/**
* 获取ERP订单信息
* @param query

18
src/main/java/com/qs/serve/modules/oms/entity/OmsSaleOrder.java

@ -242,14 +242,27 @@ public class OmsSaleOrder implements Serializable {
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private LocalDate checkEndTime;
/**
* 预计完成时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private LocalDate preFinishedDate;
/**
* 预计发货时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private LocalDate preDeliveryDate;
/**
* 预计生产日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private LocalDate preProductionDate;
private String businessType;
private String saleDept;
private String saleType;
@ -265,5 +278,8 @@ public class OmsSaleOrder implements Serializable {
@TableField(exist = false)
private Object discountRateInfo;
@TableField(exist = false)
private List<?> itemList;
}

2
src/main/java/com/qs/serve/modules/oms/entity/OmsSaleOrderItem.java

@ -110,6 +110,8 @@ public class OmsSaleOrderItem implements Serializable {
@JsonProperty
private String tenantId;
private String version;
/** 逻辑删除标记(0:显示;1:隐藏) */
@JsonIgnore
@JsonProperty

7
src/main/java/com/qs/serve/modules/oms/service/OmsSaleOrderService.java

@ -91,6 +91,13 @@ public interface OmsSaleOrderService extends IService<OmsSaleOrder> {
*/
OmsSaleOrder modifyImminentOrder(OmsOrderImminentBo param);
/**
* 根据code查询订单
* @param code
* @return
*/
List<OmsSaleOrder> listHistoryOrderByCode(String code);
/**
* 拦截规则
* @param skuIds

29
src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderServiceImpl.java

@ -314,6 +314,7 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl<OmsSaleOrderMapper, Oms
orderItem.setWeight(modifyItem.getWeight());
orderItem.setVolume(modifyItem.getVolume());
orderItem.setRemark(modifyItem.getRemark());
orderItem.setVersion("cms");
if (goodsSku != null) {
orderItem.setSkuId(goodsSku.getId());
orderItem.setSkuTitle(goodsSku.getSkuName());
@ -849,6 +850,34 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl<OmsSaleOrderMapper, Oms
return spuAssesInfoList;
}
@Override
public List<OmsSaleOrder> listHistoryOrderByCode(String code) {
List<OmsSaleOrder> omsSaleOrderList = this.list(new LambdaQueryWrapper<OmsSaleOrder>()
.eq(OmsSaleOrder::getOrderSn, code));
if(CollUtil.isNotEmpty(omsSaleOrderList)){
// 排序版本号
omsSaleOrderList = omsSaleOrderList.stream()
.sorted(Comparator.comparing(OmsSaleOrder::getVersion))
.collect(Collectors.toList());
List<Long> erpOrderIds = omsSaleOrderList.stream().map(OmsSaleOrder::getId).collect(Collectors.toList());
List<OmsSaleOrderItem> itemList = omsSaleOrderItemService.list(new LambdaQueryWrapper<OmsSaleOrderItem>()
.eq(OmsSaleOrderItem::getOrderSn, code)
.in(OmsSaleOrderItem::getOrderId,erpOrderIds)
);
if(CollUtil.isNotEmpty(itemList)){
Map<String,List<OmsSaleOrderItem>> verAndItemList = itemList.stream()
.collect(Collectors.groupingBy(OmsSaleOrderItem::getVersion));
for (OmsSaleOrder omsSaleOrder : omsSaleOrderList) {
List<OmsSaleOrderItem> orderItems = verAndItemList.get(omsSaleOrder.getVersion());
omsSaleOrder.setItemList(orderItems);
}
}
}
return omsSaleOrderList;
}
@Override
@Transactional(rollbackFor = Exception.class)
public OmsSaleOrder modifyImminentOrder(OmsOrderImminentBo param) {

2
src/main/java/com/qs/serve/modules/third/PortalGoodsController.java

@ -71,7 +71,7 @@ public class PortalGoodsController {
.map(a->a.getSpuId()).collect(Collectors.toList());
if(CollUtil.isEmpty(spuIds)){
Assert.throwEx("没有找到对应商品");
return new ArrayList<>();
}
LambdaQueryWrapper<GoodsSpu> spuLqw = new LambdaQueryWrapper<>();
spuLqw.eq(GoodsSpu::getOrderFlag,1);

Loading…
Cancel
Save