From 10fbab11ba9f3179ffa5ec5d3c6dc1c0eefec075 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 12 二月 2025 10:53:27 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/xiaochen991015/xizang --- ruoyi-system/src/main/java/com/ruoyi/system/dto/SetContractDto.java | 13 ++++++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java | 62 +++++++++++++++++-------------- ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml | 35 +++++++++++++---- ruoyi-system/src/main/java/com/ruoyi/system/query/TContractQuery.java | 4 ++ ruoyi-system/src/main/java/com/ruoyi/system/vo/TContractVO.java | 2 + 5 files changed, 79 insertions(+), 37 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 775d994..2e347cd 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; @@ -159,6 +160,7 @@ TCheckAcceptRecord tCheckAcceptRecord = checkAcceptRecordService.lambdaQuery().eq(TCheckAcceptRecord::getContractId, id).one(); res.setCheckResult(Objects.nonNull(tCheckAcceptRecord)?tCheckAcceptRecord.getCheckResult():false); res.setPayMoney(payMoney); + return R.ok(res); } @Log(title = "合同管理-撤销审批", businessType = BusinessType.UPDATE) @@ -189,36 +191,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) @@ -226,7 +233,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(); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/SetContractDto.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/SetContractDto.java new file mode 100644 index 0000000..7a6767f --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/SetContractDto.java @@ -0,0 +1,13 @@ +package com.ruoyi.system.dto; + +import com.ruoyi.system.model.TBill; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import java.util.List; + +@Data +@ApiModel(value = "批量导出合同附件") +public class SetContractDto { + private List<String> ids; +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/query/TContractQuery.java b/ruoyi-system/src/main/java/com/ruoyi/system/query/TContractQuery.java index 5d90194..52031d9 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/query/TContractQuery.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/query/TContractQuery.java @@ -5,6 +5,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.List; + @Data @ApiModel(value = "合同分页列表查询Query") public class TContractQuery extends BasePage { @@ -16,4 +18,6 @@ private Integer contractName; @ApiModelProperty(value = "合同状态 1=待提交 2=待审批 3=未签订 4=已签订") private Integer status; + @ApiModelProperty(value = "选中的行") + private List<String> ids; } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TContractVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TContractVO.java index 789cda4..ba62b7b 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TContractVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TContractVO.java @@ -34,4 +34,6 @@ private BigDecimal payMoney; @ApiModelProperty(value = "房屋验收结果") private Boolean checkResult; + @ApiModelProperty(value = "周期 单位年") + private Integer cycleTime; } diff --git a/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml index 5a57cac..9728d27 100644 --- a/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml @@ -88,15 +88,32 @@ AND t3.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} </select> <select id="contractExportList" resultType="com.ruoyi.system.model.TContract"> - select t1.*,t2.contract_number as contractNumber,t3.resident_name as residentName,t3.phone as phone - from t_bill t1 - left join t_contract t2 on t1.contract_id = t2.id - left join t_resident t3 on t2.tenant_id = t3.id - where t2.id = #{query.id} - and (t1.pay_fees_status = 1 or t1.pay_fees_status = 4) - AND t1.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} - AND t2.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} - AND t3.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} + select t1.* from t_contract t1 + <where> + <if test="query.ids != null and query.ids.size()>0"> + AND t1.id IN + <foreach collection="query.ids" item="item" open="(" separator="," close=")"> + #{item} + </foreach> + </if> + <if test="query.ids == null and query.ids.size()=0"> + <if test="query.partyTwoName != null and query.partyTwoName != ''"> + and t1.party_two_name like concat('%',#{query.partyTwoName},'%') + </if> + <if test="query.contractNumber != null and query.contractNumber != ''"> + and t1.contract_number like concat('%',#{query.contractNumber},'%') + </if> + <if test="query.contractName != null and query.contractName != ''"> + and t1.contract_name like concat('%',#{query.contractName},'%') + </if> + <if test="query.status != null"> + and t1.status = #{query.status} + </if> + </if> + + AND t1.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()} + + </where> </select> </mapper> -- Gitblit v1.7.1