예제 #1
0
        public CSolution_interm_methods GetSolution_interm_methods(int idtemplate_method, int idsolution_interm)
        {
            CSolution_interm_methodsFactory faGroup_solution_methods = new CSolution_interm_methodsFactory();
            List <CSolution_interm_methods> lstTmp = faGroup_solution_methods.GetAll();

            try
            {
                if (lstTmp.Exists(c => c.Idtemplate_method == idtemplate_method && c.Idsolution_interm == idsolution_interm))
                {
                    CSolution_interm_methods oSolution_interm_methods =
                        lstTmp.Single(c => c.Idtemplate_method == idtemplate_method &&
                                      c.Idsolution_interm == idsolution_interm);
                    return(oSolution_interm_methods);
                }
            }
            catch
            {
                if (lstTmp.Count(c => c.Idtemplate_method == idtemplate_method && c.Idsolution_interm == idsolution_interm) > 1)
                {
                    return(lstTmp[0]);
                }
                return(null);
            }
            return(null);
        }
예제 #2
0
        /// <summary>
        /// Populate business objects from the data reader
        /// </summary>
        /// <param name="dataReader">data reader</param>
        /// <returns>list of CSolution_interm_methods</returns>
        internal List <CSolution_interm_methods> PopulateObjectsFromReader(IDataReader dataReader)
        {
            List <CSolution_interm_methods> list = new List <CSolution_interm_methods>();

            while (dataReader.Read())
            {
                CSolution_interm_methods businessObject = new CSolution_interm_methods();
                PopulateBusinessObjectFromReader(businessObject, dataReader);
                list.Add(businessObject);
            }
            return(list);
        }
예제 #3
0
        /// <summary>
        /// Populate business object from data reader
        /// </summary>
        /// <param name="businessObject">business object</param>
        /// <param name="dataReader">data reader</param>
        internal void PopulateBusinessObjectFromReader(CSolution_interm_methods businessObject, IDataReader dataReader)
        {
            businessObject.Idsolution_methods = dataReader.GetInt32(dataReader.GetOrdinal(CSolution_interm_methods.CSolution_interm_methodsFields.Idsolution_methods.ToString()));

            if (!dataReader.IsDBNull(dataReader.GetOrdinal(CSolution_interm_methods.CSolution_interm_methodsFields.Idsolution_interm.ToString())))
            {
                businessObject.Idsolution_interm = dataReader.GetInt32(dataReader.GetOrdinal(CSolution_interm_methods.CSolution_interm_methodsFields.Idsolution_interm.ToString()));
            }

            if (!dataReader.IsDBNull(dataReader.GetOrdinal(CSolution_interm_methods.CSolution_interm_methodsFields.Idtemplate_method.ToString())))
            {
                businessObject.Idtemplate_method = dataReader.GetInt32(dataReader.GetOrdinal(CSolution_interm_methods.CSolution_interm_methodsFields.Idtemplate_method.ToString()));
            }

            if (!dataReader.IsDBNull(dataReader.GetOrdinal(CSolution_interm_methods.CSolution_interm_methodsFields.Status.ToString())))
            {
                businessObject.Status = dataReader.GetBoolean(dataReader.GetOrdinal(CSolution_interm_methods.CSolution_interm_methodsFields.Status.ToString()));
            }
        }
예제 #4
0
        /// <summary>
        /// Select by primary key
        /// </summary>
        /// <param name="keys">primary keys</param>
        /// <returns>CSolution_interm_methods business object</returns>
        public CSolution_interm_methods SelectByPrimaryKey(CSolution_interm_methodsKeys keys)
        {
            NpgsqlCommand sqlCommand = new NpgsqlCommand();

            sqlCommand.CommandText = "public.sp_solution_interm_methods_SelectByPrimaryKey";
            sqlCommand.CommandType = CommandType.StoredProcedure;

            // Use connection object of base class
            sqlCommand.Connection = MainConnection;

            try
            {
                sqlCommand.Parameters.Add(new NpgsqlParameter("p_idsolution_methods", NpgsqlDbType.Integer, 4, "", ParameterDirection.Input, false, 0, 0, DataRowVersion.Proposed, keys.Idsolution_methods));


                MainConnection.Open();

                NpgsqlDataReader dataReader = sqlCommand.ExecuteReader();

                if (dataReader.Read())
                {
                    CSolution_interm_methods businessObject = new CSolution_interm_methods();

                    PopulateBusinessObjectFromReader(businessObject, dataReader);

                    return(businessObject);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                throw new Exception("CSolution_interm_methods::SelectByPrimaryKey::Error occured.", ex);
            }
            finally
            {
                MainConnection.Close();
                sqlCommand.Dispose();
            }
        }
예제 #5
0
        /// <summary>
        /// insert new row in the table
        /// </summary>
        /// <param name="businessObject">business object</param>
        /// <returns>true of successfully insert</returns>
        public bool Insert(CSolution_interm_methods businessObject)
        {
            NpgsqlCommand sqlCommand = new NpgsqlCommand();

            sqlCommand.CommandText = "public.sp_solution_interm_methods_Insert";
            sqlCommand.CommandType = CommandType.StoredProcedure;

            // Use connection object of base class
            sqlCommand.Connection = MainConnection;

            try
            {
                sqlCommand.Parameters.AddWithValue("p_idsolution_methods", businessObject.Idsolution_methods);
                sqlCommand.Parameters["p_idsolution_methods"].NpgsqlDbType = NpgsqlDbType.Integer;
                sqlCommand.Parameters["p_idsolution_methods"].Direction    = ParameterDirection.InputOutput;

                sqlCommand.Parameters.AddWithValue("p_idsolution_interm", businessObject.Idsolution_interm);
                sqlCommand.Parameters["p_idsolution_interm"].NpgsqlDbType = NpgsqlDbType.Integer;
                sqlCommand.Parameters.AddWithValue("p_idtemplate_method", businessObject.Idtemplate_method);
                sqlCommand.Parameters["p_idtemplate_method"].NpgsqlDbType = NpgsqlDbType.Integer;
                sqlCommand.Parameters.AddWithValue("p_status", businessObject.Status);
                sqlCommand.Parameters["p_status"].NpgsqlDbType = NpgsqlDbType.Boolean;


                MainConnection.Open();

                sqlCommand.ExecuteNonQuery();
                businessObject.Idsolution_methods = Convert.ToInt32(sqlCommand.Parameters["p_idsolution_methods"].Value);

                return(true);
            }
            catch (Exception ex)
            {
                throw new Exception("CSolution_interm_methods::Insert::Error occured.", ex);
            }
            finally
            {
                MainConnection.Close();
                sqlCommand.Dispose();
            }
        }
예제 #6
0
        /// <summary>
        /// update row in the table
        /// </summary>
        /// <param name="businessObject">business object</param>
        /// <returns>true for successfully updated</returns>
        public bool Update(CSolution_interm_methods businessObject)
        {
            NpgsqlCommand sqlCommand = new NpgsqlCommand();

            sqlCommand.CommandText = "public.sp_solution_interm_methods_Update";
            sqlCommand.CommandType = CommandType.StoredProcedure;

            // Use connection object of base class
            sqlCommand.Connection = MainConnection;

            try
            {
                sqlCommand.Parameters.AddWithValue("p_idsolution_methods", businessObject.Idsolution_methods);
                sqlCommand.Parameters["p_idsolution_methods"].NpgsqlDbType = NpgsqlDbType.Integer;
                sqlCommand.Parameters.AddWithValue("p_idsolution_interm", businessObject.Idsolution_interm);
                sqlCommand.Parameters["p_idsolution_interm"].NpgsqlDbType = NpgsqlDbType.Integer;
                sqlCommand.Parameters.AddWithValue("p_idtemplate_method", businessObject.Idtemplate_method);
                sqlCommand.Parameters["p_idtemplate_method"].NpgsqlDbType = NpgsqlDbType.Integer;
                sqlCommand.Parameters.AddWithValue("p_status", businessObject.Status);
                sqlCommand.Parameters["p_status"].NpgsqlDbType = NpgsqlDbType.Boolean;


                MainConnection.Open();

                if (Convert.ToInt32(sqlCommand.ExecuteScalar()) > 0)
                {
                    return(true);
                }
                return(false);
            }
            catch (Exception ex)
            {
                throw new Exception("CSolution_interm_methods::Update::Error occured.", ex);
            }
            finally
            {
                MainConnection.Close();
                sqlCommand.Dispose();
            }
        }
예제 #7
0
        private void ucSign1_OnSign(bool login)
        {
            if (login)
            {
                if (ckDisabledSolution.Checked)
                {
                    //desactiva toda solución y sus métodos
                    if (MessageBox.Show("Esta seguro que desea desactivar la solución.", "Desactivando solución", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes)
                    {
                        //desactivar solucion
                        TreeListNode     node = treeSolInterm.FocusedNode;
                        int              idsolution_interm = Convert.ToInt32(node["Idsolution_interm"]);
                        CSolution_interm sol = new CSolution_intermFactory().GetAll().Where(x => x.Idsolution_interm == idsolution_interm).FirstOrDefault();
                        sol.Solution_obs    = cbMotivo.Text;
                        sol.Solution_status = false;
                        if (sol != null)
                        {
                            new CSolution_intermFactory().Update(sol);
                        }
                    }
                }
                else
                {
                    if (Son_Datos_Correctos())
                    {
                        //según la ubicación de la pagina graba
                        //guardando soluciones
                        int idsolution_interm = 0;
                        CSolution_intermFactory faSolution_interm = new CSolution_intermFactory();
                        bool result_solution = false;

                        TreeListNode node = treeSolInterm.FocusedNode;
                        idsolution_interm = Convert.ToInt32(node["Idsolution_interm"]);
                        int typeSol = Convert.ToInt32(node["Type_sol"]);

                        for (int i = 0; i < lstSolution.Count; i++)
                        {
                            result_solution = false;

                            if (lstSolution[i].Idsolution_interm == idsolution_interm)
                            {
                                if (idsolution_interm == 0)
                                {
                                    // 1:{solución intermedia1}, 2:{solución intermedia 2}, 3:{estandar de verificación}
                                    lstSolution[i].Cod_solution = null;

                                    if (!(result_solution = faSolution_interm.Update(lstSolution[i])))
                                    {
                                        result_solution = faSolution_interm.Insert(lstSolution[i]);
                                    }

                                    // --- asignar un correlativo dependiendo del tipo de solución
                                    if (result_solution)
                                    {
                                        idsolution_interm = lstSolution[i].Idsolution_interm;

                                        ModCorrelatives oModCorrelatives = new ModCorrelatives();
                                        if (lstSolution[i].Type_sol == 1)
                                        {
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.SolucionInterm1);
                                        }
                                        else if (lstSolution[i].Type_sol == 2)
                                        {
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.SolucionInterm2);
                                        }
                                        else if (lstSolution[i].Type_sol == 3)
                                        {
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.EstandarVerificacion);
                                        }
                                        else if (lstSolution[i].Type_sol == 4)
                                        {
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.EstandarCalibracion);
                                        }

                                        faSolution_interm.Update(lstSolution[i]);

                                        // guardar método actual a la solución
                                        CSolution_interm_methods oSolution_interm_methods = new CSolution_interm_methods();
                                        oSolution_interm_methods.Idsolution_interm = lstSolution[i].Idsolution_interm;
                                        oSolution_interm_methods.Idtemplate_method = Convert.ToInt32(cbMethod1.EditValue);
                                        oSolution_interm_methods.Status            = true;

                                        if (!new CSolution_interm_methodsFactory().Update(oSolution_interm_methods))
                                        {
                                            new CSolution_interm_methodsFactory().Insert(oSolution_interm_methods);
                                        }

                                        if (typeSol == 4)
                                        {
                                            // guardar estandares de calibración
                                            ucCalibStd1.SaveCalibs(lstSolution[i]);
                                        }
                                    }
                                }
                                else // solucion existente
                                {
                                    if (typeSol == 1 || typeSol == 2 || typeSol == 3)
                                    {
                                        if (ckAssignMethod.Checked)
                                        {
                                            // guardar método actual a la solución
                                            CSolution_interm_methods oSolution_interm_methods = new CSolution_interm_methods();
                                            oSolution_interm_methods.Idsolution_interm = lstSolution[i].Idsolution_interm;
                                            oSolution_interm_methods.Idtemplate_method = Convert.ToInt32(cbMethod1.EditValue);
                                            oSolution_interm_methods.Status            = true;

                                            if (!new CSolution_interm_methodsFactory().Update(oSolution_interm_methods))
                                            {
                                                new CSolution_interm_methodsFactory().Insert(oSolution_interm_methods);
                                            }
                                        }
                                    }
                                    else if (typeSol == 4)
                                    {
                                        // asignar método, solo si no lo está
                                        CSolution_interm_methods oSolution_interm_methods = new CSolution_interm_methods();
                                        oSolution_interm_methods.Idsolution_interm = lstSolution[i].Idsolution_interm;
                                        oSolution_interm_methods.Idtemplate_method = Convert.ToInt32(cbMethod1.EditValue);
                                        oSolution_interm_methods.Status            = true;

                                        if (!new CSolution_interm_methodsFactory().Update(oSolution_interm_methods))
                                        {
                                            new CSolution_interm_methodsFactory().Insert(oSolution_interm_methods);
                                        }

                                        // guardar estandares de calibración
                                        ucCalibStd1.SaveCalibs(lstSolution[i]);
                                    }
                                }
                            }
                        }


                        treeSolInterm.DataSource = lstSolution;
                        gcMethods.DataSource     = new ModSolInterm().GetMethodsBySol(idsolution_interm);

                        // Seleccionar solucion
                        if (idsolution_interm != 0)
                        {
                            TreeListNode nodo = treeSolInterm.FindNodeByFieldValue("Idsolution_interm", idsolution_interm);
                            treeSolInterm.FocusedNode = nodo;
                        }

                        new FormMessage("Guardado", "Guardado correctamente.", true, false).ShowDialog();

                        ucSign1.Clear();
                        treeSolInterm.ExpandAll();
                    }
                    else
                    {
                        ucSign1.Clear();
                    }
                }
            }
            else
            {
                new FormMessage("Error", "Contraseña incorrecta.", true, false).ShowDialog();
            }
        }
예제 #8
0
        private void ucSign1_OnSign(bool login)
        {
            if (login)
            {
                if (ckDisabledSolution.Checked)
                {
                    //desactiva toda solución y sus métodos
                    if (MessageBox.Show("Esta seguro que desea desactivar la solución.", "Desactivando solución", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes)
                    {
                        //desactivar solucion
                        TreeListNode node = treeSolInterm.FocusedNode;
                        int idsolution_interm = Convert.ToInt32(node["Idsolution_interm"]);
                        CSolution_interm sol = new CSolution_intermFactory().GetAll().Where(x => x.Idsolution_interm == idsolution_interm).FirstOrDefault();
                        sol.Solution_obs = cbMotivo.Text;
                        sol.Solution_status = false;
                        if (sol != null)
                            new CSolution_intermFactory().Update(sol);
                    }
                }
                else
                {
                    if (Son_Datos_Correctos())
                    {
                        //según la ubicación de la pagina graba
                        //guardando soluciones
                        int idsolution_interm = 0;
                        CSolution_intermFactory faSolution_interm = new CSolution_intermFactory();
                        bool result_solution = false;

                        TreeListNode node = treeSolInterm.FocusedNode;
                        idsolution_interm = Convert.ToInt32(node["Idsolution_interm"]);
                        int typeSol = Convert.ToInt32(node["Type_sol"]);

                        for (int i = 0; i < lstSolution.Count; i++)
                        {
                            result_solution = false;

                            if (lstSolution[i].Idsolution_interm == idsolution_interm)
                            {
                                if (idsolution_interm == 0)
                                {
                                    // 1:{solución intermedia1}, 2:{solución intermedia 2}, 3:{estandar de verificación}
                                    lstSolution[i].Cod_solution = null;

                                    if (!(result_solution = faSolution_interm.Update(lstSolution[i])))
                                        result_solution = faSolution_interm.Insert(lstSolution[i]);

                                    // --- asignar un correlativo dependiendo del tipo de solución
                                    if (result_solution)
                                    {
                                        idsolution_interm = lstSolution[i].Idsolution_interm;

                                        ModCorrelatives oModCorrelatives = new ModCorrelatives();
                                        if (lstSolution[i].Type_sol == 1)
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.SolucionInterm1);
                                        else if (lstSolution[i].Type_sol == 2)
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.SolucionInterm2);
                                        else if (lstSolution[i].Type_sol == 3)
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.EstandarVerificacion);
                                        else if (lstSolution[i].Type_sol == 4)
                                            lstSolution[i].Cod_solution = oModCorrelatives.GetCorrelative(Comun.Correlative.EstandarCalibracion);

                                        faSolution_interm.Update(lstSolution[i]);

                                        // guardar método actual a la solución
                                        CSolution_interm_methods oSolution_interm_methods = new CSolution_interm_methods();
                                        oSolution_interm_methods.Idsolution_interm = lstSolution[i].Idsolution_interm;
                                        oSolution_interm_methods.Idtemplate_method = Convert.ToInt32(cbMethod1.EditValue);
                                        oSolution_interm_methods.Status = true;

                                        if (!new CSolution_interm_methodsFactory().Update(oSolution_interm_methods))
                                            new CSolution_interm_methodsFactory().Insert(oSolution_interm_methods);

                                        if (typeSol == 4)
                                        {
                                            // guardar estandares de calibración
                                            ucCalibStd1.SaveCalibs(lstSolution[i]);
                                        }
                                    }
                                }
                                else // solucion existente
                                {
                                    if (typeSol == 1 || typeSol == 2 || typeSol == 3)
                                    {
                                        if (ckAssignMethod.Checked)
                                        {
                                            // guardar método actual a la solución
                                            CSolution_interm_methods oSolution_interm_methods = new CSolution_interm_methods();
                                            oSolution_interm_methods.Idsolution_interm = lstSolution[i].Idsolution_interm;
                                            oSolution_interm_methods.Idtemplate_method = Convert.ToInt32(cbMethod1.EditValue);
                                            oSolution_interm_methods.Status = true;

                                            if (!new CSolution_interm_methodsFactory().Update(oSolution_interm_methods))
                                                new CSolution_interm_methodsFactory().Insert(oSolution_interm_methods);
                                        }
                                    }
                                    else if (typeSol == 4)
                                    {
                                        // asignar método, solo si no lo está
                                        CSolution_interm_methods oSolution_interm_methods = new CSolution_interm_methods();
                                        oSolution_interm_methods.Idsolution_interm = lstSolution[i].Idsolution_interm;
                                        oSolution_interm_methods.Idtemplate_method = Convert.ToInt32(cbMethod1.EditValue);
                                        oSolution_interm_methods.Status = true;

                                        if (!new CSolution_interm_methodsFactory().Update(oSolution_interm_methods))
                                            new CSolution_interm_methodsFactory().Insert(oSolution_interm_methods);

                                        // guardar estandares de calibración
                                        ucCalibStd1.SaveCalibs(lstSolution[i]);
                                    }
                                }
                            }
                        }

                        treeSolInterm.DataSource = lstSolution;
                        gcMethods.DataSource = new ModSolInterm().GetMethodsBySol(idsolution_interm);

                        // Seleccionar solucion
                        if (idsolution_interm != 0)
                        {
                            TreeListNode nodo = treeSolInterm.FindNodeByFieldValue("Idsolution_interm", idsolution_interm);
                            treeSolInterm.FocusedNode = nodo;
                        }

                        new FormMessage("Guardado", "Guardado correctamente.", true, false).ShowDialog();

                        ucSign1.Clear();
                        treeSolInterm.ExpandAll();
                    }
                    else
                    {
                        ucSign1.Clear();
                    }

                }
            }
            else
                new FormMessage("Error", "Contraseña incorrecta.", true, false).ShowDialog();
        }