Browse Source

fix:跨年度上报收入统计查询

master
wang 1 month ago
parent
commit
b04fb9b526
  1. 9
      yun-admin/src/main/resources/mapper/cost/FirmReportsMapper.xml

9
yun-admin/src/main/resources/mapper/cost/FirmReportsMapper.xml

@ -129,13 +129,20 @@
</select> </select>
<!-- 查询当前季度之前尚未提交的季度列表 --> <!-- 查询当前季度之前尚未提交的季度列表 -->
<!-- 规则:Q1不检查;Q2查Q1;Q3查Q1,Q2;Q4查Q1,Q2,Q3 --> <!-- 规则:Q1不检查;Q2查Q1;Q3查Q1,Q2;Q4查Q1,Q2,Q3;且需要支持跨年校验上一年度的所有季度(仅针对存在历史年度报表记录的律所) -->
<select id="findUnsubmittedEarlierQuarters" resultType="java.lang.String"> <select id="findUnsubmittedEarlierQuarters" resultType="java.lang.String">
SELECT CONCAT(q.year_val, '年第', q.quarter_num, '季度') AS period_name SELECT CONCAT(q.year_val, '年第', q.quarter_num, '季度') AS period_name
FROM ( FROM (
<!-- 当前年份的前置季度 -->
SELECT #{year} AS year_val, 1 AS quarter_num WHERE #{currentQuarter} &gt; 1 SELECT #{year} AS year_val, 1 AS quarter_num WHERE #{currentQuarter} &gt; 1
UNION ALL SELECT #{year}, 2 WHERE #{currentQuarter} &gt; 2 UNION ALL SELECT #{year}, 2 WHERE #{currentQuarter} &gt; 2
UNION ALL SELECT #{year}, 3 WHERE #{currentQuarter} &gt; 3 UNION ALL SELECT #{year}, 3 WHERE #{currentQuarter} &gt; 3
<!-- 上一年度的所有季度(仅当该律所在上一年或更早存在有效报表记录时才进行校验,避免全新注册律所被强行校验历史年份) -->
UNION ALL SELECT #{year} - 1, 1 WHERE EXISTS (SELECT 1 FROM t_firm_reports WHERE firm_id = #{firmId} AND declare_year &lt; #{year} AND del_flag = 0 LIMIT 1)
UNION ALL SELECT #{year} - 1, 2 WHERE EXISTS (SELECT 1 FROM t_firm_reports WHERE firm_id = #{firmId} AND declare_year &lt; #{year} AND del_flag = 0 LIMIT 1)
UNION ALL SELECT #{year} - 1, 3 WHERE EXISTS (SELECT 1 FROM t_firm_reports WHERE firm_id = #{firmId} AND declare_year &lt; #{year} AND del_flag = 0 LIMIT 1)
UNION ALL SELECT #{year} - 1, 4 WHERE EXISTS (SELECT 1 FROM t_firm_reports WHERE firm_id = #{firmId} AND declare_year &lt; #{year} AND del_flag = 0 LIMIT 1)
) q ) q
WHERE NOT EXISTS ( WHERE NOT EXISTS (
SELECT 1 SELECT 1

Loading…
Cancel
Save