using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Central.Control.Domain;
using MES.Production.Service.IService;
namespace MES.Production.Service.ServiceImp
{
///
/// Service层用户授权接口
/// add 作者: 季健国 QQ:181589805 by 2016-05-22
///
public class UserPermissionManage : RepositoryBase,IService.IUserPermissionManage
{
IPermissionManage PermissionManage { get; set; }
///
/// 保存用户权限
///
public bool SetUserPermission(int userId, string newper, string sysId)
{
try
{
//1、获取当前系统的模块ID集合
var permissionId = this.PermissionManage.GetPermissionIdBySysId(sysId).Cast().ToList();
//2、获取用户权限,是否存在,存在即删除
if (this.IsExist(p => p.FK_USERID == userId && permissionId.Any(e => e == p.FK_PERMISSIONID)))
{
//3、删除用户权限
this.Delete(p => p.FK_USERID == userId && permissionId.Any(e => e == p.FK_PERMISSIONID));
}
//4、添加用户权限
var str = newper.Trim(',').Split(',');
foreach (var per in str.Select(t => new SYS_USER_PERMISSION()
{
FK_USERID = userId,
FK_PERMISSIONID = int.Parse(t)
}))
{
this.dbSet.Add(per);
}
//5、Save
return this.Context.SaveChanges() > 0;
}
catch (Exception e) { throw e; }
}
}
}