示例#1
0
 public async Task <User> GetUserByAsync(Expression <Func <User, bool> > expression)
 {
     using (var context = new ControlSystemContext.ControlSystemContext())
     {
         return(await context.Users.FirstOrDefaultAsync(expression));
     }
 }
        public async Task <CreateDiseaseResult> InsertAsync(Contracts.Entities.Disease entity)
        {
            using (var context = new ControlSystemContext.ControlSystemContext())
            {
                var isUnique = await IsDiseaseNameUnique(entity.DiseaseName, 0);

                if (!isUnique)
                {
                    return new CreateDiseaseResult()
                           {
                               Status = CreateDiseaseStatus.NonUniqueName
                           }
                }
                ;

                await context.AddAsync(entity);

                await context.SaveChangesAsync();

                return(new CreateDiseaseResult()
                {
                    Status = CreateDiseaseStatus.Success,
                    DiseaseId = entity.Id
                });
            }
        }
 public async Task <Contracts.Entities.Disease> GetDiseaseByAsync(Expression <Func <Contracts.Entities.Disease, bool> > expression)
 {
     using (var context = new ControlSystemContext.ControlSystemContext())
     {
         return(await context.Diseases
                .FirstOrDefaultAsync(expression));
     }
 }
示例#4
0
 public async Task <bool> IsDeviceIndicatorExist(int deviceIndicatorId)
 {
     using (var context = new ControlSystemContext.ControlSystemContext())
     {
         return(await context.Set <DeviceInicator>()
                .AnyAsync(s => s.Id == deviceIndicatorId));
     }
 }
 public async Task <IEnumerable <Contracts.Entities.Disease> > GetAsync()
 {
     using (var context = new ControlSystemContext.ControlSystemContext())
     {
         return(await context.Diseases
                .ToListAsync());
     }
 }
 public async Task <Contracts.Entities.Device> GetDeviceByAsync(Expression <Func <Contracts.Entities.Device, bool> > expression)
 {
     using (var context = new ControlSystemContext.ControlSystemContext())
     {
         return(await context.Devices.Include(device => device.DeviceIndicators)
                .FirstOrDefaultAsync(expression));
     }
 }
 public async Task UpdateAsync(Contracts.Entities.Device entity)
 {
     using (var context = new ControlSystemContext.ControlSystemContext())
     {
         context.Update(entity);
         await context.SaveChangesAsync();
     }
 }
示例#8
0
 public async Task <IEnumerable <Indicator> > GetIndicators()
 {
     using (var context = new ControlSystemContext.ControlSystemContext())
     {
         return(await context.Set <Indicator>()
                .ToListAsync());
     }
 }
        public async Task <bool> IsUserExist(int id)
        {
            using (var context = new ControlSystemContext.ControlSystemContext())
            {
                var any = await context.Users.AnyAsync(s => s.Id == id);

                return(any);
            }
        }
        private async Task <bool> IsDiseaseNameUnique(string name, int id = default(int))
        {
            using (var context = new ControlSystemContext.ControlSystemContext())
            {
                var disease = await context.Diseases.FirstOrDefaultAsync(t => t.DiseaseName == name);

                if (id != default(int) && disease != null)
                {
                    return(disease.Id == id);
                }

                return(disease == null);
            }
        }
        public async Task <UpdateDiseaseStatus> UpdateAsync(Contracts.Entities.Disease entity)
        {
            using (var context = new ControlSystemContext.ControlSystemContext())
            {
                var isUnique = await IsDiseaseNameUnique(entity.DiseaseName, 0);

                if (!isUnique)
                {
                    return(UpdateDiseaseStatus.NonUniqueName);
                }

                context.Update(entity);
                await context.SaveChangesAsync();

                return(UpdateDiseaseStatus.Success);
            }
        }
示例#12
0
        public async Task <AddIndicatorValueStatus> InsertAsync(IndicatorValue entity)
        {
            using (var context = new ControlSystemContext.ControlSystemContext())
            {
                var isExists = await IsDeviceIndicatorExist(entity.DeviceIndicatorId);

                if (!isExists)
                {
                    return(AddIndicatorValueStatus.DeviceIndicatorNotExists);
                }

                await context.AddAsync(entity);

                await context.SaveChangesAsync();

                return(AddIndicatorValueStatus.Success);
            }
        }
示例#13
0
        public async Task <bool> IsIndicatorsExist(IEnumerable <int> indicators)
        {
            using (var context = new ControlSystemContext.ControlSystemContext())
            {
                foreach (var indicator in indicators)
                {
                    var any = await context.Set <Indicator>()
                              .AnyAsync(s => s.Id == indicator);

                    if (!any)
                    {
                        return(false);
                    }
                }

                return(true);
            }
        }
        public async Task <CreateDeviceResult> InsertAsync(Contracts.Entities.Device entity)
        {
            using (var context = new ControlSystemContext.ControlSystemContext())
            {
                var isUserExists = await _userRepository.IsUserExist(entity.UserId);

                if (!isUserExists)
                {
                    return new CreateDeviceResult()
                           {
                               Status = CreateDeviceStatus.UserNotExists
                           }
                }
                ;

                var isIndicatorsExists = await _indicatorRepository
                                         .IsIndicatorsExist(entity.DeviceIndicators.Select(ind => ind.IndicatorId));

                if (!isIndicatorsExists)
                {
                    return new CreateDeviceResult()
                           {
                               Status = CreateDeviceStatus.IndicatorNotExists
                           }
                }
                ;

                await context.AddAsync(entity);

                await context.SaveChangesAsync();

                return(new CreateDeviceResult()
                {
                    Status = CreateDeviceStatus.Success,
                    DeviceId = entity.Id
                });
            }
        }