示例#1
0
        public async Task <PropertyDocumentDto> PostPropertyDocument(PropertyDocumentDto model)
        {
            var url    = CRMApiUri + "/PropertyDocument";
            var result = await PostRequestToApi(url, model);

            return(result);
        }
示例#2
0
        public async Task <PropertyDocumentDto> PutPropertyDocument(int id, PropertyDocumentDto model)
        {
            var url    = CRMApiUri + "/PropertyDocument/" + id;
            var result = await PutRequestToApi(url, model);

            return(result);
        }
示例#3
0
        public async Task <IActionResult> UploadDocument(DocumentDto model)
        {
            if (model.UploadedFile.Length > 0)
            {
                var saveDocument = new PropertyDocumentDto {
                    PropertyId = model.PropertyId
                };
                var documentType  = model.Name.GetDocumentType();
                var lookups       = _lookupApiClient.GetLookup().Result;
                var documentTypes = lookups.DocumentTypes?.ConvertAll(x => (BaseLookupDto)x);
                using (var ms = new MemoryStream())
                {
                    model.UploadedFile.CopyTo(ms);
                    model.FileContent     = ms.ToArray();
                    model.DocumentTypeId  = documentTypes?.FirstOrDefault(x => x.Name == documentType)?.Id;
                    model.UserId          = CurrentUserContactId;
                    model.UploadById      = CurrentUserContactId;
                    model.UploadOn        = DateTime.Now;
                    saveDocument.Document = model;
                    saveDocument.Comment  = model.Comment;
                    saveDocument          = await _propertyFacadeApiClient.PostPropertyDocument(saveDocument);

                    var response = File(ms, model.Name.GetContentType());
                    return(Json("Uploaded successfully"));
                }
            }
            return(RedirectToAction("Index"));
        }
示例#4
0
        public async Task <IActionResult> Put(int id, [FromBody] PropertyDocumentDto propertyDocumentDto)
        {
            if (id == 0 || propertyDocumentDto.Id == 0)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Id needs to be greater than 0."));
            }

            return(await SaveAndReturnEntityAsync(async() => await _propertyDocumentService.SaveAndReturnEntityAsync(propertyDocumentDto)));
        }
示例#5
0
        public async Task <IActionResult> Post([FromBody] PropertyDocumentDto propertyDocumentDto)
        {
            if (propertyDocumentDto.Id != 0)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Identity insert is not permitted."));
            }

            return(await SaveAndReturnEntityAsync(async() => await _propertyDocumentService.SaveAndReturnEntityAsync(propertyDocumentDto)));
        }
示例#6
0
        public async Task <BaseEntity> SaveAndReturnEntityAsync(PropertyDocumentDto entityDto)
        {
            var propertyDocument = _mapper.Map <PropertyDocument>(entityDto);
            var documentDb       = entityDto.Document;
            var file             = new FileMetadata
            {
                FileContent = documentDb.FileContent,
                FileName    = documentDb.Name,
                PersonId    = documentDb.PersonId,
                UserId      = documentDb.UploadById
            };

            file = await _documentApiClient.EncryptAndSaveFile(file);

            propertyDocument.Document.RelativePath = file.FileUncPath;
            var result = await _repository.SaveAndReturnEntityAsync(propertyDocument);

            result.SuccessMessage = "The data is saved successfully";
            return(result);
        }
示例#7
0
        public async Task <int> SaveAsync(PropertyDocumentDto propertyDocument)
        {
            var result = await SaveAndReturnEntityAsync(propertyDocument);

            return(result.Id);
        }
示例#8
0
 public async Task <PropertyDocumentDto> PutPropertyDocument(int id, PropertyDocumentDto model)
 {
     return(await _propertyDocumentApiClient.PutPropertyDocument(id, model));
 }
示例#9
0
 public async Task <PropertyDocumentDto> PostPropertyDocument(PropertyDocumentDto model)
 {
     return(await _propertyDocumentApiClient.PostPropertyDocument(model));
 }