//----------------------------------------------------------------------- // // * Copyright (C) HT.Cloud.Framework All Rights Reserved // * version : 1.0 // * author : HT.Cloud.Framework // * FileName: Notice.cs // * history : Created by T4 04/13/2020 16:51:21 // //----------------------------------------------------------------------- using SqlSugar; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using HT.Cloud.Code; using HT.Cloud.DataBase; using HT.Cloud.Domain.SystemOrganize; namespace HT.Cloud.Service.SystemOrganize { public class NoticeService : BaseService, IDenpendency { public NoticeService(ISqlSugarClient context) : base(context) { } public async Task> GetList(string keyword) { var query = repository.IQueryable(); if (!string.IsNullOrEmpty(keyword)) { query = query.Where(a => a.F_Title.Contains(keyword) || a.F_Content.Contains(keyword)); } return await query.Where(a => a.F_DeleteMark == false).ToListAsync(); } public async Task> GetLookList(SoulPage pagination, string keyword = "") { //反格式化显示只能用"等于",其他不支持 Dictionary> dic = new Dictionary>(); Dictionary enabledDic = new Dictionary(); enabledDic.Add("1", "有效"); enabledDic.Add("0", "无效"); dic.Add("F_EnabledMark", enabledDic); pagination = ChangeSoulData(dic, pagination); var query = repository.IQueryable().Where(a => a.F_DeleteMark == false); if (!string.IsNullOrEmpty(keyword)) { query = query.Where(a => a.F_Title.Contains(keyword) || a.F_Content.Contains(keyword)); } //权限过滤(保证分页参数存在) query = GetDataPrivilege("a", "", query); return await query.ToPageListAsync(pagination); } public async Task GetLookForm(string keyValue) { var data = await repository.FindEntity(keyValue); return GetFieldsFilterData(data); } public async Task GetForm(string keyValue) { var data = await repository.FindEntity(keyValue); return data; } public async Task SubmitForm(NoticeEntity entity, string keyValue) { if (!string.IsNullOrEmpty(keyValue)) { entity.Modify(keyValue); await repository.Update(entity); } else { entity.F_CreatorUserName = currentuser.UserName; entity.F_DeleteMark = false; entity.Create(); await repository.Insert(entity); } } public async Task DeleteForm(string keyValue) { var ids = keyValue.Split(','); await repository.Delete(a => ids.Contains(a.F_Id)); } } }