Пример #1
0
        // registramos los conceptos remunerativos de un cargo previamente registrado
        public ET_entidad set_001(ET_R30 objEntity)
        {
            _Entidad = new ET_entidad();

            string Mensaje_error;

            using (SqlConnection cn = new SqlConnection(_cnx.conexion))
            {
                cn.Open();
                SqlTransaction sqlTran = cn.BeginTransaction();
                SqlCommand     cmd     = new SqlCommand("pa_TR30_set001", cn, sqlTran);
                cmd.CommandType = CommandType.StoredProcedure;
                try
                {
                    cmd.Parameters.Add("@P_MENSAJE_RESPUESTA", SqlDbType.VarChar, 2000).Direction = ParameterDirection.Output;

                    cmd.Parameters.Add("@p_TR30_TR29_ID", SqlDbType.Int).Value          = objEntity._TR30_TR29_ID;
                    cmd.Parameters.Add("@p_TR30_TM40_ID", SqlDbType.VarChar, 10).Value  = objEntity._TR30_TM40_ID;
                    cmd.Parameters.Add("@p_TR30_TM2_ID", SqlDbType.VarChar, 10).Value   = _global._TM2_ID;
                    cmd.Parameters.Add("@p_TR30_DESCRIP", SqlDbType.VarChar, 300).Value = objEntity._TR30_DESCRIP;
                    cmd.Parameters.Add("@p_TR30_UCREA", SqlDbType.VarChar, 10).Value    = _global._U_SESSION;
                    cmd.Parameters.Add("@P_TR30_AFECTO", SqlDbType.SmallInt).Value      = objEntity._TR30_AFECTO;
                    cmd.Parameters.Add("@p_TR30_IMPORTE", SqlDbType.Decimal).Value      = objEntity._TR30_IMPORTE;
                    cmd.Parameters.Add("@P_TR30_PORCENTAJE", SqlDbType.Decimal).Value   = objEntity._TR30_PORCENTAJE;

                    cmd.ExecuteNonQuery();
                    sqlTran.Commit();

                    _Entidad._hubo_error = false;
                }
                catch (SqlException exsql)
                {
                    Mensaje_error = exsql.Message;
                    try
                    {
                        sqlTran.Rollback();
                    }
                    catch (Exception exRollback)
                    {
                        Mensaje_error = exRollback.Message;
                    }

                    Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + exsql.Message.ToString()));
                    if (exsql.InnerException != null)
                    {
                        Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + "Inner exception: " + exsql.InnerException.Message));
                    }
                    Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + "Stack trace: " + exsql.StackTrace));

                    _Entidad._hubo_error        = true;
                    _Entidad._contenido_mensaje = Mensaje_error;
                    _Entidad._titulo_mensaje    = "Error!";
                }
                finally
                {
                    cn.Close();
                }
            }
            return(_Entidad);
        }
Пример #2
0
        //ACTUALIZAMOS LOS CONCEPTOS REMUNERATIVOS EDITADOS DESDE LA VISTA
        public bool set_002(ET_R30 objEntity)
        {
            string Msg_respuesta;
            bool   respuesta = true;

            using (SqlConnection cn = new SqlConnection(_cnx.conexion))
            {
                cn.Open();
                SqlTransaction sqlTran = cn.BeginTransaction();
                SqlCommand     cmd     = new SqlCommand("pa_tr30_set002", cn, sqlTran);
                cmd.CommandType = CommandType.StoredProcedure;
                try
                {
                    cmd.Parameters.Add("@P_MENSAJE_RESPUESTA", SqlDbType.VarChar, 2000).Direction = ParameterDirection.Output;
                    cmd.Parameters.Add("@p_TR30_TR29_ID", SqlDbType.Int).Value            = objEntity._TR30_TR29_ID;
                    cmd.Parameters.Add("@p_TR30_ID", SqlDbType.Int).Value                 = objEntity._TR30_ID;
                    cmd.Parameters.Add("@p_TR30_TM40_ID", SqlDbType.VarChar, 10).Value    = objEntity._TR30_TM40_ID;
                    cmd.Parameters.Add("@p_TR30_IMPORTE", SqlDbType.Decimal).Value        = objEntity._TR30_IMPORTE * 1M;
                    cmd.Parameters.Add("@p_TR30_FLG_ELIMINADO", SqlDbType.Int).Value      = objEntity._TR30_FLG_ELIMINADO;
                    cmd.Parameters.Add("@p_TR30_TM2_ID", SqlDbType.VarChar, 10).Value     = _global._TM2_ID;
                    cmd.Parameters.Add("@p_TR30_UACTUALIZA", SqlDbType.VarChar, 20).Value = _global._U_SESSION;
                    cmd.Parameters.Add("@P_TR30_AFECTO", SqlDbType.SmallInt).Value        = objEntity._TR30_AFECTO;
                    cmd.Parameters.Add("@P_TR30_PORCENTAJE", SqlDbType.Decimal).Value     = objEntity._TR30_PORCENTAJE;


                    cmd.ExecuteNonQuery();
                    sqlTran.Commit();
                    Msg_respuesta = cmd.Parameters["@P_MENSAJE_RESPUESTA"].Value.ToString();
                    if (Msg_respuesta.Equals("ERROR"))
                    {
                        return(false);
                    }
                }
                catch (SqlException exsql)
                {
                    respuesta = false;
                }
                finally
                {
                    cn.Close();
                }
            }
            return(respuesta);
        }
Пример #3
0
        // obtenemos registros de los conceptos remunerativos que posee un cargo ya registrado

        public List <ET_R30> get_001(int TR29_ID)
        {
            _lista_r30 = new List <ET_R30>();

            //string Mensaje_error = "";

            DataTable dt = new DataTable();

            using (SqlConnection cn = new SqlConnection(_cnx.conexion))
            {
                cn.Open();
                SqlTransaction sqlTran = cn.BeginTransaction();
                SqlCommand     cmd     = new SqlCommand("pa_tr30_sel001", cn, sqlTran);
                cmd.CommandType = CommandType.StoredProcedure;
                try
                {
                    cmd.Parameters.Add("@p_TR29_ID", SqlDbType.Int).Value        = TR29_ID;
                    cmd.Parameters.Add("@p_TM2_ID", SqlDbType.VarChar, 10).Value = _global._TM2_ID;
                    SqlDataAdapter da = new SqlDataAdapter();
                    da.SelectCommand = cmd;
                    da.Fill(dt);

                    foreach (DataRow fila in dt.Rows)
                    {
                        _etr30                  = new ET_R30();
                        _etr30._TR30_ID         = Convert.ToInt32(fila["TR30_ID"].ToString());
                        _etr30._TR30_TR29_ID    = Convert.ToInt32(fila["TR30_TR29_ID"].ToString());
                        _etr30._TR30_TM40_ID    = fila["TR30_TM40_ID"].ToString();
                        _etr30._TR30_IMPORTE    = Convert.ToDecimal(string.IsNullOrEmpty(fila["TR30_IMPORTE"].ToString()) ? "0.00": fila["TR30_IMPORTE"].ToString());
                        _etr30._TR30_DESCRIP    = fila["TM40_DESCRIP"].ToString();
                        _etr30._TR30_AFECTO     = string.IsNullOrEmpty(fila["TR30_AFECTO"].ToString()) ? false: (fila["TR30_AFECTO"].ToString().Equals("1") ? true: false);
                        _etr30._TR30_PORCENTAJE = Convert.ToDecimal(string.IsNullOrEmpty(fila["TR30_PORCENTAJE"].ToString()) ? "0.00" : fila["TR30_PORCENTAJE"].ToString()); //Convert.ToDecimal(fila["TR30_PORCENTAJE"].ToString());
                        _etr30._TR30_ABREV      = fila["TM40_ABREV"].ToString();                                                                                             //DIEGO

                        _etr30._Seleccionado = true;

                        _lista_r30.Add(_etr30);
                    }
                }
                catch (SqlException exsql)
                {
                    try
                    {
                        sqlTran.Rollback();
                    }
                    catch (Exception exRollback)
                    {
                    }
                }
                catch (Exception ex)
                {
                    //Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + ex.Message.ToString()));
                    //if (ex.InnerException != null)
                    //    Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + "Inner exception: " + ex.InnerException.Message));
                    //Mensaje_error = string.Format("{1}{0}", Environment.NewLine, (Mensaje_error + "Stack trace: " + ex.StackTrace));

                    //_Entidad._hubo_error = true;
                    //_Entidad._contenido_mensaje = Mensaje_error;
                    //_Entidad._titulo_mensaje = "Error!";
                }
                finally
                {
                    cn.Close();
                }
                return(_lista_r30);
            }
        }
Пример #4
0
        public void set_001(List <ET_R29> _lista_et_r29, List <ET_R29> _lista_et_r29_back)
        {
            //_lista_et_r29_back.ForEach(row =>
            //{
            //    if (row._TR29_FLG_ELIMINADO == 1 && row._TR29_ST == 1)
            //    {
            //        //actualizar flg 1
            //        bool respuesta = _dt_r29.set_002(row);
            //    }

            //});

            var lista_where_r29 = _lista_et_r29.Where(X => X._TR29_ST == 1).ToList();

            lista_where_r29.ForEach(row => {
                bool respuesta = _dt_r29.set_002(row);
                int id         = row._TR29_ID;
                if (respuesta)
                {
                    row._lista_et_r30.ForEach(x => {
                        ET_R30 et30              = new ET_R30();
                        et30._TR30_ID            = x._TR30_ID;
                        et30._TR30_TR29_ID       = x._TR30_TR29_ID;
                        et30._TR30_IMPORTE       = x._TR30_IMPORTE;
                        et30._TR30_TM40_ID       = x._TR30_TM40_ID;
                        et30._TR30_FLG_ELIMINADO = 1;
                        et30._TR30_TM2_ID        = x._TR30_TM2_ID;
                        et30._TR30_AFECTO        = x._TR30_AFECTO;
                        et30._TR30_PORCENTAJE    = x._TR30_PORCENTAJE;
                        et30._TR30_UACTUALIZA    = Globales._U_SESSION;
                        _dt_r30.set_002(et30); // ACTUALIZAMOS
                    });

                    var all_true = row._lista_et_m40.Where(x => x._Seleccionado == true).ToList();
                    foreach (ET_M40 row_child in all_true)
                    {
                        ET_R30 _et_r30 = new ET_R30();

                        _et_r30._TR30_TR29_ID       = row._TR29_ID;//result._entity_r29._TR29_ID;
                        _et_r30._TR30_TM40_ID       = row_child._TM40_ID;
                        _et_r30._TR30_DESCRIP       = row_child._TM40_DESCRIP;
                        _et_r30._TR30_FLG_ELIMINADO = 0;
                        _et_r30._TR30_IMPORTE       = row_child._TM40_IMPORTE;
                        _et_r30._TR30_PORCENTAJE    = row_child._TM40_PORCENTAJE / 100;
                        _et_r30._TR30_AFECTO        = row_child._TR40_AFECTO;
                        _dt_r30.set_001(_et_r30); // REGISTRAMOS LOS CONCEPTOS REMUNERATIVOS
                    }
                }
            });

            _lista_et_r29.Where(X => X._TR29_ST == 0).ToList().ForEach(row => {
                //registramos lo nuevo

                DateTime h_e_ = new DateTime(year: 1900, month: 1, day: 1, hour: row._TR29_HORA_ENTRADA.Hour, minute: row._TR29_HORA_ENTRADA.Minute, second: 0); // reset
                DateTime h_s_ = new DateTime(year: 1900, month: 1, day: 1, hour: row._TR29_HORA_SALIDA.Hour, minute: row._TR29_HORA_SALIDA.Minute, second: 0);   // reset


                ET_R29 _et_r29        = new ET_R29();
                _et_r29._TR29_TR28_ID = row._TR29_TR28_ID; //servicio hijo que a su ve es padre en algunos casos
                _et_r29._TR29_TM38_ID = row._TR29_TM38_ID; // id del cargo que se va a registrar

                _et_r29._TR29_HORA_ENTRADA = h_e_;
                _et_r29._TR29_HORA_SALIDA  = h_s_;
                _et_r29._TR29_DIAS_SEMANA  = row._TR29_DIAS_SEMANA;
                _et_r29._TR29_DESCRIP      = row._TR29_DESCRIP;
                _et_r29._TR29_REMUNERACION = row._TR29_REMUNERACION;

                var result = _dt_r29.set_001(_et_r29);

                if (!result._hubo_error)
                {
                    var all_true = row._lista_et_m40.Where(x => x._Seleccionado == true).ToList();
                    foreach (ET_M40 row_child in all_true)
                    {
                        ET_R30 _et_r30 = new ET_R30();

                        _et_r30._TR30_TR29_ID       = result._entity_r29._TR29_ID;
                        _et_r30._TR30_TM40_ID       = row_child._TM40_ID;
                        _et_r30._TR30_DESCRIP       = row_child._TM40_DESCRIP;
                        _et_r30._TR30_FLG_ELIMINADO = 0;
                        _et_r30._TR30_IMPORTE       = row_child._TM40_IMPORTE;
                        _et_r30._TR30_PORCENTAJE    = row_child._TM40_PORCENTAJE / 100;
                        _et_r30._TR30_AFECTO        = row_child._TR40_AFECTO;

                        _dt_r30.set_001(_et_r30); // REGISTRAMOS LOS CONCEPTOS DE UN NUEVO CARGO
                    }
                }
            });
        }