housePoliceCode.js 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. 'use strict';
  2. const _ = require('lodash');
  3. const urlList = [ '/security_guard_base', '/security_guard_base/update' ];
  4. const isIncludes = url => {
  5. let res = false;
  6. for (const i of urlList) {
  7. if (url.includes(i)) {
  8. res = true;
  9. break;
  10. }
  11. }
  12. return res;
  13. };
  14. module.exports = options => {
  15. return async function housepolicecode(ctx, next) {
  16. const url = ctx.request.url;
  17. const needDeal = isIncludes(url);
  18. if (needDeal) {
  19. const method = ctx.request.method;
  20. if (method === 'POST') {
  21. const body = ctx.request.body;
  22. // 符合路由要求,该处理了
  23. const object = await ctx.service.securityGuard.base.getHousePoliceCode(body);
  24. if (object) {
  25. body.house_police_code = object.num;
  26. }
  27. } else {
  28. const query = ctx.request.query;
  29. const object = await ctx.service.securityGuard.base.getHousePoliceCode(query);
  30. if (object) {
  31. query.house_police_code = object.num;
  32. delete query.house_police;
  33. }
  34. }
  35. }
  36. await next();
  37. };
  38. };