Commit debdf76b LN

1.过期日志改为23:59:59.

2.API201改为Get.
3.入库取消的任务统计为NG.
4.ControlledDispatch创建工单需要验证opID
1 个父辈 185d7428
......@@ -526,6 +526,9 @@ public class StatusBean {
public void MsgDataProcess() {
try {
if(ObjectUtil.isEmpty(msgCode)){
msgCode="";
}
//消息格式处理
if (getMsgList() == null && ObjectUtil.isNotEmpty(msg)) {
msgList = new ArrayList<>();
......
......@@ -106,7 +106,7 @@ public class InListItem extends BasePo implements Serializable {
public boolean isSuccess(){
return state.equalsIgnoreCase(INITEM_STATUS.Success)||state.equalsIgnoreCase(INITEM_STATUS.PutIn)||
state.equalsIgnoreCase(INITEM_STATUS.PutEnd)||state.equalsIgnoreCase(INITEM_STATUS.Wait)||state.equalsIgnoreCase(INITEM_STATUS.Cancel);
state.equalsIgnoreCase(INITEM_STATUS.PutEnd)||state.equalsIgnoreCase(INITEM_STATUS.Wait);
}
public boolean isXray() {
......@@ -114,7 +114,7 @@ public class InListItem extends BasePo implements Serializable {
}
public boolean isNg() {
return state.equalsIgnoreCase(INITEM_STATUS.API001NG)|| state.equalsIgnoreCase(INITEM_STATUS.NG);
return state.equalsIgnoreCase(INITEM_STATUS.API001NG)|| state.equalsIgnoreCase(INITEM_STATUS.NG)||state.equalsIgnoreCase(INITEM_STATUS.Cancel);
}
public boolean isFailure() {
......
......@@ -105,7 +105,7 @@ public class DefaultOrderFileListener implements IOrderFileListener {
@Override
public boolean handleOrderFile(File orderFile, String mode, String reason) {
public boolean handleOrderFile(File orderFile, String mode, String reason,String operId) {
String fileName = orderFile.getName();
//String backupFileName = fileName +"_" + System.currentTimeMillis();
//看数据库是否已有此工单
......@@ -163,7 +163,8 @@ public class DefaultOrderFileListener implements IOrderFileListener {
}
LiteOrder liteOrder = new LiteOrder(orderName, allItems);
liteOrder.setMode(mode);
log.info("watchOrderDir,mode=[" + mode + "],reason=[" + reason + "]:新增加订单:" + liteOrder.getOrderNo() + ",共" + allItems.size() + "条工单详情");
liteOrder.setOperationId(operId);
log.info("watchOrderDir,mode=[" + mode + "],reason=[" + reason + "],opId=["+operId+"]:新增加订单:" + liteOrder.getOrderNo() + ",共" + allItems.size() + "条工单详情");
liteOrder = liteOrderManager.createWithItems(liteOrder);
liteOrderCache.addOrderToMap(liteOrder);
......
......@@ -9,6 +9,6 @@ public interface IOrderFileListener {
boolean handleOrderFile(File orderFile);
boolean handleOrderFile(File orderFile,String mode,String reason);
boolean handleOrderFile(File orderFile,String mode,String reason,String operId);
}
......@@ -131,11 +131,11 @@ public class OrderFileWatch {
* @param orderFile
* @return
*/
public boolean handleOrderFile(File orderFile,String mode,String reason){
public boolean handleOrderFile(File orderFile,String mode,String reason,String operId){
log.info("开始处理Order文件:" + orderFile.getAbsolutePath());
for (IOrderFileListener orderFileListener : orderFileListenerList) {
boolean result = orderFileListener.handleOrderFile(orderFile,mode,reason);
boolean result = orderFileListener.handleOrderFile(orderFile,mode,reason,operId);
if(result){
return true;
}
......
......@@ -724,7 +724,7 @@ public class MicronApi {
log.info("API009 ,接口通信失败:" + errMsg);
for (Barcode barcode : barcodeList) {
resultMap.put(barcode.getBarcode(), new MaterialStatus(barcode.getBarcode(), barcode.getPartNumber(), "", errMsg, true));
resultMap.put(barcode.getBarcode(), new MaterialStatus(barcode.getBarcode(), barcode.getPartNumber(), "", errMsg, false));
}
......@@ -937,7 +937,8 @@ public class MicronApi {
try {
log.info("调用MES接口 API201: url=" + url + " ");
MicronResult result = HttpHelper.postMicronJson(url, null);
// MicronResult result = HttpHelper.postMicronJson(url, null);
MicronResult result = HttpHelper.getMicronJson(url);
if (result.isOk()) {
return "";
}
......
......@@ -160,6 +160,10 @@ public class MicronResult implements Serializable {
detail = "detail:" + detail;
}
if(ObjectUtil.isEmpty(errCode)&&ObjectUtil.isEmpty(errMsg)&&ObjectUtil.isEmpty(detail)){
return "";
}
return errCode + ";" + errMsg + ";" + detail;
} catch (Exception exception) {
log.error("出错:" + exception);
......
......@@ -176,6 +176,11 @@ public class LoadingUtil {
public InListItem updateItemState( String barcode,String posName,String s,String ngMsg) {
if(ObjectUtil.isEmpty(ngMsg)){
if (s.equalsIgnoreCase(INITEM_STATUS.Cancel)){
ngMsg="Task canceled";
}
}
InList inList = getInlist();
if (inList == null) {
......@@ -204,7 +209,7 @@ public class LoadingUtil {
item.setState(s);
item = inListItemManager.save(item);
result = item;
log.info(" 更新入库单[" + inList.getName() + "]:条码 [" + item.getRi() + "]库位[" + item.getPosName() + "]的状态=" + s);
log.info(" 更新入库单[" + inList.getName() + "]:条码 [" + item.getRi() + "]库位[" + item.getPosName() + "]的状态=" + s+",ngmsg="+ngMsg);
}
}
inListItems.add(item);
......
......@@ -193,6 +193,11 @@ private IStoragePosManager storagePosManager;
log.info("outSideSubmit 未找到mode="+mode+" 的TaskDto");
return ResultBean.newErrorResult(-1, "smfcore.micron.operationFailure", "操作失败");
}
//判断是否生成,未关闭的工单
if( ObjectUtil.isEmpty(dto.getOperationId())|| ObjectUtil.isEmpty(dto.getLineId())){
log.info("outSideSubmit 操作失败,taskDto数据不完整");
return ResultBean.newErrorResult(-1, "smfcore.micron.operationFailure", "操作失败");
}
String csv = "csv";
String excel = "xlsx";
String fileType = FileUtil.getExtensionName(orderFile.getOriginalFilename());
......@@ -203,7 +208,7 @@ private IStoragePosManager storagePosManager;
File folder = new File(properties.getPath(), "pos");
File localFile = FileUtil.upload(orderFile, folder.getAbsolutePath());
boolean result = orderFileWatch.handleOrderFile(localFile, mode, reason);
boolean result = orderFileWatch.handleOrderFile(localFile, mode, reason,dto.getOperationId());
if (result) {
dto.setLineId(reason);
......@@ -290,6 +295,7 @@ private IStoragePosManager storagePosManager;
@AnonymousAccess
@PostMapping("/pnSubmit")
public ResultBean pnSubmit(@RequestBody Set< TacticsOutDto > outDtoSet) {
//判断是否验证
if (!MicronApi.isEnable()) {
return ResultBean.newErrorResult(9, "smfcore.micron.apiClose", " Not yet open");
......@@ -310,7 +316,12 @@ private IStoragePosManager storagePosManager;
//生成工单
String mode="CTRLDISPATCH";
//判断是否生成,未关闭的工单
TaskDto taskDto = getTaskDtoByMode(mode);
if(taskDto==null || ObjectUtil.isEmpty(taskDto.getOperationId())|| ObjectUtil.isEmpty(taskDto.getLineId())){
log.info("pnSubmit 操作失败,taskDto数据不完整");
return ResultBean.newErrorResult(-1, "smfcore.micron.operationFailure", "操作失败");
}
//新增为一个工单
String orderName = "";
List<LiteOrder> orders = liteOrderManager.findByQuery(new Query(Criteria.where("mode").is(mode)));
......@@ -339,6 +350,7 @@ private IStoragePosManager storagePosManager;
}
LiteOrder liteOrder = new LiteOrder(orderName, items);
liteOrder.setOperationId(taskDto.getOperationId());
liteOrder.setMode(mode);
log.info("pnSubmit,mode=[" + mode + "], 新增加订单:" + liteOrder.getOrderNo() + ",共" + items.size() + "条工单详情");
liteOrder = liteOrderManager.createWithItems(liteOrder);
......
......@@ -420,7 +420,7 @@ public class MicronPreTaskController {
int ngQty=0;
int tranFailQty=0;
int successQty=0;
if(item.getStatus()==OrderItemStatus.notify_fail){
if(item.getStatus()==OrderItemStatus.notify_fail||item.getStatus()==OrderItemStatus.cancel){
ngQty=item.getNeedReelCount();
}else if(item.getStatus()==OrderItemStatus.executFail)
{
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!