Commit a12a00a6 zshaohui

每小时出入库统计,增加执行时间

1 个父辈 2106f462
......@@ -22,6 +22,8 @@ import com.neotel.smfcore.core.device.enums.OP;
import com.neotel.smfcore.core.device.enums.OP_STATUS;
import com.neotel.smfcore.core.device.handler.IDeviceHandler;
import com.neotel.smfcore.core.device.util.DataCache;
import com.neotel.smfcore.core.inout.service.manager.IInOutDataManager;
import com.neotel.smfcore.core.inout.service.po.InOutData;
import com.neotel.smfcore.core.language.util.MessageUtils;
import com.neotel.smfcore.core.message.util.DeviceMessageUtil;
import com.neotel.smfcore.core.msd.bean.MSDSettiings;
......@@ -103,6 +105,9 @@ public class BaseDeviceHandler implements IDeviceHandler {
@Autowired
private ISelfAuditManager selfAuditManager;
@Autowired
private IInOutDataManager inOutDataManager;
/**
* CID的服务器消息(key 为 cid)
*/
......@@ -554,6 +559,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
if (executeTime > 0) {
task.setExecuteTime(executeTime);
updatePosExecuteTime(task.getPosName(), executeTime);
updateInOutDateExecuteTime(task.getPosName(),executeTime);
}
log.info(task.getBarcode() + "入仓位[" + task.getPosName() + "]完成,执行时间[" + executeTime + "]秒");
DataLog cancelTask = taskService.findFinishedPutInTask(cid, task.getPosName(), task.getBarcode());
......@@ -572,6 +578,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
if (executeTime > 0) {
task.setExecuteTime(executeTime);
updatePosExecuteTime(task.getPosName(), executeTime);
updateInOutDateExecuteTime(task.getPosName(),executeTime);
}
log.info(task.getBarcode() + "入仓位[" + task.getPosName() + "]完成,但任务已被取消,修改为完成,执行时间[" + executeTime + "]秒");
updatePutInData(task);
......@@ -617,6 +624,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
}
if (executeTime > 0) {
task.setExecuteTime(executeTime);
updateInOutDateExecuteTime(task.getPosName(),executeTime);
}
log.info(task.getBarcode() + "出仓位[" + task.getPosName() + "]完成,执行时间[" + executeTime + "]秒");
DataLog cancelTask = taskService.findFinishedOutTask(cid, task.getPosName(),task.getBarcode());
......@@ -640,6 +648,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
if (task.isCancel()) {//被取消的任务,客户端发完成信号过来,修改取消状态为已完成
if (executeTime > 0) {
task.setExecuteTime(executeTime);
updateInOutDateExecuteTime(task.getPosName(),executeTime);
}
log.info(task.getBarcode() + "出仓位[" + task.getPosName() + "]完成,但任务已被取消,修改为完成,执行时间[" + executeTime + "]秒");
updateCheckoutData(task,outBoxStatus);
......@@ -1000,6 +1009,16 @@ public class BaseDeviceHandler implements IDeviceHandler {
return false;
}
private void updateInOutDateExecuteTime(String posName, int executeTime) {
StoragePos storagePos = storagePosManager.getByPosName(posName);
if (storagePos != null){
Storage storage = dataCache.getStorageById(storagePos.getStorageId());
InOutData inOutData = dataCache.getLastSaveInOutData(storage.getCid(), storage.getId());
inOutData.setExecuteTime(inOutData.getExecuteTime() + executeTime);
inOutDataManager.save(inOutData);
}
}
@Override
public DeviceType getDeviceType() {
return DeviceType.DEFAULT;
......
......@@ -913,7 +913,7 @@ public class DataCache {
inOutDataManager.save(inOutData);
}
private InOutData getLastSaveInOutData(String cid, String storageId) {
public InOutData getLastSaveInOutData(String cid, String storageId) {
InOutData inOutData = inOutDataManager.findOneByCidAndStorageId(cid,storageId);
if (inOutData == null) {
inOutData = new InOutData();
......
......@@ -30,4 +30,9 @@ public class InOutData extends BasePo {
* 出库数量
*/
private int outCount = 0;
/**
* 执行时间
*/
private int executeTime = 0;
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!