예제 #1
0
        public int Agregar(RecepcionLineaDTO obj)
        {
            Database db = DatabaseFactory.CreateDatabase("ApplicationConnectionString");
              DbCommand dbCommand = db.GetStoredProcCommand(C_AGREGAR);
              db.AddInParameter(dbCommand, "@id_recepcion", DbType.Int32, obj.IdRecepcion);
              //db.AddInParameter(dbCommand, "@id_recepcion_linea", DbType.Int32, obj.IdRecepcionLinea);
              db.AddInParameter(dbCommand, "@id_orden_compra", DbType.Int32, obj.IdOrdenCompra);
              db.AddInParameter(dbCommand, "@id_orden_compra_linea", DbType.Int32, obj.IdOrdenCompraLinea);
              db.AddInParameter(dbCommand, "@id_articulo", DbType.Int32, obj.IdArticulo);
              db.AddInParameter(dbCommand, "@cantidad_recepcionada", DbType.Decimal, obj.CantidadRecepcionada);
              db.AddInParameter(dbCommand, "@anotaciones", DbType.String, obj.Anotaciones);
              db.AddInParameter(dbCommand, "@estado", DbType.String, obj.Estado);

              if (obj.FechaCreacion.Year == 1)
              db.AddInParameter(dbCommand, "@fecha_creacion", DbType.DateTime, null);
              else
              db.AddInParameter(dbCommand, "@fecha_creacion", DbType.DateTime, obj.FechaCreacion);

              db.AddInParameter(dbCommand, "@id_usuario_creacion", DbType.Int32, obj.IdUsuarioCreacion);

              if (obj.FechaModificacion.Year == 1)
              db.AddInParameter(dbCommand, "@fecha_modificacion", DbType.DateTime, null);
              else
              db.AddInParameter(dbCommand, "@fecha_modificacion", DbType.DateTime, obj.FechaModificacion);

              db.AddInParameter(dbCommand, "@id_usuario_modificacion", DbType.Int32, obj.IdUsuarioModificacion);
              int id = Convert.ToInt32(db.ExecuteScalar(dbCommand));
              return id;
        }
        protected void btnGrabar_Click(object sender, EventArgs e)
        {
            InvTransaccionDTO objInvTransaccionDTO = new InvTransaccionDTO();

            RecepcionLineaDTO objRecepcionLineaDTO = new RecepcionLineaDTO();

            RecepcionDTO objRecepcionDTO = objRecepcionDAO.ListarPorClave( Convert.ToInt32(this.lblIdRecepcion.Text));

            objInvTransaccionDTO.IdArticulo = Convert.ToInt32(this.txtIdArticulo.Text);
            objInvTransaccionDTO.IdAlmacen = Convert.ToInt32(this.ddlAlmacen.SelectedValue);
            objInvTransaccionDTO.IdTipoTransaccion = Convert.ToInt32(this.ddlTipoTransaccion.SelectedValue);
            objInvTransaccionDTO.Fecha = DateTime.Now; //AppUtilidad.stringToDateTime( this.txtFechaTransaccion.Text, "DD/MM/YYYY");
            objInvTransaccionDTO.Cantidad = Convert.ToDecimal(this.lblCantidadRecibo.Text);
            objInvTransaccionDTO.TipoOrigen = "REC";
            objInvTransaccionDTO.IdTransaccionOrigen = Convert.ToInt32(this.txtIdRecepcion.Text);
            objInvTransaccionDTO.IdLineaOrigen = Convert.ToInt32(this.txtIdRecepcionLinea.Text);
            objInvTransaccionDTO.Descripcion = this.txtDescripcion.Text;

            objInvTransaccionDTO.IdSede = objRecepcionDTO.IdSede;
            objInvTransaccionDTO.IdProyecto = objRecepcionDTO.IdProyecto;
            objInvTransaccionDTO.Ubicacion = this.txtUbicacion.Text;
            objInvTransaccionDTO.FechaVencimiento = AppUtilidad.stringToDateTime(this.txtFechaVencimiento.Text, "DD/MM/YYYY");
            objInvTransaccionDTO.Lote = this.txtLote.Text;

            objInvTransaccionDTO.Marca = this.txtMarca.Text;
            objInvTransaccionDTO.Modelo = this.txtModelo.Text;
            objInvTransaccionDTO.Serie = this.txtSerie.Text;
            objInvTransaccionDTO.ObservacionesAlmacenamiento = this.txtObsAlmacenamiento.Text;

            objInvTransaccionDTO.IdUsuarioCreacion = Convert.ToInt32(this.txtIdUsuario.Text);
            objInvTransaccionDTO.FechaCreacion = DateTime.Now;

            objInvTransaccionDAO.Agregar(objInvTransaccionDTO);

            objRecepcionLineaDTO = objRecepcionLineaDAO.ListarPorClave( Convert.ToInt32( this.txtIdRecepcionLinea.Text));

            objRecepcionLineaDTO.Estado = "2"; // Transferido

            objRecepcionLineaDAO.Actualizar(objRecepcionLineaDTO);

            Response.Redirect("frmRecepcionInventario.aspx");
        }
예제 #3
0
        protected void btnRecepcionar_Click(object sender, EventArgs e)
        {
            UsuarioDTO objUsuarioDTO = objUsuarioDAO.ListarPorLogin(HttpContext.Current.User.Identity.Name);
            Boolean hayRecepcion = false;
            Boolean Validacion = false;

            this.lblMensaje.Text = "";

            foreach (GridViewRow row in this.gvLista.Rows)
            {
                DataKey dKey = gvLista.DataKeys[row.RowIndex];
                CheckBox chkSeleccion = (CheckBox)row.Cells[0].FindControl("chkSeleccion");

                if (chkSeleccion.Checked ) {
                    hayRecepcion = true;
                    TextBox txtCantidadRecepcion = (TextBox)row.Cells[0].FindControl("txtCantidadRecepcion");
                    if (txtCantidadRecepcion.Text != "")
                    {
                        decimal cantidad = Convert.ToDecimal(txtCantidadRecepcion.Text);
                        decimal cantidad_orden_compra = Convert.ToDecimal(row.Cells[5].Text);
                        decimal cantidad_recibida = Convert.ToDecimal(row.Cells[8].Text);
                        decimal cantidad_pendiente = cantidad_orden_compra - cantidad_recibida;
                        if (cantidad > 0)
                        {
                            if (cantidad <= cantidad_pendiente)
                            {
                                Validacion = true;
                            }
                            else
                            {
                                this.lblMensaje.Text = "Cantidad de recepcion es mayor a la cantidad pendiente de recepcionar";
                            }
                        }
                        else
                        {
                            this.lblMensaje.Text = "Cantidad de recepcion debe ser un valor positivo";
                        }

                    }
                    else
                    {
                        this.lblMensaje.Text = "Indique cantida a recepcionar";
                    }
                }
            }

            if (!hayRecepcion)
            {
                this.lblMensaje.Text = "Seleccione una linea he indique cantida a recepcionar";
            }

            if (Validacion)
            {

                OrdenCompraDTO objOrdenCompra = new OrdenCompraDTO();
                RecepcionDTO objRecepcion = new RecepcionDTO();

                objOrdenCompra = objOrdenCompraDAO.ListarPorClave(Convert.ToInt32(this.txtIdOrdenCompra.Text));

                objRecepcion.IdProveedor = objOrdenCompra.IdProveedor;
                objRecepcion.FechaRecepcion = AppUtilidad.stringToDateTime(this.txtFechaRecepcion.Text, "DD/MM/YYYY");
                objRecepcion.NumeroRecibo = this.txtGuiaRemision.Text;
                objRecepcion.IdOrdenCompra = objOrdenCompra.IdOrdenCompra;
                objRecepcion.Anotaciones = this.txtObservaciones.Text;
                objRecepcion.TipoRecepcion = "COMPRA";
                objRecepcion.IdSede = objOrdenCompra.IdSede;
                objRecepcion.IdProyecto = objOrdenCompra.IdProyecto;

                objRecepcion.FechaCreacion = DateTime.Now;
                objRecepcion.IdUsuarioCreacion = objUsuarioDTO.IdUsuario;

                int IdRecepcion = objRecepcionDAO.Agregar(objRecepcion);

                foreach (GridViewRow row in this.gvLista.Rows)
                {
                    DataKey dKey = gvLista.DataKeys[row.RowIndex];
                    int IdOrdenCompraLinea = Convert.ToInt32 (dKey[0].ToString());

                    TextBox txtCantidadRecepcion = (TextBox)row.Cells[0].FindControl("txtCantidadRecepcion");
                    decimal cantidad = Convert.ToDecimal(txtCantidadRecepcion.Text);
                    decimal cantidad_orden_compra = Convert.ToDecimal(row.Cells[5].Text);
                    decimal cantidad_recibida = Convert.ToDecimal(row.Cells[8].Text);
                    decimal cantidad_pendiente = cantidad_orden_compra - cantidad_recibida;

                    OrdenCompraLineaDTO objOrdenCompraLinea = new OrdenCompraLineaDTO();
                    RecepcionLineaDTO objRecepcionLinea = new RecepcionLineaDTO();

                    objOrdenCompraLinea = objOrdenCompraLineaDAO.ListarPorClave(objOrdenCompra.IdOrdenCompra, IdOrdenCompraLinea);

                    objRecepcionLinea.IdRecepcion = IdRecepcion;
                    objRecepcionLinea.IdOrdenCompra = objOrdenCompraLinea.IdOrdenCompra;
                    objRecepcionLinea.IdOrdenCompraLinea = objOrdenCompraLinea.IdOrdenCompraLinea;
                    objRecepcionLinea.IdArticulo = objOrdenCompraLinea.IdArticulo;
                    objRecepcionLinea.CantidadRecepcionada = cantidad;
                    objRecepcionLinea.Anotaciones = "";
                    objRecepcionLinea.FechaCreacion = DateTime.Now;
                    objRecepcionLinea.IdUsuarioCreacion = objUsuarioDTO.IdUsuario;
                    objRecepcionLinea.Estado = AppConstantes.ESTADO_RECEPCION_INGRESO_OC;

                    objRecepcionLineaDAO.Agregar(objRecepcionLinea);

                }

                CotizacionDTO objCotizacionDTO = objCotizacionDAO.ListarPorClave(objOrdenCompra.IdCotizacion);
                PedidoDTO objPedidoDTO = objPedidoDAO.ListarPorClave(objCotizacionDTO.IdPedido);
                objPedidoDTO.EstadoControl = AppConstantes.PEDIDO_ESTADO_CONTROL_OC_CON_RECEPCION;
                objPedidoDAO.Actualizar(objPedidoDTO);

                this.lblMensajeRecepcion.Text = "Se genero la Recepción " + IdRecepcion.ToString();
                this.panRecepcion.Visible = false;

            }
        }
예제 #4
0
        public List<RecepcionLineaDTO> Listar()
        {
            List<RecepcionLineaDTO> Lista = new List<RecepcionLineaDTO>();
              Database db = DatabaseFactory.CreateDatabase("ApplicationConnectionString");
              DbCommand dbCommand = db.GetStoredProcCommand(C_LISTAR);
              using (IDataReader dr = db.ExecuteReader(dbCommand))
              {
              while (dr.Read())
              {
                  RecepcionLineaDTO obj = new RecepcionLineaDTO();
                  if (dr["id_recepcion"] != System.DBNull.Value)
                      obj.IdRecepcion = (int)dr["id_recepcion"];
                  if (dr["id_recepcion_linea"] != System.DBNull.Value)
                      obj.IdRecepcionLinea = (int)dr["id_recepcion_linea"];
                  if (dr["id_orden_compra"] != System.DBNull.Value)
                      obj.IdOrdenCompra = (int)dr["id_orden_compra"];
                  if (dr["id_orden_compra_linea"] != System.DBNull.Value)
                      obj.IdOrdenCompraLinea = (int)dr["id_orden_compra_linea"];
                  if (dr["id_articulo"] != System.DBNull.Value)
                      obj.IdArticulo = (int)dr["id_articulo"];
                  if (dr["cantidad_recepcionada"] != System.DBNull.Value)
                      obj.CantidadRecepcionada = (Decimal)dr["cantidad_recepcionada"];
                  if (dr["anotaciones"] != System.DBNull.Value)
                      obj.Anotaciones = (string)dr["anotaciones"];
                  if (dr["fecha_creacion"] != System.DBNull.Value)
                      obj.FechaCreacion = (DateTime)dr["fecha_creacion"];
                  if (dr["id_usuario_creacion"] != System.DBNull.Value)
                      obj.IdUsuarioCreacion = (int)dr["id_usuario_creacion"];
                  if (dr["fecha_modificacion"] != System.DBNull.Value)
                      obj.FechaModificacion = (DateTime)dr["fecha_modificacion"];
                  if (dr["id_usuario_modificacion"] != System.DBNull.Value)
                      obj.IdUsuarioModificacion = (int)dr["id_usuario_modificacion"];

                  Lista.Add(obj);
              }
              }
              return Lista;
        }
예제 #5
0
        public RecepcionLineaDTO ListarPorClave(int IdRecepcionLinea)
        {
            RecepcionLineaDTO obj = null;
              Database db = DatabaseFactory.CreateDatabase("ApplicationConnectionString");
              DbCommand dbCommand = db.GetStoredProcCommand(C_LISTAR_POR_CLAVE);
              db.AddInParameter(dbCommand, "@id_recepcion_linea", DbType.Int32, IdRecepcionLinea);

              using (IDataReader dr = db.ExecuteReader(dbCommand))
              {
              if (dr.Read())
              {
                  obj = new RecepcionLineaDTO();

                  if (dr["id_recepcion"] != System.DBNull.Value)
                      obj.IdRecepcion = (int)dr["id_recepcion"];

                  if (dr["id_recepcion_linea"] != System.DBNull.Value)
                      obj.IdRecepcionLinea = (int)dr["id_recepcion_linea"];

                  if (dr["id_orden_compra"] != System.DBNull.Value)
                      obj.IdOrdenCompra = (int)dr["id_orden_compra"];

                  if (dr["id_orden_compra_linea"] != System.DBNull.Value)
                      obj.IdOrdenCompraLinea = (int)dr["id_orden_compra_linea"];

                  if (dr["id_articulo"] != System.DBNull.Value)
                      obj.IdArticulo = (int)dr["id_articulo"];

                  if (dr["cantidad_recepcionada"] != System.DBNull.Value)
                      obj.CantidadRecepcionada = (Decimal)dr["cantidad_recepcionada"];

                  if (dr["anotaciones"] != System.DBNull.Value)
                      obj.Anotaciones = (string)dr["anotaciones"];

                  if (dr["estado"] != System.DBNull.Value)
                      obj.Estado = (string)dr["estado"];

                  if (dr["fecha_creacion"] != System.DBNull.Value)
                      obj.FechaCreacion = (DateTime)dr["fecha_creacion"];

                  if (dr["id_usuario_creacion"] != System.DBNull.Value)
                      obj.IdUsuarioCreacion = (int)dr["id_usuario_creacion"];

                  if (dr["fecha_modificacion"] != System.DBNull.Value)
                      obj.FechaModificacion = (DateTime)dr["fecha_modificacion"];

                  if (dr["id_usuario_modificacion"] != System.DBNull.Value)
                      obj.IdUsuarioModificacion = (int)dr["id_usuario_modificacion"];

                  if (dr["fecha_recepcion"] != System.DBNull.Value)
                      obj.FechaRecepcion = (DateTime)dr["fecha_recepcion"];

                  if (dr["codigo_articulo"] != System.DBNull.Value)
                      obj.CodigoArticulo = (string)dr["codigo_articulo"];

                  if (dr["nombre_articulo"] != System.DBNull.Value)
                      obj.NombreArticulo = (string)dr["nombre_articulo"];

                  if (dr["razon_social"] != System.DBNull.Value)
                      obj.RazonSocial = (string)dr["razon_social"];

                  if (dr["numero_linea_oc"] != System.DBNull.Value)
                      obj.NumeroLineaOC = (int)dr["numero_linea_oc"];

              }
              }

              return obj;
        }
예제 #6
0
        public List<RecepcionLineaDTO> ListarPendienteDeInventariar()
        {
            List<RecepcionLineaDTO> Lista = new List<RecepcionLineaDTO>();
              Database db = DatabaseFactory.CreateDatabase("ApplicationConnectionString");
              DbCommand dbCommand = db.GetStoredProcCommand(C_LISTAR_PENDIENTE_INVENTARIAR);
              using (IDataReader dr = db.ExecuteReader(dbCommand))
              {
              while (dr.Read())
              {
                  RecepcionLineaDTO obj = new RecepcionLineaDTO();

                  if (dr["id_recepcion"] != System.DBNull.Value)
                      obj.IdRecepcion = (int)dr["id_recepcion"];

                  if (dr["id_recepcion_linea"] != System.DBNull.Value)
                      obj.IdRecepcionLinea = (int)dr["id_recepcion_linea"];

                  if (dr["id_orden_compra"] != System.DBNull.Value)
                      obj.IdOrdenCompra = (int)dr["id_orden_compra"];

                  if (dr["id_orden_compra_linea"] != System.DBNull.Value)
                      obj.IdOrdenCompraLinea = (int)dr["id_orden_compra_linea"];

                  if (dr["id_articulo"] != System.DBNull.Value)
                      obj.IdArticulo = (int)dr["id_articulo"];

                  if (dr["cantidad_recepcionada"] != System.DBNull.Value)
                      obj.CantidadRecepcionada = (Decimal)dr["cantidad_recepcionada"];

                  if (dr["anotaciones"] != System.DBNull.Value)
                      obj.Anotaciones = (string)dr["anotaciones"];

                  if (dr["estado"] != System.DBNull.Value)
                      obj.Estado = (string)dr["estado"];

                  if (dr["fecha_creacion"] != System.DBNull.Value)
                      obj.FechaCreacion = (DateTime)dr["fecha_creacion"];

                  if (dr["id_usuario_creacion"] != System.DBNull.Value)
                      obj.IdUsuarioCreacion = (int)dr["id_usuario_creacion"];

                  if (dr["fecha_modificacion"] != System.DBNull.Value)
                      obj.FechaModificacion = (DateTime)dr["fecha_modificacion"];

                  if (dr["id_usuario_modificacion"] != System.DBNull.Value)
                      obj.IdUsuarioModificacion = (int)dr["id_usuario_modificacion"];

                  if (dr["fecha_recepcion"] != System.DBNull.Value)
                      obj.FechaRecepcion = (DateTime)dr["fecha_recepcion"];

                  if (dr["codigo_articulo"] != System.DBNull.Value)
                      obj.CodigoArticulo = (string)dr["codigo_articulo"];

                  if (dr["nombre_articulo"] != System.DBNull.Value)
                      obj.NombreArticulo = (string)dr["nombre_articulo"];

                  if (dr["razon_social"] != System.DBNull.Value)
                      obj.RazonSocial = (string)dr["razon_social"];

                  if (dr["numero_linea_oc"] != System.DBNull.Value)
                      obj.NumeroLineaOC = (int)dr["numero_linea_oc"];

                  Lista.Add(obj);
              }
              }
              return Lista;
        }