コード例 #1
0
        public async Task <JsonResult> Fault([FromBody] DictionaryCrudRequest request)
        {
            await CheckPermission();

            var service = new DictionaryService(_logger, _mapper);

            if (request?.IdToDelete != null)
            {
                return(Json(await service.FaultCrud(request)));
            }
            var result = await service.FaultCrud(request);

            return(Json(result));
        }
コード例 #2
0
        public async Task <JsonResult> DeviceFault([FromBody] DictionaryCrudRequest request)
        {
            await CheckPermission();

            var service = new DictionaryService(_logger, _mapper);

            if (request?.IdToDelete != null)
            {
                return(Json(await service.DeviceFaultsCrud(request)));
            }
            if (request?.DeviceFault.Name == null)
            {
                throw new ValidationException(Error.NotFilledOptionalField);
            }
            return(Json(await service.DeviceFaultsCrud(request)));
        }
コード例 #3
0
        public async Task <JsonResult> TripWithDays([FromBody] DictionaryCrudRequest request)
        {
            await CheckPermission();

            var service = new DictionaryService(_logger, _mapper);

            if (request?.IdToDelete != null)
            {
                return(Json(await service.TripWithDaysCrud(request)));
            }
            if (string.IsNullOrEmpty(request?.TripWithDays?.Name))
            {
                throw new ValidationException(Error.NotFilledOptionalField);
            }
            return(Json(await service.TripWithDaysCrud(request)));
        }
コード例 #4
0
        public async Task <DictionaryCrudResponse> FaultCrud(DictionaryCrudRequest input)
        {
            var data = input.Fault;

            if (data == null && input.IdToDelete == null)
            {
                throw new ValidationException("Не распарсилось");
            }

            var sqlR = new FaultsRepository(_logger);

            if (input?.IdToDelete != null)
            {
                await sqlR.Delete((int)input.IdToDelete);

                return(new DictionaryCrudResponse {
                    IsDeleted = true, Fault = data
                });
            }

            var all = await sqlR.GetAll();

            if (all.Any(x => x.Name.Equals(input.Fault.Name)))
            {
                throw new ValidationException(Error.AlreadyAddWithThisName);
            }

            if (data?.Id == 0)
            {
                var item = await sqlR.Add(data);

                return(new DictionaryCrudResponse {
                    IsAdd = true, Fault = item
                });
            }
            else
            {
                //Неиспользуемая хуета этот тип фаулта
                data.FaultType = 0;
                var item = await sqlR.Update(data);

                return(new DictionaryCrudResponse {
                    IsUpdated = true, Fault = item
                });
            }
        }
コード例 #5
0
        /// <summary>
        /// КРУД DeviceFaults
        /// </summary>
        public async Task <DictionaryCrudResponse> DeviceFaultsCrud(DictionaryCrudRequest input)
        {
            var data = input.DeviceFault;

            if (data == null && input.IdToDelete == null)
            {
                throw new ValidationException(Error.ParserError);
            }

            var sqlR = new DeviceFaultRepository(_logger);

            if (input?.IdToDelete != null)
            {
                await sqlR.Delete((int)input.IdToDelete);

                return(new DictionaryCrudResponse {
                    IsDeleted = true, DeviceFault = data
                });
            }

            var all = await sqlR.GetAll();

            if (all.Any(x => x.Name.Equals(input.DeviceFault.Name)))
            {
                throw new ValidationException(Error.AlreadyAddWithThisName);
            }

            if (data?.Id == 0)
            {
                var item = await sqlR.Add(data);

                return(new DictionaryCrudResponse {
                    IsAdd = true, DeviceFault = item
                });
            }
            else
            {
                var item = await sqlR.Update(data);

                return(new DictionaryCrudResponse {
                    IsUpdated = true, DeviceFault = item
                });
            }
        }