Commit 189745dd zshaohui

1.uid出库 只增加线体选择,后台自己匹配机种

2.uid出库, 在选择线体时,增加 异常出库 选项
1 个父辈 311ee050
......@@ -553,6 +553,7 @@ public class LiteOrderCache {
while (assignReelCount < remainReelCount) {
String partNumber = orderItem.getPn();
String[] partNumberSpl = partNumber.split(",");
StoragePos pos = null;
if (cacheOrder.getType() == 2) {
......@@ -567,7 +568,12 @@ public class LiteOrderCache {
} else {
//PN
do {
pos = storagePosManager.findPartNumberInStorages(storageIdList, partNumber, excludePosIds, checkoutType, orderItem.getBrand());
for (String pn : partNumberSpl) {
pos = storagePosManager.findPartNumberInStorages(storageIdList, pn, excludePosIds, checkoutType, orderItem.getBrand());
if (pos != null){
break;
}
}
if (pos == null) {
break;
}
......@@ -618,6 +624,7 @@ public class LiteOrderCache {
task.setPickingId(orderItem.getPickingId());
task.setItemNo(orderItem.getItemNo());
task.setModel(orderItem.getModel());
task.setMo(orderItem.getMo());
//先调用tower发料
String result = lizhenApi.towerCheck(task);
......@@ -1254,16 +1261,22 @@ public class LiteOrderCache {
continue;
}
}
String pn = orderItem.getPn();
String[] split = pn.split(",");
if (orderItem.getOutReelCount() < orderItem.getNeedReelCount()) {
InventoryItem inventoryItem = inventoryMap.get(orderItem.getPn());
if (inventoryItem != null) {
if (inventoryItem.getStockReel() /*- inventoryItem.getLockReel()*/ - inventoryItem.getBindReel() > 0) {
inventoryItem.setBindReel(inventoryItem.getBindReel() + 1);
} else {
lackItems.add(orderItem);
boolean lack = true;
for (String partNumber : split) {
InventoryItem inventoryItem = inventoryMap.get(partNumber);
if (inventoryItem != null){
if (inventoryItem.getStockReel() /*- inventoryItem.getLockReel()*/ - inventoryItem.getBindReel() > 0) {
inventoryItem.setBindReel(inventoryItem.getBindReel() + 1);
inventoryMap.put(orderItem.getPn(), inventoryItem);
lack = false;
break;
}
}
inventoryMap.put(orderItem.getPn(), inventoryItem);
} else {
}
if (lack){
lackItems.add(orderItem);
}
}
......
......@@ -4,6 +4,7 @@ package com.neotel.smfcore.core.order.rest.bean.query;
import com.neotel.smfcore.common.annotation.QueryCondition;
import com.neotel.smfcore.common.bean.BetweenData;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.List;
......@@ -14,7 +15,8 @@ public class OrderQueryCondition {
@QueryCondition(blurry = "orderNo,export")
private String blurry;
@QueryCondition(type = QueryCondition.Type.BETWEEN)
@QueryCondition(type = QueryCondition.Type.BETWEEN,propName = "createDate")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private BetweenData<Date> createDate;
@QueryCondition(type = QueryCondition.Type.IN, propName = "source")
......@@ -28,6 +30,11 @@ public class OrderQueryCondition {
//缺料预警id
@QueryCondition(blurry = "warningItemId,reel")
private String warningItemId;
@QueryCondition(type = QueryCondition.Type.BETWEEN,propName = "updateDate")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private BetweenData<Date> updateDate;
//
// @QueryCondition(type=QueryCondition.Type.IN,propName = "status")
// private List<Integer> statusList ;
......
......@@ -732,14 +732,20 @@ public class StoragePosController {
throw new ValidateException("smfcore.valueCanotNull", "{0}不能为空", new String[]{"ID"});
}
String line = checkOutDto.getLine();
if (StringUtils.isEmpty(line)){
throw new ValidateException("smfcore.valueCanotNull", "{0}不能为空", new String[]{"线体"});
}
String model = checkOutDto.getModel();
if (StringUtils.isEmpty(model)){
throw new ValidateException("smfcore.valueCanotNull", "{0}不能为空", new String[]{"机种"});
if (!"异常出库".equals(line)){
throw new ValidateException("smfcore.valueCanotNull", "{0}不能为空", new String[]{"机种"});
}
}
String line = checkOutDto.getLine();
if (StringUtils.isEmpty(line)){
throw new ValidateException("smfcore.valueCanotNull", "{0}不能为空", new String[]{"线体"});
if ("异常出库".equals(line)){
checkOutDto.setForceOut(true);
}
if (checkOutDto.getSingleOut() == null) {
......
......@@ -113,6 +113,7 @@ public class TaskController {
headerList.add(Lists.newArrayList("料仓名称"));
headerList.add(Lists.newArrayList("数量"));
headerList.add(Lists.newArrayList("类型"));
headerList.add(Lists.newArrayList("MO"));
headerList.add(Lists.newArrayList("来源"));
headerList.add(Lists.newArrayList("线体"));
headerList.add(Lists.newArrayList("机台名"));
......@@ -139,6 +140,7 @@ public class TaskController {
result.add(dataLog.getPosName()+" "+dataLog.getStorageName());
result.add(dataLog.getNum());
result.add(dataLog.getType() == 1 ? "入库" : "出库");
result.add(dataLog.getMo());
result.add(dataLog.getSourceName());
result.add(dataLog.getLine());
result.add(dataLog.getMachineName());
......
......@@ -154,7 +154,7 @@ public class TaskDto implements Serializable {
private String subSlot = "";
private String side = "";
private String mo = "";
public String getTaskColor() {
if (ObjectUtil.isNotEmpty(lightColor)) {
......
......@@ -43,4 +43,7 @@ public class PreWarningItem extends BasePo {
private Date receiveDate = new Date();
private String pickingId;
//工单号
private String mo;
}
......@@ -89,7 +89,7 @@ public class PreWarningItemCache {
int minute = dataCache.getLineConfigMinute(line);
if (minute == 0) {
minute = 20;
minute = 1;
}
PreWarningItem firstItem = itemList.get(0);
......@@ -185,6 +185,7 @@ public class PreWarningItemCache {
orderItem.setReceiveDate(item.getReceiveDate());
orderItem.setPickingId(item.getPickingId());
orderItem.setItemNo(item.getItemNo());
orderItem.setMo(item.getMo());
orderItems.add(orderItem);
}
}
......
......@@ -27,6 +27,7 @@ public class LineController {
List<String> lineList = Arrays.asList(split);
lineList = lineList.stream().distinct().collect(Collectors.toList());
Collections.sort(lineList);
lineList.add(0,"异常出库");
return ResultBean.newOkResult(lineList);
}
......
......@@ -42,6 +42,13 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.PostConstruct;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.*;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
......@@ -205,6 +212,8 @@ public class LizhenController {
item.setLine(data.get("LINE"));
item.setItemId(data.get("ID"));
item.setPickingId(data.get("PICKING_ID"));
String mo = data.get("MO");
item.setMo(mo);
try {
item.setItemNo(Integer.valueOf(data.get("ITEM_NO")));
item.setPriority(Integer.valueOf(data.get("PRIORITY")));
......@@ -250,6 +259,7 @@ public class LizhenController {
item.setLine(data.get("LINE"));
item.setItemId(data.get("ID"));
item.setPickingId(data.get("PICKING_ID"));
item.setMo(data.get("WORKORDERNO"));
try {
item.setItemNo(Integer.valueOf(data.get("ITEM_NO")));
item.setPriority(Integer.valueOf(data.get("PRIORITY")));
......@@ -499,4 +509,24 @@ public class LizhenController {
}
return url;
}
public static void main(String[] args) {
// 请将 "yourfile.txt" 替换为你的实际文件路径
String filePath = "D:\\Desktop\\2024-10-26.mes.txt";
// 方法2:使用BufferedReader和InputStreamReader读取文件
try (BufferedReader br = new BufferedReader(new InputStreamReader(Files.newInputStream(Paths.get(filePath)), "GBK"))) {
String line;
while ((line = br.readLine()) != null) {
if (/*line.startsWith("2024-10-26 09") ||*/ line.startsWith("2024-10-26 10")/* || line.startsWith("2024-10-26 11")*/) {
if (line.contains("\"SIDE\":\"B\"")){
System.out.println(line);
}
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
3f:
line: C03-3FSMT-13,C02-3FSMT-12,C02-3FSMT-18,C02-3FSMT-19,C03-1FSMT-12,C02-3FSMT-11,C03-1FSMT-11,C02-3FSMT-17,C02-3FSMT-14,C03-1FSMT-12,C02-3FSMT-13,C02-3FSMT-16,C02-3FSMT-15,C02-3FSMT-19
\ No newline at end of file
line: C02-3FSMT-18,C02-3FSMT-19,C02-3FSMT-17,C02-3FSMT-14,C02-3FSMT-13,C02-3FSMT-16,C02-3FSMT-15,C02-3FSMT-19
\ No newline at end of file
3f:
line: C03-1FSMT-01,C02-3FSMT-02,C03-3FSMT-03,C02-3FSMT-09,C02-3FSMT-01,C03-1FSMT-02,C02-3FSMT-08,C02-3FSMT-06,C02-3FSMT-07,C02-3FSMT-04,C02-3FSMT-05,C02-3FSMT-03,C03-1FSMT-02
\ No newline at end of file
line: C02-3FSMT-09,C02-3FSMT-08,C02-3FSMT-06,C02-3FSMT-07,C02-3FSMT-04,C02-3FSMT-05,C02-3FSMT-03
\ No newline at end of file
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!