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);
        }
        private RequestMessage3Importation GetObject(Embarque embarque, Cabecalho cabecalho, DadosBroker dadosBroker)
        {
            MAIN main = new MainDAO().FindByIdEmbarqueEager(embarque.ID).FirstOrDefault();

            RequesImportationtMsg3 request = new RequesImportationtMsg3();

            request.Type       = cabecalho.RequestType;
            request.ACAO       = cabecalho.ACAO;
            request.IDBR       = dadosBroker.IDBR;
            request.IDCL       = dadosBroker.IDCL;
            request.SHKEY      = dadosBroker.SHKEY;
            request.STR        = new STR(dadosBroker);
            request.MAIN       = main;
            request.MAIN.SBELN = embarque.SBELN;
            request.BUK        = main.BUK;
            request.PAR        = main.PAR;
            request.PARS       = main.PARS;
            request.DAT        = main.DAT;
            request.DI         = main.DI;
            request.BL         = main.BL;
            request.SHP        = main.SHP;
            request.SHP.ForEach(s => s.SBELN = embarque.SBELN);
            request.SHP_TEXT_Main            = main.SHP_TEXT_Main;

            RequestMessage3Importation requestMessage3 = new RequestMessage3Importation();

            requestMessage3.EDX     = cabecalho.MensagemEDX;
            requestMessage3.REQUEST = request;

            return(requestMessage3);
        }
예제 #3
0
        private List <RequestMessage4> GetObject(Embarque embarque, Cabecalho cabecalho, DadosBroker broker)
        {
            List <RequestMessage4> listRequestMessage4 = new List <RequestMessage4>();
            List <TPCK>            listTpck            = new TPCKDao().FindByIdEmbarqueEager(embarque.ID).ToList();

            foreach (TPCK eachTpck in listTpck)
            {
                RequestMsg4 request = new RequestMsg4();
                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.PCK       = eachTpck;
                request.PCK.SBELN = embarque.SBELN;
                //Esse campo necessita do valor "S" para o request da Mensagem 4, porém no response da Mensagem 5 esse mesmo campo é
                //recebido com o valor "L", sendo assim o valor que do Webservice é salvo no banco de dados necessitando assim essa alteração
                request.PCK.Type = "S";

                RequestMessage4 requestMessage4 = new RequestMessage4();
                requestMessage4.EDX     = cabecalho.MensagemEDX;
                requestMessage4.REQUEST = request;

                listRequestMessage4.Add(requestMessage4);
            }
            return(listRequestMessage4);
        }