public async Task <UpdatePrinterCommandResponse> Handle(
            UpdatePrinterCommand request,
            CancellationToken cancellationToken)
        {
            var printerDomain = _mapper.Map <Printer>(request.Printer);

            printerDomain.Id = ObjectId.Parse(request.Id);
            var result = await _storageService.Update(
                request.Id,
                printerDomain,
                cancellationToken);

            if (result.IsAcknowledged && result.IsModifiedCountAvailable && result.ModifiedCount == 1)
            {
                return(new UpdatePrinterCommandResponse());
            }
            else
            {
                return(new UpdatePrinterCommandResponse
                {
                    Error = new Dto.Response.Error
                    {
                        HttpStatusCode = HttpStatusCode.NotFound,
                        Message = _stringLocalizer["PrinterNotFound", request.Id]
                    }
                });
            }
        }
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));
            }
        }