Skip to main content
Version: 1.0.0

模型操作

用于对模型的增删改查的操作

属性描述是否必填
操作类型下拉选择,查询、新增、更新、删除
模型下拉选择,其中用*号包裹的是系统自带的模型
请求参数通过表达式返回的对象
出参变量名将模型操作的结果通过该变量名设置到服务的上下文中,如可通过ctx.output来访问

请求参数

1、当进行查询操作时

参数是一个key/value的键值对DataMap,如:

{"name":"张三"}

2、当进行新增和更新操作时

参数可以是一个key/value的键值对,也可以是一个key/value键值对的数组进行批量操作,如:

{"name":"张三"} 或

[ {"name":"张三"}, {"name":"李四"} ]

3、当进行删除操作时

参数是一个该模型主键的数组,如:

[10001,10002]

查询参数

1、分页,pageSize、currPage参数同时大于零时生效,同时返回总记录数,否则查询全部数据。
currPage:当前页码 pageSize:每页最多显示的记录数

2、导出Excel,export参数不为空是时将查询结果导出到excel。
export: 要导出excel的文件名,扩展名为.xls时导出excel2003格式,否则导出为excel2007格式
fields: 设置需要导出excel的字段,字段之间用逗号分隔,为空时导出全部字段
excludeFields: 设置不需要导出excel的字段,字段之间用逗号分隔

3、排序,asc、desc为空时默认按ID降序排序,不为空时将指定字段的前后位置进行排序,多个字段之间用逗号分隔,如:asc=name,id
asc:指定升序字段
desc:指定降序字段\

4、包含子表数据,当includeList=true时返回数据将自动包含一对多的子表数据,当用id去查询数据时自动为true,如:id=10001

5、包含关联映射,当includeRelated=true时返回多对一关联的映射字段,当用id去查询数据时自动为true,如:id=10001

6、关联子表查询,查询方式规则,如:project.garden.staff.id=12,查询项目下的小区的工作人员的id等于12的所有项目

7、如果查询的实体类继承至TreeEntity(树形结构),在不分页并且参数buildTree!=false的情况下查询的数据会自动按树形(父子)结构排列

8、查询

	a、当exp不为空时,将按exp指定的方式查询,指定多个字段时使用按参数出现的位置依次用逗号分隔,如:name=xxx&status=true&exp=allLike,eq
eq: 等于,等价于 "="
between: 在两个值之间,字段值用"~"分隔
le: 小于或等于,等价于 "<="
lt: 小于,等价于 "<"
ge: 大于或等于,等价于 ">="
gt: 大于,等价于 ">"
notEq: 不等于,等价于 "<>"
leftLike: 左边匹配,等价于 "like xxx%"
rightLike: 右边匹配,等价于 "like %xxx"
allLike: 包含,等价于 "like %xxx%"
notLeftLike: 左边不匹配,等价于 "not like xxx%"
notRightLike: 右边不匹配,等价于 "not like %xxx"
notAllLike: 不包含,等价于 "not like %xxx%"
isNull: 为空,等价于 "is null"
notNull: 不为空,等价于 "is not null"
isEmpty: 为空字符串,等价于 "=''"
notEmpty: 不为空字符串,等价于 "<>''"
in: in,等价于 "in (a,b,c)",字段值用逗号分隔
notIn: not in,等价于 "not in (a,b,c)",字段值用逗号分隔

b、当exp为空时,所有查询条件的查询方式除以下情况外均为eq

当查询字段是数值类型时,当参数包含“~”符号时,查询方式将固定为between;参数包含“,”符号时,查询方式将固定为in或notIn(不指定时默认为in),如:age=30~40,age=30,31,32;

当查询字段是时间日期类型时,当参数包含“~”符号时,查询方式将固定为between,如:createDate=2010-01-01~2010-01-31;

当查询字段是枚举和字典类型时,当参数包含“,”符号时,查询方式将固定为in或notIn(不指定时默认为in),其它情况下固定为eq,如:type=string,integer;

当查询字段为布尔、枚举类型时,查询方式将固定为精确匹配,如e:enable=true或enable=false;

当查询类型为字符类型时,当参数包含“,”符号时,查询方式将固定为in或notIn(不指定时默认为in),如:name=张,李;

当查询类型为字符类型时,当queryMode不为空时(8.a所列的查询方式),查询方式将按queryMode值进行查询,如:name=张&mobile=138&queryMode=leftLike,name=张&mobile=138&queryMode=allLike;