|
@@ -1,12 +1,11 @@
|
|
|
package com.mes.ui;
|
|
package com.mes.ui;
|
|
|
|
|
|
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
|
|
|
+import com.github.xingshuangs.iot.protocol.s7.enums.EPlcType;
|
|
|
|
|
+import com.github.xingshuangs.iot.protocol.s7.service.S7PLC;
|
|
|
import com.mes.component.MesRadio;
|
|
import com.mes.component.MesRadio;
|
|
|
import com.mes.component.MesWebView;
|
|
import com.mes.component.MesWebView;
|
|
|
-import com.mes.util.DateLocalUtils;
|
|
|
|
|
-import com.mes.util.HttpUtils;
|
|
|
|
|
-import com.mes.util.JdbcUtils;
|
|
|
|
|
-import com.mes.util.PLCUtils;
|
|
|
|
|
|
|
+import com.mes.util.*;
|
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
|
|
|
@@ -35,6 +34,7 @@ public class MesClient extends JFrame {
|
|
|
public static String mes_server_ip = ""; // 服务器IP地址
|
|
public static String mes_server_ip = ""; // 服务器IP地址
|
|
|
public static int mes_heart_icon_cycle = 1;
|
|
public static int mes_heart_icon_cycle = 1;
|
|
|
public static String mes_line_sn = ""; // 产线编号
|
|
public static String mes_line_sn = ""; // 产线编号
|
|
|
|
|
+ public static String csyq = "";
|
|
|
|
|
|
|
|
//session
|
|
//session
|
|
|
public static String sessionid = "";
|
|
public static String sessionid = "";
|
|
@@ -81,6 +81,9 @@ public class MesClient extends JFrame {
|
|
|
|
|
|
|
|
public static Timer getSnBeatTimer;
|
|
public static Timer getSnBeatTimer;
|
|
|
|
|
|
|
|
|
|
+ // S7plc
|
|
|
|
|
+ public static S7PLC plc = new S7PLC(EPlcType.S1200,"192.168.2.1");
|
|
|
|
|
+
|
|
|
public static void main(String[] args) {
|
|
public static void main(String[] args) {
|
|
|
|
|
|
|
|
if (LockUtil.getInstance().isAppActive() == true){
|
|
if (LockUtil.getInstance().isAppActive() == true){
|
|
@@ -124,6 +127,7 @@ public class MesClient extends JFrame {
|
|
|
mes_gw = pro.getProperty("mes.gw");
|
|
mes_gw = pro.getProperty("mes.gw");
|
|
|
mes_server_ip = pro.getProperty("mes.server_ip");
|
|
mes_server_ip = pro.getProperty("mes.server_ip");
|
|
|
mes_line_sn = pro.getProperty("mes.line_sn");
|
|
mes_line_sn = pro.getProperty("mes.line_sn");
|
|
|
|
|
+ csyq = pro.getProperty("mes.csyq");
|
|
|
mes_gw_des = OprnoUtil.getGwDes(mes_line_sn,mes_gw);
|
|
mes_gw_des = OprnoUtil.getGwDes(mes_line_sn,mes_gw);
|
|
|
log.info(mes_gw + ";" + mes_gw_des + ";" + mes_server_ip + ";");
|
|
log.info(mes_gw + ";" + mes_gw_des + ";" + mes_server_ip + ";");
|
|
|
}
|
|
}
|
|
@@ -618,7 +622,6 @@ public class MesClient extends JFrame {
|
|
|
getSnBeatTimer.schedule(new TimerTask() {
|
|
getSnBeatTimer.schedule(new TimerTask() {
|
|
|
@Override
|
|
@Override
|
|
|
public void run() {
|
|
public void run() {
|
|
|
- System.out.println("kaishi");
|
|
|
|
|
if (work_status == 1) {
|
|
if (work_status == 1) {
|
|
|
// TODO
|
|
// TODO
|
|
|
// 加入工作流程
|
|
// 加入工作流程
|
|
@@ -630,45 +633,44 @@ public class MesClient extends JFrame {
|
|
|
}
|
|
}
|
|
|
} else if (plc_status == 1) {
|
|
} else if (plc_status == 1) {
|
|
|
// 发送允许启动信号
|
|
// 发送允许启动信号
|
|
|
- Boolean ret = PLCUtils.writeStartMethod();
|
|
|
|
|
|
|
+ Boolean ret = PLCUtils.writeStartMethod(plc);
|
|
|
if (ret) {
|
|
if (ret) {
|
|
|
plc_status = 2;
|
|
plc_status = 2;
|
|
|
}
|
|
}
|
|
|
} else if (plc_status == 2) {
|
|
} else if (plc_status == 2) {
|
|
|
- // 等待开始加工信号
|
|
|
|
|
- Boolean ret = PLCUtils.readStartMethod();
|
|
|
|
|
- if (ret){
|
|
|
|
|
- boolean ret2 = PLCUtils.writeStopMethod();
|
|
|
|
|
- if (ret2){
|
|
|
|
|
- plc_status = 3;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- } else if (plc_status ==3) {
|
|
|
|
|
// 等待加工结束信号
|
|
// 等待加工结束信号
|
|
|
- Boolean ret = PLCUtils.readStopMethod();
|
|
|
|
|
|
|
+ Boolean ret = PLCUtils.readStopMethod(plc);
|
|
|
if (ret){
|
|
if (ret){
|
|
|
|
|
+ // 将允许启动置空
|
|
|
|
|
+ PLCUtils.writeStopMethod(plc);
|
|
|
|
|
+ // 获取参数
|
|
|
|
|
+ QmParam qmParam = PLCUtils.getParameter(plc);
|
|
|
|
|
+ // 发送参数
|
|
|
|
|
+ JSONObject retObj1 = DataUtil.sendQualityParam( user20, product_sn.getText().trim(), MesClient.mes_gw, MesClient.mes_line_sn,qmParam);
|
|
|
|
|
+ if(retObj1 != null && retObj1.get("result") != null && retObj1.get("result").toString().equalsIgnoreCase("true")) {
|
|
|
|
|
+ MesClient.resetScanA();
|
|
|
|
|
+ MesClient.setMenuStatus("测试结果上传成功,请扫下一件",0);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ MesClient.setMenuStatus("测试结果上传失败,请重试",-1);
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ // 获取结果
|
|
|
|
|
+ String result = PLCUtils.getResult(plc);
|
|
|
// 发送结果
|
|
// 发送结果
|
|
|
String sn = product_sn.getText().trim();
|
|
String sn = product_sn.getText().trim();
|
|
|
- JSONObject retObj = DataUtil.sendQuality( sn,"OK",user20);
|
|
|
|
|
|
|
+ JSONObject retObj = DataUtil.sendQuality( sn,result,user20);
|
|
|
if (retObj != null && "true".equalsIgnoreCase(retObj.getString("result"))) {
|
|
if (retObj != null && "true".equalsIgnoreCase(retObj.getString("result"))) {
|
|
|
- // 发送允许下料
|
|
|
|
|
- PLCUtils.writeDownMethod();
|
|
|
|
|
resetState();
|
|
resetState();
|
|
|
status_menu.setForeground(Color.GREEN);
|
|
status_menu.setForeground(Color.GREEN);
|
|
|
status_menu.setText("结果提交成功,请扫下一件");
|
|
status_menu.setText("结果提交成功,请扫下一件");
|
|
|
finish_ng_bt.setEnabled(false);
|
|
finish_ng_bt.setEnabled(false);
|
|
|
-
|
|
|
|
|
} else {
|
|
} else {
|
|
|
status_menu.setForeground(Color.RED);
|
|
status_menu.setForeground(Color.RED);
|
|
|
String msg = (retObj != null && retObj.containsKey("message")) ? retObj.getString("message") : "提交失败";
|
|
String msg = (retObj != null && retObj.containsKey("message")) ? retObj.getString("message") : "提交失败";
|
|
|
status_menu.setText(msg);
|
|
status_menu.setText(msg);
|
|
|
}
|
|
}
|
|
|
- }else {
|
|
|
|
|
- // 获取参数
|
|
|
|
|
- PLCUtils.getParameter();
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- return;
|
|
|
|
|
} else if (work_status == 0) {
|
|
} else if (work_status == 0) {
|
|
|
JSONObject result = DataUtil.getCurSn(mes_gw, mes_server_ip, mes_line_sn);
|
|
JSONObject result = DataUtil.getCurSn(mes_gw, mes_server_ip, mes_line_sn);
|
|
|
// 正常处理结果
|
|
// 正常处理结果
|