package com.terral.adopti.monitor.balanca.soap.api.soap;
import java.rmi.RemoteException;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Component;
import com.terral.adopti.monitor.balanca.soap.api.model.TabIn;
import com.terral.adopti.monitor.balanca.soap.api.model.TabOut;
import fsdbfxq01.DT_balanca_boi_outYETFRIG00022;
import fsdbfxq01.DT_balanca_boi_out_respYETFRIG00022_RESP;
import fsdbfxq01.SI_balanca_boi_sync_outBindingStub;
import fsdbfxq01.SI_balanca_boi_sync_outProxy;
@Component
public class SoapFsdbfxQ01 {
public List<TabOut> performYfmfrigIntegracao(List<TabIn> inputTable, String usuarioWsdl, String senhaWsdl,
String endPoint) {
DT_balanca_boi_outYETFRIG00022[] request = null;
DT_balanca_boi_out_respYETFRIG00022_RESP[] response = null;
List<TabOut> outputTable = new ArrayList<>();
List<DT_balanca_boi_outYETFRIG00022> outYetfrig00022List = new ArrayList<>();
for (TabIn tabIn : inputTable) {
outYetfrig00022List.add(new DT_balanca_boi_outYETFRIG00022(tabIn.getIdJava(), tabIn.getBrinco(),
tabIn.getPeso(), tabIn.getData(), tabIn.getHora()));
}
if (outYetfrig00022List.size() > 0) {
request = new DT_balanca_boi_outYETFRIG00022[outYetfrig00022List.toArray().length];
request = outYetfrig00022List.toArray(request);
}
// Cria e inicializa o endpoint do WSDL (URL)
SI_balanca_boi_sync_outProxy proxy = new SI_balanca_boi_sync_outProxy(endPoint);
// Informa o usuário e senha para acessar o WSDL
SI_balanca_boi_sync_outBindingStub binding = (SI_balanca_boi_sync_outBindingStub) proxy
.getSI_balanca_boi_sync_out();
binding.setUsername(usuarioWsdl);
binding.setPassword(senhaWsdl);
try {
response = binding.SI_balanca_boi_sync_out(request);
} catch (RemoteException e) {
e.printStackTrace();
}
if (response.length > 0) {
for (int i = 0; i < response.length; i++) {
String idJava = response[i].getID_JAVA() != null ? response[i].getID_JAVA() : "";
String brincoSap = response[i].getBRINCO_SAP() != null ? response[i].getBRINCO_SAP() : "";
String status = response[i].getSTATUS() != null ? response[i].getSTATUS() : "";
String mensagem = response[i].getMENSAGEM() != null ? response[i].getMENSAGEM() : "";
String data = response[i].getDATA() != null ? response[i].getDATA() : "";
String hora = response[i].getHORA() != null ? response[i].getHORA() : "";
String usuario = response[i].getUSUARIO() != null ? response[i].getUSUARIO() : "";
outputTable.add(new TabOut(idJava, "", brincoSap, "", status, mensagem, data, hora, usuario));
}
}
return outputTable;
}
}