|  |  |  | 
|---|
|  |  |  | ){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | YwContractBill ywContractBill = ywContractBillMapper.selectById(ywContractRevenue.getBillId()); | 
|---|
|  |  |  | YwContractBill ywContractBill = ywContractBillMapper.selectJoinOne(YwContractBill.class, | 
|---|
|  |  |  | new MPJLambdaWrapper<YwContractBill>() | 
|---|
|  |  |  | .selectAll(YwContractBill.class) | 
|---|
|  |  |  | .selectAs(YwContract::getStatus, YwContractBill::getContractStatus) | 
|---|
|  |  |  | .leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId) | 
|---|
|  |  |  | .eq(YwContractBill::getId,ywContractRevenue.getBillId())); | 
|---|
|  |  |  | if(Objects.isNull(ywContractBill)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到账单信息"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | ywContractRevenueMapper.insert(ywContractRevenue); | 
|---|
|  |  |  | ywContractBillMapper.updateById(ywContractBill); | 
|---|
|  |  |  | //如果账单完结,则查询合同下开启中的账单是否存在退款中 如果不存在则标记合同已退款 | 
|---|
|  |  |  | if(Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.ONE)){ | 
|---|
|  |  |  | if(Constants.equalsInteger(ywContractBill.getContractStatus(),Constants.THREE) | 
|---|
|  |  |  | && Constants.equalsInteger(ywContractBill.getPayStatus(),Constants.ONE)){ | 
|---|
|  |  |  | if( ywContractBillMapper | 
|---|
|  |  |  | .selectCount(new QueryWrapper<YwContractBill>().lambda().eq(YwContractBill::getContractId,ywContractBill.getContractId()) | 
|---|
|  |  |  | .ne(YwContractBill::getId,ywContractBill.getId()) | 
|---|
|  |  |  | 
|---|
|  |  |  | new MPJLambdaWrapper<YwContractRevenue>().selectAll(YwContractRevenue.class) | 
|---|
|  |  |  | .selectAs(YwContractBill::getCode,YwContractRevenue::getBillCode) | 
|---|
|  |  |  | .selectAs(YwContract::getCode,YwContractRevenue::getContractCode) | 
|---|
|  |  |  | .selectAs(YwContract::getStatus,YwContractRevenue::getContractStatus) | 
|---|
|  |  |  | .selectAs(YwCustomer::getName,YwContractRevenue::getCustomerName) | 
|---|
|  |  |  | .selectAs(SystemUser::getRealname,YwContractRevenue::getRealname) | 
|---|
|  |  |  | .selectAs(YwAccount::getTitle,YwContractRevenue::getAccountTitle) | 
|---|
|  |  |  | 
|---|
|  |  |  | .selectAs(YwContractBill::getCode,YwContractRevenue::getBillCode) | 
|---|
|  |  |  | .selectAs(YwContractBill::getType,YwContractRevenue::getBillType) | 
|---|
|  |  |  | .selectAs(YwContract::getCode,YwContractRevenue::getContractCode) | 
|---|
|  |  |  | .selectAs(YwContract::getStatus,YwContractRevenue::getContractStatus) | 
|---|
|  |  |  | .selectAs(YwCustomer::getName,YwContractRevenue::getCustomerName) | 
|---|
|  |  |  | .selectAs(SystemUser::getRealname,YwContractRevenue::getRealname) | 
|---|
|  |  |  | .leftJoin(YwContractBill.class,YwContractBill::getId,YwContractRevenue::getBillId) | 
|---|
|  |  |  | 
|---|
|  |  |  | .eq(Objects.nonNull(model)&&Objects.nonNull(model.getRevenueType()), | 
|---|
|  |  |  | YwContractRevenue::getRevenueType,model.getRevenueType()) | 
|---|
|  |  |  | .ge(Objects.nonNull(model)&&Objects.nonNull(model.getPayDateStart()),YwContractRevenue::getActPayDate, Utils.Date.getStart(model.getPayDateStart())) | 
|---|
|  |  |  | .le(Objects.nonNull(model)&&Objects.nonNull(model.getPayDateEnd()),YwContractRevenue::getActPayDate, Utils.Date.getEnd(model.getPayDateEnd())) ) | 
|---|
|  |  |  | .le(Objects.nonNull(model)&&Objects.nonNull(model.getPayDateEnd()),YwContractRevenue::getActPayDate, Utils.Date.getEnd(model.getPayDateEnd())) | 
|---|
|  |  |  | .orderByDesc(YwContractRevenue::getId)) | 
|---|
|  |  |  | ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.dealRoomDetail(iPage.getRecords()); | 
|---|