callm 3 недель назад
Родитель
Сommit
f60cce8dbb

+ 1 - 0
src/main/java/com/uas/eis/entity/HelperType.java

@@ -52,6 +52,7 @@ public enum HelperType {
     SetAcerValue("SetAcerValue","写入SN对应的HashValue"),
     GetAcerValue("GetAcerValue","写入SN对应的HashValue"),
     GetMedionRevoKey("GetMedionRevoKey","获取Key信息"),
+    WriteProdInfo("WriteProdInfo","写入产品信息"),
     GetMedionValue("GetMedionValue","写入SN对应的HashValue"),
     SetMedionValue("SetMedionValue","写入SN对应的HashValue"),
     GetMakeInfo("GetMakeInfo","获取工单相关参数"),

+ 42 - 0
src/main/java/com/uas/eis/serviceImpl/MESHelperServiceImpl.java

@@ -202,6 +202,9 @@ public class MESHelperServiceImpl implements MESHelperService {
 			case GetMedionValue:
 				remap = GetMedionValue(json,AE_MASTER);
 				break;
+			case WriteProdInfo:
+				remap = WriteProdInfo(json,AE_MASTER);
+				break;
 			case SetMedionValue:
 				remap = SetMedionValue(json,AE_MASTER);
 				break;
@@ -838,6 +841,7 @@ public class MESHelperServiceImpl implements MESHelperService {
 		return rmap;
 	}
 
+
 	private Map<Object,Object> GetMakeSN(JSONObject map,String Master){
 		Map<Object, Object> rmap = new HashMap<Object, Object>();
 		List<Map<String, Object>> maps = new ArrayList<>();
@@ -2327,6 +2331,44 @@ public class MESHelperServiceImpl implements MESHelperService {
 		}
 	}
 
+	private Map<Object,Object> WriteProdInfo(JSONObject map,String Master){
+		Map<Object, Object> rmap = new HashMap<Object, Object>();
+		String oErrMessage=null;
+		if(map.get("iProdCode")==null){
+			oErrMessage = "工单号不能为空";
+			rmap.put("oErrMessage",oErrMessage);
+			return rmap;
+		}
+		String ProdCode=map.get("iProdCode").toString();
+		String Item=map.get("Item").toString();
+
+		SqlRowList rs=baseDao.queryForRowSet("select * from "+Master+".productitem where pi_prodcode='"+ProdCode+"'");
+		//如果已经存在工单了
+		if(rs.next()){
+			String[] str=Item.split("\\|");
+			String pi_id=rs.getString("pi_id");
+			baseDao.execute("delete from "+Master+".productitemdetail where pid_piid='"+pi_id+"'");
+			for (int i=0;i<str.length;i++) {
+				Object key = str[i].split("#")[0];
+				Object value = str[i].split("#")[1];
+				baseDao.execute("insert into "+Master+".productitemdetail(pid_id,pid_piid,pid_item,pid_value)" +
+						"values("+Master+".productitemdetail_seq.nextval,'"+pi_id+"','"+key.toString()+"','"+value.toString()+"')");
+			}
+		}else {
+			int pi_id = baseDao.getSeqId(Master+".productitem_seq");
+			String[] str=Item.split("\\|");
+			baseDao.execute("insert into "+Master+".productitem(pi_id,pi_prodcode,pi_indate)values("+pi_id+",'"+ProdCode+"',sysdate)");
+			for (int i=0;i<str.length;i++) {
+				Object key = str[i].split("#")[0];
+				Object value = str[i].split("#")[1];
+				baseDao.execute("insert into "+Master+".productitemdetail(pid_id,pid_piid,pid_item,pid_value)" +
+						"values("+Master+".productitemdetail_seq.nextval,'"+pi_id+"','"+key.toString()+"','"+value.toString()+"')");
+			}
+		}
+		return rmap;
+	}
+
+
 	private Map<Object,Object> GetProdInfo(JSONObject map,String Master){
 		Map<Object, Object> rmap = new HashMap<Object, Object>();
 		String iSN=null;