public AdvancedQuery(IMonDatabase db, string accountId) { this.DB = db; this.Query = db.GetCollection <TModel>().MongoCollection .Find(x => x.Account.Id.Equals(accountId)) .ToEnumerable() .AsQueryable(); }
public TModel Concrete(IMonDatabase database) { if (database == null) { throw new ArgumentNullException(nameof(database)); } return(Concrete(database.GetNodeRepository <TModel, TKey>())); }
public TModel Concrete(IMonDatabase database) { if (database == null) { throw new ArgumentNullException(nameof(database)); } return(Concrete(database.GetCollection <TModel>())); }
public IActionResult Item(string id) { IMonDatabase db = this.ViewBag.DB = this.GetMonDatabase(); this.ViewBag.Logs = this.Logs <Talent, string>(x => x.Model.Id.Equals(id)) .OrderByDescending(x => x.Id) .Take(5) .Select(x => $"<div>{x.Action} By <strong>{x.User.Concrete(db)}</strong></div><div class=\"text-muted text-right\">{x.CreateAt}</div>"); var model = this.GetMonCollection <Talent>().FindOne(x => x.Id.Equals(id)); return(View(model)); }
public IActionResult Index(string search, string[] name, string[] client, string[] function, string[] manager, string[] consultant, string orderBy, string orderDirection, int page = 1) { var begin = DateTime.Now; IMonDatabase db = this.ViewBag.DB = this.GetMonDatabase(); var query = new ProjectAdvancedQuery(db, this.CurrentAccount().Id) .Search(search) .Name(name) .Client(client) .Function(function) .Manager(manager) .Consultant(consultant) .Query; if (!string.IsNullOrEmpty(orderBy)) { if (orderBy.Equals("Client", StringComparison.CurrentCultureIgnoreCase)) { query = query.Order(x => x.Client, x => x.Name, db, orderDirection); } else if (orderBy.Equals("Function", StringComparison.CurrentCultureIgnoreCase)) { query = query.Order(x => x.Functions.FirstOrDefault(), x => x.Name, db, orderDirection); } else if (orderBy.Equals("Manager", StringComparison.CurrentCultureIgnoreCase)) { query = query.Order(x => x.Manager, x => x.Name, db, orderDirection); } else { query = query.Order(orderBy, orderDirection); } } else { query = query.OrderByDescending(x => x.Id); } var models = query.Page(page, 15, (data) => this.ViewBag.PageData = data); this.ViewBag.Elapsed = (DateTime.Now - begin).TotalSeconds; return(View(models)); }
public static IQueryable <TModel1> Order <TModel1, TModel2, TProperty2>(this IQueryable <TModel1> query, Func <TModel1, IMonNodeModelRef <TModel2, string> > selector1, Func <TModel2, TProperty2> selector2, IMonDatabase db, string direction) where TModel1 : class, IMonModel <string> where TModel2 : class, IMonNodeModel <TModel2, string> where TProperty2 : class, IComparable { if (query == null) { throw new ArgumentNullException(nameof(query)); } return(query.Order <TModel1, string, TModel2, string, TProperty2>(selector1, selector2, db, direction)); }
public IActionResult Index(string search, string[] name, string[] industry, string[] type, string[] status, string orderBy, string orderDirection, int page = 1) { var begin = DateTime.Now; IMonDatabase db = this.ViewBag.DB = this.GetMonDatabase(); var query = new CompanyAdvancedQuery(db, this.CurrentAccount().Id) .Search(search) .Name(name) .Industry(industry) .Type(type) .Status(status) .Query; if (!string.IsNullOrEmpty(orderBy)) { if (orderBy.Equals("Industry", StringComparison.CurrentCultureIgnoreCase)) { query = query.Order(x => x.Industries.FirstOrDefault(), x => x.Name, db, orderDirection); } else { query = query.Order(orderBy, orderDirection); } } else { query = query.OrderByDescending(x => x.Id); } var models = query.Page(page, 15, (data) => this.ViewBag.PageData = data); this.ViewBag.Elapsed = (DateTime.Now - begin).TotalSeconds; return(View(models)); }
public static IQueryable <TModel1> Order <TModel1, TKey1, TModel2, TKey2, TProperty2>(this IQueryable <TModel1> query, Func <TModel1, IMonNodeModelRef <TModel2, TKey2> > selector1, Func <TModel2, TProperty2> selector2, IMonDatabase db, string direction) where TModel1 : class, IMonModel <TKey1> where TModel2 : class, IMonNodeModel <TModel2, TKey2> where TProperty2 : class, IComparable { if (query == null) { throw new ArgumentNullException(nameof(query)); } var comparer = new NodeRefComparer <TModel2, TKey2, TProperty2>().SetDB(db).SetKeySelector(selector2); return(query.Order <TModel1, TKey1, IMonNodeModelRef <TModel2, TKey2> >(selector1, comparer, direction)); }
public MvcJsonModelRefConfiguration(IMonDatabase database) { this.Database = database; }
public MonCollection(IMonDatabase database, IMongoCollection <TModel> mongoCollection) { this.Database = database; this.MongoCollection = mongoCollection; }
public MongoUserStore(IMonDatabase database) { this.Database = database; }
public AdvancedQuery2(IMonDatabase db, string accountId) { this.DB = db; this.AddFilter(this.Filter.Eq("Account._id", accountId)); }
public MongoRoleStore(IMonDatabase database) { this.Database = database; }
public IActionResult Index(string search, string[] company, string[] previousCompany, string[] title, string[] inChargeOf, string[] grade, string[] industry, string[] crossIndustry, string[] function, string[] crossFunction, string[] crossCategory, string[] crossChannel, string[] brandsHadManaged, string[] KAHadManaged, string[] currentLocation, string[] mobilityLocation, int[] gender, int[] education, int[] language, int[] nationality, int[] jobIntension, string[] cv, string[] notes, string orderBy, string orderDirection, int page = 1) { var begin = DateTime.Now; IMonDatabase db = this.ViewBag.DB = this.GetMonDatabase(); var query = new TalentAdvancedQuery2(db, this.CurrentAccount().Id) .Search(search) .Company(company) .PreviousCompany(previousCompany) .Title(title) .InChargeOf(inChargeOf) .Grade(grade) .Industry(industry) .CrossIndustry(crossIndustry) .Function(function) .CrossFunction(crossFunction) .CrossCategory(crossCategory) .CrossChannel(crossChannel) .BrandsHadManaged(brandsHadManaged) .KAHadManaged(KAHadManaged) .CurrentLocation(currentLocation) .MobilityLocation(mobilityLocation) .Gender(gender) .Education(education) .Language(language) .Nationality(nationality) .JobIntension(jobIntension) .CV(cv) .Notes(notes) .QueryModels().AsQueryable(); if (!string.IsNullOrEmpty(orderBy)) { if (orderBy.Equals("Company", StringComparison.CurrentCultureIgnoreCase)) { query = query.Order(x => x.Experiences.Find(y => y.CurrentJob == true)?.Company, x => x.Name, db, orderDirection); } else if (orderBy.Equals("Title", StringComparison.CurrentCultureIgnoreCase)) { query = query.Order(x => x.Experiences.Find(y => y.CurrentJob == true)?.Title, orderDirection); } else if (orderBy.Equals("CurrentLocation", StringComparison.CurrentCultureIgnoreCase)) { query = query.Order(x => x.CurrentLocations.FirstOrDefault(), x => x.Name, db, orderDirection); } else { query = query.Order(orderBy, orderDirection); } } else { query = query.OrderByDescending(x => x.Id); } var models = query.Page(page, 15, (data) => this.ViewBag.PageData = data); this.ViewBag.Elapsed = (DateTime.Now - begin).TotalSeconds; return(View(models)); }
public CompanyAdvancedQuery(IMonDatabase db, string accountId) : base(db, accountId) { }
public MongoAccountStore(IMonDatabase database) { this.Database = database; }
public ProjectAdvancedQuery(IMonDatabase db, string accountId) : base(db, accountId) { }
public NodeRefComparer <TModel, TKey, TProperty> SetDB(IMonDatabase db) { this.DB = db; return(this); }
public Logger(IMonDatabase db) { this.DB = db; }
public TalentAdvancedQuery(IMonDatabase db, string accountId) : base(db, accountId) { }
public JsonNodeModelRefConverter(IMonDatabase database) { this.Database = database; }
public MonNodeRepository(IMonDatabase database, IMongoCollection <TModel> mongoCollection) : base(database, mongoCollection) { }
public MonGridFSBucket(IMonDatabase database, IGridFSBucket bucket) { this.Database = database; this.Bucket = bucket; }