Commit 001eecd4 sunke

AAA入库Facility设置

1 个父辈 619e715f
......@@ -223,12 +223,6 @@ public class TaskService implements ITaskService {
String barcode = statusBean.getCode();
try {
Barcode barcodeSave = resolveBarcode(barcode);
if(storage.isPackage()){
//包装料,清理AppendInfo信息
log.info("包装料["+barcodeSave.getBarcode()+"]清除Facility信息");
barcodeSave.setAppendInfo(null);
barcodeSave = barcodeManager.save(barcodeSave);
}
//入库时的RFID
String inRFID = statusBean.getInRfid();
verifyBarcodePutIn(Lists.<Storage>newArrayList(storage),barcodeSave,inRFID);
......@@ -475,6 +469,8 @@ public class TaskService implements ITaskService {
//}
//DN单验证
appendInfo.setDnNo("");
appendInfo.setFacility("");
DNInfo dnInfo = QisdaController.getDnInfo(inRFID);
if(dnInfo.isDNIn()){
......@@ -852,7 +848,8 @@ public class TaskService implements ITaskService {
return null;
}
int checkoutSize = 0;
for(DataLog task : taskMap.values()){
Collection<DataLog> waitTasks = taskMap.values();
for(DataLog task : waitTasks){
//如果该BOX在已执行任务中已经有入库任务,不再分配直接返回
if(cid.equals(task.getCid()) && task.isExecuting()){
if(task.isPutInTask()){
......@@ -876,10 +873,9 @@ public class TaskService implements ITaskService {
}
Collection<DataLog> allTasks = taskMap.values();
//if(DataCache.isProductionFor(DataCache.CUSTOMER.QISDA)){
//分盘料
for (DataLog task : allTasks) {
for (DataLog task : waitTasks) {
if(cid.equals(task.getCid()) && task.isCheckOutTask() && task.isWait()) {
//需要分盘的料,且不是包装料,统一都放到料串上,可以先出
if(task.isCutReel() || task.isUrgentReel()){
......@@ -897,7 +893,7 @@ public class TaskService implements ITaskService {
int minARfidIndex = -1;
for (DataLog task : allTasks) {
for (DataLog task : waitTasks) {
if(task.isCheckOutTask()) {
AppendInfo appendInfo = task.getAppendInfo();
if(appendInfo.isFirstReelAction()){
......@@ -936,7 +932,7 @@ public class TaskService implements ITaskService {
//包装料仓
if(storage.isPackage()){
//找当前料仓最小料架,最小架位的
for (DataLog task : allTasks) {
for (DataLog task : waitTasks) {
if (cid.equals(task.getCid()) && task.isCheckOutTask() && task.isWait()) {
//按料架顺序
if(minARfidIndex != -1){
......@@ -955,7 +951,7 @@ public class TaskService implements ITaskService {
//首套料需要先出D料架,再出C料架,并且要按料架顺序
//架位顺序随机,保证左右机器人均衡
boolean locAsc = RandomUtils.nextBoolean();
for (DataLog task : allTasks) {
for (DataLog task : waitTasks) {
if(cid.equals(task.getCid()) && task.isCheckOutTask() && task.isWait()){
AppendInfo appendInfo = task.getAppendInfo();
int rfidIndex = appendInfo.getRfidIndex();
......@@ -1008,12 +1004,14 @@ public class TaskService implements ITaskService {
if(storageTask != null){
log.info("出库首盘料任务"+storageTask.getBarcode()+"["+storageTask.getPosName()+"]" + storageTask.getAppendInfo());
}
return storageTask;
}else{
//包装料仓,不按顺序,可以同时出
if(storage.isPackage()){
for (DataLog task : allTasks) {
for (DataLog task : waitTasks) {
if (cid.equals(task.getCid()) && task.isCheckOutTask() && task.isWait()) {
log.info("出库包装料任务"+task.getBarcode()+"["+task.getPosName()+"]" + task.getAppendInfo());
return task;
......@@ -1021,7 +1019,7 @@ public class TaskService implements ITaskService {
}
}else{
//一次性把D料架出完,再出C料架,包装料可以同时出
for (DataLog task : allTasks) {
for (DataLog task : waitTasks) {
if(cid.equals(task.getCid()) && task.isCheckOutTask() && task.isWait()){
//还有小料架出库任务,出小料架
if(minDRfidIndex != -1){
......@@ -1045,7 +1043,7 @@ public class TaskService implements ITaskService {
//指定紧急单盘出库的优先出库,否则按批量出库处理
// for (DataLog task : allTasks) {//优先分配单盘任务和没有工单的任务
// for (DataLog task : waitTasks) {//优先分配单盘任务和没有工单的任务
// if(cid.equals(task.getCid()) && task.isCheckOutTask()){
// if(task.isSingleOut()){
// //只有等待或执行中的任务
......@@ -1071,7 +1069,7 @@ public class TaskService implements ITaskService {
//优先查找有库位信息的
// Map<String,DataLog> partNumberTaskMap = new HashMap<>();
// for (DataLog task : allTasks) {//分配任务
// for (DataLog task : waitTasks) {//分配任务
// //只有等待或执行中的任务
// if(task.isWait() || task.isExecuting()){
// String posName = task.getPosName();
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!