Esempio n. 1
0
        public bool UpdateServiceForProtocol(ServiceCustom data, int userId)
        {
            bool resultServiceComponent = new ServiceComponentDal().UpdateServiceComponent(data.ServiceId, userId);

            if (!resultServiceComponent)
            {
                return(false);
            }

            return(new ServiceDal().UpdateServiceForProtocolo(data, userId));
        }
Esempio n. 2
0
        public JsonResult UpdateServiceForProtocol(ServiceCustom data)
        {
            Api API = new Api();
            Dictionary <string, string> arg = new Dictionary <string, string>()
            {
                { "String1", JsonConvert.SerializeObject(data) },
                { "Int1", ViewBag.USER.SystemUserId.ToString() },
            };
            var result = API.Post <MessageCustom>("Calendar/UpdateServiceForProtocol", arg);

            return(new JsonResult {
                Data = result, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Esempio n. 3
0
        public JsonResult AgendarPaciente(ServiceCustom data)
        {
            Api API = new Api();

            Dictionary <string, string> arg = new Dictionary <string, string>()
            {
                { "String1", JsonConvert.SerializeObject(data) },
                { "Int2", "11" },
                { "Int1", "9" },
            };
            var result = API.Post <MessageCustom>("Calendar/CreateCalendar", arg);

            return(new JsonResult {
                Data = result, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Esempio n. 4
0
        public bool UpdateCalendarForProtocol(ServiceCustom data, int UserId)
        {
            try
            {
                var objCalendar = ctx.Calendar.Where(x => x.v_ServiceId == data.ServiceId).FirstOrDefault();
                objCalendar.i_UpdateUserId  = UserId;
                objCalendar.d_UpdateDate    = DateTime.Now;
                objCalendar.i_ServiceTypeId = data.MasterServiceTypeId;
                objCalendar.i_ServiceId     = data.MasterServiceId;

                return(ctx.SaveChanges() > 0);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
Esempio n. 5
0
        public JsonResult AgendarPaciente(ServiceCustom data)
        {
            Api API = new Api();

            string nodo   = ViewBag.USER == null ? "9" : ViewBag.USER.NodeId == null ? "9" : ViewBag.USER.NodeId.ToString();
            string userId = ViewBag.USER == null ? "11" : ViewBag.USER.SystemUserId == null ? "11" : ViewBag.USER.SystemUserId.ToString();
            Dictionary <string, string> arg = new Dictionary <string, string>()
            {
                { "String1", JsonConvert.SerializeObject(data) },
                { "Int2", ViewBag.USER.SystemUserId.ToString() },
                { "Int1", ViewBag.USER.NodeId.ToString() },
            };
            var result = API.Post <MessageCustom>("Calendar/CreateCalendar", arg);

            return(new JsonResult {
                Data = result, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Esempio n. 6
0
        public string ReturnOrDuplicateProtocol(ServiceCustom data, int nodeId, int userId, List <ProtocolComponentCustom> ListProtocolComponent)
        {
            try
            {
                if (ListProtocolComponent == null)
                {
                    return(null);
                }

                var  id  = data.DataProtocol.EmpresaEmpleadora.Split('|');
                var  id1 = data.DataProtocol.EmpresaCliente.Split('|');
                var  id2 = data.DataProtocol.EmpresaTrabajo.Split('|');
                var  masterServiceTypeId = data.DataProtocol.i_MasterServiceTypeId;
                var  masterServiceId     = data.DataProtocol.i_MasterServiceId;
                var  groupOccupationName = data.DataProtocol.Geso;
                var  esoTypeId           = data.DataProtocol.i_EsoTypeId;
                bool ExisteProtocolo     = ProtocolDal.ExisteProtocoloPropuestoSegunLaEmpresa(id[0], masterServiceTypeId, masterServiceId, groupOccupationName, esoTypeId);
                if (!ExisteProtocolo)
                {
                    ProtocolBE _ProtocolBE = new ProtocolBE();
                    var        sufProtocol = data.DataProtocol.EmpresaEmpleadoraName.Split('/');
                    _ProtocolBE.v_Name = data.DataProtocol.ProtocolName + " " + sufProtocol[0].ToString();
                    _ProtocolBE.v_EmployerOrganizationId = id[0];
                    _ProtocolBE.v_EmployerLocationId     = id[1];
                    _ProtocolBE.i_EsoTypeId = data.DataProtocol.i_EsoTypeId;
                    //obtener GESO
                    var gesoId = new OrganizationDal().GetGroupOcupation(id[1], groupOccupationName);
                    _ProtocolBE.v_GroupOccupationId      = gesoId;
                    _ProtocolBE.v_CustomerOrganizationId = id1[0];
                    _ProtocolBE.v_CustomerLocationId     = id1[1];
                    _ProtocolBE.v_WorkingOrganizationId  = id2[0];
                    _ProtocolBE.v_WorkingLocationId      = data.DataProtocol.EmpresaEmpleadora != "-1" ? id2[1] : "-1";
                    _ProtocolBE.i_MasterServiceId        = masterServiceId;
                    _ProtocolBE.v_CostCenter             = string.Empty;
                    _ProtocolBE.i_MasterServiceTypeId    = masterServiceTypeId;
                    _ProtocolBE.i_HasVigency             = 1;
                    _ProtocolBE.i_ValidInDays            = null;
                    _ProtocolBE.i_IsActive       = 1;
                    _ProtocolBE.v_NombreVendedor = string.Empty;

                    List <ProtocolComponentDto> ListProtocolComponentDto = new List <ProtocolComponentDto>();
                    foreach (var objProtCom in ListProtocolComponent)
                    {
                        ProtocolComponentDto _ProtocolComponentDto = new ProtocolComponentDto();
                        _ProtocolComponentDto.v_ComponentId      = objProtCom.ComponentId;
                        _ProtocolComponentDto.r_Price            = objProtCom.Price;
                        _ProtocolComponentDto.i_OperatorId       = objProtCom.OperatorId;
                        _ProtocolComponentDto.i_Age              = objProtCom.Age;
                        _ProtocolComponentDto.i_GenderId         = objProtCom.GenderId;
                        _ProtocolComponentDto.i_IsAdditional     = objProtCom.IsAdditional;
                        _ProtocolComponentDto.i_IsConditionalId  = objProtCom.IsConditionalId;
                        _ProtocolComponentDto.i_GrupoEtarioId    = objProtCom.GrupoEtarioId;
                        _ProtocolComponentDto.i_IsConditionalIMC = objProtCom.IsConditionalIMC;
                        _ProtocolComponentDto.r_Imc              = objProtCom.Imc;
                        ListProtocolComponentDto.Add(_ProtocolComponentDto);
                    }
                    string protocolId = ProtocolDal.AddProtocol(_ProtocolBE, ListProtocolComponentDto, nodeId, userId);
                    if (protocolId == null)
                    {
                        return(null);
                    }

                    var ListUser            = ProtocolDal.GetSystemUserSigesoft();
                    var extUserWithCustomer = ListUser.FindAll(p => p.v_SystemUserByOrganizationId == id1[0]).ToList();
                    var extUserWithEmployer = ListUser.FindAll(p => p.v_SystemUserByOrganizationId == id[0]).ToList();
                    var extUserWithWorking  = ListUser.FindAll(p => p.v_SystemUserByOrganizationId == id2[0]).ToList();

                    foreach (var extUs in extUserWithCustomer)
                    {
                        var ListUserExter = ProtocolDal.GetProtocolSystemUser(extUs.i_SystemUserId);
                        var list          = new List <ProtocolSystemUserBE>();
                        foreach (var perm in ListUserExter)
                        {
                            var oProtocolSystemUserBEo = new ProtocolSystemUserBE();
                            oProtocolSystemUserBEo.i_SystemUserId           = extUs.i_SystemUserId;
                            oProtocolSystemUserBEo.v_ProtocolId             = protocolId;
                            oProtocolSystemUserBEo.i_ApplicationHierarchyId = perm.i_ApplicationHierarchyId;
                            list.Add(oProtocolSystemUserBEo);
                        }
                        bool resultUs = ProtocolDal.AddProtocolSystemUser(list, userId, nodeId);
                        if (!resultUs)
                        {
                            return(null);
                        }
                    }
                    foreach (var extUs in extUserWithEmployer)
                    {
                        var ListUserExter = ProtocolDal.GetProtocolSystemUser(extUs.i_SystemUserId);
                        var list          = new List <ProtocolSystemUserBE>();
                        foreach (var perm in ListUserExter)
                        {
                            var oProtocolSystemUserBEo = new ProtocolSystemUserBE();
                            oProtocolSystemUserBEo.i_SystemUserId           = extUs.i_SystemUserId;
                            oProtocolSystemUserBEo.v_ProtocolId             = protocolId;
                            oProtocolSystemUserBEo.i_ApplicationHierarchyId = perm.i_ApplicationHierarchyId;
                            list.Add(oProtocolSystemUserBEo);
                        }
                        bool resultUs = ProtocolDal.AddProtocolSystemUser(list, userId, nodeId);
                        if (!resultUs)
                        {
                            return(null);
                        }
                    }
                    foreach (var extUs in extUserWithWorking)
                    {
                        var ListUserExter = ProtocolDal.GetProtocolSystemUser(extUs.i_SystemUserId);
                        var list          = new List <ProtocolSystemUserBE>();
                        foreach (var perm in ListUserExter)
                        {
                            var oProtocolSystemUserBEo = new ProtocolSystemUserBE();
                            oProtocolSystemUserBEo.i_SystemUserId           = extUs.i_SystemUserId;
                            oProtocolSystemUserBEo.v_ProtocolId             = protocolId;
                            oProtocolSystemUserBEo.i_ApplicationHierarchyId = perm.i_ApplicationHierarchyId;
                            list.Add(oProtocolSystemUserBEo);
                        }
                        bool resultUs = ProtocolDal.AddProtocolSystemUser(list, userId, nodeId);
                        if (!resultUs)
                        {
                            return(null);
                        }
                    }
                    return(protocolId);
                }
                else
                {
                    return(data.ProtocolId);
                }
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Esempio n. 7
0
        public bool AddServiceComponentAtx(List <ProtocolComponentCustom> dataProtComponent, ServiceCustom dataService, int nodeId, int userId)
        {
            try
            {
                foreach (var obj in dataProtComponent)
                {
                    var componentId        = obj.ComponentId;
                    var serviceComponentId = new Common.Utils().GetPrimaryKey(nodeId, 24, "SC");
                    ServiceComponentDto oServiceComponentDto = new ServiceComponentDto();
                    oServiceComponentDto.v_ServiceComponentId     = serviceComponentId;
                    oServiceComponentDto.v_ComponentId            = obj.ComponentId;
                    oServiceComponentDto.i_MedicoTratanteId       = dataService.MedicoTratanteId;
                    oServiceComponentDto.v_ServiceId              = dataService.ServiceId;
                    oServiceComponentDto.i_ExternalInternalId     = (int)ComponenteProcedencia.Interno;
                    oServiceComponentDto.i_ServiceComponentTypeId = obj.ComponentTypeId;
                    oServiceComponentDto.i_IsVisibleId            = obj.UIIsVisibleId;
                    oServiceComponentDto.i_IsInheritedId          = (int)SiNo.No;
                    oServiceComponentDto.d_StartDate              = null;
                    oServiceComponentDto.d_EndDate = null;
                    oServiceComponentDto.i_index   = obj.UIIndex;

                    var porcentajes = obj.Porcentajes.Split('-');

                    float p1 = porcentajes[0] == null || porcentajes[0] == "" ? 0 : float.Parse(porcentajes[0]);
                    float p2 = porcentajes[1] == null || porcentajes[1] == "" ? 0 : float.Parse(porcentajes[1]);

                    var pb = obj.Price;
                    oServiceComponentDto.r_Price                    = pb + (pb * p1 / 100) + (pb * p2 / 100);
                    oServiceComponentDto.r_Price                    = SetNewPrice(oServiceComponentDto.r_Price, obj.ComponentId);
                    oServiceComponentDto.i_IsInvoicedId             = (int)SiNo.No;
                    oServiceComponentDto.i_ServiceComponentStatusId = (int)ServiceStatus.PorIniciar;
                    oServiceComponentDto.i_QueueStatusId            = (int)QueueStatusId.Libre;
                    oServiceComponentDto.i_Iscalling                = (int)FlagCall.NoseLlamo;
                    oServiceComponentDto.i_Iscalling_1              = (int)FlagCall.NoseLlamo;
                    oServiceComponentDto.v_IdUnidadProductiva       = obj.IdUnidadProductiva;

                    var resultplan = new PlanDal().GetPlans(dataService.ProtocolId, obj.IdUnidadProductiva);
                    var tienePlan  = false;
                    if (resultplan.Count > 0)
                    {
                        tienePlan = true;
                    }
                    else
                    {
                        tienePlan = false;
                    }
                    if (tienePlan)
                    {
                        if (resultplan[0].i_EsCoaseguro == 1)
                        {
                            oServiceComponentDto.d_SaldoPaciente    = resultplan[0].d_Importe * decimal.Parse(oServiceComponentDto.r_Price.ToString()) / 100;
                            oServiceComponentDto.d_SaldoAseguradora = decimal.Parse(oServiceComponentDto.r_Price.ToString()) - oServiceComponentDto.d_SaldoPaciente;
                        }
                        if (resultplan[0].i_EsDeducible == 1)
                        {
                            oServiceComponentDto.d_SaldoPaciente    = resultplan[0].d_Importe;
                            oServiceComponentDto.d_SaldoAseguradora = decimal.Parse(oServiceComponentDto.r_Price.ToString()) - resultplan[0].d_Importe;
                        }
                    }

                    var conditional = obj.IsConditionalId;
                    if (conditional == (int)SiNo.Si)
                    {
                        var fechaNacimiento = dataService.FechaNacimiento;
                        //Datos del paciente

                        if (fechaNacimiento != null)
                        {
                            var pacientAge = DateTime.Today.AddTicks(-fechaNacimiento.Ticks).Year - 1;

                            var pacientGender = dataService.GeneroId;

                            //Datos del protocolo
                            int         analyzeAge    = obj.Age.Value;
                            int         analyzeGender = obj.GenderId.Value;
                            var         @operator     = (Operator2Values)obj.OperatorId;
                            GrupoEtario oGrupoEtario  = (GrupoEtario)obj.GrupoEtarioId;
                            if ((int)@operator == -1)
                            {
                                //si la condicional del operador queda en --Seleccionar--
                                if (analyzeGender == (int)GenderConditional.Ambos)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (pacientGender == analyzeGender)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else
                            {
                                if (analyzeGender == (int)GenderConditional.Masculino)
                                {
                                    oServiceComponentDto.i_IsRequiredId = SwitchOperator2Values(pacientAge, analyzeAge,
                                                                                                @operator, pacientGender.Value, analyzeGender);
                                }
                                else if (analyzeGender == (int)GenderConditional.Femenino)
                                {
                                    oServiceComponentDto.i_IsRequiredId = SwitchOperator2Values(pacientAge, analyzeAge,
                                                                                                @operator, pacientGender.Value, analyzeGender);
                                }
                                else if (analyzeGender == (int)GenderConditional.Ambos)
                                {
                                    oServiceComponentDto.i_IsRequiredId = SwitchOperator2Values(pacientAge, analyzeAge,
                                                                                                @operator, pacientGender.Value, analyzeGender);
                                }
                            }
                            if (componentId == "N009-ME000000402") //Adolecente
                            {
                                if ((int)oGrupoEtario == -1)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (13 <= pacientAge && pacientAge <= 18)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else if (componentId == "N009-ME000000403") //Adulto
                            {
                                if ((int)oGrupoEtario == -1)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (19 <= pacientAge && pacientAge <= 60)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else if (componentId == "N009-ME000000404") //AdultoMayorCustom
                            {
                                if ((int)oGrupoEtario == -1)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (61 <= pacientAge)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else if (componentId == "N009-ME000000406")
                            {
                                if ((int)oGrupoEtario == -1)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (12 >= pacientAge)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else if (componentId == "N009-ME000000401") //plan integral
                            {
                                if ((int)oGrupoEtario == -1)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (12 >= pacientAge)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else if (componentId == "N009-ME000000400") //atencion integral
                            {
                                if ((int)oGrupoEtario == -1)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (12 >= pacientAge)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else if (componentId == "N009-ME000000405") //consulta
                            {
                                if ((int)oGrupoEtario == -1)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else if (12 >= pacientAge)
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                }
                                else
                                {
                                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                }
                            }
                            else
                            {
                                oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                            }
                        }
                    }
                    else
                    {
                        oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                        if (obj.IsAdditional == null)
                        {
                            continue;
                        }
                        var adicional = obj.IsAdditional;
                        if (adicional == 1)
                        {
                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                        }
                    }
                    oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                    oServiceComponentDto.i_ConCargoA    = 0;
                    ctx.ServiceComponent.Add(oServiceComponentDto);
                }
                return(ctx.SaveChanges() > 0);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Esempio n. 8
0
        public bool AddServiceComponent(List <ProtocolComponentCustom> dataProtComponent, ServiceCustom dataService, int nodeId, int userId)
        {
            try
            {
                foreach (var obj in dataProtComponent)
                {
                    var serviceComponentId = new Common.Utils().GetPrimaryKey(nodeId, 24, "SC");
                    ServiceComponentDto oServiceComponentDto = new ServiceComponentDto();
                    oServiceComponentDto.v_ServiceComponentId     = serviceComponentId;
                    oServiceComponentDto.v_ComponentId            = obj.ComponentId;
                    oServiceComponentDto.i_MedicoTratanteId       = dataService.MedicoTratanteId;
                    oServiceComponentDto.v_ServiceId              = dataService.ServiceId;
                    oServiceComponentDto.i_ExternalInternalId     = (int)ComponenteProcedencia.Interno;
                    oServiceComponentDto.i_ServiceComponentTypeId = obj.ComponentTypeId;
                    oServiceComponentDto.i_IsVisibleId            = obj.UIIsVisibleId;
                    oServiceComponentDto.i_IsInheritedId          = (int)SiNo.No;
                    oServiceComponentDto.d_StartDate              = null;
                    oServiceComponentDto.d_EndDate      = null;
                    oServiceComponentDto.i_index        = obj.UIIndex;
                    oServiceComponentDto.i_IsDeleted    = (int)SiNo.No;
                    oServiceComponentDto.d_InsertDate   = DateTime.Now;
                    oServiceComponentDto.i_InsertUserId = userId;
                    var porcentajes = obj.Porcentajes.Split('-');

                    float p1 = porcentajes[0] == null || porcentajes[0] == "" ? 0 : float.Parse(porcentajes[0]);
                    float p2 = porcentajes[1] == null || porcentajes[1] == "" ? 0 : float.Parse(porcentajes[1]);

                    var pb = obj.Price;
                    oServiceComponentDto.r_Price                    = pb + (pb * p1 / 100) + (pb * p2 / 100);
                    oServiceComponentDto.r_Price                    = SetNewPrice(oServiceComponentDto.r_Price, obj.ComponentId);
                    oServiceComponentDto.i_IsInvoicedId             = (int)SiNo.No;
                    oServiceComponentDto.i_ServiceComponentStatusId = (int)ServiceStatus.PorIniciar;
                    oServiceComponentDto.i_QueueStatusId            = (int)QueueStatusId.Libre;
                    oServiceComponentDto.i_Iscalling                = (int)FlagCall.NoseLlamo;
                    oServiceComponentDto.i_Iscalling_1              = (int)FlagCall.NoseLlamo;
                    oServiceComponentDto.v_IdUnidadProductiva       = obj.IdUnidadProductiva;

                    var resultplan = new PlanDal().GetPlans(dataService.ProtocolId, obj.IdUnidadProductiva);
                    var tienePlan  = false;
                    if (resultplan.Count > 0)
                    {
                        tienePlan = true;
                    }
                    else
                    {
                        tienePlan = false;
                    }
                    if (tienePlan)
                    {
                        if (resultplan[0].i_EsCoaseguro == 1)
                        {
                            oServiceComponentDto.d_SaldoPaciente    = resultplan[0].d_Importe * decimal.Parse(oServiceComponentDto.r_Price.ToString()) / 100;
                            oServiceComponentDto.d_SaldoAseguradora = decimal.Parse(oServiceComponentDto.r_Price.ToString()) - oServiceComponentDto.d_SaldoPaciente;
                        }
                        if (resultplan[0].i_EsDeducible == 1)
                        {
                            oServiceComponentDto.d_SaldoPaciente    = resultplan[0].d_Importe;
                            oServiceComponentDto.d_SaldoAseguradora = decimal.Parse(oServiceComponentDto.r_Price.ToString()) - resultplan[0].d_Importe;
                        }
                    }

                    //Condicionales
                    var conditional = obj.IsConditionalId;
                    if (conditional == (int)SiNo.Si)
                    {
                        var fechaNacimiento = dataService.FechaNacimiento;
                        //Datos del paciente

                        if (fechaNacimiento != null)
                        {
                            var pacientAge = DateTime.Today.AddTicks(-fechaNacimiento.Ticks).Year - 1;

                            var pacientGender = dataService.GeneroId;

                            //Datos del protocolo
                            int         analyzeAge    = obj.Age.Value;
                            int         analyzeGender = obj.GenderId.Value;
                            var         @operator     = (Operator2Values)obj.OperatorId;
                            GrupoEtario oGrupoEtario  = (GrupoEtario)obj.GrupoEtarioId;
                            if (analyzeAge >= 0)                                   //condicional edad (SI)
                            {
                                if (analyzeGender != (int)GenderConditional.Ambos) //condicional genero (SI)
                                {
                                    if (@operator == Operator2Values.X_esIgualque_A)
                                    {
                                        if (pacientAge == analyzeAge && pacientGender == analyzeGender)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                    if (@operator == Operator2Values.X_esMayorIgualque_A)
                                    {
                                        if (pacientAge >= analyzeAge && pacientGender == analyzeGender)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                    if (@operator == Operator2Values.X_esMayorque_A)
                                    {
                                        if (pacientAge > analyzeAge && pacientGender == analyzeGender)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                    if (@operator == Operator2Values.X_esMenorIgualque_A)
                                    {
                                        if (pacientAge <= analyzeAge && pacientGender == analyzeGender)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                }
                                else//condicional genero (NO)
                                {
                                    if (@operator == Operator2Values.X_esIgualque_A)
                                    {
                                        if (pacientAge == analyzeAge)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                    if (@operator == Operator2Values.X_esMayorIgualque_A)
                                    {
                                        if (pacientAge >= analyzeAge)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                    if (@operator == Operator2Values.X_esMayorque_A)
                                    {
                                        if (pacientAge > analyzeAge)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                    if (@operator == Operator2Values.X_esMenorIgualque_A)
                                    {
                                        if (pacientAge <= analyzeAge)
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                                        }
                                        else
                                        {
                                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else
                    {
                        oServiceComponentDto.i_IsRequiredId = (int)SiNo.Si;
                        if (obj.IsAdditional == null)
                        {
                            continue;
                        }
                        var adicional = obj.IsAdditional;
                        if (adicional == 1)
                        {
                            oServiceComponentDto.i_IsRequiredId = (int)SiNo.No;
                        }
                    }

                    oServiceComponentDto.i_ConCargoA         = 0;
                    oServiceComponentDto.i_IsManuallyAddedId = (int)SiNo.No;
                    ctx.ServiceComponent.Add(oServiceComponentDto);
                }
                return(ctx.SaveChanges() > 0);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Esempio n. 9
0
 public bool UpdateCalendarForProtocol(ServiceCustom data, int userId)
 {
     return(_CalendarDAL.UpdateCalendarForProtocol(data, userId));
 }
Esempio n. 10
0
        public string CreateService(ServiceCustom data, int nodeId, int userId)
        {
            string serviceId = "";
            List <ProtocolComponentCustom> ListProtocolComponent = new ProtocolComponentDal().GetProtocolComponents(data.ProtocolId);

            if (data.FechaCalendario == null)
            {
                data.ProtocolId = new ProtocolBL().ReturnOrDuplicateProtocol(data, nodeId, userId, ListProtocolComponent);
            }

            serviceId = new ServiceDal().CreateService(data, nodeId, userId);
            if (serviceId == null)
            {
                return(null);
            }



            data.ServiceId = serviceId;

            if (data.MasterServiceTypeId == (int)MasterServiceType.Empresarial)
            {
                bool result = new ServiceComponentDal().AddServiceComponent(ListProtocolComponent, data, nodeId, userId);
                if (!result)
                {
                    return(null);
                }
            }
            else
            {
                bool result = new ServiceComponentDal().AddServiceComponent(ListProtocolComponent, data, nodeId, userId);
                if (!result)
                {
                    return(null);
                }
            }

            CalendarDto _CalendarDto = new CalendarDto();

            _CalendarDto.v_PersonId          = data.PersonId;
            _CalendarDto.v_ServiceId         = data.ServiceId;
            _CalendarDto.v_PersonId          = data.PersonId;
            _CalendarDto.d_DateTimeCalendar  = data.FechaCalendario == null ? DateTime.Now : data.FechaCalendario;
            _CalendarDto.d_CircuitStartDate  = data.FechaCalendario == null ? DateTime.Now : data.FechaCalendario;
            _CalendarDto.d_EntryTimeCM       = data.FechaCalendario == null ? DateTime.Now : data.FechaCalendario;
            _CalendarDto.i_ServiceTypeId     = data.MasterServiceTypeId;
            _CalendarDto.i_CalendarStatusId  = 1;
            _CalendarDto.i_ServiceId         = data.MasterServiceId;
            _CalendarDto.v_ProtocolId        = data.ProtocolId;
            _CalendarDto.i_NewContinuationId = 1;
            _CalendarDto.i_LineStatusId      = 1;
            _CalendarDto.i_IsVipId           = 0;

            bool calendarResult = new CalendarDal().AddCalendar(_CalendarDto, nodeId, userId);

            if (!calendarResult)
            {
                return(null);
            }
            int tipoEmpresa = ProtocolDal.ObtenerTipoEmpresaByProtocol(data.ProtocolId);

            if ((data.MasterServiceId == 19 || data.MasterServiceId == 10 || data.MasterServiceId == 15 || data.MasterServiceId == 16 || data.MasterServiceId == 17 || data.MasterServiceId == 18 || data.MasterServiceId == 19) && tipoEmpresa == 4)
            {
                bool resultHospi = new HospitalizacionDal().AddHospitalizacion(data.PersonId, data.ServiceId, nodeId, userId);
                if (!resultHospi)
                {
                    return(null);
                }
            }

            return(serviceId);
        }