opt:优化任务更新
This commit is contained in:
@@ -54,6 +54,7 @@ import org.nl.wms.pda.mps.service.ShippingService;
|
|||||||
import org.nl.wms.pda.mps.service.impl.BakingServiceImpl;
|
import org.nl.wms.pda.mps.service.impl.BakingServiceImpl;
|
||||||
import org.nl.wms.pda.st.service.impl.PrintServiceImpl;
|
import org.nl.wms.pda.st.service.impl.PrintServiceImpl;
|
||||||
import org.nl.wms.sch.ComPareUtil;
|
import org.nl.wms.sch.ComPareUtil;
|
||||||
|
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||||
import org.nl.wms.sch.manage.TaskStatusEnum;
|
import org.nl.wms.sch.manage.TaskStatusEnum;
|
||||||
import org.nl.wms.sch.tasks.CutConveyorTask;
|
import org.nl.wms.sch.tasks.CutConveyorTask;
|
||||||
import org.nl.wms.sch.tasks.EmptyVehicleTask;
|
import org.nl.wms.sch.tasks.EmptyVehicleTask;
|
||||||
@@ -211,24 +212,15 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
status = "0";
|
status = "0";
|
||||||
}
|
}
|
||||||
// 任务处理类
|
// 任务处理类
|
||||||
try {
|
AbstractAcsTask abstractTask = (AbstractAcsTask)SpringContextHolder.getBean(Class.forName(taskObj.getString("handle_class")));
|
||||||
Object obj = new Object();
|
abstractTask.updateTaskStatus(taskObj,status);
|
||||||
try {
|
|
||||||
obj = SpringContextHolder.getBean(Class.forName(processing_class));
|
|
||||||
} catch (Exception e) {
|
|
||||||
Class<?> clz = Class.forName(processing_class);
|
|
||||||
obj = clz.newInstance();
|
|
||||||
}
|
|
||||||
// 调用每个任务类的forceFinishInst()强制结束方法
|
|
||||||
Method m = obj.getClass().getDeclaredMethod("updateTaskStatus", JSONObject.class, String.class);
|
|
||||||
m.invoke(obj, row, status);
|
|
||||||
} catch (Exception e) {
|
|
||||||
WQLObject.getWQLObject("SCH_BASE_Task").update(MapOf.of("remark",DateUtil.now()+"更新"+status+"失败:"+e.getMessage()),"task_id = '" + task_id + "'");
|
|
||||||
throw e;
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
throw new BadRequestException("任务标识为:" + task_id + "的任务正在操作中!");
|
throw new BadRequestException("任务标识为:" + task_id + "的任务正在操作中!");
|
||||||
}
|
}
|
||||||
|
}catch (Exception ex){
|
||||||
|
WQLObject.getWQLObject("SCH_BASE_Task").update(MapOf.of("remark",DateUtil.now()+"更新"+row.getString("task_status")+"失败:"+ex.getMessage()),"task_id = '" + task_id + "'");
|
||||||
|
log.error(task_id+"acs更新任务失败:{}", ex);
|
||||||
|
throw ex;
|
||||||
} finally {
|
} finally {
|
||||||
if (tryLock) {
|
if (tryLock) {
|
||||||
lock.unlock();
|
lock.unlock();
|
||||||
|
|||||||
Reference in New Issue
Block a user