43927 装箱防错逻辑更新及优化

master
jun 6 months ago
parent 1010785c42
commit a2a750489f

@ -22,6 +22,9 @@ public interface IMesBoxingErrorProofingService {
@ApiOperation(value = "查询包装明细")
ListPager<MesPackageDetail> queryMesPackageDetailByPager(MesPackage mesPackage, Pager pager);
@ApiOperation(value = "查询操作人是否记忆")
Integer getIsMemory(String organizeCode, String userName);
@ApiOperation(value = "扫描")
MesPackage doScan(MesPackageDetail mesPackageDetail);

@ -49,6 +49,22 @@ public class MesBoxingErrorProofingController {
}
}
@GetMapping("/isMemory/get")
@ApiOperation(value = "查询操作人是否记忆")
public ResultBean getIsMemory(String organizeCode,String userName) {
try {
ValidatorBean.checkNotNull(organizeCode, "工厂代码不能为空");
ValidatorBean.checkNotNull(userName, "操作人不能为空");
return ResultBean.success("查询成功").setResultObject(mesBoxingErrorProofingService.getIsMemory(organizeCode, userName));
} catch (ImppBusiException imppException) {
return ResultBean.fail(imppException);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@GetMapping("/do-scan")
@ApiOperation(value = "扫描")
public ResultBean doScan(MesPackageDetail mesPackageDetail) {

@ -6,10 +6,12 @@ import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProduceSnExtService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionRecordService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
import cn.estsh.i3plus.ext.mes.pcn.pojo.constant.MesCommonConstant;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.CheckTool;
import cn.estsh.i3plus.platform.common.tool.MathOperation;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
@ -20,6 +22,7 @@ import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.mes.bean.*;
import cn.estsh.i3plus.pojo.mes.repository.*;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.estsh.impp.framework.boot.util.ImppRedis;
import cn.estsh.impp.framework.boot.util.ResultBean;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -27,6 +30,7 @@ import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
@ -41,6 +45,9 @@ import java.util.stream.Collectors;
@Slf4j
public class MesBoxingErrorProofingService implements IMesBoxingErrorProofingService {
@Resource(name = CommonConstWords.IMPP_REDIS_MES_PCN)
private ImppRedis redisMesPcn;
@Autowired
private MesPackageRepository mesPackageRDao;
@ -82,6 +89,16 @@ public class MesBoxingErrorProofingService implements IMesBoxingErrorProofingSer
}
@Override
public Integer getIsMemory(String organizeCode, String userName) {
Object object = redisMesPcn.getObject(new StringJoiner(MesPcnExtConstWords.COLON).add(organizeCode).add(this.getClass().getSimpleName()).add(userName).toString());
if (Objects.isNull(object)) {
return CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue();
} else {
return (Integer) object;
}
}
@Override
public MesPackage doScan(MesPackageDetail mesPackageDetail) {
//获取包装定义
MesPackingDefine packingDefine = getMesPackingDefine(mesPackageDetail);
@ -141,6 +158,8 @@ public class MesBoxingErrorProofingService implements IMesBoxingErrorProofingSer
//更新包装表
updateMesPackage(mesPackage, mesPackageDetail.getModifyUser(), 1d, false);
}
//缓存是否记忆开关
saveRedis(new StringJoiner(MesPcnExtConstWords.COLON).add(mesPackageDetail.getOrganizeCode()).add(this.getClass().getSimpleName()).add(mesPackageDetail.getModifyUser()).toString(),mesPackageDetail.getIsMemory());
mesPackage.setMesPackageDetail(saveMesPackageDetail);
return mesPackage;
}
@ -511,4 +530,12 @@ public class MesBoxingErrorProofingService implements IMesBoxingErrorProofingSer
}
return packingDefine;
}
private void saveRedis(String isMemoryKey,Integer isMemory) {
Object object = redisMesPcn.getObject(isMemoryKey);
if(Objects.isNull(object) || !Objects.equals(isMemory, object)){
redisMesPcn.putObject(isMemoryKey, isMemory,-1);
}
}
}

Loading…
Cancel
Save