public SalariesAPIModule(IWebObjectService service) { Get("/api/salaries/list", async(req, res, routeData) => { _log.Debug("Received HTTP request: GET /api/salaries/list"); var list = service.GetAllSalaries(); res.StatusCode = 200; // generates suitable response, by default in JSON await res.Negotiate(list); }); Get("/api/salaries/list/{employeeId:int}", async(req, res, routeData) => { int id = routeData.As <int>("employeeId"); _log.Debug(String.Format("Received HTTP request: GET /api/salaries/list/{0}", id)); var obj = service.GetSalariesForAnEmployee(id); if (obj == null || obj.Count == 0) { res.StatusCode = 404; } else { res.StatusCode = 200; // generates suitable response, by default in JSON await res.Negotiate(obj); } }); }
public EmployeesAPIModule(IWebObjectService service) { Get("/api/employees/list", async(req, res, routeData) => { _log.Debug("Received HTTP request: GET /api/employees/list"); var list = service.GetAllEmployees(); res.StatusCode = 200; // generates suitable response, by default in JSON await res.Negotiate(list); }); Get("/api/employees/{id:int}", async(req, res, routeData) => { int id = routeData.As <int>("id"); _log.Debug(String.Format("Received HTTP request: GET /api/employees/{0}", id)); var emp = service.GetEmployee(id); if (emp == null) { res.StatusCode = 404; } else { res.StatusCode = 200; // generates suitable response, by default in JSON await res.Negotiate(emp); } }); Post("/api/employees", async(req, res, routeData) => { _log.Debug("Received HTTP request: POST /api/employees"); var result = req.Bind <WebEmployee>(); _log.DebugFormat("Employee object parsed from user: {0}", result); try { service.AddEmployee(result); } catch (ArgumentException ex) { res.StatusCode = 400; await res.WriteAsync(String.Format("Problem when adding the object to database: {0}", ex.Message)); return; } res.StatusCode = 201; await res.WriteAsync(String.Format("Employee was correctly added!")); return; }); }
public EmployeesAPIModule(IWebObjectService service) { Get("/api/employees/list", async(req, res, routeData) => { var list = service.GetAllEmployees(); res.StatusCode = 200; // generates suitable response, by default in JSON await res.Negotiate(list); }); Get("/api/employees/{id:int}", async(req, res, routeData) => { int id = routeData.As <int>("id"); var emp = service.GetEmployee(id); if (emp == null) { res.StatusCode = 404; } else { res.StatusCode = 200; // generates suitable response, by default in JSON await res.Negotiate(emp); } }); }
public EmployeeHoursAPIModule(IWebObjectService service) { Get("/api/employee_hours/list/{employeeId:int}", async(req, res, routeData) => { int id = routeData.As <int>("employeeId"); _log.Debug(String.Format("Received HTTP request: GET /api/employee_hours/list/{0}", id)); var list = service.GetEmployeeHoursForAnEmployee(id); if (list == null || list.Count == 0) { res.StatusCode = 404; } else { res.StatusCode = 200; await res.Negotiate(list); } }); Get("/api/employee_hours/list_all", async(req, res, routeData) => { _log.Debug(String.Format("Received HTTP request: GET /api/employee_hours/list_all")); var weh = service.GetAllEmployeeHours(); res.StatusCode = 200; await res.Negotiate(weh); }); Get("/api/employee_hours/{employeeHoursId:int}", async(req, res, routeData) => { int id = routeData.As <int>("employeeHoursId"); _log.Debug(String.Format("Received HTTP request: GET /api/employee_hours/{0}", id)); var weh = service.GetOneEmployeeHours(id); if (weh == null) { res.StatusCode = 404; } else { res.StatusCode = 200; await res.Negotiate(weh); } }); Post("/api/employee_hours", async(req, res, routeData) => { _log.Debug("Received HTTP request: POST /api/employee_hours"); var result = req.Bind <WebEmployeeHours>(); _log.DebugFormat("EmployeeHours object parsed from user: {0}", result); try { service.AddEmployeeHours(result); } catch (ArgumentException ex) { res.StatusCode = 400; await res.WriteAsync(String.Format("Problem when adding the object to database: {0}", ex.Message)); return; } res.StatusCode = 201; await res.WriteAsync(String.Format("EmployeeHours was correctly added!")); return; }); Delete("/api/employee_hours/{employeeHoursId:int}", async(req, res, routeData) => { int id = routeData.As <int>("employeeHoursId"); _log.Debug(String.Format("Received HTTP request: DELETE /api/employee_hours/{0}", id)); var weh = service.GetOneEmployeeHours(id); if (weh == null) { res.StatusCode = 404; } else { res.StatusCode = 202; service.DeleteEmployeeHours(id); await res.Negotiate(weh); } }); Put("/api/employee_hours", async(req, res, routeData) => { _log.Debug("Received HTTP request: PUT /api/employee_hours"); var result = req.BindAndValidate <WebEmployeeHours>(); var weh = service.GetOneEmployeeHours(result.Data.Id); if (weh == null) { res.StatusCode = 404; } else { try { service.EditEmployeeHours(result.Data); } catch (ArgumentException ex) { res.StatusCode = 400; await res.WriteAsync(String.Format("Problem when editing the object in database: {0}", ex.Message)); return; } res.StatusCode = 202; await res.Negotiate(result.ValidationResult.GetFormattedErrors()); } }); }