コード例 #1
0
ファイル: ModificaPartes.cs プロジェクト: Guillemsc/GisAnaWin
        public void ActualitzaLlistaPartesLlista()
        {
            grid.Clear();

            if (propietaris_manager.parte_actual == null)
            {
                return;
            }

            List <tblLineasPartesFinca> lineas = propietaris_manager.GetLineasPerParteId(propietaris_manager.parte_actual.idParte);

            List <Parcela> parceles = propietaris_manager.GetParcelesSeleccionades();

            for (int i = 0; i < lineas.Count; i++)
            {
                Parcela parcela = null;
                for (int p = 0; p < parceles.Count; p++)
                {
                    if (parceles[p].GetTbl().idParcela == lineas[i].idParcela)
                    {
                        parcela = parceles[p];
                    }
                }

                if (parcela == null)
                {
                    continue;
                }

                Treball        treball  = propietaris_manager.GetTreballPerTreballId(lineas[i].idFamiliaCoste);
                tblPartesFinca parte    = propietaris_manager.GetPartePerParteId(propietaris_manager.parte_actual.idParte);
                Personal       personal = propietaris_manager.GetPersonalPerId(lineas[i].idAplicador.ToString());
                Maquina        maquina  = propietaris_manager.GetMaquinaPerId(lineas[i].idMaquinaria.ToString());
                Adob           adob     = propietaris_manager.GetAdobPerId(lineas[i].idProduteFito.ToString());

                string metrica_nom = "";
                if (lineas[i].idUnitatMetrica != null)
                {
                    UnitatMetrica metrica = propietaris_manager.GetUnitatMetricaPerId((int)lineas[i].idUnitatMetrica);
                    metrica_nom = metrica.GetTbl().Unitat;
                }

                grid.AddRow(treball, lineas[i].Descripcion, lineas[i].Unidades, lineas[i].idLinea.ToString(), metrica_nom, parte.Estat,
                            parcela.GetTbl().idParcelaVinicola, parcela.GetTbl().Ha, (bool)lineas[i].FertirrigacioSiNo ? "Si" : "No",
                            lineas[i].EficaciaTractament, personal, maquina, adob);
            }

            grid.CleanSelection();
        }
コード例 #2
0
        public UnitatMetrica GetUnitatMetricaPerNom(string nom)
        {
            UnitatMetrica ret = null;

            List <UnitatMetrica> unitats = GetUnitatsMetriques();

            for (int i = 0; i < unitats.Count(); i++)
            {
                if (unitats[i].GetTbl().Unitat.ToLower().Replace(" ", "") == nom.ToLower().Replace(" ", ""))
                {
                    ret = unitats[i];
                    break;
                }
            }

            return(ret);
        }
コード例 #3
0
        public UnitatMetrica GetUnitatMetricaPerId(int id)
        {
            UnitatMetrica ret = null;

            List <UnitatMetrica> unitats = GetUnitatsMetriques();

            for (int i = 0; i < unitats.Count(); i++)
            {
                if (unitats[i].GetTbl().id == id)
                {
                    ret = unitats[i];
                    break;
                }
            }

            return(ret);
        }
コード例 #4
0
 public void AfegirUnitatMetrica(UnitatMetrica uni)
 {
     unitats_metriques.Add(uni);
 }
コード例 #5
0
ファイル: ModificaPartes.cs プロジェクト: Guillemsc/GisAnaWin
        public void LineaParteClick(object sender, EventArgs e)
        {
            if (!grid.IsSelected())
            {
                return;
            }

            tblLineasPartesFinca linea_actual = null;
            Treball       treball             = null;
            UnitatMetrica unitat   = null;
            Personal      personal = null;
            Maquina       maquina  = null;
            Adob          adob     = null;

            string[] str = grid.GetSelectedRow();

            int id = int.Parse(str[3]);

            List <tblLineasPartesFinca> lineas = propietaris_manager.GetLineasPerParteId(propietaris_manager.parte_actual.idParte);

            for (int i = 0; i < lineas.Count; i++)
            {
                if (lineas[i].idLinea == id)
                {
                    linea_actual = lineas[i];
                    break;
                }
            }

            if (linea_actual == null)
            {
                return;
            }

            for (int y = 0; y < partes_linea_per_afegir.Count; y++)
            {
                if (partes_linea_per_afegir[y].idLinea == linea_actual.idLinea)
                {
                    linea_actual = partes_linea_per_afegir[y];
                    break;
                }
            }

            treball = propietaris_manager.GetTreballPerTreballId(linea_actual.idFamiliaCoste);

            if (linea_actual.idUnitatMetrica != null)
            {
                unitat = propietaris_manager.GetUnitatMetricaPerId((int)linea_actual.idUnitatMetrica);
            }

            if (treball == null)
            {
                return;
            }

            personal = propietaris_manager.GetPersonalPerId(linea_actual.idAplicador.ToString());
            maquina  = propietaris_manager.GetMaquinaPerId(linea_actual.idMaquinaria.ToString());
            adob     = propietaris_manager.GetAdobPerId(linea_actual.idProduteFito.ToString());

            treballs_combobox.SetSelectedElement(treball.GetTbl().Descripcio);
            data_dataselect.SetDate((DateTime)propietaris_manager.parte_actual.Fecha);
            descripcio_text_input.SetText(linea_actual.Descripcion);
            unitats_text_input.SetText(linea_actual.Unidades.ToString());
            fertirrigacio_checkbox.SetSelected((bool)linea_actual.FertirrigacioSiNo);

            if (adob != null)
            {
                adob_combobox.SetSelectedElement(adob.ToString());
            }
            else
            {
                adob_combobox.CleanSelection();
            }

            if (personal != null)
            {
                personal_combobox.SetSelectedElement(personal.ToString());
            }
            else
            {
                personal_combobox.CleanSelection();
            }

            if (maquina != null)
            {
                maquinaria_combobox.SetSelectedElement(maquina.ToString());
            }
            else
            {
                maquinaria_combobox.CleanSelection();
            }

            if (unitat != null)
            {
                unitats_mesura_combobox.SetSelectedElement(unitat.ToString());
            }
            else
            {
                unitats_mesura_combobox.CleanSelection();
            }

            eficacia_combobox.SetSelectedElement(linea_actual.EficaciaTractament.ToString());

            propietaris_manager.parte_linea_actual = linea_actual;
        }
コード例 #6
0
ファイル: ModificaPartes.cs プロジェクト: Guillemsc/GisAnaWin
        public void ModificaParteSeleccionat(object sender, EventArgs e)
        {
            decimal test;

            if (!grid.IsSelected() || !treballs_combobox.IsSelected() || propietaris_manager.parte_linea_actual == null || !decimal.TryParse(unitats_text_input.GetText(), out test))
            {
                return;
            }

            Treball       treball  = treballs_combobox.GetSelected() as Treball;
            UnitatMetrica unitat   = unitats_mesura_combobox.GetSelected() as UnitatMetrica;
            Maquina       maquina  = maquinaria_combobox.GetSelected() as Maquina;
            Personal      personal = personal_combobox.GetSelected() as Personal;
            Adob          adob     = adob_combobox.GetSelected() as Adob;

            tblLineasPartesFinca nova_linea = new tblLineasPartesFinca();

            nova_linea.CodigoEmpresa  = propietaris_manager.parte_linea_actual.CodigoEmpresa;
            nova_linea.idFamiliaCoste = propietaris_manager.parte_linea_actual.idFamiliaCoste;
            nova_linea.idLinea        = propietaris_manager.parte_linea_actual.idLinea;
            nova_linea.idParcela      = propietaris_manager.parte_linea_actual.idParcela;
            nova_linea.idParte        = propietaris_manager.parte_linea_actual.idParte;
            nova_linea.Observaciones  = propietaris_manager.parte_linea_actual.Observaciones;
            nova_linea.Precio         = propietaris_manager.parte_linea_actual.Precio;
            nova_linea.Total          = propietaris_manager.parte_linea_actual.Total;

            nova_linea.Descripcion       = descripcio_text_input.GetText();
            nova_linea.idFamiliaCoste    = treball.GetTbl().idCost;
            nova_linea.Unidades          = decimal.Parse(unitats_text_input.GetText());
            nova_linea.FertirrigacioSiNo = fertirrigacio_checkbox.IsSelected();

            if (maquinaria_combobox.IsSelected())
            {
                nova_linea.idMaquinaria = int.Parse(maquina.GetTbl().id);
            }

            if (personal_combobox.IsSelected())
            {
                nova_linea.idAplicador = int.Parse(personal.GetTbl().id);
            }

            if (eficacia_combobox.IsSelected())
            {
                nova_linea.EficaciaTractament = int.Parse((string)eficacia_combobox.GetSelected());
            }

            if (unitat != null)
            {
                nova_linea.idUnitatMetrica = unitat.GetTbl().id;
            }

            if (adob != null)
            {
                nova_linea.idProduteFito = adob.GetTbl().id;
            }

            // Comprova que aquesta linea no ha sigut ja modificata i actualitza
            for (int y = 0; y < partes_linea_per_afegir.Count; y++)
            {
                if (partes_linea_per_afegir[y].idLinea == nova_linea.idLinea)
                {
                    partes_linea_per_afegir.RemoveAt(y);
                    break;
                }
            }

            partes_linea_per_eliminar.Add(propietaris_manager.parte_linea_actual);
            partes_linea_per_afegir.Add(nova_linea);

            propietaris_manager.parte_linea_actual = nova_linea;

            Parcela        parcela = propietaris_manager.GetParcelaPerParcelaID(nova_linea.idParcela.ToString());
            tblPartesFinca parte   = propietaris_manager.GetPartePerParteId(nova_linea.idParte);

            grid.ModifyRow(grid.GetSelectedRowIndex(), treball, nova_linea.Descripcion, nova_linea.Unidades.ToString(),
                           nova_linea.idLinea.ToString(), unitat, parte.Estat, parcela.GetTbl().idParcelaVinicola, parcela.GetTbl().Ha,
                           (bool)nova_linea.FertirrigacioSiNo ? "Si" : "No", nova_linea.EficaciaTractament, personal, maquina, adob);
        }