Browse Source

删除入库

zhouzh 3 years ago
parent
commit
60c10ec264

+ 1 - 1
pom.xml

@@ -130,7 +130,7 @@
 <!--                        <param>WMSP_INBOUND_STACK_RESULT</param>-->
 <!--                        <param>WMSP_INBOUND_CORRECT_RESULT</param>-->
 <!--                        <param>WMSP_INBOUND_DRIVING_RESULT</param>-->
-                        <param>WMSP_RESTACK_MAKE_RESULT</param>
+                        <param>WMSP_INBOUND_SCAN_RESULT</param>
 
                     </tables>
                 </configuration>

+ 9 - 0
src/main/java/com/steerinfo/dil/controller/WmsInboundResultController.java

@@ -706,5 +706,14 @@ public class WmsInboundResultController extends BaseRESTfulController {
     public int changeReserved(@RequestBody(required = false) List<Map<String, Object>> mapList) {
         return wmsInboundResultServiceImpl.changeReserved(mapList);
     }
+
+
+  //勾选撤销入库
+  @PostMapping("/undoInbound")
+  @ApiOperation(value = "勾选撤销入库")
+  public RESTfulResult undoInbound(@RequestParam BigDecimal inboundId){
+        int result = wmsInboundResultServiceImpl.undoInbound(inboundId);
+        return success(result);
+  }
 }
 

+ 8 - 0
src/main/java/com/steerinfo/dil/mapper/WmspInboundResultMapper.java

@@ -69,4 +69,12 @@ public interface WmspInboundResultMapper extends IBaseMapper<WmspInboundResult,
     int updateStatusByMaterialId(BigDecimal materialId);
 
     List<Map<String, Object>> getWmsInboundResultStatistics(Map<String, Object> mapValue);
+
+    int  deleteInboundScanByInboudId(BigDecimal inboundId);
+
+    int deleteInboundByInboudId(BigDecimal inboundId);
+
+    int deleteGridMaterialByInboudId(BigDecimal inboundId);
+
+    int deleteMaterialSteelByInboundId(BigDecimal inboundId);
 }

+ 53 - 33
src/main/java/com/steerinfo/dil/model/WmspInboundScanResult.java

@@ -9,7 +9,6 @@ import java.util.Date;
 
 @ApiModel(value="吊钢工扫描吊牌实绩")
 public class WmspInboundScanResult implements IBasePO<BigDecimal> {
-
     /**
      * 主键ID(RESULT_ID,DECIMAL,0)
      */
@@ -28,11 +27,6 @@ public class WmspInboundScanResult implements IBasePO<BigDecimal> {
     @ApiModelProperty(value="吊钢工 ID",required=false)
     private BigDecimal loadId;
 
-    /**
-     * 分组 ID(LOAD_ID,DECIMAL,0) 如果分组为空说明可能是退回、不需要扫两次的
-     */
-    @ApiModelProperty(value="分组 ID",required=false)
-    private BigDecimal inboundGroupId;
     /**
      * 吊钢工扫描吊牌结果(RESULT_MATERIAL,VARCHAR,200)
      */
@@ -111,6 +105,18 @@ public class WmspInboundScanResult implements IBasePO<BigDecimal> {
     @ApiModelProperty(value="记录创建或修改备注",required=false)
     private String insertUpdateRemark;
 
+    /**
+     * 分组信息(INBOUND_GROUP_ID,DECIMAL,0)
+     */
+    @ApiModelProperty(value="分组信息",required=false)
+    private BigDecimal inboundGroupId;
+
+    /**
+     * 班次次序(SHIFT_ORDER,VARCHAR,20)
+     */
+    @ApiModelProperty(value="班次次序",required=false)
+    private String  shiftOrder;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -118,14 +124,6 @@ public class WmspInboundScanResult implements IBasePO<BigDecimal> {
         return this.resultId;
     }
 
-    public BigDecimal getInboundGroupId() {
-        return inboundGroupId;
-    }
-
-    public void setInboundGroupId(BigDecimal inboundGroupId) {
-        this.inboundGroupId = inboundGroupId;
-    }
-
     @Override
     public void setId(BigDecimal resultId) {
         this.resultId = resultId;
@@ -259,26 +257,48 @@ public class WmspInboundScanResult implements IBasePO<BigDecimal> {
         this.insertUpdateRemark = insertUpdateRemark == null ? null : insertUpdateRemark.trim();
     }
 
+    public BigDecimal getInboundGroupId() {
+        return inboundGroupId;
+    }
+
+    public void setInboundGroupId(BigDecimal inboundGroupId) {
+        this.inboundGroupId = inboundGroupId;
+    }
+
+    public String  getShiftOrder() {
+        return shiftOrder;
+    }
+
+    public void setShiftOrder(String shiftOrder) {
+        this.shiftOrder = shiftOrder;
+    }
+
     @Override
     public String toString() {
-        return "WmspInboundScanResult{" +
-                "resultId=" + resultId +
-                ", inboundResultId=" + inboundResultId +
-                ", loadId=" + loadId +
-                ", inboundGroupId=" + inboundGroupId +
-                ", resultMaterial='" + resultMaterial + '\'' +
-                ", resultLoadTime=" + resultLoadTime +
-                ", materialId=" + materialId +
-                ", inboundAbnormalis=" + inboundAbnormalis +
-                ", inboundMaterialNumber=" + inboundMaterialNumber +
-                ", resultStatus=" + resultStatus +
-                ", resultNumber=" + resultNumber +
-                ", resultDeleted=" + resultDeleted +
-                ", insertUsername='" + insertUsername + '\'' +
-                ", insertTime=" + insertTime +
-                ", updateUsername='" + updateUsername + '\'' +
-                ", updateTime=" + updateTime +
-                ", insertUpdateRemark='" + insertUpdateRemark + '\'' +
-                '}';
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", resultId=").append(resultId);
+        sb.append(", inboundResultId=").append(inboundResultId);
+        sb.append(", loadId=").append(loadId);
+        sb.append(", resultMaterial=").append(resultMaterial);
+        sb.append(", resultLoadTime=").append(resultLoadTime);
+        sb.append(", materialId=").append(materialId);
+        sb.append(", inboundAbnormalis=").append(inboundAbnormalis);
+        sb.append(", inboundMaterialNumber=").append(inboundMaterialNumber);
+        sb.append(", resultStatus=").append(resultStatus);
+        sb.append(", resultNumber=").append(resultNumber);
+        sb.append(", resultDeleted=").append(resultDeleted);
+        sb.append(", insertUsername=").append(insertUsername);
+        sb.append(", insertTime=").append(insertTime);
+        sb.append(", updateUsername=").append(updateUsername);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append(", insertUpdateRemark=").append(insertUpdateRemark);
+        sb.append(", inboundGroupId=").append(inboundGroupId);
+        sb.append(", shiftOrder=").append(shiftOrder);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
     }
 }

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

@@ -1,6 +1,7 @@
 package com.steerinfo.dil.service;
 
 import com.steerinfo.dil.model.WmspInboundResult;
+import com.steerinfo.framework.controller.RESTfulResult;
 
 import java.math.BigDecimal;
 import java.util.List;
@@ -79,4 +80,6 @@ public interface IWmsInboundResultService {
     int changeReserved(List<Map<String, Object>> mapList);
 //    根据仓库id获取对应的统计信息
     List<Map<String, Object>> getWmsInboundResultStatistics(Map<String, Object> mapValue,Integer warehouseId);
+
+    int undoInbound(BigDecimal inboundId);
 }

+ 17 - 0
src/main/java/com/steerinfo/dil/service/impl/WmsInboundResultServiceImpl.java

@@ -50,6 +50,8 @@ public class WmsInboundResultServiceImpl implements IWmsInboundResultService {
         return maps;
     }
 
+
+
     @Override
     public List<Map<String,Object>> getInboundResults(Map<String, Object> mapValue,Integer warehouseId){
         mapValue.put("warehouseId",warehouseId);
@@ -263,4 +265,19 @@ public class WmsInboundResultServiceImpl implements IWmsInboundResultService {
         }
         return i;
     }
+
+    @Override
+    public int undoInbound(BigDecimal inboundId) {
+        //根据前端传过来的inboundId
+        //对实时库存表进行删除
+        wmspInboundResultMapper.deleteGridMaterialByInboudId(inboundId);
+        //对钢材物资表进行删除
+        wmspInboundResultMapper.deleteMaterialSteelByInboundId(inboundId);
+        //对扫码实绩表进行删除
+        wmspInboundResultMapper.deleteInboundScanByInboudId(inboundId);
+        //对下发实绩表进行删除
+        wmspInboundResultMapper.deleteInboundByInboudId(inboundId);
+
+        return 0;
+    }
 }

+ 6 - 0
src/main/java/com/steerinfo/dil/service/impl/WmsInboundScanResultServiceImpl.java

@@ -14,6 +14,7 @@ import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
 import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -273,6 +274,10 @@ public class WmsInboundScanResultServiceImpl implements IWmsInboundScanResultSer
         WmspInboundScanResult wmspInboundScanResult=new WmspInboundScanResult();
         //设置主键自增,这里需要修改
         wmspInboundScanResult.setId(count());
+        //获取班次次序的吊牌信息
+        String[] result = resultMaterial.split("-");
+        String shiftOrder = result[9];
+        wmspInboundScanResult.setShiftOrder(shiftOrder);
 
         //分组
         //根据用户名和分组状态查询到分组信息
@@ -346,6 +351,7 @@ public class WmsInboundScanResultServiceImpl implements IWmsInboundScanResultSer
         //设置主键自增,这里需要修改
         wmspInboundScanResult.setId(count());
 
+
         //分组 只需要扫一次没有分组信息
         //根据用户名和分组状态查询到分组信息
 //        BigDecimal groupId= wmspInboundGroupService.getGroupIdByUserName(userName);

+ 34 - 3
src/main/resources/com/steerinfo/dil/mapper/WmspInboundResultMapper.xml

@@ -22,6 +22,7 @@
         <result column="INSERT_UPDATE_REMARK" jdbcType="VARCHAR" property="insertUpdateRemark" />
         <result column="PERSONNEL_TEAM" jdbcType="VARCHAR" property="personnelTeam" />
         <result column="PERSONNEL_SHIFTS" jdbcType="VARCHAR" property="personnelShifts" />
+
     </resultMap>
     <sql id="columns">
     INBOUND_ID, INBOUND_TYPE, INBOUND_NUMBER,INBOUND_DISTRIBUTE_ID, GRID_ID,INBOUND_GROUP_ID,PERSONNEL_WORKSHOPID,RESULT_NUMBER, RESULT_STATUS, MATERIAL_ID, INBOUND_ISCOMPLETE,
@@ -641,13 +642,10 @@
         ON rm.MATERIAL_ID = rms.MATERIAL_ID
         LEFT JOIN RMS_PWAREHOUSE_GRID rpg
         ON RPG.GRID_ID = wir.GRID_ID
-
         LEFT JOIN RMS_WAREHOUSE RW
         ON RW.WAREHOUSE_ID = rpg.WAREHOUSE_ID
-
         LEFT JOIN RMS_STACKING RS
         ON RS.STACKING_ID = RPG.STACKING_ID
-
         WHERE
         wir.inbound_type = 0
         AND wir.result_deleted = 0
@@ -766,6 +764,7 @@
                     #{item}
                 </foreach>
             </if>
+
         </where>
         <include refid="orderBy"></include>
     </select>
@@ -775,6 +774,7 @@
         wir.INBOUND_ID "inboundId",
         RM.MATERIAL_NAME || RM.MATERIAL_SPECIFICATION || '(' ||
         RM.MATERIAL_MODEL || ')' "materialName",
+        wisr.SHIFT_ORDER "shiftOrder",
         wir.INBOUND_NUMBER "inboundNo",
         wir.INBOUND_TIME "inboundTime",
         wir.INBOUND_ISCOMPLETE "isComplete",
@@ -800,6 +800,8 @@
 
         LEFT JOIN RMS_STACKING RS
         ON RS.STACKING_ID = RPG.STACKING_ID
+        LEFT JOIN WMSP_INBOUND_SCAN_RESULT wisr
+        ON wisr.MATERIAL_ID = wir.MATERIAL_ID
 
         WHERE
         wir.inbound_type = 0
@@ -870,6 +872,12 @@
                     #{item}
                 </foreach>
             </if>
+            <if test="SHIFT_ORDER != null">
+                and "SHIFT_ORDER" in
+                <foreach collection="SHIFT_ORDER" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
         </where>
         <include refid="orderBy"></include>
     </select>
@@ -1643,4 +1651,27 @@
         <include refid="orderBy"></include>
     </select>
 
+    <delete id="deleteInboundScanByInboudId" parameterType="java.math.BigDecimal">
+       delete from WMSP_INBOUND_SCAN_RESULT wisr
+        where wisr.INBOUND_RESULT_ID = #{inboundId}
+    </delete>
+
+    <delete id="deleteInboundByInboudId" parameterType="java.math.BigDecimal">
+        delete from WMSP_INBOUND_RESULT wir
+        where wir.INBOUND_ID = #{inboundId}
+    </delete>
+
+    <delete id="deleteGridMaterialByInboudId" parameterType="java.math.BigDecimal">
+         delete from WMSP_GRID_MATERIAL wgm
+         where (select wir.INBOUND_ID from WMSP_INBOUND_RESULT wir
+               left join WMSP_GRID_MATERIAL wgm
+               on wgm.MATERIAL_ID = wir.MATERIAL_ID) = #{inboundId}
+    </delete>
+
+    <delete id="deleteMaterialSteelByInboundId" parameterType="java.math.BigDecimal">
+        delete from RMS_MATERIAL_STEEL rms
+         where (select wir.INBOUND_ID from WMSP_INBOUND_RESULT wir
+               left join RMS_MATERIAL_STEEL rms
+               on rms.MATERIAL_STEEL_ID = wir.MATERIAL_ID) = #{inboundId}
+    </delete>
 </mapper>

+ 13 - 8
src/main/resources/com/steerinfo/dil/mapper/WmspInboundScanResultMapper.xml

@@ -19,6 +19,7 @@
         <result column="UPDATE_USERNAME" jdbcType="VARCHAR" property="updateUsername" />
         <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime" />
         <result column="INSERT_UPDATE_REMARK" jdbcType="VARCHAR" property="insertUpdateRemark" />
+        <result column="SHIFT_ORDER" jdbcType="VARCHAR" property="shiftOrder" />
     </resultMap>
     <sql id="columns">
     RESULT_ID, INBOUND_RESULT_ID, LOAD_ID, RESULT_MATERIAL,INBOUND_GROUP_ID, RESULT_LOAD_TIME, MATERIAL_ID,
@@ -235,10 +236,6 @@
             <if test="resultMaterial != null">
                 RESULT_MATERIAL,
             </if>
-            <if test="inboundGroupId != null">
-                INBOUND_GROUP_ID,
-            </if>
-            
             <if test="resultLoadTime != null">
                 RESULT_LOAD_TIME,
             </if>
@@ -275,6 +272,12 @@
             <if test="insertUpdateRemark != null">
                 INSERT_UPDATE_REMARK,
             </if>
+            <if test="inboundGroupId != null">
+                INBOUND_GROUP_ID,
+            </if>
+            <if test="shiftOrder != null">
+                SHIFT_ORDER,
+            </if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="resultId != null">
@@ -289,10 +292,6 @@
             <if test="resultMaterial != null">
                 #{resultMaterial,jdbcType=VARCHAR},
             </if>
-            <if test="inboundGroupId != null">
-                #{inboundGroupId,jdbcType=VARCHAR},
-            </if>
-            
             <if test="resultLoadTime != null">
                 #{resultLoadTime,jdbcType=TIMESTAMP},
             </if>
@@ -329,6 +328,12 @@
             <if test="insertUpdateRemark != null">
                 #{insertUpdateRemark,jdbcType=VARCHAR},
             </if>
+            <if test="inboundGroupId != null">
+                #{inboundGroupId,jdbcType=DECIMAL},
+            </if>
+            <if test="shiftOrder != null">
+                #{shiftOrder,jdbcType=VARCHAR},
+            </if>
         </trim>
     </insert>
     <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.WmspInboundScanResult">