public JsonResult Status(Models.StatusSetModel request)
        {
            var sign = Repository.Get(request.SignID);

            Juschubut.PdfSign.Common.StatusCode statusCode = PdfSign.Common.StatusCode.Unset;

            Enum.TryParse <Juschubut.PdfSign.Common.StatusCode>(request.StatusCode, out statusCode);

            Status status = new Status
            {
                Fecha       = DateTime.Now,
                Codigo      = statusCode,
                Descripcion = request.Message
            };

            if (sign == null)
            {
                sign = new Sign
                {
                    SignID = request.SignID,
                };

                sign.Setup.Archivos.Add(sign.CrearArchivoDefault());

                Repository.Set(sign);
            }

            var file = sign.Setup.Archivos.Find(x => x.ID == request.FileID.GetValueOrDefault(1));

            if (file != null)
            {
                if (file.CodigoStatus != PdfSign.Common.StatusCode.DocumentoFirmado.ToString())
                {
                    file.CodigoStatus      = request.StatusCode;
                    file.DescripcionStatus = request.Message;
                }

                sign.ArchivoActual = file;
            }

            sign.Status.Add(status);

            Repository.Set(sign);

            return(Json(true, JsonRequestBehavior.AllowGet));
        }
Esempio n. 2
0
            private void Write(string text, EventLogEntryType type)
            {
                Juschubut.PdfSign.Common.StatusCode code = PdfSign.Common.StatusCode.Debug;

                if (type == EventLogEntryType.Error || type == EventLogEntryType.FailureAudit)
                {
                    code = PdfSign.Common.StatusCode.Error;
                }

                if (!_writingStatus)
                {
                    _writingStatus = true;

                    WebHelper.Status(code, text);

                    _textLog.AppendLine(string.Format("{0} - {1}", code, text));

                    _writingStatus = false;
                }
            }