物料启用停用,分配取消分配更新ims
This commit is contained in:
parent
f7c81f9585
commit
5fc4bd1a6e
|
|
@ -79,29 +79,73 @@ public class MaterialToGyImsListener implements IBusinessListener {
|
|||
|
||||
|
||||
|
||||
} else if ("1012".equals(eventType)) {
|
||||
configParams = MyHelper.getConfigParams("gy-config", null);
|
||||
if (configParams.isEmpty()) {
|
||||
throw new BusinessException("高压的gymes接口缺少配置");
|
||||
}
|
||||
MaterialStockVO[] materialStockVOS = ArrayClassConvertUtil.convert(objs, MaterialStockVO.class);
|
||||
for (MaterialStockVO materialStockVO : materialStockVOS) {
|
||||
String pkOrg = materialStockVO.getPk_org();
|
||||
String[] orgItem = configParams.get("imsOrg").split(",");
|
||||
String orgCode = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg);
|
||||
// Integer num = MyHelper.checkIfOrg1(configParams, materialStockVO.getPk_materialstock(), "imsOrg");
|
||||
if (!contains(orgItem, orgCode)) {
|
||||
continue;
|
||||
}else {
|
||||
updateStatus(materialStockVO.getPk_material(),"D");
|
||||
}
|
||||
}
|
||||
}else if ("1004".equals(eventType) || "1069".equals(eventType) ) {
|
||||
MaterialVO[] useVOs = ArrayClassConvertUtil.convert(objs, MaterialVO.class);
|
||||
// 更新启用状态
|
||||
|
||||
// updateEnableStatus(useVOs);
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
public static boolean contains(String[] orgItem, String target) {
|
||||
// 数组为null时直接返回false
|
||||
if (orgItem == null) {
|
||||
return false;
|
||||
}
|
||||
// 数组转List,调用contains()
|
||||
List<String> list = Arrays.asList(orgItem);
|
||||
return list.contains(target);
|
||||
}
|
||||
|
||||
private void updateEnableStatus(MaterialVO[] useVOs) throws BusinessException {
|
||||
// Ö´Ðе¥ÌõSQL²åÈë
|
||||
BaseDAO gyimsDao = new BaseDAO("gyims");
|
||||
gyimsDao.setAddTimeStamp(false);
|
||||
List<String> code=new ArrayList<>();
|
||||
for (MaterialVO materialVO : useVOs) {
|
||||
Integer num = MyHelper.checkIfOrg(configParams,materialVO.getPk_material(), "imsOrg");
|
||||
if(num<=0){
|
||||
continue;
|
||||
}else{
|
||||
code.add(materialVO.getPk_material());
|
||||
}
|
||||
}
|
||||
if(code.isEmpty()){
|
||||
if (useVOs == null || useVOs.length == 0) {
|
||||
return;
|
||||
}
|
||||
Integer enableStatus = useVOs[0].getEnablestate();
|
||||
String sql="update BIPItemTab set enableStatus=" + enableStatus + " where pk_material='" + code + "'";
|
||||
gyimsDao.executeUpdate(sql);
|
||||
|
||||
BaseDAO gyimsDao = new BaseDAO("gyims");
|
||||
gyimsDao.setAddTimeStamp(false);
|
||||
|
||||
List<String> materialCodes = new ArrayList<>();
|
||||
for (MaterialVO materialVO : useVOs) {
|
||||
Integer orgCheckResult = MyHelper.checkIfOrg(configParams, materialVO.getPk_material(), "imsOrg");
|
||||
if (orgCheckResult != null && orgCheckResult > 0) {
|
||||
materialCodes.add(materialVO.getPk_material());
|
||||
}
|
||||
}
|
||||
|
||||
if (materialCodes.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
Integer enableStatus = useVOs[0].getEnablestate();
|
||||
if (enableStatus == null) {
|
||||
throw new BusinessException("启用状态不能为空");
|
||||
}
|
||||
|
||||
|
||||
String codeInClause = String.join("','", materialCodes);
|
||||
String sql = "update BIPItemTab set enablestate = " + enableStatus + " where pk_material in ('" + codeInClause + "')";
|
||||
|
||||
gyimsDao.executeUpdate(sql);
|
||||
}
|
||||
|
||||
private void pushIms(MaterialVO[] useVOs) throws BusinessException {
|
||||
|
|
@ -140,10 +184,10 @@ public class MaterialToGyImsListener implements IBusinessListener {
|
|||
StringBuilder values = new StringBuilder();
|
||||
for (int i = 0; i < remain.size(); i++) {
|
||||
Map<String, Object> data = remain.get(i);
|
||||
String selectSql="SELECT count(1) from BIPItemTab where pk_material=¡®" +data.get("pk_material")+ "'";
|
||||
String selectSql="SELECT count(1) from BIPItemTab where pk_material='" +data.get("pk_material")+ "'";
|
||||
int num = (int) gyimsDao.executeQuery(selectSql,new ColumnProcessor());
|
||||
if(num>0){
|
||||
updateStatus((String) data.get("pk_material"),"D");
|
||||
updateStatus((String) data.get("pk_material"),"C");
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
@ -174,6 +218,9 @@ public class MaterialToGyImsListener implements IBusinessListener {
|
|||
values.append(", ");
|
||||
}
|
||||
}
|
||||
if(values.isEmpty()){
|
||||
return;
|
||||
}
|
||||
|
||||
// ÍêÕû²åÈëSQL
|
||||
String updateSql = "INSERT INTO BIPItemTab (" + fieldNames.toString() + ") VALUES " + values.toString();
|
||||
|
|
|
|||
Loading…
Reference in New Issue