Browse Source

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

txf 3 năm trước cách đây
mục cha
commit
091ec70a41

+ 108 - 1
src/main/java/com/steerinfo/dil/controller/StatisticalReportController.java

@@ -83,7 +83,8 @@ public class StatisticalReportController extends BaseRESTfulController {
                                        String carrierSsoId,
                                           Integer orderType,
                                           Integer shipperId,
-                                          String receiveName
+                                          String receiveName,
+                                          String materialName
     ){
         if(carrierSsoId != null){
             if(!"null".equals(carrierSsoId)){
@@ -93,6 +94,9 @@ public class StatisticalReportController extends BaseRESTfulController {
         if (receiveName != null && !"null".equals(receiveName)) {
             mapValue.put("receivName","%" + receiveName + "%");
         }
+        if (materialName != null && !"".equals(materialName) && !"null".equals(materialName)) {
+            mapValue.put("remark","%" + materialName + "%");
+        }
         mapValue.put("orderType",orderType);
         mapValue.put("shipperId",shipperId);
         DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
@@ -297,6 +301,109 @@ public class StatisticalReportController extends BaseRESTfulController {
         PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report);
         return success(pageList);
     }
+
+    @ApiOperation(value="查询该组织机构下的销售统计报表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
+            @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"),
+    })
+    @PostMapping("/getSaleOrderList")
+    public RESTfulResult getSaleOrderList(@RequestBody(required=false) Map<String,Object> mapValue,
+                                         Integer apiId,
+                                         Integer pageNum,
+                                         Integer pageSize,
+                                         String startTime,
+                                         String endTime,
+                                         String orgCode
+    ){
+         if (orgCode!=null||!orgCode.equals("")){
+             mapValue.put("orgCode",orgCode);
+         }else {
+             return failed("抱歉,您还没有绑定组织,请联系自动化部");
+         }
+        DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
+        PageHelper.startPage(pageNum, pageSize);
+        //分页数据
+        List<Map<String, Object>> report = statisticalReportService.getSaleOrderList(mapValue);
+        PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null, report);
+        return success(pageList);
+    }
+
+
+    @ApiOperation(value="查询该组织机构下的采购统计报表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
+            @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"),
+    })
+    @PostMapping("/getPurchaseOrderList")
+    public RESTfulResult getPurchaseOrderList(@RequestBody(required=false) Map<String,Object> mapValue,
+                                          Integer apiId,
+                                          Integer pageNum,
+                                          Integer pageSize,
+                                          String startTime,
+                                          String endTime,
+                                          String orgCode
+    ){
+        if (orgCode!=null||!orgCode.equals("")){
+            mapValue.put("orgCode",orgCode);
+        }else {
+            return failed("抱歉,您还没有绑定组织,请联系自动化部");
+        }
+        DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
+        PageHelper.startPage(pageNum, pageSize);
+        //分页数据
+        List<Map<String, Object>> report = statisticalReportService.getPurchaseOrderList(mapValue);
+        PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null, report);
+        return success(pageList);
+    }
+
+    @ApiOperation(value="查询该组织机构下的内转统计报表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
+            @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"),
+            @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"),
+    })
+    @PostMapping("/getInwardList")
+    public RESTfulResult getInwardList(@RequestBody(required=false) Map<String,Object> mapValue,
+                                              Integer apiId,
+                                              Integer pageNum,
+                                              Integer pageSize,
+                                              String startTime,
+                                              String endTime,
+                                              String orgCode
+    ){
+        if (orgCode!=null||!orgCode.equals("")){
+            mapValue.put("orgCode",orgCode);
+        }else {
+            return failed("抱歉,您还没有绑定组织,请联系自动化部");
+        }
+        DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
+        PageHelper.startPage(pageNum, pageSize);
+        //分页数据
+        List<Map<String, Object>> report = statisticalReportService.getInwardList(mapValue);
+        PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null, report);
+        return success(pageList);
+    }
+
+
+
+
+
+
+
+
+
+
+
+
     @ApiOperation(value="查询拼装车统计报表")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),

+ 1 - 1
src/main/java/com/steerinfo/dil/controller/TmstruckMeasureCommissionController.java

@@ -48,7 +48,7 @@ public class TmstruckMeasureCommissionController extends BaseRESTfulController {
         return success(allMeasureCommission);
     }
 
-    @ApiOperation(value="查询计量委托 ")
+    @ApiOperation(value="发送计量委托给达兴能源 ")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "resultId", value = "装车作业实绩ID", required = false, dataType = "Integer"),
     })

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

@@ -56,4 +56,13 @@ public interface StatisticalReportMapper {
     List<Map<String,Object>> getCapacityRemark(Map<String,Object> map);
 
     List<Map<String, Object>> getLoaderForResultDetail(Map<String, Object> mapValue);
+
+    //查看该组织架构下的销售订单统计报表
+    List<Map<String, Object>> getSaleOrderList(Map<String, Object> mapValue);
+
+    //查看该组织架构下的采购订单统计报表
+    List<Map<String, Object>> getPurchaseOrderList(Map<String, Object> mapValue);
+
+    //查看该组织架构下的内转统计报表
+    List<Map<String, Object>> getInwardList(Map<String, Object> mapValue);
 }

+ 11 - 0
src/main/java/com/steerinfo/dil/service/IStatisticalReportService.java

@@ -52,5 +52,16 @@ public interface IStatisticalReportService {
     List<Map<String, Object>> getInwardReportForAssemble(Map<String, Object> mapValue);
 
     List<Map<String, Object>> getLoaderForResultDetail(Map<String, Object> mapValue);
+
+    //查询该组织机构下的销售统计报表
+    List<Map<String, Object>> getSaleOrderList(Map<String, Object> mapValue);
+
+    //查询该组织机构下的采购统计报表
+    List<Map<String, Object>> getPurchaseOrderList(Map<String, Object> mapValue);
+
+
+    //查询该组织机构下的内转统计报表
+    List<Map<String, Object>> getInwardList(Map<String, Object> mapValue);
+
 }
 

+ 39 - 19
src/main/java/com/steerinfo/dil/service/impl/StatisticalReportImpl.java

@@ -77,6 +77,26 @@ public class StatisticalReportImpl implements IStatisticalReportService {
     @Override
     public List<Map<String, Object>> getAllSaleReport(Map<String, Object> map) {
         List<Map<String, Object>> mapList = statisticalReportMapper.getAllSaleReport(map);
+        for(Map<String, Object> map1 : mapList) {
+            if ( map1.get("resultEntryGateTime") == null) {
+                map1.put("transportStatus", "未进厂");
+                continue;
+            }
+            if (map1.get("resultOutGateTime") == null) {
+                map1.put("transportStatus", "已进厂");
+                continue;
+            }
+            if (map1.get("arrivalAddress") == null) {
+                map1.put("transportStatus", "已出厂");
+                continue;
+            }
+            if (map1.get("receiptAddress") == null) {
+                map1.put("transportStatus", "已抵达");
+                continue;
+            }
+            else
+                map1.put("transportStatus", "已签收");
+        }
         for (Map<String, Object> mesMap : mapList) {
             calculateDifferenceTime(mesMap);
         }
@@ -86,25 +106,6 @@ public class StatisticalReportImpl implements IStatisticalReportService {
     @Override
     public List<Map<String, Object>> getAllSaleReportNum(Map<String, Object> map) {
          List<Map<String, Object>> listMap = statisticalReportMapper.getAllSaleReport(map);
-         for(Map<String, Object> map1 : listMap) {
-             if ( map1.get("resultEntryGateTime") == null) {
-                 map1.put("transportStatus", "未进厂");
-                 continue;
-             }
-             if (map1.get("resultOutGateTime") == null) {
-                 map1.put("transportStatus", "已进厂");
-                 continue;
-             }
-             if (map1.get("arrivaladdress") == null) {
-                 map1.put("transportStatus", "运输中");
-                 continue;
-             }
-             if (map1.get("receiveTime") == null) {
-                 map1.put("transportStatus", "已抵达");
-                 continue;
-             } else
-                 map1.put("transportStatus", "已签收");
-         }
          return listMap;
     }
 
@@ -217,4 +218,23 @@ public class StatisticalReportImpl implements IStatisticalReportService {
         return statisticalReportMapper.getLoaderForResultDetail(mapValue);
     }
 
+
+    //查看该组织架构下的销售订单统计报表
+    @Override
+    public List<Map<String, Object>> getSaleOrderList(Map<String, Object> mapValue) {
+        return statisticalReportMapper.getSaleOrderList(mapValue);
+    }
+
+    //查看该组织架构下的采购订单统计报表
+    @Override
+    public List<Map<String, Object>> getPurchaseOrderList(Map<String, Object> mapValue) {
+        return  statisticalReportMapper.getPurchaseOrderList(mapValue);
+    }
+
+    //查看该组织架构下的内转统计报表
+    @Override
+    public List<Map<String, Object>> getInwardList(Map<String, Object> mapValue) {
+        return  statisticalReportMapper.getInwardList(mapValue);
+    }
+
 }

+ 10 - 0
src/main/java/com/steerinfo/dil/util/ColumnDataUtil.java

@@ -35,6 +35,16 @@ public class ColumnDataUtil {
         pageList.setColumnData(columnDataList);
         return pageList;
     }
+    public PageListAdd tableColumnData4(Integer apiId, List<Map<String, Object>> list,List<Map<String,Object>> data) {
+        List<Map<String, Object>> columnDataList = columnDataFeign.getColumnData(apiId);
+        PageListAdd pageList = new PageListAdd(data);
+        pageList.setColumnData(columnDataList);
+        return pageList;
+    }
+
+
+
+
 
     public PageListAdd tableColumnData2(Integer apiId, List<Map<String, Object>> list,List<Map<String,Object>> data) {
         List<Map<String, Object>> columnDataList = columnDataFeign.getColumnData(apiId);

+ 175 - 0
src/main/resources/com/steerinfo/dil/mapper/StatisticalReportMapper.xml

@@ -320,6 +320,7 @@
 <!--  查询销售统计报表  -->
     <!--  查询销售统计报表  -->
     <select id="getAllSaleReport" parameterType="java.util.Map" resultType="java.util.Map">
+        select * from (
         select
         *
         from (
@@ -345,6 +346,8 @@
         ASO.SALE_NUMBER "saleNumber",
         TLR.CASE_NUMBER "caseNumber",
         RC2.CARRIER_NAME "carrierName",
+        TAR.RESULT_ARRIVAL_ADDRESS "arrivalAddress",
+        TRR.RESULT_ARRIVAL_ADDRESS "receiptAddress",
         CONCAT(CONCAT(RM.MATERIAL_SPECIFICATION, '('), CONCAT(RM.MATERIAL_MODEL, ')')) "materialCode"
         from TMSTRUCK_WEIGHT_RESULT TWR
         left join TMSTRUCK_TOTAL_RESULT TTR
@@ -384,6 +387,10 @@
         on RC.CAPACITY_ID = OO.CAPACITY_ID
         join RMS_MATERIAL RM
         on RM.MATERIAL_ID = TWR.MATERIAL_ID
+        left join TMSTRUCK_ARRIVAL_RESULT TAR
+        on TAR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+        left join TMStRUCK_RECEIPT_RESULT TRR
+        on TTR.RESULT_TOTAL_ID = TRR.RESULT_TOTAL_ID
         WHERE OO.ORDER_TYPE = #{orderType}
         AND ASO.SHIPPER_ID = #{shipperId}
         <if test="carrierSsoId != null">
@@ -399,6 +406,12 @@
             and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= TWR.RESULT_GROSS_WEIGHT_TIME
             and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= TWR.RESULT_GROSS_WEIGHT_TIME
         </if>
+        ) RRR
+            <where>
+                <if test="remark != null" >
+                    and RRR."materialName" LIKE #{remark} or RRR."materialRemark" LIKE #{remark}
+                </if>
+            </where>
         )
         <where>
             <if test="orderNumber != null">
@@ -1859,4 +1872,166 @@
             </foreach>
         </if>
     </select>
+<!--根据组织获取销售订单-->
+    <select id="getSaleOrderList" resultType="java.util.Map" parameterType="java.util.Map">
+        select OO.ORDER_NUMBER "orderNumber",
+               RM.MATERIAL_NAME "materialName",
+               RS.SHIPPER_NAME "sendName",
+               RC.CONSIGNEE_COMPANY_NAME "reciveName",
+               TWR.RESULT_NET_WEIGHT "resultNetWeight",
+               TWR.RESULT_GROSS_WEIGHT_TIME "grossweightTime",
+               TWR.RESULT_TARE_WEIGHT_TIME "tareWeightTime",
+               TWR.RESULT_TARE_WEIGHT "tareWeight",
+               TWR.RESULT_GROSS_WEIGHT "grossWeight",
+               RC2.CAPACITY_NUMBER "capacityNumber"
+        from OMSTRUCK_ORDER OO
+        left join AMS_SALE_ORDER_MATERIAL ASOM
+        ON ASOM.SALE_ORDER_MATERIAL_ID=OO.ORDER_PLAN_ID
+        LEFT JOIN OMSTRUCK_ORDER_MATERIAL OOM
+        ON OOM.ORDER_ID=OO.ORDER_ID
+        LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+        ON TTR.ORDER_ID=OO.ORDER_ID
+        LEFT JOIN RMS_CAPACITY RC2
+        ON RC2.CAPACITY_ID=OO.CAPACITY_ID
+        LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWR
+        ON TWR.RESULT_TOTAL_ID=TTR.RESULT_TOTAL_ID
+        left join TMSTRUCK_LOAD_RESULT TLR
+        ON TLR.RESULT_TOTAL_ID=TTR.RESULT_TOTAL_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_SHIPPER RS
+        ON ASO.SHIPPER_ID = RS.SHIPPER_ID
+        LEFT JOIN RMS_CONSIGNEE RC
+        ON RC.CONSIGNEE_ID=ASO.RECEIVE_ID
+        where OO.OPTIONER_CODE = #{orgCode}
+        <if test="oneDate != null">
+            and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt; = TLR.RESULT_LOAD_END_TIME
+        </if>
+        <if test="startDate != null">
+            and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= TLR.RESULT_LOAD_END_TIME
+            and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= TLR.RESULT_LOAD_END_TIME
+        </if>
+        ORDER BY OO.ORDER_NUMBER DESC
+    </select>
+    <select id="getInwardList" resultType="java.util.Map" parameterType="java.util.Map">
+        select *
+        from (select oo.order_id                   "orderId",
+                     rm.material_name              "materialName",
+                     rc.capacity_number            "capacityNumber",
+                     rs.supplier_name              "sendName",
+                     oo.order_number               "orderNumber",
+                     rce.consignee_company_name    "reciveName",
+                     ttr.result_total_id           "totalResultId",
+                     twr3.result_gross_weight      "grossWeight",
+                     twr3.result_gross_weight_time "grossweightTime",
+                     twr4.result_tare_weight       "tareWeight",
+                     twr4.result_tare_weight_time  "tareWeightTime",
+                     twr4.result_net_weight        "resultNetWeight"
+                       from omstruck_order oo
+                       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 rms_capacity rc
+                       on rc.capacity_id = oo.capacity_id
+                       left join amstruck_inward_plan aip
+                       on aip.plan_id = oo.order_plan_id
+                       left join amstruck_requirement_plan arp
+                       on arp.plan_id = aip.plan_id
+                       left join amstruck_inward_requirement air
+                       on air.requirement_id = arp.requirement_id
+                       left join ams_purchase_order apo
+                                 on apo.purchase_order_id = air.purchase_order_id
+                       left join rms_supplier rs
+                                 on rs.supplier_id = apo.supplier_unit_id
+                       left join rms_consignee rce
+                                 on rce.consignee_id = apo.receive_unit_id
+                       left join tmstruck_total_result ttr
+                                 on ttr.order_id = oo.order_id
+
+                       left join tmstruck_weight_result twr1
+                                 on twr1.result_total_id = ttr.result_total_id
+                       left join rms_truck_calculate rtc1
+                                 on rtc1.truck_calculate_id = twr1.result_tare_place_id
+                       left join tmstruck_load_result tlr
+                                 on tlr.result_total_id = ttr.result_total_id
+                       left join rms_warehouse rw
+                                 on rw.warehouse_id = tlr.loading_id
+                       left join tmstruck_weight_result twr2
+                                 on twr2.result_total_id = ttr.result_total_id
+                       left join rms_truck_calculate rtc2
+                                 on rtc2.truck_calculate_id = twr2.result_gross_place_id
+
+                       left join tmstruck_weight_result twr3
+                                 on twr3.result_total_id = ttr.result_total_id
+                       left join rms_truck_calculate rtc3
+                                 on rtc3.truck_calculate_id = twr3.result_gross_place_id
+                       left join tmstruck_unload_result tur
+                                 on tur.result_total_id = ttr.result_total_id
+                       left join rms_warehouse rw2
+                                 on rw2.warehouse_id = tur.result_unload_place_id
+                       left join tmstruck_weight_result twr4
+                                 on twr4.result_total_id = ttr.result_total_id
+                       left join rms_truck_calculate rtc4
+                                 on rtc4.truck_calculate_id = twr4.result_tare_place_id
+              where oo.order_type in (10, 20)
+                and tlr.segment_sqe = 3
+                and twr2.gross_segment_sqe = 4
+                and twr3.gross_segment_sqe = 7
+                and tur.segment_sqe = 8
+                and twr4.tare_segment_sqe = 9
+                and twr2.result_gross_weight_time is not null
+                and oo.OPTIONER_CODE =  #{orgCode}
+        <if test="oneDate != null">
+            and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt; = TLR.RESULT_LOAD_END_TIME
+        </if>
+        <if test="startDate != null">
+            and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= TLR.RESULT_LOAD_END_TIME
+            and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= TLR.RESULT_LOAD_END_TIME
+        </if>
+             )
+    </select>
+    <select id="getPurchaseOrderList" resultType="java.util.Map" parameterType="java.util.Map">
+        select OO.ORDER_NUMBER "orderNumber",
+               RM.MATERIAL_NAME "materialName",
+               RC.CAPACITY_NUMBER "capacityNumber",
+               RS.SHIPPER_NAME "sendName",
+               RC2.CONSIGNEE_COMPANY_NAME "reciveName",
+               TWR.RESULT_GROSS_WEIGHT "grossWeight",
+               TWR.RESULT_TARE_WEIGHT "tareWeight",
+               TWR.RESULT_GROSS_WEIGHT_TIME "grossweightTime",
+               TWR.RESULT_TARE_WEIGHT_TIME "tareWeightTime",
+                TWR.RESULT_NET_WEIGHT "resultNetWeight"
+        from OMSTRUCK_ORDER OO
+        LEFT JOIN OMSTRUCK_ORDER_MATERIAL OOM
+        ON OO.ORDER_ID=OOM.ORDER_ID
+        LEFT JOIN RMS_CAPACITY RC
+        ON OO.CAPACITY_ID=OO.CAPACITY_ID
+        LEFT JOIN RMS_MATERIAL RM
+        ON RM.MATERIAL_ID=OOM.MATERIAL_ID
+        LEFT JOIN AMS_PURCHASE_ORDER APO
+        ON OO.ORDER_PLAN_ID=APO.PURCHASE_ORDER_ID
+        LEFT JOIN RMS_SHIPPER RS
+        ON RS.SHIPPER_ID=APO.SUPPLIER_UNIT_ID
+        LEFT JOIN RMS_CONSIGNEE RC2
+        ON RC2.CONSIGNEE_COMPANY_NAME =APO.RECEIVE_UNIT_ID
+        LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+        ON  TTR.ORDER_ID=OO.ORDER_ID
+        left join TMSTRUCK_LOAD_RESULT TLR
+         ON TTR.RESULT_TOTAL_ID=TTR.RESULT_TOTAL_ID
+        LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWR
+        ON TWR.RESULT_TOTAL_ID=TTR.RESULT_TOTAL_ID
+         WHERE  OO.OPTIONER_CODE=#{orgCode}
+        <if test="oneDate != null">
+            and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt; = TLR.RESULT_LOAD_END_TIME
+        </if>
+        <if test="startDate != null">
+            and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= TLR.RESULT_LOAD_END_TIME
+            and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= TLR.RESULT_LOAD_END_TIME
+        </if>
+    </select>
+
+
 </mapper>