zxf 3 päivää sitten
vanhempi
commit
6b1ef1a3a7

+ 9 - 8
jd-logistics-modules/jd-logistics-job/src/main/java/com/ruoyi/job/task/FinancialMonthSummaryTask.java

@@ -1,8 +1,8 @@
 package com.ruoyi.job.task;
 
 
-import com.ruoyi.logistics.domain.RptFinancialMonthSummary;
-import com.ruoyi.logistics.service.IRptFinancialMonthSummaryService;
+
+import com.ruoyi.system.api.RemoteMonthSummaryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -10,6 +10,8 @@ import org.springframework.stereotype.Component;
 
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * 月度汇总定时任务
@@ -21,8 +23,9 @@ public class FinancialMonthSummaryTask {
 
     private static final Logger logger = LoggerFactory.getLogger(FinancialMonthSummaryTask.class);
 
+
     @Autowired
-    IRptFinancialMonthSummaryService iRptFinancialMonthSummaryService;
+    RemoteMonthSummaryService remoteMonthSummaryService;
 
     /**
      * 每个月月初 执行生成上个月的月度账单
@@ -35,12 +38,10 @@ public class FinancialMonthSummaryTask {
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.MM");
         // 格式化上个月日期为字符串
         String formattedDate = lastMonth.format(formatter);
-        RptFinancialMonthSummary rptFinancialMonthSummary= new RptFinancialMonthSummary();
-        rptFinancialMonthSummary.setSummaryMonth(formattedDate);
-        iRptFinancialMonthSummaryService.insertRptFinancialMonthSummary(rptFinancialMonthSummary);
+        Map param= new HashMap();
+        param.put("monthCode",formattedDate);
+        remoteMonthSummaryService.creatMontSummary(param);
     }
-
-
     /**
      * 每次调账时  都会重新生成该供应商的月度账单
      *  这里的定时任务  作为方便测试

+ 1 - 0
jd-logistics-modules/jd-logistics-system/pom.xml

@@ -85,6 +85,7 @@
             <version>2.1.7</version>
         </dependency>
 
+
         <dependency>
             <groupId>com.jd</groupId>
             <artifactId>lop-opensdk-support</artifactId>

+ 2 - 1
jd-logistics-modules/jd-logistics-system/src/main/java/com/ruoyi/logistics/mapper/RptFinancialMonthSummaryMapper.java

@@ -4,6 +4,7 @@ import java.util.List;
 import java.util.Map;
 
 import com.ruoyi.logistics.domain.RptFinancialMonthSummary;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 财务月度汇总Mapper接口
@@ -61,7 +62,7 @@ public interface RptFinancialMonthSummaryMapper
      */
     public int deleteRptFinancialMonthSummaryBySummaryIds(Long[] summaryIds);
 
-    List<Map<String, Object>> selectMonthSummaryList(Map param);
+    List<Map<String, Object>> selectMonthSummaryList( Map param);
 
     int insertBachRptFinancialMonthSummary(List<Map<String, Object>> monthSummaryList);
 }

+ 3 - 2
jd-logistics-modules/jd-logistics-system/src/main/java/com/ruoyi/logistics/service/impl/RptFinancialMonthSummaryServiceImpl.java

@@ -7,6 +7,7 @@ import java.util.List;
 import java.util.Map;
 
 import com.ruoyi.common.core.utils.DateUtils;
+import org.jetbrains.annotations.NotNull;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.logistics.mapper.RptFinancialMonthSummaryMapper;
@@ -113,7 +114,7 @@ public class RptFinancialMonthSummaryServiceImpl implements IRptFinancialMonthSu
      *  部门Id和 账单月份必传其一  分别代表以上两种情况
      */
     @Override
-    public int creatMontSummary(Map param) {
+    public int creatMontSummary(@NotNull Map param) {
         LocalDate today = LocalDate.now();
         LocalDate lastMonth = today.minusMonths(1);
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.MM");
@@ -121,7 +122,7 @@ public class RptFinancialMonthSummaryServiceImpl implements IRptFinancialMonthSu
         String formattedDate = lastMonth.format(formatter);
         //按照传值条件查询统计账单情况
 
-        param.put("deptId",formattedDate);
+        param.put("monthCode",formattedDate);
         List<Map<String,Object>> monthSummaryList=rptFinancialMonthSummaryMapper.selectMonthSummaryList(param);
         return rptFinancialMonthSummaryMapper.insertBachRptFinancialMonthSummary(monthSummaryList);
     }

+ 12 - 10
jd-logistics-modules/jd-logistics-system/src/main/resources/mapper/logistics/RptFinancialMonthSummaryMapper.xml

@@ -126,15 +126,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
 
 
-    <select id="selectMonthSummaryList"  parameterType="java.util.List">
+    <select id="selectMonthSummaryList"  parameterType="java.util.Map" resultType="java.util.HashMap"  >
         SELECT
-            ${monthCode} monthCode,
+           #{monthCode} summary_month,
             a.dept_id,
-            count( DISTINCT a.external_waybill_no ) order_num,
+            count( DISTINCT a.external_waybill_no ) transaction_count,
             sum(
-                    ifnull( rate_amount, adjust_amount )) amont
+                    ifnull( rate_amount, adjust_amount )) payable_amount
         FROM
-            ( SELECT * FROM biz_waybill_order WHERE order_status = 6 AND DATE_FORMAT( sign_time, '%Y.%m' )= #{monthCode}  and dept_id#{deptId}) a
+            ( SELECT * FROM biz_waybill_order WHERE order_status = 6 AND DATE_FORMAT( sign_time, '%Y.%m' )= #{monthCode}  ) a
                 INNER JOIN biz_waybill_cost_details b ON a.external_waybill_no = b.external_waybill_no
         WHERE
             1 = 1
@@ -142,13 +142,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             a.dept_id
     </select>
 
-    <insert id="insertBachRptFinancialMonthSummary" parameterType="java.util.List">
-        INSERT INTO rpt_financial_month_summary (summary_month, payable_amount, transaction_count,dept_id) VALUES
+    <insert id="insertBachRptFinancialMonthSummary" parameterType="java.util.List"  >
+        INSERT INTO rpt_financial_month_summary (summary_month, payable_amount, transaction_count,dept_id,status,create_time) VALUES
         <foreach collection="list" item="item" separator=",">
-            (#{item.monthCode}, #{item.amont}, #{item.order_num},, #{item.dept_id})
+            (#{item.summary_month}, #{item.payable_amount}, #{item.transaction_count}, #{item.dept_id},'1',now())
         </foreach>
         ON DUPLICATE KEY UPDATE
-        payable_amount = VALUES(amont),
-        update_time = VALUES(now())
+        payable_amount = VALUES(payable_amount),
+        transaction_count = VALUES(transaction_count),
+        dept_id = VALUES(dept_id),
+        update_time = NOW()
     </insert>
 </mapper>