Browse Source

Merge branch 'dev' of https://git.steerinfo.com/DAL-DAZHOU1/DAL-TMS-TRUCK-API into dev

zx 3 years ago
parent
commit
4f539deca1

+ 4 - 0
src/main/java/com/steerinfo/dil/mapper/StatisticalReportMapper.java

@@ -16,6 +16,10 @@ public interface StatisticalReportMapper {
     //查询采购统计报表 (辅料、燃料、内转、化工材料)
     List<Map<String, Object>> getAllPurchaseFLRLReport(Map<String, Object> map);
 
+    //查询采购辅料统计报表
+    List<Map<String, Object>> getFuPurchaseFLRLReport(Map<String, Object> map);
+
+
     //查询销售统计报表
     List<Map<String, Object>> getAllSaleReport(Map<String, Object> map);
 

+ 5 - 3
src/main/java/com/steerinfo/dil/service/impl/StatisticalReportImpl.java

@@ -54,9 +54,11 @@ public class StatisticalReportImpl implements IStatisticalReportService {
      * @return
      **/
     public List<Map<String, Object>> getRLFLReport(Map<String, Object> map){
-        List<Map<String, Object>> mapList = statisticalReportMapper.getAllPurchaseFLRLReport(map);
-        for (Map<String, Object> mesMap : mapList) {
-            calculateDifferenceTime(mesMap);
+        List<Map<String, Object>> mapList = null;
+        if(DataChange.dataToBigDecimal(map.get("orderTypee")).intValue() == 5){
+            mapList = statisticalReportMapper.getFuPurchaseFLRLReport(map);
+        }else {
+            mapList = statisticalReportMapper.getAllPurchaseFLRLReport(map);
         }
         return mapList;
     }

+ 174 - 13
src/main/resources/com/steerinfo/dil/mapper/StatisticalReportMapper.xml

@@ -10,12 +10,16 @@
         </if>
     </sql>
 <!--查询采购统计报表-->
-    <select id="getAllPurchaseFLRLReport" parameterType="map" resultType="java.util.Map">
+    <select id="getFuPurchaseFLRLReport" parameterType="map" resultType="java.util.Map">
         select *
         from (select
                      OO.ORDER_NUMBER            "orderNumber",
                      RC.CAPACITY_NUMBER         "capacityNumber",
-                     TER.RESULT_ENTRY_GATE_TIME "resultEntryGateTime",
+                     (select
+                        listagg(to_char(TER.RESULT_ENTRY_GATE_TIME,'yyyy-mm-dd hh24:mi:ss'), '/') within group (order by TER.RESULT_ID)
+                       from TMSTRUCK_ENFACTORY_RESULT TER
+                       where TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+                     ) "resultEntryGateTime",
                      TWR.RESULT_NET_WEIGHT      "resultNetWeight",
                      TWR.RESULT_GROSS_WEIGHT    "resultGrossWeight",
                      TWR.RESULT_TARE_WEIGHT     "resultTareWeight",
@@ -23,10 +27,27 @@
                      TUR.RESULT_END_TIME        "resultEndTime",
                      RW.WAREHOUSE_NAME          "warehouseName",
                      TRR.INSERT_TIME            "insertTime",
-                     TLFR.RESULT_OUT_GATE_TIME  "resultOutGateTime",
+                    (select
+                    listagg(to_char(TLFR.RESULT_OUT_GATE_TIME,'yyyy-mm-dd hh24:mi:ss'), '/')
+                        within group (order by TLFR.RESULT_ID)
+                    from TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
+                    where TLFR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+                        ) "resultOutGateTime",
                      OO.INSERT_TIME             "insertTimee",
-                     RGEN.GATEPOST_NAME         "enGatepostName",
-                     RGOUT.GATEPOST_NAME        "outGatepostName",
+                     (
+                         select  listagg(RG.GATEPOST_NAME, '/') within group ( order by TER2.RESULT_ID)
+                         from TMSTRUCK_ENFACTORY_RESULT TER2
+                             left join RMS_GATEPOST RG on TER2.GATEPOST_ID = RG.GATEPOST_ID
+                         where TER2.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+                    )       "enGatepostName",
+
+                    (
+                    select  listagg(RG.GATEPOST_NAME, '/') within group ( order by TLFR2.RESULT_ID)
+                    from TMSTRUCK_LEAVE_FACTORY_RESULT TLFR2
+                    left join RMS_GATEPOST RG on TLFR2.GATEPOST_ID = RG.GATEPOST_ID
+                    where TLFR2.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+                    )"outGatepostName",
+
                      RTCMAO.TRUCK_CALCULATE_NUMBER  "grossCalculateNum",
                      RTCPI.TRUCK_CALCULATE_NUMBER   "tareCalculateNum",
                      TWR.RESULT_GROSS_WEIGHT_TIME   "resultGrossWeightTime",
@@ -41,10 +62,7 @@
                                  on TTR.ORDER_ID = OO.ORDER_ID
                        left join RMS_CAPACITY RC
                                  on RC.CAPACITY_ID = OO.CAPACITY_ID
-                       left join TMSTRUCK_ENFACTORY_RESULT TER
-                                 on TTR.RESULT_TOTAL_ID = TER.RESULT_TOTAL_ID
-                       left join RMS_GATEPOST RGEN      --进厂门岗
-                                 on RGEN.GATEPOST_ID = TER.GATEPOST_ID
+
                        left join OMSTRUCK_ORDER_MATERIAL OOM
                                  on OOM.ORDER_ID = OO.ORDER_ID
                        left join RMS_MATERIAL RM
@@ -59,10 +77,7 @@
                                  on TUR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
                        left join RMS_WAREHOUSE RW
                                  on RW.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
-                       left join TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
-                                 on TLFR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
-                       left join RMS_GATEPOST RGOUT  --出厂门岗
-                                 on RGOUT.GATEPOST_ID = TLFR.GATEPOST_ID
+
                        left join TMSTRUCK_RECEIPT_RESULT TRR
                                  on TRR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
                        left join TMSTRUCK_QUALITY_RESULT TQR
@@ -154,6 +169,152 @@
         </if>
     </select>
 
+    <!--查询采购辅料统计报表-->
+    <select id="getAllPurchaseFLRLReport" parameterType="map" resultType="java.util.Map">
+        select *
+        from (
+        select
+        OO.ORDER_NUMBER            "orderNumber",
+        RC.CAPACITY_NUMBER         "capacityNumber",
+        TER.RESULT_ENTRY_GATE_TIME "resultEntryGateTime",
+        TWR.RESULT_NET_WEIGHT      "resultNetWeight",
+        TWR.RESULT_GROSS_WEIGHT    "resultGrossWeight",
+        TWR.RESULT_TARE_WEIGHT     "resultTareWeight",
+        TQR.RESULT_DEDUCTION       "resultDeduction",
+        TUR.RESULT_END_TIME        "resultEndTime",
+        RW.WAREHOUSE_NAME          "warehouseName",
+        TRR.INSERT_TIME            "insertTime",
+        TLFR.RESULT_OUT_GATE_TIME  "resultOutGateTime",
+        OO.INSERT_TIME             "insertTimee",
+        RGEN.GATEPOST_NAME         "enGatepostName",
+        RGOUT.GATEPOST_NAME        "outGatepostName",
+        RTCMAO.TRUCK_CALCULATE_NUMBER  "grossCalculateNum",
+        RTCPI.TRUCK_CALCULATE_NUMBER   "tareCalculateNum",
+        TWR.RESULT_GROSS_WEIGHT_TIME   "resultGrossWeightTime",
+        RM.MATERIAL_NAME                     "materialName",
+        CONCAT(CONCAT(RM.MATERIAL_SPECIFICATION, '('), CONCAT(RM.MATERIAL_MODEL, ')')) "materialCode",
+        APO.PURCHASE_ORDER_NO      "purchaseOrderNo",
+        RS.SUPPLIER_NAME           "supplierName",
+        RCON.CONSIGNEE_COMPANY_NAME "receiveName",
+        TWR.RESULT_TARE_WEIGHT_TIME    "resultTareWeightTime"
+        from OMSTRUCK_ORDER OO
+        left join TMSTRUCK_TOTAL_RESULT TTR
+        on TTR.ORDER_ID = OO.ORDER_ID
+        left join RMS_CAPACITY RC
+        on RC.CAPACITY_ID = OO.CAPACITY_ID
+        left join TMSTRUCK_ENFACTORY_RESULT TER
+        on TTR.RESULT_TOTAL_ID = TER.RESULT_TOTAL_ID
+        left join RMS_GATEPOST RGEN      --进厂门岗
+        on RGEN.GATEPOST_ID = TER.GATEPOST_ID
+        left join OMSTRUCK_ORDER_MATERIAL OOM
+        on OOM.ORDER_ID = OO.ORDER_ID
+        left join RMS_MATERIAL RM
+        on RM.MATERIAL_ID = OOM.MATERIAL_ID
+        left join TMSTRUCK_WEIGHT_RESULT TWR
+        on TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+        left join RMS_TRUCK_CALCULATE RTCMAO --毛重汽车衡
+        on RTCMAO.TRUCK_CALCULATE_ID = TWR.RESULT_GROSS_PLACE_ID
+        left join RMS_TRUCK_CALCULATE RTCPI  --皮重汽车衡
+        on RTCPI.TRUCK_CALCULATE_ID = TWR.RESULT_TARE_PLACE_ID
+        left join TMSTRUCK_UNLOAD_RESULT TUR
+        on TUR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+        left join RMS_WAREHOUSE RW
+        on RW.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
+        left join TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
+        on TLFR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+        left join RMS_GATEPOST RGOUT  --出厂门岗
+        on RGOUT.GATEPOST_ID = TLFR.GATEPOST_ID
+        left join TMSTRUCK_RECEIPT_RESULT TRR
+        on TRR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+        left join TMSTRUCK_QUALITY_RESULT TQR
+        on TQR.TOTAL_RESULT_ID = TTR.RESULT_TOTAL_ID
+        left join AMS_PURCHASE_ORDER APO
+        on APO.PURCHASE_ORDER_ID = OO.ORDER_PLAN_ID
+        left join RMS_SUPPLIER RS
+        on RS.SUPPLIER_ID = APO.SUPPLIER_UNIT_ID
+        left join RMS_CONSIGNEE RCON
+        on RCON.CONSIGNEE_ID = APO.RECEIVE_UNIT_ID
+
+        where OO.ORDER_STATUS in (5, 8, 9, 1, 2)
+        and OO.ORDER_TYPE = #{orderTypee}
+        <if test="oneDate != null">
+            and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= TWR.RESULT_TARE_WEIGHT_TIME
+        </if>
+        <if test="startDate != null">
+            and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= TWR.RESULT_TARE_WEIGHT_TIME
+            and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= TWR.RESULT_TARE_WEIGHT_TIME
+        </if>
+        )
+        <where>
+            <if test="capacityNumber != null">
+                and
+                <foreach collection="capacityNumber" item="item" open="(" separator="or" close=")">
+                    "capacityNumber" like '%${item}%'
+                </foreach>
+            </if>
+            <if test="warehouseName != null">
+                and
+                <foreach collection="warehouseName" item="item" open="(" separator="or" close=")">
+                    "warehouseName" like '%${item}%'
+                </foreach>
+            </if>
+
+            <if test="resultGrossWeight != null">
+                and
+                <foreach collection="resultGrossWeight" item="item" open="(" separator="or" close=")">
+                    "resultGrossWeight" like '%${item}%'
+                </foreach>
+            </if>
+
+            <if test="resultTareWeight != null">
+                and
+                <foreach collection="resultTareWeight" item="item" open="(" separator="or" close=")">
+                    "resultTareWeight" like '%${item}%'
+                </foreach>
+            </if>
+            <if test="enGatepostName != null">
+                and
+                <foreach collection="enGatepostName" item="item" open="(" separator="or" close=")">
+                    "enGatepostName" like '%${item}%'
+                </foreach>
+            </if>
+            <if test="outGatepostName != null">
+                and
+                <foreach collection="outGatepostName" item="item" open="(" separator="or" close=")">
+                    "outGatepostName" like '%${item}%'
+                </foreach>
+            </if>
+            <if test="materialName != null">
+                and
+                <foreach collection="materialName" item="item" open="(" separator="or" close=")">
+                    "materialName" like '%${item}%'
+                </foreach>
+            </if>
+            <if test="purchaseOrderNo != null">
+                and
+                <foreach collection="purchaseOrderNo" item="item" open="(" separator="or" close=")">
+                    "purchaseOrderNo" like '%${item}%'
+                </foreach>
+            </if>
+            <if test="supplierName != null">
+                and
+                <foreach collection="supplierName" item="item" open="(" separator="or" close=")">
+                    "supplierName" like '%${item}%'
+                </foreach>
+            </if>
+            <if test="receiveName != null">
+                and
+                <foreach collection="receiveName" item="item" open="(" separator="or" close=")">
+                    "receiveName" like '%${item}%'
+                </foreach>
+            </if>
+        </where>
+        <include refid="orderBy"></include>
+        <if test="orderField == null">
+            order by "insertTimee" desc
+        </if>
+    </select>
+
 <!--  查询销售统计报表  -->
     <!--  查询销售统计报表  -->
     <select id="getAllSaleReport" parameterType="java.util.Map" resultType="java.util.Map">

+ 40 - 31
src/main/resources/com/steerinfo/dil/mapper/TmstruckMeasureCommissionMapper.xml

@@ -1254,38 +1254,47 @@
 
    <!--发送委托给达钢-->
     <select id="selectXsMeasuresion" resultType="java.util.Map" parameterType="java.math.BigDecimal">
-     select OO.ORDER_NUMBER "transportNum",
-            RM.MATERIAL_ID "materialId",
-            RM.MATERIAL_NAME "materiaName",
-            concat( RM.MATERIAL_SPECIFICATION, RM.MATERIAL_MODEL ) "goodsType",
-            RS.SHIPPER_NAME "sendUnit",
-            RC.CONSIGNEE_COMPANY_NAME "ReceivUnit",
-            RC2.CAPACITY_NUMBER "carNum",
-            RTC.TRUCK_CALCULATE_NUMBER "steelyardNum",
-            TWR.INSERT_UPDATE_REMARK "demo"
+        select *
+        from (
+                 select ASO.SALE_NUMBER                                      "purchaseOrder",
+                        OO.ORDER_NUMBER                                      "transportNum",
+                        RM.MATERIAL_ID                                       "materialId",
+                        RM.MATERIAL_NAME                                     "materiaName",
+                        concat(RM.MATERIAL_SPECIFICATION, RM.MATERIAL_MODEL) "goodsType",
+                        RS.SHIPPER_NAME                                      "sendUnit",
+                        RC.CONSIGNEE_COMPANY_NAME                            "ReceivUnit",
+                        RC2.CAPACITY_NUMBER                                  "carNum",
+                        RTC.TRUCK_CALCULATE_NUMBER                           "steelyardNum",
+                        ASO.SALE_REMARK                                      "shipNum",
+                        OO.INSERT_UPDATE_REMARK                              "demo",
+                        ASM.EAS_PRIMARY_ID                                   "FLID"
 
-     from OMSTRUCK_ORDER oo
-     left join  OMSTRUCK_ORDER_MATERIAL OOM
-     ON OO.ORDER_ID=OOM.ORDER_ID
-     LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
-     ON ASOM.SALE_ORDER_MATERIAL_ID=OO.ORDER_PLAN_ID
-     LEFT JOIN  RMS_MATERIAL RM
-     ON RM.MATERIAL_ID=OOM.MATERIAL_ID
-     LEFT JOIN  AMS_SALE_ORDER ASO
-     ON ASO.SALE_ORDER_ID=ASOM.SALE_ORDER_ID
-     LEFT JOIN RMS_CONSIGNEE  RC
-     ON RC.CONSIGNEE_ID=ASO.RECEIVE_ID
-     LEFT JOIN  RMS_SHIPPER RS
-     ON RS.SHIPPER_ID=ASO.SHIPPER_ID
-     LEFT JOIN RMS_CAPACITY RC2
-     ON RC2.CAPACITY_ID=OO.CAPACITY_ID
-     LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
-     ON TTR.ORDER_ID=oo.ORDER_ID
-     LEFT JOIN TMSTRUCK_WEIGHT_RESULT  TWR
-     ON TWR.RESULT_TOTAL_ID=TTR.RESULT_TOTAL_ID
-     LEFT JOIN RMS_TRUCK_CALCULATE RTC
-     ON RTC.TRUCK_CALCULATE_ID=TWR.RESULT_TARE_PLACE_ID
-     WHERE OO.ORDER_ID=#{orderId}
+                 from OMSTRUCK_ORDER oo
+                          left join OMSTRUCK_ORDER_MATERIAL OOM
+                                    ON OO.ORDER_ID = OOM.ORDER_ID
+                          LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
+                                    ON ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
+                          LEFT JOIN RMS_MATERIAL RM
+                                    ON RM.MATERIAL_ID = OOM.MATERIAL_ID
+                          LEFT JOIN AMS_SALE_ORDER ASO
+                                    ON ASO.SALE_ORDER_ID = ASOM.SALE_ORDER_ID
+                          LEFT JOIN AMS_SALE_MATERIAL ASM
+                                    ON ASM.SALE_ORDER_ID = ASO.SALE_ORDER_ID
+                          LEFT JOIN RMS_CONSIGNEE RC
+                                    ON RC.CONSIGNEE_ID = ASO.RECEIVE_ID
+                          LEFT JOIN RMS_SHIPPER RS
+                                    ON RS.SHIPPER_ID = ASO.SHIPPER_ID
+                          LEFT JOIN RMS_CAPACITY RC2
+                                    ON RC2.CAPACITY_ID = OO.CAPACITY_ID
+                          LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+                                    ON TTR.ORDER_ID = oo.ORDER_ID
+                          LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWR
+                                    ON TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+                          LEFT JOIN RMS_TRUCK_CALCULATE RTC
+                                    ON RTC.TRUCK_CALCULATE_ID = TWR.RESULT_TARE_PLACE_ID
+                 WHERE OO.ORDER_ID = #{orderId}
+             )
+        where rownum = 1
     </select>
 
 </mapper>