Commit 90f86821 authored by 周健威's avatar 周健威

Merge branch 'master-modify-cutAmount' into dev

parents 14f53a63 7462637a
...@@ -15,6 +15,7 @@ public enum OrderCostEnum { ...@@ -15,6 +15,7 @@ public enum OrderCostEnum {
* 编码 * 编码
*/ */
private String code; private String code;
/** /**
* 类型描述 * 类型描述
*/ */
......
package com.xxfc.platform.order.entity; package com.xxfc.platform.order.entity;
import com.github.wxiaoqi.security.common.util.JsonUtil;
import com.xxfc.platform.order.pojo.price.CostDetailExtend;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -327,4 +329,8 @@ public class OrderRentVehicleDetail implements Serializable { ...@@ -327,4 +329,8 @@ public class OrderRentVehicleDetail implements Serializable {
@ApiModelProperty(value = "费用其他明细 type:1--取消违约金;2--取消费用明细;3--提前还车费用明细;4--延期还车费用明细") @ApiModelProperty(value = "费用其他明细 type:1--取消违约金;2--取消费用明细;3--提前还车费用明细;4--延期还车费用明细")
private String costDetailExtend; private String costDetailExtend;
public void setCostDetailExtend(CostDetailExtend costDetailExtend) {
this.costDetailExtend = JsonUtil.objectToJson(((CostDetailExtend)costDetailExtend));
}
} }
...@@ -9,32 +9,32 @@ public class CancelStartedVO extends CostDetailExtend { ...@@ -9,32 +9,32 @@ public class CancelStartedVO extends CostDetailExtend {
/** /**
* 消费金额(实际计费) * 消费金额(实际计费)
*/ */
private BigDecimal consumeAmount; private BigDecimal consumeAmount = BigDecimal.ZERO;
/** /**
* 租车单价 * 租车单价
*/ */
private BigDecimal modelAmount; private BigDecimal modelAmount = BigDecimal.ZERO;
/** /**
* 使用天数 * 使用天数
*/ */
private Integer usedDayNum; private Integer usedDayNum = 0;
/** /**
* 使用金额 * 使用金额
*/ */
private BigDecimal usedAmount; private BigDecimal usedAmount = BigDecimal.ZERO;
/** /**
* 使用免费天数 * 使用免费天数
*/ */
private Integer usedfreeDayNum; private Integer usedfreeDayNum = 0;
/** /**
* 使用免费金额 * 使用免费金额
*/ */
private BigDecimal usedFreeAmount; private BigDecimal usedFreeAmount = BigDecimal.ZERO;
/** /**
* 违约金描述 * 违约金描述
...@@ -44,5 +44,20 @@ public class CancelStartedVO extends CostDetailExtend { ...@@ -44,5 +44,20 @@ public class CancelStartedVO extends CostDetailExtend {
/** /**
* 违约金金额 * 违约金金额
*/ */
private BigDecimal violateAmount; private BigDecimal violateAmount = BigDecimal.ZERO;
/**
* 优惠金额
*/
private BigDecimal couponAmount = BigDecimal.ZERO;
/**
* 优惠描述
*/
private String couponDesc;
/**
* 原订单是否包含优惠券
*/
private Boolean hadConpon = Boolean.FALSE;
} }
...@@ -14,6 +14,7 @@ import com.xxfc.platform.order.pojo.price.CancelStartedVO; ...@@ -14,6 +14,7 @@ import com.xxfc.platform.order.pojo.price.CancelStartedVO;
import com.xxfc.platform.order.pojo.price.CostDetailExtend; import com.xxfc.platform.order.pojo.price.CostDetailExtend;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -69,24 +70,51 @@ public class OrderTemplateBiz extends BaseBiz<OrderTemplateMapper,OrderTemplate> ...@@ -69,24 +70,51 @@ public class OrderTemplateBiz extends BaseBiz<OrderTemplateMapper,OrderTemplate>
}}); }});
} }
/** public <T extends CostDetailExtend> void handleCostDetailExtend(T costDetailExtend) {
* 计算费用明细 switch (costDetailExtend.getType()) {
* @param vo case CostDetailExtend.CANCEL_NO_START :
* @return break;
*/ case CostDetailExtend.CANCEL_STARTED :
public void handleCostDetailExtend(CancelNoStartVO vo) { OrderTemplate template = selectByCode(OrderCostEnum.RENT_VEHICLE.getCode());
template.setTemplate(result(template.getTemplate(), new HashMap(){{
put("children", handleChildren(costDetailExtend));
put("consumeAmount", ((CancelStartedVO)costDetailExtend).getConsumeAmount());
}}));
break;
case CostDetailExtend.FINLISH_ADVANCE :
break;
case CostDetailExtend.FINLISH_DELAY :
break;
default:
break;
}
OrderTemplate template = selectByCode(OrderCostEnum.CANCEL_NO_START.getCode()); OrderTemplate template = selectByCode(OrderCostEnum.CANCEL_NO_START.getCode());
vo.setCostDetail(result(template.getTemplate(), Dict.parse(vo))); costDetailExtend.setCostDetail(result(template.getTemplate(), Dict.parse(costDetailExtend)));
} }
/** public <T extends CostDetailExtend> String handleChildren(T costDetailExtend) {
* 取消费用明细 StringBuffer childrenStr = new StringBuffer("");
* @param vo if(costDetailExtend instanceof CancelStartedVO) {
* @return CancelStartedVO cancelStartedVO = (CancelStartedVO)costDetailExtend;
*/ childrenStr.append(",${tem_0401}");
public void handleCostDetailExtend(CancelStartedVO vo) { if(cancelStartedVO.getUsedfreeDayNum() > 0 ) {
OrderTemplate template = selectByCode(OrderCostEnum.CANCEL_STARTED.getCode()); childrenStr.append(",${tem_0402}");
vo.setCostDetail(result(template.getTemplate(), Dict.parse(vo))); }
if(cancelStartedVO.getHadConpon()) {
if(cancelStartedVO.getCouponAmount().compareTo(BigDecimal.ZERO) > 0) {
childrenStr.append(",${tem_0901}");
}else {
childrenStr.append(",${tem_0902}");
}
}
if(cancelStartedVO.getViolateAmount().compareTo(BigDecimal.ZERO) > 0) {
childrenStr.append(",${tem_0903}");
}
}
if(childrenStr.length() > 0){
childrenStr.deleteCharAt(0);
}
return childrenStr.toString();
} }
public static void main(String[] args) { public static void main(String[] args) {
......
...@@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil; ...@@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.util.JsonUtil;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.xxfc.platform.activity.feign.ActivityFeign; import com.xxfc.platform.activity.feign.ActivityFeign;
import com.xxfc.platform.order.biz.*; import com.xxfc.platform.order.biz.*;
...@@ -17,6 +18,7 @@ import com.xxfc.platform.order.pojo.calculate.InProgressVO; ...@@ -17,6 +18,7 @@ import com.xxfc.platform.order.pojo.calculate.InProgressVO;
import com.xxfc.platform.order.pojo.mq.OrderMQDTO; import com.xxfc.platform.order.pojo.mq.OrderMQDTO;
import com.xxfc.platform.order.pojo.price.CancelNoStartVO; import com.xxfc.platform.order.pojo.price.CancelNoStartVO;
import com.xxfc.platform.order.pojo.price.CancelStartedVO; import com.xxfc.platform.order.pojo.price.CancelStartedVO;
import com.xxfc.platform.order.pojo.price.CostDetailExtend;
import com.xxfc.platform.tour.feign.TourFeign; import com.xxfc.platform.tour.feign.TourFeign;
import com.xxfc.platform.universal.feign.ThirdFeign; import com.xxfc.platform.universal.feign.ThirdFeign;
import com.xxfc.platform.vehicle.common.RestResponse; import com.xxfc.platform.vehicle.common.RestResponse;
...@@ -175,7 +177,7 @@ public class OrderCancelBiz { ...@@ -175,7 +177,7 @@ public class OrderCancelBiz {
} }
} }
orderTemplateBiz.handleCostDetailExtend(csv); orderTemplateBiz.handleCostDetailExtend(csv);
orvd.setCostDetailExtend(csv.getCostDetail()); orvd.setCostDetailExtend(csv);
orderRentVehicleBiz.updateSelectiveByIdRe(orvd); orderRentVehicleBiz.updateSelectiveByIdRe(orvd);
}else { }else {
//没到出车时间 //没到出车时间
...@@ -201,7 +203,7 @@ public class OrderCancelBiz { ...@@ -201,7 +203,7 @@ public class OrderCancelBiz {
setViolateDesc(deduction.getName()); setViolateDesc(deduction.getName());
}}; }};
orderTemplateBiz.handleCostDetailExtend(cnsv); orderTemplateBiz.handleCostDetailExtend(cnsv);
orvd.setCostDetailExtend(cnsv.getCostDetail()); orvd.setCostDetailExtend(cnsv);
orderRentVehicleBiz.updateSelectiveByIdRe(orvd); orderRentVehicleBiz.updateSelectiveByIdRe(orvd);
} }
} }
......
...@@ -411,7 +411,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -411,7 +411,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
* @return * @return
*/ */
private void costDetail(RentVehiclePriceVO vo, String children) { private void costDetail(RentVehiclePriceVO vo, String children) {
OrderTemplate template = orderTemplateBiz.selectById(OrderCostEnum.RENT_VEHICLE.getCode()); OrderTemplate template = orderTemplateBiz.selectByCode(OrderCostEnum.RENT_VEHICLE.getCode());
template.setTemplate(orderTemplateBiz.result(template.getTemplate(), new HashMap(){{ template.setTemplate(orderTemplateBiz.result(template.getTemplate(), new HashMap(){{
put("children", children); put("children", children);
put("vehicleAmount", vo.getVehicleAmount()); put("vehicleAmount", vo.getVehicleAmount());
......
...@@ -310,7 +310,7 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To ...@@ -310,7 +310,7 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
* @return * @return
*/ */
private void costDetail(TourPriceVO vo, String children) { private void costDetail(TourPriceVO vo, String children) {
OrderTemplate template = orderTemplateBiz.selectById(OrderCostEnum.RENT_VEHICLE.getCode()); OrderTemplate template = orderTemplateBiz.selectByCode(OrderCostEnum.RENT_VEHICLE.getCode());
template.setTemplate(orderTemplateBiz.result(template.getTemplate(), new HashMap(){{ template.setTemplate(orderTemplateBiz.result(template.getTemplate(), new HashMap(){{
put("children", children); put("children", children);
}})); }}));
......
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