Example #1
0
        public async Task <JsonResult> AssignSignature([FromBody] SignatureSave data)
        {
            try
            {
                DataStorage Sig = new DataStorage()
                {
                    Data = Convert.FromBase64String(data.signature_base64.Remove(0, 22)),
                    Type = AppDataType.SIGNATURE
                };
                Sig = _DataStor.Add(Sig);
                var user = await _userManager.GetUserAsync(User);

                user.SignatureDataId = Sig.IdDataStorage;
                await _userManager.UpdateAsync(user);

                return(Json(new Result()
                {
                    result = "Success",
                    status_code = 200
                }));
            }
            catch (Exception ex)
            {
                return(Json(new Result()
                {
                    status_code = 500,
                    reason = ex.Message,
                    result = "Failure"
                }));
            }
        }
Example #2
0
        public DocumentSignatureField SaveWithDocumentSignatureData(DocumentSignatureField field)
        {
            if (field.SignatureData == null)
            {
                return(null);
            }
            DataStorage stor;

            if (field.SignatureData.IdDataStorage == Guid.Empty)
            {
                //Add

                stor = _DataStor.Add(field.SignatureData);
            }
            else
            {
                //Update
                ///TODO - Confirm the storage data exists
                stor = _DataStor.Update(field.SignatureData);
            }

            field.SignatureDataId = stor.IdDataStorage;
            var Field = _context.DocumentSignatureField.AsNoTracking().FirstOrDefault(e => e.IdFormName == field.IdFormName && e.IdSubmittedDocumentId == field.IdSubmittedDocumentId);

            if (Field != null)
            {
                field.AssigneeId = Field.AssigneeId;
                //Update
                return(Update(field));
            }
            else
            {
                //add
                return(Add(field));
            }
        }