|
|
@@ -10,6 +10,8 @@ import com.uas.eis.sdk.entity.ApiResult;
|
|
|
import com.uas.eis.service.MESDataService;
|
|
|
import com.uas.eis.service.MESHelperService;
|
|
|
import com.uas.eis.utils.*;
|
|
|
+import flexjson.JSON;
|
|
|
+import net.sf.json.JSONArray;
|
|
|
import net.sf.json.JSONObject;
|
|
|
import net.sf.json.JsonConfig;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
@@ -272,9 +274,75 @@ public class MESHelperServiceImpl implements MESHelperService {
|
|
|
@Override
|
|
|
public Map<Object,Object> TraceabilityDataInterface(String data) {
|
|
|
Map<Object, Object> rmap = new HashMap<Object, Object>();
|
|
|
+ JSONObject object = JSONObject.fromObject(data);
|
|
|
+ JSONObject TraceabilityDataDetail=object.getJSONObject("TraceabilityDataDetail");
|
|
|
+ if(TraceabilityDataDetail!=null){
|
|
|
+ String DateBegin=Time(TraceabilityDataDetail.get("DateBegin").toString());
|
|
|
+ String DateCompleted=Time(TraceabilityDataDetail.get("DateCompleted").toString());
|
|
|
+ String LineName=TraceabilityDataDetail.get("LineName").toString();
|
|
|
+ String MachineName=TraceabilityDataDetail.get("MachineName").toString();
|
|
|
+ String BoardName=TraceabilityDataDetail.get("BoardName").toString();
|
|
|
+ String MachineID=TraceabilityDataDetail.get("MachineID").toString();
|
|
|
+ String BoardSide=TraceabilityDataDetail.get("BoardSide").toString();
|
|
|
+ String OrderNumber=TraceabilityDataDetail.get("OrderNumber").toString();
|
|
|
+ String PCBBarcode=TraceabilityDataDetail.get("PCBBarcode").toString();
|
|
|
+ Integer td_id=baseDao.getSeqId("TRACEDATA_seq");
|
|
|
+ baseDao.execute("insert into TRACEDATA(TD_ID,DateBegin,DateCompleted,LineName,MachineName,BoardName,MachineID,BoardSide,OrderNumber,PCBBarcode,TD_INDATE)" +
|
|
|
+ "values("+td_id+",to_date('"+DateBegin+"','yyyy-mm-dd hh24:mi:ss'),to_date('"+DateCompleted+"','yyyy-mm-dd hh24:mi:ss')," +
|
|
|
+ "'"+LineName+"','"+MachineName+"','"+BoardName+"','"+MachineID+"','"+BoardSide+"','"+OrderNumber+"','"+PCBBarcode+"',sysdate)");
|
|
|
+
|
|
|
+ JSONObject MaterialTraceabilityDetail=TraceabilityDataDetail.getJSONObject("MaterialTraceabilityDetail");
|
|
|
+ JSONObject MaterialConsumptionDetail=TraceabilityDataDetail.getJSONObject("MaterialConsumptionDetail");
|
|
|
+ //上料信息
|
|
|
+ if(MaterialTraceabilityDetail!=null){
|
|
|
+
|
|
|
+ JSONArray PanelList=MaterialTraceabilityDetail.getJSONArray("PanelList");
|
|
|
+ for (int i=0;i<PanelList.size();i++){
|
|
|
+
|
|
|
+ JSONObject map=PanelList.getJSONObject(i);
|
|
|
+ String PanelName=map.get("PanelName").toString();
|
|
|
+ JSONArray PackagingUnitRefList=map.getJSONArray("PackagingUnitRefList");
|
|
|
+ String PlaceRefID="";
|
|
|
+ if(PackagingUnitRefList!=null){
|
|
|
+ for (int j=0;j<PackagingUnitRefList.size();j++){
|
|
|
+ JSONObject map1=PackagingUnitRefList.getJSONObject(i);
|
|
|
+ String PUID=map1.getString("PUID");
|
|
|
+ String TableLocation=map1.getString("TableLocation");
|
|
|
+ String Track=map1.getString("Track");
|
|
|
+ String ComponentBarcode=map1.getString("ComponentBarcode");
|
|
|
+ String OriginalQuantity=map1.getString("OriginalQuantity");
|
|
|
+ String Quantity=map1.getString("Quantity");
|
|
|
+ String CreateDate=Time(map1.getString("CreateDate"));
|
|
|
+ String DateCode=map1.getString("DateCode");
|
|
|
+ String Batch2=map1.getString("Batch2");
|
|
|
+ String MsdLevel=map1.getString("MsdLevel");
|
|
|
+ String VerifiedDate=Time(map1.getString("VerifiedDate"));
|
|
|
+ String Operator=map1.getString("Operator");
|
|
|
+ JSONArray PlaceRefList=map1.getJSONArray("PlaceRefList");
|
|
|
+ if(PlaceRefList!=null){
|
|
|
+ for (int k=0;k<PlaceRefList.size();k++){
|
|
|
+ JSONObject map2=PlaceRefList.getJSONObject(i);
|
|
|
+ PlaceRefID+=map2.getString("PlaceRefID")+",";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ baseDao.execute("insert into MATERIALTRACE(MT_ID,MT_TDID,PANELNAME,PUID,PlaceRefList,TableLocation,Track,ComponentBarcode,OriginalQuantity,Quantity,CreateDate,DateCode,Batch2,MsdLevel,VerifiedDate,Operator)" +
|
|
|
+ "values(MATERIALTRACE_seq.nextval,'"+td_id+"','"+PanelName+"','"+PUID+"','"+PlaceRefID+"','"+TableLocation+"','"+Track+"','"+ComponentBarcode+"','"+OriginalQuantity+"','"+Quantity+"',to_date('"+CreateDate+"','yyyy-mm-dd hh24:mi:ss'),'"+DateCode+"','"+Batch2+"'," +
|
|
|
+ "'"+MsdLevel+"',to_date('"+CreateDate+"','yyyy-mm-dd hh24:mi:ss'),'"+Operator+"')");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //扣料信息
|
|
|
+ if(MaterialConsumptionDetail!=null){
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
return rmap;
|
|
|
}
|
|
|
|
|
|
+ public String Time(String time){
|
|
|
+ return time.replaceAll("T"," ").substring(0,19);
|
|
|
+ }
|
|
|
@Override
|
|
|
public Map<Object,Object> Weigh(String data) {
|
|
|
Map<Object, Object> rmap = new HashMap<Object, Object>();
|