Commit a4f7b982 LN

增加最多点料次数设置。

1 个父辈 fb83d96a
...@@ -112,10 +112,44 @@ public class CodeResolve { ...@@ -112,10 +112,44 @@ public class CodeResolve {
return defaultExpiresDay; return defaultExpiresDay;
} }
} catch (Exception ex) { } catch (Exception ex) {
log.error(" getTargetValid [" + validDay + "] 出错:" + ex.toString()); log.error(" getTargetValid [" + pn + "_" + manufacture + "]["+validDay+"] 出错:" + ex.toString());
} }
return 0; return 0;
} }
public int getMaxCountTimes(String pn,String manufacture ) {
int count = 0;
try {
if (manufacture == null) {
manufacture = "";
}
if (configList == null) {
return count;
}
for (ExpConfig conf :
configList) {
if (pn.startsWith(conf.getKey()) && conf.getManufacture().equals(manufacture)) {
count = conf.getMaxCountTimes();
break;
}
}
if (count <= 0) {
for (ExpConfig conf :
configList) {
if (pn.startsWith(conf.getKey()) && ObjectUtil.isEmpty(conf.getManufacture())) {
count = conf.getMaxCountTimes();
break;
}
}
}
} catch (Exception ex) {
log.error(" getMaxCountTimes [" + pn + "_" + manufacture + "] 出错:" + ex.toString());
}
return count;
}
/** /**
* 解析条码为单个 Barcode,自动保存到数据库 * 解析条码为单个 Barcode,自动保存到数据库
*/ */
...@@ -311,10 +345,12 @@ public class CodeResolve { ...@@ -311,10 +345,12 @@ public class CodeResolve {
if (MicronDataCache.GetReelType(barcode.getPlateSize(), barcode.getHeight()).equals(MicronDataCache.PCB)) { if (MicronDataCache.GetReelType(barcode.getPlateSize(), barcode.getHeight()).equals(MicronDataCache.PCB)) {
log.info("重新设置PCB" + codeBeanFromRule.getCodeStr() + "标签数量和实时数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount()); log.info("重新设置PCB" + codeBeanFromRule.getCodeStr() + "标签数量和实时数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount());
barcode.setAmount(currentLabelAmount); barcode.setAmount(currentLabelAmount);
} else if (barcode.getXrayCount() > 0) { }
log.info("重新设置" + codeBeanFromRule.getCodeStr() + "标签数量和实时数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount()); // else if (barcode.getXrayCount() > 0) {
barcode.setAmount(currentLabelAmount); // log.info("重新设置" + codeBeanFromRule.getCodeStr() + "标签数量和实时数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount());
} else { // barcode.setAmount(currentLabelAmount);
// }
else {
log.info("重新设置" + codeBeanFromRule.getCodeStr() + "标签数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount()); log.info("重新设置" + codeBeanFromRule.getCodeStr() + "标签数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount());
} }
needUpdate = true; needUpdate = true;
......
...@@ -131,7 +131,7 @@ public class DataCache { ...@@ -131,7 +131,7 @@ public class DataCache {
for (String key : for (String key :
oldconfigMap.keySet()) { oldconfigMap.keySet()) {
ExpConfig config = new ExpConfig(key, "", oldconfigMap.get(key)); ExpConfig config = new ExpConfig(key, "", oldconfigMap.get(key),0);
configs.add(config); configs.add(config);
} }
......
...@@ -22,6 +22,9 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -22,6 +22,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.Map; import java.util.Map;
@Slf4j @Slf4j
...@@ -155,9 +158,10 @@ public class XrayDeviceController { ...@@ -155,9 +158,10 @@ public class XrayDeviceController {
int oldQty = barcode.getAmount(); int oldQty = barcode.getAmount();
int qty = NumberUtil.parseInt(amountStr); int qty = NumberUtil.parseInt(amountStr);
barcode.setAmount(qty); barcode.setAmount(qty);
barcode.setXrayCount(barcode.getXrayCount()+1);
barcodeManager.save(barcode); barcodeManager.save(barcode);
log.info("点料信息:barcode:" + barcodeStr + ",旧数量:" + oldQty + ",新数量=" + qty + ""); log.info("点料信息:barcode:" + barcodeStr + ",旧数量:" + oldQty + ",新数量=" + qty + ",已点料次数="+barcode.getXrayCount());
return ResultBean.newOkResult(qty); return ResultBean.newOkResult(qty);
} }
} }
...@@ -165,4 +169,45 @@ public class XrayDeviceController { ...@@ -165,4 +169,45 @@ public class XrayDeviceController {
return ResultBean.newErrorResult(-1, "smfcore.valueNotExist", "{0}[{1}]不存在", new String[]{"barcode", barcodeStr}); return ResultBean.newErrorResult(-1, "smfcore.valueNotExist", "{0}[{1}]不存在", new String[]{"barcode", barcodeStr});
} }
@ApiOperation("1584:获取最多点料次数")
@RequestMapping(value = "getMaxCountTimes")
@AnonymousAccess
public ResultBean getMaxCountTimes(@RequestBody Map<String,String> paramMaps) {
String barcodeStr = paramMaps.get("barcode");
String fullBarcode = paramMaps.get("fullCode");
boolean needResolve = false;
String offlineMode = paramMaps.get("offlineMode");
if (ObjectUtil.isNotEmpty(offlineMode) && offlineMode.equalsIgnoreCase("true")) {
needResolve = true;
}
if (StringUtils.isNotBlank(barcodeStr)) {
Barcode barcode = barcodeManager.findByBarcode(barcodeStr);
if (needResolve && barcode == null && ObjectUtil.isNotEmpty(fullBarcode)) {
try {
//解析条码
barcode = codeResolve.resolveOneValideBarcode(fullBarcode);
} catch (ValidateException ex) {
log.error(ex.getDefaultMsg());
}
}
if (barcode != null) {
int maxCount = codeResolve.getMaxCountTimes(barcode.getPartNumber(), barcode.getProvider());
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String proDate = barcode.getProduceDate() == null ? "" : dateFormat.format(barcode.getProduceDate());
String expireDate = barcode.getExpireDate() == null ? "" : dateFormat.format(barcode.getExpireDate());
Map<String, Object> resMap = new HashMap<>();
resMap.put("maxCountTimes", maxCount);
resMap.put("produceDate", proDate);
resMap.put("xrayCount",barcode.getXrayCount());
log.info("getMaxCountTimes点料信息:barcode:" + barcode.getBarcode() + ",maxCount:" + maxCount + ",proDate=" + proDate + ",已点料次数="+barcode.getXrayCount());
return ResultBean.newOkResult(resMap);
}
}
return ResultBean.newErrorResult(-1, "smfcore.valueNotExist", "{0}[{1}]不存在", new String[]{"barcode", barcodeStr});
}
} }
...@@ -13,9 +13,22 @@ import java.io.Serializable; ...@@ -13,9 +13,22 @@ import java.io.Serializable;
@NoArgsConstructor @NoArgsConstructor
public class ExpConfig implements Serializable { public class ExpConfig implements Serializable {
/**
* PN开头
*/
private String key; private String key;
/**
* 供应商
*/
private String manufacture; private String manufacture;
/**
* 过期天数
*/
private Integer value; private Integer value;
/**
* 最大点料次数,0或未设置时不限制
*/
private Integer maxCountTimes;
} }
...@@ -40,11 +40,11 @@ public class MicronGroupController { ...@@ -40,11 +40,11 @@ public class MicronGroupController {
@ApiOperation("增加过期设置") @ApiOperation("增加过期设置")
@RequestMapping("/addExpirationDateConfig") @RequestMapping("/addExpirationDateConfig")
@AnonymousAccess @AnonymousAccess
public ResultBean addExpirationDateConfig(String key,String manufacture, int value) { public ResultBean addExpirationDateConfig(String key,String manufacture, int value,int maxCountTimes) {
if(ObjectUtil.isEmpty(manufacture)){ if(ObjectUtil.isEmpty(manufacture)){
manufacture=""; manufacture="";
} }
ExpConfig config=new ExpConfig(key,manufacture,value); ExpConfig config=new ExpConfig(key,manufacture,value,maxCountTimes);
List<ExpConfig> configList=dataCache.getCache((Constants.CACHE_ExpirationDateConfig_N)); List<ExpConfig> configList=dataCache.getCache((Constants.CACHE_ExpirationDateConfig_N));
if(configList==null){ if(configList==null){
...@@ -110,7 +110,7 @@ public class MicronGroupController { ...@@ -110,7 +110,7 @@ public class MicronGroupController {
@ApiOperation("修改过期设置") @ApiOperation("修改过期设置")
@RequestMapping("/updateExpirationDateConfig") @RequestMapping("/updateExpirationDateConfig")
@AnonymousAccess @AnonymousAccess
public ResultBean updateExpirationDateConfig(String key,String manufacture, int value) { public ResultBean updateExpirationDateConfig(String key,String manufacture, int value,int maxCountTimes) {
if(ObjectUtil.isEmpty(manufacture)){ if(ObjectUtil.isEmpty(manufacture)){
manufacture=""; manufacture="";
} List<ExpConfig> configList=getConfigList(); } List<ExpConfig> configList=getConfigList();
...@@ -121,7 +121,7 @@ public class MicronGroupController { ...@@ -121,7 +121,7 @@ public class MicronGroupController {
break; break;
} }
} }
ExpConfig con=new ExpConfig(key,manufacture,value); ExpConfig con=new ExpConfig(key,manufacture,value,maxCountTimes);
if(index>=0){ if(index>=0){
configList.set(index,con); configList.set(index,con);
}else{ }else{
......
...@@ -327,14 +327,20 @@ public class MicronReportController { ...@@ -327,14 +327,20 @@ public class MicronReportController {
List<MsgCountDto> list = messageManager.getParetoData(c); List<MsgCountDto> list = messageManager.getParetoData(c);
// List<MessageDto> dtos=messageMapper.toDto(list); // List<MessageDto> dtos=messageMapper.toDto(list);
Locale locale=request.getLocale(); Locale locale=request.getLocale();
List<MsgCountDto> returnList=new ArrayList();
for (int i = 0; i < list.size(); i++) { for (int i = 0; i < list.size(); i++) {
if (ObjectUtil.isNotEmpty(list.get(i).getMsgCode())) { if (ObjectUtil.isNotEmpty(list.get(i).getMsgCode())) {
list.get(i).setMsg(MessageUtils.getText(list.get(i).getMsgCode(), list.get(i).getMsgParams(), locale, list.get(i).getId())); list.get(i).setMsg(MessageUtils.getText(list.get(i).getMsgCode(), list.get(i).getMsgParams(), locale, list.get(i).getId()));
} else { } else {
list.get(i).setMsg(list.get(i).getId()); list.get(i).setMsg(list.get(i).getId());
} }
if(ObjectUtil.isNotEmpty(list.get(i))){
returnList.add(list.get(i));
}
} }
return list;
return returnList;
} }
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!