| | |
| | | ywContractBillMapper.updateById(b); |
| | | } |
| | | } |
| | | int yjNoBills =0; |
| | | if(yjBills.size()>0){ |
| | | // 如果是押金或者保证金,不支持退款,保持原来的状态, 0=租赁费;1=物业费;2=租赁押金;3=物业押金;4=水电费;5=杂项费;6=其他;7=保证金 |
| | | for(YwContractBill bill : yjBills){ |
| | | if(!Constants.equalsInteger(bill.getPayStatus(),Constants.ONE) ){ |
| | | //如果是未结清押金 |
| | | yjNoBills ++; |
| | | } |
| | | } |
| | | } |
| | | |
| | | BigDecimal totalBackFee = new BigDecimal(0); |
| | | if(canBills.size()>0){ |
| | | //直接关闭关闭账单 |
| | |
| | | fee = Constants.formatBigdecimal(b.getActReceivableFee()).subtract(editBill.getReceivableFee()); |
| | | if(fee.compareTo(new BigDecimal(0))== 0){ |
| | | //如果费用正好,则修改账单信息为已结清 |
| | | b.setStatus(Constants.ONE); |
| | | b.setPayStatus(Constants.ONE); |
| | | }else if(fee.compareTo(new BigDecimal(0))> 0){ |
| | | //如果需要进行退款,更新账单信息为待退款 |
| | | b.setStatus(Constants.FOUR); |
| | | b.setPayStatus(Constants.FOUR); |
| | | }else if(fee.compareTo(new BigDecimal(0)) < 0){ |
| | | //如果账单还有款待收,则保持状态不变 |
| | | } |
| | |
| | | addBill.setContractId(param.getId()); |
| | | addBill.setType(Constants.ONE); |
| | | addBill.setStatus(Constants.ZERO); |
| | | if(Constants.equalsInteger(addBill.getFeeType(),Constants.ONE)){ |
| | | addBill.setStartDate(addBill.getPlanPayDate()); |
| | | addBill.setEndDate(addBill.getPlanPayDate()); |
| | | } |
| | | if(Constants.equalsInteger(addBill.getBillType(),Constants.ZERO)){ |
| | | //如果是收款 |
| | | totalBackFee = totalBackFee.add(Constants.formatBigdecimal(addBill.getActReceivableFee())); |
| | |
| | | newBills.add(addBill); |
| | | } |
| | | ywContractBillMapper.insert(param.getAddBillList());//批量插入数据 |
| | | } |
| | | |
| | | int yjNoBills =0; |
| | | if(yjBills.size()>0){ |
| | | // 如果是押金或者保证金,不支持退款,保持原来的状态, 0=租赁费;1=物业费;2=租赁押金;3=物业押金;4=水电费;5=杂项费;6=其他;7=保证金 |
| | | for(YwContractBill bill : yjBills){ |
| | | if(!Constants.equalsInteger(bill.getPayStatus(),Constants.ONE) ){ |
| | | // YwContractBill b = new YwContractBill(); |
| | | // //付款状态:0=待收款;1=已结清;2=部分结清;3=待付款;4=待退款;5=已关闭 |
| | | // //如果账单信息做了编辑,金额计算 实收金额 和 修改后应收金额作对比,判断是否应该退款 |
| | | // BigDecimal fee = Constants.formatBigdecimal(bill.getActReceivableFee()).subtract(bill.getReceivableFee()); |
| | | // if(fee.compareTo(new BigDecimal(0))== 0){ |
| | | // //如果费用正好,则修改账单信息为已结清 |
| | | // b.setPayStatus(Constants.ONE); |
| | | // }else if(fee.compareTo(new BigDecimal(0))> 0){ |
| | | // //如果需要进行退款,更新账单信息为待退款 |
| | | // b.setPayStatus(Constants.FOUR); |
| | | // } |
| | | // b.setId(bill.getId()); |
| | | // b.setEditDate(param.getEditDate()); |
| | | // b.setEditor(param.getEditor()); |
| | | // b.setReceivableFee(BigDecimal.ZERO); |
| | | // ywContractBillMapper.updateById(b); |
| | | //如果是未结清押金 |
| | | yjNoBills ++; |
| | | } |
| | | } |
| | | } |
| | | param.setBtWaitBill(canBills.size() + newBills.size()+yjNoBills);//未清算的账单数量 |
| | | param.setBtCLoseBill(closeBills.size()); |
| | |
| | | bill.setType(Constants.ZERO); |
| | | bill.setCostType(type); |
| | | bill.setPlanPayDate(bill.getStartDate()); |
| | | bill.setTotleFee(type==Constants.THREE?model.getZlDeposit():model.getWyDeposit());//押金费用 |
| | | bill.setTotleFee(type==Constants.TWO? |
| | | Objects.isNull(model.getZlDeposit())?BigDecimal.ZERO:model.getZlDeposit() |
| | | : |
| | | Objects.isNull(model.getWyDeposit())?BigDecimal.ZERO:model.getWyDeposit());//押金费用 |
| | | bill.setReceivableFee(bill.getTotleFee()); |
| | | bill.setBillType(Constants.ZERO); |
| | | bill.setPayStatus(Constants.ZERO); |
| | |
| | | }else if(Constants.equalsInteger(bill.getPayStatus(),Constants.ONE) ){ |
| | | if(bill.getEndDate().getTime()<nowStart){ |
| | | //如果已结清,账单直接关闭 |
| | | continue; |
| | | continue; |
| | | } |
| | | model.getCanBackRentBills().add(bill); |
| | | }else if(Constants.equalsInteger(bill.getPayStatus(),Constants.TWO) ){ |
| | |
| | | |
| | | @Override |
| | | public List<YwContract> findList(YwContract ywContract) { |
| | | QueryWrapper<YwContract> wrapper = new QueryWrapper<>(); |
| | | wrapper.lambda().eq(YwContract::getIsdeleted,Constants.ZERO); |
| | | wrapper.lambda().in(YwContract::getStatus,Constants.ZERO,Constants.ONE,Constants.TWO); |
| | | return ywContractMapper.selectList(wrapper); |
| | | return ywContractMapper.selectJoinList(YwContract.class,new MPJLambdaWrapper<YwContract>().selectAll(YwContract.class ) |
| | | .selectAs(Company::getName,YwContract::getCompanyName ) |
| | | .selectAs(SystemUser::getRealname,YwContract::getUserName ) |
| | | .selectAs(YwCustomer::getName,YwContract::getRenterName ) |
| | | .selectAs(YwProject::getName,YwContract::getProjectName ) |
| | | .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) |
| | | .eq(YwContract::getIsdeleted,Constants.ZERO) |
| | | .in(YwContract::getStatus,Constants.ZERO,Constants.ONE,Constants.TWO)); |
| | | } |
| | | |
| | | @Override |