ソースを参照

解决金额相加时,部分金额为null,导致最后结果为null的问题

lipf 3 ヶ月 前
コミット
2d72893925

+ 6 - 3
tenant/organization/src/main/resources/mapper/ReceivableMapper.xml

@@ -219,9 +219,12 @@
         ELSE ''
         ELSE ''
         END AS order_type,
         END AS order_type,
         ipi.license_no,
         ipi.license_no,
-        (ipi.jq_receivable_premium + ipi.sy_receivable_premium + ipi.jy_receivable_premium) as receivableAmount,  -- 总应收金额
-        (ipi.jq_supervise_costs_premiums + ipi.sy_supervise_costs_premiums + ipi.jy_supervise_costs_premiums) as superviseCostsPremiums, -- 总应收手续费
-        (ipi.jq_other_costs_premiums + ipi.sy_other_costs_premiums + ipi.jy_other_costs_premiums) as otherCostsPremiums,  -- 总应收跟单费
+        -- 1. 总应收金额 (修复了多余的右括号)
+        (COALESCE(ipi.jq_receivable_premium, 0) + COALESCE(ipi.sy_receivable_premium, 0) + COALESCE(ipi.jy_receivable_premium, 0)) AS receivableAmount,
+        -- 2. 总应收手续费 (为最后一个字段补充了默认值 0)
+        (COALESCE(ipi.jq_supervise_costs_premiums, 0) + COALESCE(ipi.sy_supervise_costs_premiums, 0) + COALESCE(ipi.jy_supervise_costs_premiums, 0)) AS superviseCostsPremiums,
+        -- 3. 总应收跟单费 (修复了括号位置错误,并为最后一个字段补充了默认值 0)
+        (COALESCE(ipi.jq_other_costs_premiums, 0) + COALESCE(ipi.sy_other_costs_premiums, 0) + COALESCE(ipi.jy_other_costs_premiums, 0)) AS otherCostsPremiums,
         io.product_name,
         io.product_name,
         iocui.name AS insuredPerson,
         iocui.name AS insuredPerson,
         ipi.jq_premium,
         ipi.jq_premium,