public BEOrdenDevolucion InsertOrden(BEOrdenDevolucion orden) { SqlCommand cmd = new SqlCommand("dbo.uspCrearOrdenDevolucion"); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@Codigo", SqlDbType.VarChar, 50).Value = ""; cmd.Parameters.Add("@Fecha", SqlDbType.DateTime).Value = orden.fecha; cmd.Parameters.Add("@Estado", SqlDbType.VarChar, 150).Value = orden.estado; cmd.Parameters.Add("@Motivo", SqlDbType.VarChar, 500).Value = orden.motivo; cmd.Parameters.Add("@Id_empleado", SqlDbType.Int, 14).Value = orden.id_empleado; cmd.Parameters.Add("@Id_aprobador", SqlDbType.Int, 14).Value = orden.id_aprobador; cmd.Parameters.Add("@Tipo_devolucion", SqlDbType.Int, 14).Value = orden.tipo_devolucion; cmd.Parameters.Add("@Id_orden_venta", SqlDbType.Int, 14).Value = orden.id_orden_venta; cmd.Parameters.Add("@Id_orden_abastecimiento", SqlDbType.Int, 14).Value = orden.id_orden_abastecimiento; if (orden.cliente != null) { cmd.Parameters.Add("@Id_cliente", SqlDbType.Int, 14).Value = orden.cliente.id; } InsertCommand(cmd, true, 1); int lastId = getLastID; cmd = new SqlCommand("dbo.uspUpdateOrdenDevolucion"); cmd.CommandType = CommandType.StoredProcedure; string codigo = "OD-" + lastId.ToString().PadLeft(5, '0'); cmd.Parameters.Add("@Codigo", SqlDbType.VarChar, 50).Value = codigo; cmd.Parameters.Add("@Id", SqlDbType.Int, 14).Value = lastId; UpdateCommand(cmd, 1); orden.id = lastId; orden.codigo = codigo; return(orden); }
private BEOrdenDevolucion GetOrdenxCodTipo(string codigo, int tipo) { BEOrdenDevolucion orden = ordenCon.GetOrdenxCod(codigo, tipo); GridView1.DataSource = orden.detalle_orden; GridView1.DataBind(); return(orden); }
public BEOrdenDevolucion CrearOrdenDevolucion(BEOrdenDevolucion orden, bool actualizarOrigen = false) { BEOrdenDevolucion result = devolucionDAO.InsertOrden(orden); detalleDevolucionDAO.InserDetalletOrden(orden.detalle_orden, orden.id); if (actualizarOrigen) { detalleDevolucionDAO.ActualizarDetalleOrdenOriginal(orden.detalle_orden, orden.tipo_devolucion); } return(result); }
protected void btnGenerar_Click(object sender, EventArgs e) { BEOrdenDevolucion orden_devolucion = new BEOrdenDevolucion(); BEOrdenDevolucion orden_venta = (BEOrdenDevolucion)Session["ordenVenta"]; List <BEDetalleOrdenDevolucion> devolucion = (List <BEDetalleOrdenDevolucion>)Session["listProdDev"]; BEEmpleados user = (BEEmpleados)Session["user"]; orden_devolucion.tipo_devolucion = int.Parse(Session["searchType"].ToString()); orden_devolucion.tipo = 3; orden_devolucion.fecha = DateTime.Now; bool needApproval = (bool)Session["needApproval"]; orden_devolucion.estado = needApproval ? "Pendiente" : "Generado"; if (orden_devolucion.tipo_devolucion == 1) { orden_devolucion.id_orden_venta = orden_venta.id; } else { orden_devolucion.id_orden_abastecimiento = orden_venta.id; } orden_devolucion.motivo = txtMotivo.Text; orden_devolucion.detalle_orden = (List <BEDetalleOrdenDevolucion>)Session["listProdDev"]; orden_devolucion.id_empleado = user.id; if (needApproval) { var jefe = (ListItem)Session["approver"]; orden_devolucion.id_aprobador = int.Parse(jefe.Value); orden_devolucion = ordenCon.CrearOrdenDevolucion(orden_devolucion); BEEmpleados jefeFarmacia = ordenCon.GetEmpleado(orden_devolucion.id_aprobador); enviarEmail(jefeFarmacia, orden_devolucion.codigo, user); } else { orden_devolucion = ordenCon.CrearOrdenDevolucion(orden_devolucion, true); } lblOrdenDevId.Text = "Orden de devolución creada con el código: " + orden_devolucion.codigo + ". <br/>Orden creada en estado: " + orden_devolucion.estado; limpiar(); }
public BEOrdenDevolucion GetOrdenxCod(string codigo, int tipo) { BEOrdenDevolucion result = new BEOrdenDevolucion(); string uspNombre = tipo == 1 ? "dbo.uspGetOrdenVentaxCod" : "dbo.uspGetOrdenAbastxCod"; SqlCommand cmd = new SqlCommand(uspNombre); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@Codigo", SqlDbType.VarChar, 50).Value = codigo; SqlDataReader reader = ExecuteReader(cmd, 1); while (reader.Read()) { if (tipo == 1) { result.id = (!reader[0].Equals(DBNull.Value)) ? reader.GetInt32(0) : -1; result.tipo = 1; result.codigo = ((!reader[1].Equals(DBNull.Value)) ? reader.GetString(1) : "-"); result.fecha = reader.GetDateTime(2); result.estado = ((!reader[3].Equals(DBNull.Value)) ? reader.GetString(3) : "-"); result.id_empleado = ((!reader[4].Equals(DBNull.Value)) ? reader.GetInt32(4) : -1); result.id_receta = ((!reader[5].Equals(DBNull.Value)) ? reader.GetInt32(5) : -1); result.cliente = clienteDAO.GetClientexId((!reader[6].Equals(DBNull.Value)) ? reader.GetInt32(6) : -1); } else { result.id = (!reader[0].Equals(DBNull.Value)) ? reader.GetInt32(0) : -1; result.tipo = 1; result.codigo = ((!reader[1].Equals(DBNull.Value)) ? reader.GetString(1) : "-"); result.fecha = reader.GetDateTime(2); result.estado = ((!reader[3].Equals(DBNull.Value)) ? reader.GetString(3) : "-"); result.encargado = empleadoDAO.GetEmpleadoxId((!reader[4].Equals(DBNull.Value)) ? reader.GetInt32(4) : -1); result.id_empleado = ((!reader[5].Equals(DBNull.Value)) ? reader.GetInt32(5) : -1); result.area = areaDAO.GetAreaxId((!reader[6].Equals(DBNull.Value)) ? reader.GetInt32(6) : -1); } result.detalle_orden = detalleOrdenDAO.GetDetalleOrdenxOrdenId(result.id, tipo); } return(result); }
private void limpiar(bool softClean = false) { Session["ordenVenta"] = new BEOrdenDevolucion(); Session["devolucion"] = new List <BEDetalleOrdenDevolucion>(); Session["needApproval"] = false; Session["approver"] = new BEEmpleados(); Session["editing"] = false; Session["listProdDev"] = new List <BEDetalleOrdenDevolucion>(); Session["prodCount"] = 0; // Empleado por defecto con Id = 2 Session["user"] = ordenCon.GetEmpleado(2); infoPanel.Visible = false; lblAprobarMsg.Visible = false; lblNroOrdenMsg.Text = ""; ventaPanel.Visible = false; abastecimientoPanel.Visible = false; ventaConfPanel.Visible = false; abastecimientoConfPanel.Visible = false; btnPreGenerar.Enabled = false; txtNumDoc.Text = ""; txtNomCli.Text = ""; txtFecha.Text = ""; txtMotivo.Text = ""; txtArea.Text = ""; txtEncargado.Text = ""; txtFecha2.Text = ""; bxJefeFarmacia.Visible = false; bxAprobar.Visible = false; buscarVentaPanel.Visible = false; buscarAbastecimientoPanel.Visible = false; if (!softClean) { txtNroOrden.Text = ""; Session["searchType"] = "Venta"; } }
public BEOrdenDevolucion DevolverProducto(BEOrdenDevolucion ordenVenta, List <BEDetalleOrdenDevolucion> detalleDevolucion) { BEOrdenDevolucion result = new BEOrdenDevolucion(); return(result); }
private void cargarDatosOrden(string codigo, int searchType) { BEOrdenDevolucion orden = GetOrdenxCodTipo(codigo, searchType); if (orden != null && orden.id > 0) { if (orden.estado == "Entregado") { infoPanel.Visible = true; btnPreGenerar.Enabled = true; var today = (DateTime.Now).Ticks; long diffTicks = today - orden.fecha.Ticks; string fechaHora = orden.fecha.ToShortDateString() + " - " + orden.fecha.ToShortTimeString(); lblFechaConf.Text = lblFechaOrden.Text = fechaHora; lblNroOrden.Text = orden.codigo; if (searchType == 1) { ventaPanel.Visible = true; ventaConfPanel.Visible = true; lblClientConf.Text = lblNombreCliente.Text = orden.cliente.nombres + " " + orden.cliente.apellidos; lblDNIConf.Text = lblNumDocCliente.Text = orden.cliente.num_documento; } else { abastecimientoPanel.Visible = true; abastecimientoConfPanel.Visible = true; lblArea.Text = lblAreaConf.Text = orden.area.descripcion; lblEncargado.Text = lblEncargadoConf.Text = orden.encargado.nombre + " " + orden.encargado.apellidos; } Session["ordenVenta"] = orden; Session["devolucion"] = orden.detalle_orden; // Convertir diferencia a dias if (diffTicks / 864000000000 >= 2) { lblAprobarMsg.Visible = true; lblHourMsg.Text = "La orden tiene más de 48 horas desde su emisión. Se requerirá autorización."; BindDDL(); bxJefeFarmacia.Visible = true; bxAprobar.Visible = true; Session["needApproval"] = true; } else { lblHourMsg.Text = ""; Session["needApproval"] = false; } } else { lblNroOrdenMsg.Text = "La orden ingresada no ha sido entregada aún."; infoPanel.Visible = false; btnPreGenerar.Enabled = false; } } else { lblNroOrdenMsg.Text = "No se encontró la orden."; infoPanel.Visible = false; btnPreGenerar.Enabled = false; } }