修改事项权限

master
leo 3 years ago
parent 92f6fdf923
commit cc7d09212e

@ -292,6 +292,12 @@ namespace FactorySystemBll
List<string> taskTypeList = taskTypes.Split(',').ToList();
if (string.IsNullOrEmpty(factoryId))
{
TFS_FTeamwork team = db.Queryable<TFS_FTeamwork>().Where(t => t.FID == teamId).First();
if (team != null) factoryId = team.FCreateFactoryID.ToString();
}
List<TBasicCode> basicCodeList = db.Queryable<TBasicCode>().Where(s => s.FType == (int)Constant.BasicCode.
&& s.FState == 1 && taskTypeList.Contains(s.FValue)).ToList();
@ -321,11 +327,23 @@ namespace FactorySystemBll
}
if (funcType > 0)
{
List<TUser> users = db.Queryable<TUser, TRole_Right, FPower>((a, b, c) => new JoinQueryInfos(JoinType.Left, a.FRoleID == b.FRoleID,
JoinType.Left, a.FID == int.Parse(c.FUserID)))
.Where((a, b) => a.FState == 1 && a.FDeleted != 1 && b.FType == funcType && funcVal.Contains(b.FFunctionID.ToString()))
.Where(string.IsNullOrEmpty(factoryId) ? "1=1" : string.Format("c.FFactoryID in({0})", factoryId))
.GroupBy("a.FID,c.FFactoryID,a.FName,a.FUser").Select<TUser>("a.FID,c.FFactoryID,a.FName,a.FUser").ToList();
//List<TUser> users = db.Queryable<TUser, TRole_Right, FPower>((a, b, c) => new JoinQueryInfos(JoinType.Left, a.FRoleID == b.FRoleID,
// JoinType.Left, a.FID == int.Parse(c.FUserID)))
// .Where((a, b) => a.FState == 1 && a.FDeleted != 1 && b.FType == funcType && funcVal.Contains(b.FFunctionID.ToString()))
// .Where(string.IsNullOrEmpty(factoryId) ? "1=1" : string.Format("c.FFactoryID in({0})", factoryId))
// .GroupBy("a.FID,c.FFactoryID,a.FName,a.FUser").Select<TUser>("a.FID,cast(c.FFactoryID as int),a.FName,a.FUser").ToList();
List<TUser> users = db.Queryable <FPower, TUser, TRole_Right>((a, b, c) => new JoinQueryInfos(
JoinType.Left, a.FUserID.Equals(b.FID.ToString()),
JoinType.Left, a.FRole.Equals(c.FRoleID.ToString())
))
.Where((a, b, c) => factoryId.Contains(a.FFactoryID))
.Where((a, b, c) => b.FState == 1 && b.FDeleted != 1)
.Where((a, b, c) => c.FType == funcType && funcVal.Contains(c.FFunctionID.ToString()))
.GroupBy("b.FID, a.FFactoryID, b.FName, b.FUser")
.Select<TUser>("b.FID, cast(a.FFactoryID as int), b.FName, b.FUser")
.ToList();
if (users.Count() > 0)
{
if (string.IsNullOrEmpty(factoryId))
@ -485,6 +503,12 @@ namespace FactorySystemBll
List<MessageDto> messageList = new List<MessageDto>();
try
{
if (string.IsNullOrEmpty(factoryId))
{
TFS_HalfMaterialFTeamwork team = db.Queryable<TFS_HalfMaterialFTeamwork>().Where(t => t.FID == teamId).First();
if (team != null) factoryId = team.FCreateFactoryID.ToString();
}
if (db == null) db = AppSettingsHelper.GetSqlSugar();
List<string> taskTypeList = taskTypes.Split(',').ToList();
@ -518,11 +542,23 @@ namespace FactorySystemBll
}
if (funcType > 0)
{
List<TUser> users = db.Queryable<TUser, TRole_Right, FPower>((a, b, c) => new JoinQueryInfos(JoinType.Left, a.FRoleID == b.FRoleID,
JoinType.Left, a.FID == int.Parse(c.FUserID)))
.Where((a, b) => a.FState == 1 && a.FDeleted != 1 && b.FType == funcType && funcVal.Contains(b.FFunctionID.ToString()))
.Where(string.IsNullOrEmpty(factoryId) ? "1=1" : string.Format("c.FFactoryID in({0})", factoryId))
.GroupBy("a.FID,c.FFactoryID,a.FName,a.FUser").Select<TUser>("a.FID,c.FFactoryID,a.FName,a.FUser").ToList();
//List<TUser> users = db.Queryable<TUser, TRole_Right, FPower>((a, b, c) => new JoinQueryInfos(JoinType.Left, a.FRoleID == b.FRoleID,
// JoinType.Left, a.FID == int.Parse(c.FUserID)))
// .Where((a, b) => a.FState == 1 && a.FDeleted != 1 && b.FType == funcType && funcVal.Contains(b.FFunctionID.ToString()))
// .Where(string.IsNullOrEmpty(factoryId) ? "1=1" : string.Format("c.FFactoryID in({0})", factoryId))
// .GroupBy("a.FID,c.FFactoryID,a.FName,a.FUser").Select<TUser>("a.FID,c.FFactoryID,a.FName,a.FUser").ToList();
List<TUser> users = db.Queryable<FPower, TUser, TRole_Right>((a, b, c) => new JoinQueryInfos(
JoinType.Left, a.FUserID.Equals(b.FID.ToString()),
JoinType.Left, a.FRole.Equals(c.FRoleID.ToString())
))
.Where((a, b, c) => factoryId.Contains(a.FFactoryID))
.Where((a, b, c) => b.FState == 1 && b.FDeleted != 1)
.Where((a, b, c) => c.FType == funcType && funcVal.Contains(c.FFunctionID.ToString()))
.GroupBy("b.FID, a.FFactoryID, b.FName, b.FUser")
.Select<TUser>("b.FID, cast(a.FFactoryID as int), b.FName, b.FUser")
.ToList();
if (users.Count() > 0)
{
if (string.IsNullOrEmpty(factoryId))

@ -58,11 +58,22 @@ namespace FactorySystemBll
try
{
List<string> funcVal = db.Queryable<TBasicCode>().Where(s => s.FType == (int)Constant.BasicCode. && s.F1 == tType && s.FState == 1).Select(s => s.FValue).ToList();
List<TUser> users = db.Queryable<TUser, TRole_Right, FPower>((a, b, c) => new JoinQueryInfos(JoinType.Left, a.FRoleID == b.FRoleID,
JoinType.Left, a.FID == int.Parse(c.FUserID)))
.Where((a, b) => a.FState == 1 && a.FDeleted != 1 && b.FType == funcType && funcVal.Contains(b.FFunctionID.ToString()))
.Where(factoryId<=0 ? "1=1" : string.Format("c.FFactoryID in({0})", factoryId))
.GroupBy("a.FID,c.FFactoryID,a.FName,a.FUser").Select<TUser>("a.FID,c.FFactoryID,a.FName,a.FUser").ToList();
//List<TUser> users = db.Queryable<TUser, TRole_Right, FPower>((a, b, c) => new JoinQueryInfos(JoinType.Left, a.FRoleID == b.FRoleID,
// JoinType.Left, a.FID == int.Parse(c.FUserID)))
// .Where((a, b) => a.FState == 1 && a.FDeleted != 1 && b.FType == funcType && funcVal.Contains(b.FFunctionID.ToString()))
// .Where(factoryId<=0 ? "1=1" : string.Format("c.FFactoryID in({0})", factoryId))
// .GroupBy("a.FID,c.FFactoryID,a.FName,a.FUser").Select<TUser>("a.FID,c.FFactoryID,a.FName,a.FUser").ToList();
List<TUser> users = db.Queryable<FPower, TUser, TRole_Right>((a, b, c) => new JoinQueryInfos(
JoinType.Left, a.FUserID.Equals(b.FID.ToString()),
JoinType.Left, a.FRole.Equals(c.FRoleID.ToString())
))
.Where((a, b, c) => factoryId.ToString().Contains(a.FFactoryID))
.Where((a, b, c) => b.FState == 1 && b.FDeleted != 1)
.Where((a, b, c) => c.FType == funcType && funcVal.Contains(c.FFunctionID.ToString()))
.GroupBy("b.FID, a.FFactoryID, b.FName, b.FUser")
.Select<TUser>("b.FID, cast(a.FFactoryID as int), b.FName, b.FUser")
.ToList();
if (users.Count > 0)
{

Loading…
Cancel
Save