예제 #1
0
        public async Task <PersonAlertDto> PutPersonAlert(int id, PersonAlertDto model)
        {
            var url    = CRMApiUri + "/PersonAlert/" + id;
            var result = await PutRequestToApi(url, model);

            return(result);
        }
예제 #2
0
        public async Task <PersonAlertDto> PostPersonAlert(PersonAlertDto model)
        {
            var url    = CRMApiUri + "/PersonAlert";
            var result = await PostRequestToApi(url, model);

            return(result);
        }
예제 #3
0
        public async Task <IActionResult> Put(int id, [FromBody] PersonAlertDto personAlertDto)
        {
            if (id == 0 || personAlertDto.Id == 0)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Id needs to be greater than 0."));
            }

            return(await SaveAndReturnEntityAsync(async() => await _personAlertService.SaveAndReturnEntityAsync(personAlertDto)));
        }
예제 #4
0
        public async Task <IActionResult> Post([FromBody] PersonAlertDto personAlertDto)
        {
            if (personAlertDto.Id != 0)
            {
                return(StatusCode(StatusCodes.Status400BadRequest, "Identity insert is not permitted."));
            }

            return(await SaveAndReturnEntityAsync(async() => await _personAlertService.SaveAndReturnEntityAsync(personAlertDto)));
        }
예제 #5
0
        public IActionResult Create(int personId)
        {
            var person      = _customerFacadeApiClient.GetPerson(personId).Result;
            var personAlert = new PersonAlertDto {
                PersonId = personId, Person = person
            };

            PopulateLookupFields(personAlert);
            return(PartialView("Edit", personAlert));
        }
예제 #6
0
        private void PopulateLookupFields(PersonAlertDto personAlert)
        {
            var model = GetLookupModel();

            if (model != null)
            {
                var alertTypes    = model.AlertTypes?.Where(x => x.IsActive).ToList().ConvertAll(x => (BaseLookupDto)x);
                var alertGroups   = model.AlertGroups?.Where(x => x.IsActive).ToList().ConvertAll(x => (BaseLookupDto)x);
                var alertStatuses = model.AlertStatuses?.Where(x => x.IsActive).ToList().ConvertAll(x => (BaseLookupDto)x);
                personAlert.AlertTypeSelectList   = SelectedListHelper.GetSelectListForItems(alertTypes, personAlert.AlertTypeId?.ToString());
                personAlert.AlertGroupSelectList  = SelectedListHelper.GetSelectListForItems(alertGroups, personAlert.AlertGroupId?.ToString());
                personAlert.AlertStatusSelectList = SelectedListHelper.GetSelectListForItems(alertStatuses, personAlert.AlertStatusId?.ToString());
            }
        }
예제 #7
0
        public async Task <BaseEntity> SaveAndReturnEntityAsync(PersonAlertDto entityDto)
        {
            var personAlert = _mapper.Map <PersonAlert>(entityDto);

            if (entityDto.Id == 0)
            {
                var loggedUsed = _repository.CRMContext.IdentityUserView.FirstOrDefault(
                    x => x.Id == _repository.CRMContext.CurrentLoggedUserId);
                personAlert.CreatedBy = loggedUsed?.FirstName + " " + loggedUsed?.LastName;
                personAlert.CreatedOn = DateTime.Now;
            }
            var result = await _repository.SaveAndReturnEntityAsync(personAlert);

            result.SuccessMessage = "The data is saved successfully";
            return(result);
        }
예제 #8
0
        public IActionResult Save(PersonAlertDto model)
        {
            bool success;

            if (model.Id == 0)
            {
                var lookup = GetLookupModel();
                model.AlertStatusId = lookup?.AlertStatuses.FirstOrDefault(x => x.Name == "Active")?.Id;
                model.RaisedOn      = DateTime.Now;
                model = _customerFacadeApiClient.PostPersonAlert(model).Result;
            }
            else
            {
                model = _customerFacadeApiClient.PutPersonAlert(model.Id, model).Result;
            }

            success = string.IsNullOrWhiteSpace(model.ErrorMessage);
            return(Json(new { success, message = success ? model.SuccessMessage : model.ErrorMessage }));
        }
예제 #9
0
        public async Task <int> SaveAsync(PersonAlertDto personAlert)
        {
            var result = await SaveAndReturnEntityAsync(personAlert);

            return(result.Id);
        }
예제 #10
0
 public async Task <PersonAlertDto> PutPersonAlert(int id, PersonAlertDto model)
 {
     return(await _personAlertApiClient.PutPersonAlert(id, model));
 }
예제 #11
0
 public async Task <PersonAlertDto> PostPersonAlert(PersonAlertDto model)
 {
     return(await _personAlertApiClient.PostPersonAlert(model));
 }