txf 3 rokov pred
rodič
commit
24fd1979e5

+ 3 - 0
src/main/java/com/steerinfo/dil/controller/WmspOutboundResultController.java

@@ -453,6 +453,9 @@ public class WmspOutboundResultController extends BaseRESTfulController {
         if(result == 2){
             return success(2,"该订单已出库");
         }
+        if(result == -1){
+            return success(2,"请司机联系管理员");
+        }
         return failed(result);
     }
     @ApiOperation(value = "出库(非0:成功,0:失败)")

+ 3 - 2
src/main/java/com/steerinfo/dil/feign/TmstruckFeign.java

@@ -7,6 +7,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import java.util.HashMap;
+import java.util.Map;
 
 /**
  * @Description:
@@ -17,6 +18,6 @@ import java.util.HashMap;
 @FeignClient(value = "DIL-TMS-TRUCK-DEV", url = "${openfeign.TmsTruckFeign.url}")
 public interface TmstruckFeign {
 
-    @PostMapping("/api/v1/tmsTruck/tmstruckloadresults")
-    Integer addSaleLoadResult(@RequestParam Integer orderId);
+    @PostMapping("/api/v1/tmsTruck/tmstruckloadresults/addSaleLoadResult")
+    Map<String, Object> addSaleLoadResult(@RequestBody Map<String, Object> map);
 }

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

@@ -4,6 +4,7 @@ import com.steerinfo.dil.model.WmspOutboundResult;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.math.BigDecimal;
 import java.util.List;
@@ -80,4 +81,6 @@ public interface WmspOutboundResultMapper extends IBaseMapper<WmspOutboundResult
     List<Map<String, Object>> selectOutResult(Map<String, Object> mapval);
 
     List<Map<String, Object>> getWmsOutboundResultStatistics(Map<String, Object> mapValue);
+
+    Map<String, Object> getOutboundMesByMateAndResultId(@Param("resultId") BigDecimal resultId, @Param("materialId")BigDecimal materialId);
 }

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

@@ -419,7 +419,6 @@ public class WmspOutboundResultServiceImpl  implements IWmspOutboundResultServic
     }
 
 
-
     @Override
     public int sureOutbount(BigDecimal resultId) {
         //查询提货单,没有确定出库物资类型集合
@@ -454,7 +453,7 @@ public class WmspOutboundResultServiceImpl  implements IWmspOutboundResultServic
                 typeDetailedInfo.setScanCodeNumber(count);
 
                 //统计,并且判断是否有某种物资已经扫满了
-                if (typeDetailedInfo.getNumber()==typeDetailedInfo.getScanCodeNumber()){
+                if (typeDetailedInfo.getNumber().equals(typeDetailedInfo.getScanCodeNumber())){
                     //如果有某一种物资扫满了,需要将这一类物资,在实时库存删除,并且修改出库物资类型状态,发送计量委托
                     int cunt= wmspGridMaterialService.deleteGridMaterial(thisMaterialDetailedInfos);
                     cunt2=wmspOutboundResultMaterialService.updateStatus(typeDetailedInfo.getResultMaterialId());
@@ -462,9 +461,17 @@ public class WmspOutboundResultServiceImpl  implements IWmspOutboundResultServic
                     if (outBoundTypeDetailedInfos==null||outBoundTypeDetailedInfos.size()-cunt2==0){
                         int cunt3=wmspOutboundResultMapper.updateStatus(resultId);
                         //表示全部完成
+                        int finishLoadResult = finishLoadResult(typeDetailedInfo, resultId);
+                        if(finishLoadResult == -1){
+                            return -1; //返回-1则表示添加出库实绩失败
+                        }
                         return 2;
                     }
                     //表示一项完成
+                    int finishLoadResult = finishLoadResult(typeDetailedInfo, resultId);
+                    if(finishLoadResult == -1){
+                        return -1; //返回-1则表示添加出库实绩失败
+                    }
                     return cunt2;
                 }
 
@@ -477,6 +484,25 @@ public class WmspOutboundResultServiceImpl  implements IWmspOutboundResultServic
         return 0;
     }
 
+    /**
+     * Notes:完成出库调用装车实绩
+     * @Author: TXF
+     * @DateTime: 2022/3/24 21:10
+     */
+    public int finishLoadResult(OutBoundTypeDetailedInfo outBoundTypeDetailedInfo, BigDecimal resultId){
+        String materialId = outBoundTypeDetailedInfo.getMaterialId();
+        //通过物资ID和出库实绩ID查询相关数据 :运输订单ID 物资ID 装车开始时间 备注
+        Map<String, Object> mesMap = wmspOutboundResultMapper.getOutboundMesByMateAndResultId(resultId, new BigDecimal(materialId));
+        mesMap.put("materialId", materialId);
+        Map<String, Object> returnMap = tmstruckFeign.addSaleLoadResult(mesMap);
+        String code = (String) returnMap.get("code");
+        if("200".equals(code)){
+            return 1;
+        }else {
+            return -1;
+        }
+    }
+
     @Override
     public List<Map<String, Object>> getWmsOutboundResultStatistics(Map<String, Object> mapValue) {
         return wmspOutboundResultMapper.getWmsOutboundResultStatistics(mapValue);

+ 1 - 1
src/main/resources/application-dev.yml

@@ -14,7 +14,7 @@ openfeign:
   Im:
     url: ${IMFEIGN_URL:172.16.33.166:8055}
   TmsTruckFeign:
-    url: ${TMSTRUCKFEIGN_URL:172.16.33.162:8008}
+    url: ${TMSTRUCKFEIGN_URL:localhost:8008}
 
 
 #图片上传配置

+ 15 - 0
src/main/resources/com/steerinfo/dil/mapper/WmspOutboundResultMapper.xml

@@ -1142,6 +1142,21 @@
     </where>
      <include refid="orderBy"></include>
   </select>
+
+  <select id="getOutboundMesByMateAndResultId" resultType="java.util.Map">
+    select
+           MIN(WOSR.RESULT_LOAD_TIME)   "loadStartTime",
+           WOR.BILL_LADING_ID           "orderId",
+           WOSR.LOAD_ID                "loadId",
+           WOR.INSERT_UPDATE_REMARK    "insertUpdateRemark"
+
+    from WMSP_OUTBOUND_RESULT WOR
+    LEFT JOIN WMSP_OUTBOUND_RESULT_MATERIAL WORM on WOR.RESULT_ID = WORM.OUTBOUND_RESULT_ID
+    LEFT JOIN WMSP_OUTBOUND_SCAN_RESULT WOSR ON WORM.RESULT_MATERIAL_ID = WOSR.RESULT_MATERIAL_ID
+    WHERE WOR.RESULT_ID = #{resultId} and WORM.MATERIAL_ID = #{materialId}
+    group by WOSR.LOAD_ID, WOR.INSERT_UPDATE_REMARK,WOR.BILL_LADING_ID
+  </select>
+
   <sql id="orderBy">
     <if test="orderField != null and orderField != ''">
       order by "${orderField}"