示例#1
0
        public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "status/{id}")] HttpRequest req, string id,
            [CosmosDB(
                 databaseName: "DocumentProxy",
                 collectionName: "Documents",
                 Id = "{id}",
                 CreateIfNotExists = true,
                 ConnectionStringSetting = "CosmosDBConnection")] DocumentDetails document,
            ILogger log)
        {
            log.LogInformation($"Get Status for {id}.");

            if (document == null)
            {
                return(new BadRequestObjectResult("Invalid request"));
            }

            var latestUpdate = document.Status.LastOrDefault();
            var response     = new DocumentStatusResponse
            {
                Body      = document.Body,
                CreatedOn = document.CreatedOn,
                Status    = latestUpdate?.Status,
                Detail    = latestUpdate?.Detail,
                UpdatedOn = latestUpdate == null ? document.CreatedOn : latestUpdate.CreatedOn
            };

            return(new OkObjectResult(response));
        }
示例#2
0
文件: Form1.cs 项目: pabje/co02
        private void btnEstadoDocumento_Click(object sender, EventArgs e)
        {
            DocumentStatusResponse resp = serviceClient.EstadoDocumento(tokenEmpresa, tokenAuthorizacion, tbxEstadoDocumento.Text.Trim());

            MessageBox.Show(resp.codigo + Environment.NewLine + resp.estatusDocumento + Environment.NewLine + resp.mensaje, "Estado de Documento");
        }
示例#3
0
        public Dictionary <string, string> DocumentStatus(string transactionId)
        {
            #region Variables de trabajo

            string step                   = "ConfigWS";
            string methodName             = "DocumentStatus";
            DocumentStatusResponse wsResp = null;
            DocumentStatusRequest  wsReq  = new DocumentStatusRequest();

            Dictionary <string, string> dictResult = this.FaultDictionary();

            #endregion

            try
            {
                #region Diccionario de respuesta

                dictResult.Add("methodName", methodName);
                dictResult.Add("transactionId", transactionId);
                dictResult.Add("processName", "");
                dictResult.Add("processStatus", "");
                dictResult.Add("processDate", "");
                dictResult.Add("messageType", "");

                #endregion

                #region Inicializacion WS

                this.Initialize();
                wsReq.transactionId = transactionId;
                wsReq.companyId     = this.m_Company;
                wsReq.accountId     = this.m_Account;

                #endregion

                #region Llamado al WS

                try
                {
                    step   = "BeforeWS";
                    wsResp = this.m_Proxy.DocumentStatus(wsReq);
                    step   = "AfterWS";
                    if (wsResp == null)
                    {
                        this.SetException(dictResult, "DocumentStatusResponse nulo", "Se realizó correctamente el llamado al metodo DocumentStatus y devolvio respuesta null");
                    }
                    else
                    {
                        step = "BeforeDict";
                        dictResult["processName"]   = wsResp.processName;
                        dictResult["processStatus"] = wsResp.processStatus;
                        dictResult["processDate"]   = wsResp.processDate.ToString("yyyy-MM-ddTHH:mm:ss.fff-05:00");
                        dictResult["messageType"]   = wsResp.messageType;
                        dictResult["errorMessage"]  = wsResp.errorMessage;
                        step = "AfterDict";
                    }
                }
                catch (FaultException <InvoiceServiceFault> faultException)
                {
                    var detail = faultException.Detail;
                    this.SetException(dictResult, detail.errorMessage, detail.statusCode, detail.reasonPhrase);
                }
                catch (ProtocolException protocolExc)
                {
                    this.SetException(dictResult, protocolExc.Message, protocolExc.StackTrace);
                }

                #endregion
            }
            catch (Exception excepcion)
            {
                this.SetException(dictResult, excepcion.Message, excepcion.StackTrace);
            }
            finally
            {
                dictResult["Step"] = step;
            }

            return(dictResult);
        }