Пример #1
0
        public bool Editar(Rendicion rendicion)
        {
            //rendicion.FICHA_EMPLEADO = "A";
            rendicion.ESTADO_PLANILLA = "PENDIENTE";

            rendicion.FECHA_CAMBIO_ESTADO = DateTime.Now;
            //rendicion.FECHA_CREACION = DateTime.Now;

            //var valor = obtenerUltimaRendicion(rendicion.FICHA_EMPLEADO);
            //rendicion.NumeroRendicion = valor + 1;
            //actualizarCorrelativoUsuario(rendicion.NumeroRendicion, rendicion.FICHA_EMPLEADO);
            var    i          = 1;
            double montoTotal = 0;

            foreach (var obj in rendicion.RendicionDetalle)
            {
                obj.SECUENCIA       = i++;
                obj.FECHA_GASTO     = DateTime.Now;
                obj.NumeroRendicion = rendicion.NumeroRendicion;
                montoTotal          = montoTotal + obj.MONTO_LINEA;
            }


            rendicion.TOTAL_GASTADO = montoTotal;
            return(rendicionDAO.Actualizar(rendicion));
        }
Пример #2
0
        public static int nuevaRendicion(Rendicion rend)
        {
            //0 error bd
            //ID OK

            try
            {
                var    conn  = DBConnection.getConnection();
                string query = string.Format(@"INSERT INTO LORDS_OF_THE_STRINGS_V2.Rendicion(Rendicion_fecha, Rendicion_importe, Rendicion_porcentaje) VALUES (CONVERT(datetime, @fecha, 121), @importe, @porcentaje); SELECT SCOPE_IDENTITY();");

                SqlCommand comando = new SqlCommand(query, conn);

                comando.Parameters.AddWithValue("@fecha", rend.fecha);

                comando.Parameters.Add("@importe", SqlDbType.Float);
                comando.Parameters["@importe"].Value = rend.importe;

                comando.Parameters.Add("@porcentaje", SqlDbType.Float);
                comando.Parameters["@porcentaje"].Value = rend.porcentajeComision;
                int rta = Convert.ToInt32(comando.ExecuteScalar());
                comando.Dispose();
                conn.Close();
                conn.Dispose();
                return(rta);
            }
            catch (SqlException ex)
            {
                MessageBox.Show(ex.Message);
                return(0);
            }
        }
Пример #3
0
        public static void AgregarRendicion(Rendicion rendicion)
        {
            SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["GDD"].ConnectionString);

            conn.Open();
            using (var tx = conn.BeginTransaction())
            {
                try
                {
                    string query = "insert into LOS_MANTECOSOS.Rendiciones (rend_empresaCuit,rend_fecha,rend_porcentajeComision,rend_montoTotal)" +
                                   "VALUES (@empresaCuit, @fecha,@porcentajeComision,@montoFinal)";
                    SqlCommand command = new SqlCommand(query, conn, tx);
                    command.Parameters.AddWithValue("@empresaCuit", rendicion.EmpresaCuit);
                    command.Parameters.AddWithValue("@fecha", rendicion.Fecha);
                    command.Parameters.AddWithValue("@porcentajeComision", rendicion.PorcentajeComision);
                    command.Parameters.AddWithValue("@montoFinal", rendicion.MontoFinal);
                    command.ExecuteNonQuery();

                    //Obtengo el numero nro de rendicion
                    string     queryUltimaRendicion   = "select max(rend_nro) from LOS_MANTECOSOS.Rendiciones";
                    SqlCommand commandUltimaRendicion = new SqlCommand(queryUltimaRendicion, conn, tx);
                    decimal    ultimoNroRendicion     = (decimal)commandUltimaRendicion.ExecuteScalar();

                    //Agrego los items de rendicion

                    string queryItems = "insert into LOS_MANTECOSOS.ItemsRendiciones (itemRend_rendicionNro,itemRend_facturaNro,itemRend_montoRendido)"
                                        + " select distinct @nroRendicion,factura_nro,(select sum(itemFac_monto * itemFac_cantidad) from LOS_MANTECOSOS.ItemsFacturas where itemFac_facturaNro = factura_nro) " +
                                        "from LOS_MANTECOSOS.facturas INNER JOIN LOS_MANTECOSOS.ItemsPagos ON factura_nro = itemPago_facturaNro INNER JOIN LOS_MANTECOSOS.Pagos ON itemPago_pagoNro = pago_nro" +
                                        " where factura_empresaCuit = @cuit and factura_estado = @estado and year(pago_fecha) = @anio and month(pago_fecha) = @mes";
                    SqlCommand commandItems = new SqlCommand(queryItems, conn, tx);
                    commandItems.Parameters.AddWithValue("@nroRendicion", ultimoNroRendicion);
                    commandItems.Parameters.AddWithValue("@cuit", rendicion.EmpresaCuit);
                    commandItems.Parameters.AddWithValue("@estado", EstadoFactura.Pagada);
                    commandItems.Parameters.AddWithValue("@anio", ConfiguracionFecha.FechaSistema.Year);
                    commandItems.Parameters.AddWithValue("@mes", ConfiguracionFecha.FechaSistema.Month);
                    commandItems.ExecuteNonQuery();


                    //Marco la factura como rendida
                    string queryEstado = "update f" +
                                         " set F.factura_Estado = @nuevoEstado" +
                                         " from LOS_MANTECOSOS.Facturas f" +
                                         " inner join LOS_MANTECOSOS.itemsRendiciones i on i.itemRend_facturaNro = f.factura_nro" +
                                         " where itemRend_rendicionNro = @nroRendicion";
                    SqlCommand commandEstado = new SqlCommand(queryEstado, conn, tx);
                    commandEstado.Parameters.AddWithValue("@nroRendicion", ultimoNroRendicion);
                    commandEstado.Parameters.AddWithValue("@nuevoEstado", EstadoFactura.Rendida);
                    commandEstado.ExecuteNonQuery();

                    tx.Commit();
                    conn.Close();
                }
                catch (Exception exc) {
                    tx.Rollback();
                    conn.Close();
                    throw new Exception(exc.Message);
                }
            }
        }
Пример #4
0
        public int modificarRendicion(Rendicion rend)
        {
            Dictionary <String, Object> dic = new Dictionary <String, Object>();

            dic.Add("@idChofer", rend.idchofer);
            dic.Add("@fecha", rend.fechaRendicion);
            dic.Add("@importe", rend.importeTotal);


            connector.executeProcedureWithParameters("FSOCIETY.sp_crear_Rendicion", dic);

            return(0);
        }
Пример #5
0
        protected override DataTable RecuperarDatos()
        {
            DataTable DataTable = Rendicion.Listar();

            foreach (DataRow dr in DataTable.Rows)
            {
                Total += dr.Field <decimal>("Total");
                ids.Add(dr.Field <int>("id"));
            }
            txtTotal.Text    = Total.ToString();
            txtCantidad.Text = DataTable.Rows.Count.ToString();

            return(DataTable);
        }
Пример #6
0
        public ActionResult Grabar(Rendicion model)
        {
            var lista = (List <RendicionDetalle>)Session["SelectListP"];

            if (lista == null)
            {
                @ViewBag.DescripcionError = "";
                @ViewData["Controller"]   = ControllerContext.RouteData.Values["Controller"].ToString();
                @ViewData["Acción"]       = ControllerContext.RouteData.Values["Action"].ToString();

                return(View("Error"));
            }
            model.RendicionDetalle = lista;
            var rendicionLN = new RendicionLN();

            rendicionLN.Insertar(model);
            return(RedirectToAction("Index"));
        }
Пример #7
0
        private void button1_Click(object sender, EventArgs e)
        {
            DateTime fechaRendicion = ConfiguracionFecha.FechaSistema;
            //Valido si ya hubo una rendicion en este periodo para esta empresa
            string  empresaCuit = ((ComboBoxItemStringValue)comboEmpresas.SelectedItem).Value;
            decimal porcentajeComision;

            if (this.facturas.Count > 0)
            {
                if (decimal.TryParse(txtPorcentaje.Text, out porcentajeComision) && porcentajeComision >= 0 && porcentajeComision <= 100)
                {
                    bool yaHuboRendicion = RendicionesRepository.ExisteRendicionParaEmpresaYPeriodo(empresaCuit, fechaRendicion);
                    if (!yaHuboRendicion)
                    {
                        Rendicion rend = new Rendicion(empresaCuit, facturas, fechaRendicion, porcentajeComision);
                        try
                        {
                            RendicionesRepository.AgregarRendicion(rend);
                            MessageBox.Show("Se ha realizado la rendición correctamente");
                            this.Hide();
                            var indexFacturasForm = new IndexForm();
                            indexFacturasForm.Show();
                        }
                        catch (Exception exce)
                        {
                            MessageBox.Show("Hubo un error al realizar la rendicion. Intente nuevamente");
                        }
                    }
                    else
                    {
                        MessageBox.Show("Ya se realizó una rendición para esta empresa en este periodo");
                    }
                }
                else
                {
                    MessageBox.Show("Ingrese un valor valido para el porcentaje");
                }
            }
            else
            {
                MessageBox.Show("No se puede realizar una rendicion sin facturas asociadas");
            }
        }
Пример #8
0
        public ActionResult Edit(Rendicion rendicion)
        {
            try
            {
                var rendicionLN = new RendicionLN();
                if (rendicionLN.Editar(rendicion))
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    //ViewBag.Categorias = rendicionLN.Listar();// ListarCategorias();
                    return(View(rendicion));
                }
            }
            catch (Exception ex)
            {
                @ViewBag.DescripcionError = ex.Message;
                @ViewData["Controller"]   = ControllerContext.RouteData.Values["Controller"].ToString();
                @ViewData["Acción"]       = ControllerContext.RouteData.Values["Action"].ToString();

                return(View("Error"));
            }
        }
Пример #9
0
 public bool Actualizar(Rendicion rendicion)
 {
     context.Rendiciones.Attach(rendicion);
     context.Entry(rendicion).State = EntityState.Modified;
     return(context.SaveChanges() > 0);
 }
Пример #10
0
 public bool Insertar(Rendicion rendicion)
 {
     context.Rendiciones.Add(rendicion);
     return(context.SaveChanges() > 0);
 }
Пример #11
0
        internal void setRencidion(int p, DateTimePicker fechaRendicion, DataGridView dataGridViewRowCollection)
        {
            Rendicion ren = new Rendicion(p, fechaRendicion, dataGridViewRowCollection);

            modificarRendicion(ren);
        }
Пример #12
0
 private void buttonRendir_Click(object sender, EventArgs e)
 {
     buttonRendir.Enabled = false;
     Rendicion.Rendir(ids, int.Parse(txtPorcentaje.Text));
 }