internal static IEnumerable <Dto.MoralItem.List> SelectList(int groupId, Code.EnumHelper.MoralItemKind moralItemKind) { using (var db = new XkSystem.Models.DbContext()) { return((from p in db.Table <Moral.Entity.tbMoralItem>() where p.tbMoralGroup.Id == groupId && p.MoralItemKind == moralItemKind select new Dto.MoralItem.List() { Id = p.Id, MoralItemOperateType = p.MoralItemOperateType, MoralGroupId = p.tbMoralGroup.Id, DefaultValue = p.DefaultValue, MoralItemName = p.MoralItemName, }).ToList()); } }
internal static List <Dto.MoralItem.Info> SelectListByMoralIdAndKind(int moralId, Code.EnumHelper.MoralItemKind moralItemKind) { using (var db = new XkSystem.Models.DbContext()) { return((from p in db.Table <Moral.Entity.tbMoralItem>() where p.tbMoralGroup.tbMoral.Id == moralId && p.MoralItemKind == moralItemKind select new Dto.MoralItem.Info() { Id = p.Id, MoralItemName = p.MoralItemName, MoralGroupId = p.tbMoralGroup.Id, DefaultValue = p.DefaultValue, MaxScore = p.MaxScore, MinScore = p.MinScore, InitScore = p.InitScore }).ToList()); } }
internal static List <Dto.MoralGroup.Info> GetMoralGroupInfoList(int moralId, Code.EnumHelper.MoralItemKind kind) { using (var db = new XkSystem.Models.DbContext()) { var tb = (from p in db.Table <Moral.Entity.tbMoralGroup>() where p.tbMoral.Id == moralId select p); return((from p in tb join i in db.Table <Moral.Entity.tbMoralItem>() on p.Id equals i.tbMoralGroup.Id into item from r in item.DefaultIfEmpty() where r.MoralItemKind == kind group r by new { p.Id, p.MoralGroupName } into result select new Dto.MoralGroup.Info() { Id = result.Key.Id, MoralGroupName = result.Key.MoralGroupName, MoralItemCount = result.Count(r => r.tbMoralGroup != null) }).ToList()); } }