From 1fad0578c97abbb7fc30f59eb1de0f23f08ddde1 Mon Sep 17 00:00:00 2001 From: zhangmei <645025773@qq.com> Date: 星期四, 27 三月 2025 15:21:15 +0800 Subject: [PATCH] 流水、开票营业部权限 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 105 insertions(+), 6 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 5b6b535..81ad5e9 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,14 +3,27 @@ import com.ruoyi.common.basic.PageInfo; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.exception.ServiceException; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.system.dto.*; import com.ruoyi.system.model.TBill; +import com.ruoyi.system.model.TBillConfirm; +import com.ruoyi.system.model.TBillDetail; import com.ruoyi.system.query.TBillQuery; +import com.ruoyi.system.service.ISysUserService; +import com.ruoyi.system.service.TBillConfirmService; +import com.ruoyi.system.service.TBillDetailService; import com.ruoyi.system.service.TBillService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -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.RestController; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.validation.constraints.NotEmpty; +import java.util.List; /** * <p> @@ -20,6 +33,7 @@ * @author xiaochen * @since 2025-01-17 */ +@Api(tags = "账单管理") @RestController @RequestMapping("/t-bill") public class TBillController { @@ -27,12 +41,97 @@ @Autowired TBillService tBillService; + @Autowired + TBillDetailService tBillDetailService; + + @Autowired + TBillConfirmService tBillConfirmService; + + @PreAuthorize("@ss.hasPermi('bill:list')") @PostMapping("list") - public R<PageInfo<TBill>> list(@RequestBody TBillQuery query){ - PageInfo<TBill> pageInfo = tBillService.queryPage(query); + @ApiOperation("分页查询账单列表") + public R<PageInfo<TBillDto>> list(@RequestBody TBillQuery query){ + query.setBusinessDeptId(SecurityUtils.getBusinessDeptId()); + PageInfo<TBillDto> pageInfo = tBillService.queryPage(query); return R.ok(pageInfo); } + @PreAuthorize("@ss.hasPermi('bill:list:addRent')") + @PostMapping("add") + @ApiOperation("新增账单") + public R<PageInfo<TBillDto>> add(@Validated @RequestBody TbillSaveDto bill){ + bill.setBusinessDeptId(SecurityUtils.getBusinessDeptId()); + tBillService.saveBill(bill); + return R.ok(); + } + + @ApiOperation("通过ID查找详情") + @GetMapping("getDetailById") + 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); + for (TBillDetail detail : details) { + 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); + } + + + @PreAuthorize("@ss.hasPermi('bill:list:paid')") + @ApiOperation("确认线下缴费") + @PostMapping("checkOfflinePay") + public R checkOfflinePay(@Validated @RequestBody OfflinePayCheckDto dto){ + tBillService.checkOfflinePay(dto); + return R.ok(); + } + + @PreAuthorize("@ss.hasPermi('bill:list:sendMsg')") + @ApiOperation("账单批量发送短信通知") + @PostMapping("sendSmsByBillIds") + public R sendSmsByBillIds(@Validated @RequestBody SmsByBillDto dto){ + Integer failNum = tBillService.sendSmsByBillIds(dto); + return R.ok(failNum); + } + + + @PreAuthorize("@ss.hasPermi('bill:list:sendMail')") + @ApiOperation("账单批量发送邮箱通知") + @PostMapping("sendMailBatchByBillIds") + public R sendMailBatchByBillIds(@Validated @RequestBody SmsByBillDto dto){ + Integer failNum = tBillService.sendMailBatchByBillIds(dto); + return R.ok(failNum); + } + + + + + @PreAuthorize("@ss.hasPermi('bill:list:receipt')") + @ApiOperation("收款") + @PostMapping("cashPay") + public R cashPay(@RequestBody CachPayDto cachPayDto){ + tBillService.cashPay(cachPayDto); + return R.ok(); + } + + + @ApiOperation("统计") + @GetMapping("statistics") + public R<BillStatisticsDto> statistics(){ + BillStatisticsDto dto = tBillService.statistics(SecurityUtils.getBusinessDeptId()); + return R.ok(dto); + } + + } -- Gitblit v1.7.1