util.js 876 B

1234567891011121314151617181920212223242526272829303132
  1. 'use strict';
  2. const assert = require('assert');
  3. const _ = require('lodash');
  4. const { ObjectId } = require('mongoose').Types;
  5. const { CrudService } = require('naf-framework-mongoose/lib/service');
  6. const { BusinessError, ErrorCode } = require('naf-core').Error;
  7. class UtilService extends CrudService {
  8. constructor(ctx) {
  9. super(ctx);
  10. this.mq = this.ctx.mq;
  11. }
  12. async findModel({ model }) {
  13. const _model = _.capitalize(model);
  14. const data = this.ctx.model[_model].prototype.schema.obj;
  15. const keys = Object.keys(data);
  16. let res = [];
  17. for (const k of keys) {
  18. const field = _.get(data[k], 'field');
  19. if (field && _.get(field, 'label')) {
  20. field.model = k;
  21. res.push(field);
  22. }
  23. }
  24. res = _.orderBy(res, [ 'row' ], [ 'asc' ]);
  25. return res;
  26. }
  27. async utilMethod(query, body) {
  28. }
  29. }
  30. module.exports = UtilService;