From 86df83fdc701b71b9b130ce54fc027c5a78050fb Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 27 十一月 2024 16:43:15 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java | 40 ++++++++++++++++++++++++++++------------ 1 files changed, 28 insertions(+), 12 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java index 997253e..2c2077f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java @@ -538,7 +538,7 @@ //濡傛灉鏈夌璧佹潯娆� if(Constants.formatBigdecimal(model.getZlDeposit()).compareTo(new BigDecimal(0))>0){ //濡傛灉鏈夌璧佹娂閲� - billList1.add(initDepoistBill(Constants.THREE,model)); + billList1.add(initDepoistBill(Constants.THREE,model,details)); } if(Constants.equalsInteger(model.getZlPayType(), Constants.ZERO)){ //濡傛灉鏄竴娆℃�т粯娓� @@ -559,7 +559,7 @@ //濡傛灉鐗╀笟鏉℃ if(Constants.formatBigdecimal(model.getWyDeposit()).compareTo(new BigDecimal(0))>0){ //濡傛灉鏈夌璧佹娂閲� - billList2.add(initDepoistBill(Constants.FOUR,model)); + billList2.add(initDepoistBill(Constants.FOUR,model,details)); } if(Constants.equalsInteger(model.getWyPayType(), Constants.ZERO)){ //濡傛灉鏄竴娆℃�т粯娓� @@ -599,7 +599,7 @@ } } - private YwContractBill initDepoistBill(int type, YwContract model) { + private YwContractBill initDepoistBill(int type, YwContract model, List<YwContractDetail> details) { YwContractBill bill = new YwContractBill(); bill.setCreateDate(model.getEditDate()); bill.setCreator(model.getEditor()); @@ -612,10 +612,18 @@ bill.setEndDate(model.getEndDate()); bill.setType(Constants.ZERO); bill.setCostType(type); + YwContractDetail d = details.get(Constants.ZERO); + if(Objects.isNull(d)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏉℃鏁版嵁寮傚父"); + } + Date planPayDate = DateUtil.addDaysToDate(d.getStartDate(),Constants.formatIntegerNum(d.getAdvanceDays()) * -1); + bill.setPlanPayDate(planPayDate.getTime()>System.currentTimeMillis()?planPayDate:new Date()); bill.setTotleFee(type==Constants.THREE?model.getZlDeposit():model.getWyDeposit());//鎶奸噾璐圭敤 bill.setReceivableFee(bill.getTotleFee()); bill.setBillType(Constants.ZERO); + bill.setPayStatus(Constants.ZERO); bill.setSortnum(0); + bill.setCompanyId(model.getCompanyId()); return bill; } @@ -662,12 +670,13 @@ int monthSix = months / 6;//6涓湀缁村害鏁伴噺 int restMonth = months % 6;//鍓╀綑鐨勬暣鏈� int monthDays = dateCompare.getMonthDays();//涓嶆弧涓�涓湀鐨勫ぉ鏁� + Date date = new Date(); List<Date> list = new ArrayList<>(); for (int i = 0; i < monthSix; i++) { - list.add(DateUtil.addMonthToDate(startDate,i*6)); + list.add(DateUtil.addMonthToDate(date,i*6)); } if(restMonth>0 || monthDays>0){ - list.add(DateUtil.addDaysToDate(startDate,monthSix)); + list.add(DateUtil.addDaysToDate(date,monthSix)); } return list; } @@ -677,12 +686,13 @@ int monthThree = months / 3;//3涓湀缁村害鏁伴噺 int restMonth = months % 3;//鍓╀綑鐨勬暣鏈� int monthDays = dateCompare.getMonthDays();//涓嶆弧涓�涓湀鐨勫ぉ鏁� + Date date = new Date(); List<Date> list = new ArrayList<>(); for (int i = 0; i < monthThree; i++) { - list.add(DateUtil.addMonthToDate(startDate,i*3)); + list.add(DateUtil.addMonthToDate(date,i*3)); } if(restMonth>0 || monthDays>0){ - list.add(DateUtil.addDaysToDate(startDate,monthThree)); + list.add(DateUtil.addDaysToDate(date,monthThree)); } return list; } @@ -716,13 +726,15 @@ YwContractBill bill = initCreateBillModel(model,d ); bill.setStartDate(start);//璐﹀崟寮�濮� bill.setEndDate(end);//璐﹀崟缁撴潫 - bill.setPlanPayDate(DateUtil.addDaysToDate(d.getStartDate(),Constants.formatIntegerNum(d.getAdvanceDays()) * -1)); + Date planPayDate = DateUtil.addDaysToDate(d.getStartDate(),Constants.formatIntegerNum(d.getAdvanceDays()) * -1); + bill.setPlanPayDate(planPayDate.getTime()>System.currentTimeMillis()?planPayDate:new Date()); BigDecimal totalFee =getTotalFeeByStartEnd(model,d,freeStart,freeEnd); bill.setTotleFee(totalFee); bill.setReceivableFee(totalFee); bill.setBillType(Constants.ZERO); temp++; + bill.setCompanyId(model.getCompanyId()); list.add(bill); } } @@ -777,12 +789,13 @@ DateCompare dateCompare = DateCompare.monthYearCompare(startDate, endDate ); int years = dateCompare.getYear(); int yeardays = dateCompare.getYearDays(); + Date date = new Date(); List<Date> list = new ArrayList<>(); for (int i = 0; i < years; i++) { - list.add(DateUtil.addYearToDate(startDate,i)); + list.add(DateUtil.addYearToDate(date,i)); } if(yeardays>0){ - list.add(DateUtil.addYearToDate(startDate,years)); + list.add(DateUtil.addYearToDate(date,years)); } return list; } @@ -839,8 +852,11 @@ } private void initFiles(YwContract model) { - List<Multifile> multifiles = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda() - .eq(Multifile::getObjId, model.getId() ) + List<Multifile> multifiles = multifileMapper.selectJoinList(Multifile.class,new MPJLambdaWrapper<Multifile>() + .selectAll(Multifile.class) + .selectAs(SystemUser::getRealname,Multifile::getUserName) + .leftJoin(SystemUser.class,SystemUser::getId,Multifile::getCreator) + .eq(Multifile::getObjId,model.getId()) .in(Multifile::getObjType, Arrays.asList(new Integer[]{Constants.MultiFile.YW_CONTRACT_FILE.getKey()})) .eq(Multifile::getIsdeleted,Constants.ZERO)); if(multifiles!=null){ -- Gitblit v1.9.3