refactor(quotation): 优化价格计算逻辑并修复数据类型问题
- 修改AppRatioAgentConfigController中的价格计算逻辑,增加空值检查避免NPE - 更新PlanSearchItemVO中salePrice的计算方法,统一使用NumberUtil.multiply - 注释掉ProductModelMapper.xml中型号编号的查询条件 - 修正QuotationProductModelSearchVO中moduleName字段类型为String - 在PlanSearchItemVO中添加NumberUtil导入声明
This commit is contained in:
parent
6a7b51ce73
commit
24185b09e5
|
|
@ -1,5 +1,6 @@
|
||||||
package com.nflg.mobilebroken.common.pojo.vo;
|
package com.nflg.mobilebroken.common.pojo.vo;
|
||||||
|
|
||||||
|
import com.nflg.mobilebroken.common.util.NumberUtil;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.validation.constraints.NotBlank;
|
import javax.validation.constraints.NotBlank;
|
||||||
|
|
@ -54,9 +55,6 @@ public class PlanSearchItemVO {
|
||||||
private BigDecimal salePrice;
|
private BigDecimal salePrice;
|
||||||
|
|
||||||
public BigDecimal getSalePrice() {
|
public BigDecimal getSalePrice() {
|
||||||
if (Objects.nonNull(standardPrice)) {
|
return NumberUtil.multiply(standardPrice,ratio);
|
||||||
return standardPrice.multiply(ratio);
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ public class QuotationProductModelSearchVO {
|
||||||
/**
|
/**
|
||||||
* 模块名称
|
* 模块名称
|
||||||
*/
|
*/
|
||||||
private Integer moduleName;
|
private String moduleName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系列名称
|
* 系列名称
|
||||||
|
|
|
||||||
|
|
@ -131,10 +131,13 @@ public class AppRatioAgentConfigController extends ControllerBase {
|
||||||
&& it.getUserId().equals(user.getId()))
|
&& it.getUserId().equals(user.getId()))
|
||||||
.findFirst()
|
.findFirst()
|
||||||
.orElse(null);
|
.orElse(null);
|
||||||
QuotationModelRatioAgentItem mitem = ratioAgentItemService.getEffectiveForUser(data.getBatchNumber(), AppUserUtil.getUserId());
|
BigDecimal basePrice = Optional.ofNullable(modelPrice).map(ModelPriceVO::getAmount).orElse(null);
|
||||||
BigDecimal basePrice = Objects.nonNull(modelPrice) ? NumberUtil.multiply(modelPrice.getAmount(), Optional.ofNullable(mitem)
|
if (Objects.nonNull(basePrice)) {
|
||||||
.map(QuotationModelRatioAgentItem::getStandardRatio)
|
QuotationModelRatioAgentItem mitem = ratioAgentItemService.getEffectiveForUser(data.getBatchNumber(), AppUserUtil.getUserId());
|
||||||
.orElse(null)) : null;
|
if (Objects.nonNull(mitem)) {
|
||||||
|
basePrice = NumberUtil.multiply(basePrice, mitem.getStandardRatio());
|
||||||
|
}
|
||||||
|
}
|
||||||
BigDecimal standardRatio = Objects.nonNull(item) ? item.getStandardRatio() : null;
|
BigDecimal standardRatio = Objects.nonNull(item) ? item.getStandardRatio() : null;
|
||||||
map.put(user.getId().toString() + "-standardPrice", NumberUtil.format(basePrice));
|
map.put(user.getId().toString() + "-standardPrice", NumberUtil.format(basePrice));
|
||||||
map.put(user.getId().toString() + "-standardRatio", NumberUtil.format(standardRatio));
|
map.put(user.getId().toString() + "-standardRatio", NumberUtil.format(standardRatio));
|
||||||
|
|
@ -239,7 +242,7 @@ public class AppRatioAgentConfigController extends ControllerBase {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取方案列表
|
* 查看下级数据
|
||||||
*/
|
*/
|
||||||
@PostMapping("list/search")
|
@PostMapping("list/search")
|
||||||
public ApiResult<PageData<RatioConfigSearchVO>> search(@Valid @RequestBody ModelRatioUserSearchRequest request) {
|
public ApiResult<PageData<RatioConfigSearchVO>> search(@Valid @RequestBody ModelRatioUserSearchRequest request) {
|
||||||
|
|
|
||||||
|
|
@ -137,9 +137,9 @@
|
||||||
<if test="request.hasDiscount==true">
|
<if test="request.hasDiscount==true">
|
||||||
AND dis.model_id is not null
|
AND dis.model_id is not null
|
||||||
</if>
|
</if>
|
||||||
<if test="request.no!=null and request.no!=''">
|
<!-- <if test="request.no!=null and request.no!=''">-->
|
||||||
AND pm.`no` like concat('%', #{request.no}, '%')
|
<!-- AND pm.`no` like concat('%', #{request.no}, '%')-->
|
||||||
</if>
|
<!-- </if>-->
|
||||||
ORDER BY pm.sort,pm.id DESC
|
ORDER BY pm.sort,pm.id DESC
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue