Browse Source

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

luobang 2 years ago
parent
commit
03f8714430
21 changed files with 512 additions and 35 deletions
  1. 7 3
      src/main/java/com/steerinfo/dil/controller/TmstruckQualityResultController.java
  2. 20 0
      src/main/java/com/steerinfo/dil/controller/TmstruckTotalResultController.java
  3. 1 1
      src/main/java/com/steerinfo/dil/mapper/TmstruckEnfactoryResultMapper.java
  4. 9 0
      src/main/java/com/steerinfo/dil/mapper/TmstruckLoadResultMapper.java
  5. 38 1
      src/main/java/com/steerinfo/dil/mapper/TmstruckTotalResultMapper.java
  6. 1 1
      src/main/java/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.java
  7. 3 0
      src/main/java/com/steerinfo/dil/service/ITmstruckTotalResultService.java
  8. 2 2
      src/main/java/com/steerinfo/dil/service/impl/StatisticalReportImpl.java
  9. 27 0
      src/main/java/com/steerinfo/dil/service/impl/TmstruckLoadResultServiceImpl.java
  10. 2 0
      src/main/java/com/steerinfo/dil/service/impl/TmstruckQualityResultServiceImpl.java
  11. 209 10
      src/main/java/com/steerinfo/dil/service/impl/TmstruckTotalResultServiceImpl.java
  12. 4 0
      src/main/java/com/steerinfo/dil/service/impl/TmstruckUnloadResultServiceImpl.java
  13. 7 0
      src/main/java/com/steerinfo/dil/service/impl/TmstruckWeightResultServiceImpl.java
  14. 11 1
      src/main/resources/com/steerinfo/dil/mapper/StatisticalReportMapper.xml
  15. 2 2
      src/main/resources/com/steerinfo/dil/mapper/TmstruckEnfactoryResultMapper.xml
  16. 15 3
      src/main/resources/com/steerinfo/dil/mapper/TmstruckLeaveFactoryResultMapper.xml
  17. 33 0
      src/main/resources/com/steerinfo/dil/mapper/TmstruckLoadResultMapper.xml
  18. 1 4
      src/main/resources/com/steerinfo/dil/mapper/TmstruckTimeTaskResultMapper.xml
  19. 108 2
      src/main/resources/com/steerinfo/dil/mapper/TmstruckTotalResultMapper.xml
  20. 2 2
      src/main/resources/com/steerinfo/dil/mapper/TmstruckUnloadResultMapper.xml
  21. 10 3
      src/main/resources/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.xml

+ 7 - 3
src/main/java/com/steerinfo/dil/controller/TmstruckQualityResultController.java

@@ -77,9 +77,13 @@ public class TmstruckQualityResultController extends BaseRESTfulController {
         PageHelper.startPage(pageNum,pageSize);
         //分页数据
         List<Map<String, Object>> qualityResult = tmstruckQualityResultService.getQualityResult(mapValue);
-        DataChange.dataTo2Number(qualityResult, "resultDeduction");
-        PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,qualityResult);
-        return success(pageList);
+        if (qualityResult!=null){
+            DataChange.dataTo2Number(qualityResult, "resultDeduction");
+            PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,qualityResult);
+            return success(pageList);
+        }else {
+            return failed("数据为空");
+        }
     }
 
 

+ 20 - 0
src/main/java/com/steerinfo/dil/controller/TmstruckTotalResultController.java

@@ -127,4 +127,24 @@ public class TmstruckTotalResultController extends BaseRESTfulController {
         PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,qualityResult);
         return success(pageList);
     }
+
+    /**
+     * 修改订单线路ID,并迁移实绩。目前仅支持采购辅料
+     * @param mapValue
+     * @return
+     */
+    @PostMapping("/changeOrderLine")
+    public RESTfulResult changeOrderLine(@RequestBody(required=false) Map<String,Object> mapValue){
+        try{
+            tmstruckTotalResultService.changeOrderLine(mapValue);
+        }catch (Exception e){
+            e.printStackTrace();
+            if(e.getMessage()==null || e.getMessage().contains("Exception")){
+                return failed("修改失败,未知原因!",e.getMessage());
+            }else{
+                return failed(e.getMessage());
+            }
+        }
+        return success(1);
+    }
 }

+ 1 - 1
src/main/java/com/steerinfo/dil/mapper/TmstruckEnfactoryResultMapper.java

@@ -10,7 +10,7 @@ import java.util.List;
 import java.util.Map;
 
 @Mapper
-public interface TmstruckEnfactoryResultMapper extends IBaseMapper<TmstruckEnfactoryResult, Short> {
+public interface TmstruckEnfactoryResultMapper extends IBaseMapper<TmstruckEnfactoryResult, BigDecimal> {
     //获取采购进口矿进厂实绩
     List<Map<String, Object>> getCGJKEnFactoryResult(Map<String, Object> map);
 

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

@@ -6,6 +6,7 @@ import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 
+import javax.management.ObjectName;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
@@ -120,6 +121,14 @@ public interface TmstruckLoadResultMapper extends IBaseMapper<TmstruckLoadResult
     //查找当前订单共有几次出
     List<Integer> allOutFactoryNum(BigDecimal orderId);
 
+    //查找当前订单共有几次出
+    List<Integer> allOutFactoryJudge(BigDecimal orderId);
+
+    //查询是否存在未装货出厂实绩
+    int countJudgeLeave(Map<String, Object> map);
+    //更新成装货路段顺序号
+    int updateLoadSeq(Map<String, Object> map);
+
     //修改装货路段顺序号
     int updateSqe(@Param("orderId")BigDecimal orderId);
 

+ 38 - 1
src/main/java/com/steerinfo/dil/mapper/TmstruckTotalResultMapper.java

@@ -1,10 +1,11 @@
 package com.steerinfo.dil.mapper;
 
-import com.steerinfo.dil.model.TmstruckTotalResult;
+import com.steerinfo.dil.model.*;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Select;
 
+import javax.management.ObjectName;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
@@ -25,4 +26,40 @@ public interface TmstruckTotalResultMapper extends IBaseMapper<TmstruckTotalResu
 
     //查询当前没有总实绩的运输订单,为其补录
     List<BigDecimal> getOrderForBulu();
+
+    //查询总实绩Id,线路Id
+    Map<String,Object> getLineId(Map<String,Object> map);
+
+    //通过订单Id 查询关联的线路子表顺序
+    List<Map<String, Object>> getLineMesByOrderId(Map<String,Object> map);
+
+    //更新订单线路或者路段顺序号
+    int updateLineId(Map<String,Object> map);
+
+    //查询所有/有效进厂
+    List<TmstruckEnfactoryResult> selectAllEnfactory(Map<String, Object> map);
+
+    //查询所有/有效计量
+    List<TmstruckWeightResult> selectAllWeight(Map<String, Object> map);
+
+    //查询所有/有效装货
+    List<TmstruckLoadResult> selectAllLoad(Map<String, Object> map);
+
+    //查询所有/有效卸货
+    List<TmstruckUnloadResult> selectAllUnload(Map<String, Object> map);
+
+    //查询所有/有效出厂
+    List<TmstruckLeaveFactoryResult> selectAllLeavefactory(Map<String, Object> map);
+
+    //删除所有进厂实绩
+    int deleteEnByEnTotal(Map<String, Object> map);
+
+    //删除所有计量实绩
+    int deleteWeightByEnTotal(Map<String, Object> map);
+
+    //删除所有卸货实绩
+    int deleteUnloadByEnTotal(Map<String, Object> map);
+
+    //删除所有出厂实绩
+    int deleteLeaveByEnTotal(Map<String, Object> map);
 }

+ 1 - 1
src/main/java/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.java

@@ -13,7 +13,7 @@ import java.util.List;
 import java.util.Map;
 
 @Mapper
-public interface TmstruckWeightResultMapper extends IBaseMapper<TmstruckWeightResult, Short> {
+public interface TmstruckWeightResultMapper extends IBaseMapper<TmstruckWeightResult, BigDecimal> {
     //查询最大主键Id
     @Select("select seq_tmstruck_weight_result.nextval from dual")
     BigDecimal selectMaxId();

+ 3 - 0
src/main/java/com/steerinfo/dil/service/ITmstruckTotalResultService.java

@@ -20,4 +20,7 @@ public interface ITmstruckTotalResultService {
 
     //查询倒库作业
     List<Map<String, Object>> getAllReverseResult(Map<String, Object> mapValue);
+
+    //修改路段顺序号
+    int changeOrderLine(Map<String, Object> mapValue) throws Exception;
 }

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

@@ -74,7 +74,7 @@ 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) {
+        /*for(Map<String, Object> map1 : mapList) {
             if ( map1.get("resultEntryGateTime") == null) {
                 map1.put("transportStatus", "未进厂");
                 continue;
@@ -95,7 +95,7 @@ public class StatisticalReportImpl implements IStatisticalReportService {
                 map1.put("transportStatus", "已签收");
             }
 
-        }
+        }*/
         for (Map<String, Object> mesMap : mapList) {
             calculateDifferenceTime(mesMap);
         }

+ 27 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckLoadResultServiceImpl.java

@@ -314,6 +314,11 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
         }
         ////更新路段顺序号
         //utilsService.updateOrderLineSequence(map);
+        //判断是否存在未装货出厂的出厂实绩
+        if(tmstruckLoadResultMapper.countJudgeLeave(mesMap)>0){
+            //回滚出厂信息
+            rollbackJudge(mesMap);
+        }
         //判断是否为未装货
         if (map.get("insertUpdateRemark")!=null) {
             String insertUpdateRemark = (String) map.get("insertUpdateRemark");
@@ -405,6 +410,28 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
         return tmstruckLoadResultMapper.updateSqe(orderId);
     }
 
+    /**
+     * 回退未装货
+     * @Author TXF
+     * @Date 2022/2/13 12:59
+     * @param map
+     * @return
+     **/
+    public int rollbackJudge(Map<String, Object> map) {
+        BigDecimal orderId =DataChange.dataToBigDecimal(map.get("orderId"));
+        //查找当前订单所有未装货出厂
+        List<Integer> resultIdList = tmstruckLoadResultMapper.allOutFactoryJudge(orderId);
+        for(Integer resultId: resultIdList){
+            //清空出厂信息
+            TmstruckLeaveFactoryResult tmstruckLeaveFactoryResult = tmstruckLeaveFactoryResultMapper.selectByPrimaryKey(new BigDecimal(resultId));
+            tmstruckLeaveFactoryResult.setResultOutMode(null);
+            tmstruckLeaveFactoryResult.setResultOutGateTime(null);
+            tmstruckLeaveFactoryResultMapper.updateByPrimaryKey(tmstruckLeaveFactoryResult);
+        }
+        //更新订单路段顺序号为装货路段顺序号
+        return tmstruckLoadResultMapper.updateLoadSeq(map);
+    }
+
     /**
      * 添加装车标准时长ID
      * @param orderNumber

+ 2 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckQualityResultServiceImpl.java

@@ -58,6 +58,8 @@ public class TmstruckQualityResultServiceImpl implements ITmstruckQualityResultS
             case 24:
             case 15:
             case 16:
+            case 17:
+            case 18:
                 return tmstruckQualityResultMapper.getInwardQualityResult(map); //apiId:150
             case 11:
                 break;

+ 209 - 10
src/main/java/com/steerinfo/dil/service/impl/TmstruckTotalResultServiceImpl.java

@@ -2,23 +2,17 @@ package com.steerinfo.dil.service.impl;
 
 import com.steerinfo.dil.feign.OmsFeign;
 import com.steerinfo.dil.feign.QmsFeign;
-import com.steerinfo.dil.mapper.TmstruckEnfactoryResultMapper;
-import com.steerinfo.dil.mapper.TmstruckTotalResultMapper;
-import com.steerinfo.dil.mapper.TmstruckWeightResultMapper;
-import com.steerinfo.dil.model.TmstruckEnfactoryResult;
-import com.steerinfo.dil.model.TmstruckTotalResult;
-import com.steerinfo.dil.model.TmstruckWeightResult;
+import com.steerinfo.dil.mapper.*;
+import com.steerinfo.dil.model.*;
 import com.steerinfo.dil.service.ITmstruckTotalResultService;
+import com.steerinfo.dil.util.DataChange;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @ author    :TXF
@@ -40,6 +34,36 @@ public class TmstruckTotalResultServiceImpl implements ITmstruckTotalResultServi
     @Autowired
     TmstruckWeightResultMapper tmstruckWeightResultMapper;
 
+    @Autowired
+    TmstruckLoadResultMapper tmstruckLoadResultMapper;
+
+    @Autowired
+    TmstruckUnloadResultMapper tmstruckUnloadResultMapper;
+
+    @Autowired
+    TmstruckLeaveFactoryResultMapper  tmstruckLeaveFactoryResultMapper;
+
+    @Autowired
+    TmstruckEnfactoryResultServiceImpl tmstruckEnfactoryResultService;
+
+    @Autowired
+    TmstruckLoadResultServiceImpl tmstruckLoadResultService;
+
+    @Autowired
+    TmstruckUnloadResultServiceImpl tmstruckUnloadResultService;
+
+    @Autowired
+    TmstruckWeightResultServiceImpl tmstruckWeightResultService;
+
+    @Autowired
+    TmstruckLeaveFactoryResultServiceImpl tmstruckLeaveFactoryResultService;
+
+    @Autowired
+    TmstruckReturnResultServiceImpl tmstruckReturnResultService;
+
+
+
+
     /**
      * 新增实绩总表
      * 运输订单ID
@@ -159,4 +183,179 @@ public class TmstruckTotalResultServiceImpl implements ITmstruckTotalResultServi
             addTotalResult(orderId);
         }
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public int changeOrderLine(Map<String, Object> mapValue) throws Exception {
+        //查询订单详情
+        Map<String,Object> mesMap=tmstruckTotalResultMapper.getLineId(mapValue);
+        if(mesMap==null){
+            throw new Exception("订单状态异常,无法变更!");
+        }
+        //更新线路Id
+        if(mapValue.get("lineId")==null){
+            throw new Exception("请选择线路!");
+        }else if(DataChange.dataToBigDecimal(mesMap.get("lineId")).compareTo(DataChange.dataToBigDecimal(mapValue.get("lineId")))==0){
+            throw new Exception("线路一致,无需更新!");
+        }else{
+            tmstruckTotalResultMapper.updateLineId(mapValue);
+        }
+        //校验订单,如果未接单就直接结束,已接单则继续修改实绩
+        if(DataChange.dataToBigDecimal(mesMap.get("orderStatus")).compareTo(new BigDecimal(4))==0){
+            return 1;
+        }
+        //查询并记录有效实绩,进厂,计量,装货,卸货,出厂
+        mesMap.put("flag","1");//只查询有效实绩
+        List<TmstruckEnfactoryResult> enfactoryResults= tmstruckTotalResultMapper.selectAllEnfactory(mesMap);
+        List<TmstruckWeightResult> tmstruckWeightResults= tmstruckTotalResultMapper.selectAllWeight(mesMap);
+        List<TmstruckUnloadResult> unloadResults=tmstruckTotalResultMapper.selectAllUnload(mesMap);
+        List<TmstruckLeaveFactoryResult> leaveFactoryResults=tmstruckTotalResultMapper.selectAllLeavefactory(mesMap);
+        System.out.println(enfactoryResults);
+        System.out.println(tmstruckWeightResults);
+        System.out.println(unloadResults);
+        System.out.println(leaveFactoryResults);
+        //删除所有旧线路实绩
+        tmstruckTotalResultMapper.deleteEnByEnTotal(mesMap);
+        tmstruckTotalResultMapper.deleteWeightByEnTotal(mesMap);
+        tmstruckTotalResultMapper.deleteUnloadByEnTotal(mesMap);
+        tmstruckTotalResultMapper.deleteLeaveByEnTotal(mesMap);
+        //新增所有新线路实绩
+        mesMap.put("lineId",mapValue.get("lineId"));
+        addAllSonResult(mesMap);
+        //查询并记录所有新实绩
+        System.out.println("-------------------------------------");
+        mesMap.put("flag","0");//打开查询所有
+        List<TmstruckEnfactoryResult> enfactoryResultsNew= tmstruckTotalResultMapper.selectAllEnfactory(mesMap);
+        List<TmstruckWeightResult> tmstruckWeightResultsNew= tmstruckTotalResultMapper.selectAllWeight(mesMap);
+        //List<TmstruckUnloadResult> unloadResultsNew=tmstruckTotalResultMapper.selectAllUnload(mesMap);//卸货和出厂不处理
+        //List<TmstruckLeaveFactoryResult> leaveFactoryResultsNew=tmstruckTotalResultMapper.selectAllLeavefactory(mesMap);
+        System.out.println(enfactoryResultsNew);
+        System.out.println(tmstruckWeightResultsNew);
+        //System.out.println(unloadResultsNew);
+        //System.out.println(leaveFactoryResultsNew);
+        //更新订单信息,按顺序更新
+        for(int i=0;i<enfactoryResults.size();i++){
+            //进厂实绩
+            try{
+                TmstruckEnfactoryResult oldResult=enfactoryResults.get(i);
+                TmstruckEnfactoryResult newResult=enfactoryResultsNew.get(i);
+                if(oldResult!=null && newResult!=null){
+                    newResult.setGatepostId(oldResult.getGatepostId());
+                    newResult.setResultEntryMode(oldResult.getResultEntryMode());
+                    newResult.setResultEntryGateTime(oldResult.getResultEntryGateTime());
+                }
+                tmstruckEnfactoryResultMapper.updateByPrimaryKeySelective(newResult);
+            }catch (Exception e){
+                //数组越界,不处理
+            }
+        }
+        for(int i=0;i<tmstruckWeightResults.size();i++){
+            //计量实绩
+            try{
+                TmstruckWeightResult oldResult=tmstruckWeightResults.get(i);
+                TmstruckWeightResult newResult=tmstruckWeightResultsNew.get(i);
+                if(oldResult!=null && newResult!=null){
+                    newResult.setResultGrossPlaceId(oldResult.getResultGrossPlaceId());
+                    newResult.setResultGrossWeight(oldResult.getResultGrossWeight());
+                    newResult.setResultGrossWeightTime(oldResult.getResultGrossWeightTime());
+                    newResult.setMaterialId(oldResult.getMaterialId());
+                    newResult.setResultPoundNo(oldResult.getResultPoundNo());
+//                    newResult.setResultTarePlaceId(oldResult.getResultTarePlaceId());
+//                    newResult.setResultTareWeight(oldResult.getResultTareWeight());
+//                    newResult.setResultTareWeightTime(oldResult.getResultTareWeightTime());
+                }
+                tmstruckWeightResultMapper.updateByPrimaryKeySelective(newResult);
+            }catch (Exception e){
+                //数组越界,不处理
+            }
+        }
+        return 1;
+    }
+
+    /**
+     * 通过线路子表路线图生成各实绩
+     * @param map
+     * @return
+     */
+    public int addAllSonResult(Map<String, Object> map){
+        Integer resultTotalId = DataChange.dataToBigDecimal(map.get("resultTotalId")).intValue();
+        Integer lineId = DataChange.dataToBigDecimal(map.get("lineId")).intValue();
+        int result = 0;
+        //通过总实绩Id 查询关联的线路子表顺序
+        List<Map<String, Object>> segmentList = tmstruckTotalResultMapper.getLineMesByOrderId(map);
+        Map<String,Object> totalIdMap = new HashMap<>();
+        totalIdMap.put("resultTotalId",resultTotalId);
+        totalIdMap.put("lineId", lineId);
+        // 遍历路段顺序号子表
+        int count = 0;
+        BigDecimal lineType = (BigDecimal) segmentList.get(0).get("lineType");
+        if (lineType.intValue() == 4) {
+            count++;
+        }
+        //存放皮重路段顺序号和毛重路段顺序号map
+        Map<String, Object> tareAndGrossSegmentMap = new HashMap<>();
+        for (Map<String,Object> segmentMap : segmentList) {
+            BigDecimal segmentSqe = (BigDecimal) segmentMap.get("segmentSqe");
+            String linkName = (String) segmentMap.get("linkName");
+            totalIdMap.put("segmentSqe",segmentSqe);
+            // 判断是否是计毛
+            if (linkName.equals("计毛")) {
+                // 如果是计量则加一
+                count ++;
+                tareAndGrossSegmentMap.put("grossSegmentSqe", segmentSqe);
+                // 有两个计量的时候则新增实绩
+                if (count == 2) {
+                    totalIdMap.putAll(tareAndGrossSegmentMap);//将皮重顺序号和毛重路段顺序号放进去
+                    tmstruckWeightResultService.addWeightResult(totalIdMap);
+                    // 新增一次则对计数器清零
+                    count = 0;
+                    tareAndGrossSegmentMap.clear(); // 清空毛重皮重 map
+                    result++;
+                }
+            }
+            // 判断是否是计皮
+            if (linkName.equals("计皮")) {
+                // 如果是计皮则加一
+                count ++;
+                tareAndGrossSegmentMap.put("tareSegmentSqe", segmentSqe);
+                // 有两个计量的时候则新增实绩
+                if (count == 2) {
+                    totalIdMap.putAll(tareAndGrossSegmentMap);
+                    tmstruckWeightResultService.addWeightResult(totalIdMap);
+                    // 新增一次则对计数器清零
+                    count = 0;
+                    tareAndGrossSegmentMap.clear(); // 清空毛重皮重 map
+                    result++;
+                }
+            }
+            // 进厂
+            if (linkName.equals("进厂")) {
+                tmstruckEnfactoryResultService.addEnFactoryResult(totalIdMap);
+                result++;
+            }
+            // 出厂
+            if (linkName.equals("出厂")) {
+                tmstruckLeaveFactoryResultService.addLeaveFactory(totalIdMap);
+                result++;
+            }
+            // 装货
+            if (linkName.equals("装货")) {
+                tmstruckLoadResultService.addLoadResult(totalIdMap);
+                result++;
+            }
+            // 卸货
+            if (linkName.equals("卸货")) {
+                tmstruckUnloadResultService.addUnloadResult(totalIdMap);
+                result++;
+            }
+            // 退货
+//            if (linkName.equals("退货")) {
+//                totalIdMap.put("returnReason", map.get("returnReason")); //退货原因 仅退货有用
+//                totalIdMap.put("orderId", map.get("orderId")); //添加新订单ID
+//                tmstruckReturnResultService.addReturnGoodsResult(totalIdMap);
+//                result++;
+//            }
+        }
+        return result;
+    }
 }

+ 4 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckUnloadResultServiceImpl.java

@@ -124,6 +124,10 @@ public class TmstruckUnloadResultServiceImpl implements ITmstruckUnloadResultSer
             case 24:
                 return tmstruckUnloadResultMapper.getImportedDomesticNzUnload2Result(map); //apiId:356
             case 11:
+                String con = (String) map.get("con");
+                if (con!=null){
+                    map.put("con","%"+con+"%");
+                }
                 return tmstruckUnloadResultMapper.getInFactoryUnloadResult(map); //apiId:360
             case 12:
             case 13:

+ 7 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckWeightResultServiceImpl.java

@@ -153,6 +153,13 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
     @Override
     public List<Map<String, Object>> getAllJiPiResult(Map<String, Object> map) {
         Integer orderType = (Integer) map.get("orderTypee");
+        if (orderType==2){
+            String endDate = (String) map.get("endDate");
+            if (endDate!=null){
+                String s = endDate.replaceAll("00:00:00", "23:59:59");
+                map.put("endDate",s);
+            }
+        }
         switch (orderType){
             case 1:
             case 2:

+ 11 - 1
src/main/resources/com/steerinfo/dil/mapper/StatisticalReportMapper.xml

@@ -363,7 +363,17 @@
         TRR.RESULT_ARRIVAL_ADDRESS "receiptAddress",
         RM.MATERIAL_SPECIFICATION || RM.MATERIAL_MODEL "materialCode",
         RM.MATERIAL_NAME  || TLR.INSERT_UPDATE_REMARK "likeRemark",
-        ASM.SALE_WAREHOUSE || RW.WAREHOUSE_NAME "wareHouse"
+        ASM.SALE_WAREHOUSE || RW.WAREHOUSE_NAME "wareHouse",
+        CASE
+        WHEN TER.RESULT_ENTRY_GATE_TIME IS NULL
+        THEN '未进厂'
+        when TLFR.RESULT_OUT_GATE_TIME IS NULL
+        THEN '已进厂'
+        when TAR.RESULT_ARRIVAL_ADDRESS IS NULL
+        THEN '已出厂'
+        WHEN TRR.RESULT_ARRIVAL_ADDRESS IS NULL
+        THEN '已抵达'
+        ELSE '已签收' END "transportStatus"
         from TMSTRUCK_WEIGHT_RESULT TWR
         left join TMSTRUCK_TOTAL_RESULT TTR
         on TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID

+ 2 - 2
src/main/resources/com/steerinfo/dil/mapper/TmstruckEnfactoryResultMapper.xml

@@ -125,7 +125,7 @@
             </if>
         </where>
     </sql>
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
+    <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
         delete from TMSTRUCK_ENFACTORY_RESULT
         where RESULT_ID = #{resultId,jdbcType=DECIMAL}
     </delete>
@@ -339,7 +339,7 @@
         </set>
         where RESULT_ID = #{resultId,jdbcType=DECIMAL}
     </update>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
+    <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
         <include refid="select"/>
         where RESULT_ID = #{resultId,jdbcType=DECIMAL}
     </select>

+ 15 - 3
src/main/resources/com/steerinfo/dil/mapper/TmstruckLeaveFactoryResultMapper.xml

@@ -1344,13 +1344,25 @@
         where OO.ORDER_NUMBER=#{orderNumber} and oo.order_status=5
     </select>
     <select id="queryNumber" resultType="java.math.BigDecimal">
-        select oom.order_material_number  "materialNumber"
+        select ASM.MATERIAL_NUMBER  "materialNumber"
+        FROM OMSTRUCK_ORDER OO
+                 LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
+                           ON ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
+                 LEFT JOIN AMS_SALE_ORDER ASO
+                           ON ASO.SALE_ORDER_ID = ASOM.SALE_ORDER_ID
+                 LEFT JOIN AMS_SALE_TRUCKNO_MATERIAL ASTM
+                           ON ASTM.SALE_ORDER_MATERIAL_ID = ASOM.SALE_ORDER_MATERIAL_ID
+                 LEFT JOIN AMS_SALE_MATERIAL ASM
+                           ON ASM.SALE_MATERIAL_ID = ASTM.MATERIAL_ID
+        where  ASM.MATERIAL_ID=#{materialid}
+          and OO.order_number=#{orderNumber} and oo.order_status=5
+    </select>
+    <!--select oom.order_material_number  "materialNumber"
         from omstruck_order oo
         left join omstruck_order_material oom
         on oom.order_id = oo.order_id
         where oom.Material_Id=#{materialid}
-        and oo.order_number=#{orderNumber} and oo.order_status=5
-    </select>
+        and oo.order_number=#{orderNumber} and oo.order_status=5-->
     <select id="queryNumber1" resultType="java.util.Map">
         select oo.PRINTNUMBER "printnumber"
         from OMSTRUCK_ORDER oo

+ 33 - 0
src/main/resources/com/steerinfo/dil/mapper/TmstruckLoadResultMapper.xml

@@ -1726,6 +1726,32 @@
     order by TLFR.SEGMENT_SQE
   </select>
 
+  <select id="allOutFactoryJudge" resultType="int" parameterType="java.math.BigDecimal">
+    select TLFR.RESULT_ID
+    from OMSTRUCK_ORDER OO
+           left join TMSTRUCK_TOTAL_RESULT TTR on TTR.ORDER_ID = OO.ORDER_ID
+           left join TMSTRUCK_LEAVE_FACTORY_RESULT TLFR on TTR.RESULT_TOTAL_ID = TLFR.RESULT_TOTAL_ID
+    where OO.ORDER_ID = #{orderId}
+    and TLFR.RESULT_OUT_GATE_TIME is not null
+    and TLFR.RESULT_OUT_MODE = '未装货出厂'
+    order by TLFR.SEGMENT_SQE
+  </select>
+
+  <update id="updateLoadSeq">
+    UPDATE OMSTRUCK_ORDER
+    SET ORDER_LINE_SEQUENCE =
+          (
+            SELECT
+              TLR.SEGMENT_SQE
+            FROM TMSTRUCK_LOAD_RESULT TLR
+                   LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR ON TLR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+            WHERE	TTR.ORDER_ID = #{orderId}
+            ORDER BY SEGMENT_SQE
+              FETCH NEXT 1 ROWS ONLY
+          )
+    WHERE ORDER_ID = #{orderId}
+  </update>
+
   <update id="updateSqe" parameterType="java.util.Map">
     update OMSTRUCK_ORDER OO
     set OO.ORDER_LINE_SEQUENCE =
@@ -1778,5 +1804,12 @@
     select TLR.RESULT_LOAD_END_TIME "loadEndTime" from TMSTRUCK_LOAD_RESULT TLR
     WHERE TLR.RESULT_TOTAL_ID = #{resultTotalId}
   </select>
+  <select id="countJudgeLeave" resultType="java.lang.Integer">
+    SELECT
+      COUNT(TLFR.RESULT_ID)
+    FROM TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
+           LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR ON TLFR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+    WHERE	TLFR.RESULT_OUT_MODE = '未装货出厂' AND TTR.ORDER_ID = #{orderId}
+  </select>
 
 </mapper>

+ 1 - 4
src/main/resources/com/steerinfo/dil/mapper/TmstruckTimeTaskResultMapper.xml

@@ -711,9 +711,6 @@
   <sql id="orderBy">
     <if test="orderField != null and orderField != ''">
       order by "${orderField}"
-      <if test="orderType != null and orderType != ''">
-        ${orderType}
-      </if>
     </if>
   </sql>
 
@@ -858,7 +855,7 @@
       </if>
     </where>
     <include refid="orderBy"></include>
-    <if test="orderField == null  ">
+    <if test="orderField == null">
       order by "insertTime" desc
     </if>
   </select>

+ 108 - 2
src/main/resources/com/steerinfo/dil/mapper/TmstruckTotalResultMapper.xml

@@ -331,14 +331,14 @@
     #{item.resultTotalId,jdbcType=DECIMAL}
      </foreach>
   </update>
-  <delete id="batchDelete" parameterType="java.util.List">
+    <delete id="batchDelete" parameterType="java.util.List">
     delete from TMSTRUCK_TOTAL_RESULT
     where RESULT_TOTAL_ID in
     <foreach close=")" collection="list" item="id" open="(" separator=",">
       #{id}
     </foreach>
   </delete>
-  <!-- 友情提示!!!-->
+    <!-- 友情提示!!!-->
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
 <!-- 查询计数实绩 -->
   <select id="selectCountList" resultType="java.util.Map" parameterType="java.lang.String">
@@ -595,4 +595,110 @@
                                      LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR ON TTR .ORDER_ID = OO .ORDER_ID
         WHERE TTR .RESULT_TOTAL_ID IS NULL and ORDER_STATUS=5
     </select>
+    <select id="getLineId" resultType="java.util.Map">
+        SELECT
+            TTR.RESULT_TOTAL_ID "resultTotalId",
+            OO.LINE_ID "lineId",
+            OO.ORDER_STATUS "orderStatus"
+        FROM OMSTRUCK_ORDER OO
+        LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR ON TTR .ORDER_ID = OO .ORDER_ID
+        WHERE OO.ORDER_ID = #{orderId} AND OO.ORDER_STATUS IN (4,5) AND OO.ORDER_TYPE=5
+    </select>
+    <select id="getLineMesByOrderId" resultType="java.util.Map">
+        select  RLS.SEGMENT_SQE           "segmentSqe",
+                RLS.SEGMENT_START_NODE_ID "type",
+                RL.LINK_NAME              "linkName",
+                RLI.LINE_TYPE             "lineType"
+        from RMS_LINE_SEGEMNT RLS
+                 left join RMS_LINK RL
+                           on RL.LINK_ID = RLS.SEGMENT_START_NODE_ID
+                 left join RMS_LINE RLI
+                           ON RLI.LINE_ID = RLS.LINE_ID
+        where RLS.LINE_ID = #{lineId}
+          AND RLS.DELETED = 0
+        order by "segmentSqe"
+    </select>
+    <update id="updateLineId">
+        UPDATE OMSTRUCK_ORDER
+        SET LINE_ID=#{lineId}
+        <if test="orderStatus!=null">
+            ,ORDER_STATUS=#{orderStatus}
+        </if>
+        WHERE ORDER_ID=#{orderId}
+    </update>
+    <select id="selectAllEnfactory" resultType="com.steerinfo.dil.model.TmstruckEnfactoryResult">
+        SELECT RESULT_ID "resultId",
+        RESULT_TOTAL_ID "resultTotalId",
+        TMSTRUCK_ENFACTORY_RESULT.GATEPOST_ID "gatepostId",
+        RESULT_ENTRY_MODE   "resultEntryMode",
+        RESULT_ENTRY_GATE_TIME "resultEntryGateTime"
+        FROM TMSTRUCK_ENFACTORY_RESULT
+        WHERE RESULT_TOTAL_ID=#{resultTotalId}
+        <if test="flag==null || flag==1">
+            AND RESULT_ENTRY_GATE_TIME IS NOT NULL
+        </if>
+    </select>
+    <select id="selectAllWeight" resultType="com.steerinfo.dil.model.TmstruckWeightResult">
+        SELECT TMSTRUCK_WEIGHT_RESULT.WEIGHT_TASK_RESULT_ID "weightTaskResultId",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_TOTAL_ID "resultTotalId",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_POUND_NO "resultPoundNo",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_GROSS_WEIGHT "resultGrossWeight",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_GROSS_WEIGHT_TIME "resultGrossWeightTime",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_TARE_WEIGHT "resultTareWeight",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_TARE_WEIGHT_TIME "resultTareWeightTime",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_NET_WEIGHT "resultNetWeight",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_GROSS_PLACE_ID "resultGrossPlaceId",
+        TMSTRUCK_WEIGHT_RESULT.RESULT_TARE_PLACE_ID "resultTarePlaceId",
+        TMSTRUCK_WEIGHT_RESULT.MATERIAL_ID "materialId"
+        FROM TMSTRUCK_WEIGHT_RESULT
+        WHERE RESULT_TOTAL_ID=#{resultTotalId}
+        <if test="flag==null || flag==1">
+            AND (RESULT_TARE_WEIGHT_TIME IS NOT NULL OR RESULT_GROSS_WEIGHT_TIME IS NOT NULL)
+        </if>
+    </select>
+    <select id="selectAllLoad" resultType="com.steerinfo.dil.model.TmstruckLoadResult">
+        SELECT  *
+        FROM TMSTRUCK_LOAD_RESULT
+        WHERE RESULT_TOTAL_ID=#{resultTotalId}
+        <if test="flag==null || flag==1">
+            AND RESULT_LOAD_END_TIME IS NOT NULL
+        </if>
+    </select>
+    <select id="selectAllUnload" resultType="com.steerinfo.dil.model.TmstruckUnloadResult">
+        SELECT
+        TMSTRUCK_UNLOAD_RESULT.RESULT_ID "resultId",
+        TMSTRUCK_UNLOAD_RESULT.RESULT_TOTAL_ID "resultTotalId",
+        TMSTRUCK_UNLOAD_RESULT.RESULT_START_TIME "resultStartTime",
+        TMSTRUCK_UNLOAD_RESULT.RESULT_END_TIME "resultEndTime"
+        FROM TMSTRUCK_UNLOAD_RESULT
+        WHERE RESULT_TOTAL_ID=#{resultTotalId}
+        <if test="flag==null || flag==1">
+            AND RESULT_END_TIME IS NOT NULL
+        </if>
+    </select>
+    <select id="selectAllLeavefactory" resultType="com.steerinfo.dil.model.TmstruckLeaveFactoryResult">
+        SELECT
+        TMSTRUCK_LEAVE_FACTORY_RESULT.RESULT_ID  "resultId",
+        TMSTRUCK_LEAVE_FACTORY_RESULT.RESULT_TOTAL_ID  "resultTotalId",
+        TMSTRUCK_LEAVE_FACTORY_RESULT.GATEPOST_ID  "gatepostId",
+        TMSTRUCK_LEAVE_FACTORY_RESULT.RESULT_OUT_MODE "resultOutMode",
+        TMSTRUCK_LEAVE_FACTORY_RESULT.RESULT_OUT_GATE_TIME "resultOutGateTime"
+        FROM TMSTRUCK_LEAVE_FACTORY_RESULT
+        WHERE RESULT_TOTAL_ID=#{resultTotalId}
+        <if test="flag==null || flag==1">
+            AND RESULT_OUT_GATE_TIME IS NOT NULL
+        </if>
+    </select>
+    <delete id="deleteEnByEnTotal">
+        DELETE FROM TMSTRUCK_ENFACTORY_RESULT WHERE RESULT_TOTAL_ID=#{resultTotalId}
+    </delete>
+    <delete id="deleteWeightByEnTotal">
+        DELETE FROM TMSTRUCK_WEIGHT_RESULT WHERE RESULT_TOTAL_ID=#{resultTotalId}
+    </delete>
+    <delete id="deleteUnloadByEnTotal">
+        DELETE FROM TMSTRUCK_UNLOAD_RESULT WHERE RESULT_TOTAL_ID=#{resultTotalId}
+    </delete>
+    <delete id="deleteLeaveByEnTotal">
+        DELETE FROM TMSTRUCK_LEAVE_FACTORY_RESULT WHERE RESULT_TOTAL_ID=#{resultTotalId}
+    </delete>
 </mapper>

+ 2 - 2
src/main/resources/com/steerinfo/dil/mapper/TmstruckUnloadResultMapper.xml

@@ -162,7 +162,7 @@
             </if>
         </where>
     </sql>
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
+    <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
         delete from TMSTRUCK_UNLOAD_RESULT
         where RESULT_ID = #{resultId,jdbcType=DECIMAL}
     </delete>
@@ -443,7 +443,7 @@
         </set>
         where RESULT_ID = #{resultId,jdbcType=DECIMAL}
     </update>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
+    <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
         <include refid="select" />
         where RESULT_ID = #{resultId,jdbcType=DECIMAL}
     </select>

+ 10 - 3
src/main/resources/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.xml

@@ -185,7 +185,7 @@
             </if>
         </where>
     </sql>
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
+    <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
         delete from TMSTRUCK_WEIGHT_RESULT
         where WEIGHT_TASK_RESULT_ID = #{weightTaskResultId,jdbcType=DECIMAL}
     </delete>
@@ -509,7 +509,7 @@
         </set>
         where WEIGHT_TASK_RESULT_ID = #{weightTaskResultId,jdbcType=DECIMAL}
     </update>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
+    <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
         <include refid="select"/>
         where WEIGHT_TASK_RESULT_ID = #{weightTaskResultId,jdbcType=DECIMAL}
     </select>
@@ -1139,7 +1139,6 @@
         TWR.RESULT_POUND_NO "resultPoundNo",
         RCON. CONSIGNEE_COMPANY_NAME "consigneeCompanyName",
         RS.SHIPPER_NAME "shipperName"
-
         from TMSTRUCK_WEIGHT_RESULT TWR
         left join TMSTRUCK_TOTAL_RESULT TTR
         on TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
@@ -1167,6 +1166,14 @@
         where RESULT_TARE_WEIGHT_TIME is not null and OO.ORDER_TYPE in (1, 2)
         )
         <where>
+            <if test="startDate!=null">
+                to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;=
+                to_date(to_char("resultTareWeightTime",'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')
+            </if>
+            <if test="endDate!=null">
+                and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >=
+                to_date(to_char("resultTareWeightTime",'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')
+            </if>
             <if test="purchaseOrderNo != null">
                 <foreach collection="purchaseOrderNo" item="item" open="(" separator="or" close=")">
                     "purchaseOrderNo" like '%${item}%'