groovy 函数 API

1. context函数

获取自定义函数所绑定对象的数据信息
函数方法描述data返回类型
context.tenantId获取登录账号的企业ID 
context.userId获取登录账号的用户ID 
context.data获取绑定对象的数据 

2. Zk.object

和对象操作有关的API
函数方法描述data返回类型
Zk.object.create对象数据创建,同时支持新建从对象数据 
Zk.object.batchCreate批量新建对象数据,不支持同时新建从对象数据 
Zk.object.update更新业务对象数据 
Zk.object.batchUpdate批量更新业务对象数据 
Zk.object.delete删除业务对象数据 
Zk.object.bulkDelete批量删除业务对象数据 
Zk.object.findById按业务对象Id查询业务对象数据 
Zk.object.findByIds批量按业务对象Id查询业务对象数据 
Zk.object.find当前用户身份,按指定的查询条件查询业务对象数据 
Zk.object.changeOwner更换负责人 
Zk.object.batchChangeOwner批量更换负责人 

3. Zk.org

Zk.org:和人员/部门操作有关的API
函数方法描述data返回类型
Zk.org.findUserById按用户ID查询用户信息 
Zk.org.findUserByUserIds按用户Id列表查询若干用户信息 
Zk.org.findEmployeeByDepartmentId根据部门id查部门下的员工信息 
Zk.org.findDepartmentByIds按部门IDS查询部门信息 
Zk.org.findParentDepartmentIds根据部门id查上级部门信息 
Zk.org.findSubordinateDepartmentIds根据部门id查下级部门信息 
Zk.org.findUserByParams根据name和mobile查询员工信息 

4. Zk.http

Zk.http:发送http请求相关的API
函数方法描述data返回类型
Zk.http.getHTTP GET请求 
Zk.http.postHTTP POST请求 

5. Zk.log

Zk.log:日志相关的API
函数方法描述data返回类型
Zk.log.error打印error日志 
Zk.log.info打印info日志 
Zk.log.debug打印debug日志 

6. Zk.function

Zk.function:函数调用相关的API (暂时不提供)
函数方法描述data返回类型
Zk.function.execFunc执行控制器函数(被调用函数命名空间必须为自定义控制器) 

7. Zk.message

Zk.message: 和发送消息有关的API
函数方法描述data返回类型
Zk.message.sendInternalMsg发送站内通知 

Zk.object-业务对象数据操作相关的API

1、创建业务对象-create

对象创建同时新建从对象:Zk.object.create(String objectKey, Map objectData)
参数实例:
def objectKey="object_WXaUG__c" Map objectData=[   "fieldMap": [         "field_chuKY__c": "www.baidu.com",         "field_w9c0P__c": 100,         "field_laHsE__c": "7356446882660495150",         "field_quNhV__c": 8759000,         "field_IwVMj__c": "多行文本"     ],   "object_key": "object_WXaUG__c",     "slaveMap": [         "object_sp9un__c": [             [                 "fieldMap": [                     "field_rqmXP__c": null,                     "owner": "6378030218049702609",                     "name": "name",                     "field_RKSCV__c": "单行文本"                 ],                 "object_key": "object_sp9un__c"             ]         ]     ] ] def result=Zk.object.create(objectKey,objectData) Zk.log.error(result.message) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
objectDataMap对象数据 fieldMap:业务对象字段和值 object_key:对象objectKey slaveMap:从对象数据
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMapid:对象id
errorMessageString成功失败信息

2、批量新建对象数据-batchCreate

不支持同时新建从对象数据:Zk.object.batchCreate(String objectKey, List<Map> objectData)
参数实例:
def objectKey="object_WXaUG__c" Map objectData1=[   "fieldMap": [         "field_chuKY__c": "www.baidu.com",         "field_w9c0P__c": 100,         "field_laHsE__c": "7356446882660495150",       "field_ckBxb__c": "KMPF3a9S"     ],     "object_key": "object_WXaUG__c",     "slaveMap": [:] ] Map objectData2=[   "fieldMap": [         "field_chuKY__c": "www.baidu.com",         "field_w9c0P__c": 100,       "field_ckBxb__c": "KMPF3a9S,KMPF3a9S"     ],     "object_key": "object_WXaUG__c",     "slaveMap": [:] ] List<Map> objectData=[objectData1,objectData2] def result=Zk.object.batchCreate(objectKey,objectData) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
objectDataList<Map>对象数据 fieldMap:业务对象字段和值 object_key:对象objectKey slaveMap:Map类型,从对象数据,key:从对象objectKey,value-对象数据,和主对象数据结构一致
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap
errorMessageString成功失败信息

3、更新业务对象数据-update

更新业务对象数据:Zk.object.update(String objectKey, Map objectData)
参数实例:
def objectKey="object_WXaUG__c" Map objectData=[   "fieldMap": [     "id":"4801391369582627143",         "field_chuKY__c": "www.baidu.com",         "field_w9c0P__c": 100,       "field_ckBxb__c": "KMPF3a9S,KMPF3a9S"     ],     "object_key": "object_WXaUG__c",     "slaveMap": [:] ] def result=Zk.object.update(objectKey,objectData) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
objectDataMap对象数据 id:必传,业务数据id fieldMap:业务对象字段和值 object_key:对象objectKey slaveMap:从对象数据
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap
errorMessageString成功失败信息

4、批量更新业务对象数据-batchUpdate

批量更新业务对象数据:Zk.object.batchUpdate(String objectKey, Map fieldMap, List<String> dataIds)
参数实例:
def objectKey="object_WXaUG__c" Map fieldMap=["name": "批量修改444"] List dataIds=["7703419591804816817","8450728855509607359"] def result=Zk.object.batchUpdate(objectKey,fieldMap,dataIds) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
fieldMapMap对象数据 key为列名,value为值
dataIdsList<String>记录id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap
errorMessageString成功失败信息

5、删除业务对象数据-delete

删除业务对象数据:Zk.object.delete(String objectKey, String dataId)
参数实例:
def dataId="4801391369582627143" def objectKey="object_WXaUG__c" def result=Zk.object.delete(objectKey,dataId) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
dataIdString记录id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap
errorMessageString成功失败信息

6、批量删除业务对象数据-bulkDelete

删除业务对象数据:Zk.object.bulkDelete(String objectKey, List<String> dataIds)
参数实例:
def dataId1="6633660319242715893" def dataId2="8240396388904829648" def objectKey="object_WXaUG__c" List dataIds=[dataId1,dataId2] def result=Zk.object.bulkDelete(objectKey,dataIds) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
dataIdsList<String>记录id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap
errorMessageString成功失败信息

7、按业务对象Id查询业务对象数据-findById

按业务对象Id查询业务对象数据:Zk.object.findById(String objectKey, String dataId)
参数实例:
def dataId="6633660319242715893" def objectKey="object_WXaUG__c" def result=Zk.object.findById(objectKey,dataId) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
dataIdString记录id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap对象数据信息
errorMessageString成功失败信息

8、批量按业务对象Id查询业务对象数据-findByIds

批量按业务对象Id查询业务对象数据:Zk.object.findByIds(String objectKey, List<String> dataIds)
参数实例:
def objectKey="object_WXaUG__c" List dataIds=["4801391369582627143","5770487140596221866"] def result=Zk.object.findByIds(objectKey,dataIds) Zk.log.info(result.message) ["data":result.data]
参数说明:
参数类型说明
objectKeyString对象objectKey
dataIdsList<String>记录id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataList对象数据信息
errorMessageString成功失败信息

9、当前用户身份,按指定的查询条件查询业务对象数据-find

当前用户身份,按指定的查询条件查询业务对象数据:Zk.object.find(String objectKey, List<String> dataIds)
参数实例:
Map param=[ "page": 1, "rows": 100, "object_key": "object_WXaUG__c", "search": [   "field_key": "name",   "field_values": ["改个名"],   "operator": "LIKE" ], "sort": [   "field_key": "create_time",   "type": "desc" ] ] def result=Zk.object.find(param) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
objectKeyString对象objectKey
dataIdsList<String>记录id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataList对象数据信息
errorMessageString成功失败信息

10、更换负责人-changeOwner

更换负责人:Zk.object.changeOwner(String objectKey,String id,String memberId,String changeType)
参数实例:
def objectKey="object_WXaUG__c" def memberId="6378030218049702609" def changeType="1" def id="7797923353130062630" def result=Zk.object.changeOwner(objectKey,id,memberId,changeType) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
objectKeyString 对象key,必填
idString 业务数据id
memberIdString 人员id
changeTypeString 原负责人处理方式:1、移出相关团队 2、变更为普通成员
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap
errorMessageString成功失败信息

11、批量更换负责人-batchChangeOwner

批量更换负责人:Zk.object.batchChangeOwner(Map param)
参数实例:
Map param=[ "objectKey": "object_WXaUG__c", "ids": ["7797923353130062630"], "memberId": "7797065850679904233", "changeType": 1 ] def result=Zk.object.batchChangeOwner(param) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
paramMapmemberId:成员id,必填 objectKey:对象key,必填 ids:List,必填 changeType:1、移出相关团队 2、变更为普通成员
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap
errorMessageString成功失败信息

12、将页面上的objectKey转换为系统使用的名称-changeObjectKeyToSystemName

将页面上的objectKey转换为系统使用的名称-Zk.object.changeObjectKeyToSystemName(String objectKey)
参考实例:
Zk.object.changeObjectKeyToSystemName(String objectKey)
参数说明:
参数类型说明
objectKeyString对象列表页的objectKey

Zk.org-人员/部门操作有关的API

1、按用户ID查询用户信息-findUserById

按用户ID查询用户信息:Zk.org.findUserById(String userId)
参数实例:
def result=Zk.org.findUserById(context.userId.toString()) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
userIdString 用户id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap用户信息
errorMessageString成功失败信息

2、按用户Id列表查询若干用户信息-findUserByUserIds

按用户Id列表查询若干用户信息:Zk.org.findUserByUserIds(List<String> userIds)
参数实例:
def result=Zk.org.findUserByUserIds(["8981121292410962469","9210032159887333595"]) Zk.log.info(result.message) ["data":result.data]
参数说明:
参数类型说明
userIdsList用户id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataList用户信息
errorMessageString成功失败信息

3、根据部门id查部门下的员工信息-findEmployeeByDepartmentId

按用户Id列表查询若干用户信息:Zk.org.findEmployeeByDepartmentId(String deptId)
参数实例:
def result=Zk.org.findEmployeeByDepartmentId("6141666094216731769") Zk.log.info(result.message) ["data":result.data]
参数说明:
参数类型说明
deptIdString 用户id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap员工信息
errorMessageString成功失败信息

4、按部门IDS查询部门信息-findDepartmentByIds

按用户Id列表查询若干用户信息:Zk.org.findDepartmentByIds(List<String> deptIds)
参数实例:
List deptIds=["7840969440528433623","9180872406146207361"] def result=Zk.org.findDepartmentByIds(deptIds) Zk.log.info(result.message) ["data":result.data]
参数说明:
参数类型说明
deptIdsList部门id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataList部门信息
errorMessageString成功失败信息

5、根据部门id查上级部门信息-findParentDepartmentIds

根据部门id查上级部门信息:Zk.org.findParentDepartmentIds(String deptId)
参数实例:
String deptId="9063838294391319969" def result=Zk.org.findParentDepartmentIds(deptId) Zk.log.info(result.message) ["data":result.data]
参数说明:
参数类型说明
deptIdString部门id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataList部门信息
errorMessageString成功失败信息

6、根据部门id查下级部门信息-findSubordinateDepartmentIds

根据部门id查上级部门信息:Zk.org.findSubordinateDepartmentIds(String deptId)
参数实例:
String deptId="9063838294391319969" def result=Zk.org.findSubordinateDepartmentIds(deptId) Zk.log.info(result.message) ["data":result.data]
参数说明:
参数类型说明
deptIdString部门id
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataList部门信息
errorMessageString成功失败信息

7、前置校验本企业空间是否仍有余量-verifyTenantSpace

校验本企业空间是否仍有余量-verifyTenantSpace
参数实例:无
参数说明:无参数
返回信息:
参数类型说明
databooleantrue:没有空间,false:有空间
注意:前置校验功能函数返回值必须按照规定的格式,示例如下
def result = Zk.org.verifyTenantSpace() if (result.data) { return [checkPassed: false, message: "存储空间已满,此功能无法使用,请尽快购买空间或联系管理员删除历史文件。"] } else { return [checkPassed: true, message: ""] }

8、根据name和mobile查询用户

参数实例:Zk.org.findUserByParams(name,mobile)
参数说明:
参数类型说明
nameString用户名称
mobileString用户电话号码,需要和手机字段的格式保持一致{“code”:"86","phone":"1233333"}
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap员工信息
errorMessageString成功失败信息

Zk.http-发送http请求相关的API

1、HTTP GET请求-get

HTTP GET请求:Zk.http.get(String url, Map headers)
参数实例:
def url="http://www.baidu.com" def header=[ "Host":"www.baidu.com" ] def result=Zk.http.get(url,header)
参数说明:
参数类型说明
urlString请求url
headersMap 请求头
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap响应数据
errorMessageString成功失败信息

2、HTTP POST请求-post

HTTP GET请求:Zk.http.post(String url, Map headers, Map/String data)
参数实例:
def url="http://172.31.3.216:6020/api/cuxiao/verify/v1/queryVerificationPlan/7578222006630858715/202109291347141/d4c14c694a86c91ab373800f1fa6ca27/X0000000001" def param=[ "createStartDate": "2021-06-07 00:00:00",     "createEndDate": "2021-06-07 23:00:00",     "modifyStartDate": "",     "modifyEndDate": "",     "verifyCode": "",     "page":"1",     "pageSize":"10" ] def result=Zk.http.post(url,[:],param)
参数说明:
参数类型说明
urlString请求url
headersMap/String请求头
dataMap 请求体
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap响应数据
errorMessageString成功失败信息

Zk.log-日志相关的API

1、打印error日志-error

打印error日志:Zk.log.error(Object object)
参数实例:
Zk.log.error("error")
参数说明:
参数类型说明
objectObject 打印信息

2、打印info日志-info

打印error日志:Zk.log.info(Object object)
参数实例:
Zk.log.info("info")
参数说明:
参数类型说明
objectObject 打印信息

3、打印debug日志-debug

打印error日志:Zk.log.debug(Object object)
参数实例:
Zk.log.debug("debug")
参数说明:
参数类型说明
objectObject 打印信息

Zk.message-发送消息相关API

1、发送站内通知-sendInternalMsg

发送站内通知:Zk.message.sendInternalMsg(String tenantId,Map param)
参数实例:
Map param=[ "userId":"6378030218049702609", "appid":"9179656071611871366", "receiveUserList":["7797065850679904233","8766297125429275543"], "content":"快来进货啦", "urlData":"http://172.31.3.223:6020/" ] ​ def result=Zk.message.sendInternalMsg(context.tenantId.toString(),param) Zk.log.info(result.message) result.data
参数说明:
参数类型说明
tenantIdString 企业id,可通过context.tenantId获取
paramMap 打印信息
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap响应数据
errorMessageString成功失败信息

Zk.openapi-调用openAPI接口执行相关API

1、执行openAPI接口-invoke

执行openAPI:Zk.openapi.invoke(String url, String openid, String appkey, Map data)
参数实例:
Map data=[     "org_id":"ORG001",     "org_name":"南京掌控网络",     "org_sequence":002   ] Zk.openapi.invoke("https://openapi.waiqin365.com/api/organization/v1/addOrganization","8477409196644057335","hgmK95m5819uZjSPxH",data)
参数说明:
参数类型说明
urlStringopenAPI url
openidString企业授权开放接口OPENID
appkeyString企业授权KEY
dataMap数据
返回信息:
参数类型说明
errorBooleantrue:执行失败,false:执行成功
dataMap响应数据
errorMessageString成功失败信息

UIEvent-返回UIEvent

1、生成UIEvent

执行UIEvent:UIEvent uiEvent = UIEvent.builder()
参考实例:
UIEvent uiEvent = UIEvent.builder()      .action("list")      .openType("systemTab")      .objectKey("object_WXaUG__c")      .dataId(9034304382644438018)      .url("")      .data(null)      .title("测试对象")      .height(10)      .width(10)      .content("弹出框提示内容")      .build() return uiEvent
参数说明:
参数类型说明
actionString操作方式(必填)list-跳到apaas对象的列表页,系统会自动生成URLdetail-跳到apaas详情页,系统会自动生成URLadd-跳到指定对象的新建页面,系统会自动生成URLconfirm-提示信息弹窗,系统不会根据这个参数生成url,需要手动赋值url属性,这个参数需要配合openType中的dialog使用(弹出框!弹出框!),跳转到url指定的弹出框url-跳转url页面,手动向url属性赋值
openTypeString打开页面方式(必填)systemTab 外勤365内部页签dialog 弹窗browserTab 新开浏览器页签进行展示
objectKeyString对象key,如果跳转到对象详情页则传值
dataIdString指定对象的数据id
urlString跳转url,跳转到指定url,可以不传值
dataObject跳转过程中需要传递的参数(如果是自定义参数,传递的参数最好是String类型,否则可能存在丢失精度的问题。例:前端传递long型数据,后端用Object接收,返回给前端就会造成精度丢失)
titleStringtitle
heightint宽度
widthint高度
contentString弹出框提示内容
2023-12-08
0