public IDictionary <string, string> GetDatasToRequest() { try { IDictionary <string, string> dictonaryForConsulting = new Dictionary <string, string>(); IList <Embarque> listEmbarque = new EmbarqueDao().FindAtualizaDetalheEnbaleAsNoTracking(kindOfMessage); foreach (Embarque embarque in listEmbarque) { if (embarque != null && embarque.AtualizaDetalhe == true) { DadosBroker dadosBroker = new DadosBrokerDao().FindByIdAsNoTracking(embarque.DadosBrokerID); Cabecalho cabecalho = dadosBroker.DadosBrokerCabecalho.FirstOrDefault(cab => cab.Cabecalho.Mensagem == numberOfMessage && cab.Cabecalho.Tipo == kindOfMessage).Cabecalho; if (cabecalho.Mensagem == numberOfMessage && cabecalho.Tipo == kindOfMessage) { RequestMessage3Exportation consulta = GetObject(embarque, cabecalho, dadosBroker); string xml = new SerializeXml <RequestMessage3Exportation>().serializeXmlForGTE(consulta); dictonaryForConsulting.Add(embarque.SBELN, xml); } } } return(dictonaryForConsulting); } catch (Exception ex) { throw new ChangeXmlException(MessagesOfReturn.ExceptionGetDatasToRequest, ex); } }
private RequestMessage3Exportation GetObject(Embarque embarque, Cabecalho cabecalho, DadosBroker broker) { TGTESHK_N tgteshkn = new TGTESHK_NDao().FindByIdEmbarqueEager(embarque.ID).FirstOrDefault(); RequesExportationtMsg3 request = new RequesExportationtMsg3(); request.Type = cabecalho.RequestType; request.ACAO = cabecalho.ACAO; request.IDBR = broker.IDBR; request.IDCL = broker.IDCL; request.SHKEY = broker.SHKEY; request.STR = new STR(broker); request.TGTESHK_N = tgteshkn; if (request.TGTESHK_N != null) { request.TGTESHK_N.SBELN = embarque.SBELN; } request.TGTESHP_N = tgteshkn.TGTESHP_N; if (request.TGTESHP_N != null) { foreach (var tgteshpn in request.TGTESHP_N) { tgteshpn.SBELN = embarque.SBELN; } } request.TGTERES = tgteshkn.TGTERES; if (request.TGTERES != null) { foreach (var tgteres in request.TGTERES) { tgteres.SBELN = embarque.SBELN; } } request.TGTEPRD = tgteshkn.TGTEPRD; request.SHP_TEXT = tgteshkn.SHP_TEXT; request.TGTEDUEK = tgteshkn.TGTEDUEK; request.TGTEDUEP = tgteshkn.TGTEDUEP; RequestMessage3Exportation requestMessage3 = new RequestMessage3Exportation(); requestMessage3.EDX = cabecalho.MensagemEDX; requestMessage3.REQUEST = request; return(requestMessage3); }