From 158210c9f5f06e3d763bf258f66fc5aacd924733 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期四, 13 二月 2025 12:19:37 +0800 Subject: [PATCH] 后台报修,房屋验收管理 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java | 80 +++++++++++++++++++++++++-------------- 1 files changed, 51 insertions(+), 29 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java index ea54862..3402f97 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java @@ -14,6 +14,7 @@ import com.ruoyi.common.utils.DictUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.WebUtils; +import com.ruoyi.system.dto.SetContractDto; import com.ruoyi.system.dto.TContractDTO; import com.ruoyi.system.dto.THouseDTO; import com.ruoyi.system.dto.TerminateContractDTO; @@ -37,6 +38,7 @@ import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -72,12 +74,15 @@ private TCheckAcceptRecordService checkAcceptRecordService; @ApiOperation(value = "获取合同分页列表") @PostMapping(value = "/contractList") + @PreAuthorize("@ss.hasPermi('system:contract:list')") + public R<PageInfo<TContract>> contractList(@RequestBody TContractQuery query) { return R.ok(contractService.contractList(query)); } @Log(title = "合同管理-新增合同", businessType = BusinessType.INSERT) @ApiOperation(value = "新增合同") @PostMapping(value = "/addContract") + @PreAuthorize("@ss.hasPermi('system:contract:add')") public R<Boolean> addContract(@Validated @RequestBody TContractDTO dto) { contractService.save(dto); if (dto.getIsIncreasing()){ @@ -87,6 +92,7 @@ tContractRentType.setIncreasingDecreasingType(dto.getIncreasingDecreasingType()); tContractRentType.setNumericalValue(dto.getNumericalValue()); tContractRentType.setChangeTime(dto.getChangeTime()); + tContractRentType.setCycleTime(dto.getCycleTime()); contractRentTypeService.save(tContractRentType); } return R.ok(); @@ -105,6 +111,7 @@ tContractRentType.setIncreasingDecreasingType(dto.getIncreasingDecreasingType()); tContractRentType.setNumericalValue(dto.getNumericalValue()); tContractRentType.setChangeTime(dto.getChangeTime()); + tContractRentType.setCycleTime(dto.getCycleTime()); contractRentTypeService.save(tContractRentType); } return R.ok(); @@ -151,8 +158,9 @@ payMoney = payMoney.add(tBill.getPayFeesMoney()).add(tBill.getPayableFeesPenalty()); } TCheckAcceptRecord tCheckAcceptRecord = checkAcceptRecordService.lambdaQuery().eq(TCheckAcceptRecord::getContractId, id).one(); - res.setCheckResult(tCheckAcceptRecord.getCheckResult()); + res.setCheckResult(Objects.nonNull(tCheckAcceptRecord)?tCheckAcceptRecord.getCheckResult():false); res.setPayMoney(payMoney); + return R.ok(res); } @Log(title = "合同管理-撤销审批", businessType = BusinessType.UPDATE) @@ -161,6 +169,16 @@ public R<Boolean> updateContractStatus(String id) { TContract contract = contractService.getById(id); contract.setStatus("1"); + contractService.updateById(contract); + return R.ok(); + } + @Log(title = "合同管理-确认结算", businessType = BusinessType.UPDATE) + @ApiOperation(value = "确认结算") + @PostMapping(value = "/confirmSettlement") + public R<Boolean> confirmSettlement(String id) { + TContract contract = contractService.getById(id); + contract.setStatus("8"); + contractService.updateById(contract); return R.ok(); } @ApiOperation(value = "终止合同剩余未缴费账单列表") @@ -183,36 +201,41 @@ private WordUtil wordUtil; @ApiOperation(value = "生成合同附件") @PostMapping("/set") - public R set(Integer id, HttpServletResponse response){ - TContract contract = contractService.getById(id); - THouse tHouse = houseService.getById(contract.getHouseId()); - Map<String, Object> templateParam = new HashMap<>(5); - templateParam.put("partyOneName", contract.getPartyOneName()); - templateParam.put("partyTwoName", contract.getPartyTwoName()); - templateParam.put("houseAddress", tHouse.getHouseAddress()); - templateParam.put("houseArea", tHouse.getHouseArea()+"m²"); - templateParam.put("startTime", DateUtils.localDateTimeToStringYear(contract.getStartTime())); - templateParam.put("endTime", DateUtils.localDateTimeToStringYear(contract.getEndTime())); - templateParam.put("monthRent", "¥¥"+contract.getMonthRent()+"元"); - templateParam.put("monthRentString", "人民币"+NumberToChineseUtils.numberToChinese(contract.getMonthRent().setScale(2, BigDecimal.ROUND_DOWN).doubleValue())); - templateParam.put("totalYear", "¥¥"+contract.getTotalYear()+"元"); - templateParam.put("totalYearString", "人民币"+NumberToChineseUtils.numberToChinese(contract.getTotalYear().setScale(2, BigDecimal.ROUND_DOWN).doubleValue())); - templateParam.put("payType", contract.getPayType().equals("1")?"月":contract.getPayType().equals("2")?"季":"年"); - templateParam.put("firstRent", "¥"+(contract.getPayType().equals("1")?contract.getMonthRent():contract.getPayType().equals("2")?contract.getMonthRent().multiply(new BigDecimal("3")):contract.getMonthRent().multiply(new BigDecimal("12"))).setScale(2,BigDecimal.ROUND_DOWN)+"元"); - templateParam.put("firstRentString", "人民币"+NumberToChineseUtils.numberToChinese((contract.getPayType().equals("1")?contract.getMonthRent():contract.getPayType().equals("2")?contract.getMonthRent().multiply(new BigDecimal("3")):contract.getMonthRent().multiply(new BigDecimal("12")).setScale(2,BigDecimal.ROUND_DOWN)).doubleValue())); - templateParam.put("nextPayTime", contract.getPayType().equals("1")?"月":contract.getPayType().equals("2")?"季":"年"); - templateParam.put("deposit", "¥"+contract.getDeposit()+"元"); - templateParam.put("depositString", NumberToChineseUtils.numberToChinese(contract.getDeposit().setScale(2, BigDecimal.ROUND_DOWN).doubleValue())); - templateParam.put("partyOnePerson", contract.getPartyOnePerson()); - templateParam.put("partyOnePhone", contract.getPartyOnePhone()); - templateParam.put("partyTwoPerson", contract.getPartyTwoPerson()); - templateParam.put("partyTwoPhone", contract.getPartyTwoPhone()); - String url = wordUtil.generatePdf("/templates", "1_yzj_租赁合同.xml", templateParam, "租赁合同", "E:\\"); - return R.ok(url); + public R<List<String>> set(@RequestBody SetContractDto dto,HttpServletResponse response){ + List<TContract> list = contractService.lambdaQuery().in(TContract::getId, dto.getIds()).list(); + List<String> res = new ArrayList<>(); + for (TContract contract : list) { + THouse tHouse = houseService.getById(contract.getHouseId()); + Map<String, Object> templateParam = new HashMap<>(5); + templateParam.put("partyOneName", contract.getPartyOneName()); + templateParam.put("partyTwoName", contract.getPartyTwoName()); + templateParam.put("houseAddress", tHouse.getHouseAddress()); + templateParam.put("houseArea", tHouse.getHouseArea()+"m²"); + templateParam.put("startTime", DateUtils.localDateTimeToStringYear(contract.getStartTime())); + templateParam.put("endTime", DateUtils.localDateTimeToStringYear(contract.getEndTime())); + templateParam.put("monthRent", "¥¥"+contract.getMonthRent()+"元"); + templateParam.put("monthRentString", "人民币"+NumberToChineseUtils.numberToChinese(contract.getMonthRent().setScale(2, BigDecimal.ROUND_DOWN).doubleValue())); + templateParam.put("totalYear", "¥¥"+contract.getTotalYear()+"元"); + templateParam.put("totalYearString", "人民币"+NumberToChineseUtils.numberToChinese(contract.getTotalYear().setScale(2, BigDecimal.ROUND_DOWN).doubleValue())); + templateParam.put("payType", contract.getPayType().equals("1")?"月":contract.getPayType().equals("2")?"季":"年"); + templateParam.put("firstRent", "¥"+(contract.getPayType().equals("1")?contract.getMonthRent():contract.getPayType().equals("2")?contract.getMonthRent().multiply(new BigDecimal("3")):contract.getMonthRent().multiply(new BigDecimal("12"))).setScale(2,BigDecimal.ROUND_DOWN)+"元"); + templateParam.put("firstRentString", "人民币"+NumberToChineseUtils.numberToChinese((contract.getPayType().equals("1")?contract.getMonthRent():contract.getPayType().equals("2")?contract.getMonthRent().multiply(new BigDecimal("3")):contract.getMonthRent().multiply(new BigDecimal("12")).setScale(2,BigDecimal.ROUND_DOWN)).doubleValue())); + templateParam.put("nextPayTime", contract.getPayType().equals("1")?"月":contract.getPayType().equals("2")?"季":"年"); + templateParam.put("deposit", "¥"+contract.getDeposit()+"元"); + templateParam.put("depositString", NumberToChineseUtils.numberToChinese(contract.getDeposit().setScale(2, BigDecimal.ROUND_DOWN).doubleValue())); + templateParam.put("partyOnePerson", contract.getPartyOnePerson()); + templateParam.put("partyOnePhone", contract.getPartyOnePhone()); + templateParam.put("partyTwoPerson", contract.getPartyTwoPerson()); + templateParam.put("partyTwoPhone", contract.getPartyTwoPhone()); + String url = wordUtil.generatePdf("/templates", "1_yzj_租赁合同.xml", templateParam, "租赁合同", "E:\\"); + res.add(url); + } + + return R.ok(res); } /** - * 光缆巡检列表导出 + * 导出 */ @ApiOperation(value = "导出") @Log(title = "导出", businessType = BusinessType.EXPORT) @@ -220,7 +243,6 @@ public void exportOpticalInspection(@RequestBody TContractQuery query) { List<ContractExport> contractExports = new ArrayList<>(); - List<TContract> exportList = contractService.contractExportList(query); for (TContract contract : exportList) { ContractExport contractExport = new ContractExport(); -- Gitblit v1.7.1