chenrui
4 天以前 beeba1259f983a5f92e6b8137d2fb05389f184b4
开票台账功能修改
已修改5个文件
109 ■■■■■ 文件已修改
src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java
@@ -85,12 +85,12 @@
    /**
     * 开票台账导出
     * @param response
     * @param invoiceLedgerDto
     * @param invoiceRegistrationProductDto
     * @return
     */
    @PostMapping("/export")
    public void invoiceLedgerExport(HttpServletResponse response, InvoiceLedgerDto invoiceLedgerDto) {
        invoiceLedgerService.invoiceLedgerExport(response, invoiceLedgerDto);
    public void invoiceLedgerExport(HttpServletResponse response, InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
        invoiceLedgerService.invoiceLedgerExport(response, invoiceRegistrationProductDto);
    }
    /**
src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java
@@ -46,4 +46,6 @@
    @ApiModelProperty(value = "发票文件名")
    private String invoiceFileName;
    private String searchText;
}
src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java
@@ -54,10 +54,10 @@
    /**
     * 附件下载
     * @param response
     * @param invoiceLedgerDto
     * @param invoiceRegistrationProductDto
     * @return
     */
    void invoiceLedgerExport(HttpServletResponse response ,InvoiceLedgerDto invoiceLedgerDto);
    void invoiceLedgerExport(HttpServletResponse response ,InvoiceRegistrationProductDto invoiceRegistrationProductDto);
    /**
     * 开票台账详情
src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java
@@ -12,6 +12,7 @@
import com.ruoyi.sales.excel.InvoiceLedgerExcelDto;
import com.ruoyi.sales.mapper.InvoiceLedgerFileMapper;
import com.ruoyi.sales.mapper.InvoiceLedgerMapper;
import com.ruoyi.sales.mapper.InvoiceRegistrationMapper;
import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper;
import com.ruoyi.sales.pojo.InvoiceLedger;
import com.ruoyi.sales.pojo.InvoiceLedgerFile;
@@ -49,6 +50,9 @@
    @Autowired
    private InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
    @Autowired
    private InvoiceRegistrationMapper invoiceRegistrationMapper;
    /**
     * 开票台账新增
@@ -158,13 +162,13 @@
    /**
     * 附件下载
     * @param response
     * @param invoiceLedgerDto
     * @param invoiceRegistrationProductDto
     * @return
     */
    @Override
    public void invoiceLedgerExport(HttpServletResponse response, InvoiceLedgerDto invoiceLedgerDto) {
        List<InvoiceLedgerDto> invoiceLedgerDtoList = invoiceLedgerMapper.invoiceLedgerList(invoiceLedgerDto);
        List<InvoiceLedgerExcelDto> invoiceLedgerExcelDtoList = invoiceLedgerDtoList.stream().map(item -> {
    public void invoiceLedgerExport(HttpServletResponse response, InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
        List<InvoiceRegistrationProductDto> invoiceRegistrationProductList = invoiceRegistrationProductMapper.invoiceRegistrationProductList(invoiceRegistrationProductDto);
        List<InvoiceLedgerExcelDto> invoiceLedgerExcelDtoList = invoiceRegistrationProductList.stream().map(item -> {
            InvoiceLedgerExcelDto invoiceLedgerExcelDto = new InvoiceLedgerExcelDto();
            BeanUtils.copyProperties(item, invoiceLedgerExcelDto);
            return invoiceLedgerExcelDto;
src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml
@@ -6,37 +6,57 @@
    <select id="invoiceRegistrationProductList" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto">
        SELECT
            id   ,
            sales_ledger_id           ,
            sales_ledger_product_id   ,
            invoice_registration_id   ,
            product_category          ,
            specification_model       ,
            unit                      ,
            quantity                  ,
            tax_rate                  ,
            tax_inclusive_unit_price  ,
            tax_inclusive_total_price ,
            tax_exclusive_total_price ,
            invoice_type              ,
            invoice_num               ,
            invoice_amount            ,
            no_invoice_num            ,
            no_invoice_amount         ,
            create_time               ,
            create_user               ,
            update_time               ,
            update_user               ,
            tenant_id
        FROM invoice_registration_product
        T1.id   ,
        T1.sales_ledger_id           ,
        T1.sales_ledger_product_id   ,
        T1.invoice_registration_id   ,
        T1.product_category          ,
        T1.specification_model       ,
        T1.unit                      ,
        T1.quantity                  ,
        T1.tax_rate                  ,
        T1.tax_inclusive_unit_price  ,
        T1.tax_inclusive_total_price ,
        T1.tax_exclusive_total_price ,
        T1.invoice_type              ,
        T1.invoice_num               ,
        T1.invoice_amount            ,
        T1.no_invoice_num            ,
        T1.no_invoice_amount         ,
        T1.create_time               ,
        T1.create_user               ,
        T1.update_time               ,
        T1.update_user               ,
        T1.tenant_id,
        T2.sales_contract_no,
        T2.customer_contract_no,
        T2.customer_name,
        T3.invoice_no,
        T3.invoice_total,
        T3.invoice_person,
        T3.invoice_date,
        T4.invoiceFileName
        FROM invoice_registration_product T1
        LEFT JOIN sales_ledger T2 ON T1.sales_ledger_id = T2.id
        LEFT JOIN invoice_ledger T3 ON T1.id = T3.invoice_registration_product_id
        LEFT JOIN (
        SELECT
        invoice_ledger_id,
        GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
        FROM invoice_ledger_file GROUP BY invoice_ledger_id
        ) T4 ON T4.invoice_ledger_id = T3.id
        <where>
            <if test="invoiceRegistrationProductDto.invoiceRegistrationId != null">
                invoice_registration_id = #{invoiceRegistrationProductDto.invoiceRegistrationId}
            <if test="invoiceRegistrationProductDto.searchText != null and invoiceRegistrationProductDto.searchText != '' ">
                AND (T2.sales_contract_no LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
                OR
                T2.customer_name LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
                )
            </if>
            <if test="invoiceRegistrationProductDto.salesLedgerId != null">
                sales_ledger_id = #{invoiceRegistrationProductDto.salesLedgerId}
            <if test="invoiceRegistrationProductDto.invoiceDate != null">
                AND T3.invoice_date = #{invoiceRegistrationProductDto.invoiceDate}
            </if>
        </where>
        ORDER BY T1.create_time DESC
    </select>
    <select id="invoiceRegistrationProductPage" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto">
@@ -80,6 +100,17 @@
                GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
            FROM invoice_ledger_file GROUP BY invoice_ledger_id
        ) T4 ON T4.invoice_ledger_id = T3.id
        <where>
            <if test="invoiceRegistrationProductDto.searchText != null and invoiceRegistrationProductDto.searchText != '' ">
                AND (T2.sales_contract_no LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
                         OR
                     T2.customer_name LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
                     )
            </if>
            <if test="invoiceRegistrationProductDto.invoiceDate != null">
                AND T3.invoice_date = #{invoiceRegistrationProductDto.invoiceDate}
            </if>
        </where>
        ORDER BY T1.create_time DESC
    </select>
</mapper>