From c9bb39372b6d2c8a6bb8de9da68d28433ac20d73 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 27 十一月 2024 16:40:18 +0800 Subject: [PATCH] 开发更新 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java | 69 +++++++++++++++++++++++++--------- 1 files changed, 51 insertions(+), 18 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 7521794..997253e 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 @@ -45,6 +45,8 @@ @Autowired private YwContractMapper ywContractMapper; @Autowired + private YwContractRoomMapper ywContractRoomMapper; + @Autowired private YwContractDetailMapper ywContractDetailMapper; @Autowired private YwContractBillMapper ywContractBillMapper; @@ -82,9 +84,29 @@ ywContractMapper.insert(model); dealDetailListBiz(model);//澶勭悊鏉℃淇℃伅 dealMultifileBiz(model);//澶勭悊闄勪欢淇℃伅 - dealLogBiz(model,Constants.YwLogType.CONTRACT_CREATE,null,null);//璁板綍鏂板缓鏃ュ織 + dealRoomsForContract(model);//澶勭悊鎴挎簮鍏宠仈琛� + dealLogBiz(model,Constants.YwLogType.CONTRACT_CREATE,model.getLoginUserInfo().getRealname(),"銆�"+model.getRemark().replace("鍚堝悓鎽樿锛�","")+"銆�");//璁板綍鏂板缓鏃ュ織 + return model.getId(); } + + private void dealRoomsForContract(YwContract model) { + List<YwContractRoom> list = new ArrayList<>(); + for(YwRoom room :model.getRoomList()){ + YwContractRoom t = new YwContractRoom(); + t.setContractId(model.getId()); + t.setRoomId(room.getId()); + t.setCreator(model.getCreator()); + t.setIsdeleted(Constants.ZERO); + t.setCreateDate(model.getCreateDate()); + t.setEditDate(model.getCreateDate()); + t.setEditor(model.getCreator()); + t.setType(Constants.ZERO); + list.add(t); + } + ywContractRoomMapper.insert(list); + } + @Override public List<YwContractBill> getBillList(YwContract model){ @@ -247,6 +269,14 @@ :(Constants.formatBigdecimal(model.getBtFee()).intValue() * -1))+"" ); return str; } + private String getbackRentLogByParam(YwContract model) { + BigDecimal fee = Constants.formatBigdecimal(model.getBtFee()); + String str = "銆愰��绉熸棩{param1}锛岄��绉熷師鍥狅細{param2},閫�绉熷崗璁腑缁熻鐨勮垂鐢ㄦ�昏{param3}鍏冦�傘��"; + str = str.replace("{param1}",DateUtil.getDateLongSlash(model.getBtDate())) + .replace("{param2}",StringUtils.defaultString(model.getBtInfo(),"")) + .replace("{param3}",Constants.formatBigdecimal2Float(model.getBtFee()).doubleValue()+""); + return str; + } @@ -276,7 +306,7 @@ update.setBtFee(param.getBtFee()); update.setBtRemark(getbackRentRemarkByParam(param)); ywContractMapper.updateById(update); - dealLogBiz(param,Constants.YwLogType.CONTRACT_BACK,null,null); + dealLogBiz(param,Constants.YwLogType.CONTRACT_BACK, param.getLoginUserInfo().getRealname(),getbackRentLogByParam(param)); return param.getId(); } @@ -632,13 +662,12 @@ 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(date,i*6)); + list.add(DateUtil.addMonthToDate(startDate,i*6)); } if(restMonth>0 || monthDays>0){ - list.add(DateUtil.addDaysToDate(date,monthSix)); + list.add(DateUtil.addDaysToDate(startDate,monthSix)); } return list; } @@ -648,13 +677,12 @@ 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(date,i*3)); + list.add(DateUtil.addMonthToDate(startDate,i*3)); } if(restMonth>0 || monthDays>0){ - list.add(DateUtil.addDaysToDate(date,monthThree)); + list.add(DateUtil.addDaysToDate(startDate,monthThree)); } return list; } @@ -679,10 +707,11 @@ } private void dealCircleDateBillBiz( List<Date> dateList ,YwContract model, YwContractDetail d, Date freeStart, Date freeEnd, List<YwContractBill> list ) { + int temp = 0; for(Date start : dateList){ - Date end = DateUtil.addDaysToDate(DateUtil.addYearToDate(start,1),-1);//缁撴潫鏃ユ湡涓轰笅涓�涓懆鏈熺殑鍓嶄竴澶� - if(end.getTime()> d.getEndDate().getTime() ){ - end = d.getEndDate(); + Date end = d.getEndDate(); + if(temp+1 < dateList.size()){ + end =DateUtil.addDaysToDate(dateList.get(temp+1),-1); } YwContractBill bill = initCreateBillModel(model,d ); bill.setStartDate(start);//璐﹀崟寮�濮� @@ -693,6 +722,7 @@ bill.setReceivableFee(totalFee); bill.setBillType(Constants.ZERO); + temp++; list.add(bill); } } @@ -747,13 +777,12 @@ 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(date,i)); + list.add(DateUtil.addYearToDate(startDate,i)); } if(yeardays>0){ - list.add(DateUtil.addYearToDate(date,years)); + list.add(DateUtil.addYearToDate(startDate,years)); } return list; } @@ -1047,6 +1076,7 @@ log.setObjType(type.getKey()); log.setParam1(param1); log.setParam2(param2); + log.setContent(param2); log.setTitle(type.getNoteinfo()); ywWorkorderLogMapper.insert(log); } @@ -1058,12 +1088,13 @@ .selectAs(SystemUser::getRealname,YwContract::getUserName ) .selectAs(YwCustomer::getName,YwContract::getRenterName ) .selectAs(YwProject::getName,YwContract::getProjectName ) - .select("t4.realname",YwContract::getCreatorName ) + .select("t3.realname",YwContract::getCreatorName ) .leftJoin(Company.class,Company::getId,YwContract::getCompanyId) .leftJoin(SystemUser.class,SystemUser::getId,YwContract::getUserId) .leftJoin(SystemUser.class,SystemUser::getId,YwContract::getCreator) .leftJoin(YwProject.class,YwProject::getId,YwContract::getProjectId) - .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId); + .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId) + .eq( YwContract::getId,id); YwContract model = ywContractMapper.selectJoinOne(YwContract.class,queryWrapper); if(model != null){ //鍚堝悓闄勪欢 @@ -1078,7 +1109,7 @@ .leftJoin(YwBuilding.class,YwBuilding::getId,YwRoom::getBuildingId) .leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor) .eq(YwRoom::getIsdeleted,Constants.ZERO) - .exists("(select a.id from yw_contract_room a where a.isdeleted=1 and a.room_id=t.id and a.contract_id="+model.getId()+")"); + .exists("(select a.id from yw_contract_room a where a.isdeleted=0 and a.type=0 and a.room_id=t.id and a.contract_id="+model.getId()+")"); model.setRoomList(roomMapper.selectJoinList(YwRoom.class,rw)); model.setWyFirstCircleStr(Constants.getUnitTypeByNum(model.getWyFirstCircle())); model.setZlFirstCircleStr(Constants.getUnitTypeByNum(model.getZlFirstCircle())); @@ -1167,8 +1198,10 @@ MPJLambdaWrapper<YwContract> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.selectAll(YwContract.class ) .selectAs(Company::getName,YwContract::getCompanyName ) + .selectAs(YwCustomer::getName,YwContract::getRenterName ) .select("(select sum(r.area) from yw_contract_room cr left join yw_room r on r.id = cr.room_id where r.isdeleted=0 and cr.contract_id =t.id)",YwContract::getTotalArea ) - .leftJoin(Company.class,Company::getId,YwContract::getCompanyId); + .leftJoin(Company.class,Company::getId,YwContract::getCompanyId) + .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId); Utils.MP.blankToNull(pageWrap.getModel()); if (pageWrap.getModel().getId() != null) { queryWrapper.eq(YwContract::getId, pageWrap.getModel().getId()); -- Gitblit v1.9.3