コード例 #1
0
        private void Llenar_NO_SELECCIONADOS()
        {
            DB_EXT_DesignacionProd ListDes = new DB_EXT_DesignacionProd();

            GVNoDesignado.DataSource = ListDes.DB_Desplegar_DESIGNACION_PROD(LblIdUsuario.Text, Convert.ToInt32(LblIdCamp.Text), Convert.ToInt32(LblIdReg.Text), LblPrograma.Text, Convert.ToInt32(LblIdInsOrg.Text), "NO_SELECCIONADOS");
            GVNoDesignado.DataBind();
        }
コード例 #2
0
        private void Llenar_GVDESIGNADO()
        {
            DB_EXT_DesignacionProd ListDes = new DB_EXT_DesignacionProd();

            GVDesignado.DataSource = ListDes.DB_Desplegar_DESIGNACION_PROD(LblIdUser.Text, 0, 0, LblPrograma.Text, 0, "LISTDESIGNADOS");
            GVDesignado.DataBind();
        }
コード例 #3
0
        private void Llenar_GVDESIGNADO()
        {
            DB_EXT_DesignacionProd ListDes = new DB_EXT_DesignacionProd();
            DataTable dt = new DataTable();
            //GVDesignado.DataSource = ListDes.DB_Desplegar_DESIGNACION_PROD(LblIdUsuario.Text, 0, 0, LblPrograma.Text, Convert.ToInt32(LblIdInsOrg.Text), "SEGDESIGNADOS");
            //******************************TRATAMIENTO PARA LAS ETAPAS
            DB_EXT_Seguimiento ListSegPendiente = new DB_EXT_Seguimiento();
            List <EXT_SeguimientoPendiente> LSP = ListSegPendiente.DB_Desplegar_SEGUIMIENTOS_PENDIENTE();

            //LSP[0].Nombre_Anterior
            DT_PROD_CONSULTAS = ListDes.DB_Desplegar_DESIGNACION_PROD(LblIdUsuario.Text, 0, 0, LblPrograma.Text, Convert.ToInt32(LblIdInsOrg.Text), "SEGDESIGNADOS");
            dt = DT_PROD_CONSULTAS;//copiamos
            dt.Columns.Add("Id_Etapa", typeof(String));
            foreach (DataRow fila in dt.Rows)
            {
                int    number1    = 0;
                string Etapa      = fila["Etapa"].ToString();
                bool   canConvert = int.TryParse(Etapa, out number1);
                if (canConvert == true)
                {
                    foreach (EXT_SeguimientoPendiente row in LSP)
                    {
                        int id_sp         = row.Id_Seguimiento_pendiente;
                        int etapaobtenida = Convert.ToInt16(fila["Etapa"]);
                        if (id_sp == etapaobtenida)
                        {
                            fila["Etapa"]    = row.Nombre;
                            fila["Id_Etapa"] = row.Id_Seguimiento_pendiente.ToString();
                            break;
                        }
                    }
                }
                else
                {
                    foreach (EXT_SeguimientoPendiente row in LSP)
                    {
                        string old_name      = row.Nombre_Anterior;
                        string etapaobtenida = fila["Etapa"].ToString();
                        if (old_name == etapaobtenida)
                        {
                            fila["Etapa"]    = row.Nombre;
                            fila["Id_Etapa"] = row.Id_Seguimiento_pendiente.ToString();
                            break;
                        }
                    }
                }
            }
            //******************************
            GVDesignado.DataSource = dt;
            GVDesignado.DataBind();
            if (GVDesignado.Rows.Count == 0)
            {
                LblMsj1.Text = "No se seleccionó productores que formen parte de la muestra.";
            }
            else
            {
                LblMsj1.Text = string.Empty;
            }
        }
コード例 #4
0
 private void Llenar_GVDESIGNADO()
 {
     if (DDLOrgAsig.SelectedValue != "")
     {
         DB_EXT_DesignacionProd ListDes = new DB_EXT_DesignacionProd();
         GVDesignadoProd.DataSource = ListDes.DB_Desplegar_DESIGNACION_PROD(LblIdUsuario.Text, Convert.ToInt32(LblIdCamp.Text), Convert.ToInt32(LblIdReg.Text), DDLPrograma.SelectedValue, Convert.ToInt32(DDLOrgAsig.SelectedValue), "LIST_SELECCION");
     }
     GVDesignadoProd.DataBind();
 }
コード例 #5
0
        /// <summary>
        /// Seleccion Aleatoria de Productores a Tecnicos, solo la promera vez
        /// </summary>
        private void Random()
        {
            //List<int> numeros = new List<int>();
            //Random rnumero = new Random();
            //while (numeros.Count<12)// 20
            //{
            //    int num = rnumero.Next(1, 30); //números aleatorios entre 1 y 30
            //    if (!numeros.Any(x => x == num))// verificamos números repetidos
            //    {
            //        numeros.Add(num);
            //    }
            //}
            DataTable dtAll = new DataTable();

            dtAll.Columns.Add("Personeria_Juridica");
            dtAll.Columns.Add("Productor");
            dtAll.Columns.Add("ci");
            dtAll.Columns.Add("Comunidad");
            dtAll.Columns.Add("Municipio");
            dtAll.Columns.Add("Provincia");
            dtAll.Columns.Add("Tipo_Produccion");
            dtAll.Columns.Add("Has_Inscrito");
            dtAll.Columns.Add("Id_Productor");
            dtAll.Columns.Add("Id_Usuario");
            dtAll.Columns.Add("Estado");
            //0 muestra de tecnico
            DB_EXT_DesignacionOrg ListDesOrg = new DB_EXT_DesignacionOrg();
            DataTable             dt0        = new DataTable();

            dt0 = ListDesOrg.DB_Seleccionar_DESIGNACION_PROD_ORG_CONSULTAS(Convert.ToInt32(LblIdReg.Text), Convert.ToInt32(LblIdCamp.Text), LblIdUsuario.Text, DDLPrograma.SelectedValue);
            if (dt0.Rows.Count > 0)
            {
                //LblMsj.Text = "Productores Seleccionados, segun la muestra valida";
                //LblMaximo.Text = "20";
                var dtaux = dt0.AsEnumerable().Where(x => x.Field <string>("Id_Usuario") == LblIdUsuario.Text).ToList();
                int count = dtaux.Count;
                //LblContador.Text = Convert.ToString(count);
                //Contador = Convert.ToString(count);
                if (count == 0)
                {
                    //1 organizacion segun programa
                    DB_EXT_DesignacionOrg  desigorg = new DB_EXT_DesignacionOrg();
                    DB_EXT_DesignacionProd ListDes  = new DB_EXT_DesignacionProd();
                    DataTable dt1 = new DataTable();
                    DataTable dt2 = new DataTable();
                    dt1 = desigorg.DB_Seleccionar_DESIGNACION_ORG(Convert.ToInt32(LblIdReg.Text), Convert.ToInt32(LblIdCamp.Text), LblIdUsuario.Text, DDLPrograma.SelectedValue, "MUESTRA_PROD");
                    //2 llenamos todos los productores de las organizaciones que tenga asignado el usuario
                    foreach (DataRow row in dt1.Rows)
                    {
                        string idOrg = row["Id_InscripcionOrg"].ToString();
                        dt2 = ListDes.DB_Desplegar_DESIGNACION_PROD(LblIdUsuario.Text, Convert.ToInt32(LblIdCamp.Text), Convert.ToInt32(LblIdReg.Text), DDLPrograma.SelectedValue, Convert.ToInt32(idOrg), "LIST_SELECCION");
                        foreach (DataRow row2 in dt2.Rows)
                        {
                            DataRow fila = dtAll.NewRow();
                            fila["Personeria_Juridica"] = row2["Personeria_Juridica"].ToString();
                            fila["Productor"]           = row2["Productor"].ToString();
                            fila["ci"]              = row2["ci"].ToString();
                            fila["Comunidad"]       = row2["Comunidad"].ToString();
                            fila["Municipio"]       = row2["Municipio"].ToString();
                            fila["Provincia"]       = row2["Provincia"].ToString();
                            fila["Tipo_Produccion"] = row2["Tipo_Produccion"].ToString();
                            fila["Has_Inscrito"]    = row2["Has_Inscrito"].ToString();
                            fila["Id_Productor"]    = row2["Id_Productor"].ToString();
                            fila["Id_Usuario"]      = row2["Id_Usuario"].ToString();
                            fila["Estado"]          = row2["Estado"].ToString();
                            dtAll.Rows.Add(fila);
                        }
                    }
                    int        total   = dtAll.Rows.Count;
                    List <int> numeros = new List <int>();
                    Random     rnumero = new Random();
                    int        cc      = 0;
                    while (numeros.Count < 20)            // se asigna maximo 20 productores por tecnico entre todas sus organizaciones asignadas
                    {
                        int num = rnumero.Next(1, total); //números aleatorios entre 1 y 30
                        if (!numeros.Any(x => x == num))  // verificamos números repetidos
                        {
                            numeros.Add(num);
                            cc++;
                            int     index  = num;
                            DataRow rowq   = dtAll.Rows[index];
                            string  iduser = rowq["Id_Usuario"].ToString();
                            if (iduser == string.Empty)
                            {
                                EXT_DesignacionProd ObjDesigprod = new EXT_DesignacionProd();
                                ObjDesigprod.Id_Usuario   = LblIdUsuario.Text;
                                ObjDesigprod.Id_Productor = rowq["Id_Productor"].ToString();
                                //ObjDesigprod.Estado = chec.Checked;
                                ObjDesigprod.Estado = true;
                                ObjDesigprod.Etapa  = "VERIFICACION_PARCELA";
                                if (ColDesigProductores.Count == 0)
                                {
                                    IList <EXT_DesignacionProd> Col = new List <EXT_DesignacionProd>();
                                    ColDesigProductores = Col;
                                }
                                EXT_DesignacionProd ObjDP = ColDesigProductores.Where(x => x.Id_Usuario == ObjDesigprod.Id_Usuario &&
                                                                                      x.Id_Productor == ObjDesigprod.Id_Productor &&
                                                                                      x.Etapa == ObjDesigprod.Etapa).SingleOrDefault();
                                if (ObjDP == null)
                                {
                                    ColDesigProductores.Add(ObjDesigprod);
                                }
                                else
                                {
                                    numeros.Remove(num);
                                }
                            }
                            else
                            {
                                numeros.Remove(num);
                            }
                        }
                    }
                    DB_EXT_DesignacionProd Ins = new DB_EXT_DesignacionProd();
                    foreach (EXT_DesignacionProd row in ColDesigProductores)
                    {
                        //si existe lo elimina sino lo crea
                        Ins.DB_Registrar_DESIGNACION_PROD(row);
                    }
                    Llenar_GVDESIGNADO();
                    Calcular_MUESTRA_TECNICO();//luis.rojas
                    ColDesigProductores = new List <EXT_DesignacionProd>();
                }
            }
        }