Browse Source

opt: 销售单调整,更变日志重构

muti_db
Yen 5 months ago
parent
commit
057d29dcb9
  1. 10
      src/main/java/com/qs/serve/modules/oms/entity/OmsSaleOrder.java
  2. 80
      src/main/java/com/qs/serve/modules/oms/entity/OmsVerSaleOrder.java
  3. 10
      src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderModifyParam.java
  4. 10
      src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderSkuBo.java
  5. 9
      src/main/java/com/qs/serve/modules/oms/entity/vo/OmsConfirmOrderResult.java
  6. 14
      src/main/java/com/qs/serve/modules/oms/mapper/OmsVerSaleOrderMapper.java
  7. 16
      src/main/java/com/qs/serve/modules/oms/service/OmsVerSaleOrderService.java
  8. 2
      src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderPart1ServiceImpl.java
  9. 37
      src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderServiceImpl.java
  10. 13
      src/main/java/com/qs/serve/modules/oms/service/impl/OmsVerSaleOrderServiceImpl.java

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

@ -299,6 +299,16 @@ public class OmsSaleOrder implements Serializable {
private Integer currentFlag;
private String version;
/**
* 满足款项
*/
private Integer satisfyPayFlag;
/**
* 费用过单状态0-1-部分2-全部
*/
private Integer overbillStatus;
/**
* 折扣信息
*/

80
src/main/java/com/qs/serve/modules/oms/entity/OmsVerSaleOrder.java

@ -0,0 +1,80 @@
package com.qs.serve.modules.oms.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
/**
* 订单 实体类
* @author YenHex
* @since 2022-10-14
*/
@Data
@TableName("oms_ver_sale_order")
public class OmsVerSaleOrder implements Serializable {
private static final long serialVersionUID = 1L;
/** id */
@TableId(type = IdType.AUTO)
private Long id;
private String orderSn;
private String erpId;
private String operatorName;
private String operationType;
private LocalDateTime operationTime;
private String operationContext;
private String currentVersion;
private String lastVersion;
private Integer sort;
/** 备注 */
private String remark;
/** 创建时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;
/** 创建人 */
@TableField(fill = FieldFill.INSERT)
private String createBy;
/** 更新时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime updateTime;
/** 更新人 */
@TableField(fill = FieldFill.UPDATE)
private String updateBy;
/** 租户id */
@JsonIgnore
@JsonProperty
private String tenantId;
/** 删除标识 */
@JsonIgnore
@JsonProperty
private Boolean delFlag;
}

10
src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderModifyParam.java

@ -53,6 +53,16 @@ public class OmsOrderModifyParam {
/** CD单据备注 */
private String cdOrderRemark;
/**
* 满足款项
*/
private Integer satisfyPayFlag;
/**
* 费用过单状态0-1-部分2-全部
*/
private Integer overbillStatus;
/**
* 明细
*/

10
src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderSkuBo.java

@ -40,6 +40,16 @@ public class OmsOrderSkuBo {
/** 收货地址 */
private Long addressId;
/**
* 满足款项
*/
private Integer satisfyPayFlag;
/**
* 费用过单状态0-1-部分2-全部
*/
private Integer overbillStatus;
@Data
public static class SpuParam{

9
src/main/java/com/qs/serve/modules/oms/entity/vo/OmsConfirmOrderResult.java

@ -45,4 +45,13 @@ public class OmsConfirmOrderResult {
@JsonIgnore
private String latitudeFrom;
/**
* 满足款项
*/
private Integer satisfyPayFlag;
/**
* 费用过单状态0-1-部分2-全部
*/
private Integer overbillStatus;
}

14
src/main/java/com/qs/serve/modules/oms/mapper/OmsVerSaleOrderMapper.java

@ -0,0 +1,14 @@
package com.qs.serve.modules.oms.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qs.serve.modules.oms.entity.OmsVerSaleOrder;
/**
* 订单 Mapper
* @author YenHex
* @date 2022-10-14
*/
public interface OmsVerSaleOrderMapper extends BaseMapper<OmsVerSaleOrder> {
}

16
src/main/java/com/qs/serve/modules/oms/service/OmsVerSaleOrderService.java

@ -0,0 +1,16 @@
package com.qs.serve.modules.oms.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qs.serve.modules.oms.entity.OmsVerSaleOrder;
/**
* 订单 服务接口
* @author YenHex
* @date 2022-10-14
*/
public interface OmsVerSaleOrderService extends IService<OmsVerSaleOrder> {
}

2
src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderPart1ServiceImpl.java

@ -81,7 +81,7 @@ public class OmsSaleOrderPart1ServiceImpl implements OmsSaleOrderPart1Service {
order.setId(null);
String orderPrefix = null;
if (order.getOrderType().equals(0)) {
orderPrefix = "SN";
orderPrefix = "";
} else if (order.getOrderType().equals(1)) {
orderPrefix = "ZP";
} else if (order.getOrderType().equals(2)) {

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

@ -39,6 +39,7 @@ import com.qs.serve.modules.oms.entity.vo.OmsPlanResult;
import com.qs.serve.modules.oms.entity.vo.OmsSpuAssesInfo;
import com.qs.serve.modules.oms.event.OrderCreateCacheEvent;
import com.qs.serve.modules.oms.mapper.OmsSaleOrderMapper;
import com.qs.serve.modules.oms.mapper.OmsVerSaleOrderMapper;
import com.qs.serve.modules.oms.service.*;
import com.qs.serve.modules.oms.utils.OmsOrderUtil;
import com.qs.serve.modules.sale.entity.SalePlan;
@ -101,6 +102,7 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl<OmsSaleOrderMapper, Oms
private GoodsImminentBatchService goodsImminentBatchService;
private RedisService redisService;
private ApplicationEventPublisher applicationEventPublisher;
private OmsVerSaleOrderMapper omsVerSaleOrderMapper;
@Override
public OmsPlanResult getPlanList(OmsPlanParam param) {
@ -334,6 +336,8 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl<OmsSaleOrderMapper, Oms
confirmOrderResult.setShoppingCarts(shoppingCartList);
confirmOrderResult.setOrderType(confirmOrder.getOrderType());
confirmOrderResult.setBrandRuleId(confirmOrder.getBrandRuleId());
confirmOrderResult.setSatisfyPayFlag(confirmOrder.getSatisfyPayFlag());
confirmOrderResult.setOverbillStatus(confirmOrder.getOverbillStatus());
return confirmOrderResult;
}
@ -374,6 +378,8 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl<OmsSaleOrderMapper, Oms
order.setBillType(param.getBillType());
order.setUrgentFlag(param.getUrgentFlag());
order.setRemark(param.getRemark());
order.setSatisfyPayFlag(param.getSatisfyPayFlag());
order.setOverbillStatus(param.getOverbillStatus());
//通过当前函数获取当前账套对于的skuID,默认全部转化为开平(001)的sku
List<Long> spuIds = param.getOrderItems().stream().map(OmsOrderModifyParam.OmsOrderItemModifyBo::getSpuId).collect(Collectors.toList());
@ -676,7 +682,8 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl<OmsSaleOrderMapper, Oms
if (categoryRule != null) {
order.setBrandRuleName(categoryRule.getLabel());
}
order.setSatisfyPayFlag(confirmOrder.getSatisfyPayFlag());
order.setOverbillStatus(confirmOrder.getOverbillStatus());
order.setOrderSource(confirmOrder.getOrderSource());
order.setCdOrderRemark(createOrderParam.getCdOrderRemark());
order.setOrderType(confirmOrder.getOrderType());
@ -1393,6 +1400,34 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl<OmsSaleOrderMapper, Oms
this.updateById(omsOrder);
this.flushPreDelivery(omsOrder.getId()+"");
//保存版本变更
OmsVerSaleOrder verSaleOrder = new OmsVerSaleOrder();
verSaleOrder.setOrderSn(omsOrder.getOrderSn());
verSaleOrder.setErpId("0");
verSaleOrder.setOperatorName(omsOrder.getUserName());
verSaleOrder.setOperationTime(LocalDateTime.now());
verSaleOrder.setCurrentVersion(omsOrder.getVersion());
StringBuilder sb = new StringBuilder();
for (OmsSaleOrderItem baseItem : orderItemList) {
sb.append(String.format("商品[%s] 数量:%d,价格:%.2f\n",
baseItem.getSkuCode(),
baseItem.getQuantity(),
baseItem.getSalesPrice()));
}
verSaleOrder.setOperationContext(sb.toString());
if(omsOrder.getVersion().equals("cms")){
verSaleOrder.setOperationType("提交");
verSaleOrder.setLastVersion(omsOrder.getVersion());
verSaleOrder.setSort(0);
}else {
verSaleOrder.setOperationType("重新提交");
//TODO 获取上一个版本号
verSaleOrder.setLastVersion("");
verSaleOrder.setSort(0);
}
omsVerSaleOrderMapper.insert(verSaleOrder);
}
@Override

13
src/main/java/com/qs/serve/modules/oms/service/impl/OmsVerSaleOrderServiceImpl.java

@ -0,0 +1,13 @@
package com.qs.serve.modules.oms.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qs.serve.modules.oms.entity.OmsVerSaleOrder;
import com.qs.serve.modules.oms.mapper.OmsVerSaleOrderMapper;
import com.qs.serve.modules.oms.service.OmsVerSaleOrderService;
/**
* @author YenHex
* @since 2025/2/18
*/
public class OmsVerSaleOrderServiceImpl extends ServiceImpl<OmsVerSaleOrderMapper, OmsVerSaleOrder> implements OmsVerSaleOrderService {
}
Loading…
Cancel
Save