无关风月
2025-02-20 04d2f146d27f9e4dbfb52d71b3092db764629167
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java
@@ -3,10 +3,16 @@
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.system.query.TBillQuery;
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.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -20,6 +26,7 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Api(tags = "账单管理")
@RestController
@RequestMapping("/t-bill")
public class TBillController {
@@ -27,12 +34,56 @@
    @Autowired
    TBillService tBillService;
    @PreAuthorize("@ss.hasPermi('system: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){
        PageInfo<TBillDto> pageInfo = tBillService.queryPage(query);
        return R.ok(pageInfo);
    }
    @PreAuthorize("@ss.hasPermi('system:bill:add')")
    @PostMapping("add")
    @ApiOperation("新增账单")
    public R<PageInfo<TBillDto>> add(@Validated @RequestBody TbillSaveDto bill){
        tBillService.saveBill(bill);
        return R.ok();
    }
    @PreAuthorize("@ss.hasPermi('system:bill:checkOfflinePay')")
    @ApiOperation("确认线下缴费")
    @PostMapping("checkOfflinePay")
    public R checkOfflinePay(@Validated @RequestBody  OfflinePayCheckDto dto){
        tBillService.checkOfflinePay(dto);
        return R.ok();
    }
    @PreAuthorize("@ss.hasPermi('system:bill:sendSmsByBillIds')")
    @ApiOperation("账单批量发送短信通知")
    @PostMapping("sendSmsByBillIds")
    public R sendSmsByBillIds(@Validated @RequestBody SmsByBillDto dto){
        Integer failNum = tBillService.sendSmsByBillIds(dto);
        return R.ok(failNum);
    }
    @PreAuthorize("@ss.hasPermi('system:bill:sendMailBatchByBillIds')")
    @ApiOperation("账单批量发送短信通知")
    @PostMapping("sendMailBatchByBillIds")
    public R sendMailBatchByBillIds(@Validated @RequestBody SmsByBillDto dto){
        Integer failNum = tBillService.sendMailBatchByBillIds(dto);
        return R.ok(failNum);
    }
    @PreAuthorize("@ss.hasPermi('system:bill:cashPay')")
    @ApiOperation("收款")
    @PostMapping("cashPay")
    public R cashPay(@RequestBody OfflinePayDto offlinePayDto){
        return null;
    }
}