/// <summary> /// POST Operation /// Esta función consiste de los if que determinan cuál método llamar en la clase Operations. /// Solamente se evaluará lo que el cliente solicita y se procede a llamar la función adecuada. /// </summary> /// <param name="context"></param> /// <param name="request_instance"></param> private void CREATE(HttpContext context, string request_instance) { try { #region Empleado if (request_instance == "empleado") { L3MDB.Empleado emp = new L3MDB.Empleado(context); operations.AddEmpleado(emp); } #endregion #region Sucursal else if (request_instance == "sucursal") { L3MDB.Sucursal suc = new L3MDB.Sucursal(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddSucursal(suc); } #endregion #region Categoria else if (request_instance == "categoria") { L3MDB.Categoria cat = new L3MDB.Categoria(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddCategoria(cat); } #endregion #region Compra else if (request_instance == "compra") { if (context.Request["productos"] == null || context.Request["cantidad"] == null) { L3MDB.Compra com = new L3MDB.Compra(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddCompra(com); } else { L3MDB.Compra com = new L3MDB.Compra(context); operations.AddCompraProductos(com, context); } } #endregion #region Horas else if (request_instance == "horas") { L3MDB.Horas hor = new L3MDB.Horas(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddHoras(hor); } #endregion #region Producto else if (request_instance == "producto") { L3MDB.Producto produ = new L3MDB.Producto(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddProducto(produ); } #endregion #region Productos_en_compra else if (request_instance == "productos_en_compra") { L3MDB.Productos_en_compra producom = new L3MDB.Productos_en_compra(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddProductocompra(producom); } #endregion #region Productos_en_venta else if (request_instance == "productos_en_venta") { L3MDB.Productos_en_venta produven = new L3MDB.Productos_en_venta(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddProductoventa(produven); } #endregion #region Proveedor else if (request_instance == "proveedor") { L3MDB.Proveedor prove = new L3MDB.Proveedor(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddProveedor(prove); } #endregion #region Rol else if (request_instance == "rol") { L3MDB.Rol rol = new L3MDB.Rol(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddRol(rol); } #endregion #region Venta else if (request_instance == "venta") { if (context.Request["productos"] == null || context.Request["cantidad"] == null) { L3MDB.Venta ven = new L3MDB.Venta(context); //L3MDB.Empleado emp = Deserialize(PostData); // Insert data in database operations.AddVenta(ven); } else { string mensaje = operations.AddVentaProductos(context); WriteResponse(mensaje); } } #endregion } catch (Exception ex) { WriteResponse(ex.Message.ToString()); errHandler.ErrorMessage = operations.GetException(); errHandler.ErrorMessage = ex.Message.ToString(); } }
/// <summary> /// PUT Operation /// Al igual que en post, solamente se va a determinar el método a llamar en la clase Operations. /// </summary> /// <param name="context"></param> /// <param name="request_instance"></param> private void UPDATE(HttpContext context, string request_instance) { try { #region Empleado if (request_instance == "empleado") { L3MDB.Empleado emp = new L3MDB.Empleado(context); operations.UpdateEmpleado(emp); context.Response.Write("Employee Updtated Sucessfully"); WriteResponse("oka"); } #endregion #region Sucursal if (request_instance == "sucursal") { L3MDB.Sucursal suc = new L3MDB.Sucursal(context); operations.UpdateSucursal(suc); WriteResponse("ok"); } #endregion #region Categoria if (request_instance == "categoria") { L3MDB.Categoria cat = new L3MDB.Categoria(context); operations.UpdateCategoria(cat); WriteResponse("ok"); } #endregion #region Compra if (request_instance == "compra") { L3MDB.Compra com = new L3MDB.Compra(context); operations.UpdateCompra(com); WriteResponse("ok"); } #endregion #region Horas if (request_instance == "horas") { L3MDB.Horas hor = new L3MDB.Horas(context); operations.UpdateHoras(hor); WriteResponse("ok"); } #endregion #region Producto if (request_instance == "producto") { L3MDB.Producto produ = new L3MDB.Producto(context); operations.UpdateProducto(produ); WriteResponse("ok"); } #endregion #region Productos_en_compra if (request_instance == "productos_en_compra") { string listaproductosconComas = context.Request["Productos"]; string listacantidadesconComas = context.Request["Cantidad"]; if (listaproductosconComas == null) { L3MDB.Productos_en_compra producom = new L3MDB.Productos_en_compra(context); operations.UpdateProductocompra(producom); } else { string codigo_compra_temp = context.Request["codigo_compra"]; int codigo_compra = int.Parse(codigo_compra_temp); string[] listaProductosSeparados = listaproductosconComas.Split(','); string[] listaCantidadesSeparadas = listacantidadesconComas.Split(','); for (int i = 0; i < listaProductosSeparados.Length; i++) { L3MDB.Productos_en_compra produCompModificar = new L3MDB.Productos_en_compra(); int codigo_producto = int.Parse(listaProductosSeparados[i]); int cantidad = int.Parse(listaCantidadesSeparadas[i]); produCompModificar.Cantidad = cantidad; produCompModificar.Codigo_compra = codigo_compra; produCompModificar.Codigo_producto = codigo_producto; operations.UpdateProductocompra(produCompModificar); } } WriteResponse("ok"); } #endregion #region Productos_en_venta if (request_instance == "productos_en_venta") { L3MDB.Productos_en_venta produven = new L3MDB.Productos_en_venta(context); operations.UpdateProductoventa(produven); WriteResponse("ok"); } #endregion #region Proveedor if (request_instance == "proveedor") { L3MDB.Proveedor prove = new L3MDB.Proveedor(context); operations.UpdateProveedor(prove); WriteResponse("ok"); } #endregion #region Rol if (request_instance == "rol") { L3MDB.Rol rol = new L3MDB.Rol(context); operations.UpdateRol(rol); WriteResponse("ok"); } #endregion #region Venta if (request_instance == "venta") { L3MDB.Venta ven = new L3MDB.Venta(context); operations.UpdateVenta(ven); WriteResponse("ok"); } #endregion } catch (Exception ex) { WriteResponse(ex.Message.ToString()); errHandler.ErrorMessage = operations.GetException(); errHandler.ErrorMessage = ex.Message.ToString(); } }
/// <summary> /// GET Operation /// Todos las regiones marcan un if que va a permitir determinar cuál operación hacer dentro de la base de datos. /// De esta manera, todas tienen una funcionalidad casi igual y el código es muy parecido entre ellos, solamente /// elige entre el método a llamar en la clase Operations. /// </summary> /// <param name="context"></param> /// <param name="request_instance"></param> private void READ(HttpContext context, string request_instance) { //HTTP Request - //http://server.com/virtual directory/empleado?id={id} //http://localhost/RestWebService/empleado //Formato de la forma de hacer el request try { #region Empleado if (request_instance == "empleado") { string _cedula_temp = context.Request["cedula"]; //obtiene el valor del parámetro cedula if (_cedula_temp == null) //si no hay parámetro, obtener todos los empleados { List <L3MDB.Empleado> lista_empleados = operations.GetEmpleados(); string serializedList = Serialize(lista_empleados); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else //si hay parámetro cedula, obtener solo 1 empleado { int _cedula = int.Parse(_cedula_temp); emp = operations.GetEmpleado(_cedula); if (emp == null) { context.Response.Write("No Empleado Found" + context.Request["cedula"]); } string serializedEmpleado = Serialize(emp); context.Response.ContentType = "text/xml"; WriteResponse(serializedEmpleado); } } #endregion #region Sucursal else if (request_instance == "sucursal") { string _codigo_temp = context.Request["codigo"]; if (_codigo_temp == null) { List <L3MDB.Sucursal> lista_sucursales = operations.GetSucursales(); string serializedList = Serialize(lista_sucursales); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { string _codigo = _codigo_temp; suc = operations.GetSucursal(_codigo); if (suc == null) { context.Response.Write(_codigo + "No Sucursal Found" + context.Request["codigo"]); } string serializedSucursal = Serialize(suc); context.Response.ContentType = "text/xml"; WriteResponse(serializedSucursal); } } #endregion #region Categoria else if (request_instance == "categoria") { string _id_temp = context.Request["id"]; if (_id_temp == null) { List <L3MDB.Categoria> lista_categorias = operations.GetCategorias(); string serializedList = Serialize(lista_categorias); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { int _id = int.Parse(_id_temp); //HTTP Request Type - GET" //Performing Operation - READ" cat = operations.GetCategoria(_id); if (cat == null) { context.Response.Write(_id + "No Categoria Found" + _id_temp); } string serializedCategoria = Serialize(cat); context.Response.ContentType = "text/xml"; WriteResponse(serializedCategoria); } } #endregion #region Compra else if (request_instance == "compra") { string _codigotemp = context.Request["codigo"]; string _fecha_inicial = context.Request["fecha_inicial"]; string _fecha_final = context.Request["fecha_final"]; string _codigo_sucursal = context.Request["codigo_sucursal"]; if (_codigotemp == null) { if (_codigo_sucursal == null) { if (_fecha_inicial != null && _fecha_final != null) { List <Operations.Gasto> lista_compras = operations.GetGastos("", _fecha_inicial, _fecha_final); string serializedList = Serialize(lista_compras); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { List <L3MDB.Compra> lista_compras = operations.GetCompras(); string serializedList = Serialize(lista_compras); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } } else { if (_fecha_inicial != null && _fecha_final != null) { List <Operations.Gasto> lista_compras = operations.GetGastos(_codigo_sucursal, _fecha_inicial, _fecha_final); string serializedList = Serialize(lista_compras); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { List <L3MDB.Compra> lista_compras = operations.GetCompras(); string serializedList = Serialize(lista_compras); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } } } else { int _codigo = int.Parse(_codigotemp); //HTTP Request Type - GET" //Performing Operation - READ" com = operations.GetCompra(_codigo); if (com == null) { context.Response.Write(_codigo + "No Compra Found" + _codigotemp); } string serializedCompra = Serialize(com); context.Response.ContentType = "text/xml"; WriteResponse(serializedCompra); } } #endregion #region Horas else if (request_instance == "horas") { string _horastemp = context.Request["id_semana"]; if (_horastemp == null) { List <L3MDB.Horas> lista_horas = operations.GetHorases(); string serializedList = Serialize(lista_horas); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { string _horas = _horastemp; List <L3MDB.Horas> listaHorasSemana = new List <L3MDB.Horas>(); //HTTP Request Type - GET" //Performing Operation - READ" listaHorasSemana = operations.GetHoras(_horas); if (listaHorasSemana.Count == 0) { context.Response.Write(_horas + "No Horas Found" + _horastemp); } string serializedHoras = Serialize(listaHorasSemana); context.Response.ContentType = "text/xml"; WriteResponse(serializedHoras); } } #endregion #region Producto else if (request_instance == "producto") { string _codigo_barrastemp = context.Request["codigo_barras"]; string _codigo_sucursaltemp = context.Request["codigo_sucursal"]; string _todos = context.Request["Todos"]; if (_codigo_barrastemp == null) { if (_codigo_sucursaltemp == null) { if (_todos == null) { List <L3MDB.Producto> lista_productos = operations.GetProductos(); string serializedList = Serialize(lista_productos); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { List <Operations.ReporteProductos> lista_productos = operations.GetProductosTodos(); string serializedList = Serialize(lista_productos); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } } else { List <Operations.ReporteProductosSucursal> lista_productos = operations.GetProductosporSucursal(_codigo_sucursaltemp); string serializedList = Serialize(lista_productos); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } } else { int _codigo_barras = int.Parse(_codigo_barrastemp); //HTTP Request Type - GET" //Performing Operation - READ" produ = operations.GetProducto(_codigo_barras, _codigo_sucursaltemp); if (produ == null) { context.Response.Write(_codigo_barras + "No Producto Found" + _codigo_barrastemp); } string serializedProducto = Serialize(produ); context.Response.ContentType = "text/xml"; WriteResponse(serializedProducto); } } #endregion #region Productos_en_compra else if (request_instance == "productos_en_compra") { string _codigo_compratemp = context.Request["codigo_compra"]; string _codigo_productotemp = context.Request["codigo_producto"]; if (_codigo_compratemp == null) { List <L3MDB.Productos_en_compra> lista_productos_en_compra = operations.GetProductos_en_compras(); string serializedList = Serialize(lista_productos_en_compra); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { int _codigo_compra = int.Parse(_codigo_compratemp); int _codigo_producto = int.Parse(_codigo_productotemp); //HTTP Request Type - GET" //Performing Operation - READ" producom = operations.GetProducto_en_compra(_codigo_compra, _codigo_producto); if (producom == null) { context.Response.Write(_codigo_compra + "No Producto Found" + _codigo_compratemp); } string serializedProductos_en_compra = Serialize(producom); context.Response.ContentType = "text/xml"; WriteResponse(serializedProductos_en_compra); } } #endregion #region Productos_en_venta else if (request_instance == "productos_en_venta") { string _codigo_ventatemp = context.Request["codigo_venta"]; string _codigo_productotemp = context.Request["codigo_producto"]; if (_codigo_ventatemp == null) { List <L3MDB.Productos_en_venta> lista_productos_en_venta = operations.GetProductos_en_ventas(); string serializedList = Serialize(lista_productos_en_venta); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { int _codigo_venta = int.Parse(_codigo_ventatemp); int _codigo_producto = int.Parse(_codigo_productotemp); //HTTP Request Type - GET" //Performing Operation - READ" produven = operations.GetProducto_en_venta(_codigo_venta, _codigo_producto); if (produven == null) { context.Response.Write(_codigo_venta + "No Producto Found" + _codigo_ventatemp); } string serializedProductos_en_venta = Serialize(produven); context.Response.ContentType = "text/xml"; WriteResponse(serializedProductos_en_venta); } } #endregion #region Proveedor else if (request_instance == "proveedor") { string _cedulatemp = context.Request["cedula"]; if (_cedulatemp == null) { List <L3MDB.Proveedor> lista_proveedores = operations.GetProveedores(); string serializedList = Serialize(lista_proveedores); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { int _cedula = int.Parse(_cedulatemp); //HTTP Request Type - GET" //Performing Operation - READ" prove = operations.GetProveedor(_cedula); if (prove == null) { context.Response.Write(_cedula + "No Producto Found" + _cedulatemp); } string serializedProveedor = Serialize(prove); context.Response.ContentType = "text/xml"; WriteResponse(serializedProveedor); } } #endregion #region Rol else if (request_instance == "rol") { string nombretemp = context.Request["nombre"]; if (nombretemp == null) { List <L3MDB.Rol> lista_roles = operations.GetRoles(); string serializedList = Serialize(lista_roles); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { string nombre = nombretemp; //HTTP Request Type - GET" //Performing Operation - READ" rol = operations.GetRol(nombre); if (rol == null) { context.Response.Write(nombre + "No Producto Found" + nombretemp); } string serializedRol = Serialize(rol); context.Response.ContentType = "text/xml"; WriteResponse(serializedRol); } } #endregion #region Venta else if (request_instance == "venta") { string _codigotemp = context.Request["codigo"]; if (_codigotemp == null) { List <L3MDB.Venta> lista_ventas = operations.GetVentas(); string serializedList = Serialize(lista_ventas); context.Response.ContentType = "text/xml"; WriteResponse(serializedList); } else { int _codigo = int.Parse(_codigotemp); //HTTP Request Type - GET" //Performing Operation - READ" ven = operations.GetVenta(_codigo); if (ven == null) { context.Response.Write(_codigo + "No Producto Found" + _codigotemp); } string serializedVenta = Serialize(ven); context.Response.ContentType = "text/xml"; WriteResponse(serializedVenta); } } #endregion } catch (Exception ex) { WriteResponse(ex.Message.ToString()); errHandler.ErrorMessage = operations.GetException(); errHandler.ErrorMessage = ex.Message.ToString(); } }