using System; using System.Linq; using System.Text; using System.Data.Common; using System.Linq.Expressions; using System.Collections.Generic; using System.Threading.Tasks; using YiSha.Util; using YiSha.Util.Extension; using YiSha.Util.Model; using YiSha.Data; using YiSha.Data.Repository; using YiSha.Enum; using System.ComponentModel.DataAnnotations.Schema; using YiSha.Entity.TK; using YiSha.Model.Param.TK; using YiSha.IService.TK; using YiSha.Web.Code; using YiSha.Model.Result.TK; using YiSha.Enum.ZX; namespace YiSha.Service.TK { /// /// 创 建:cmzx /// 日 期:2021-04-20 16:57 /// 描 述:图库管理服务实现类(部分类) /// public partial class GalleryManagerModelsService { private IRepositoryFactory _baseRepository; public GalleryManagerModelsService(IRepositoryFactory baseRepository) { _baseRepository = baseRepository; } /// /// 获取分页数据 /// /// 请求参数 /// 分页条件 /// public async Task> GetPageListPartial(GalleryManagerModelsListParam param, Pagination pagination) { var parameters = new List(); var sql = SqlPageList(param, pagination, out parameters); var list = await _baseRepository.BaseRepository(dbConnectType).FindList(sql, parameters.ToArray()); return list.ToList(); } /// /// 保存数据(由于之前数据库设计不规范,无法实现在新增、修改时保存正确的操作用户信息,每张表的创建时间和创建人id、创建人姓名都不一样,且这些字段是必填项) /// /// 实体参数 /// public async Task SaveFormPartial(GalleryManagerModelsEntity entity) { OperatorInfo user = await Operator.Instance.Current(entity.Token); if (entity.Id.IsNullOrZero()) { entity.createTime = DateTime.Now; entity.createUserId = user?.UserId; entity.createUserName = user?.UserName; return await _baseRepository.BaseRepository(dbConnectType).Insert(entity); } else { return await _baseRepository.BaseRepository(dbConnectType).Update(entity); } } #region 私有方法 /// /// 列表条件过滤 /// 建议该方法放在Partial部分类中,因为代码生成时当前类会被覆盖(该方法在生成时将会被注释) /// /// /// private Expression> ListFilterPartial(GalleryManagerModelsListParam param) { var expression = LinqExtensions.True(); if (param != null) { } return expression; } /// /// 获取分页Sql语句 /// /// /// private string SqlPageList(GalleryManagerModelsListParam param, Pagination pagination, out List parameters) { parameters = new List(); var where = new StringBuilder(); where.Append($" 1 = 1 and isDelete = {TkIsDeleteEnum.正常.ParseToInt()} "); if (param != null) { if (!string.IsNullOrEmpty(param.GalleryName)) { where.Append(" and galleryName like @GalleryName "); parameters.Add(DbParameterExtension.CreateDbParameter("@GalleryName", $"%{param.GalleryName}%", dbConnectType)); } //if (param.ViewType != null) //{ // where.Append(" and ViewType = @ViewType "); // parameters.Add(DbParameterExtension.CreateDbParameter("@ViewType", param.ViewType.ParseToInt(), dbConnectType)); //} } //获取分页数据Sql var pageSql = $@"select * from galleryManagerModels where {where.ToString()}"; //统计总数据Sql var totalSql = $@"select count(1) from galleryManagerModels where {where.ToString()}"; pageSql = SqlserverHelper.GetInstance.SqlPageList(pageSql, totalSql, pagination); return pageSql; } #endregion } }