Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	src/main/java/com/steerinfo/dil/mapper/AmsSaleOrderMapper.java
#	src/main/resources/com/steerinfo/dil/mapper/AmsSaleOrderMapper.xml
zengyf 2 gadi atpakaļ
vecāks
revīzija
09428ad8ce

+ 1 - 1
pom.xml

@@ -194,7 +194,7 @@
                     <!--包名-->
                     <targetPackage>com.steerinfo.dil</targetPackage>
                     <tables>
-                        <table>TMSTRUCK_WEIGHT_RESULT</table>
+                        <table>OMSTRUCK_ORDER</table>
                     </tables>
                 </configuration>
                 <executions>

+ 5 - 0
src/main/java/com/steerinfo/dil/controller/AmsSaleOrderController.java

@@ -6,6 +6,7 @@ import com.steerinfo.framework.controller.RESTfulResult;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -172,4 +173,8 @@ public class AmsSaleOrderController extends BaseRESTfulController {
         return success("回传成功");
     }
 
+
+
+
+
 }

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

@@ -93,7 +93,12 @@ public class TmstruckWeightResultController extends BaseRESTfulController {
      */
     @PostMapping("/linkageDeleteTransportOrder")
     public RESTfulResult linkageDeleteTransportOrder(@RequestBody(required = false) List<Map<String, Object>> mapList) {
-        String s = tmstruckWeightResultServiceImpl.linkageDeleteTransportOrder(mapList);
+        String s = null;
+        try {
+            s = tmstruckWeightResultServiceImpl.linkageDeleteTransportOrder(mapList);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
         return success(s);
     }
 

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

@@ -145,7 +145,7 @@ public class WSFaceController extends BaseRESTfulController {
         //DeleteServiceInfo service = new DeleteServiceInfo("user", "dgjt@kingdee", "eas", "A004", "L2", 0);
         //DeleteWSFaceFacadeSrvProxyServiceLocator locator = new DeleteWSFaceFacadeSrvProxyServiceLocator();
         //service.setServername("172.16.62.243" , "8888");
-        //
+
         //WSContext wsContext = LoginTestUtil.doEASLogin(service);
         String sessionId = wsContext.getSessionId();
         Map<String , Object> resultMap = new HashMap<>();

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

@@ -68,4 +68,5 @@ public interface AmsSaleOrderMapper extends IBaseMapper<AmsSaleOrder, BigDecimal
     void insertDilNotice(Map<String,Object> map);
 
     void insertIntoNoticeUser(BigDecimal noticeId,String capacityNo);
+    int reverseApprovalOrder(BigDecimal saleOrderId);
 }

+ 3 - 0
src/main/java/com/steerinfo/dil/mapper/OmstruckOrderMapper.java

@@ -3,6 +3,7 @@ package com.steerinfo.dil.mapper;
 import com.steerinfo.dil.model.OmstruckOrder;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 
 import java.math.BigDecimal;
@@ -37,4 +38,6 @@ public interface OmstruckOrderMapper extends IBaseMapper<OmstruckOrder, BigDecim
 
     Map<String, Object> selecrCloseEntryMes(BigDecimal saleMaterialId);
 
+    List<BigDecimal> selectOrderInfo(@Param("orderNumber") String orderNumber);
+
 }

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

@@ -99,5 +99,24 @@ public interface TmstruckWeightResultMapper extends IBaseMapper<TmstruckWeightRe
     int updateOmsRedQrCode(Map<String, Object> map);
 
 
+    Map<String,Object> getOOType(String orderNumber);
+
+    int updateWeightTare(BigDecimal resultTotalId);
+
+    int updateEnfactoryResult(BigDecimal resultTotalId);
+
+    int updateOrderLineSqe(BigDecimal orderId);
+
+    Map<String, Object> selectWeightMes(Map<String, Object> weightMap);
+
+    int updateWeightResult(BigDecimal weightTaskResultId);
+
+    int updateWeightTareNoGross(BigDecimal resultTotalId);
+
+    Integer selectOrderLineSqe(BigDecimal resultTotalId);
+
+    int updateOrderLineSqeBySqe(BigDecimal orderId, Integer orderLineSqe);
+
+    BigDecimal getMaterialIdByOrderId(BigDecimal orderId);
 
 }

+ 30 - 0
src/main/java/com/steerinfo/dil/model/AmsSaleMaterial.java

@@ -146,6 +146,18 @@ public class AmsSaleMaterial implements IBasePO<BigDecimal> {
     @ApiModelProperty(value="是否控制数量",required=false)
     private String controlQuantity;
 
+    /**
+     * 制单日期(SALE_MAKE_DATE,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="制单日期",required=false)
+    private Date saleMakeDate;
+
+    /**
+     * 计划件数(MATERIAL_PLAN_NUMBER,DECIMAL,0)
+     */
+    @ApiModelProperty(value="计划件数",required=false)
+    private BigDecimal materialPlanNumber;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -342,6 +354,22 @@ public class AmsSaleMaterial implements IBasePO<BigDecimal> {
         this.controlQuantity = controlQuantity == null ? null : controlQuantity.trim();
     }
 
+    public Date getSaleMakeDate() {
+        return saleMakeDate;
+    }
+
+    public void setSaleMakeDate(Date saleMakeDate) {
+        this.saleMakeDate = saleMakeDate;
+    }
+
+    public BigDecimal getMaterialPlanNumber() {
+        return materialPlanNumber;
+    }
+
+    public void setMaterialPlanNumber(BigDecimal materialPlanNumber) {
+        this.materialPlanNumber = materialPlanNumber;
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -371,6 +399,8 @@ public class AmsSaleMaterial implements IBasePO<BigDecimal> {
         sb.append(", transferInPlanDate=").append(transferInPlanDate);
         sb.append(", transferOutPlanDate=").append(transferOutPlanDate);
         sb.append(", controlQuantity=").append(controlQuantity);
+        sb.append(", saleMakeDate=").append(saleMakeDate);
+        sb.append(", materialPlanNumber=").append(materialPlanNumber);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();

+ 49 - 4
src/main/java/com/steerinfo/dil/model/OmstruckOrder.java

@@ -76,7 +76,7 @@ public class OmstruckOrder implements IBasePO<BigDecimal> {
     private Date insertTime;
 
     /**
-     * 记录修改人(UPDATE_USERNAME,VARCHAR,20)
+     * 记录修改人(UPDATE_USERNAME,VARCHAR,200)
      */
     @ApiModelProperty(value="记录修改人",required=false)
     private String updateUsername;
@@ -88,7 +88,7 @@ public class OmstruckOrder implements IBasePO<BigDecimal> {
     private Date updateTime;
 
     /**
-     * 记录创建或修改备注(INSERT_UPDATE_REMARK,VARCHAR,100)
+     * 记录创建或修改备注(INSERT_UPDATE_REMARK,VARCHAR,200)
      */
     @ApiModelProperty(value="记录创建或修改备注",required=false)
     private String insertUpdateRemark;
@@ -100,9 +100,9 @@ public class OmstruckOrder implements IBasePO<BigDecimal> {
     private BigDecimal deleted;
 
     /**
-     * 订单类型(1:销售订单;2:焦炭发运计划;3:水渣发运计划;4:内转到异地库;5:采购辅料订单;6:采购老区燃料订单;7:采购新区燃料订单;8:采购进口矿(万州-厂内);9:内转钢坯车 ; 10:采购内转(老区-厂内); 11:厂内内转;12:零星物资进厂、13:零星物资出厂:14:钢材退货 ;15 内转精煤进厂;16 内转精煤出厂;17 采购化工材料新区订单; 18 采购化工材料老区订单)(ORDER_TYPE,DECIMAL,0)
+     * 订单类型(1:销售订单;2:焦炭发运计划;3:水渣发运计划;4:内转到异地库;5:采购辅料订单;6:采购老区燃料订单;7:采购新区燃料订单;8:采购进口矿(万州-厂内);9:内转钢坯车 ; 10:采购内转(老区-厂内); 11:厂内内转;12:零星物资进厂、13:零星物资出厂:14:钢材退货 ;15 内转精煤进厂;16 内转精煤出厂;17 采购化工材料新区订单; 18 采购化工材料老区订单25:倒库 26:计次)(ORDER_TYPE,DECIMAL,0)
      */
-    @ApiModelProperty(value="订单类型(1:销售订单;2:焦炭发运计划;3:水渣发运计划;4:内转到异地库;5:采购辅料订单;6:采购老区燃料订单;7:采购新区燃料订单;8:采购进口矿(万州-厂内);9:内转钢坯车 ; 10:采购内转(老区-厂内); 11:厂内内转;12:零星物资进厂、13:零星物资出厂:14:钢材退货 ;15 内转精煤进厂;16 内转精煤出厂;17 采购化工材料新区订单; 18 采购化工材料老区订单)",required=false)
+    @ApiModelProperty(value="订单类型(1:销售订单;2:焦炭发运计划;3:水渣发运计划;4:内转到异地库;5:采购辅料订单;6:采购老区燃料订单;7:采购新区燃料订单;8:采购进口矿(万州-厂内);9:内转钢坯车 ; 10:采购内转(老区-厂内); 11:厂内内转;12:零星物资进厂、13:零星物资出厂:14:钢材退货 ;15 内转精煤进厂;16 内转精煤出厂;17 采购化工材料新区订单; 18 采购化工材料老区订单25:倒库 26:计次)",required=false)
     private BigDecimal orderType;
 
     /**
@@ -177,6 +177,24 @@ public class OmstruckOrder implements IBasePO<BigDecimal> {
     @ApiModelProperty(value="是否可作业",required=false)
     private BigDecimal canWork;
 
+    /**
+     * 打印次数(PRINTNUMBER,DECIMAL,0)
+     */
+    @ApiModelProperty(value="打印次数",required=false)
+    private BigDecimal printnumber;
+
+    /**
+     * 运力ids(CAPACITYIDS,VARCHAR,20)
+     */
+    @ApiModelProperty(value="运力ids",required=false)
+    private String capacityids;
+
+    /**
+     * 异地库是否验收(IS_ACCEPT,DECIMAL,0)
+     */
+    @ApiModelProperty(value="异地库是否验收",required=false)
+    private BigDecimal isAccept;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -413,6 +431,30 @@ public class OmstruckOrder implements IBasePO<BigDecimal> {
         this.canWork = canWork;
     }
 
+    public BigDecimal getPrintnumber() {
+        return printnumber;
+    }
+
+    public void setPrintnumber(BigDecimal printnumber) {
+        this.printnumber = printnumber;
+    }
+
+    public String getCapacityids() {
+        return capacityids;
+    }
+
+    public void setCapacityids(String capacityids) {
+        this.capacityids = capacityids == null ? null : capacityids.trim();
+    }
+
+    public BigDecimal getIsAccept() {
+        return isAccept;
+    }
+
+    public void setIsAccept(BigDecimal isAccept) {
+        this.isAccept = isAccept;
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -447,6 +489,9 @@ public class OmstruckOrder implements IBasePO<BigDecimal> {
         sb.append(", driverTel=").append(driverTel);
         sb.append(", optionerCode=").append(optionerCode);
         sb.append(", canWork=").append(canWork);
+        sb.append(", printnumber=").append(printnumber);
+        sb.append(", capacityids=").append(capacityids);
+        sb.append(", isAccept=").append(isAccept);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();

+ 49 - 21
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -260,6 +260,12 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
             AmsSaleOrder amsSaleOrder = amsSaleOrders.get(0);
             amsSaleOrder.setDeleted(new BigDecimal(1));
             result += amsSaleOrderMapper.updateByPrimaryKeySelective(amsSaleOrder);
+            //反审的订单需将下面的运输订单关闭
+            try {
+                amsSaleOrderMapper.reverseApprovalOrder(amsSaleOrder.getSaleOrderId());
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
         }
         if (orderStatus.equals("4") && closeStatus.equals("1")){
             AmsSaleOrder amsSaleOrder = amsSaleOrders.get(0);
@@ -466,6 +472,7 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                     }
                     if (materialNumber != null && !"".equals(materialNumber)) {
                         amsSaleMaterial.setMaterialNumber(new BigDecimal(materialNumber));
+                        amsSaleMaterial.setMaterialPlanNumber(new BigDecimal(materialNumber));
                     }
                     result += amsSaleMaterialMapper.insertSelective(amsSaleMaterial);
                 }
@@ -568,6 +575,7 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                     if (materialNumber != null && !
                             "".equals(materialNumber)) {
                         amsSaleMaterial.setMaterialNumber(new BigDecimal(materialNumber));
+                        amsSaleMaterial.setMaterialPlanNumber(new BigDecimal(materialNumber));
                     }
                     BigDecimal materialId = amsSaleMaterialMapper.getMaterialId(materialCode);
                     amsSaleMaterial.setEasPrimaryId(easPrimaryId);
@@ -829,6 +837,7 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                 amsSaleMaterial.setMaterialId(materialId);
                 //设置辅助数量
                 amsSaleMaterial.setMaterialNumber(DataChange.dataToBigDecimal(auxiliaryQuantity));
+                amsSaleMaterial.setMaterialPlanNumber(DataChange.dataToBigDecimal(auxiliaryQuantity));
                 amsSaleMaterial.setInsertTime(new Date());
                 amsSaleMaterial.setInsertUsername("金蝶");
                 amsSaleMaterial.setMeterWeight(DataChange.dataToBigDecimal(meterWeight));
@@ -1036,35 +1045,54 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
     @Transactional(rollbackFor = {Exception.class})
     public int receiveOrderResult(Map<String, Object> map) throws Exception {
         int result=0;
-        OmstrainOrder omstrainOrder = new OmstrainOrder();
+        System.out.println("异地库回传接口");
+        System.out.println(map);
+        System.out.println("异地库回传接口");
         //获取运输订单号
         Object orderNumber = map.get("orderNumber");
+        Object receviceOrNot = map.get("receviceOrNot");
         //获取备注-如果是异常情况,填写备注。
         Object remark = map.get("remark");
-        if (remark!=null){
-            omstrainOrder.setAcceptRemark((String) remark);
-        }
-        //接收车皮号
-        Object wagonNo = map.get("wagonNo");
-        BigDecimal orderId = omstrainOrderMapper.selectOrderIdBywagonNoAndOrderNumber((String) orderNumber, (String) wagonNo);
-        if (orderId==null){
-            throw new Exception("提示回传车皮号与运输订单号不匹配");
-        }
-        //根据运输订单号查找id
-        omstrainOrder.setOrderId(orderId);
-        //接收是否收货(0为未收货,1为已收货)
-        Object receviceOrNot = map.get("receviceOrNot");
-        omstrainOrder.setIsAccept(DataChange.dataToBigDecimal(receviceOrNot));
-        //接收时间
         String receviceTime2 =(String) map.get("receviceTime");
         SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        try {
-            Date receviceTime = sdf2.parse(receviceTime2);
+        Date receviceTime = sdf2.parse(receviceTime2);
+        Object transportType = map.get("transportType");
+        Object wagonNo = map.get("wagonNo");
+        if(transportType != null && transportType.equals("汽运")) {
+            List<BigDecimal> orderIds = omstruckOrderMapper.selectOrderInfo((String) orderNumber);
+            if(orderIds.size() == 0) {
+                throw new Exception("提示回传车皮号与运输订单号不匹配");
+            }
+            for (BigDecimal orderId : orderIds) {
+                OmstruckOrder omstruckOrder = new OmstruckOrder();
+                omstruckOrder.setOrderId(orderId);
+                if (remark != null) {
+                    omstruckOrder.setInsertUpdateRemark((String) remark);
+                }
+                omstruckOrder.setIsAccept(DataChange.dataToBigDecimal(receviceOrNot));
+                omstruckOrder.setUpdateTime(receviceTime);
+                result = omstruckOrderMapper.updateByPrimaryKeySelective(omstruckOrder);
+            }
+        }else {
+            OmstrainOrder omstrainOrder = new OmstrainOrder();
+            if (remark!=null){
+                omstrainOrder.setAcceptRemark((String) remark);
+            }
+            //接收车皮号
+            BigDecimal orderId = omstrainOrderMapper.selectOrderIdBywagonNoAndOrderNumber((String) orderNumber, (String) wagonNo);
+            if (orderId==null){
+                throw new Exception("提示回传车皮号与运输订单号不匹配");
+            }
+            //根据运输订单号查找id
+            omstrainOrder.setOrderId(orderId);
+            //接收是否收货(0为未收货,1为已收货)
+            omstrainOrder.setIsAccept(DataChange.dataToBigDecimal(receviceOrNot));
+            //接收时间
             omstrainOrder.setIsAcceptTime(receviceTime);
-        } catch (ParseException e) {
-            e.printStackTrace();
+            result = omstrainOrderMapper.updateByPrimaryKeySelective(omstrainOrder);
         }
-       result = omstrainOrderMapper.updateByPrimaryKeySelective(omstrainOrder);
+
+
         return result;
     }
 

+ 68 - 3
src/main/java/com/steerinfo/dil/service/impl/TmstruckWeightResultServiceImpl.java

@@ -13,6 +13,7 @@ import org.apache.commons.lang.time.FastDateFormat;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scripting.groovy.GroovyScriptEvaluator;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -201,7 +202,11 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
             dealWithLxOrder(map, stringObjectMap);
         }
         //推送数据
-        utilsService.pushMesToWebsocket((String) oneMap.get("capacityNumber"), "计量");
+        try {
+            utilsService.pushMesToWebsocket((String) oneMap.get("capacityNumber"), "计量");
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
         return map.get("orderNumber") + "成功";
     }
 
@@ -225,6 +230,7 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
         }
         //根据传输过来的物资名称和规格型号
         Object resultNetWeight = map.get("resultNetWeight");
+
         if(resultNetWeight  != null && !"".equals(resultNetWeight)) {
             BigDecimal materialId = tmstruckWeightResultMapper.getMaterialId(map);
             if(materialId == null){
@@ -256,6 +262,12 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
             }
             tmstruckWeightResultMapper.updateOrderMaterial(map);
             tmstruckWeightResultMapper.updateSaleMaterialId(saleMaterialId,materialNum,newWeight);
+        }else{
+            //根据运单id查询其中一个物资id,确保报表能有数据
+            BigDecimal materialId = tmstruckWeightResultMapper.getMaterialIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
+            if (materialId != null) {
+                tmstruckWeightResult.setMaterialId(materialId);
+            }
         }
         addWeightResult(tmstruckWeightResult, map); //添加计量实绩数据
         // 更新订单中路段顺序号,如果毛重时间为空则为计皮:也就是销售第一次计皮,反之有毛重时间则为计毛
@@ -696,11 +708,64 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
      * @param mapList
      * @return
      */
-    public String linkageDeleteTransportOrder(List<Map<String, Object>> mapList) {
+    public String linkageDeleteTransportOrder(List<Map<String, Object>> mapList) throws Exception{
         //联动删除
         for (Map<String, Object> map : mapList) {
             String orderNumber = (String) map.get("orderNumber");
-            tmstruckWeightResultMapper.linkageDeleteTransportOrder(orderNumber);
+            //判断该运输订单号是否是钢材的
+            Map<String,Object> orderMes = tmstruckWeightResultMapper.getOOType(orderNumber);
+            BigDecimal resultTotalId = DataChange.dataToBigDecimal(orderMes.get("resultTotalId"));
+            BigDecimal orderId = DataChange.dataToBigDecimal(orderMes.get("orderId"));
+            Integer orderType = DataChange.dataToBigDecimal(orderMes.get("orderType")).intValue();
+            if(orderType == 1 || orderType == 4) {
+                //删皮,此时没有物资名称,只有运输订单号
+                if(map.get("good") == null || "".equals(map.get("good"))){
+                    //清空皮重信息,且将进厂时间清空,且将路段顺序号置为0
+                    tmstruckWeightResultMapper.updateWeightTare(resultTotalId);
+                    tmstruckWeightResultMapper.updateEnfactoryResult(resultTotalId);
+                    tmstruckWeightResultMapper.updateOrderLineSqe(orderId);
+                }
+                //如果传输了物资,则判断该物资是第几拼
+                if(map.get("good") != null && !"".equals(map.get("good"))){
+                    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                    //查询物资
+                    BigDecimal materialId = tmstruckWeightResultMapper.getMaterialId(map);
+                    if(materialId == null) {
+                        return "没有找到该物资,返回failed";
+                    }
+                    //查询该物资id及对应的净重还有毛重时间是哪一拼
+                    String resultGrossWeightTime = (String) map.get("resultCrossWeightTime");
+                    Date resultGrossWeightTime1 = sdf.parse(resultGrossWeightTime);
+                    Map<String, Object> weightMap = new HashMap<>();
+                    weightMap.put("resultTotalId",orderMes.get("resultTotalId"));
+                    weightMap.put("materialId",materialId);
+                    weightMap.put("resultGrossWeightTime",resultGrossWeightTime);
+                    Map<String,Object> map1 = tmstruckWeightResultMapper.selectWeightMes(weightMap);
+                    //根据查询信息判断是哪一拼
+                    Integer spellNum = (DataChange.dataToBigDecimal(map1.get("grossSqe")).intValue() + DataChange.dataToBigDecimal(map1.get("tareSqe")).intValue()) / 6;
+                    if(spellNum == 1){
+                        //如果是第一拼
+                        tmstruckWeightResultMapper.updateWeightResult(DataChange.dataToBigDecimal(map1.get("weightTaskResultId")));
+                        //删除下二拼的皮重
+                        tmstruckWeightResultMapper.updateWeightTareNoGross(resultTotalId);
+                        tmstruckWeightResultMapper.updateEnfactoryResult(resultTotalId);
+                        tmstruckWeightResultMapper.updateOrderLineSqe(orderId);
+                    }else{
+                        tmstruckWeightResultMapper.updateWeightResult(DataChange.dataToBigDecimal(map1.get("weightTaskResultId")));
+                        tmstruckWeightResultMapper.updateWeightTareNoGross(resultTotalId);
+                        //查询有净重的实绩的最大路段顺序号
+                        Integer orderLineSqe = tmstruckWeightResultMapper.selectOrderLineSqe(resultTotalId);
+                        tmstruckWeightResultMapper.updateOrderLineSqeBySqe(orderId,orderLineSqe);
+                    }
+                }
+
+
+
+
+            }else{
+                tmstruckWeightResultMapper.linkageDeleteTransportOrder(orderNumber);
+            }
+
         }
         return "success";
     }

+ 5 - 1
src/main/java/com/steerinfo/dil/service/impl/UtilsServiceImpl.java

@@ -158,7 +158,11 @@ public class UtilsServiceImpl implements IUtilsService {
         HashMap<Object, Object> sendMap = new HashMap<>();
         //将消息实体放入list中存到map中
         sendMap.put("messages", list);
-        imFeign.sendToUser(sendMap);
+        try {
+            imFeign.sendToUser(sendMap);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
     }
 
 

+ 64 - 7
src/main/resources/com/steerinfo/dil/mapper/AmsSaleMaterialMapper.xml

@@ -25,20 +25,23 @@
         <result column="TRANSFER_IN_PLAN_DATE" jdbcType="TIMESTAMP" property="transferInPlanDate" />
         <result column="TRANSFER_OUT_PLAN_DATE" jdbcType="TIMESTAMP" property="transferOutPlanDate" />
         <result column="CONTROL_QUANTITY" jdbcType="VARCHAR" property="controlQuantity" />
+        <result column="SALE_MAKE_DATE" jdbcType="TIMESTAMP" property="saleMakeDate" />
+        <result column="MATERIAL_PLAN_NUMBER" jdbcType="DECIMAL" property="materialPlanNumber" />
     </resultMap>
     <sql id="columns">
         SALE_MATERIAL_ID, SALE_ORDER_ID, MATERIAL_ID, MATERIAL_WEIGHT, MATERIAL_NUMBER, EAS_PRIMARY_ID,
     INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK,
     DELETED, SALE_WAREHOUSE, STEEL_METER, IS_POUND_SALE, METER_WEIGHT, TRANSFER_OUT_OF_WAREHOUSE,
     TRANSFER_IN_OF_WAREHOUSE, INVENTORY_TYPE, INVENTORY_STATUS, TRANSFER_IN_PLAN_DATE,
-    TRANSFER_OUT_PLAN_DATE, CONTROL_QUANTITY
+    TRANSFER_OUT_PLAN_DATE, CONTROL_QUANTITY, SALE_MAKE_DATE, MATERIAL_PLAN_NUMBER
     </sql>
     <sql id="columns_alias">
         t.SALE_MATERIAL_ID, t.SALE_ORDER_ID, t.MATERIAL_ID, t.MATERIAL_WEIGHT, t.MATERIAL_NUMBER,
     t.EAS_PRIMARY_ID, t.INSERT_USERNAME, t.INSERT_TIME, t.UPDATE_USERNAME, t.UPDATE_TIME,
     t.INSERT_UPDATE_REMARK, t.DELETED, t.SALE_WAREHOUSE, t.STEEL_METER, t.IS_POUND_SALE,
     t.METER_WEIGHT, t.TRANSFER_OUT_OF_WAREHOUSE, t.TRANSFER_IN_OF_WAREHOUSE, t.INVENTORY_TYPE,
-    t.INVENTORY_STATUS, t.TRANSFER_IN_PLAN_DATE, t.TRANSFER_OUT_PLAN_DATE, t.CONTROL_QUANTITY
+    t.INVENTORY_STATUS, t.TRANSFER_IN_PLAN_DATE, t.TRANSFER_OUT_PLAN_DATE, t.CONTROL_QUANTITY,
+    t.SALE_MAKE_DATE, t.MATERIAL_PLAN_NUMBER
     </sql>
     <sql id="select">
         SELECT <include refid="columns" /> FROM AMS_SALE_MATERIAL
@@ -117,6 +120,12 @@
             <if test="controlQuantity != null and controlQuantity != ''">
                 and CONTROL_QUANTITY = #{controlQuantity}
             </if>
+            <if test="saleMakeDate != null">
+                and TO_CHAR(SALE_MAKE_DATE,'yyyy-MM-dd') = #{saleMakeDate}
+            </if>
+            <if test="materialPlanNumber != null">
+                and MATERIAL_PLAN_NUMBER = #{materialPlanNumber}
+            </if>
         </where>
     </sql>
     <sql id="whereLike">
@@ -190,6 +199,12 @@
             <if test="controlQuantity != null and controlQuantity != ''">
                 and CONTROL_QUANTITY LIKE '%${controlQuantity}%'
             </if>
+            <if test="saleMakeDate != null">
+                and TO_CHAR(SALE_MAKE_DATE,'yyyy-MM-dd') = #{saleMakeDate}
+            </if>
+            <if test="materialPlanNumber != null">
+                and MATERIAL_PLAN_NUMBER = #{materialPlanNumber}
+            </if>
         </where>
     </sql>
     <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
@@ -265,6 +280,12 @@
         <if test="controlQuantity != null and controlQuantity != ''">
             or CONTROL_QUANTITY = #{controlQuantity}
         </if>
+        <if test="saleMakeDate != null">
+            or TO_CHAR(SALE_MAKE_DATE,'yyyy-MM-dd') = '#{saleMakeDate}'
+        </if>
+        <if test="materialPlanNumber != null">
+            or MATERIAL_PLAN_NUMBER = #{materialPlanNumber}
+        </if>
     </delete>
     <insert id="insert" parameterType="com.steerinfo.dil.model.AmsSaleMaterial">
         insert into AMS_SALE_MATERIAL (SALE_MATERIAL_ID, SALE_ORDER_ID, MATERIAL_ID,
@@ -274,7 +295,8 @@
                                        SALE_WAREHOUSE, STEEL_METER, IS_POUND_SALE,
                                        METER_WEIGHT, TRANSFER_OUT_OF_WAREHOUSE, TRANSFER_IN_OF_WAREHOUSE,
                                        INVENTORY_TYPE, INVENTORY_STATUS, TRANSFER_IN_PLAN_DATE,
-                                       TRANSFER_OUT_PLAN_DATE, CONTROL_QUANTITY)
+                                       TRANSFER_OUT_PLAN_DATE, CONTROL_QUANTITY,
+                                       SALE_MAKE_DATE, MATERIAL_PLAN_NUMBER)
         values (#{saleMaterialId,jdbcType=DECIMAL}, #{saleOrderId,jdbcType=DECIMAL}, #{materialId,jdbcType=DECIMAL},
                 #{materialWeight,jdbcType=DECIMAL}, #{materialNumber,jdbcType=DECIMAL}, #{easPrimaryId,jdbcType=VARCHAR},
                 #{insertUsername,jdbcType=VARCHAR}, #{insertTime,jdbcType=TIMESTAMP}, #{updateUsername,jdbcType=VARCHAR},
@@ -282,7 +304,8 @@
                 #{saleWarehouse,jdbcType=VARCHAR}, #{steelMeter,jdbcType=DECIMAL}, #{isPoundSale,jdbcType=DECIMAL},
                 #{meterWeight,jdbcType=DECIMAL}, #{transferOutOfWarehouse,jdbcType=VARCHAR}, #{transferInOfWarehouse,jdbcType=VARCHAR},
                 #{inventoryType,jdbcType=VARCHAR}, #{inventoryStatus,jdbcType=VARCHAR}, #{transferInPlanDate,jdbcType=TIMESTAMP},
-                #{transferOutPlanDate,jdbcType=TIMESTAMP}, #{controlQuantity,jdbcType=VARCHAR})
+                #{transferOutPlanDate,jdbcType=TIMESTAMP}, #{controlQuantity,jdbcType=VARCHAR},
+                #{saleMakeDate,jdbcType=TIMESTAMP}, #{materialPlanNumber,jdbcType=DECIMAL})
     </insert>
     <insert id="insertSelective" parameterType="com.steerinfo.dil.model.AmsSaleMaterial">
         insert into AMS_SALE_MATERIAL
@@ -356,6 +379,12 @@
             <if test="controlQuantity != null">
                 CONTROL_QUANTITY,
             </if>
+            <if test="saleMakeDate != null">
+                SALE_MAKE_DATE,
+            </if>
+            <if test="materialPlanNumber != null">
+                MATERIAL_PLAN_NUMBER,
+            </if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="saleMaterialId != null">
@@ -427,6 +456,12 @@
             <if test="controlQuantity != null">
                 #{controlQuantity,jdbcType=VARCHAR},
             </if>
+            <if test="saleMakeDate != null">
+                #{saleMakeDate,jdbcType=TIMESTAMP},
+            </if>
+            <if test="materialPlanNumber != null">
+                #{materialPlanNumber,jdbcType=DECIMAL},
+            </if>
         </trim>
     </insert>
     <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.AmsSaleMaterial">
@@ -452,7 +487,9 @@
             INVENTORY_STATUS = #{inventoryStatus,jdbcType=VARCHAR},
             TRANSFER_IN_PLAN_DATE = #{transferInPlanDate,jdbcType=TIMESTAMP},
             TRANSFER_OUT_PLAN_DATE = #{transferOutPlanDate,jdbcType=TIMESTAMP},
-            CONTROL_QUANTITY = #{controlQuantity,jdbcType=VARCHAR}
+            CONTROL_QUANTITY = #{controlQuantity,jdbcType=VARCHAR},
+            SALE_MAKE_DATE = #{saleMakeDate,jdbcType=TIMESTAMP},
+            MATERIAL_PLAN_NUMBER = #{materialPlanNumber,jdbcType=DECIMAL}
         where SALE_MATERIAL_ID = #{saleMaterialId,jdbcType=DECIMAL}
     </update>
     <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.AmsSaleMaterial">
@@ -524,6 +561,12 @@
             <if test="controlQuantity != null">
                 CONTROL_QUANTITY = #{controlQuantity,jdbcType=VARCHAR},
             </if>
+            <if test="saleMakeDate != null">
+                SALE_MAKE_DATE = #{saleMakeDate,jdbcType=TIMESTAMP},
+            </if>
+            <if test="materialPlanNumber != null">
+                MATERIAL_PLAN_NUMBER = #{materialPlanNumber,jdbcType=DECIMAL},
+            </if>
         </set>
         where SALE_MATERIAL_ID = #{saleMaterialId,jdbcType=DECIMAL}
     </update>
@@ -551,7 +594,8 @@
         METER_WEIGHT, TRANSFER_OUT_OF_WAREHOUSE,
         TRANSFER_IN_OF_WAREHOUSE, INVENTORY_TYPE,
         INVENTORY_STATUS, TRANSFER_IN_PLAN_DATE,
-        TRANSFER_OUT_PLAN_DATE, CONTROL_QUANTITY
+        TRANSFER_OUT_PLAN_DATE, CONTROL_QUANTITY,
+        SALE_MAKE_DATE, MATERIAL_PLAN_NUMBER
         )
         ( <foreach collection="list" item="item" separator="union all">
         select
@@ -565,7 +609,8 @@
         #{item.meterWeight,jdbcType=DECIMAL}, #{item.transferOutOfWarehouse,jdbcType=VARCHAR},
         #{item.transferInOfWarehouse,jdbcType=VARCHAR}, #{item.inventoryType,jdbcType=VARCHAR},
         #{item.inventoryStatus,jdbcType=VARCHAR}, #{item.transferInPlanDate,jdbcType=TIMESTAMP},
-        #{item.transferOutPlanDate,jdbcType=TIMESTAMP}, #{item.controlQuantity,jdbcType=VARCHAR}
+        #{item.transferOutPlanDate,jdbcType=TIMESTAMP}, #{item.controlQuantity,jdbcType=VARCHAR},
+        #{item.saleMakeDate,jdbcType=TIMESTAMP}, #{item.materialPlanNumber,jdbcType=DECIMAL}
         from dual
     </foreach> )
     </insert>
@@ -664,6 +709,14 @@
         <foreach close="end" collection="list" index="index" item="item" open="case SALE_MATERIAL_ID" separator=" ">
             when #{item.saleMaterialId,jdbcType=DECIMAL} then #{item.controlQuantity,jdbcType=VARCHAR}
         </foreach>
+        ,SALE_MAKE_DATE=
+        <foreach close="end" collection="list" index="index" item="item" open="case SALE_MATERIAL_ID" separator=" ">
+            when #{item.saleMaterialId,jdbcType=DECIMAL} then #{item.saleMakeDate,jdbcType=TIMESTAMP}
+        </foreach>
+        ,MATERIAL_PLAN_NUMBER=
+        <foreach close="end" collection="list" index="index" item="item" open="case SALE_MATERIAL_ID" separator=" ">
+            when #{item.saleMaterialId,jdbcType=DECIMAL} then #{item.materialPlanNumber,jdbcType=DECIMAL}
+        </foreach>
         where SALE_MATERIAL_ID in
         <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
             #{item.saleMaterialId,jdbcType=DECIMAL}
@@ -678,6 +731,10 @@
     </delete>
     <!-- 友情提示!!!-->
     <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+    <!-- 友情提示!!!-->
+    <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+    <!-- 友情提示!!!-->
+    <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
     <!-- 通过物资编码查询物资id -->
     <select id="getMaterialId" parameterType="java.lang.String" resultType="DECIMAL">
         SELECT RM.MATERIAL_ID AS "materialId"

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

@@ -932,11 +932,13 @@
                        ON TTR.ORDER_ID = OO.ORDER_ID
              LEFT JOIN TMSTRUCK_ENFACTORY_RESULT TER
                        ON TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+             LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWR
+                       ON TWR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
       WHERE ASOM.SALE_ORDER_ID = #{saleOrderId}
-        AND TER.RESULT_ENTRY_GATE_TIME IS NULL
         AND OO.ORDER_ID IS NOT NULL
         AND OO.ORDER_STATUS BETWEEN 4 AND 5
         AND OO.ORDER_TYPE BETWEEN 1 AND 2
+        AND TWR.RESULT_NET_WEIGHT IS NULL
     )
   </update>
 
@@ -1082,7 +1084,7 @@
     FROM OMSTRUCK_ORDER OO
     LEFT JOIN TMSTRUCK_TOTAL_RESULT TLR ON TLR.ORDER_ID = OO.ORDER_ID
     WHERE OO.ORDER_NUMBER=#{orderNumber}
-    ORDER BY OO.ORDER_ID
+    ORDER BY OO.ORDER_ID DESC
       FETCH NEXT 1 ROWS ONLY
   </select>
   <select id="selectOrderList" resultType="java.util.Map" parameterType="java.math.BigDecimal">
@@ -1163,5 +1165,23 @@
          and SU.ORG_CODE = 'chengyunshang'
          AND SU.USER_CODE like #{capacityNo})
   </insert>
+  <update id="reverseApprovalOrder" parameterType="java.math.BigDecimal">
+    UPDATE OMSTRUCK_ORDER OO
+    SET OO.ORDER_STATUS = 7,
+        OO.INSERT_UPDATE_REMARK = '金蝶反审批销售订单,物流同步关闭'
+    WHERE OO.ORDER_ID IN (
+      SELECT OO.ORDER_ID "orderId"
+      FROM AMS_SALE_ORDER_MATERIAL ASOM
+             LEFT JOIN OMSTRUCK_ORDER OO
+                       ON OO.ORDER_PLAN_ID = ASOM.SALE_ORDER_MATERIAL_ID
+             LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+                       ON TTR.ORDER_ID = OO.ORDER_ID
+             LEFT JOIN TMSTRUCK_ENFACTORY_RESULT TER
+                       ON TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+      WHERE ASOM.SALE_ORDER_ID = #{saleOrderId}
+        AND OO.ORDER_ID IS NOT NULL
+        AND OO.ORDER_STATUS BETWEEN 4 AND 5
+        AND OO.ORDER_TYPE BETWEEN 1 AND 2)
+  </update>
 
 </mapper>

+ 100 - 10
src/main/resources/com/steerinfo/dil/mapper/OmstruckOrderMapper.xml

@@ -30,13 +30,17 @@
         <result column="DRIVER_TEL" jdbcType="VARCHAR" property="driverTel" />
         <result column="OPTIONER_CODE" jdbcType="VARCHAR" property="optionerCode" />
         <result column="CAN_WORK" jdbcType="DECIMAL" property="canWork" />
+        <result column="PRINTNUMBER" jdbcType="DECIMAL" property="printnumber" />
+        <result column="CAPACITYIDS" jdbcType="VARCHAR" property="capacityids" />
+        <result column="IS_ACCEPT" jdbcType="DECIMAL" property="isAccept" />
     </resultMap>
     <sql id="columns">
         ORDER_ID, ORDER_PLAN_ID, ORDER_NUMBER, CAPACITY_ID, ORDER_ISSUE_TIME, ORDER_RECEIVE_STATUS,
     ORDER_RECEIVE_REFUSE_TIME, ORDER_COMMUNICATION_DURATION, ORDER_STATUS, INSERT_USERNAME,
     INSERT_TIME, UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK, DELETED, ORDER_TYPE,
     ORDER_LINE_SEQUENCE, LINE_ID, ORDER_ENTRY_TIME, UNLOAD_POINT_ID, DRIVER_CONFIRMATION,
-    PRICE_ID, CARRIER_ID, TRIP_ID, ORDER_PRINT_STATUS, DRIVER_TEL, OPTIONER_CODE, CAN_WORK
+    PRICE_ID, CARRIER_ID, TRIP_ID, ORDER_PRINT_STATUS, DRIVER_TEL, OPTIONER_CODE, CAN_WORK,
+    PRINTNUMBER, CAPACITYIDS, IS_ACCEPT
     </sql>
     <sql id="columns_alias">
         t.ORDER_ID, t.ORDER_PLAN_ID, t.ORDER_NUMBER, t.CAPACITY_ID, t.ORDER_ISSUE_TIME, t.ORDER_RECEIVE_STATUS,
@@ -44,7 +48,7 @@
     t.INSERT_TIME, t.UPDATE_USERNAME, t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, t.DELETED,
     t.ORDER_TYPE, t.ORDER_LINE_SEQUENCE, t.LINE_ID, t.ORDER_ENTRY_TIME, t.UNLOAD_POINT_ID,
     t.DRIVER_CONFIRMATION, t.PRICE_ID, t.CARRIER_ID, t.TRIP_ID, t.ORDER_PRINT_STATUS,
-    t.DRIVER_TEL, t.OPTIONER_CODE, t.CAN_WORK
+    t.DRIVER_TEL, t.OPTIONER_CODE, t.CAN_WORK, t.PRINTNUMBER, t.CAPACITYIDS, t.IS_ACCEPT
     </sql>
     <sql id="select">
         SELECT <include refid="columns" /> FROM OMSTRUCK_ORDER
@@ -138,6 +142,15 @@
             <if test="canWork != null">
                 and CAN_WORK = #{canWork}
             </if>
+            <if test="printnumber != null">
+                and PRINTNUMBER = #{printnumber}
+            </if>
+            <if test="capacityids != null and capacityids != ''">
+                and CAPACITYIDS = #{capacityids}
+            </if>
+            <if test="isAccept != null">
+                and IS_ACCEPT = #{isAccept}
+            </if>
         </where>
     </sql>
     <sql id="whereLike">
@@ -226,9 +239,18 @@
             <if test="canWork != null">
                 and CAN_WORK = #{canWork}
             </if>
+            <if test="printnumber != null">
+                and PRINTNUMBER = #{printnumber}
+            </if>
+            <if test="capacityids != null and capacityids != ''">
+                and CAPACITYIDS LIKE '%${capacityids}%'
+            </if>
+            <if test="isAccept != null">
+                and IS_ACCEPT = #{isAccept}
+            </if>
         </where>
     </sql>
-    <delete id="deleteByPrimaryKey" parameterType="DECIMAL">
+    <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
         delete from OMSTRUCK_ORDER
         where ORDER_ID = #{orderId,jdbcType=DECIMAL}
     </delete>
@@ -316,6 +338,15 @@
         <if test="canWork != null">
             or CAN_WORK = #{canWork}
         </if>
+        <if test="printnumber != null">
+            or PRINTNUMBER = #{printnumber}
+        </if>
+        <if test="capacityids != null and capacityids != ''">
+            or CAPACITYIDS = #{capacityids}
+        </if>
+        <if test="isAccept != null">
+            or IS_ACCEPT = #{isAccept}
+        </if>
     </delete>
     <insert id="insert" parameterType="com.steerinfo.dil.model.OmstruckOrder">
         insert into OMSTRUCK_ORDER (ORDER_ID, ORDER_PLAN_ID, ORDER_NUMBER,
@@ -327,7 +358,8 @@
                                     LINE_ID, ORDER_ENTRY_TIME, UNLOAD_POINT_ID,
                                     DRIVER_CONFIRMATION, PRICE_ID, CARRIER_ID,
                                     TRIP_ID, ORDER_PRINT_STATUS, DRIVER_TEL,
-                                    OPTIONER_CODE, CAN_WORK)
+                                    OPTIONER_CODE, CAN_WORK, PRINTNUMBER,
+                                    CAPACITYIDS, IS_ACCEPT)
         values (#{orderId,jdbcType=DECIMAL}, #{orderPlanId,jdbcType=DECIMAL}, #{orderNumber,jdbcType=VARCHAR},
                 #{capacityId,jdbcType=DECIMAL}, #{orderIssueTime,jdbcType=TIMESTAMP}, #{orderReceiveStatus,jdbcType=DECIMAL},
                 #{orderReceiveRefuseTime,jdbcType=TIMESTAMP}, #{orderCommunicationDuration,jdbcType=DECIMAL},
@@ -337,7 +369,8 @@
                 #{lineId,jdbcType=DECIMAL}, #{orderEntryTime,jdbcType=TIMESTAMP}, #{unloadPointId,jdbcType=DECIMAL},
                 #{driverConfirmation,jdbcType=DECIMAL}, #{priceId,jdbcType=DECIMAL}, #{carrierId,jdbcType=DECIMAL},
                 #{tripId,jdbcType=VARCHAR}, #{orderPrintStatus,jdbcType=DECIMAL}, #{driverTel,jdbcType=VARCHAR},
-                #{optionerCode,jdbcType=VARCHAR}, #{canWork,jdbcType=DECIMAL})
+                #{optionerCode,jdbcType=VARCHAR}, #{canWork,jdbcType=DECIMAL}, #{printnumber,jdbcType=DECIMAL},
+                #{capacityids,jdbcType=VARCHAR}, #{isAccept,jdbcType=DECIMAL})
     </insert>
     <insert id="insertSelective" parameterType="com.steerinfo.dil.model.OmstruckOrder">
         insert into OMSTRUCK_ORDER
@@ -426,6 +459,15 @@
             <if test="canWork != null">
                 CAN_WORK,
             </if>
+            <if test="printnumber != null">
+                PRINTNUMBER,
+            </if>
+            <if test="capacityids != null">
+                CAPACITYIDS,
+            </if>
+            <if test="isAccept != null">
+                IS_ACCEPT,
+            </if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="orderId != null">
@@ -512,6 +554,15 @@
             <if test="canWork != null">
                 #{canWork,jdbcType=DECIMAL},
             </if>
+            <if test="printnumber != null">
+                #{printnumber,jdbcType=DECIMAL},
+            </if>
+            <if test="capacityids != null">
+                #{capacityids,jdbcType=VARCHAR},
+            </if>
+            <if test="isAccept != null">
+                #{isAccept,jdbcType=DECIMAL},
+            </if>
         </trim>
     </insert>
     <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.OmstruckOrder">
@@ -542,7 +593,10 @@
             ORDER_PRINT_STATUS = #{orderPrintStatus,jdbcType=DECIMAL},
             DRIVER_TEL = #{driverTel,jdbcType=VARCHAR},
             OPTIONER_CODE = #{optionerCode,jdbcType=VARCHAR},
-            CAN_WORK = #{canWork,jdbcType=DECIMAL}
+            CAN_WORK = #{canWork,jdbcType=DECIMAL},
+            PRINTNUMBER = #{printnumber,jdbcType=DECIMAL},
+            CAPACITYIDS = #{capacityids,jdbcType=VARCHAR},
+            IS_ACCEPT = #{isAccept,jdbcType=DECIMAL}
         where ORDER_ID = #{orderId,jdbcType=DECIMAL}
     </update>
     <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.OmstruckOrder">
@@ -629,10 +683,19 @@
             <if test="canWork != null">
                 CAN_WORK = #{canWork,jdbcType=DECIMAL},
             </if>
+            <if test="printnumber != null">
+                PRINTNUMBER = #{printnumber,jdbcType=DECIMAL},
+            </if>
+            <if test="capacityids != null">
+                CAPACITYIDS = #{capacityids,jdbcType=VARCHAR},
+            </if>
+            <if test="isAccept != null">
+                IS_ACCEPT = #{isAccept,jdbcType=DECIMAL},
+            </if>
         </set>
         where ORDER_ID = #{orderId,jdbcType=DECIMAL}
     </update>
-    <select id="selectByPrimaryKey" parameterType="DECIMAL" resultMap="BaseResultMap">
+    <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
         <include refid="select" />
         where ORDER_ID = #{orderId,jdbcType=DECIMAL}
     </select>
@@ -657,7 +720,8 @@
         LINE_ID, ORDER_ENTRY_TIME, UNLOAD_POINT_ID,
         DRIVER_CONFIRMATION, PRICE_ID,
         CARRIER_ID, TRIP_ID, ORDER_PRINT_STATUS,
-        DRIVER_TEL, OPTIONER_CODE, CAN_WORK
+        DRIVER_TEL, OPTIONER_CODE, CAN_WORK,
+        PRINTNUMBER, CAPACITYIDS, IS_ACCEPT
         )
         ( <foreach collection="list" item="item" separator="union all">
         select
@@ -672,7 +736,8 @@
         #{item.lineId,jdbcType=DECIMAL}, #{item.orderEntryTime,jdbcType=TIMESTAMP}, #{item.unloadPointId,jdbcType=DECIMAL},
         #{item.driverConfirmation,jdbcType=DECIMAL}, #{item.priceId,jdbcType=DECIMAL},
         #{item.carrierId,jdbcType=DECIMAL}, #{item.tripId,jdbcType=VARCHAR}, #{item.orderPrintStatus,jdbcType=DECIMAL},
-        #{item.driverTel,jdbcType=VARCHAR}, #{item.optionerCode,jdbcType=VARCHAR}, #{item.canWork,jdbcType=DECIMAL}
+        #{item.driverTel,jdbcType=VARCHAR}, #{item.optionerCode,jdbcType=VARCHAR}, #{item.canWork,jdbcType=DECIMAL},
+        #{item.printnumber,jdbcType=DECIMAL}, #{item.capacityids,jdbcType=VARCHAR}, #{item.isAccept,jdbcType=DECIMAL}
         from dual
     </foreach> )
     </insert>
@@ -791,6 +856,18 @@
         <foreach close="end" collection="list" index="index" item="item" open="case ORDER_ID" separator=" ">
             when #{item.orderId,jdbcType=DECIMAL} then #{item.canWork,jdbcType=DECIMAL}
         </foreach>
+        ,PRINTNUMBER=
+        <foreach close="end" collection="list" index="index" item="item" open="case ORDER_ID" separator=" ">
+            when #{item.orderId,jdbcType=DECIMAL} then #{item.printnumber,jdbcType=DECIMAL}
+        </foreach>
+        ,CAPACITYIDS=
+        <foreach close="end" collection="list" index="index" item="item" open="case ORDER_ID" separator=" ">
+            when #{item.orderId,jdbcType=DECIMAL} then #{item.capacityids,jdbcType=VARCHAR}
+        </foreach>
+        ,IS_ACCEPT=
+        <foreach close="end" collection="list" index="index" item="item" open="case ORDER_ID" separator=" ">
+            when #{item.orderId,jdbcType=DECIMAL} then #{item.isAccept,jdbcType=DECIMAL}
+        </foreach>
         where ORDER_ID in
         <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
             #{item.orderId,jdbcType=DECIMAL}
@@ -805,6 +882,10 @@
     </delete>
     <!-- 友情提示!!!-->
     <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+    <!-- 友情提示!!!-->
+    <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+    <!-- 友情提示!!!-->
+    <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
 
     <select id="findCarNumberByOrderId" parameterType="DECIMAL" resultType="java.util.Map" >
         SELECT DISTINCT RC.CAPACITY_NUMBER AS "carNum",
@@ -832,7 +913,12 @@
         WHERE ASOM.SALE_ORDER_MATERIAL_ID = #{saleOrderMaterialId}
     </select>
     <select id="finCarAndCarrierAndEntries" resultType="java.util.Map" parameterType="decimal">
-        SELECT DISTINCT RC.CAPACITY_NUMBER AS "carNum",
+        SELECT DISTINCT
+                (case when
+                    RC.CAPACITY_NUMBER = '空白'
+                    then ' '
+                    else RC.CAPACITY_NUMBER
+                    END) AS "carNum",
                (case when ASO.SALE_ORDER_ISSELF_MENTION = '是'
                then '自提'
                else RCE.CARRIER_ABBREVIATION
@@ -906,4 +992,8 @@
               LEFT JOIN OMSTRUCK_ORDER OO ON OO.ORDER_PLAN_ID = ASOM.SALE_ORDER_MATERIAL_ID
         WHERE ASM.SALE_MATERIAL_ID = #{saleMaterialId}
     </select>
+    <select id="selectOrderInfo" resultType="java.math.BigDecimal" >
+        SELECT DISTINCT  OO.ORDER_ID FROM OMSTRUCK_ORDER OO
+        WHERE  OO.ORDER_NUMBER = #{orderNumber}
+    </select>
 </mapper>

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

@@ -970,7 +970,7 @@
         from (
                  select OO.ORDER_ID               "orderId",
                         OO.ORDER_TYPE             "orderTypee",
-                        OO.ORDER_NUMBER           "orderNumber",
+                        OO.ORDER_NUMBER           "orderNo",
                         TWR.WEIGHT_TASK_RESULT_ID "weightTaskResultId",
                         TTR.RESULT_TOTAL_ID       "resultTotalId",
                         TWR.TARE_SEGMENT_SQE      "tareSegmentSqe",
@@ -1085,5 +1085,77 @@
         WHERE OO.ORDER_NUMBER = #{orderNumber}
         and OO.ORDER_STATUS = 5
     </update>
-
+    <select id="getOOType" resultType="map" parameterType="string">
+        SELECT OO.ORDER_TYPE "orderType" ,OO.ORDER_ID "orderId" , TTR.RESULT_TOTAL_ID "resultTotalId" FROM OMSTRUCK_ORDER OO
+        LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+        ON TTR.ORDER_ID = OO.ORDER_ID
+        WHERE OO.ORDER_NUMBER = #{orderNumber}
+        FETCH FIRST 1 ROWS ONLY
+    </select>
+    <update id="updateWeightTare" parameterType="java.math.BigDecimal">
+        UPDATE TMSTRUCK_WEIGHT_RESULT TWR
+        SET TWR.RESULT_TARE_WEIGHT_TIME = NULL,
+            TWR.RESULT_TARE_WEIGHT = NULL,
+            TWR.INSERT_UPDATE_REMARK = '计量联动删除'
+        WHERE TWR.RESULT_TOTAL_ID = #{resultTotalId}
+    </update>
+    <update id="updateEnfactoryResult" parameterType="java.math.BigDecimal">
+        UPDATE TMSTRUCK_ENFACTORY_RESULT TER
+        SET TER.RESULT_ENTRY_GATE_TIME = NULL
+        WHERE TER.RESULT_TOTAL_ID = #{resultTotalId}
+    </update>
+    <update id="updateOrderLineSqe" parameterType="java.math.BigDecimal">
+        UPDATE OMSTRUCK_ORDER OO
+        SET OO.ORDER_LINE_SEQUENCE = NULL
+        WHERE ORDER_ID = #{orderId}
+    </update>
+    <update id="updateWeightResult" parameterType="java.math.BigDecimal">
+        UPDATE TMSTRUCK_WEIGHT_RESULT TWR
+        SET TWR.RESULT_NET_WEIGHT = NULL,
+            TWR.RESULT_GROSS_WEIGHT_TIME = NULL,
+            TWR.RESULT_GROSS_WEIGHT = NULL,
+            TWR.RESULT_TARE_WEIGHT = NULL,
+            TWR.RESULT_TARE_WEIGHT_TIME = NULL,
+            TWR.INSERT_UPDATE_REMARK = '计量联动删除',
+            TWR.RESULT_POUND_NO = NULL,
+            TWR.MATERIAL_ID = NULL
+        WHERE TWR.WEIGHT_TASK_RESULT_ID = #{weightTaskResultId}
+    </update>
+    <update id="updateWeightTareNoGross" parameterType="java.math.BigDecimal">
+        UPDATE TMSTRUCK_WEIGHT_RESULT TWR
+        SET TWR.RESULT_TARE_WEIGHT_TIME = NULL,
+            TWR.RESULT_TARE_WEIGHT = NULL,
+            TWR.INSERT_UPDATE_REMARK = '计量联动删除皮重'
+        WHERE TWR.RESULT_GROSS_WEIGHT IS NULL
+        AND   TWR.RESULT_TARE_WEIGHT IS NOT NULL
+        AND   TWR.RESULT_TOTAL_ID = #{resultTotalId}
+    </update>
+    <update id="updateOrderLineSqeBySqe">
+        UPDATE OMSTRUCK_ORDER OO
+        SET OO.ORDER_LINE_SEQUENCE = #{orderLineSqe}
+        WHERE OO.ORDER_ID = #{orderId}
+    </update>
+    <select id="selectWeightMes" resultType="java.util.Map">
+        SELECT TWR.WEIGHT_TASK_RESULT_ID "weightTaskResultId",
+               TWR.TARE_SEGMENT_SQE "tareSqe",
+               TWR.GROSS_SEGMENT_SQE "grossSqe"
+        FROM TMSTRUCK_WEIGHT_RESULT TWR
+        WHERE TWR.RESULT_GROSS_WEIGHT_TIME = to_date(#{resultGrossWeightTime},'yyyy-MM-dd HH24:mi:ss')
+        AND TWR.MATERIAL_ID = #{materialId}
+        AND TWR.RESULT_TOTAL_ID = #{resultTotalId}
+    </select>
+    <select id="selectOrderLineSqe" resultType="java.lang.Integer" parameterType="decimal">
+        SELECT TWR.GROSS_SEGMENT_SQE FROM TMSTRUCK_WEIGHT_RESULT TWR
+        WHERE TWR.RESULT_TOTAL_ID = #{resultTotalId}
+        and TWR.RESULT_NET_WEIGHT IS NOT NULL
+        ORDER BY TWR.GROSS_SEGMENT_SQE DESC
+        FETCH FIRST 1 ROWS ONLY
+    </select>
+    <select id="getMaterialIdByOrderId" resultType="java.math.BigDecimal" parameterType="java.math.BigDecimal">
+        SELECT OOM.MATERIAL_ID FROM OMSTRUCK_ORDER_MATERIAL OOM
+        WHERE
+            nvl(OOM.MATERIAL_PRIORITY,0) != 71
+        AND OOM.ORDER_ID = #{orderId}
+        FETCH FIRST 1 row only
+    </select>
 </mapper>

+ 1 - 1
src/main/resources/log4j.properties

@@ -1,5 +1,5 @@
 ## LOG4J配置
-log4j.rootCategory=INFO,file, RUNNING,errorfile,stdout
+log4j.rootCategory=INFO,file, RUNNING,errorfile
 ## 控制台输出
 log4j.appender.stdout=org.apache.log4j.ConsoleAppender
 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout