Browse Source

钢网刮刀数据上传接口

callm 2 years ago
parent
commit
cc1fc9a1b7

+ 98 - 6
src/main/java/com/uas/eis/controller/MESHelperController.java

@@ -1,8 +1,16 @@
 package com.uas.eis.controller;
 
+import com.uas.eis.dao.BaseDao;
+import com.uas.eis.dao.SqlRowList;
 import com.uas.eis.sdk.entity.ApiResult;
 import com.uas.eis.sdk.resp.ApiResponse;
 import com.uas.eis.service.MESHelperService;
+import com.uas.eis.serviceImpl.DeviceApiResult;
+import org.dom4j.Document;
+import org.dom4j.DocumentHelper;
+import org.dom4j.Element;
+import org.dom4j.io.OutputFormat;
+import org.dom4j.io.XMLWriter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -10,8 +18,9 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.io.StringWriter;
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 
 /**
@@ -59,11 +68,94 @@ public class MESHelperController {
 
     //AOI接口
     @RequestMapping(value="/AOI",method = RequestMethod.POST)
-    public Map<Object,Object> AOI(HttpServletRequest request,String Username,String Shiftname, String MachineNO, String LineNO, String procedure,String Moname,
+    public String AOI(HttpServletRequest request,String Username,String Shiftname, String MachineNO, String LineNO, String procedure,String Moname,
                                   String Lotsn,String Side,String Result,String Defect,String elementQTY,String TestQTY,String Type,String Time) {
-        Map<String, Object> modelMap = new HashMap<String, Object>();
-        Map<Object,Object> map = mesHelperService.AOI( Username, Shiftname,  MachineNO,  LineNO,  procedure, Moname,
-                 Lotsn, Side, Result, Defect, elementQTY, TestQTY, Type, Time);
-        return map;
+
+        Element root = DocumentHelper.createElement("Data");
+        Document document = DocumentHelper.createDocument(root);
+        String Err=mesHelperService.AOI( Username, Shiftname,  MachineNO,  LineNO,  procedure, Moname,
+                Lotsn, Side, Result, Defect, elementQTY, TestQTY, Type, Time);
+        Element element1 = root.addElement("Result");
+        Element element2 = root.addElement("ErrMsg");
+
+        if(Err.equals("")||Err==null){
+            element1.setText("OK");
+            element2.setText("");
+        }else{
+            element1.setText("NG");
+            element2.setText(Err);
+        }
+
+        StringWriter stringWriter = new StringWriter();
+        OutputFormat format = OutputFormat.createPrettyPrint();
+        XMLWriter xmlWriter = new XMLWriter(stringWriter, format);
+        try {
+            xmlWriter.write(document);
+        } catch (IOException  e) {
+            e.printStackTrace();
+        }
+        String xmlString = stringWriter.toString();
+        return xmlString;
+    }
+
+
+    //更新刮刀数据
+    @RequestMapping(value="/UploadSteel",method = RequestMethod.POST)
+    public String UploadSteel(HttpServletRequest request,String SteelMeshCode,String scraperCode, String SteelMeshCount, String scraperCount, String datatime) {
+
+        Element root = DocumentHelper.createElement("Data");
+        Document document = DocumentHelper.createDocument(root);
+        String Err=mesHelperService.UploadSteel( SteelMeshCode, scraperCode,  SteelMeshCount,  scraperCount,  datatime);
+        Element element1 = root.addElement("Result");
+        Element element2 = root.addElement("ErrMsg");
+
+        if(Err.equals("")||Err==null){
+            element1.setText("OK");
+            element2.setText("");
+        }else{
+            element1.setText("NG");
+            element2.setText(Err);
+        }
+
+        StringWriter stringWriter = new StringWriter();
+        OutputFormat format = OutputFormat.createPrettyPrint();
+        XMLWriter xmlWriter = new XMLWriter(stringWriter, format);
+        try {
+            xmlWriter.write(document);
+        } catch (IOException  e) {
+            e.printStackTrace();
+        }
+        String xmlString = stringWriter.toString();
+        return xmlString;
+    }
+
+    //校验钢网是否可以用
+    @RequestMapping(value="/CheckSteel")
+    public String CheckSteel(HttpServletRequest request, String SteelMeshCode) {
+
+        Element root = DocumentHelper.createElement("Data");
+        Document document = DocumentHelper.createDocument(root);
+        String Err=mesHelperService.CheckSteel(SteelMeshCode);
+        Element element1 = root.addElement("Result");
+        Element element2 = root.addElement("ErrMsg");
+
+        if(Err.equals("")||Err==null){
+            element1.setText("OK");
+            element2.setText("");
+        }else{
+            element1.setText("NG");
+            element2.setText(Err);
+        }
+
+        StringWriter stringWriter = new StringWriter();
+        OutputFormat format = OutputFormat.createPrettyPrint();
+        XMLWriter xmlWriter = new XMLWriter(stringWriter, format);
+        try {
+            xmlWriter.write(document);
+        } catch (IOException  e) {
+            e.printStackTrace();
+        }
+        String xmlString = stringWriter.toString();
+        return xmlString;
     }
 }

+ 5 - 1
src/main/java/com/uas/eis/service/MESHelperService.java

@@ -15,6 +15,10 @@ public interface MESHelperService {
 
 	Map<Object, Object> SPI(String data);
 
-	Map<Object, Object> AOI(String Username,String Shiftname, String MachineNO, String LineNO, String procedure,String Moname,
+	String CheckSteel(String data);
+
+	String UploadSteel(String SteelMeshCode,String scraperCode, String SteelMeshCount, String scraperCount, String datatime);
+
+	String AOI(String Username,String Shiftname, String MachineNO, String LineNO, String procedure,String Moname,
 							String Lotsn,String Side,String Result,String Defect,String elementQTY,String TestQTY,String Type,String Time);
 }

+ 43 - 0
src/main/java/com/uas/eis/serviceImpl/DeviceApiResult.java

@@ -0,0 +1,43 @@
+·package com.uas.eis.serviceImpl;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+@XmlRootElement(name = "Data")
+@XmlType(propOrder = { "Result","ErrMsg"})
+public class DeviceApiResult {
+
+    private  String Result;
+    private  String ErrMsg;
+
+    public DeviceApiResult() {
+
+    }
+
+    public DeviceApiResult(String str, String str1) {
+        this.Result=str;
+        this.ErrMsg=str1;
+    }
+
+    public String getResult() {
+        return Result;
+    }
+
+    @XmlElement
+    public void setResult(String result) {
+        Result = result;
+    }
+
+
+
+    public String getErrMsg() {
+        return ErrMsg;
+    }
+
+    @XmlElement
+    public void setErrMsg(String errMsg) {
+        ErrMsg = errMsg;
+    }
+
+}

+ 34 - 3
src/main/java/com/uas/eis/serviceImpl/MESHelperServiceImpl.java

@@ -224,12 +224,43 @@ public class MESHelperServiceImpl implements MESHelperService {
 	}
 
 	@Override
-	public Map<Object,Object> AOI(String Username,String Shiftname, String MachineNO, String LineNO, String procedure,String Moname, String Lotsn,String Side,String Result,String Defect,String elementQTY,String TestQTY,String Type,String Time) {
-		Map<Object, Object> rmap = new HashMap<Object, Object>();
+	public String AOI(String Username,String Shiftname, String MachineNO, String LineNO, String procedure,String Moname, String Lotsn,String Side,String Result,String Defect,String elementQTY,String TestQTY,String Type,String Time) {
 		baseDao.execute("insert into devicetestinfo(DTI_ID, DTI_SNCODE, DTI_USERNAME, DTI_MACHINE, DTI_LINECODE, DTI_RESULT, DTI_MAKECODE, DTI_SHIFTNAME, DTI_PROGRAM, DTI_DEFECT, " +
 				"DTI_TESTQTY, DTI_MACHINETYPE, DTI_TYPE, DTI_TIME, DTI_SOURCECONTENT,dti_elementQTY)values(devicetestinfo_seq.nextval,'"+Lotsn+"','"+Username+"','"+MachineNO+"','"+LineNO+"','"+Result+"'" +
 				",'"+Moname+"','"+Shiftname+"','"+procedure+"','"+Defect+"','"+TestQTY+"','"+Type+"','AOI',to_date('"+Time+"','yyyy-mm-dd hh24:mi:ss'),'','"+elementQTY+"')");
-		return rmap;
+		return "";
+	}
+
+	@Override
+	public String  UploadSteel(String SteelMeshCode,String scraperCode, String SteelMeshCount, String scraperCount, String datatime) {
+		//判断钢网编号
+		if(!SteelMeshCode.equals("")&&SteelMeshCode!=null){
+			baseDao.execute("insert into devicetestinfo(DTI_ID, DTI_SNCODE,DTI_TESTQTY, DTI_MACHINETYPE, DTI_TYPE, DTI_TIME, DTI_SOURCECONTENT)values(devicetestinfo_seq.nextval,'"+scraperCode+"','"+scraperCount+"','钢网','钢网',to_date('"+datatime+"','yyyy-mm-dd hh24:mi:ss'),'')");
+			baseDao.execute("update stencil set  st_usecount=nvl(st_usecount,0)+"+scraperCount +" where st_code='"+SteelMeshCode+"'");
+		}
+		//判断刮刀编号
+		if(!scraperCode.equals("")&&scraperCode!=null){
+			baseDao.execute("insert into devicetestinfo(DTI_ID, DTI_SNCODE,DTI_TESTQTY, DTI_MACHINETYPE, DTI_TYPE, DTI_TIME, DTI_SOURCECONTENT)values(devicetestinfo_seq.nextval,'"+scraperCode+"','"+scraperCount+"','刮刀','刮刀',to_date('"+datatime+"','yyyy-mm-dd hh24:mi:ss'),'')");
+			baseDao.execute("update stencil set  st_usecount=nvl(st_usecount,0)+"+scraperCount +" where st_code='"+scraperCode+"'");
+		}
+		return "";
+	}
+
+	@Override
+	public String CheckSteel(String SteelMeshCode) {
+		Map<Object, Object> rmap = new HashMap<Object, Object>();
+		SqlRowList rs=baseDao.queryForRowSet("select st_kind,nvl(st_usecount,0)st_usecount,nvl(st_maxusecount,0)st_maxusecount from stencil where st_code='"+SteelMeshCode+"'");
+		if(rs.next()){
+			String st_usecount=rs.getString("st_usecount");
+			String st_maxusecount=rs.getString("st_maxusecount");
+			String st_kind=rs.getString("st_kind");
+			if(Integer.parseInt(st_usecount)>=Integer.parseInt(st_maxusecount)){
+				return rs.getString("st_kind")+"已使用"+st_usecount+",超出最大使用次数"+st_maxusecount;
+			}
+		}else{
+			return "编号不存在";
+		}
+		return "";
 	}