/// <summary> /// Crea una Institución /// Establece como profesional owner de pHealthInstitution a pProfesionalId/pUserId /// </summary> /// <param name="pHealthInstitution">Institución</param> /// <param name="pProfesionalId">Profesional</param> /// <param name="pUserId"></param> public static void Create_From_Owner(Health.Back.BE.HealthInstitution pHealthInstitution, Int32 pProfesionalId, Guid pUserId) { Back.BE.HealthInstitution_Profesional wHealthInstitution_Profesional = new Back.BE.HealthInstitution_Profesional(); Back.BE.HealtInstitute_UsersInRoles wHealtInstitute_UsersInRoles = new BE.HealtInstitute_UsersInRoles(); using (Health.Back.BE.HealthEntities dc = new Health.Back.BE.HealthEntities(Common.CnnString_Entities)) { //Busco la institución padre si existe var parentHI = dc.HealthInstitutions.Where(p => !p.HealthInstitutionIdParent.HasValue && p.HealthInstitution_Profesional.Any(prof => prof.ProfesionalId.Equals(pProfesionalId))).FirstOrDefault(); if (parentHI != null) pHealthInstitution.HealthInstitutionIdParent = parentHI.HealthInstitutionId; pHealthInstitution.HealthInstitutionId = Guid.NewGuid(); pHealthInstitution.CreatedDate = System.DateTime.Now; dc.HealthInstitutions.AddObject(pHealthInstitution); wHealthInstitution_Profesional.HealthInstitutionId = pHealthInstitution.HealthInstitutionId; wHealthInstitution_Profesional.ProfesionalId = pProfesionalId; wHealthInstitution_Profesional.ActiveFlag = true; wHealthInstitution_Profesional.UserId = pUserId; wHealthInstitution_Profesional.IsLockedOut = false; wHealthInstitution_Profesional.IsOwner = true; dc.HealthInstitution_Profesional.AddObject(wHealthInstitution_Profesional); wHealtInstitute_UsersInRoles.UserId = pUserId; wHealtInstitute_UsersInRoles.HealthInstitutionId = pHealthInstitution.HealthInstitutionId; wHealtInstitute_UsersInRoles.RoleName = "inst_owner"; dc.HealtInstitute_UsersInRoles.AddObject(wHealtInstitute_UsersInRoles); dc.SaveChanges(); } }
/// <summary> /// Deprecated Method for adding a new object to the HealtInstitute_UsersInRoles EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToHealtInstitute_UsersInRoles(HealtInstitute_UsersInRoles healtInstitute_UsersInRoles) { base.AddObject("HealtInstitute_UsersInRoles", healtInstitute_UsersInRoles); }
/// <summary> /// Create a new HealtInstitute_UsersInRoles object. /// </summary> /// <param name="roleName">Initial value of the RoleName property.</param> /// <param name="healthInstitutionId">Initial value of the HealthInstitutionId property.</param> /// <param name="userId">Initial value of the UserId property.</param> public static HealtInstitute_UsersInRoles CreateHealtInstitute_UsersInRoles(global::System.String roleName, global::System.Guid healthInstitutionId, global::System.Guid userId) { HealtInstitute_UsersInRoles healtInstitute_UsersInRoles = new HealtInstitute_UsersInRoles(); healtInstitute_UsersInRoles.RoleName = roleName; healtInstitute_UsersInRoles.HealthInstitutionId = healthInstitutionId; healtInstitute_UsersInRoles.UserId = userId; return healtInstitute_UsersInRoles; }
/// <summary> /// Asigna y/o crea un rol /// </summary> /// <param name="pHealthInstitutionId"></param> /// <param name="pProfesionalId_ToAssign"></param> /// <param name="pUserId"></param> /// <param name="roleName"></param> public static void Profesional_UsersInRoles_Assign(Guid pHealthInstitutionId, Int32 pProfesionalId_ToAssign, Guid pUserId, string roleName) { Back.BE.HealthInstitution_Profesional wHealthInstitution_Profesional = new Back.BE.HealthInstitution_Profesional(); Back.BE.HealtInstitute_UsersInRoles wHealtInstitute_UsersInRoles = new BE.HealtInstitute_UsersInRoles(); using (Health.Back.BE.HealthEntities dc = new Health.Back.BE.HealthEntities(Common.CnnString_Entities)) { //Si no existe la relacion del profesional con la inst.. se genera if (!dc.HealthInstitution_Profesional.Any(p => p.HealthInstitutionId.Equals(pHealthInstitutionId) && p.Profesional.IdProfesional.Equals(pProfesionalId_ToAssign))) { wHealthInstitution_Profesional.HealthInstitutionId = pHealthInstitutionId; wHealthInstitution_Profesional.ProfesionalId = pProfesionalId_ToAssign; wHealthInstitution_Profesional.UserId = pUserId; wHealthInstitution_Profesional.IsLockedOut = false; wHealthInstitution_Profesional.ActiveFlag = true; if (roleName.Equals("inst_owner") || roleName.Equals("inst_admin")) { wHealthInstitution_Profesional.IsAdmin = roleName.Equals("inst_admin"); wHealthInstitution_Profesional.IsOwner = roleName.Equals("inst_owner"); } dc.HealthInstitution_Profesional.AddObject(wHealthInstitution_Profesional); } wHealtInstitute_UsersInRoles.UserId = pUserId; wHealtInstitute_UsersInRoles.HealthInstitutionId = pHealthInstitutionId; wHealtInstitute_UsersInRoles.RoleName = roleName; dc.HealtInstitute_UsersInRoles.AddObject(wHealtInstitute_UsersInRoles); dc.SaveChanges(); } }
/// <summary> /// Crea HealtInstitute_UsersInRoles = inst_admin /// Crea HealthInstitution_Profesional /// </summary> /// <param name="pHealthInstitutionId"></param> /// <param name="pProfesionalId_ToAssign"></param> /// <param name="pUserId"></param> public static void Profesional_Associate_As_AdminOwner(Guid pHealthInstitutionId, Int32 pProfesionalId_ToAssign, Guid pUserId, string rolname) { Back.BE.HealthInstitution_Profesional wHealthInstitution_Profesional = new Back.BE.HealthInstitution_Profesional(); Back.BE.HealtInstitute_UsersInRoles wHealtInstitute_UsersInRoles = new BE.HealtInstitute_UsersInRoles(); using (Health.Back.BE.HealthEntities dc = new Health.Back.BE.HealthEntities(Common.CnnString_Entities)) { wHealtInstitute_UsersInRoles.UserId = pUserId; wHealtInstitute_UsersInRoles.HealthInstitutionId = pHealthInstitutionId; wHealtInstitute_UsersInRoles.RoleName = rolname; wHealthInstitution_Profesional.IsAdmin = true; wHealthInstitution_Profesional.HealthInstitutionId = pHealthInstitutionId; wHealthInstitution_Profesional.ProfesionalId = pProfesionalId_ToAssign; wHealthInstitution_Profesional.UserId = pUserId; dc.HealthInstitution_Profesional.AddObject(wHealthInstitution_Profesional); dc.HealtInstitute_UsersInRoles.AddObject(wHealtInstitute_UsersInRoles); dc.SaveChanges(); } }