| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224 |
- package xin.glue.ui.G.G08;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.io.UnsupportedEncodingException;
- import java.net.HttpURLConnection;
- import java.net.URL;
- import java.net.URLEncoder;
- import java.sql.CallableStatement;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Map;
- import org.apache.commons.lang.StringUtils;
- import com.alibaba.fastjson.JSONObject;
- import com.posdata.glue.biz.activity.PosActivity;
- import com.posdata.glue.biz.constants.PosBizControlConstants;
- import com.posdata.glue.context.PosContext;
- import com.posdata.glue.dao.PosGenericDao;
- public class Sendmove extends PosActivity {
- public String runActivity(PosContext context) {
- PosGenericDao dao = this.getDao("mesdao");
-
- String[] SLAB_NO = (String[])context.get("SLAB_NO");
- String[] chk = (String[])context.get("CHK");
- String[] SendNUMBER = (String[])context.get("NUMBER");
- String[] SendPLAN_ID = (String[])context.get("PLAN_ID");
- String[] SendPLT_TRS_WKGROUP = (String[])context.get("PLT_TRS_WKGROUP");
- String[] SendPLT_TRS_CAR_NO = (String[])context.get("PLT_TRS_CAR_NO");
- String[] SendPLT_TRS_WKSHIFT = (String[])context.get("PLT_TRS_WKSHIFT");
- String[] SendPLT_TRS_EMP_ID = (String[])context.get("PLT_TRS_EMP_ID");
- String A = new String();
- String B = new String();
- CallableStatement cstm = null;
- ArrayList al = new ArrayList();
-
- String msg = sendGet("http://10.90.0.166:8083/api/TqMes/IS_Leave_Factory?forecast_no=",SendPLAN_ID[0]);
- JSONObject jsonObj = JSONObject.parseObject(msg);
- if(msg.contains("异常")){
- context.put("MESSAGES",msg);
- return PosBizControlConstants.SUCCESS;
- }
- String condition = jsonObj.getString("condition");
- if("FALSE".equals(condition.toUpperCase()))
- {
- context.put("MESSAGES",SendPLAN_ID[0] + " 已出厂,不可再次进行发运操作! ");
- return PosBizControlConstants.SUCCESS;
- }
-
- String message = "";
- try {
- message = sendGet("http://10.90.0.166:9093/api/Hbch/IsHbch?cCp=1&cCh=",URLEncoder.encode(SendPLT_TRS_CAR_NO[0].replaceAll(" ",""),"UTF-8"));
- } catch (UnsupportedEncodingException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- JSONObject hm = JSONObject.parseObject(message);
- int status = hm.getIntValue("status");
- if(status == 0)
- {
- context.put("MESSAGES",SendPLT_TRS_CAR_NO[0] + "为非环保车辆,不允许出厂 ");
- return PosBizControlConstants.SUCCESS;
- }
-
- for(int i = 0 ; i < chk.length ; i++){
- if(chk[i].equals("")||chk[i] == null||chk[i].equals("N"))continue;
- // PosParameter param = new PosParameter();
- // param.setWhereClauseParameter(0, SLAB_NO[i]);
- // param.setWhereClauseParameter(1, SendPLAN_ID[0]);
- // param.setWhereClauseParameter(2, SendPLT_TRS_CAR_NO[0]);
- // param.setWhereClauseParameter(3, SendPLT_TRS_WKSHIFT[0]);
- // param.setWhereClauseParameter(4, SendPLT_TRS_WKGROUP[0]);
- // param.setWhereClauseParameter(5, SendPLT_TRS_EMP_ID[0]);
- // //param.setWhereClauseParameter(6, SendNUMBER[0]);
- // param.setWhereClauseParameter(6, A);
- // param.setWhereClauseParameter(7, B);
- // int updtCnt = getDao("mesdao").update("UIG080010_02.CAL", param);
- //////////////////////////////////////////////////
-
- cstm = dao.getCallableStatement("UIG080010_02.CAL");
- try
- {
- cstm.setString(1, SLAB_NO[i]);
- cstm.setString(2, SendPLAN_ID[0]);
- cstm.setString(3, SendPLT_TRS_CAR_NO[0]);
- cstm.setString(4, SendPLT_TRS_WKSHIFT[0]);
- cstm.setString(5, SendPLT_TRS_WKGROUP[0]);
- cstm.setString(6, SendPLT_TRS_EMP_ID[0]);
- cstm.registerOutParameter(7, java.sql.Types.VARCHAR);
- cstm.registerOutParameter(8, java.sql.Types.VARCHAR);
- cstm.execute();
- String err = cstm.getString(8);
- if(!err.contains("成功")){
- context.put("MESSAGES",err);
- return PosBizControlConstants.SUCCESS;
- }
- //财务数据上抛 移入存储过程MES_LG_KC.SENDLIST_BP
- /*cstm = this.getDao("mesdao").getCallableStatement("UPLOAD_DATA.CAL");
- cstm.setString(1, SLAB_NO[i]);
- cstm.setString(2, "69A");
- cstm.setString(3, "N");
- cstm.setString(4, "板坯外销");
- cstm.setString(5, SendPLT_TRS_EMP_ID[0]);
- cstm.registerOutParameter(6, java.sql.Types.VARCHAR);
- cstm.execute();
-
- String err = cstm.getString(6);*/
-
- }catch(Exception ex)
- {
- ex.printStackTrace();
- context.put("MESSAGES",SendPLAN_ID[0] + ex.getMessage());
- return PosBizControlConstants.SUCCESS;
- }
- finally
- {
- if(cstm != null)
- {
- try
- {
- al.add("<SLAB_NO>"+SLAB_NO[i]+"</SLAB_NO>"+"<TISHI>"+cstm.getString(8)+"</TISHI>");
- cstm.close();
- }catch(Exception e)
- {
- e.printStackTrace();
- }
- }
- }
- context.put("BK", al);
- System.out.println(al);
- }
-
- //发送电子出门证
- cstm = dao.getCallableStatement("UIG080010_04.CAL");
- try
- {
- cstm.setString(1, SendPLAN_ID[0]);
- cstm.registerOutParameter(2, java.sql.Types.VARCHAR);
- cstm.registerOutParameter(3, java.sql.Types.VARCHAR);
- cstm.execute();
- String err = cstm.getString(3);
- if(!StringUtils.isBlank(err)){
- context.put("MESSAGES",SendPLAN_ID[0] + err);
- return PosBizControlConstants.SUCCESS;
- }
- }catch(Exception ex)
- {
- ex.printStackTrace();
- }
- finally
- {
- if(cstm != null)
- {
- try
- {
- cstm.close();
- }catch(Exception e)
- {
- e.printStackTrace();
- }
- }
- }
-
- return PosBizControlConstants.SUCCESS;
- }
-
- /**
- * 向指定URL发送GET方法的请求
- *
- * @param url
- * 发送请求的URL
- * @param param
- * 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
- * @return URL 所代表远程资源的响应结果
- */
- public String sendGet(String url, String param) {
- String result = "";
- BufferedReader in = null;
- try {
- String urlNameString = url + param;
- URL realUrl = new URL(urlNameString);
- // 打开和URL之间的连接
- HttpURLConnection connection = (HttpURLConnection)realUrl.openConnection();
- // 设置通用的请求属性
- connection.setRequestProperty("connection", "Keep-Alive");
- connection.setRequestProperty("user-agent",
- "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
- // 建立实际的连接
- connection.connect();
- // 获取所有响应头字段
- Map<String, List<String>> map = connection.getHeaderFields();
- // 遍历所有的响应头字段
- for (String key : map.keySet()) {
- System.out.println(key + "--->" + map.get(key));
- }
- // 定义 BufferedReader输入流来读取URL的响应
- in = new BufferedReader(new InputStreamReader(
- connection.getInputStream(),"UTF-8"));
- String line;
- while ((line = in.readLine()) != null) {
- result += line;
- }
- } catch (Exception e) {
- System.out.println("发送GET请求出现异常!" + e);
- e.printStackTrace();
- result = "发送GET请求出现异常!" + e.getMessage();
- }
- // 使用finally块来关闭输入流
- finally {
- try {
- if (in != null) {
- in.close();
- }
- } catch (Exception e2) {
- e2.printStackTrace();
- }
- }
- return result;
- }
- }
|