From 10b88a7ff17caf92f3d4e8a550c1085a70c2517a Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 28 五月 2026 17:43:26 +0800
Subject: [PATCH] Merge dev_New_pro into dev_山西_晋和园_pro

---
 src/main/resources/mapper/account/AccountStatementMapper.xml |   78 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 78 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/account/AccountStatementMapper.xml b/src/main/resources/mapper/account/AccountStatementMapper.xml
new file mode 100644
index 0000000..32b1621
--- /dev/null
+++ b/src/main/resources/mapper/account/AccountStatementMapper.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.account.mapper.AccountStatementMapper">
+
+    <select id="listPageAccountStatement" resultType="com.ruoyi.account.bean.vo.StatementAccountVo">
+    SELECT lj.*,
+        <choose>
+        <when test="req.accountType == 1">
+            c.customer_name as customerName
+        </when>
+        <when test="req.accountType == 2">
+            s.supplier_name as customerName
+        </when>
+        <otherwise>
+            '' as customerName
+        </otherwise>
+    </choose>
+    FROM account_statement AS lj
+            <!-- 鍔ㄦ�� LEFT JOIN -->
+            <choose>
+        <when test="req.accountType == 1">
+            LEFT JOIN customer AS c
+                ON lj.customer_id = c.id
+        </when>
+        <when test="req.accountType == 2">
+            LEFT JOIN supplier_manage AS s
+                ON lj.customer_id = s.id
+        </when>
+    </choose>
+    WHERE 1=1
+            <if test="req.accountType != null">
+                 AND lj.account_type = #{req.accountType}
+            </if>
+            <if test="req.customerId != null">
+                 AND lj.customer_id = #{req.customerId}
+            </if>
+            <if test="req.startDate != null and req.endDate != null">
+                  AND DATE_FORMAT(CONCAT(lj.statement_month, '-01'), '%Y-%m-%d')
+                    BETWEEN #{req.startDate} AND #{req.endDate}
+            </if>
+    ORDER BY lj.statement_month DESC
+    </select>
+    <select id="selectVatDtoPage" resultType="com.ruoyi.purchase.dto.VatDto">
+    SELECT
+        month,
+        jTaxAmount,
+        xTaxAmount,
+        (jTaxAmount - xTaxAmount) AS taxAmount
+    FROM (
+        SELECT
+            month,
+            SUM(IF(type = 'purchase', tax_price, 0)) AS xTaxAmount,
+            SUM(IF(type = 'sales', tax_price, 0)) AS jTaxAmount
+        FROM (
+            SELECT
+                DATE_FORMAT(issue_date, '%Y-%m') AS month,
+                tax_price,
+                'sales' AS type
+            FROM account_sales_invoice
+            WHERE status != 1
+            UNION ALL
+            SELECT
+                DATE_FORMAT(issue_date, '%Y-%m') AS month,
+                tax_price,
+                'purchase' AS type
+            FROM account_purchase_invoice
+            WHERE status != 1
+        ) AS all_data
+    GROUP BY month
+    ) AS TT
+     <where>
+            <if test="month != null">
+                and TT.month = #{month}
+            </if>
+     </where>
+    ORDER BY TT.month
+    </select>
+</mapper>

--
Gitblit v1.9.3