From f2e092ab2336060347d41d2bc748a5875f8ba5c6 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 03 十二月 2024 17:35:45 +0800 Subject: [PATCH] 开发更新 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRevenueServiceImpl.java | 118 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 83 insertions(+), 35 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRevenueServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRevenueServiceImpl.java index d637c75..cdfdf12 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRevenueServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractRevenueServiceImpl.java @@ -1,11 +1,13 @@ package com.doumee.service.business.impl; +import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; +import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.*; import com.doumee.dao.business.dao.CompanyMapper; @@ -28,10 +30,7 @@ import org.springframework.util.CollectionUtils; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; /** @@ -65,6 +64,10 @@ @Autowired private SystemUserMapper systemUserMapper; + + @Autowired + private SystemDictDataBiz systemDictDataBiz; + @Override @@ -111,8 +114,10 @@ ywContractRevenue.setContractId(ywContractBill.getContractId()); //鏍规嵁鏀舵敮鎯呭喌 鏇存柊璐﹀崟鏁版嵁 //鏌ヨ褰撳墠璐﹀崟涓� 宸叉敮浠樼殑璐圭敤 - List<YwContractRevenue> ywContractRevenueList = ywContractRevenueMapper.selectList(new QueryWrapper<YwContractRevenue>().lambda().eq(YwContractRevenue::getIsdeleted,Constants.ZERO) + List<YwContractRevenue> ywContractRevenueList = ywContractRevenueMapper.selectList(new QueryWrapper<YwContractRevenue>() + .lambda().eq(YwContractRevenue::getIsdeleted,Constants.ZERO) .eq(YwContractRevenue::getStatus,Constants.ZERO) + .eq(YwContractRevenue::getBillId,ywContractRevenue.getBillId()) ); //宸叉敮浠橀噾棰� BigDecimal payTotal = BigDecimal.ZERO; @@ -146,14 +151,14 @@ //寰呮敮浠樼殑娴佹按 濡傛灉涓烘敹鍏� 鍒欐瘮瀵� 閲戦鍊� 濡傛灉鏄敮鍑� 鍒欒幏鍙栫粷瀵瑰�� 杩涜瀵规瘮 if(Constants.equalsInteger(ywContractRevenue.getRevenueType(),Constants.ZERO)){ //濡傛灉鏀粯閲戦 澶т簬 寰呮敮浠橀噾棰� 鍒欐彁绀哄紓甯� 濡傛灉鏀粯閲戦灏忎簬 寰呮敮浠橀噾棰� 鍒欑姸鎬佷笉鍙樺寲 鍏朵粬鐘舵�� 寮傚父 - if(waitPayTotal.compareTo(ywContractRevenue.getActReceivableFee())>Constants.ZERO){ + if(waitPayTotal.compareTo(ywContractRevenue.getActReceivableFee())<Constants.ZERO){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇疯緭鍏ユ纭殑閲戦锛�"); }else if(waitPayTotal.compareTo(ywContractRevenue.getActReceivableFee())==Constants.ZERO){ ywContractBill.setPayStatus(Constants.ONE); } }else{ waitPayTotal = waitPayTotal.abs(); - if(waitPayTotal.compareTo(ywContractRevenue.getActReceivableFee())>Constants.ZERO){ + if(waitPayTotal.compareTo(ywContractRevenue.getActReceivableFee())<Constants.ZERO){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇疯緭鍏ユ纭殑閲戦锛�"); }else if(waitPayTotal.compareTo(ywContractRevenue.getActReceivableFee())==Constants.ZERO){ ywContractBill.setPayStatus(Constants.ONE); @@ -229,14 +234,36 @@ .selectAs(YwContract::getCode,YwContractRevenue::getContractCode) .selectAs(YwCustomer::getName,YwContractRevenue::getCustomerName) .selectAs(SystemUser::getRealname,YwContractRevenue::getRealname) + .selectAs(YwAccount::getTitle,YwContractRevenue::getAccountTitle) .leftJoin(YwContractBill.class,YwContractBill::getId,YwContractRevenue::getBillId) .leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId) .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId) .leftJoin(SystemUser.class,SystemUser::getId,YwContractRevenue::getCreator) + .leftJoin(YwAccount.class,YwAccount::getId,YwContractRevenue::getAccountId) .eq(YwContractRevenue::getId,id) ); this.getRecordData(ywContractRevenue); + + //闄勪欢鏁版嵁 + List<Multifile> multifileList = 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,id) + .eq(Multifile::getIsdeleted,Constants.ZERO) + .eq(Multifile::getObjType,Constants.MultiFile.FN_CONTRACT_REVENUE_FILE.getKey())); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifileList)){ + String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() + +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_CONTRACT_BILL).getCode(); + for (Multifile multifile:multifileList) { + if(StringUtils.isNotBlank(multifile.getFileurl())){ + multifile.setFileurlFull(path + multifile.getFileurl()); + } + } + ywContractRevenue.setMultifileList(multifileList); + } + return ywContractRevenue; } @@ -288,11 +315,11 @@ if(Objects.isNull(ywContract)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } - if(Constants.equalsInteger(ywContract.getStatus(),Constants.THREE)){ + if(Constants.equalsInteger(ywContract.getStatus(),Constants.FOUR)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鍚堝悓鐘舵�佸凡娴佽浆,鏃犳硶鎿嶄綔"); } if(Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.ONE) - || Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.TWO)){ + || Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.FIVE)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璐﹀崟鐘舵�佸凡娴佽浆,鏃犳硶鎿嶄綔"); } //鏌ヨ璐﹀崟涓� 鎵�鏈夌殑璐﹀崟 @@ -322,14 +349,14 @@ ywContractBillMapper.update(null,new UpdateWrapper<YwContractBill>().lambda() .set(YwContractBill::getPayStatus,ywContractBill.getPayStatus()) .set(YwContractBill::getEditor,loginUserInfo.getId()) - .set(YwContractBill::getEditDate," now() ") + .set(YwContractBill::getEditDate, DateUtil.getCurrDateTime()) .eq(YwContractBill::getId,ywContractBill.getId()) ); ywContractRevenueMapper.update(null,new UpdateWrapper<YwContractRevenue>().lambda() .set(YwContractRevenue::getStatus,Constants.ONE) .set(YwContractRevenue::getEditor,loginUserInfo.getId()) - .set(YwContractRevenue::getEditDate," now() ") + .set(YwContractRevenue::getEditDate,DateUtil.getCurrDateTime()) .eq(YwContractRevenue::getId,id)); } @@ -344,7 +371,7 @@ public List<YwContractRevenue> findList(YwContractRevenue ywContractRevenue) { List<YwContractRevenue> ywContractRevenueList = ywContractRevenueMapper.selectJoinList(YwContractRevenue.class,new MPJLambdaWrapper<YwContractRevenue>() .selectAll(YwContractRevenue.class) - .selectAs(YwCustomer::getName,YwContractRevenue::getCustomerNme) + .selectAs(YwCustomer::getName,YwContractRevenue::getCustomerName) .leftJoin(YwContract.class,YwContract::getId,YwContractRevenue::getContractId) .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId) .eq(YwContractRevenue::getStatus,Constants.ZERO) @@ -362,6 +389,7 @@ IPage<YwContractRevenue> iPage = ywContractRevenueMapper.selectJoinPage(page,YwContractRevenue.class, queryWrapper.selectAll(YwContractRevenue.class) .selectAs(YwContractBill::getCode,YwContractRevenue::getBillCode) + .selectAs(YwContractBill::getType,YwContractRevenue::getBillType) .selectAs(YwContract::getCode,YwContractRevenue::getContractCode) .selectAs(YwCustomer::getName,YwContractRevenue::getCustomerName) .selectAs(SystemUser::getRealname,YwContractRevenue::getRealname) @@ -370,8 +398,8 @@ .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId) .leftJoin(SystemUser.class,SystemUser::getId,YwContractRevenue::getCreator) .eq(YwContractRevenue::getIsdeleted,Constants.ZERO) - .like(Objects.nonNull(model)&&StringUtils.isNotBlank(model.getCustomerNme()), - YwCustomer::getName,model.getCustomerNme()) + .like(Objects.nonNull(model)&&StringUtils.isNotBlank(model.getCustomerName()), + YwCustomer::getName,model.getCustomerName()) .eq(Objects.nonNull(model)&&Objects.nonNull(model.getPayType()), YwContractRevenue::getPayType,model.getPayType()) .eq(Objects.nonNull(model)&&Objects.nonNull(model.getRevenueType()), @@ -385,25 +413,39 @@ for (YwContractRevenue ywContractRevenue:iPage.getRecords()) { //妤煎畤鍚嶇О List<YwContractRoom> ywContractRoomList = ywContractRevenue.getYwContractRoomList(); - StringBuilder roomPathName = new StringBuilder(); - for (YwContractRoom ywContractRoom:ywContractRoomList) { - if(StringUtils.isNotBlank(ywContractRoom.getProjectName())){ - roomPathName.append(ywContractRoom.getProjectName()+"/"); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractRoomList)){ + StringBuilder roomPathName = new StringBuilder(); + for (YwContractRoom ywContractRoom:ywContractRoomList) { + if(Constants.equalsInteger(ywContractRevenue.getBillType(),Constants.ZERO)){ + if(!(Constants.equalsInteger(ywContractRevenue.getContractId(),ywContractRoom.getContractId()) + && Constants.equalsInteger(ywContractRoom.getType(),Constants.ZERO))){ + continue; + } + }else{ + if(!(Constants.equalsInteger(ywContractRevenue.getBillId(),ywContractRoom.getContractId()) + && Constants.equalsInteger(ywContractRoom.getType(),Constants.ONE))){ + continue; + } + } + if(StringUtils.isNotBlank(ywContractRoom.getProjectName())){ + roomPathName.append(ywContractRoom.getProjectName()+"/"); + } + if(StringUtils.isNotBlank(ywContractRoom.getBuildingName())){ + roomPathName.append(ywContractRoom.getBuildingName()+"/"); + } + if(StringUtils.isNotBlank(ywContractRoom.getFloorName())){ + roomPathName.append(ywContractRoom.getFloorName()+"/"); + } + if(StringUtils.isNotBlank(ywContractRoom.getRoomName())){ + roomPathName.append(ywContractRoom.getRoomName()); + } + if(StringUtils.isNotBlank(roomPathName)){ + roomPathName.append(";"); + } } - if(StringUtils.isNotBlank(ywContractRoom.getBuildingName())){ - roomPathName.append(ywContractRoom.getBuildingName()+"/"); - } - if(StringUtils.isNotBlank(ywContractRoom.getFloorName())){ - roomPathName.append(ywContractRoom.getFloorName()+"/"); - } - if(StringUtils.isNotBlank(ywContractRoom.getRoomName())){ - roomPathName.append(ywContractRoom.getRoomName()); - } - if(StringUtils.isNotBlank(roomPathName)){ - roomPathName.append(";"); - } + ywContractRevenue.setRoomPathName(roomPathName.toString()); } - ywContractRevenue.setRoomPathName(roomPathName.toString()); + } return PageData.from(iPage); } @@ -414,24 +456,30 @@ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractRevenueList)){ //鑾峰彇鎵�鏈夋暟鎹� List<Integer> billIdList = ywContractRevenueList.stream().map(i->i.getBillId()).collect(Collectors.toList()); + List<Integer> contractIdList = ywContractRevenueList.stream().map(i->i.getContractId()).collect(Collectors.toList()); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(billIdList)){ List<YwContractRoom> ywContractRoomList = ywContractRoomMapper.selectJoinList(YwContractRoom.class,new MPJLambdaWrapper<YwContractRoom>() .selectAll(YwContractRoom.class) .selectAs(YwProject::getName,YwRoom::getProjectName) .selectAs(YwFloor::getName,YwRoom::getFloorName) .selectAs(YwBuilding::getName,YwRoom::getBuildingName) - .selectAs(YwRoom::getName,YwContractRoom::getRoomName) + .selectAs(YwRoom::getCode,YwContractRoom::getRoomName) .leftJoin(YwRoom.class,YwRoom::getId,YwContractRoom::getRoomId) .leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor) .leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId) .leftJoin(YwBuilding.class,YwBuilding::getId,YwRoom::getBuildingId) - .in(YwContractRoom::getContractId,billIdList) - .eq(YwContractRoom::getType,Constants.ONE) + .and(i->i.in(YwContractRoom::getContractId,billIdList).eq(YwContractRoom::getType,Constants.ONE) + .or().in(YwContractRoom::getContractId,contractIdList).eq(YwContractRoom::getType,Constants.ZERO) + ) +// .in(YwContractRoom::getContractId,billIdList) +// .eq(YwContractRoom::getType,Constants.ONE) ); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractRoomList)){ for (YwContractRevenue ywContractRevenue:ywContractRevenueList) { ywContractRevenue.setYwContractRoomList( - ywContractRoomList.stream().filter(i->Constants.equalsInteger(i.getContractId(),ywContractRevenue.getBillId())).collect(Collectors.toList()) + ywContractRoomList.stream().filter(i-> + Constants.equalsInteger(i.getContractId(),ywContractRevenue.getBillId())||Constants.equalsInteger(i.getContractId(),ywContractRevenue.getContractId())) + .collect(Collectors.toList()) ); } } -- Gitblit v1.9.3