예제 #1
0
 public static async Task <IList <Problem> > GetAllUnaccepted()
 {
     using (var problemRepository = new ProblemRepository())
     {
         return(await problemRepository.GetAllUnaccepted());
     }
 }
예제 #2
0
 public static async Task <Problem> GetAsync(Guid id)
 {
     using (var problemRepository = new ProblemRepository())
     {
         return(await problemRepository.GetAsync(id));
     }
 }
예제 #3
0
        public IEnumerable <Problem> GetAllProblems()
        {
            ProblemRepository     problem  = new ProblemRepository(Startup.connectionString);
            IEnumerable <Problem> problems = problem.GetAllProblems();

            return(problems);
        }
예제 #4
0
 public ServiceProblem(IConfiguration config)
 {
     this.serviceZabbix = new ServiceZabbix();
     this.serviceUser   = new ServiceUser(config);
     this.problemRepo   = new ProblemRepository(config);
     this.userRepo      = new UserRepository(config);
 }
예제 #5
0
 public static async Task <Problem> UpdateAsync(Problem problem)
 {
     using (var problemRepository = new ProblemRepository())
     {
         return(await problemRepository.UpdateAsync(problem));
     }
 }
        public ProblemRepositoryTest()
        {
            // Perform factory set up (once for entire test run)
            IGenerationSessionFactory factory = AutoPocoContainer.Configure(x =>
            {
                x.Conventions(c => c.UseDefaultConventions());
                x.AddFromAssemblyContainingType <Member>();

                x.Include <Member>()
                .Setup(m => m.Id).Use <ObjectIdDataSource>()
                .Setup(m => m.OpenId).Random(5, 10)
                .Setup(m => m.UserName).Random(5, 7);

                x.Include <Problem>()
                .Setup(p => p.Id).Use <ObjectIdDataSource>()
                .Setup(p => p.Text).Use <LoremIpsumSource>()
                .Setup(p => p.Title).Random(7, 12);

                x.Include <Response>()
                .Setup(r => r.Text).Use <LoremIpsumSource>();
            });

            // Generate one of these per test (factory will be a static variable most likely)
            _session = factory.CreateSession();

            _conn = new DbConnexion("Test_LittleProblem");
            _problemRepository = new ProblemRepository(_conn);
            _problemCollection = _conn.Collection <Problem>(CollectionNames.Problem);
        }
예제 #7
0
        public void OnGet()
        {
            Keywords = _keyword.GetKeywords();

            int pageId = Convert.ToInt32(Request.RouteValues["id"]);

            Problems = ProblemRepository.GetId(pageId);
        }
예제 #8
0
        public void PostProblem(string id)
        {
            Problem problem = new Problem {
                problem = id
            };
            ProblemRepository problemRepository = new ProblemRepository(Startup.connectionString);

            problemRepository.Create(problem);
        }
예제 #9
0
        public static async Task <bool> DeleteAsync(Guid id)
        {
            using (var problemRepository = new ProblemRepository())
            {
                var problemToDelete = await problemRepository.GetAsync(id);

                return(await problemRepository.DeleteAsync(problemToDelete));
            }
        }
예제 #10
0
 public List <problem> SearchListProblem(FilterModel filter)
 {
     return(ProblemRepository.FindBy(p => p.status != 2 &&
                                     (filter.FromDate <= p.created_date && p.created_date <= filter.ToDate) &&
                                     (Equals(filter.Address, null) || p.apartment.address.Contains(filter.Address)) &&
                                     (Equals(filter.Building, null) || p.apartment.building.Contains(filter.Building)) &&
                                     (Equals(filter.NoApartment, null) || p.apartment.no_apartment.Contains(filter.NoApartment)) &&
                                     (filter.ProjectId == -1 || p.apartment.project_id == filter.ProjectId) &&
                                     (filter.Type == -1 || p.issue_id == filter.Type)).Include(p => p.apartment.project.project_content).Include(p => p.contract.user_profile1.user_profile_note).Include(p => p.problem_image).Include(p => p.problem_tracking).OrderByDescending(p => p.problem_id).ToList());
 }
예제 #11
0
        public void OnGet()
        {
            int pageIndex;

            //未输入页码时默认显示第一页
            if (Request.Query["page"].Count == 0)
            {
                pageIndex = 1;
            }
            else
            {
                pageIndex = Convert.ToInt32(Request.Query["page"][0]);
            }
            ProblemRepository repository = new ProblemRepository();

            problems   = repository.Get(pageIndex, pageSize);
            pageAmount = (repository.CountOfProblem() / pageSize) + 1;
        }
예제 #12
0
        public static async Task <Problem> AcceptProblem(Guid id)
        {
            using (var context = new Entities())
            {
                var problemRepository  = new ProblemRepository(context);
                var districtRepository = new DistrictRepository(context);

                var districts = await districtRepository.GetAllAsync().ConfigureAwait(false);

                var problem = await problemRepository.GetAsync(id, new[]
                {
                    nameof(Problem.Districts)
                });

                problem.UserId = Guid.Empty;
                foreach (var district in districts)
                {
                    problem.Districts.Add(district);
                }

                return(await problemRepository.UpdateAsync(problem));
            }
        }
        protected override void SetUp()
        {
            base.SetUp();

            settingsProvider = NewMock<ISettingsProvider>();
            localStorageHandler = NewMock<ILocalStorageHandler>();

            using (mocks.Record())
            {
                settingsProvider.Expect(f => f.Get<string>(SettingsKeys.ProblemRepositoryDir)).Return(TestDir);
            }

            localStorageRepository = new ProblemRepository(localStorageHandler, settingsProvider);
        }
 /// <summary>
 /// 删除异常信息
 /// </summary>
 /// <param name="ids">要删除的异常信息编号</param>
 /// <returns>业务操作结果</returns>
 public OperationResult DeleteProblems(params int[] ids)
 {
     return(ProblemRepository.Delete(ids));
 }
예제 #15
0
        public static void Main(string[] args)
        {
            //CreateHostBuilder(args).Build().Run();


            //利用Linq to EntityFramework,实现方法:
            //GetBy(IList < ProblemStatus > exclude, bool hasSummary, bool descByPublishTime),
            //该方法可以根据输入参数:
            //1.IList<ProblemStatus> exclude:不显示(排除)某些状态的求助
            //2.bool hasSummary:只显示已有总结的求助(如果传入值为true的话)
            //3.bool descByPublishTime:按发布时间正序还是倒序

            //实现方法:GetMessage(),靠将消息列表:
            //1.所有未读在已读前面
            //2.未读和已读各自按生成时间排序

            MessageRepository message  = new MessageRepository();
            IList <Message>   messages = message.GetMessage();

            ProblemRepository problem  = new ProblemRepository();
            IList <Problem>   problems = problem.GetBy(new List <ProblemStatus> {
                ProblemStatus.canceled
            }, true, true);



            //SqlDbContext context = new SqlDbContext();
            //var db = context.Database;  //DataBase从何来

            ////Create数据库的同时建立表结构,
            //db.EnsureCreated();

            ////Enusure:存在才删除,不存在才创建
            //db.EnsureDeleted();

            //db.Migrate();
            //类似于Update-Database: apply all pending migrations
            //本身不生成Migrations



            //利用EF,插入3个User对象
            //SqlDbContext context = new SqlDbContext();
            //User user1= new User
            //{
            //    Name = "叶飞",
            //    Password = 1234,
            //    IsMale = true,
            //    BCredit = 12,
            //    CreateTime = new DateTime(2021, 7, 27)

            //};
            //User user2 = new User
            //{
            //    Name = "韩佳宝",
            //    Password = 2345,
            //    IsMale = true,
            //    BCredit = 20,
            //    CreateTime = new DateTime(2021, 7, 1)
            //};
            //User user3 = new User
            //{
            //    Name = "夏康平",
            //    Password = 3456,
            //    IsMale = true,
            //    BCredit = 25,
            //    CreateTime = new DateTime(2021, 8, 1)
            //};
            //context.Add(user1);
            //context.Add(user2);
            //context.Add(user3);

            //通过主键找到其中一个User对象
            //User user = context.Find<User>(2);

            //修改该User对象的Name属性,将其同步到数据库
            //user.Name = "李腾";



            //不加载User对象,仅凭其Id用一句Update SQL语句完成上题
            //User user = new User { Id = 1 };
            //context.Attach<User>(user);
            //user.Name = "马云";

            //User user = new User { Id = 1 };
            //user.Name = "马花藤";
            //user.CreateTime = new DateTime(2021, 7, 27);
            //context.Update<User>(user);



            //删除该用户
            //User user = context.Find<User>(3);
            //context.Remove<User>(user);

            //context.SaveChanges();
        }
 /// <summary>
 /// 添加异常信息
 /// </summary>
 /// <param name="dtos">要添加的异常信息DTO信息</param>
 /// <returns>业务操作结果</returns>
 public OperationResult AddProblems(params ProblemDto[] dtos)
 {
     return(ProblemRepository.Insert(dtos));
 }
 /// <summary>
 /// 更新异常信息
 /// </summary>
 /// <param name="dtos">包含更新信息的异常DTO信息</param>
 /// <returns>业务操作结果</returns>
 public OperationResult EditProblems(params ProblemDto[] dtos)
 {
     return(ProblemRepository.Update(dtos));
 }
예제 #18
0
 public SingleModel()
 {
     _repository = new ProblemRepository();
 }
예제 #19
0
        public Problem GetProblemById(int id)
        {
            ProblemRepository problem = new ProblemRepository(Startup.connectionString);

            return(problem.Get(id));
        }
예제 #20
0
 public List <Problem> GetProblemList()
 {
     return(ProblemRepository.GetProblems());
 }
예제 #21
0
 public ProblemModel()
 {
     _problem = new ProblemRepository();
 }
예제 #22
0
 public void SaveProblem(problem problem)
 {
     ProblemRepository.Save(problem);
 }
예제 #23
0
 public problem GetProblemById(int id)
 {
     return(ProblemRepository.FindBy(p => p.problem_id == id).FirstOrDefault());
 }
예제 #24
0
 public NewModel()
 {
     _problemrepository = new ProblemRepository();
 }
예제 #25
0
 public List <Problem> GetProblemList(Category Category)
 {
     return(ProblemRepository.GetProblems(Category));
 }
예제 #26
0
 public Problem GetProblemByProblemId(string ProblemId, Category category)
 {
     return(ProblemRepository.GetProblems().FirstOrDefault(p => p.ProblemId.Equals(ProblemId) && p.Category.Equals(category)));
 }
예제 #27
0
 public ProblemAPIController()
 {
     _repo = new ProblemRepository();
 }
예제 #28
0
 public static IProblemRepository GetProblemRepository()
 {
     var m = new Mock<IDatabaseFactory>();
     var repo = new ProblemRepository(m.Object);
     return repo;
 }
예제 #29
0
        public CsvUnitOfWork()
        {
            var problems = CSVHelper.LoadProblems();

            Problems = new ProblemRepository(problems);
        }
 /// <summary>
 /// 检查异常信息是否存在
 /// </summary>
 /// <param name="predicate">检查谓语表达式</param>
 /// <param name="id">更新的异常信息编号</param>
 /// <returns>异常信息是否存在</returns>
 public bool CheckProblemExists(Expression <Func <Problem, bool> > predicate, int id = 0)
 {
     return(ProblemRepository.CheckExists(predicate, id));
 }
예제 #31
0
 public EditModel()
 {
     _repository = new ProblemRepository();
 }
예제 #32
0
 public NewModel()
 {
     _problemRepository = new ProblemRepository();
     _keyword           = new KeywordRepository();
 }