import ngModule from '../module'; import ModuleMain from 'salix/components/module-main'; export default class User extends ModuleMain { constructor($element, $) { super($element, $); this.filter = { fields: ['id', 'nickname', 'name', 'role'], include: { relation: 'role', scope: { fields: ['id', 'name'] } } }; } exprBuilder(param, value) { switch (param) { case 'search': return /^\d+$/.test(value) ? {id: value} : {or: [ {name: {like: `%${value}%`}}, {nickname: {like: `%${value}%`}} ]}; case 'name': case 'nickname': return {[param]: {like: `%${value}%`}}; case 'roleFk': return {[param]: value}; } } } ngModule.vnComponent('vnUser', { controller: User, template: require('./index.html') });