123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- // 表单校验规则由 schema2code 生成,不建议直接修改校验规则,而建议通过 schema2code 生成, 详情: https://uniapp.dcloud.net.cn/uniCloud/schema
- const validator = {
- "role_id": {
- "rules": [
- {
- "required": true
- },
- {
- "format": "string"
- }
- ],
- "label": "唯一ID"
- },
- "role_name": {
- "rules": [
- {
- "required": true
- },
- {
- "format": "string"
- }
- ],
- "label": "名称"
- },
- "permission": {
- "rules": [
- {
- "format": "array"
- }
- ],
- "label": "权限"
- },
- "comment": {
- "rules": [
- {
- "format": "string"
- }
- ],
- "label": "备注"
- },
- "create_date": {
- "rules": [
- {
- "format": "timestamp"
- }
- ]
- }
- }
- const enumConverter = {}
- function filterToWhere(filter, command) {
- let where = {}
- for (let field in filter) {
- let { type, value } = filter[field]
- switch (type) {
- case "search":
- if (typeof value === 'string' && value.length) {
- where[field] = new RegExp(value)
- }
- break;
- case "select":
- if (value.length) {
- let selectValue = []
- for (let s of value) {
- selectValue.push(command.eq(s))
- }
- where[field] = command.or(selectValue)
- }
- break;
- case "range":
- if (value.length) {
- let gt = value[0]
- let lt = value[1]
- where[field] = command.and([command.gte(gt), command.lte(lt)])
- }
- break;
- case "date":
- if (value.length) {
- let [s, e] = value
- let startDate = new Date(s)
- let endDate = new Date(e)
- where[field] = command.and([command.gte(startDate), command.lte(endDate)])
- }
- break;
- case "timestamp":
- if (value.length) {
- let [startDate, endDate] = value
- where[field] = command.and([command.gte(startDate), command.lte(endDate)])
- }
- break;
- }
- }
- return where
- }
- export { validator, enumConverter, filterToWhere }
|