Пример #1
0
        public Respuesta GetCargoById([FromUri] int Id)
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["CheckerDB"].ConnectionString))
                {
                    connection.Open();
                    SqlTransaction transaction = connection.BeginTransaction();
                    SqlCommand     cmd         = new SqlCommand("SELECT * FROM tbl_cargos WHERE id = @Id", connection, transaction);
                    cmd.CommandType = CommandType.Text;

                    cmd.Parameters.Add(new SqlParameter("@Id", Id));

                    using (var rdr = cmd.ExecuteReader())
                    {
                        tbl_cargos cargo = new tbl_cargos
                        {
                            id                    = int.Parse(rdr[nameof(tbl_cargos.id)].ToString()),
                            nombre                = rdr[nameof(tbl_cargos.nombre)].ToString(),
                            id_departamento       = GetNullable <int>(rdr, nameof(tbl_cargos.id_departamento)),
                            jerarquia             = GetNullable <int>(rdr, nameof(tbl_cargos.jerarquia)),
                            id_usuario_registro   = GetNullable <int>(rdr, nameof(tbl_cargos.id_usuario_registro)),
                            fecha_registro        = GetNullable <DateTime>(rdr, nameof(tbl_cargos.fecha_registro)),
                            anulado               = GetNullable <bool>(rdr, nameof(tbl_cargos.anulado)),
                            fecha_anulacion       = GetNullable <DateTime>(rdr, nameof(tbl_cargos.fecha_anulacion)),
                            id_usuario_anulacion  = GetNullable <int>(rdr, nameof(tbl_cargos.id_usuario_anulacion)),
                            actividades           = rdr[nameof(tbl_cargos.actividades)].ToString(),
                            impuesto_nomina       = GetNullable <double>(rdr, nameof(tbl_cargos.impuesto_nomina)),
                            calcula_nomina_fiscal = GetNullable <bool>(rdr, nameof(tbl_cargos.calcula_nomina_fiscal)),
                            salario               = GetNullable <double>(rdr, nameof(tbl_cargos.salario)),
                            escala_contrato       = GetNullable <bool>(rdr, nameof(tbl_cargos.escala_contrato)),
                            escala_centro         = GetNullable <bool>(rdr, nameof(tbl_cargos.escala_centro)),
                            id_rol                = GetNullable <int>(rdr, nameof(tbl_cargos.id_rol))
                        };
                        rdr.Close();

                        respuesta.resultado = 1;
                        respuesta.mensaje   = "Operación exitosa";
                        respuesta.data      = cargo;
                    }
                }
            }
            catch (Exception ex)
            {
                respuesta.resultado = 0;
                respuesta.mensaje   = ex.Message;
                respuesta.data      = ex;
            }

            return(respuesta);
        }
Пример #2
0
        public Respuesta InsertCargo([FromBody] tbl_cargos cargo)
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["CheckerDB"].ConnectionString))
                {
                    connection.Open();
                    SqlTransaction transaction = connection.BeginTransaction();
                    SqlCommand     cmd         = new SqlCommand("Checker.InsertCargos", connection, transaction);
                    cmd.CommandType = CommandType.StoredProcedure;

                    cmd.Parameters.Add(new SqlParameter("@Name", cargo.nombre));
                    cmd.Parameters.Add(new SqlParameter("@IdDepartment", cargo.id_departamento));
                    cmd.Parameters.Add(new SqlParameter("@Hierarchy", cargo.jerarquia));
                    cmd.Parameters.Add(new SqlParameter("@IdUserRegistrator", cargo.id_usuario_registro));
                    cmd.Parameters.Add(new SqlParameter("@Canceled", cargo.anulado));
                    cmd.Parameters.Add(new SqlParameter("@CanceledDate", cargo.fecha_anulacion));
                    cmd.Parameters.Add(new SqlParameter("@IdUserCanceled", cargo.id_usuario_anulacion));
                    cmd.Parameters.Add(new SqlParameter("@Activities", cargo.actividades));
                    cmd.Parameters.Add(new SqlParameter("@TaxNom", cargo.impuesto_nomina));
                    cmd.Parameters.Add(new SqlParameter("@CalNom", cargo.calcula_nomina_fiscal));
                    cmd.Parameters.Add(new SqlParameter("@Salary", cargo.salario));
                    cmd.Parameters.Add(new SqlParameter("@ContractScale", cargo.escala_contrato));
                    cmd.Parameters.Add(new SqlParameter("@CenterScale", cargo.escala_centro));
                    cmd.Parameters.Add(new SqlParameter("@IdRole", cargo.id_rol));

                    cmd.Parameters.Add(new SqlParameter("@Id", SqlDbType.Int)
                    {
                        Direction = ParameterDirection.ReturnValue
                    });

                    cmd.ExecuteNonQuery();
                    transaction.Commit();

                    respuesta.resultado = 1;
                    respuesta.mensaje   = "Operación exitosa";
                    respuesta.data      = (int)cmd.Parameters["@Id"].Value;
                }
            }
            catch (Exception ex)
            {
                respuesta.resultado = 0;
                respuesta.mensaje   = ex.Message;
                respuesta.data      = ex;
            }

            return(respuesta);
        }