public static UserCloudModel GetClouds(User user, IUserVaultService _uservaultService //IUserCloudService _usercloudService, , ICloudService _cloudService, IVaultTemplateService _vaultTemplateService, IMFVaultService _vaultService, IMFilesVaultService _mfvaultService, string host, params string[] roleNames) { var clouds = _cloudService.GetCloudsByUserRoles(roleNames); var userId = user.Id; var appModel = new UserCloudModel(); var userVaults = _uservaultService.GetVaults(userId); foreach (var app in clouds) { var a = app; var appM = new CloudModel { App = a.ToDto() }; if (app.Id == CloudConstants.MyProjects) { var templates = new List <VaultTemplate>(); foreach (var t in _vaultTemplateService.GetTemplatesByCloud(app.Id)) { templates.Add(t); //a.Templates.Add(t); } if (templates.Count > 0) { var appVaults = userVaults.Where(c => templates.Any(d => c.TemplateId > 0 && c.TemplateId == d.Id)); appM.Vaults.AddRange(appVaults.Select(c => c.ToDtoWithoutTemplate())); } appM.Url = "/IntegratedManagement/Index"; } //else if (app.Id == CloudConstants.ProjManagements) //{ // //todo 指定路径 //} appModel.Apps.Add(appM); } var password = DBWorldCache.Get(userId.ToString()); var appVaultsC = _mfvaultService.GetVaultsByCloud(CloudConstants.SubContracts); var vv = new List <MFilesVault>(); foreach (var v in appVaultsC) { if (_vaultService.HasUser(user, password, v)) { vv.Add(v); } } if (vv.Count > 0) { var cc = _cloudService.GetCloudById(CloudConstants.SubContracts); var cM = new CloudModel { App = cc.ToDto() }; cM.Vaults.AddRange(vv.Select(c => c.ToDtoWithoutTemplate())); appModel.Apps.Add(cM); } return(appModel); }
protected ProjectBaseController(IProjectService projectService, IMFilesVaultService mfvaultService, IMfUserGroupService mfgroupService, IVaultTemplateService vaultTemplateService, IMFObjectService mfilesObjService, IAuthenticationManager authManager) : base(authManager) { _mfvaultService = mfvaultService; _mfusergroupService = mfgroupService; _projectService = projectService; _vaultTemplateService = vaultTemplateService; _mfilesObjService = mfilesObjService; }
public InviteController(UserManager <User, long> userManager, IUserService userService, IProjectMemberService projectMemberService , IProjectService projectService, IVaultTemplateService vaultTempService, IMFilesVaultService mfvaultService , IMFObjectService mfobjService, IMfUserGroupService mfusergroupService, IEmailService emailService) { _userManger = userManager; _userService = userService; _projectMemberService = projectMemberService; _projectService = projectService; _vaultTempService = vaultTempService; _mfvaultService = mfvaultService; _mfobjService = mfobjService; _mfusergroupService = mfusergroupService; _emailService = emailService; }
public CloudController(ICloudService cloudService , IUserVaultService uservaultService, IVaultTemplateService vaultTemplateService, IRepository <Company> companyRepo, IRepository <Area> areaRepo , IMFVaultService vaultService, IUserService userService, IMFilesVaultService mfvaultService, IAuthenticationManager authenticationManager) : base(authenticationManager) //, IUserCloudService usercloudService { _cloudService = cloudService; _companyRepo = companyRepo; _areaRepo = areaRepo; _uservaultService = uservaultService; _vaultTemplateService = vaultTemplateService; _vaultService = vaultService; _userService = userService; _mfvaultService = mfvaultService; }
public ManageController(IAuthenticationManager authManager, SignInManager <User, long> signInManager, UserManager <User, long> userManager , IProjectMemberService projMemberService, IProjectService projService, IUserService userService, IVaultServerService mfvaultServerService , IMFilesVaultService mfvaultService, IVaultTemplateService vaultTempService , IRepository <Company> companyRepo, IRepository <Department> departmentRepo) : base(authManager, signInManager, userManager) { _projMemberService = projMemberService; _projService = projService; _userService = userService; _mfvaultService = mfvaultService; _mfvaultServerService = mfvaultServerService; _vaultTempService = vaultTempService; _companyRepo = companyRepo; _departmentRepo = departmentRepo; }
public static List <VaultTemplate> GetProjectTemplates(IVaultTemplateService vtService) { var tempList = new List <VaultTemplate>(); var vts = vtService.GetTemplates(); foreach (var vt in vts) { //if (string.IsNullOrEmpty(vt.MetadataJson)) //{ // var path = vt.StructurePath; // var jsonFile = GetJson(path); // vt.MetadataJson = jsonFile; // vtService.UpdateTemplate(vt); //} tempList.Add(vt); } return(tempList); }
public AccountController(UserManager <User, long> userManager, SignInManager <User, long> signInManager, IAuthenticationManager authManager, IUserService userService , IUserVaultService uservaultService, IRepository <MFilesVault> vaultRepository, IMFilesVaultService mfvaultService , ICloudService cloudService, IVaultTemplateService vaultTemplateService, IProjectService projService, IProjectMemberService projectMemberService , IVaultServerService vaultserverService, IMFUserService mfuserService, IMFVaultService vaultService) //IUserCloudService usercloudService, : base(authManager, signInManager, userManager) { _userService = userService; //_usercloudService = usercloudService; _uservaultService = uservaultService; _cloudService = cloudService; _vaultTemplateService = vaultTemplateService; _projService = projService; _projectMemberService = projectMemberService; _mfvaultService = mfvaultService; _vaultserverService = vaultserverService; _mfuserService = mfuserService; _vaultService = vaultService; _vaultRepository = vaultRepository; }
public static string Invite(InviteModel inviteModel, UserManager <User, long> _userManger, long userId, string userName , IUserService _userService, IProjectMemberService _projectMemberService, IProjectService _projectService , IVaultTemplateService _vaultTempService, IMFilesVaultService _mfvaultService, IMFObjectService _mfobjService , IMfUserGroupService _mfusergroupService, IEmailService _emailService, string baseUri) { if (String.IsNullOrEmpty(inviteModel.Email)) { var userDto = AccountController.GetUserProfile(_userManger, userId);//UserClient.GetProfile(baseUri, token); //if (!userRes.Success) //{ // return BadRequest("当前用户认证失效"); //} //var userDto = JsonConvert.DeserializeObject<UserDto>(userRes.Content); inviteModel.Email = userDto.Email; } //Log.Info("API获取ProjectClient..."); if (inviteModel.InviteEmail != "")//分email和用户ID两种记录方式 { //Log.Info("API生成BindingModel..."); var model = new ProjectInvitationEmailModel { ProjectId = inviteModel.ProjectId, InviteeEmail = inviteModel.InviteEmail, InvitationMessage = "请加入" + inviteModel.ProjectName + "项目", InviteePartId = inviteModel.PartyId, MFUserId = inviteModel.MFUserId, BidProjId = inviteModel.BidProjId }; //Log.Info("API添加数据库信息..."); var res = Api.ProjectMembersController.InviteMemberByEmail(model, userId, userName , _userService, _projectMemberService, _projectService, _vaultTempService , _mfvaultService, _mfobjService, _mfusergroupService); if (String.IsNullOrEmpty(res)) { //Log.Info("API添加数据库信息成功..."); var sendEmailError = SendInviteEmail(baseUri, inviteModel.PartyName, inviteModel.InviteEmail, inviteModel.Email, inviteModel.ProjectName, inviteModel.ProjectId, inviteModel.UserId, inviteModel.PartyId, _emailService); if (sendEmailError == "success") { return(String.Empty); } else { return(sendEmailError); } } else { var err = res; Log.Error("API添加数据库信息失败:" + err); return(err); } } else { var model = new ProjectInvitationUserModel { ProjectId = inviteModel.ProjectId, InviteeId = inviteModel.UserId, InvitationMessage = "请加入" + inviteModel.ProjectName + "项目", InviteePartId = inviteModel.PartyId }; var res = Api.ProjectMembersController.InviteMemberByUserId(model, userId, userName, _projectService, _projectMemberService, _vaultTempService , _mfvaultService, _userService, _mfobjService, _mfusergroupService); if (String.IsNullOrEmpty(res)) { var sendEmailError = SendInviteEmail(baseUri, inviteModel.PartyName, inviteModel.InviteEmail, inviteModel.Email, inviteModel.ProjectName, inviteModel.ProjectId, inviteModel.UserId, inviteModel.PartyId, _emailService); if (sendEmailError == "success") { return(String.Empty); } else { return(sendEmailError); } } else { var err = res; return(err); } } }
/// <summary> /// 是否为创建项目的参与方的项目经理 /// </summary> /// <param name="vault"></param> /// <returns></returns> protected static internal bool IsCreateProjectManager(MFilesVault vault, string userName, IMfUserGroupService mfusergroupService, IVaultTemplateService vautTempService) { //var userName = GetUserName(); var mgrGroup = ProjectRoleConstants.ProjectManager; var groups = mfusergroupService.GetGroupsByUser(vault, userName); var template = GetTemplateByTempId(vautTempService, vault.TemplateId); var tempDto = template.ToDto(); if (tempDto.HasParty) { return(groups.Any(c => c.Name == mgrGroup) && groups.Any(c => c.Name == "项目创建者")); } return(groups.Any(c => c.Name == mgrGroup)); }
protected static VaultTemplate GetTemplateByTempId(IVaultTemplateService vaultTemplateService, long tempId) { return(vaultTemplateService.GetTemplateById(tempId)); }