feat(order): 调整经销商订单导入逻辑与字段映射- 修改订单导入时用户ID的设置逻辑

- 更新订单价格计算方式,移除除以1000的操作
- 默认订单状态设为有效(isInvalid=0)
- 注释掉原有的推荐关系查询与绑定逻辑
- 在导入参数类中新增“公司名称”和调整佣金字段命名
- 实体类中增加title字段并标注Excel导出配置
- 调整Excel列名以便更准确反映业务含义
This commit is contained in:
2025-10-18 11:04:20 +08:00
parent 540f866d93
commit 35d104248b
4 changed files with 18 additions and 19 deletions

View File

@@ -7,7 +7,7 @@
<artifactId>mp-api</artifactId>
<version>1.5.0</version>
<name>com-gxwebsoft-api</name>
<name>mp-api</name>
<description>WebSoftApi project for Spring Boot</description>
<parent>

View File

@@ -80,7 +80,7 @@ public class SdyDealerOrderController extends BaseController {
for (SdyDealerOrderImportParam d : list) {
// 检查是否已存在相同的记录根据comments字段和未结算状态
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper<ShopDealerOrder> queryWrapper = new com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper<>();
queryWrapper.eq(ShopDealerOrder::getTitle, d.getTitle()); // 使用comments字段
queryWrapper.eq(ShopDealerOrder::getComments, d.getComments()); // 使用comments字段
queryWrapper.eq(ShopDealerOrder::getIsSettled, 0); // 未结算状态
if (shopDealerOrderService.count(queryWrapper) == 0) {
@@ -91,25 +91,21 @@ public class SdyDealerOrderController extends BaseController {
String orderNo = Long.toString(IdUtil.getSnowflakeNextId());
// 手动映射字段
// item.setOrderNo(d.getOrderNo());
item.setUserId(d.getUserId());
item.setOrderNo(orderNo);
item.setOrderPrice(d.getOrderPrice());
item.setTitle(d.getTitle());
item.setDegreePrice(d.getOrderPrice().multiply(new BigDecimal(1000)));
item.setFirstUserId(Integer.valueOf(d.getFirstUserId()));
item.setSecondUserId(Integer.valueOf(d.getSecondUserId()));
item.setThirdUserId(Integer.valueOf(d.getThirdUserId()));
item.setFirstUserId(d.getFirstUserId());
item.setSecondUserId(d.getSecondUserId());
item.setThirdUserId(d.getThirdUserId());
item.setFirstMoney(d.getFirstMoney());
item.setSecondMoney(d.getSecondMoney());
item.setThirdMoney(d.getThirdMoney());
item.setTenantId(d.getTenantId());
item.setTitle(d.getTitle());
item.setComments(d.getComments());
// 假设d.getPrice()返回的BigDecimal未设置精度
if(d.getPrice() == null){
item.setPrice(d.getPrice().divide(new BigDecimal(1000), 3, BigDecimal.ROUND_HALF_UP));
}else {
item.setPrice(d.getPrice());
}
item.setPrice(d.getPrice());
item.setSettledPrice(d.getSettledPrice());
item.setPayPrice(d.getPayPrice());
item.setRate(d.getRate());

View File

@@ -20,14 +20,14 @@ public class SdyDealerOrderImportParam implements Serializable {
private static final long serialVersionUID = 1L;
@Excel(name = "业务员ID")
private String userId;
@Excel(name = "订单编号")
private String orderNo;
private Integer userId;
@Excel(name = "公司名称")
private String title;
@Excel(name = "订单编号")
private String orderNo;
@Excel(name = "结算电量")
private BigDecimal orderPrice;
@@ -50,13 +50,13 @@ public class SdyDealerOrderImportParam implements Serializable {
private String month;
@Excel(name = "一级分销商ID")
private String firstUserId;
private Integer firstUserId;
@Excel(name = "二级分销商ID")
private String secondUserId;
private Integer secondUserId;
@Excel(name = "三级分销商ID")
private String thirdUserId;
private Integer thirdUserId;
@Excel(name = "一级佣金30%")
private BigDecimal firstMoney;

View File

@@ -33,6 +33,9 @@ public class ShopDealerOrder implements Serializable {
@Schema(description = "买家用户ID")
private Integer userId;
@Excel(name = "公司名称")
private String title;
@Excel(name = "订单编号")
private String orderNo;