/// <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(); } }