Commit 650e988d authored by 周健威's avatar 周健威

添加单价标识

parent ac7cd4dd
...@@ -81,5 +81,4 @@ public class InProgressVO { ...@@ -81,5 +81,4 @@ public class InProgressVO {
* 延期 详情列表 * 延期 详情列表
*/ */
List<VMCalendarPriceCostDTO> overAmountList = CollUtil.newArrayList(); List<VMCalendarPriceCostDTO> overAmountList = CollUtil.newArrayList();
} }
...@@ -22,6 +22,10 @@ public class VehicleItemDTO extends OrderItem { ...@@ -22,6 +22,10 @@ public class VehicleItemDTO extends OrderItem {
public static final int topNum = 2; public static final int topNum = 2;
//已抵消天数 //已抵消天数
private Integer offsetNum = 0; private Integer offsetNum = 0;
//标记是否单价一样
private Integer sameUnitPrice = 1;
public BigDecimal calculateVehicleUnitPrice(BigDecimal vehicleAmount, BigDecimal metaVehicleAmount, Boolean isSetRealAmount) { public BigDecimal calculateVehicleUnitPrice(BigDecimal vehicleAmount, BigDecimal metaVehicleAmount, Boolean isSetRealAmount) {
if(isSetRealAmount) { if(isSetRealAmount) {
setRealAmount(vehicleAmount); setRealAmount(vehicleAmount);
...@@ -125,7 +129,13 @@ public class VehicleItemDTO extends OrderItem { ...@@ -125,7 +129,13 @@ public class VehicleItemDTO extends OrderItem {
//循环价格列表 获得对应消耗的免费天数 //循环价格列表 获得对应消耗的免费天数
//循环已标记的已使用免费天数 //循环已标记的已使用免费天数
Integer cycleNum = 0; Integer cycleNum = 0;
BigDecimal tempUnitPrice = null;
for(VMCalendarPriceCostDTO dto : list) { for(VMCalendarPriceCostDTO dto : list) {
if(null == tempUnitPrice) {
tempUnitPrice = dto.getPrice();
}else if( !tempUnitPrice.equals(dto.getPrice())) {
this.sameUnitPrice = 0;
}
if(ableFreeDays > cycleNum && cycleNum+ dto.getFreeDays() > ableFreeDays) { //本次累加天数 大于 可用免费天数 if(ableFreeDays > cycleNum && cycleNum+ dto.getFreeDays() > ableFreeDays) { //本次累加天数 大于 可用免费天数
setCutNum(ableFreeDays); setCutNum(ableFreeDays);
......
package com.xxfc.platform.order.pojo.price; package com.xxfc.platform.order.pojo.price;
import cn.hutool.core.collection.CollUtil;
import com.xxfc.platform.vehicle.pojo.dto.order.VMCalendarPriceCostDTO; import com.xxfc.platform.vehicle.pojo.dto.order.VMCalendarPriceCostDTO;
import lombok.Data; import lombok.Data;
...@@ -69,9 +70,33 @@ public class CancelStartedVO extends CostDetailExtend { ...@@ -69,9 +70,33 @@ public class CancelStartedVO extends CostDetailExtend {
private BigDecimal damagesAmount = BigDecimal.ZERO; private BigDecimal damagesAmount = BigDecimal.ZERO;
/** /**
* 使用(消耗)详情列表 * 延期 详情列表
*/ */
List<VMCalendarPriceCostDTO> useAmountList; List<VMCalendarPriceCostDTO> overAmountList = CollUtil.newArrayList();
//= CollUtil.newArrayList();
//标记是否单价一样
private Integer sameUseUnitPrice = 1;
//标记是否单价一样
private Integer sameOverUnitPrice = 1;
public void setSameUseUnitPriceFromList(List<VMCalendarPriceCostDTO> useAmountList) {
this.sameUseUnitPrice = judgeSame(useAmountList);
}
public void setSameOverUnitPriceFromList(List<VMCalendarPriceCostDTO> overAmountList) {
this.sameOverUnitPrice = judgeSame(overAmountList);
}
private Integer judgeSame(List<VMCalendarPriceCostDTO> useAmountList) {
BigDecimal tempUnitPrice = null;
for(VMCalendarPriceCostDTO vmcpcd : useAmountList) {
if(null == tempUnitPrice) {
tempUnitPrice = vmcpcd.getPrice();
}else if(tempUnitPrice.equals(vmcpcd.getPrice())) {
return 0;
}
}
return 1;
}
} }
package com.xxfc.platform.order.pojo.price; package com.xxfc.platform.order.pojo.price;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.xxfc.platform.vehicle.pojo.dto.order.VMCalendarPriceCostDTO;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List;
@Data @Data
public class CostDetailExtend { public class CostDetailExtend {
...@@ -36,6 +38,11 @@ public class CostDetailExtend { ...@@ -36,6 +38,11 @@ public class CostDetailExtend {
*/ */
public String paramJson = ""; public String paramJson = "";
/**
* 使用(消耗)详情列表
*/
List<VMCalendarPriceCostDTO> useAmountList;
public void initParamJson() { public void initParamJson() {
paramJson = JSONUtil.toJsonStr(this); paramJson = JSONUtil.toJsonStr(this);
} }
......
...@@ -76,4 +76,7 @@ public class RentVehiclePriceVO extends OrderPriceVO{ ...@@ -76,4 +76,7 @@ public class RentVehiclePriceVO extends OrderPriceVO{
*/ */
List<VMCalendarPriceCostDTO> useAmountList; List<VMCalendarPriceCostDTO> useAmountList;
//标记是否单价一样
private Integer sameUnitPrice = 1;
} }
...@@ -467,6 +467,9 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> { ...@@ -467,6 +467,9 @@ public class OrderAccountBiz extends BaseBiz<OrderAccountMapper,OrderAccount> {
csv.setUsedfreeDayNum(inProgressVO.getUsedfreeDays()); csv.setUsedfreeDayNum(inProgressVO.getUsedfreeDays());
csv.setUsedFreeAmount(inProgressVO.getUsedFreeDaysAmount()); csv.setUsedFreeAmount(inProgressVO.getUsedFreeDaysAmount());
csv.setHadConpon((StrUtil.isNotBlank(orderMQDTO.getCouponTickerNos())? Boolean.TRUE: Boolean.FALSE)); csv.setHadConpon((StrUtil.isNotBlank(orderMQDTO.getCouponTickerNos())? Boolean.TRUE: Boolean.FALSE));
csv.setSameUseUnitPriceFromList(inProgressVO.getUseAmountList());
csv.setSameOverUnitPriceFromList(inProgressVO.getOverAmountList());
if(csv.getUsedDayNum() == orderMQDTO.getOrderRentVehicleDetail().getDayNum()) { if(csv.getUsedDayNum() == orderMQDTO.getOrderRentVehicleDetail().getDayNum()) {
csv.setType(CostDetailExtend.FINLISH_ONTIME); csv.setType(CostDetailExtend.FINLISH_ONTIME);
......
...@@ -176,7 +176,8 @@ public class OrderCancelBiz { ...@@ -176,7 +176,8 @@ public class OrderCancelBiz {
csv.setHadConpon((StrUtil.isNotBlank(baseOrder.getCouponTickerNos())? Boolean.TRUE: Boolean.FALSE)); csv.setHadConpon((StrUtil.isNotBlank(baseOrder.getCouponTickerNos())? Boolean.TRUE: Boolean.FALSE));
csv.setViolateAmount(BigDecimal.ZERO); csv.setViolateAmount(BigDecimal.ZERO);
csv.setViolateDesc(""); csv.setViolateDesc("");
csv.setUseAmountList(inProgressVO.getUseAmountList()); csv.setSameUseUnitPriceFromList(inProgressVO.getUseAmountList());
csv.setSameOverUnitPriceFromList(inProgressVO.getOverAmountList());
//如果有扣款项,则生成额外的费用明细 //如果有扣款项,则生成额外的费用明细
if(oad.getDeductions().size() > 0) { if(oad.getDeductions().size() > 0) {
......
...@@ -414,6 +414,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -414,6 +414,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
rvp.setRealVehicleAmount(vehicleOrderItem.getRealAmount()); rvp.setRealVehicleAmount(vehicleOrderItem.getRealAmount());
rvp.setCouponDesc(couponDesc); rvp.setCouponDesc(couponDesc);
rvp.setUseAmountList(vehicleOrderItem.getVehicleDetail()); rvp.setUseAmountList(vehicleOrderItem.getVehicleDetail());
rvp.setSameUnitPrice(vehicleOrderItem.getSameUnitPrice());
rvp.initParamJson(); rvp.initParamJson();
//设置收费明细 //设置收费明细
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment