示例#1
0
        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;
        }
示例#2
0
        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);
        }