From 099ea14bba367fd86f0dde37d908f07cc04c3d39 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 10 四月 2025 15:38:01 +0800 Subject: [PATCH] Merge branch 'dev' of http://120.76.84.145:10101/gitblit/r/java/xizang --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java | 89 +++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 82 insertions(+), 7 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java index 4893b54..7077198 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java @@ -3,22 +3,39 @@ import com.ruoyi.common.basic.PageInfo; import com.ruoyi.common.core.domain.R; -import com.ruoyi.common.exception.ServiceException; -import com.ruoyi.system.dto.*; -import com.ruoyi.system.model.TBill; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.system.dto.BillStatisticsDto; +import com.ruoyi.system.dto.CachPayDto; +import com.ruoyi.system.dto.OfflinePayCheckDto; +import com.ruoyi.system.dto.SmsByBillDto; +import com.ruoyi.system.dto.TBillDto; +import com.ruoyi.system.dto.TbillSaveDto; +import com.ruoyi.system.model.TBillConfirm; import com.ruoyi.system.model.TBillDetail; +import com.ruoyi.system.model.TContract; import com.ruoyi.system.query.TBillQuery; +import com.ruoyi.system.query.TContractQuery; +import com.ruoyi.system.service.TBillConfirmService; import com.ruoyi.system.service.TBillDetailService; import com.ruoyi.system.service.TBillService; +import com.ruoyi.system.service.TContractService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; 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.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; import javax.validation.constraints.NotEmpty; +import java.math.BigDecimal; import java.util.List; +import java.util.Objects; /** * <p> @@ -39,26 +56,75 @@ @Autowired TBillDetailService tBillDetailService; + @Autowired + TBillConfirmService tBillConfirmService; + + @Autowired + TContractService contractService; @PreAuthorize("@ss.hasPermi('bill:list')") @PostMapping("list") @ApiOperation("分页查询账单列表") public R<PageInfo<TBillDto>> list(@RequestBody TBillQuery query){ + query.setBusinessDeptId(SecurityUtils.getBusinessDeptId()); PageInfo<TBillDto> pageInfo = tBillService.queryPage(query); return R.ok(pageInfo); + } + + @ApiOperation("统计") + @PostMapping("statistics") + public R<BillStatisticsDto> statistics(@RequestBody TBillQuery query){ + query.setBusinessDeptId(SecurityUtils.getBusinessDeptId()); + BillStatisticsDto dto = tBillService.statistics(query); + return R.ok(dto); + } + + + @ApiOperation(value = "获取合同分页列表") + @PostMapping(value = "/contractList") + public R<PageInfo<TContract>> contractList(@RequestBody TContractQuery query) { + query.setBusinessDeptId(SecurityUtils.getBusinessDeptId()); + return R.ok(contractService.queryPage(query)); } @PreAuthorize("@ss.hasPermi('bill:list:addRent')") @PostMapping("add") @ApiOperation("新增账单") public R<PageInfo<TBillDto>> add(@Validated @RequestBody TbillSaveDto bill){ + String businessDeptId = SecurityUtils.getBusinessDeptId(); + if (SecurityUtils.getBusinessDeptId().equals("0")) { + TContract contract = contractService.getById(bill.getContractId()); + if (Objects.nonNull(contract)) { + businessDeptId = contract.getBusinessDeptId(); + } + } + bill.setBusinessDeptId(businessDeptId); tBillService.saveBill(bill); + return R.ok(); + } + + + @PreAuthorize("@ss.hasPermi('bill:list:editAmount')") + @PostMapping("editAmount") + @ApiOperation("修改账单金额") + public R editAmount(@Validated @RequestBody TbillSaveDto bill){ + if (StringUtils.isEmpty(bill.getId())){ + return R.fail("参数错误"); + } + if (bill.getEditAmount().compareTo(BigDecimal.ZERO)==0){ + return R.fail("调整金额不能为0"); + } + + tBillService.editAmount(bill); return R.ok(); } @ApiOperation("通过ID查找详情") @GetMapping("getDetailById") - public R<TBillDto> getDetailById(@Validated @NotEmpty String id){ + public R<TBillDto> getDetailById(@RequestParam String id){ + if (StringUtils.isEmpty(id)){ + return R.fail(); + } TBillDto dto = tBillService.getDetailByBillId(id); if (dto.getBillType().equals("3")){ List<TBillDetail> details = tBillDetailService.getByBillId(id); @@ -66,6 +132,10 @@ if (detail.getLiveType()==1)dto.setWater(detail); //水费 else dto.setElect(detail); //电费 } + } + if (StringUtils.isNotEmpty(dto.getConfirmId())){ + TBillConfirm confirm = tBillConfirmService.getById(dto.getConfirmId()); + dto.setConfirm(confirm); } return R.ok(dto); } @@ -96,16 +166,21 @@ return R.ok(failNum); } + + + @PreAuthorize("@ss.hasPermi('bill:list:receipt')") @ApiOperation("收款") @PostMapping("cashPay") - public R cashPay(@RequestBody OfflinePayDto offlinePayDto){ - return null; + public R cashPay(@RequestBody CachPayDto cachPayDto){ + tBillService.cashPay(cachPayDto); + return R.ok(); } + } -- Gitblit v1.7.1