diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/ClzSltAgreementInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/ClzSltAgreementInfoController.java index 24cd6b01..3ae632ba 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/ClzSltAgreementInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/controller/ClzSltAgreementInfoController.java @@ -220,6 +220,30 @@ public class ClzSltAgreementInfoController extends BaseController { if (Objects.isNull(bean.getLeaseDays())) { bean.setLeaseDay(0L); } + // 物资已退还,按照天数来计算费用 + Date materialReturnTime = bean.getEndTime(); + + if(materialReturnTime == null){ + materialReturnTime = DateTime.now(); + } + String teamExitTime = bean.getActualExitTime(); + if (teamExitTime == null) { + teamExitTime = DateTime.now().toString("yyyy-MM-dd"); + } + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + Date exitTime = null; + try { + exitTime = format.parse(teamExitTime); + }catch (Exception e){ + e.printStackTrace(); + } + // 计算超期天数 + long overdueDays = calculateOverdueDays(materialReturnTime, exitTime); + if(overdueDays < 8 ){ + bean.setOverDay(0L); + }else{ + bean.setOverDay(overdueDays-7); + } bean.setActualExitTime(date); BigDecimal leasePrice = bean.getLeasePrice(); BigDecimal num = bean.getNum(); @@ -420,6 +444,30 @@ public class ClzSltAgreementInfoController extends BaseController { if (Objects.isNull(bean.getLeaseDays())) { bean.setLeaseDay(0L); } + // 物资已退还,按照天数来计算费用 + Date materialReturnTime = bean.getEndTime(); + + if(materialReturnTime == null){ + materialReturnTime = DateTime.now(); + } + String teamExitTime = bean.getActualExitTime(); + if (teamExitTime == null) { + teamExitTime = DateTime.now().toString("yyyy-MM-dd"); + } + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + Date exitTime = null; + try { + exitTime = format.parse(teamExitTime); + }catch (Exception e){ + e.printStackTrace(); + } + // 计算超期天数 + long overdueDays = calculateOverdueDays(materialReturnTime, exitTime); + if(overdueDays < 8 ){ + bean.setOverDay(0L); + }else{ + bean.setOverDay(overdueDays-7); + } BigDecimal leasePrice = bean.getLeasePrice(); BigDecimal num = bean.getNum(); @@ -737,6 +785,7 @@ public class ClzSltAgreementInfoController extends BaseController { maps.put("startTime", bean.getStartTime()==null ? null:dateFormat.format(bean.getStartTime())); maps.put("endTime", bean.getEndTime()==null ? null:dateFormat.format(bean.getEndTime())); maps.put("leaseDays", bean.getLeaseDays()); + maps.put("overDay", bean.getOverDay()); maps.put("costs", bean.getCosts().setScale(2, RoundingMode.HALF_UP)); }else { maps.put("unitName", bean.getUnitName()); @@ -748,8 +797,8 @@ public class ClzSltAgreementInfoController extends BaseController { maps.put("startTime", bean.getStartTime()==null ? null:dateFormat.format(bean.getStartTime())); maps.put("endTime", bean.getEndTime()==null ? null:dateFormat.format(bean.getEndTime())); maps.put("leaseDays", bean.getLeaseDays()); + maps.put("overDay", bean.getOverDay()); maps.put("costs", bean.getCosts().setScale(2, RoundingMode.HALF_UP)); - maps.put("t1", ""); } }else if(type==2) { if(flag==0){ @@ -851,10 +900,11 @@ public class ClzSltAgreementInfoController extends BaseController { list.add("计量单位"); list.add("租赁单价"); list.add("租赁数量"); - list.add("租赁日期"); + list.add("领料日期"); list.add("归还日期"); list.add("租赁天数"); - list.add("租赁费用(元)"); + list.add("超期天数"); + list.add("超期费用(元)"); }else { list.add("单位名称"); list.add("设备名称"); @@ -862,11 +912,11 @@ public class ClzSltAgreementInfoController extends BaseController { list.add("计量单位"); list.add("租赁单价"); list.add("租赁数量"); - list.add("租赁日期"); + list.add("领料日期"); list.add("归还日期"); list.add("租赁天数"); - list.add("租赁费用(元)"); - list.add(" "); + list.add("超期天数"); + list.add("超期费用(元)"); } }else if(type==2){ if(flag==0){