Tiroble 3 anni fa
parent
commit
3202b25f91

+ 19 - 0
src/main/java/com/steerinfo/dil/controller/WmspRestackMakeResultController.java

@@ -13,6 +13,7 @@ import com.steerinfo.framework.controller.RESTfulResult;
 import com.steerinfo.framework.service.pagehelper.PageHelper;
 import com.steerinfo.dil.model.WmspRestackMakeResult;
 import com.steerinfo.dil.service.IWmspRestackMakeResultService;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
@@ -268,5 +269,23 @@ public class WmspRestackMakeResultController extends BaseRESTfulController {
         List<Map<String,Object>> list=wmspRestackMakeResultService.selectMaterialInfoByResultId(DistrubtionStatus);
         return  success(list);
     }
+    @ApiOperation(value = "创建倒垛单",notes = "管理员创建一个垛位倒另一个垛位的倒垛单,其中包括原来朵唯信息和物质类型")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "keeperId" ,dataType = "BigDecimal",value = "库管员ID"),
+            @ApiImplicitParam(name = "resultStackNumber" ,dataType = "String ",value = "倒垛单编号"),
+            @ApiImplicitParam(name = "afterStackingId" ,dataType = "BigDecimal",value = "倒垛后垛位id"),
+            @ApiImplicitParam(name = "afterWarehouseId" ,dataType = "BigDecimal",value = "倒垛后仓库id"),
+            @ApiImplicitParam(name = "afterBeforeStackingId" ,dataType = "BigDecimal",value = "倒垛前的垛位"),
+            @ApiImplicitParam(name = "resultRemark" ,dataType = "BigDecimal",value = "倒垛单备注"),
+            @ApiImplicitParam(name = "maps" ,dataType = "List<Map<String,Object>>",value = "物质类型集合")
+    })
+    public  RESTfulResult createRestackMakeResult(@RequestParam("keeperId") BigDecimal keeperId,@RequestParam("resultStackNumber")String  resultStackNumber,
+             @RequestParam(name = "afterStackingId",defaultValue = "20")BigDecimal afterStackingId,@RequestParam("afterWarehouseId")BigDecimal afterWarehouseId,
+             @RequestParam("afterBeforeStackingId") BigDecimal afterBeforeStackingId,@RequestParam("resultRemark")String resultRemark,
+             @RequestBody(required = false) List<Map<String,Object>> mps){
+        //创建倒垛单和倒垛单类型
+        WmspRestackMakeResult wmspRestackMakeResult= wmspRestackMakeResultService.createRestackMakeResult(keeperId,resultStackNumber,afterStackingId,afterWarehouseId,afterBeforeStackingId,resultRemark,mps);
+        return success();
+    }
 
 }

+ 1 - 1
src/main/java/com/steerinfo/dil/model/WmspRestackMakeTypeResult.java

@@ -18,7 +18,7 @@ public class WmspRestackMakeTypeResult implements IBasePO<BigDecimal> {
     @ApiModelProperty(value="物质类型ID",required=false)
     private BigDecimal materialTypeId;
 
-    @ApiModelProperty(value="",required=false)
+    @ApiModelProperty(value="数量",required=false)
     private BigDecimal quantity;
 
     /**

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

@@ -48,4 +48,6 @@ public interface IWmspRestackMakeResultService {
     List<Map<String,Object>> selectRestackInfoByResultId(Integer resultId);
     //Pc端展示倒垛实绩
     List<Map<String,Object>> selectRestackForPc(Map<String,Object> map);
+
+    WmspRestackMakeResult createRestackMakeResult(BigDecimal keeperId, String resultStackNumber, BigDecimal afterStackingId, BigDecimal afterWarehouseId, BigDecimal afterBeforeStackingId, String resultRemark, List<Map<String, Object>> mps);
 }

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

@@ -4,6 +4,8 @@ import com.steerinfo.dil.model.WmspRestackMakeTypeResult;
 import com.steerinfo.framework.service.IBaseService;
 
 import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
 
 /**
  * WmspRestackMakeTypeResult服务接口:
@@ -20,4 +22,5 @@ import java.math.BigDecimal;
  */
 public interface IWmspRestackMakeTypeResultService extends IBaseService<WmspRestackMakeTypeResult, BigDecimal>{
 
+    Integer createMakeTypeList(BigDecimal makeresultid, List<Map<String, Object>> maps);
 }

+ 61 - 0
src/main/java/com/steerinfo/dil/service/impl/WmspRestackMakeResultServiceImpl.java

@@ -6,10 +6,12 @@ import com.steerinfo.dil.service.IWmspRestackMakeResultService;
 import com.steerinfo.dil.service.IWmspRestackScanResultService;
 import com.steerinfo.dil.util.DataChange;
 import com.steerinfo.dil.model.WmspGridMaterial;
+import com.steerinfo.dil.util.IDUtils;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.util.Date;
@@ -42,6 +44,8 @@ public class WmspRestackMakeResultServiceImpl  implements IWmspRestackMakeResult
     private WmspGridMaterialMapper wmspGridMaterialMapper;
     @Autowired
     private WmspRestackScanResultServiceImpl wmspRestackScanResultService;
+    @Autowired
+    private WmspRestackMakeTypeResultServiceImpl wmspRestackMakeTypeResultService;
     @Override
     public List<Map<String, Object>> selectRestackMakeResultList(Map<String, Object> mapval) {
         return wmspRestackMakeResultMapper.selectRestackMakeResultList(mapval);
@@ -259,4 +263,61 @@ public class WmspRestackMakeResultServiceImpl  implements IWmspRestackMakeResult
         return wmspRestackMakeResultMapper.selectRestackForPc(map);
     }
 
+    /**
+     * //创建倒垛单和倒垛单类型
+     * @param keeperId
+     * @param resultStackNumber
+     * @param afterStackingId
+     * @param afterWarehouseId
+     * @param afterBeforeStackingId
+     * @param resultRemark
+     * @param maps
+     * @return
+     */
+    @Transactional
+    @Override
+    public WmspRestackMakeResult createRestackMakeResult(
+            BigDecimal keeperId, String resultStackNumber, BigDecimal afterStackingId,
+              BigDecimal afterWarehouseId, BigDecimal afterBeforeStackingId, String resultRemark, List<Map<String, Object>> maps) {
+        //初始化倒垛单
+        WmspRestackMakeResult wmspRestackMakeResult=new WmspRestackMakeResult();
+        //获得序号
+        BigDecimal makeresultid =IDUtils.createIDYMDHMS( wmspRestackMakeResultMapper.selectMaxId());
+
+        //主键赋值
+        wmspRestackMakeResult.setResultId(makeresultid);
+        //倒垛单编号
+        wmspRestackMakeResult.setResultStackNumber(resultStackNumber);
+        //倒垛后垛位id
+        wmspRestackMakeResult.setAfterStackingId(afterStackingId);
+        //倒垛日期
+        wmspRestackMakeResult.setResultMovelistTime(new Date());
+        //库管员ID
+        wmspRestackMakeResult.setKeeperId(keeperId);
+        //创建人
+        wmspRestackMakeResult.setInsertTime(new Date());
+        wmspRestackMakeResult.setInsertUsername(keeperId.toString());
+        //删除状态:0为未删除,1删除
+        wmspRestackMakeResult.setDeleted(new BigDecimal(0));
+        //下发状态
+        wmspRestackMakeResult.setDistributionstatus(new BigDecimal(0));
+        //倒垛后仓库id
+        wmspRestackMakeResult.setAfterWarehouseId(afterWarehouseId);
+        //倒垛完成状态倒垛完成状态(0:未完成;1:已完成
+        wmspRestackMakeResult.setResultStatus(new BigDecimal((0)));
+        //倒垛单备注
+        wmspRestackMakeResult.setResultRemark(resultRemark);
+        //倒垛前的垛位
+        wmspRestackMakeResult.setAfterBeforeStackingId(afterBeforeStackingId);
+
+        //首先创建倒垛类型,再创建倒垛单 makeresultid
+        Integer totalCount= wmspRestackMakeTypeResultService.createMakeTypeList(makeresultid,maps);
+
+        //添加总是
+        wmspRestackMakeResult.setQuantity(new BigDecimal(totalCount));
+        //添加
+        wmspRestackMakeResultMapper.insertSelective(wmspRestackMakeResult);
+        return wmspRestackMakeResult;
+    }
+
 }

+ 34 - 1
src/main/java/com/steerinfo/dil/service/impl/WmspRestackMakeTypeResultServiceImpl.java

@@ -3,12 +3,17 @@ package com.steerinfo.dil.service.impl;
 import com.steerinfo.dil.mapper.WmspRestackMakeTypeResultMapper;
 import com.steerinfo.dil.model.WmspRestackMakeTypeResult;
 import com.steerinfo.dil.service.IWmspRestackMakeTypeResultService;
+import com.steerinfo.dil.util.IDUtils;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * WmspRestackMakeTypeResult服务实现:
@@ -28,10 +33,38 @@ public class WmspRestackMakeTypeResultServiceImpl extends BaseServiceImpl<WmspRe
 
     @Autowired
     private WmspRestackMakeTypeResultMapper wmspRestackMakeTypeResultMapper;
-
+    @Autowired
+    private CommonServiceImpl commonService;
 
     @Override
     protected IBaseMapper<WmspRestackMakeTypeResult, BigDecimal> getMapper() {
         return wmspRestackMakeTypeResultMapper;
     }
+
+    @Override
+    public Integer createMakeTypeList(BigDecimal makeresultid, List<Map<String, Object>> maps) {
+        Integer total=0;
+        for (int i=0;i<maps.size();i++){
+            Map<String,Object> map=new HashMap<>();
+            WmspRestackMakeTypeResult wmspRestackMakeTypeResult=new WmspRestackMakeTypeResult();
+            //获得序列号
+            BigDecimal seqCount = commonService.getSeqCount("seq__WMSP_RESTACK_MAKE_TYPE");
+            //给主键赋值
+            wmspRestackMakeTypeResult.setMaterialTypeId(IDUtils.createIDYMDHMS(seqCount));
+            //设置与类型的关联字段
+            wmspRestackMakeTypeResult.setWmspRestackMakeTypeId(new BigDecimal(map.get("materialCode").toString()));
+            //设置倒垛单ID
+            wmspRestackMakeTypeResult.setWmspRestackMakeId(makeresultid);
+            //累加总数量
+            total+=Integer.valueOf(map.get("quantity").toString());
+            //设置当前类型数量
+            wmspRestackMakeTypeResult.setQuantity(new BigDecimal(map.get("quantity").toString()));
+            //创建日期
+            wmspRestackMakeTypeResult.setInsertTime(new Date());
+            //创建人
+            wmspRestackMakeTypeResult.setInsertUsername("admin");
+            wmspRestackMakeTypeResultMapper.insertSelective(wmspRestackMakeTypeResult);
+        }
+        return total;
+    }
 }