Commit 06560fec zshaohui

1.增加单个条码规则测试

2.客户端取消出库任务的时候,如果不是等待中或者正在执行中的,改成已关闭状态
1 个父辈 1d403a0d
...@@ -190,7 +190,7 @@ public class BarcodeController { ...@@ -190,7 +190,7 @@ public class BarcodeController {
@ApiOperation("根据条码信息获取条码规则") @ApiOperation("根据条码信息获取条码规则")
@PostMapping(value = "getBarcodeRule") @PostMapping(value = "getBarcodeRule")
@AnonymousAccess //@AnonymousAccess
public ResultBean getBarcodeRule(@RequestBody Map<String, String> paramMap) { public ResultBean getBarcodeRule(@RequestBody Map<String, String> paramMap) {
String codeStr = paramMap.get("codeStr"); String codeStr = paramMap.get("codeStr");
if(ObjectUtil.isEmpty(codeStr)){ if(ObjectUtil.isEmpty(codeStr)){
...@@ -204,7 +204,7 @@ public class BarcodeController { ...@@ -204,7 +204,7 @@ public class BarcodeController {
@ApiOperation("获取条码内容") @ApiOperation("获取条码内容")
@PostMapping("/getBarCodeInfo") @PostMapping("/getBarCodeInfo")
@AnonymousAccess //@AnonymousAccess
public ResultBean getBarCodeInfo(@RequestBody Map<String, String> paramMap) { public ResultBean getBarCodeInfo(@RequestBody Map<String, String> paramMap) {
//获取条码内容 //获取条码内容
String codeStr = paramMap.get("code"); String codeStr = paramMap.get("code");
...@@ -225,6 +225,29 @@ public class BarcodeController { ...@@ -225,6 +225,29 @@ public class BarcodeController {
return ResultBean.newErrorResult(1, "smfcore.error.barcode.invalid", "未找到有效条码"); return ResultBean.newErrorResult(1, "smfcore.error.barcode.invalid", "未找到有效条码");
} }
@ApiOperation("获取条码内容(传入条码规则)")
@PostMapping("/getBarCodeInfoByRule")
@AnonymousAccess
public ResultBean getBarCodeInfoByRule(@RequestBody Map<String, String> paramMap) {
//获取条码内容
String codeStr = paramMap.get("code");
if(ObjectUtil.isEmpty(codeStr)){
codeStr="";
}
//传入的条码规则
String ruleStr = paramMap.get("rule");
BarcodeRule barcodeRule = BarcodeRule.newRule(ruleStr);
if (barcodeRule.isValidRule()){
CodeBean codeBean = barcodeRule.toCodeBean(codeStr);
if (codeBean.getBarcode() != null) {
return ResultBean.newOkResult(codeBean.getBarcode());
}
} else {
return ResultBean.newErrorResult(1, "smfcore.error.barcode.noRules", "解析规则未定义");
}
return ResultBean.newErrorResult(1, "smfcore.error.barcode.invalid", "未找到有效条码");
}
protected String handleBarcode(String fileURL) throws Exception { protected String handleBarcode(String fileURL) throws Exception {
log.info("开始读取文件:" + fileURL); log.info("开始读取文件:" + fileURL);
......
...@@ -31,6 +31,7 @@ import com.neotel.smfcore.core.storage.service.manager.IStorageManager; ...@@ -31,6 +31,7 @@ import com.neotel.smfcore.core.storage.service.manager.IStorageManager;
import com.neotel.smfcore.core.storage.service.manager.IStoragePosManager; import com.neotel.smfcore.core.storage.service.manager.IStoragePosManager;
import com.neotel.smfcore.core.storage.service.po.StoragePos; import com.neotel.smfcore.core.storage.service.po.StoragePos;
import com.neotel.smfcore.core.system.service.dao.IAlarmInfoDao; import com.neotel.smfcore.core.system.service.dao.IAlarmInfoDao;
import com.neotel.smfcore.core.system.service.manager.IDataLogManager;
import com.neotel.smfcore.core.system.service.po.AlarmInfo; import com.neotel.smfcore.core.system.service.po.AlarmInfo;
import com.neotel.smfcore.core.system.service.po.DataLog; import com.neotel.smfcore.core.system.service.po.DataLog;
import com.neotel.smfcore.core.system.util.DevicesStatusUtil; import com.neotel.smfcore.core.system.util.DevicesStatusUtil;
...@@ -82,6 +83,9 @@ public class DeviceController { ...@@ -82,6 +83,9 @@ public class DeviceController {
@Autowired @Autowired
private IBarcodeManager barcodeManager; private IBarcodeManager barcodeManager;
@Autowired
private IDataLogManager dataLogManager;
/** /**
* 权限验证API列表 * 权限验证API列表
*/ */
...@@ -423,9 +427,15 @@ public class DeviceController { ...@@ -423,9 +427,15 @@ public class DeviceController {
boolean cancelResult = taskService.cancelTask(task.getId()); boolean cancelResult = taskService.cancelTask(task.getId());
log.info("客户端取消["+codeStr+"]的未执行完成的出库任务结果:" + cancelResult); log.info("客户端取消["+codeStr+"]的未执行完成的出库任务结果:" + cancelResult);
return ResultBean.newOkResult(cancelResult); return ResultBean.newOkResult(cancelResult);
}else{ } else {
if (!task.isFinished() && !task.isCancel()) {
return ResultBean.newErrorResult(2005, "smfcore.cancelOutTask.taskHasEnd","客户端取消入库任务[{0}]失败:任务已结束或已取消", new String[]{codeStr }); log.info(task.getBarcode()+",库位号为:"+task.getPosName()+",状态为:"+task.getStatus()+"改成关闭状态");
task.setClosed(true);
dataLogManager.save(task);
taskService.removeFinishedTask(task);
} else {
return ResultBean.newErrorResult(2005, "smfcore.cancelOutTask.taskHasEnd", "客户端取消入库任务[{0}]失败:任务已结束或已取消", new String[]{codeStr});
}
} }
// else{ // else{
// //禁用库位 // //禁用库位
......
...@@ -63,6 +63,7 @@ public class DataLogManagerImpl implements IDataLogManager { ...@@ -63,6 +63,7 @@ public class DataLogManagerImpl implements IDataLogManager {
Calendar calendar = Calendar.getInstance(); Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.HOUR_OF_DAY,-48); calendar.add(Calendar.HOUR_OF_DAY,-48);
c.and("updateDate").gte(calendar.getTime()); c.and("updateDate").gte(calendar.getTime());
c.and("closed").is(false);
Query query = Query.query(c); Query query = Query.query(c);
List<DataLog> unFinishedTasks = findByQuery(query); List<DataLog> unFinishedTasks = findByQuery(query);
if(unFinishedTasks == null){ if(unFinishedTasks == null){
......
...@@ -249,6 +249,10 @@ public class DataLog extends BasePo implements Serializable ,Comparable<DataLog> ...@@ -249,6 +249,10 @@ public class DataLog extends BasePo implements Serializable ,Comparable<DataLog>
private String line = ""; private String line = "";
//是否关闭
private boolean closed = false;
public String getBarcode() { public String getBarcode() {
if(barcode == null){ if(barcode == null){
return ""; return "";
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!