| | |
| | | } |
| | | |
| | | |
| | | ///// <summary> |
| | | ///// 查询操作日志 |
| | | ///// </summary> |
| | | ///// <param name="menuName">菜单名称</param> |
| | | ///// <param name="type">类型</param> |
| | | ///// <param name="msg">内容</param> |
| | | ///// <param name="startTime">开始日期</param> |
| | | ///// <param name="endTime">结束日期</param> |
| | | ///// <param name="page"></param> |
| | | ///// <param name="limit"></param> |
| | | ///// <param name="count"></param> |
| | | ///// <returns></returns> |
| | | //public List<OperationDto> GetOperationSysList(string menuName, string type, string msg, string startTime, string endTime, int page, int limit, out int count) |
| | | //{ |
| | | // try |
| | | // { |
| | | // Expression<Func<LogOperationSys, bool>> item = Expressionable.Create<LogOperationSys>() |
| | | // .AndIF(!string.IsNullOrWhiteSpace(menuName), it => it.MenuName.Contains(menuName.Trim())) |
| | | // .AndIF(!string.IsNullOrWhiteSpace(type), it => it.Type == type) |
| | | // .AndIF(!string.IsNullOrWhiteSpace(msg), it => it.Msg.Contains(msg.Trim())) |
| | | // .AndIF(!string.IsNullOrWhiteSpace(startTime), it => it.CreateTime >= Convert.ToDateTime(startTime)) |
| | | // .AndIF(!string.IsNullOrWhiteSpace(endTime), it => it.CreateTime <= Convert.ToDateTime(startTime).AddDays(1)) |
| | | // .ToExpression();//注意 这一句 不能少 |
| | | /// <summary> |
| | | /// 查询操作日志 |
| | | /// </summary> |
| | | /// <param name="menuName">菜单名称</param> |
| | | /// <param name="type">类型</param> |
| | | /// <param name="msg">内容</param> |
| | | /// <param name="startTime">开始日期</param> |
| | | /// <param name="endTime">结束日期</param> |
| | | /// <param name="page"></param> |
| | | /// <param name="limit"></param> |
| | | /// <param name="count"></param> |
| | | /// <returns></returns> |
| | | public List<OperationDto> GetOperationList(string menuName, string type, string msg, string startTime, string endTime, int page, int limit, out int count) |
| | | { |
| | | try |
| | | { |
| | | var total = 0; |
| | | #region asn |
| | | |
| | | // var data = GetAllWhereAsync(item) |
| | | // .Includes(x => x.TypeInfo) |
| | | // .Includes(x => x.CreateUserInfo) |
| | | // .Includes(x => x.UpdateUserInfo).ToList(); |
| | | // count = data.Count; |
| | | // return data.Select(m => new OperationDto() |
| | | // { |
| | | // Id = m.Id, |
| | | // ParentNo = m.ParentNo, |
| | | // MenuNo = m.MenuNo, |
| | | // MenuName = m.MenuName, |
| | | // FkNo = m.FkNo, |
| | | // Type = m.TypeInfo == null ? "" : m.TypeInfo.DictName, |
| | | // Msg = m.Msg, |
| | | // CreateTime = m.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | // CreateUserName = m.CreateUserInfo == null ? "" : m.CreateUserInfo.UserName, |
| | | // UpdateTime = m.UpdateTime == null ? "" : ((DateTime)m.UpdateTime).ToString("yyyy-MM-dd HH:mm:ss"), |
| | | // UpdateUserName = m.UpdateUserInfo == null ? "" : m.UpdateUserInfo.UserName |
| | | // }).ToList(); |
| | | // } |
| | | // catch (Exception e) |
| | | // { |
| | | // throw new Exception(e.Message); |
| | | // } |
| | | //} |
| | | var item = Expressionable.Create<LogOperationASN>() |
| | | .AndIF(!string.IsNullOrWhiteSpace(menuName), it => it.MenuName.Contains(menuName.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(type), it => it.Type == type) |
| | | .AndIF(!string.IsNullOrWhiteSpace(msg), it => it.Msg.Contains(msg.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(startTime), it => it.CreateTime >= Convert.ToDateTime(startTime)) |
| | | .AndIF(!string.IsNullOrWhiteSpace(endTime), it => it.CreateTime <= Convert.ToDateTime(endTime).AddDays(1)) |
| | | .And(it=>it.IsDel == "0") |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list = Db.Queryable<LogOperationASN>().Where(item) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | #region so |
| | | |
| | | var item2 = Expressionable.Create<LogOperationSO>() |
| | | .AndIF(!string.IsNullOrWhiteSpace(menuName), it => it.MenuName.Contains(menuName.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(type), it => it.Type == type) |
| | | .AndIF(!string.IsNullOrWhiteSpace(msg), it => it.Msg.Contains(msg.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(startTime), it => it.CreateTime >= Convert.ToDateTime(startTime)) |
| | | .AndIF(!string.IsNullOrWhiteSpace(endTime), it => it.CreateTime <= Convert.ToDateTime(endTime).AddDays(1)) |
| | | .And(it => it.IsDel == "0") |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list2 = Db.Queryable<LogOperationSO>().Where(item2) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | #region cr |
| | | |
| | | var item3 = Expressionable.Create<LogOperationCR>() |
| | | .AndIF(!string.IsNullOrWhiteSpace(menuName), it => it.MenuName.Contains(menuName.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(type), it => it.Type == type) |
| | | .AndIF(!string.IsNullOrWhiteSpace(msg), it => it.Msg.Contains(msg.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(startTime), it => it.CreateTime >= Convert.ToDateTime(startTime)) |
| | | .AndIF(!string.IsNullOrWhiteSpace(endTime), it => it.CreateTime <= Convert.ToDateTime(endTime).AddDays(1)) |
| | | .And(it => it.IsDel == "0") |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list3 = Db.Queryable<LogOperationCR>().Where(item3) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | #region sys |
| | | |
| | | var item4 = Expressionable.Create<LogOperationSys>() |
| | | .AndIF(!string.IsNullOrWhiteSpace(menuName), it => it.MenuName.Contains(menuName.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(type), it => it.Type == type) |
| | | .AndIF(!string.IsNullOrWhiteSpace(msg), it => it.Msg.Contains(msg.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(startTime), it => it.CreateTime >= Convert.ToDateTime(startTime)) |
| | | .AndIF(!string.IsNullOrWhiteSpace(endTime), it => it.CreateTime <= Convert.ToDateTime(startTime).AddDays(1)) |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | var list4 = Db.Queryable<LogOperationSys>().Where(item4) |
| | | .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString()) |
| | | .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id) |
| | | .Select((it, dic, users) => new OperationDto() |
| | | { |
| | | Id = it.Id, |
| | | ParentNo = it.ParentNo, |
| | | MenuNo = it.MenuNo, |
| | | MenuName = it.MenuName, |
| | | FkNo = it.FkNo, |
| | | Type = dic.DictName, |
| | | Msg = it.Msg, |
| | | CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | CreateUserName = users.RealName, |
| | | }); |
| | | |
| | | #endregion |
| | | |
| | | var data = Db.UnionAll(list, list2, list3, list4).OrderByDescending(it => it.CreateTime) |
| | | .ToOffsetPage(page, limit, ref total); |
| | | count = total; |
| | | return data.OrderByDescending(m => m.CreateTime).ToList(); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | throw new Exception(e.Message); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 添加操作日志 |