ソースを参照

分销费手续费管理费报表基础架构

cuixinpeng 2 年 前
コミット
fea13256ea

+ 19 - 5
src/main/java/com/ydtech/modules/report/controller/ReportController.java

@@ -218,28 +218,42 @@ public class ReportController extends BaseController {
     public HttpResult<String> exportInsPlySettleReportListData(@RequestBody InsPlySettleReportReqVo insPlySettleReportReqVo) {
         return insPlySettleService.exportInsPlySettleReportList(insPlySettleReportReqVo);
     }
-
+    /*--------------------------------------------------------------------------*/
     @PostMapping("/getPayApplyUserReport")
-    @ApiOperation(value = "分页获取应付分销费和手续费统计清单数据")
+    @ApiOperation(value = "报表-应付分销费和手续费统计-查询")
     public HttpResult<BasePageResult<PayApplyUserReportResVo>> getPayApplyUserReport(@RequestBody PayApplyUserReportReqVo payApplyUserReportReqVo) {
         BasePageResult<PayApplyUserReportResVo> quoteResult = reportService.getPayApplyUserReportData(payApplyUserReportReqVo);
         return HttpResult.ok("success", quoteResult);
     }
     @PostMapping("/exportPayApplyUserReport")
-    @ApiOperation(value = "导出应付统计分销费和手续费清单数据")
+    @ApiOperation(value = "报表-应付统计分销费和手续费清单-导出清单")
     public HttpResult<String> exportPayApplyUserReport(@RequestBody PayApplyUserReportReqVo payApplyUserReportReqVo) {
         return reportService.exportPayApplyUserReportData(payApplyUserReportReqVo);
     }
 
+    @PostMapping("/exportPayApplyUserReporttListData")
+    @ApiOperation(value = "报表-应付统计分销费和手续费清单-导出清单明细")
+    public HttpResult<String> exportPayApplyUserReportListData(@RequestBody PayApplyUserReportReqVo payApplyUserReportReqVo) {
+        return reportService.exportPayApplyUserReportData(payApplyUserReportReqVo);
+    }
+
+    /*--------------------------------------------------------------------------*/
     @PostMapping("/getPayApplyDeptReport")
-    @ApiOperation(value = "分页获取应付管理费统计清单数据")
+    @ApiOperation(value = "报表-应付管理费统计-查询")
     public HttpResult<BasePageResult<PayApplyDeptReportResVo>> getPayApplyDeptReport(@RequestBody PayApplyDeptReportReqVo payApplyDeptReportReqVo) {
         BasePageResult<PayApplyDeptReportResVo> quoteResult = reportService.getPayApplyDeptReportData(payApplyDeptReportReqVo);
         return HttpResult.ok("success", quoteResult);
     }
     @PostMapping("/exportPayApplyDeptReport")
-    @ApiOperation(value = "导出应付统计管理费清单数据")
+    @ApiOperation(value = "报表-应付统计管理费-导出清单")
     public HttpResult<String> exportPayApplyDeptReport(@RequestBody PayApplyDeptReportReqVo payApplyDeptReportReqVo) {
         return reportService.exportPayApplyDeptReportData(payApplyDeptReportReqVo);
     }
+
+    @PostMapping("/exportPayApplyDeptReportListData")
+    @ApiOperation(value = "报表-应付统计管理费-导出清单明细")
+    public HttpResult<String> exportPayApplyDeptReportListData(@RequestBody PayApplyDeptReportReqVo payApplyDeptReportReqVo) {
+        return reportService.exportPayApplyDeptReportData(payApplyDeptReportReqVo);
+
+    }
 }

+ 72 - 10
src/main/resources/mapper/modules/report/ReportInsurancePolicyMapper.xml

@@ -774,23 +774,85 @@
           SUM( CASE feetype  WHEN '2'  THEN paidfee  ELSE 0  END )  AS paid_retail_premiums,
           SUM( CASE feetype  WHEN '2'  THEN totalfee-paidfee  ELSE 0  END )  AS wait_pay_retail_premiums
         FROM report_payable_basedata  p WHERE 1=1
-
+        <choose>
+            <!--条件中团队不为空时,直接拼接团队-->
+            <when test="reportReqVo.teamCode != null and reportReqVo.teamCode != ''">
+                and p.deptid = #{reportReqVo.teamCode}
+            </when>
+            <!--条件中团队为空时,使用机构模糊查询-->
+            <otherwise>
+                <if test="reportReqVo.deptId != null and reportReqVo.deptId != ''">
+                    and p.deptid like #{reportReqVo.deptId}"%"
+                </if>
+            </otherwise>
+        </choose>
+        <if test="reportReqVo.userId != null and reportReqVo.userId != ''">
+            and p.userId = #{reportReqVo.userId}
+        </if>
+        <if test="reportReqVo.insCompany != null and reportReqVo.insCompany != ''">
+            and p.inscompany = #{reportReqVo.insCompany}
+        </if>
+        <if test="reportReqVo.quoteStartDate != null and reportReqVo.quoteEndDate != null">
+            and p.signdate  between #{reportReqVo.quoteStartDate} AND #{reportReqVo.quoteEndDate}
+        </if>
+        group by deptid
+        <if test="reportReqVo.userId != null and reportReqVo.userId != ''">
+            ,userid
+        </if>
     </select>
     <select id="queryPayApplyUserReportDataCount" resultType="Long">
         select
         count(1)
         from (
-        SELECT
-        count(distinct policyno) policy_count,
-        SUM(p.`sumpremium`) sumpremium,
-        SUM(p.`supervise_costs_premiums`) supervise_costs_premiums,
-        SUM(p.`other_costs_premiums`) other_costs_premiums,
-        SUM(p.`sum_costs_premiums`) sum_costs_premiums
-        FROM
-        report_payable_basedata p WHERE 1=1
+        SELECT deptid,userid,
+        SUM( CASE feetype  WHEN '1'  THEN totalfee  ELSE 0  END )  AS sum_costs_premiums,
+        SUM( CASE feetype  WHEN '1'  THEN paidfee  ELSE 0  END )  AS paid_costs_premiums,
+        SUM( CASE feetype  WHEN '1'  THEN totalfee-paidfee  ELSE 0  END )  AS wait_pay_costs_premiums,
+        SUM( CASE feetype  WHEN '2'  THEN totalfee  ELSE 0  END )  AS sum_retail_premiums,
+        SUM( CASE feetype  WHEN '2'  THEN paidfee  ELSE 0  END )  AS paid_retail_premiums,
+        SUM( CASE feetype  WHEN '2'  THEN totalfee-paidfee  ELSE 0  END )  AS wait_pay_retail_premiums
+        FROM report_payable_basedata  p WHERE 1=1
+        <choose>
+            <!--条件中团队不为空时,直接拼接团队-->
+            <when test="reportReqVo.teamCode != null and reportReqVo.teamCode != ''">
+                and p.deptid = #{reportReqVo.teamCode}
+            </when>
+            <!--条件中团队为空时,使用机构模糊查询-->
+            <otherwise>
+                <if test="reportReqVo.deptId != null and reportReqVo.deptId != ''">
+                    and p.deptid like #{reportReqVo.deptId}"%"
+                </if>
+            </otherwise>
+        </choose>
+        <if test="reportReqVo.userId != null and reportReqVo.userId != ''">
+            and p.userId = #{reportReqVo.userId}
+        </if>
+        <if test="reportReqVo.insCompany != null and reportReqVo.insCompany != ''">
+            and p.inscompany = #{reportReqVo.insCompany}
+        </if>
+        <if test="reportReqVo.quoteStartDate != null and reportReqVo.quoteEndDate != null">
+            and p.signdate  between #{reportReqVo.quoteStartDate} AND #{reportReqVo.quoteEndDate}
+        </if>
+        group by deptid
+        <if test="reportReqVo.userId != null and reportReqVo.userId != ''">
+            ,userid
+        </if>
         ) as s
     </select>
-    <select id="queryPayApplyDeptReportData"  resultMap="PayApplyReportDataMap">
+
+
+    <resultMap id="PayApplyDeptReportDataMap" type="com.ydtech.modules.report.model.vo.PayApplyDeptReportResVo">
+        <result property="institution" column="institution" jdbcType="VARCHAR"/>
+        <result property="deptname" column="deptname" jdbcType="VARCHAR"/>
+        <result property="username" column="username" jdbcType="VARCHAR"/>
+        <result property="waitPayCostsPremiums" column="wait_pay_costs_premiums" jdbcType="DECIMAL"/>
+        <result property="paidCostsPremiums" column="paid_costs_premiums" jdbcType="DECIMAL"/>
+        <result property="sumCostsPremiums" column="sum_costs_premiums" jdbcType="DECIMAL"/>
+        <result property="waitPayRetailPremiums" column="wait_pay_retail_premiums" jdbcType="DECIMAL"/>
+        <result property="paidRetailPremiums" column="paid_retail_premiums" jdbcType="DECIMAL"/>
+        <result property="sumRetailPremiums" column="sum_retail_premiums" jdbcType="DECIMAL"/>
+    </resultMap>
+    <select id="queryPayApplyDeptReportData"  resultMap="PayApplyDeptReportDataMap">
         SELECT
         count(distinct policyno) policy_count,
         SUM(p.`sumpremium`) sumpremium,