物料页签修改后推送高压MES
This commit is contained in:
parent
3b92d6f854
commit
6e114fe2d8
|
|
@ -6,22 +6,32 @@ import com.alibaba.fastjson.JSONObject;
|
|||
import com.alibaba.fastjson.serializer.SerializerFeature;
|
||||
import nc.bs.bd.assignservice.multiorg.MultiOrgAssignVO;
|
||||
import nc.bs.bd.baseservice.ArrayClassConvertUtil;
|
||||
import nc.bs.bd.cache.CacheProxy;
|
||||
import nc.bs.businessevent.IBusinessEvent;
|
||||
import nc.bs.businessevent.IBusinessListener;
|
||||
import nc.bs.businessevent.bd.BDCommonEvent;
|
||||
import nc.bs.businessevent.bd.BDCommonEventUtil;
|
||||
import nc.bs.dao.BaseDAO;
|
||||
import nc.bs.dao.DAOException;
|
||||
import nc.bs.framework.common.NCLocator;
|
||||
import nc.bs.logging.Log;
|
||||
import nc.bs.logging.Logger;
|
||||
import nc.bs.trade.business.HYPubBO;
|
||||
import nc.bs.uapbd.util.MyHelper;
|
||||
import nc.bs.uapbd.util.ThirdPartyPostRequestUtil;
|
||||
import nc.impl.bd.material.baseinfo.MaterialAsstFrame1ChangedListener;
|
||||
import nc.jdbc.framework.SQLParameter;
|
||||
import nc.jdbc.framework.processor.ColumnListProcessor;
|
||||
import nc.jdbc.framework.processor.MapProcessor;
|
||||
import nc.pubitf.uapbd.IMaterialPubService;
|
||||
import nc.util.mmf.framework.base.MMValueCheck;
|
||||
import nc.vo.am.common.util.StringUtils;
|
||||
import nc.vo.bd.material.MaterialVO;
|
||||
import nc.vo.bd.material.marassistant.MarAssistantVO;
|
||||
import nc.vo.bd.material.marbasclass.MarBasClassVO;
|
||||
import nc.vo.bd.material.plan.MaterialPlanVO;
|
||||
import nc.vo.bd.material.prod.MaterialProdVO;
|
||||
import nc.vo.bd.material.stock.MaterialStockVO;
|
||||
import nc.vo.org.OrgVO;
|
||||
import nc.vo.pub.BusinessException;
|
||||
import nc.vo.pub.lang.UFBoolean;
|
||||
|
|
@ -42,17 +52,57 @@ public class MaterialToGyMesListener implements IBusinessListener {
|
|||
private static final String addUrl = "/bip/order/materialAdd";
|
||||
private static final String updateUrl = "/bip/order/materialUpdate";
|
||||
private Map<String, String> configParams;
|
||||
private BaseDAO baseDAO = new BaseDAO();
|
||||
|
||||
@Override
|
||||
public void doAction(IBusinessEvent event) throws BusinessException {
|
||||
BDCommonEvent e = (BDCommonEvent) event;
|
||||
String eventType = event.getEventType();
|
||||
Object[] objs = e.getObjs();
|
||||
|
||||
// EventType是事件编码 1002-新增后 1004-修改后 1071-状态由停用变为启用后 1069-状态由启用变为停用后
|
||||
if ("1004".equals(eventType)) {
|
||||
MaterialVO[] useVOs = ArrayClassConvertUtil.convert(objs, MaterialVO.class);
|
||||
MaterialVO[] useVOs = null;
|
||||
if ("13636fc1-0215-4102-a11e-af4be73a05ab".equals(e.getSourceID())) {//库存信息修改后
|
||||
HYPubBO hyPub = new HYPubBO();
|
||||
List<MaterialVO> list = new ArrayList<>();
|
||||
for (int i = 0; i < e.getNewObjs().length; ++i) {
|
||||
MaterialStockVO newVO = (MaterialStockVO) e.getNewObjs()[i];
|
||||
String pk_material = newVO.getPk_material();
|
||||
if (pk_material == null) {
|
||||
continue;
|
||||
}
|
||||
MaterialVO materialVO = (MaterialVO) hyPub.queryByPrimaryKey(MaterialVO.class, pk_material);
|
||||
list.add(materialVO);
|
||||
}
|
||||
useVOs = list.toArray(new MaterialVO[0]);
|
||||
} else if ("8b7d49ab-7a65-4885-bcf1-7df89b84df4b".equals(e.getSourceID())) {//计划信息修改后
|
||||
HYPubBO hyPub = new HYPubBO();
|
||||
List<MaterialVO> list = new ArrayList<>();
|
||||
for (int i = 0; i < e.getNewObjs().length; ++i) {
|
||||
MaterialPlanVO newVO = (MaterialPlanVO) e.getNewObjs()[i];
|
||||
String pk_material = newVO.getPk_material();
|
||||
if (pk_material == null) {
|
||||
continue;
|
||||
}
|
||||
MaterialVO materialVO = (MaterialVO) hyPub.queryByPrimaryKey(MaterialVO.class, pk_material);
|
||||
list.add(materialVO);
|
||||
}
|
||||
useVOs = list.toArray(new MaterialVO[0]);
|
||||
} else if ("a3133495-8c94-47b4-83d4-0d32bd08ac82".equals(e.getSourceID())) {//生产信息修改后
|
||||
HYPubBO hyPub = new HYPubBO();
|
||||
List<MaterialVO> list = new ArrayList<>();
|
||||
for (int i = 0; i < e.getNewObjs().length; ++i) {
|
||||
MaterialProdVO newVO = (MaterialProdVO) e.getNewObjs()[i];
|
||||
String pk_material = newVO.getPk_material();
|
||||
if (pk_material == null) {
|
||||
continue;
|
||||
}
|
||||
MaterialVO materialVO = (MaterialVO) hyPub.queryByPrimaryKey(MaterialVO.class, pk_material);
|
||||
list.add(materialVO);
|
||||
}
|
||||
useVOs = list.toArray(new MaterialVO[0]);
|
||||
} else {
|
||||
useVOs = ArrayClassConvertUtil.convert(objs, MaterialVO.class);//物料修改后
|
||||
}
|
||||
configParams = MyHelper.getConfigParams("gy-config", null);
|
||||
if (configParams.isEmpty()) {
|
||||
throw new BusinessException("高压的gymes接口缺少配置");
|
||||
|
|
@ -99,7 +149,7 @@ public class MaterialToGyMesListener implements IBusinessListener {
|
|||
private void buildSyncData(MaterialVO[] useVOs, String eventType) throws BusinessException {
|
||||
|
||||
// String orgId = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.PK_ORG, OrgVO.CODE, "C046");
|
||||
String pkOrg = MyHelper.getStrValByCondition("ORG_ORGS", OrgVO.PK_ORG, OrgVO.CODE + " = '" + "C046" + "'"+ " and ISBUSINESSUNIT = '" + "Y" +"'");
|
||||
String pkOrg = MyHelper.getStrValByCondition("ORG_ORGS", OrgVO.PK_ORG, OrgVO.CODE + " = '" + "C046" + "'" + " and ISBUSINESSUNIT = '" + "Y" + "'");
|
||||
JSONArray dataArr = new JSONArray();
|
||||
for (MaterialVO vo : useVOs) {
|
||||
String pkMaterial = vo.getPk_material();
|
||||
|
|
@ -142,7 +192,7 @@ public class MaterialToGyMesListener implements IBusinessListener {
|
|||
singleObj.put("materialCategory", pk_marbasclass); // 物料分类
|
||||
singleObj.put("specification", vo.getMaterialspec()); // 规格
|
||||
singleObj.put("model", vo.getMaterialtype()); // 型号文字
|
||||
singleObj.put("intervalModel",vo.getMaterialtype()); // 产品类型 例如35-KV-断路器(物料自定义字段)
|
||||
singleObj.put("intervalModel", vo.getMaterialtype()); // 产品类型 例如35-KV-断路器(物料自定义字段)
|
||||
singleObj.put("primaryUnit", unitMap.get("measrate").toString().split("/")[0]);
|
||||
// 主单位
|
||||
singleObj.put("materialUnit", unitMap.get("measrate").toString().split("/")[1]); // 单位
|
||||
|
|
|
|||
Loading…
Reference in New Issue