Commit a4f7b982 LN

增加最多点料次数设置。

1 个父辈 fb83d96a
......@@ -112,10 +112,44 @@ public class CodeResolve {
return defaultExpiresDay;
}
} catch (Exception ex) {
log.error(" getTargetValid [" + validDay + "] 出错:" + ex.toString());
log.error(" getTargetValid [" + pn + "_" + manufacture + "]["+validDay+"] 出错:" + ex.toString());
}
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,自动保存到数据库
*/
......@@ -311,10 +345,12 @@ public class CodeResolve {
if (MicronDataCache.GetReelType(barcode.getPlateSize(), barcode.getHeight()).equals(MicronDataCache.PCB)) {
log.info("重新设置PCB" + codeBeanFromRule.getCodeStr() + "标签数量和实时数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount());
barcode.setAmount(currentLabelAmount);
} else if (barcode.getXrayCount() > 0) {
log.info("重新设置" + codeBeanFromRule.getCodeStr() + "标签数量和实时数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount());
barcode.setAmount(currentLabelAmount);
} else {
}
// else if (barcode.getXrayCount() > 0) {
// log.info("重新设置" + codeBeanFromRule.getCodeStr() + "标签数量和实时数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount());
// barcode.setAmount(currentLabelAmount);
// }
else {
log.info("重新设置" + codeBeanFromRule.getCodeStr() + "标签数量为:" + currentLabelAmount + ",点料次数=" + barcode.getXrayCount());
}
needUpdate = true;
......
......@@ -131,7 +131,7 @@ public class DataCache {
for (String key :
oldconfigMap.keySet()) {
ExpConfig config = new ExpConfig(key, "", oldconfigMap.get(key));
ExpConfig config = new ExpConfig(key, "", oldconfigMap.get(key),0);
configs.add(config);
}
......
......@@ -22,6 +22,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.Map;
@Slf4j
......@@ -155,9 +158,10 @@ public class XrayDeviceController {
int oldQty = barcode.getAmount();
int qty = NumberUtil.parseInt(amountStr);
barcode.setAmount(qty);
barcode.setXrayCount(barcode.getXrayCount()+1);
barcodeManager.save(barcode);
log.info("点料信息:barcode:" + barcodeStr + ",旧数量:" + oldQty + ",新数量=" + qty + "");
log.info("点料信息:barcode:" + barcodeStr + ",旧数量:" + oldQty + ",新数量=" + qty + ",已点料次数="+barcode.getXrayCount());
return ResultBean.newOkResult(qty);
}
}
......@@ -165,4 +169,45 @@ public class XrayDeviceController {
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;
@NoArgsConstructor
public class ExpConfig implements Serializable {
/**
* PN开头
*/
private String key;
/**
* 供应商
*/
private String manufacture;
/**
* 过期天数
*/
private Integer value;
/**
* 最大点料次数,0或未设置时不限制
*/
private Integer maxCountTimes;
}
......@@ -40,11 +40,11 @@ public class MicronGroupController {
@ApiOperation("增加过期设置")
@RequestMapping("/addExpirationDateConfig")
@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)){
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));
if(configList==null){
......@@ -110,7 +110,7 @@ public class MicronGroupController {
@ApiOperation("修改过期设置")
@RequestMapping("/updateExpirationDateConfig")
@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)){
manufacture="";
} List<ExpConfig> configList=getConfigList();
......@@ -121,7 +121,7 @@ public class MicronGroupController {
break;
}
}
ExpConfig con=new ExpConfig(key,manufacture,value);
ExpConfig con=new ExpConfig(key,manufacture,value,maxCountTimes);
if(index>=0){
configList.set(index,con);
}else{
......
......@@ -327,14 +327,20 @@ public class MicronReportController {
List<MsgCountDto> list = messageManager.getParetoData(c);
// List<MessageDto> dtos=messageMapper.toDto(list);
Locale locale=request.getLocale();
List<MsgCountDto> returnList=new ArrayList();
for (int i = 0; i < list.size(); i++) {
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()));
} else {
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!