Commit 9bf711a7 sunke

入库验证接口重构

1 个父辈 206ff21c
...@@ -149,7 +149,7 @@ public class SmfApi { ...@@ -149,7 +149,7 @@ public class SmfApi {
/** /**
* 条码解析之后到API验证是否可以入库 * 条码解析之后到API验证是否可以入库
*/ */
public Barcode canPutInAfterResolve(Barcode barcode) throws ValidateException{ public Barcode canPutInAfterResolve(CodeValidateParam params, Barcode barcode) throws ValidateException{
if(barcode == null){ if(barcode == null){
return null; return null;
} }
...@@ -157,7 +157,7 @@ public class SmfApi { ...@@ -157,7 +157,7 @@ public class SmfApi {
for (ISmfApiListener apiListener : apiListenerList) { for (ISmfApiListener apiListener : apiListenerList) {
if(apiListener.isForThisApi(apiName)){ if(apiListener.isForThisApi(apiName)){
try{ try{
Barcode responseBarcode = apiListener.canPutIn(inCheckUrl, barcode); Barcode responseBarcode = apiListener.canPutInAfterResolve(inCheckUrl, params, barcode);
if(responseBarcode != null){ if(responseBarcode != null){
return responseBarcode; return responseBarcode;
} }
......
package com.neotel.smfcore.core.api.bean; package com.neotel.smfcore.core.api.bean;
import com.neotel.smfcore.core.storage.service.po.Storage;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
@Data @Data
@AllArgsConstructor @AllArgsConstructor
public class CodeValidateParam implements Serializable { public class CodeValidateParam implements Serializable {
public CodeValidateParam(String loginUser, String groupId, String storageId, String code, String token) {
this.loginUser = loginUser;
this.groupId = groupId;
this.storageId = storageId;
this.code = code;
this.token = token;
}
private String loginUser; private String loginUser;
private String groupId; private String groupId;
private String storageId; private String storageId;
private List<Storage> storageList = new ArrayList<>();
private String code; private String code;
private String token; private String token;
} }
...@@ -60,7 +60,7 @@ public abstract class BaseSmfApiListener implements ISmfApiListener { ...@@ -60,7 +60,7 @@ public abstract class BaseSmfApiListener implements ISmfApiListener {
} }
@Override @Override
public Barcode canPutIn(String inCheckUrl, Barcode barcode) throws ValidateException { public Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam params, Barcode barcode) throws ValidateException {
return null; return null;
} }
......
...@@ -92,7 +92,7 @@ public class DefaultSmfApiListener extends BaseSmfApiListener { ...@@ -92,7 +92,7 @@ public class DefaultSmfApiListener extends BaseSmfApiListener {
// } // }
@Override @Override
public Barcode canPutIn(String inCheckUrl, Barcode barcode) throws ValidateException { public Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam params, Barcode barcode) throws ValidateException {
Map<String,Object> paramMap = new HashMap<>(); Map<String,Object> paramMap = new HashMap<>();
paramMap.put("reelId",barcode.getBarcode()); paramMap.put("reelId",barcode.getBarcode());
paramMap.put("fullCode",barcode.getFullCode()); paramMap.put("fullCode",barcode.getFullCode());
......
...@@ -24,10 +24,11 @@ public interface ISmfApiListener { ...@@ -24,10 +24,11 @@ public interface ISmfApiListener {
*/ */
void outTaskStatusChange(String outNotifyUrl, DataLog task); void outTaskStatusChange(String outNotifyUrl, DataLog task);
/** /**
* 是否可入库验证 * 是否可入库验证
*/ */
Barcode canPutIn(String inCheckUrl, Barcode barcode) throws ValidateException; Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam params, Barcode barcode) throws ValidateException;
/** /**
* 入库扫条码后在解析之前进行验证 * 入库扫条码后在解析之前进行验证
......
...@@ -252,7 +252,7 @@ public class BaseDeviceHandler implements IDeviceHandler { ...@@ -252,7 +252,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
barcodeSave = codeResolve.resolveOneValideBarcode(codeStr,type); barcodeSave = codeResolve.resolveOneValideBarcode(codeStr,type);
} }
//从API验证 //从API验证
Barcode apiBarcode = smfApi.canPutInAfterResolve(barcodeSave); Barcode apiBarcode = smfApi.canPutInAfterResolve(params, barcodeSave);
if(apiBarcode != null){ if(apiBarcode != null){
barcodeSave = apiBarcode; barcodeSave = apiBarcode;
} }
......
...@@ -103,7 +103,7 @@ public class NLPShelfHandler extends BaseDeviceHandler { ...@@ -103,7 +103,7 @@ public class NLPShelfHandler extends BaseDeviceHandler {
} }
//从API验证 //从API验证
Barcode verResult = smfApi.canPutInAfterResolve(barcodeSave); Barcode verResult = smfApi.canPutInAfterResolve(params, barcodeSave);
if (verResult != null) { if (verResult != null) {
barcodeSave = verResult; barcodeSave = verResult;
......
...@@ -361,7 +361,7 @@ public class NLShelfHandler extends BaseDeviceHandler { ...@@ -361,7 +361,7 @@ public class NLShelfHandler extends BaseDeviceHandler {
String barcodeStr = "=1x1=" + code; String barcodeStr = "=1x1=" + code;
barcode = codeResolve.resolveOneValideBarcode(barcodeStr); barcode = codeResolve.resolveOneValideBarcode(barcodeStr);
} }
barcode = smfApi.canPutInAfterResolve(barcode); barcode = smfApi.canPutInAfterResolve(params, barcode);
if(barcode == null){ if(barcode == null){
throw new ValidateException("smfcore.error.barcode.invalid", "{0}不是有效的条码",new String[]{code}); throw new ValidateException("smfcore.error.barcode.invalid", "{0}不是有效的条码",new String[]{code});
} }
......
...@@ -115,7 +115,7 @@ public class DeviceController { ...@@ -115,7 +115,7 @@ public class DeviceController {
barcodeSave = codeResolve.resolveOneValideBarcode(params.getCode()); barcodeSave = codeResolve.resolveOneValideBarcode(params.getCode());
} }
//从API验证 //从API验证
Barcode barcodeFromApi = smfApi.canPutInAfterResolve(barcodeSave); Barcode barcodeFromApi = smfApi.canPutInAfterResolve(params, barcodeSave);
if (barcodeFromApi != null) { if (barcodeFromApi != null) {
barcodeSave = barcodeFromApi; barcodeSave = barcodeFromApi;
...@@ -178,6 +178,7 @@ public class DeviceController { ...@@ -178,6 +178,7 @@ public class DeviceController {
} else { } else {
try { try {
CodeValidateParam params = new CodeValidateParam("","","",code,""); CodeValidateParam params = new CodeValidateParam("","","",code,"");
params.setStorageList(storageList);
Barcode barcode = resolveBarcodeFromApi(params); Barcode barcode = resolveBarcodeFromApi(params);
if(barcode==null) { if(barcode==null) {
throw new ValidateException("smfcore.error.barcode.invalid", "{0}不是有效的条码", new String[]{code}); throw new ValidateException("smfcore.error.barcode.invalid", "{0}不是有效的条码", new String[]{code});
......
...@@ -21,6 +21,7 @@ import com.neotel.smfcore.core.kanban.rest.bean.mapstruct.BoxTaskMapper; ...@@ -21,6 +21,7 @@ import com.neotel.smfcore.core.kanban.rest.bean.mapstruct.BoxTaskMapper;
import com.neotel.smfcore.core.kanban.rest.bean.query.BoxTaskQueryCriter; import com.neotel.smfcore.core.kanban.rest.bean.query.BoxTaskQueryCriter;
import com.neotel.smfcore.core.message.util.DeviceMessageUtil; import com.neotel.smfcore.core.message.util.DeviceMessageUtil;
import com.neotel.smfcore.core.msd.bean.MSDSettiings; import com.neotel.smfcore.core.msd.bean.MSDSettiings;
import com.neotel.smfcore.core.order.enums.LITEORDER_STATUS;
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.Storage; import com.neotel.smfcore.core.storage.service.po.Storage;
import com.neotel.smfcore.core.storage.service.po.StoragePos; import com.neotel.smfcore.core.storage.service.po.StoragePos;
...@@ -75,6 +76,7 @@ public class HumitureController { ...@@ -75,6 +76,7 @@ public class HumitureController {
Float maxHumidity = msdSettiings.getMaxHumidity(); Float maxHumidity = msdSettiings.getMaxHumidity();
Query query = QueryHelp.getQuery(criteria); Query query = QueryHelp.getQuery(criteria);
query.with(Sort.by(Sort.Direction.ASC, "id")); query.with(Sort.by(Sort.Direction.ASC, "id"));
query.addCriteria(Criteria.where("temperature").gt(0));
PageData<Humiture> humitureList = humitureManager.findByPage(query,pageable); PageData<Humiture> humitureList = humitureManager.findByPage(query,pageable);
HumitureDto restultDto = new HumitureDto(); HumitureDto restultDto = new HumitureDto();
restultDto.setMaxHumidity(maxHumidity); restultDto.setMaxHumidity(maxHumidity);
......
...@@ -169,10 +169,15 @@ public class SpBoxHandler extends BaseDeviceHandler { ...@@ -169,10 +169,15 @@ public class SpBoxHandler extends BaseDeviceHandler {
protected StatusBean putInBoxSp(Storage storage, StatusBean statusBean) { protected StatusBean putInBoxSp(Storage storage, StatusBean statusBean) {
try { try {
String codeStr = statusBean.getCode(); String codeStr = statusBean.getCode();
CodeValidateParam params = new CodeValidateParam("",storage.getGroupId(),storage.getId(),codeStr,"");
Barcode barcode = smfApi.canPutInBeforeResolve(params);
if(barcode == null){
barcode = codeResolve.resolveOneValideBarcode(codeStr);
}
Barcode barcodeSave = codeResolve.resolveOneValideBarcode(codeStr); Barcode barcodeSave = codeResolve.resolveOneValideBarcode(codeStr);
//从API验证 //从API验证
barcodeSave = smfApi.canPutInAfterResolve(barcodeSave); barcodeSave = smfApi.canPutInAfterResolve(params, barcodeSave);
if (barcodeSave == null) { if (barcodeSave == null) {
barcodeSave = codeResolve.resolveOneValideBarcode(codeStr); barcodeSave = codeResolve.resolveOneValideBarcode(codeStr);
} }
......
...@@ -18,6 +18,7 @@ import com.neotel.smfcore.core.system.rest.bean.query.TaskQueryCondition; ...@@ -18,6 +18,7 @@ import com.neotel.smfcore.core.system.rest.bean.query.TaskQueryCondition;
import com.neotel.smfcore.core.system.service.manager.IDataLogManager; import com.neotel.smfcore.core.system.service.manager.IDataLogManager;
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.TaskService; import com.neotel.smfcore.core.system.util.TaskService;
import com.neotel.smfcore.security.annotation.AnonymousAccess;
import com.neotel.smfcore.security.annotation.AnonymousDeleteMapping; import com.neotel.smfcore.security.annotation.AnonymousDeleteMapping;
import com.neotel.smfcore.security.annotation.AnonymousGetMapping; import com.neotel.smfcore.security.annotation.AnonymousGetMapping;
import com.neotel.smfcore.security.service.manager.IUserManager; import com.neotel.smfcore.security.service.manager.IUserManager;
...@@ -92,6 +93,7 @@ public class TaskController { ...@@ -92,6 +93,7 @@ public class TaskController {
@ApiOperation("查询出入库日志") @ApiOperation("查询出入库日志")
@GetMapping("/history") @GetMapping("/history")
@PreAuthorize("@el.check('taskLog')") @PreAuthorize("@el.check('taskLog')")
@AnonymousAccess
public PageData<TaskDto> query(TaskQueryCondition criteria, Pageable pageable) { public PageData<TaskDto> query(TaskQueryCondition criteria, Pageable pageable) {
Query query = getQuery(criteria); Query query = getQuery(criteria);
PageData<DataLog> taskList = dataLogManager.findByPage(query, pageable); PageData<DataLog> taskList = dataLogManager.findByPage(query, pageable);
......
...@@ -4,6 +4,7 @@ import com.google.common.collect.Lists; ...@@ -4,6 +4,7 @@ import com.google.common.collect.Lists;
import com.neotel.smfcore.common.exception.ValidateException; import com.neotel.smfcore.common.exception.ValidateException;
import com.neotel.smfcore.common.utils.HttpHelper; import com.neotel.smfcore.common.utils.HttpHelper;
import com.neotel.smfcore.common.utils.JsonUtil; import com.neotel.smfcore.common.utils.JsonUtil;
import com.neotel.smfcore.core.api.bean.CodeValidateParam;
import com.neotel.smfcore.core.api.listener.BaseSmfApiListener; import com.neotel.smfcore.core.api.listener.BaseSmfApiListener;
import com.neotel.smfcore.core.barcode.service.po.Barcode; import com.neotel.smfcore.core.barcode.service.po.Barcode;
import com.neotel.smfcore.core.order.service.manager.ILiteOrderItemManager; import com.neotel.smfcore.core.order.service.manager.ILiteOrderItemManager;
...@@ -67,7 +68,7 @@ public class AdvantechApi extends BaseSmfApiListener { ...@@ -67,7 +68,7 @@ public class AdvantechApi extends BaseSmfApiListener {
* CHECK:OK 可以存料,FAIL 不可存料" * CHECK:OK 可以存料,FAIL 不可存料"
*/ */
@Override @Override
public Barcode canPutIn(String inCheckUrl, Barcode barcode) throws ValidateException { public Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam params, Barcode barcode) throws ValidateException {
Map<String,Object> paramMap = new HashMap<>(); Map<String,Object> paramMap = new HashMap<>();
paramMap.put("webServiceType","AKMU1"); paramMap.put("webServiceType","AKMU1");
String paramStr = "<root><METHOD ID='MMS_CL.LTCheckReel001'/><REELS>"+ barcode.getBarcode()+"</REELS></root>"; String paramStr = "<root><METHOD ID='MMS_CL.LTCheckReel001'/><REELS>"+ barcode.getBarcode()+"</REELS></root>";
......
...@@ -31,7 +31,7 @@ public class HellaApiHandler extends BaseSmfApiListener { ...@@ -31,7 +31,7 @@ public class HellaApiHandler extends BaseSmfApiListener {
} }
@Override @Override
public Barcode canPutIn(String inCheckUrl, Barcode barcode) throws ValidateException { public Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam params, Barcode barcode) throws ValidateException {
if (!HellaTcpClient.isEnable()) { if (!HellaTcpClient.isEnable()) {
return null; return null;
} }
......
...@@ -244,7 +244,7 @@ public class NeotelApi extends BaseSmfApiListener { ...@@ -244,7 +244,7 @@ public class NeotelApi extends BaseSmfApiListener {
* @throws ValidateException * @throws ValidateException
*/ */
@Override @Override
public Barcode canPutIn(String inCheckUrl, Barcode barcode) throws ValidateException { public Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam params, Barcode barcode) throws ValidateException {
log.info("{}类型为:{}", barcode.getBarcode(), barcode.getType()); log.info("{}类型为:{}", barcode.getBarcode(), barcode.getType());
if (COMPONENT_TYPE.COMPONENT != barcode.getType()) { if (COMPONENT_TYPE.COMPONENT != barcode.getType()) {
return null; return null;
......
...@@ -7,6 +7,7 @@ import com.google.common.collect.Maps; ...@@ -7,6 +7,7 @@ import com.google.common.collect.Maps;
import com.neotel.smfcore.common.exception.ValidateException; import com.neotel.smfcore.common.exception.ValidateException;
import com.neotel.smfcore.common.utils.HttpHelper; import com.neotel.smfcore.common.utils.HttpHelper;
import com.neotel.smfcore.common.utils.StorageConstants; import com.neotel.smfcore.common.utils.StorageConstants;
import com.neotel.smfcore.core.api.bean.CodeValidateParam;
import com.neotel.smfcore.core.api.listener.BaseSmfApiListener; import com.neotel.smfcore.core.api.listener.BaseSmfApiListener;
import com.neotel.smfcore.core.barcode.service.po.Barcode; import com.neotel.smfcore.core.barcode.service.po.Barcode;
import com.neotel.smfcore.core.device.enums.OP; import com.neotel.smfcore.core.device.enums.OP;
...@@ -374,7 +375,7 @@ public class PanaApiController extends BaseSmfApiListener { ...@@ -374,7 +375,7 @@ public class PanaApiController extends BaseSmfApiListener {
@Override @Override
public Barcode canPutIn(String incheckUrl, Barcode barcode) throws ValidateException { public Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam codeParams, Barcode barcode) throws ValidateException {
String requestReelUrl = getRequestReelUrl(); String requestReelUrl = getRequestReelUrl();
try { try {
if(!Strings.isNullOrEmpty(requestReelUrl)){ if(!Strings.isNullOrEmpty(requestReelUrl)){
......
...@@ -5,6 +5,7 @@ import com.neotel.smfcore.common.utils.DateUtil; ...@@ -5,6 +5,7 @@ import com.neotel.smfcore.common.utils.DateUtil;
import com.neotel.smfcore.common.utils.HttpHelper; import com.neotel.smfcore.common.utils.HttpHelper;
import com.neotel.smfcore.common.utils.JsonUtil; import com.neotel.smfcore.common.utils.JsonUtil;
import com.neotel.smfcore.core.api.bean.ApiResult; import com.neotel.smfcore.core.api.bean.ApiResult;
import com.neotel.smfcore.core.api.bean.CodeValidateParam;
import com.neotel.smfcore.core.api.listener.BaseSmfApiListener; import com.neotel.smfcore.core.api.listener.BaseSmfApiListener;
import com.neotel.smfcore.core.barcode.service.manager.IComponentManager; import com.neotel.smfcore.core.barcode.service.manager.IComponentManager;
import com.neotel.smfcore.core.barcode.service.po.Barcode; import com.neotel.smfcore.core.barcode.service.po.Barcode;
...@@ -138,7 +139,7 @@ public class TianTongApi extends BaseSmfApiListener { ...@@ -138,7 +139,7 @@ public class TianTongApi extends BaseSmfApiListener {
* @throws ValidateException * @throws ValidateException
*/ */
@Override @Override
public Barcode canPutIn(String inCheckUrl, Barcode barcode) throws ValidateException { public Barcode canPutInAfterResolve(String inCheckUrl, CodeValidateParam params, Barcode barcode) throws ValidateException {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("RID", barcode.getBarcode()); paramMap.put("RID", barcode.getBarcode());
paramMap.put("MTRL_ID", barcode.getPartNumber()); paramMap.put("MTRL_ID", barcode.getPartNumber());
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!