51 lines
2.3 KiB
C#
51 lines
2.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using WX.CRM.BLL.Util;
|
|
using WX.CRM.Common;
|
|
using WX.CRM.IBLL.Base;
|
|
|
|
namespace WX.CRM.BLL.Base
|
|
{
|
|
public class BAS_INNERUSER_EXT_LOG_BL : IBAS_INNERUSER_EXT_LOG_Q
|
|
{
|
|
public List<WX.CRM.Model.Entity.BAS_INNERUSER_EXT_LOG> GetUserExtLog(ref Pager pager, string innerGroupId, decimal inneruserid, decimal? extendtype)
|
|
{
|
|
using (WX.CRM.Model.Entity.crmContext db = new WX.CRM.Model.Entity.crmContext())
|
|
{
|
|
IQueryable<WX.CRM.Model.Entity.BAS_INNERUSER_EXT_LOG> queryData = db.BAS_INNERUSER_EXT_LOG.AsQueryable();
|
|
|
|
if (!string.IsNullOrWhiteSpace(innerGroupId) && innerGroupId != "0")
|
|
{
|
|
if (innerGroupId.IndexOf(",") == -1)//只有单个groupId
|
|
{
|
|
decimal iInnerGroupId = Convert.ToDecimal(innerGroupId);
|
|
queryData = queryData.Where(a => db.BAS_INNERUSERGROUP.Where(x => x.GID == iInnerGroupId).Select(m => m.INNERUSERID).Contains(a.PKID));
|
|
}
|
|
else//含有多个groupID
|
|
{
|
|
string[] iInnerGroupId = innerGroupId.Split(',');
|
|
decimal[] innerGroupIds = new decimal[iInnerGroupId.Length];
|
|
for (int i = 0; i < iInnerGroupId.Length; i++)
|
|
{
|
|
innerGroupIds[i] = Convert.ToDecimal(iInnerGroupId[i]);
|
|
}
|
|
queryData = queryData.Where(a => db.BAS_INNERUSERGROUP.Where(x => innerGroupIds.Contains(x.GID.Value)).Select(m => m.INNERUSERID).Contains(a.PKID));
|
|
}
|
|
}
|
|
if (inneruserid > 0)
|
|
{
|
|
queryData = queryData.Where(m => m.INNERUSERID == inneruserid);
|
|
}
|
|
if (extendtype.HasValue)
|
|
{
|
|
queryData = queryData.Where(m => m.EXTENDTYPE == extendtype);
|
|
}
|
|
queryData = queryData.OrderByDescending(m => m.UTIME);
|
|
PagerUtil.SetPager<WX.CRM.Model.Entity.BAS_INNERUSER_EXT_LOG>(ref queryData, ref pager);//分页
|
|
return queryData.ToList();
|
|
}
|
|
}
|
|
}
|
|
}
|