Commit c14cd7dc zshaohui

盘点功能更新

1 个父辈 6325b4fa
...@@ -252,7 +252,11 @@ public class DataInitManager { ...@@ -252,7 +252,11 @@ public class DataInitManager {
//料串绑定 //料串绑定
addNewFunctionMenu(7, raw, "manualBindStacker", "料串绑定", "manualBindStacker", "manualBindStacker/index", "docOut", functionMenuMap); addNewFunctionMenu(7, raw, "manualBindStacker", "料串绑定", "manualBindStacker", "manualBindStacker/index", "docOut", functionMenuMap);
//盘点
Menu pandian = Menu.CreatePMenu("盘点", 999, "pandian", 3, "mIDList", raw);
addNewFunctionMenu(1,pandian,"sysInventory", "盘点出库","sysInventory", "system/sysInventory/index","mIDList",functionMenuMap);
addNewFunctionMenu(2, pandian, "staWorkSurface/s1", "盘点作业","staWorkSurface/s1", "outers/staWorkSurface/index","index",functionMenuMap);
addNewFunctionMenu(3,pandian,"sysInReport","盘点报表","sysInReport","neolight/sysInReport/index","mIDList",functionMenuMap);
//addNewFunctionMenu(132,null,"outPage","线外入库","outPage","outers/outPage/index","index",functionMenuMap); //addNewFunctionMenu(132,null,"outPage","线外入库","outPage","outers/outPage/index","index",functionMenuMap);
...@@ -324,7 +328,7 @@ public class DataInitManager { ...@@ -324,7 +328,7 @@ public class DataInitManager {
addNewFunctionMenu(80, pMenuReport,"inventoryReport", "库存", "inventoryReport", "neolight/inventoryReport/index", "BOM",functionMenuMap); addNewFunctionMenu(80, pMenuReport,"inventoryReport", "库存", "inventoryReport", "neolight/inventoryReport/index", "BOM",functionMenuMap);
addNewFunctionMenu(81, pMenuReport,"materialShortageReport", "缺料", "materialShortageReport", "neolight/materialShortageReport/index", "mShortageReport",functionMenuMap); addNewFunctionMenu(81, pMenuReport,"materialShortageReport", "缺料", "materialShortageReport", "neolight/materialShortageReport/index", "mShortageReport",functionMenuMap);
addNewFunctionMenu(82,pMenuReport,"pkSearch","PK查询","pkSearch","neolight/pkSearch/index","findOut",functionMenuMap); addNewFunctionMenu(82,pMenuReport,"pkSearch","PK查询","pkSearch","neolight/pkSearch/index","findOut",functionMenuMap);
addNewFunctionMenu(83,pMenuReport,"sysInReport","盘点","sysInReport","neolight/sysInReport/index","mIDList",functionMenuMap); //addNewFunctionMenu(83,pMenuReport,"sysInReport","盘点","sysInReport","neolight/sysInReport/index","mIDList",functionMenuMap);
addNewFunctionMenu(84,pMenuReport,"materialTrack","物料追溯","materialTrack","report/materialTrack/index","mTrack",functionMenuMap); addNewFunctionMenu(84,pMenuReport,"materialTrack","物料追溯","materialTrack","report/materialTrack/index","mTrack",functionMenuMap);
...@@ -379,7 +383,7 @@ public class DataInitManager { ...@@ -379,7 +383,7 @@ public class DataInitManager {
Menu s1 = Menu.CreatePMenu("工位1", 13, "/s1", 2, "index", null); Menu s1 = Menu.CreatePMenu("工位1", 13, "/s1", 2, "index", null);
addNewFunctionMenu(123, s1, "outerWarehouse/s1", "入库扫码装箱","outerWarehouse/s1", "outers/outerWarehouse/index","index",functionMenuMap); addNewFunctionMenu(123, s1, "outerWarehouse/s1", "入库扫码装箱","outerWarehouse/s1", "outers/outerWarehouse/index","index",functionMenuMap);
addNewFunctionMenu(124, s1, "outOperation/s1", "出库作业","outOperation/s1", "outers/outOperation/index","index",functionMenuMap); addNewFunctionMenu(124, s1, "outOperation/s1", "出库作业","outOperation/s1", "outers/outOperation/index","index",functionMenuMap);
addNewFunctionMenu(125, s1, "staWorkSurface/s1", "盘点作业","staWorkSurface/s1", "outers/staWorkSurface/index","index",functionMenuMap); //addNewFunctionMenu(125, s1, "staWorkSurface/s1", "盘点作业","staWorkSurface/s1", "outers/staWorkSurface/index","index",functionMenuMap);
Menu s2 = Menu.CreatePMenu("工位2", 14, "/s2", 2, "index", null); Menu s2 = Menu.CreatePMenu("工位2", 14, "/s2", 2, "index", null);
addNewFunctionMenu(124, s2, "outerWarehouse/s2", "入库扫码装箱","outerWarehouse/s2", "outers/outerWarehouse/index","index",functionMenuMap); addNewFunctionMenu(124, s2, "outerWarehouse/s2", "入库扫码装箱","outerWarehouse/s2", "outers/outerWarehouse/index","index",functionMenuMap);
...@@ -413,7 +417,7 @@ public class DataInitManager { ...@@ -413,7 +417,7 @@ public class DataInitManager {
//内外仓电子看板 //内外仓电子看板
//addNewFunctionMenu(1,null,"elecKanban", "电子看板","elecKanban", "elecKanban/index","kanban",functionMenuMap); //addNewFunctionMenu(1,null,"elecKanban", "电子看板","elecKanban", "elecKanban/index","kanban",functionMenuMap);
addNewFunctionMenu(135,null,"sysInventory", "盘点出库","sysInventory", "system/sysInventory/index","mIDList",functionMenuMap); //addNewFunctionMenu(135,null,"sysInventory", "盘点出库","sysInventory", "system/sysInventory/index","mIDList",functionMenuMap);
//汇总报表 //汇总报表
Menu meMenuReport = Menu.CreatePMenu("汇总报表", 17, "meReport", 3, "inOutData",null); Menu meMenuReport = Menu.CreatePMenu("汇总报表", 17, "meReport", 3, "inOutData",null);
......
...@@ -124,7 +124,7 @@ public class BoxUtil { ...@@ -124,7 +124,7 @@ public class BoxUtil {
Map<String, PartitionInfo> infoMap = new HashMap<>(); Map<String, PartitionInfo> infoMap = new HashMap<>();
String boxStr = getBoxStr(boxSideStr); String boxStr = getBoxStr(boxSideStr);
for (int i = 1; i < 9; i++) { for (int i = 1; i < 9; i++) {
String partition = boxStr + "-" + i; String partition = boxStr + "-0" + i;
PartitionInfo info = new PartitionInfo(); PartitionInfo info = new PartitionInfo();
info.setPartition(partition); info.setPartition(partition);
info.setReelCount(getPartitionCount(partition, subCodeList)); info.setReelCount(getPartitionCount(partition, subCodeList));
...@@ -132,37 +132,39 @@ public class BoxUtil { ...@@ -132,37 +132,39 @@ public class BoxUtil {
info.setNum(getPartitionNum(partition, subCodeList)); info.setNum(getPartitionNum(partition, subCodeList));
infoMap.put(partition, info); infoMap.put(partition, info);
} }
String par01 = boxStr+"-01";
String par02 = boxStr+"-02";
String par03 = boxStr+"-03";
String par04 = boxStr+"-04";
String par05 = boxStr+"-05";
String par06 = boxStr+"-06";
if (boxSideStr.endsWith("A")) { if (boxSideStr.endsWith("A")) {
if (boxSideStr.startsWith("CS") || boxSideStr.startsWith("CB")) { if (boxSideStr.startsWith("C07")) {
for (int i = 8; i > 4; i--) { infoList.add(infoMap.get(par02));
String partition = boxStr + "-" + i; infoList.add(infoMap.get(par04));
infoList.add(infoMap.get(partition)); infoList.add(infoMap.get(par05));
} infoList.add(infoMap.get(par01));
for (int i = 1; i < 5; i++) { infoList.add(infoMap.get(par03));
String partition = boxStr + "-" + i; infoList.add(infoMap.get(par05));
infoList.add(infoMap.get(partition));
}
} else { } else {
for (int i = 2; i > 0; i--) { infoList.add(infoMap.get(par01));
String partition = boxStr + "-" + i; infoList.add(infoMap.get(par02));
infoList.add(infoMap.get(partition)); infoList.add(infoMap.get(par03));
}
} }
} else if (boxSideStr.endsWith("B")) { } else if (boxSideStr.endsWith("B")) {
if (boxSideStr.startsWith("CS") || boxSideStr.startsWith("CB")) { if (boxSideStr.startsWith("C07")) {
for (int i = 4; i > 0; i--) { infoList.add(infoMap.get(par05));
String partition = boxStr + "-" + i; infoList.add(infoMap.get(par03));
infoList.add(infoMap.get(partition)); infoList.add(infoMap.get(par01));
} infoList.add(infoMap.get(par06));
for (int i = 5; i < 9; i++) { infoList.add(infoMap.get(par04));
String partition = boxStr + "-" + i; infoList.add(infoMap.get(par02));
infoList.add(infoMap.get(partition));
}
} else { } else {
for (int i = 1; i < 3; i++) { infoList.add(infoMap.get(par03));
String partition = boxStr + "-" + i; infoList.add(infoMap.get(par02));
infoList.add(infoMap.get(partition)); infoList.add(infoMap.get(par01));
}
} }
} }
} }
......
...@@ -34,6 +34,7 @@ import java.util.ArrayList; ...@@ -34,6 +34,7 @@ import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
@Api(tags = "虚拟仓盘点") @Api(tags = "虚拟仓盘点")
@RequestMapping("/virInventory") @RequestMapping("/virInventory")
...@@ -190,4 +191,34 @@ public class VirInventoryController { ...@@ -190,4 +191,34 @@ public class VirInventoryController {
return ResultBean.newOkResult(cache.toString()); return ResultBean.newOkResult(cache.toString());
} }
} }
@ApiOperation("获取所有库位")
@RequestMapping("/getAllPosName")
@AnonymousAccess
public void getAllPosName() {
List<String> posNameList = new ArrayList<>();
Query query = new Query();
query.fields().include("posName","storageId");
List<StoragePos> storagePosList = storagePosManager.findByQuery(query);
for (StoragePos pos : storagePosList) {
Storage storage = dataCache.getStorageById(pos.getStorageId());
if (storage.isVirtual()){
continue;
}
String posName = pos.getPosName();
posName = posName.substring(13,posName.length());
posNameList.add(posName);
}
posNameList = posNameList.stream().distinct().collect(Collectors.toList());
posNameList = posNameList.stream().collect(Collectors.toList());
for (String s : posNameList) {
log.info(s);
}
}
} }
...@@ -364,6 +364,12 @@ public class ManualGrPutInController { ...@@ -364,6 +364,12 @@ public class ManualGrPutInController {
return ResultBean.newErrorResult(-1, "smfcore.error.barcode.invalid", "条码无效"); return ResultBean.newErrorResult(-1, "smfcore.error.barcode.invalid", "条码无效");
} }
//判断盘点是否完成
boolean finished = BoxUtil.isInventoryFinished(boxStr);
if (!finished) {
return ResultBean.newErrorResult(-1, "", boxStr + "盘点未完成,请继续盘点");
}
//1.清理要出库的数据 //1.清理要出库的数据
List<Barcode> newSubCodeList = new ArrayList<>(); List<Barcode> newSubCodeList = new ArrayList<>();
...@@ -378,9 +384,7 @@ public class ManualGrPutInController { ...@@ -378,9 +384,7 @@ public class ManualGrPutInController {
barcode.setOrderItemId(""); barcode.setOrderItemId("");
barcode.setOut(false); barcode.setOut(false);
barcode = barcodeManager.save(barcode); barcode = barcodeManager.save(barcode);
BoxHandleUtil.manualGenerateTask(barcode,OP_STATUS.CANCEL.name(),barcode.getAmount(),OP.CHECKOUT,orderItemId,""); BoxHandleUtil.manualGenerateTask(barcode,OP_STATUS.CANCEL.name(),barcode.getAmount(),OP.CHECKOUT,orderItemId,"");
} }
newSubCodeList.add(barcode); newSubCodeList.add(barcode);
} }
...@@ -389,6 +393,13 @@ public class ManualGrPutInController { ...@@ -389,6 +393,13 @@ public class ManualGrPutInController {
boxBarcode.setSubCodeList(newSubCodeList); boxBarcode.setSubCodeList(newSubCodeList);
boxBarcode = barcodeManager.save(boxBarcode); boxBarcode = barcodeManager.save(boxBarcode);
//同时更新pos表
StoragePos storagePos = BoxHandleUtil.locOnePos(boxBarcode);
if (storagePos != null){
storagePos.setBarcode(boxBarcode);
storagePosManager.save(storagePos);
}
//1.判断是否有正在入库的任务 //1.判断是否有正在入库的任务
for (DataLog dataLog : taskService.getAllTasks()) { for (DataLog dataLog : taskService.getAllTasks()) {
......
...@@ -14,6 +14,7 @@ import com.neotel.smfcore.core.storage.service.po.Storage; ...@@ -14,6 +14,7 @@ import com.neotel.smfcore.core.storage.service.po.Storage;
import com.neotel.smfcore.core.storage.service.po.StoragePos; import com.neotel.smfcore.core.storage.service.po.StoragePos;
import com.neotel.smfcore.core.system.service.po.DataLog; import com.neotel.smfcore.core.system.service.po.DataLog;
import com.neotel.smfcore.core.system.util.TaskService; import com.neotel.smfcore.core.system.util.TaskService;
import com.neotel.smfcore.custom.lizhen.agvBox.util.BoxUtil;
import com.neotel.smfcore.custom.luxsan.factory_c.common.util.CacheNameUtil; import com.neotel.smfcore.custom.luxsan.factory_c.common.util.CacheNameUtil;
import com.neotel.smfcore.custom.luxsan.factory_c.rawstor.kafka.service.KafkaService; import com.neotel.smfcore.custom.luxsan.factory_c.rawstor.kafka.service.KafkaService;
import com.neotel.smfcore.custom.luxsan.factory_c.rawstor.util.BoxHandleUtil; import com.neotel.smfcore.custom.luxsan.factory_c.rawstor.util.BoxHandleUtil;
...@@ -135,6 +136,11 @@ public class ManualLineController { ...@@ -135,6 +136,11 @@ public class ManualLineController {
return ResultBean.newErrorResult(-1, "smfcore.error.barcode.invalid", "条码无效"); return ResultBean.newErrorResult(-1, "smfcore.error.barcode.invalid", "条码无效");
} }
boolean finished = BoxUtil.isInventoryFinished(boxBarcode.getBarcode());
if (!finished) {
return ResultBean.newErrorResult(-1, "", boxStr + "盘点未完成,请继续盘点");
}
//1.清理要出库的数据 //1.清理要出库的数据
List<Barcode> newSubCodeList = new ArrayList<>(); List<Barcode> newSubCodeList = new ArrayList<>();
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!