private string SaveResponseSuccess(string message, string kindOfMessage) { string sbeln = RESPONSE.PCK.FirstOrDefault(e => !string.IsNullOrEmpty(e.SBELN)).SBELN; TPCKDao tpckDao = new TPCKDao(); Embarque embarque = new EmbarqueDao().FindBySbeln(sbeln, kindOfMessage); IDictionary <string, TPCK> dictionaryTcpkByXblnr = tpckDao.DictionaryByXblnr(embarque.ID); IList <Status> listStatus = new List <Status>(); foreach (var itemTpck in RESPONSE.PCK) { string newDesc = ""; if (dictionaryTcpkByXblnr.ContainsKey(itemTpck.XBLNR)) { dictionaryTcpkByXblnr[itemTpck.XBLNR].STATU = itemTpck.STATU; newDesc = MessagesOfReturn.DescriptionUpdateXblnrSuccess(itemTpck.XBLNR, RESPONSE.STATUS.DESC); } else { newDesc = MessagesOfReturn.DescriptionUpdateXblnrNotFound(itemTpck.XBLNR, RESPONSE.STATUS.DESC); } listStatus.Add(RESPONSE.STATUS.BuildsStatusWithNewDesc(newDesc)); } tpckDao.Update(); foreach (var itemStatus in listStatus) { ConfigStatus.SaveStatus(itemStatus, embarque); } return(MessagesOfReturn.ProcessMessageSuccess(message, embarque.SBELN)); }
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); }