ProducePaymentCheckBillOrderController.java 7.2 KB
package com.order.erp.controller;

import com.order.erp.common.annotation.AnonymousAccess;
import com.order.erp.common.constant.ServerResult;
import com.order.erp.common.excel4j.exceptions.Excel4JException;
import com.order.erp.common.jsr303.OperateGroup;
import com.order.erp.domain.dto.order.ProducePaymentCheckBillOrderDO;
import com.order.erp.domain.vo.order.*;
import com.order.erp.service.order.ProducePaymentCheckBillOrderService;
import io.swagger.annotations.ApiOperation;
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;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * 生产科对账单应收账单(ProducePaymentCheckBillOrder)表控制
 *
 * @author makejava
 * @since 2024-08-05 16:26:35
 */
@RestController
@RequestMapping("/order/erp/check_bill/")
public class ProducePaymentCheckBillOrderController {
    /**
     * 服务对象
     */
    @Resource
    private ProducePaymentCheckBillOrderService producePaymentCheckBillOrderService;

    /**
     * 分页查询
     *
     * @param queryVO 查询条件
     * @return 查询结果
     */
    @PostMapping("/list_by_page")
    public ServerResult listByPage(@RequestBody @Validated({OperateGroup.List.class}) ProducePaymentCheckBillOrderQueryVO queryVO) {
        return producePaymentCheckBillOrderService.listByPage(queryVO);
    }

    /**
     * 基础订单查询 wanchen
     *
     * @param queryVO 查询条件
     * @return 查询结果
     */
    @PostMapping("/list_base_order_info_by")
    public ServerResult listBaseOrderInfoBy(@RequestBody @Validated ProducePaymentBaseOrderQueryVO queryVO) {
        return producePaymentCheckBillOrderService.listBaseOrderInfoBy(queryVO);
    }

    /**
     * 分析列表  wanchen
     *
     * @param queryVO 查询条件
     * @return 查询结果
     */
    @PostMapping("/list_analysis_by")
    public ServerResult listAnalysisBy(@RequestBody @Validated({OperateGroup.List.class}) ProducePaymentCheckBillOrderQueryVO queryVO) {
        return producePaymentCheckBillOrderService.listAnalysisBy(queryVO);
    }

    /**
     * 导出分析列表 wanchen
     *
     * @param queryVO 查询条件
     * @return 查询结果
     */
    @PostMapping(value = "/export")
    @ApiOperation("导出分析列表")
    @AnonymousAccess
    public void export(HttpServletResponse response, @RequestBody @Validated ProducePaymentCheckBillOrderQueryVO queryVO) throws IOException, Excel4JException {
        producePaymentCheckBillOrderService.export(response, queryVO);
    }

    /**
     * 创建生产科应付单据  wanchen 2
     *
     * @param createVO 数据VO
     * @return 新增结果
     */
    @PostMapping("/create")
    public ServerResult create(@RequestBody ProducePaymentCheckBillCreateVO createVO) {
        return producePaymentCheckBillOrderService.create(createVO);
    }

    /**
     * 获取生产科应回款日期   wanchen 2
     *
     * @param createVO 数据VO
     * @return 新增结果
     */
    @PostMapping("/get_payed_date")
    public ServerResult getPayedDate(@RequestBody ProducePaymentCheckBillCreateVO createVO) {
        return producePaymentCheckBillOrderService.getPayedDate(createVO);
    }

    /**
     * 更新扣款信息  wanchen
     *
     * @param deductInfoVO 数据VO
     * @return 编辑结果
     */
    @PostMapping("/update_deduct_info")
    public ServerResult updateDeductInfo(@RequestBody ProducePaymentCheckBillDeductInfoVO deductInfoVO) {
        return producePaymentCheckBillOrderService.updateDeductInfo(deductInfoVO);
    }

    /**
     * 更新其他金额信息  wanchen
     *
     * @param amountInfoVO 数据VO
     * @return 编辑结果
     */
    @PostMapping("/update_amount_info")
    public ServerResult updateAmountInfo(@RequestBody ProducePaymentCheckBillAmountInfoVO amountInfoVO) {
        return producePaymentCheckBillOrderService.updateAmountInfo(amountInfoVO);
    }

    /**
     * 更新发票信息 wanchen
     *
     * @param invoiceInfoVO 数据VO
     * @return 编辑结果
     */
    @PostMapping("/update_invoice_info")
    public ServerResult updateInvoiceInfo(@RequestBody ProducePaymentCheckBillInvoiceInfoVO invoiceInfoVO) {
        return producePaymentCheckBillOrderService.updateInvoiceInfo(invoiceInfoVO);
    }

    /**
     * 提交审核
     *
     * @param commitApplyVO 数据VO
     * @return 编辑结果
     */
    @PostMapping("/commit_apply")
    public ServerResult commitApply(@RequestBody ProducePaymentCheckBillCommitApplyVO commitApplyVO) {
        return producePaymentCheckBillOrderService.commitApply(commitApplyVO);
    }

    /**
     * 删除数据 wanchen
     *
     * @param producePaymentCheckBillOrderQueryVO 查询条件
     * @return 删除是否成功
     */
    @PostMapping("/delete_by_id")
    public ServerResult deleteById(@RequestBody ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {
        return producePaymentCheckBillOrderService.deleteById(producePaymentCheckBillOrderQueryVO);
    }
    /**
     * 获取扣款单  wanchen 2
     *
     * @param producePaymentCheckBillOrderQueryVO 查询条件
     * @return 扣款单
     */
    @PostMapping("/getDeductUrl_by_id")
    public ServerResult getDeductUrl(@RequestBody ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {
        //一定要保证文件中包含?和/.这样才不会报错。
        return producePaymentCheckBillOrderService.getDeductUrlById(producePaymentCheckBillOrderQueryVO);
    }
    /**
     * 获取生产科发票 wanchen 2
     *
     * @param producePaymentCheckBillOrderQueryVO 查询条件
     * @return 扣款单
     */
    @PostMapping("/getInvoiceUrl_by_id")
    public ServerResult getInvoiceUrl(@RequestBody ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {
        return producePaymentCheckBillOrderService.getInvoiceUrlById(producePaymentCheckBillOrderQueryVO);
    }
    /**
     * 审核付款单导出
     *
     * @param queryVO 查询条件
     * @return 扣款单
     */
    @PostMapping("/exportReceipt")
    @AnonymousAccess
    public void exportReceipt(HttpServletResponse response, @RequestBody ProducePaymentCheckBillOrderDO queryVO) throws IOException {
        producePaymentCheckBillOrderService.exportReceipt(response,queryVO);
    }
    /**
     * 设置应付款日期  wanchen
     *
     * @param producePaymentCheckBillCreatevo 查询条件
     * @return 日期
     */
    @PostMapping("/setPayedDate")
    public void setPayedDate(@RequestBody ProducePaymentCheckBillCreateVO producePaymentCheckBillCreatevo) {
       producePaymentCheckBillOrderService.setPayedDate(producePaymentCheckBillCreatevo);
    }

    /**
     *设置备注信息 wanchen 2
     * @param producePaymentCheckBillCreatevo 备注信息
     * @return
     */
    @PostMapping("/notes")
    public void byIdAddNotes(@RequestBody ProducePaymentCheckBillCreateVO producePaymentCheckBillCreatevo) {
        producePaymentCheckBillOrderService.byIdAddNotes(producePaymentCheckBillCreatevo);
    }
}