Parcourir la source

【费控】所有支出类型,都要进行打款后,才对结存金额进行计算

yzc il y a 1 an
Parent
commit
a872aec36f

+ 8 - 6
hx-account/src/main/resources/mapper/payee/PayeeInfoMapper.xml

@@ -20,15 +20,17 @@
                IFNULL(t1.balancePrepaidTax, 0) AS balancePrepaidTax
         FROM payee_info pi
                  LEFT JOIN (SELECT ccod.payee_account_id,
-                                   (
-                                           IFNULL(sum(ccod.current_prepaid), 0) -
-                                           IFNULL(sum(ccod.deduction_prepaid), 0))     AS balancePrepaid,
-                                   (
-                                           IFNULL(sum(ccod.current_prepaid_tax), 0) -
-                                           IFNULL(sum(ccod.deduction_prepaid_tax), 0)) AS balancePrepaidTax
+                                   (IFNULL(sum(IF(cco.is_public_transfer = 0, apr.amount, 0)), 0) -
+                                    IFNULL(sum(IF(cco.is_public_transfer = 0, ccod.deduction_prepaid, 0)),
+                                           0))                                                                     AS balancePrepaid,
+                                   (IFNULL(sum(IF(cco.is_public_transfer = 1, apr.amount, 0)), 0) -
+                                    IFNULL(sum(IF(cco.is_public_transfer = 1, ccod.deduction_prepaid_tax, 0)),
+                                           0))                                                                     AS balancePrepaidTax
                             FROM payment_type pt
                                      JOIN cost_control cco ON cco.cost_type = pt.id
                                      JOIN cost_control_detail ccod ON ccod.cost_control_id = cco.id
+                                     JOIN account_payment ap ON ap.cost_control_id = cco.id
+                                     JOIN account_payment_records apr ON apr.account_payment_id = ap.id
                             WHERE cco.`status` IN (30, 60)
                             GROUP BY ccod.payee_account_id) t1 ON t1.payee_account_id = pi.id
             ${ew.customSqlSegment}

+ 8 - 4
hx-common/src/main/resources/mapper/logistics/LogisticsCompanyInfoMapper.xml

@@ -8,13 +8,17 @@
                lci.*
         FROM logistics_company_info lci
                  LEFT JOIN (SELECT ccod.logistics_company_id,
-                                   (IFNULL(sum(ccod.current_prepaid), 0) -
-                                    IFNULL(sum(ccod.deduction_prepaid), 0))     AS balancePrepaid,
-                                   (IFNULL(sum(ccod.current_prepaid_tax), 0) -
-                                    IFNULL(sum(ccod.deduction_prepaid_tax), 0)) AS balancePrepaidTax
+                                   (IFNULL(sum(IF(cco.is_public_transfer = 0, apr.amount, 0)), 0) -
+                                    IFNULL(sum(IF(cco.is_public_transfer = 0, ccod.deduction_prepaid, 0)),
+                                           0))                                                                     AS balancePrepaid,
+                                   (IFNULL(sum(IF(cco.is_public_transfer = 1, apr.amount, 0)), 0) -
+                                    IFNULL(sum(IF(cco.is_public_transfer = 1, ccod.deduction_prepaid_tax, 0)),
+                                           0))                                                                     AS balancePrepaidTax
                             FROM payment_type pt
                                      JOIN cost_control cco ON cco.cost_type = pt.id
                                      JOIN cost_control_detail ccod ON ccod.cost_control_id = cco.id
+                                     JOIN account_payment ap ON ap.cost_control_id = cco.id
+                                     JOIN account_payment_records apr ON apr.account_payment_id = ap.id
                             WHERE pt.`name` LIKE '%快递费%'
                               AND cco.`status` IN (30, 60)
                             GROUP BY ccod.logistics_company_id) AS t1 ON t1.logistics_company_id = lci.id

+ 8 - 4
hx-supply/src/main/resources/mapper/supplier/SupplierInfoMapper.xml

@@ -8,14 +8,18 @@
         FROM supplier_info si
                  LEFT JOIN (SELECT ccod.supplier_id,
                                    (
-                                           IFNULL(sum(ccod.current_prepaid), 0) -
-                                           IFNULL(sum(ccod.deduction_prepaid), 0))     AS balancePrepaid,
+                                           IFNULL(sum(IF(cco.is_public_transfer = 0, apr.amount, 0)), 0) -
+                                           IFNULL(sum(IF(cco.is_public_transfer = 0, ccod.deduction_prepaid, 0)),
+                                                  0)) AS balancePrepaid,
                                    (
-                                           IFNULL(sum(ccod.current_prepaid_tax), 0) -
-                                           IFNULL(sum(ccod.deduction_prepaid_tax), 0)) AS balancePrepaidTax
+                                           IFNULL(sum(IF(cco.is_public_transfer = 1, apr.amount, 0)), 0) -
+                                           IFNULL(sum(IF(cco.is_public_transfer = 1, ccod.deduction_prepaid_tax, 0)),
+                                                  0)) AS balancePrepaidTax
                             FROM payment_type pt
                                      JOIN cost_control cco ON cco.cost_type = pt.id
                                      JOIN cost_control_detail ccod ON ccod.cost_control_id = cco.id
+                                     JOIN account_payment ap ON ap.cost_control_id = cco.id
+                                     JOIN account_payment_records apr ON apr.account_payment_id = ap.id
                             WHERE pt.`name` LIKE '%采购%'
                               AND cco.`status` IN (30, 60)
                             GROUP BY ccod.supplier_id) t1 ON t1.supplier_id = si.id