//Inserta certificado //Devuelve ya existe = 0, no existe poliza = 1, error = 0, se inserto = cer_Id public static string InsertarCertificado(string[] vector, int div) { string respuesta = "0"; int registros; DAOAdministrarCertificado objAdministrarCertificado = new DAOAdministrarCertificado(); //Variables del certificado int agencia; int tipoDocumento; string ter_Id; DateTime cer_FechaExpedicion; DateTime cer_FechaVigenciaEndoso; DateTime cer_FechaVencimientoEndoso; DateTime cer_VigenciaDesde; DateTime cer_FechaProduccion; int ase_Codigo; string ase_Nombre; int compania; int producto; int pro_Id; string cer_Certificado; int endoso; int cer_Endoso; int cer_Anualidad; int cer_ConsecutivoEndoso; double cer_PrimaTotal; string pla_Nit; string pla_Nombre; string pol_Numero; string paga_Identificacion; string paga_Nombre; int ase_Id; int paga_Id; int con_Id; int pla_Id; int age_Id; int cer_AnoProduccion; int MesProduccion; string MesProduccionLetras; DateTime VigenciaHasta; string pol_Id; int dep_Id = dep_IdN; agencia = (vector[1] == string.Empty) ? 0 : int.Parse(vector[1].ToString()); tipoDocumento = ConversionTipoDocumento(vector[2].ToString()); ter_Id = vector[3].ToString(); cer_FechaExpedicion = (vector[4] == string.Empty) ? DateTime.MinValue : Convert.ToDateTime(vector[4].ToString()); cer_FechaVigenciaEndoso = (vector[5] == string.Empty) ? DateTime.MinValue : Convert.ToDateTime(vector[5].ToString()); cer_FechaVencimientoEndoso = (vector[6] == string.Empty) ? DateTime.MinValue : Convert.ToDateTime(vector[6].ToString()); cer_VigenciaDesde = (vector[7] == string.Empty) ? DateTime.MinValue : Convert.ToDateTime(vector[7].ToString()); cer_FechaProduccion = (cer_FechaExpedicion.Day < 21) ? cer_FechaExpedicion : cer_FechaExpedicion.AddMonths(1); ase_Codigo = (vector[8] == string.Empty) ? 0 : int.Parse(vector[8].ToString()); ase_Nombre = vector[9].ToString(); compania = (vector[10] == string.Empty) ? 0 : int.Parse(vector[10].ToString()); producto = (vector[11] == string.Empty) ? 0 : int.Parse(vector[11].ToString()); pro_Id = (vector[12] == string.Empty) ? 0 : int.Parse(vector[12].ToString()); cer_Certificado = (vector[13] == string.Empty) ? "0" : vector[13].ToString(); endoso = (vector[14] == string.Empty) ? 0 : int.Parse(vector[14].ToString()); cer_Endoso = (vector[15] == string.Empty) ? 0 : int.Parse(vector[15].ToString()); cer_Anualidad = (vector[16] == string.Empty) ? 0 : int.Parse(vector[16].ToString()); cer_ConsecutivoEndoso = (vector[17] == string.Empty) ? 0 : int.Parse(vector[17].ToString()); cer_PrimaTotal = (vector[18] == string.Empty) ? 0 : double.Parse(vector[18].ToString()); cer_PrimaTotal = cer_PrimaTotal / div; pla_Nit = vector[19].ToString(); pla_Nombre = vector[20].ToString(); pol_Numero = vector[21].ToString(); paga_Identificacion = vector[22].ToString(); paga_Nombre = vector[23].ToString(); cer_AnoProduccion = cer_FechaProduccion.Year; MesProduccion = cer_FechaProduccion.Month; DateTimeFormatInfo temMesLetras = new CultureInfo("es-ES", false).DateTimeFormat; MesProduccionLetras = temMesLetras.GetMonthName(cer_FechaProduccion.Month).ToUpper(); VigenciaHasta = cer_VigenciaDesde.AddYears(1); //Consulta certificado por tercero y producto DataTable dtCertificado = objAdministrarCertificado.sp_ConsultarNewCertificadoPorTerceroProducto(ter_Id, pro_Id, cer_Certificado); if (dtCertificado.Rows.Count != 0) { DataTable dtCertificadoNuevo = objAdministrarCertificado.spDuplicarCertificado(dtCertificado.Rows[0]["cer_Id"].ToString()); cer_IdAnterior = dtCertificado.Rows[0]["cer_Id"].ToString(); //Consulta poliza por el numero pol_numero DataTable dtPoliza = objAdministrarCertificado.sp_ConsultarNewPolizaPorGR(pol_Numero); if (dtPoliza.Rows.Count == 0) { pol_Id = dtCertificado.Rows[0]["pol_Id"].ToString(); } else { pol_Id = dtPoliza.Rows[0]["pol_Id"].ToString(); } //Consulta la Localidad por la poliza GR DataTable dtLocalidad = objAdministrarCertificado.sp_ConsultarLocalidadPorGR(pol_Numero); if (dtLocalidad.Rows.Count != 0) { dep_Id = int.Parse(dtLocalidad.Rows[0]["dep_Id"].ToString()); } else { dep_Id = int.Parse(dtCertificado.Rows[0]["Localidad"].ToString()); } //Consulta asesor por el codigo ase_Codigo DataTable dtAsesor = objAdministrarCertificado.sp_ConsultarNewAsesorPorCodigo(ase_Codigo); if (dtAsesor.Rows.Count == 0) { objAdministrarCertificado.sp_InsertarAsesor(ase_Codigo, "PENDIENTE", "X ASIGNAR", dtLocalidad.Rows[0]["dep_Id"].ToString(), com_Id, "SI", "NO"); dtAsesor = objAdministrarCertificado.sp_ConsultarNewAsesorPorCodigo(ase_Codigo); } ase_Id = int.Parse(dtAsesor.Rows[0]["ase_Id"].ToString()); paga_Id = paga_IdN; con_Id = con_IdN; //Consulta plantel por nombre DataTable dtPlantel = new DataTable(); if (pla_Nombre != string.Empty) { dtPlantel = objAdministrarCertificado.sp_ConsultarPlantel(pla_Nombre); } if (dtPlantel.Rows.Count != 0) { pla_Id = int.Parse(dtPlantel.Rows[0]["pla_Id"].ToString()); } else { pla_Id = int.Parse(dtCertificado.Rows[0]["pla_Id"].ToString()); } //Consulta la agencia por la poliza GR DataTable dtAgencia = objAdministrarCertificado.sp_ConsultarAgenciaPorGR(pol_Numero); if (dtAgencia.Rows.Count != 0) { age_Id = int.Parse(dtAgencia.Rows[0]["age_Id"].ToString()); } else { age_Id = int.Parse(dtCertificado.Rows[0]["age_Id"].ToString()); } //Se inserta el certificado registros = objAdministrarCertificado.sp_ActualizarCertificado(dtCertificadoNuevo.Rows[0]["cer_Id"].ToString(), age_Id, cer_FechaExpedicion, cer_VigenciaDesde, ase_Id, paga_Id, cer_FechaRecibido, pro_Id, cer_Endoso, 2, 3, estcar_Id, cer_PrimaTotal, con_Id, cer_EstadoNegocio, dep_Id, tipoMovimientoN, VigenciaHasta, VigenciaHasta, pla_Id, pol_Id, mom_Id, cer_FechaDigitacion); if (registros != 0) { respuesta = dtCertificadoNuevo.Rows[0]["cer_Id"].ToString(); } } else { respuesta = "0"; } return(respuesta); }