Browse Source

客户收支表内容异常修复

liuyao 1 year ago
parent
commit
4a6eb42cb9

+ 7 - 1
src/main/java/com/dk/mdm/mapper/report/ReportMapper.java

@@ -320,7 +320,13 @@ public interface ReportMapper extends BaseMapper<JSONObject> {
      * @author : 刘尧
      * @date   : 2024-06-26 17:28
      */
-    Map<String, Object> getSales(Map<String, Object> params);
+    Map<String, Object> getOrderAmt(Map<String, Object> params);
+    /**
+     * @desc   : 获取退货额
+     * @author : 刘尧
+     * @date   : 2024-06-26 17:28
+     */
+    Map<String, Object> getOutboundAmt(Map<String, Object> params);
     /**
      * @desc   : 获取收支额
      * @author : 刘尧

+ 10 - 9
src/main/java/com/dk/mdm/mapper/report/ReportMapper.xml

@@ -3166,15 +3166,16 @@
     </select>
 
     <!--获取销售额-->
-    <select id="getSales" resultType="java.util.Map">
-        SELECT
-            COALESCE(SUM(tpio.fact_amt), 0) + COALESCE(SUM(tpo.out_amt), 0)  as "facAmt"
-        FROM dkic_b.t_psi_order tpio
-            LEFT JOIN dkic_b.t_mac_account_item a ON a.object_id = tpio.cus_id
-            LEFT JOIN dkic_b.t_psi_outbound tpo ON tpo.out_id = a.biznis_id and tpo.out_type = '出库类型-销退回库'
-        WHERE tpo.flg_valid
-        AND tpo.cp_id = #{cpId}
-        AND tpo.make_time::date &lt;= CURRENT_DATE
+    <select id="getOrderAmt" resultType="java.util.Map">
+        select COALESCE(SUM(tpio.fact_amt), 0) as "orderAmt" from dkic_b.t_psi_order tpio where tpio.flg_valid
+        AND tpio.cp_id = #{cpId}
+        AND tpio.make_time::date &lt;= CURRENT_DATE
+    </select>
+    <!--获取退货额-->
+    <select id="getOutboundAmt" resultType="java.util.Map">
+        select COALESCE(SUM(tpo.out_amt), 0) as "outboundAmt" from dkic_b.t_psi_outbound tpo where tpo.flg_valid and tpo.out_type = '出库类型-销退回库'
+      AND tpo.cp_id = #{cpId}
+      AND tpo.make_time::date &lt;= CURRENT_DATE
     </select>
     <!--获取收支额-->
     <select id="getIncomeExpenditure" resultType="java.util.Map">

+ 6 - 17
src/main/java/com/dk/mdm/service/report/ReportService.java

@@ -818,18 +818,6 @@ public class ReportService {
             List<Map<String, Object>> items = reportMapper.getCusRecPayReportItemByUser(params);
             List<Map<String, Object>> psiOrderByUser = reportMapper.getPsiOrderByUser(params);
             items.addAll(psiOrderByUser);
-            // 判断类型
-/*            for (Map<String, Object> item : items) {
-                if (Double.valueOf(String.valueOf(item.get("facAmt")).equals("null") ? "0" : String.valueOf(item.get("facAmt"))) > 0) {
-                    item.put("type", "销售订单");
-                } else if (Double.valueOf(String.valueOf(item.get("outAmt")).equals("null") ? "0" : String.valueOf(item.get("outAmt"))) < 0) {
-                    item.put("type", "销售退货");
-                } else if (Double.valueOf(String.valueOf(item.get("sumAmtRec")).equals("null") ? "0" : String.valueOf(item.get("sumAmtRec"))) > 0) {
-                    item.put("type", "客户收款");
-                } else if (Double.valueOf(String.valueOf(item.get("sumAmtRec")).equals("null") ? "0" : String.valueOf(item.get("sumAmtRec"))) < 0) {
-                    item.put("type", "客户退款");
-                }
-            }*/
             // 筛选出符合条件的明细
             List<Map<String, Object>> userArrearsItem = items.stream()
                     .filter(item -> item.get("objectId").equals(map.get("objectId")))
@@ -866,16 +854,17 @@ public class ReportService {
         if (Integer.parseInt(params.get("currentPage").toString()) == 1) {
             // 查询公司概况
             // 获取销售额
-            Map<String, Object> sales = reportMapper.getSales(params);
+            Map<String, Object> orderAmt = reportMapper.getOrderAmt(params);
+            Map<String, Object> outBoundAmt = reportMapper.getOutboundAmt(params);
+            Map<String, Object> sales = new HashMap<>();
+            sales.put("facAmt", Double.valueOf(String.valueOf(orderAmt.get("orderAmt")).equals("null") ? "0" : String.valueOf(orderAmt.get("orderAmt")))
+                    + Double.valueOf(String.valueOf(outBoundAmt.get("outboundAmt")).equals("null") ? "0" : String.valueOf(outBoundAmt.get("outboundAmt"))));
             // 获取收支额
             Map<String, Object> incomeExpenditure = reportMapper.getIncomeExpenditure(params);
             // 获取欠款额
-//            Map<String, Object> debt = reportMapper.getDebt(params);
+            //  Map<String, Object> debt = reportMapper.getDebt(params);
             Map<String, Object> debt = new HashMap<>();
             if (debt != null) {
-//                debt.put("outAmt", Double.valueOf(String.valueOf(sales.get("facAmt")).equals("null") ? "0" : String.valueOf(sales.get("facAmt")))
-//                        + Double.valueOf(String.valueOf(debt.get("outAmt")).equals("null") ? "0" : String.valueOf(debt.get("outAmt")))
-//                        - Double.valueOf(String.valueOf(incomeExpenditure.get("arrears")).equals("null") ? "0" : String.valueOf(incomeExpenditure.get("arrears"))));
                 debt.put("outAmt", Double.valueOf(String.valueOf(sales.get("facAmt")).equals("null") ? "0" : String.valueOf(sales.get("facAmt")))
                         - Double.valueOf(String.valueOf(incomeExpenditure.get("arrears")).equals("null") ? "0" : String.valueOf(incomeExpenditure.get("arrears"))));
             }