using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using WalkingTec.Mvvm.Core; using WalkingTec.Mvvm.Core.Extensions; using Microsoft.EntityFrameworkCore; using System.ComponentModel.DataAnnotations; using cy_scdz.Model.Set; namespace cy_scdz.ViewModel.dictionary.DictionaryVMs { public partial class DictionaryListVM : BasePagedListVM { protected override List InitGridAction() { return new List { this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.Create, Localizer["Sys.Create"],"dictionary", dialogWidth: 800), this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.Edit, Localizer["Sys.Edit"], "dictionary", dialogWidth: 800), this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.Delete, Localizer["Sys.Delete"], "dictionary", dialogWidth: 800), this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.Details, Localizer["Sys.Details"], "dictionary", dialogWidth: 800), this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.BatchEdit, Localizer["Sys.BatchEdit"], "dictionary", dialogWidth: 800), this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.BatchDelete, Localizer["Sys.BatchDelete"], "dictionary", dialogWidth: 800), this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.Import, Localizer["Sys.Import"], "dictionary", dialogWidth: 800), this.MakeStandardAction("Dictionary", GridActionStandardTypesEnum.ExportExcel, Localizer["Sys.Export"], "dictionary"), }; } protected override IEnumerable> InitGridHeader() { return new List>{ this.MakeGridHeader(x => x.Name), this.MakeGridHeader(x => x.Key), this.MakeGridHeader(x => x.Value), this.MakeGridHeader(x => x.IsEn), this.MakeGridHeader(x => x.Name_view), this.MakeGridHeaderAction(width: 200) }; } public override IOrderedQueryable GetSearchQuery() { var query = DC.Set() .CheckContain(Searcher.Name, x=>x.Name) .CheckContain(Searcher.Key, x=>x.Key) .CheckEqual(Searcher.IsEn, x=>x.IsEn) .CheckEqual(Searcher.ParentId, x=>x.ParentId) .Select(x => new Dictionary_View { ID = x.ID, Name = x.Name, Key = x.Key, Value = x.Value, IsEn = x.IsEn, Name_view = x.Parent.Name, }) .OrderBy(x => x.ID); return query; } } public class Dictionary_View : Dictionary{ [Display(Name = "上级名称")] public String Name_view { get; set; } } }