コード例 #1
0
 public string AddDiagnosticRepository(DiagnosticCustom dataDiagnostic, int nodeId, int systemUserId)
 {
     try
     {
         DatabaseContext         ctx     = new DatabaseContext();
         DiagnosticRepositoryDto objDiag = new DiagnosticRepositoryDto();
         var id = new Common.Utils().GetPrimaryKey(nodeId, 29, "DR");
         objDiag.v_DiagnosticRepositoryId = id;
         objDiag.v_ServiceId            = dataDiagnostic.ServiceId;
         objDiag.v_DiseasesId           = dataDiagnostic.DiseaseId;
         objDiag.v_ComponentId          = dataDiagnostic.ComponentId;
         objDiag.i_AutoManualId         = (int)AutoManual.Manual;             // dr.AutoManualId;
         objDiag.i_PreQualificationId   = (int)PreQualification.Aceptado;     // dr.PreQualificationId;
         objDiag.i_FinalQualificationId = (int)FinalQualification.Definitivo; // dr.FinalQualificationId;
         objDiag.i_DiagnosticTypeId     = (int)TipoDx.Enfermedad_Comun;       // dr.DiagnosticTypeId;
         objDiag.i_IsDeleted            = 0;
         objDiag.i_InsertUserId         = systemUserId;
         objDiag.d_InsertDate           = DateTime.Now;
         ctx.DiagnosticRepository.Add(objDiag);
         ctx.SaveChanges();
         return(id);
     }
     catch (Exception ex)
     {
         return(null);
     }
 }
コード例 #2
0
        public bool SaveUpdateRecipe(BoardPrintRecipes data, int userId, int nodeId)
        {
            try
            {
                DatabaseContext ctx = new DatabaseContext();

                foreach (var item in data.ListProducts)
                {
                    DiagnosticCustom diag = new DiagnosticCustom();
                    diag.ComponentId = item.ComponentId;
                    diag.ServiceId   = data.ServiceId;
                    diag.DiseaseId   = item.DiseaseId;
                    if (item.RecetaId == null)
                    {
                        string diagnosticRespositoryId = new DiagnosticDal().AddDiagnosticRepository(diag, userId, nodeId);
                        if (diagnosticRespositoryId == null)
                        {
                            return(false);
                        }
                        else
                        {
                            item.DiagnosticRespository = diagnosticRespositoryId;
                        }
                    }
                    else
                    {
                        var objReceta = ctx.Receta.Where(x => x.i_IdReceta == item.RecetaId).FirstOrDefault();
                        item.DiagnosticRespository = objReceta.v_DiagnosticRepositoryId;
                    }



                    var  getPlan   = new PlanDal().GetPlan(data.ServiceId, item.IdLinea);
                    bool tienePlan = false;
                    if (getPlan.Count > 0)
                    {
                        tienePlan = true;
                    }

                    if (tienePlan)
                    {
                        if (getPlan[0].i_EsCoaseguro == (int)SiNo.Si)
                        {
                            var planCoaseguro = new PlanDal().GetPlanForImporte(data.ServiceId, item.DiagnosticRespository);
                            if (planCoaseguro.Count > 0)
                            {
                                item.SaldoPaciente    = (planCoaseguro[0].d_ImporteCo / 100) * (item.Price * decimal.Parse(item.Quantity.ToString()));
                                item.SaldoAseguradora = (item.Price * decimal.Parse(item.Quantity.ToString())) - item.SaldoPaciente;
                            }
                        }
                    }
                    else
                    {
                        item.SaldoPaciente = item.Price;
                    }


                    if (item.RecetaId == null)//Creo
                    {
                        RecetaBE _RecetaDto = new RecetaBE();
                        _RecetaDto.v_DiagnosticRepositoryId = item.DiagnosticRespository;
                        _RecetaDto.d_Cantidad           = decimal.Parse(item.Quantity.ToString());
                        _RecetaDto.v_Duracion           = item.Duration;
                        _RecetaDto.v_Posologia          = item.Posologia;
                        _RecetaDto.t_FechaFin           = item.FechaFin;
                        _RecetaDto.v_IdProductoDetalle  = item.ProductoDetalleId;
                        _RecetaDto.v_IdUnidadProductiva = item.IdLinea;
                        _RecetaDto.v_ServiceId          = data.ServiceId;
                        _RecetaDto.d_SaldoPaciente      = item.SaldoPaciente;
                        _RecetaDto.d_SaldoAseguradora   = item.SaldoAseguradora;

                        ctx.Receta.Add(_RecetaDto);
                    }
                    else//Actualizo
                    {
                        var objReceta = ctx.Receta.Where(x => x.i_IdReceta == item.RecetaId).FirstOrDefault();
                        objReceta.v_DiagnosticRepositoryId = item.DiagnosticRespository;
                        objReceta.d_Cantidad           = decimal.Parse(item.Quantity.ToString());
                        objReceta.v_Duracion           = item.Duration;
                        objReceta.v_Posologia          = item.Posologia;
                        objReceta.t_FechaFin           = item.FechaFin;
                        objReceta.v_IdProductoDetalle  = item.ProductoDetalleId;
                        objReceta.v_IdUnidadProductiva = item.IdLinea;
                        objReceta.v_ServiceId          = data.ServiceId;
                        objReceta.d_SaldoPaciente      = item.SaldoPaciente;
                        objReceta.d_SaldoAseguradora   = item.SaldoAseguradora;
                    }
                }


                ctx.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }