Commit 2ce97581 authored by 周健威's avatar 周健威

修改保险

parent d6170f18
...@@ -104,7 +104,7 @@ public class OrderPersonInsurance implements Serializable { ...@@ -104,7 +104,7 @@ public class OrderPersonInsurance implements Serializable {
*/ */
@Column(name = "pay_time") @Column(name = "pay_time")
@ApiModelProperty(value = "支付时间") @ApiModelProperty(value = "支付时间")
private Long paytime; private Long payTime;
/** /**
* 退款时间 * 退款时间
......
...@@ -95,4 +95,16 @@ public class RentVehiclePriceVO extends OrderPriceVO{ ...@@ -95,4 +95,16 @@ public class RentVehiclePriceVO extends OrderPriceVO{
//标记是否单价一样 //标记是否单价一样
private Integer sameUnitPrice = 1; private Integer sameUnitPrice = 1;
//是否买人身保险
private Integer needPersonInsurance = 0;
//保险个数
private Integer personInsureNum = 0;
//保险单价
private BigDecimal personInsurePrice = BigDecimal.ZERO;
//保险总价
private BigDecimal personInsureAmount = BigDecimal.ZERO;
} }
...@@ -443,6 +443,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -443,6 +443,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
private RentVehiclePriceVO dayCalculatePrice(RentVehicleBO detail) { private RentVehiclePriceVO dayCalculatePrice(RentVehicleBO detail) {
RentVehiclePriceVO rvp = new RentVehiclePriceVO();
BigDecimal realAmount = BigDecimal.ZERO; BigDecimal realAmount = BigDecimal.ZERO;
BigDecimal orderAmount = BigDecimal.ZERO; BigDecimal orderAmount = BigDecimal.ZERO;
BigDecimal goodsAmount = BigDecimal.ZERO; BigDecimal goodsAmount = BigDecimal.ZERO;
...@@ -561,16 +562,29 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -561,16 +562,29 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
} }
if(SYS_TRUE == detail.getNeedPersonInsurance() && CollUtil.isNotEmpty(detail.getInsurances())) { if(SYS_TRUE == detail.getNeedPersonInsurance() && CollUtil.isNotEmpty(detail.getInsurances())) {
for(OrderPersonInsurance opi : detail.getInsurances()) { rvp.setNeedPersonInsurance(SYS_TRUE);
opi.setOrderDay(detail.getDayNum()); OrderPersonInsurance metaopi = new OrderPersonInsurance();
//计算天数 //计算天数
orderAccountBiz.calculatePersonInsurance(detail.getStartTime(), detail.getEndTime(), opi); orderAccountBiz.calculatePersonInsurance(detail.getStartTime(), detail.getEndTime(), metaopi);
if(STATUS_TOPAY == opi.getStatus()) { if(STATUS_TOPAY == metaopi.getStatus()) {
for(OrderPersonInsurance opi : detail.getInsurances()) {
opi.setOrderDay(detail.getDayNum());
opi.setAmount(metaopi.getAmount());
opi.setStatus(metaopi.getStatus());
opi.setInsuranceDay(metaopi.getInsuranceDay());
opi.setStartTime(metaopi.getStartTime());
opi.setEndTime(metaopi.getEndTime());
detail.getConfirmInsurances().add(BeanUtil.toBean(opi, OrderPersonInsurance.class)); detail.getConfirmInsurances().add(BeanUtil.toBean(opi, OrderPersonInsurance.class));
OrderItem personInsuranceOrderItem = orderItemBiz.initOrderItem(opi.getAmount(), 1, "人身保险", null, ItemTypeEnum.PERSON_INSURANCE, JSONUtil.toJsonStr(opi));
detail.getItems().add(personInsuranceOrderItem);
personInsuranceAmount = personInsuranceAmount.add(opi.getAmount()); personInsuranceAmount = personInsuranceAmount.add(opi.getAmount());
} }
OrderItem personInsuranceOrderItem = orderItemBiz.initOrderItem(metaopi.getAmount(), detail.getConfirmInsurances().size(), "人身保险", null, ItemTypeEnum.PERSON_INSURANCE, JSONUtil.toJsonStr(metaopi));
rvp.setPersonInsureNum(personInsuranceOrderItem.getBuyNum());
rvp.setPersonInsurePrice(metaopi.getAmount());
rvp.setPersonInsureAmount(personInsuranceOrderItem.getRealAmount());
detail.getItems().add(personInsuranceOrderItem);
}else {
throw new BaseException("人身保险信息不正确", ResultCode.PARAM_ILLEGAL_CODE);
} }
} }
...@@ -613,7 +627,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -613,7 +627,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
realAmount = orderAmount.subtract(couponAmount); realAmount = orderAmount.subtract(couponAmount);
//生成订单明细 //生成订单明细
RentVehiclePriceVO rvp = new RentVehiclePriceVO();
rvp.setOrderSign(detail.getOrderSign()); rvp.setOrderSign(detail.getOrderSign());
rvp.setPriceType(vehicle.getPriceType()); rvp.setPriceType(vehicle.getPriceType());
rvp.setDeposit(depositAmount); rvp.setDeposit(depositAmount);
......
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