/// <summary> /// Retorna lista <see cref="HealthInstitutions_SuscriptionRequestsList"/> con solo id , nombre + datos de la subscripción /// </summary> /// <param name="healthInstituteId"></param> /// <returns></returns> internal static HealthInstitutions_SuscriptionRequestsList Retrive_Subscriptions_SimpleList(Guid healthInstituteId) { HealthInstitutions_SuscriptionRequestsList wProfesionalsBEList = new HealthInstitutions_SuscriptionRequestsList(); using (HealthLinQDataContext dc = new HealthLinQDataContext(Common.CnnString)) { var AllProfesionals = from p in dc.HealthInstitutions_SuscriptionRequests from prof in dc.Profesionals where p.HealthInstitutionId.Equals(healthInstituteId) && prof.IdProfesional.Equals(p.Profesional_To) select new HealthInstitutions_SuscriptionRequestsBE { Profesional_To = prof.IdProfesional, Nombre_To = prof.Persona.Nombre, Apellido_To = prof.Persona.Apellido, RequestSend = p.RequestSend, Status = p.State, Message = p.Message }; wProfesionalsBEList.AddRange(AllProfesionals.ToList <HealthInstitutions_SuscriptionRequestsBE>()); } return(wProfesionalsBEList); }
/// <summary> /// /// </summary> /// <param name="pHealthInstitutionId"></param> /// <param name="pIdProfesional_To"></param> /// <param name="status"></param> public static void Update_Subscriptions_Status(Guid pHealthInstitutionId, int pIdProfesional_To, SubscriptionRequestStatus status) { HealthInstitutions_SuscriptionRequestsList wProfesionalsBEList = new HealthInstitutions_SuscriptionRequestsList(); using (HealthLinQDataContext dc = new HealthLinQDataContext(Common.CnnString)) { var wSuscription = dc.HealthInstitutions_SuscriptionRequests.Where(p => p.Profesional_To.Equals(pIdProfesional_To) && p.HealthInstitutionId.Equals(p.HealthInstitutionId)).FirstOrDefault(); wSuscription.State = (int)status; dc.SubmitChanges(); } }
internal static void Remove_SubscriptionReq(Guid pHealthInstitutionId, int pIdProfesional_To) { HealthInstitutions_SuscriptionRequestsList wProfesionalsBEList = new HealthInstitutions_SuscriptionRequestsList(); using (HealthLinQDataContext dc = new HealthLinQDataContext(Common.CnnString)) { var wSuscription = dc.HealthInstitutions_SuscriptionRequests.Where(p => p.Profesional_To.Equals(pIdProfesional_To) && p.HealthInstitutionId.Equals(p.HealthInstitutionId)).FirstOrDefault(); dc.HealthInstitutions_SuscriptionRequests.DeleteOnSubmit(wSuscription); dc.SubmitChanges(); } }
/// <summary> /// /// </summary> /// <param name="pHealthInstitutionId"></param> /// <param name="pIdProfesional_To"></param> /// <param name="status"></param> public static void Acept_Subscriptions_Req(Guid pHealthInstitutionId, int pIdProfesional_To, Guid user_guid) { HealthInstitutions_SuscriptionRequestsList wProfesionalsBEList = new HealthInstitutions_SuscriptionRequestsList(); using (HealthLinQDataContext dc = new HealthLinQDataContext(Common.CnnString)) { var wSuscription = dc.HealthInstitutions_SuscriptionRequests.Where(p => p.Profesional_To.Equals(pIdProfesional_To) && p.HealthInstitutionId.Equals(p.HealthInstitutionId)).FirstOrDefault(); //Asociar el profecional Profesional_Associate_As_AdminOwner(pHealthInstitutionId, pIdProfesional_To, user_guid, wSuscription.RoleName); //Elimina la subscripcion dc.HealthInstitutions_SuscriptionRequests.DeleteOnSubmit(wSuscription); dc.SubmitChanges(); } }
/// <summary> /// Crea un pedido de subscripcion /// </summary> /// <param name="pProfesionalId_From"></param> /// <param name="pProfesionalId_To"></param> /// <param name="pHealthInstitutionId"></param> /// <param name="rolname"></param> /// <param name="msg"></param> public static void CreateSubscription_Req(int pProfesionalId_From, int pProfesionalId_To, Guid pHealthInstitutionId, string pRolName, string pMessage) { using (HealthLinQDataContext dc = new HealthLinQDataContext(Common.CnnString)) { HealthInstitutions_SuscriptionRequest req = new HealthInstitutions_SuscriptionRequest(); req.HealthInstitutionId = pHealthInstitutionId; req.Profesional_To = pProfesionalId_To; req.ProfesionalId_From = pProfesionalId_From; req.RequestSend = DateTime.Now; if (!string.IsNullOrEmpty(pMessage)) { req.Message = pMessage; } if (!string.IsNullOrEmpty(pRolName)) { req.RoleName = pRolName; } dc.HealthInstitutions_SuscriptionRequests.InsertOnSubmit(req); dc.SubmitChanges(); } }
/// <summary> /// Lista usada para ver las solicitudes al profecional /// Retorna lista <see cref="HealthInstitutions_SuscriptionRequestsList"/> con solo id , nombre + datos de la subscripción /// Se retorna Nombre y apellido es del usuario que solicita /// </summary> /// <param name="pIdProfesional">Id del profesional que desea ver sus solicitudes pendientes</param> /// <returns></returns> internal static HealthInstitutions_SuscriptionRequestsList Retrive_PendingSubscriptions_SimpleList(int pIdProfesional) { HealthInstitutions_SuscriptionRequestsList wProfesionalsBEList = new HealthInstitutions_SuscriptionRequestsList(); using (HealthLinQDataContext dc = new HealthLinQDataContext(Common.CnnString)) { var AllProfesionals = from p in dc.HealthInstitutions_SuscriptionRequests from h in dc.HealthInstitutions from prof_from in dc.Profesionals where p.Profesional_To.Equals(pIdProfesional) && h.HealthInstitutionId.Equals(p.HealthInstitutionId) && prof_from.IdProfesional.Equals(p.ProfesionalId_From) && !p.State.Equals(SubscriptionRequestStatus.Rechazado) && !p.State.Equals(SubscriptionRequestStatus.Expirado) select new HealthInstitutions_SuscriptionRequestsBE { Profesional_To = p.Profesional_To, Profesional_From = p.ProfesionalId_From, Nombre_From = prof_from.Persona.Nombre, Apellido_From = prof_from.Persona.Apellido, RequestSend = p.RequestSend, Status = p.State, HealthInsId = h.HealthInstitutionId, HealthInstName = h.RazonSocial, SenderIsOwner = p.SenderIsOwner, Message = p.Message }; wProfesionalsBEList.AddRange(AllProfesionals.ToList <HealthInstitutions_SuscriptionRequestsBE>()); } return(wProfesionalsBEList); }