78 lines
2.7 KiB
Plaintext
78 lines
2.7 KiB
Plaintext
package th.co.muangthai.endrprint.model.wfservice;
|
|
|
|
import th.co.muangthai.endrprint.wfxml.*;
|
|
|
|
import java.lang.Exception;
|
|
import java.util.concurrent.*;
|
|
|
|
/**
|
|
* Created by noname on 2/17/16.
|
|
*/
|
|
public class SearchPolicyDetailProxyService {
|
|
|
|
public String querySearchPolicyDetail(String policyNo){
|
|
|
|
String applicationNo = "";
|
|
|
|
try {
|
|
|
|
// set parameter
|
|
final SearchPolicyDetailPttSOAP11BindingQSService qsService = new SearchPolicyDetailPttSOAP11BindingQSService();
|
|
final SearchPolicyDetailAdapterInput param = new SearchPolicyDetailAdapterInput();
|
|
// set parameter
|
|
param.setPPolicyNo(policyNo);
|
|
ExecutorService executor = Executors.newCachedThreadPool();
|
|
Callable<Object> task = new Callable<Object>(){
|
|
public SearchPolicyDetailAdapterOutputCollection call() {
|
|
|
|
SearchPolicyDetailPtt queryPtt = qsService.getSearchPolicyDetailPttSOAP11BindingQSPort();
|
|
try {
|
|
return queryPtt.searchPolicyDetailProcess(param);
|
|
} catch (Exception_Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
};
|
|
|
|
Future<Object> future = executor.submit(task);
|
|
SearchPolicyDetailAdapterOutputCollection vwCollection = new SearchPolicyDetailAdapterOutputCollection();
|
|
//DbAdapterAlphAIRTypeQueryOutputCollection vwCollection = queryPtt.SearchPolicyDetailAdapterOutputCollection(param);
|
|
//log.info("*** Return Start > " + DateUtil.toFormatString(new Date(),"dd/MM/yyyy HH:mm:ss"));
|
|
|
|
try {
|
|
Object obj2 = future.get(30, TimeUnit.SECONDS);
|
|
if(obj2 != null){
|
|
vwCollection = (SearchPolicyDetailAdapterOutputCollection)obj2;
|
|
}
|
|
} catch (TimeoutException ex) {
|
|
|
|
vwCollection = new SearchPolicyDetailAdapterOutputCollection();
|
|
future.cancel(true);
|
|
|
|
|
|
return "";
|
|
} catch (ExecutionException e) {
|
|
// handle other exceptions
|
|
} catch (InterruptedException e) {
|
|
e.printStackTrace();
|
|
} finally {
|
|
executor.shutdown();
|
|
}
|
|
|
|
for (SearchPolicyDetailAdapterOutput data : vwCollection.getSearchPolicyDetailAdapterOutput()){
|
|
if( "1".equals(data.getSTATUSCODE()) ){
|
|
applicationNo = data.getAPPLICATIONNO();
|
|
break;
|
|
}
|
|
}
|
|
|
|
}catch (Exception e){
|
|
|
|
applicationNo = "";
|
|
}
|
|
|
|
return applicationNo;
|
|
}
|
|
}
|