/* package com.shlanbao.tzsc.data.webservice.server.impl; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import javax.jws.WebService; import org.apache.log4j.Logger; import org.dom4j.Document; import org.dom4j.DocumentHelper; import com.shlanbao.tzsc.base.interceptor.ParsingXmlDataInterceptor; import com.shlanbao.tzsc.base.interceptor.WorkOrderStatChangeInterceptor; import com.shlanbao.tzsc.data.webservice.client.SendMessageClient; @WebService public class WctWebServiceIpml implements WctWebServiceI{ protected Logger log = Logger.getLogger(this.getClass()); //使用线程池处理消息 private static ExecutorService cachedThreadPool = Executors.newCachedThreadPool(); */ /** * wct向PMs发送设备实时数据 *//* @Override public String WCTSendEqpRealTimeData(String strXml) { pmsDataReceive("WCTSendEqpRealTimeData",strXml); return null; } */ /** * 接收WCT工单状态信号,反馈MES *//* @Override public String WCTSendOrderStatusChanges(String strXml) { pmsDataReceive("WCTSendOrderStatusChanges",strXml); return null; } */ /** * 接收WCT维修请求 * *//* @Override public String WCTSendEqpRequestRecord(String strXml, String method) { try { if("DASSendEquipmentFault".equals(method)){//DASSendEquipmentFault SendMessageClient.SendMsgToFullDetail(strXml); ParsingXmlDataInterceptor.getInstance().addLog(true,"维修呼叫(请求)", 1, strXml); }else if("DASSendEquipmentRepairRecord".equals(method)){ SendMessageClient.SendMsgToFullDetail(strXml); ParsingXmlDataInterceptor.getInstance().addLog(true,"故障维修呼叫记录(反馈)", 1, strXml); }else if("DASSendEquipmentWorkOrderResult".equals(method)){ SendMessageClient.SendMsgToFullDetail(strXml); ParsingXmlDataInterceptor.getInstance().addLog(true,"设备保养记录(反馈)", 1, strXml); } } catch (Exception e) { ParsingXmlDataInterceptor.getInstance().addLog(true,"维修呼叫(请求)", 0, strXml); log.error("WCT向PMS发送维修工单请求异常!!!!"+e.getMessage()); } return null; } //线程处理webService信息 public String pmsDataReceive(String type,String str) { str=str.trim();//去除字符串两边空格 Document doc=null; //XML空判断 if("".equals(str)){return "ERROR:数据异常..."+type+str;} //将xml字符串转换成document try { doc=DocumentHelper.parseText(str); } catch (Exception e) { ParsingXmlDataInterceptor.getInstance().addLog(false,"WCT发送来的XML字符串转换Document对象异常!请检查XML数据格式是否规范",0,str,e.getMessage()); System.out.println("ERROR:XML字符串转换Document对象异常..."+str); e.printStackTrace(); } //线程处理 final Document fdoc=doc; final String ftype=type; final String fstr=str; cachedThreadPool.execute(new Runnable() { public void run() { if("WCTSendEqpRealTimeData".equals(ftype)){ //WCT向pms发送设备实时数据 ParsingXmlDataInterceptor.getInstance().alalyWCTSendEqpRealTimeData(ftype,fstr,fdoc); }else if("WCTSendOrderStatusChanges".equals(ftype)){ //WCT向pms发送工单状态变化信息(自动换工单或手动换牌时触发) ParsingXmlDataInterceptor.getInstance().alalyWCTSendOrderStatusChange(ftype,fstr,fdoc); } } }); return ""; } } */