示例#1
0
        public async Task <ActionResult> Create(ServiceRateDto ServiceRate)
        {
            var serviceRateExists = await _serviceRateRepository.GetByComplaintsIdAsync(ServiceRate.ComplaintsId);

            if (serviceRateExists.Data == null)
            {
                var saved = await _serviceRateRepository.SaveAsync(ServiceRate);
            }
            else
            {
                serviceRateExists.Data.Rate = ServiceRate.Rate;
                var removedPreviousRate = await _serviceRateRepository.UpdateAsync(serviceRateExists.Data);
            }

            var complaints = await _complaintsRepository.GetAsync(ServiceRate.ComplaintsId);

            var binnacle = new BinnacleDto
            {
                ComplaintsId      = ServiceRate.ComplaintsId,
                StatusId          = complaints.Data.StatusId,
                Comment           = $"SE HA PUNTUADO EL TICKET COMO: {ServiceRate.Rate}",
                ApplicationUserId = User.Identity.GetUserId()
            };

            await _binnaclesRepository.SaveAsync(binnacle);

            return(RedirectToAction(nameof(ComplaintsController.Details), "Complaints", new { id = ServiceRate.ComplaintsId }));
        }
示例#2
0
        public async Task <TaskResult <ServiceRateDto> > SaveAsync(ServiceRateDto serviceRateDto)
        {
            var serviceRate = AutoMapper.Mapper.Map <ServiceRate>(serviceRateDto);


            var result = new TaskResult <ServiceRateDto>();

            try
            {
                _context.ServiceRate.Add(serviceRate);
                await _context.SaveChangesAsync();

                result.Message = $"Se agregó la puntuacion #{serviceRate.Id}";
                result.Data    = AutoMapper.Mapper.Map <ServiceRateDto>(serviceRate);
            }
            catch (Exception e)
            {
                result.Success = false;
                result.Message = $"Error al intentar agregar la puntuacion: {e.Message}";
            }
            return(result);
        }
示例#3
0
        public async Task <TaskResult <ServiceRateDto> > UpdateAsync(ServiceRateDto serviceRateDto)
        {
            var serviceRate = AutoMapper.Mapper.Map <ServiceRate>(serviceRateDto);

            serviceRate.Complaint = null;
            var result = new TaskResult <ServiceRateDto>();

            try
            {
                //_context.ServiceRate.Add(serviceRate);
                //_context.Entry(serviceRate).State = System.Data.Entity.EntityState.Modified;
                await _context.SaveChangesAsync();

                result.Data    = AutoMapper.Mapper.Map <ServiceRateDto>(serviceRate);
                result.Message = "El registro fue actualizado correctamente";
            }
            catch (Exception e)
            {
                result.Success = false;
                result.Message = $"Error al intentar actualizar información de la puntuacion: {e.Message}";
            }
            return(result);
        }