作者:钟剑华 历史版本:1 更新时间:2024-11-20 15:41
适用版本:所有版本;
完整类名:com.lc.ibps.platform.script.script.CommonScript
适用哪些服务?
- 通过business
调用方式例子
// 获取一个uid
cscript.getUuid();
// 获取当前登录用户名
cscript.getAccount();
//获取当前登录用户ID。
cscript.getCurrentUserId();
常用方法
/**
* 获取当前登录用户名 。<br>
*
* <pre>
* 脚本中使用方法:
* cscript.getAccount();
* </pre>
*
* @return
*/
public String getAccount();
/**
* 获取当前登录用户ID。<br>
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentUserId();
* </pre>
*
* @return
*/
public String getCurrentUserId();
/**
* 获取当前登录用户组织名称 。<br>
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentName();
* </pre>
*
* @return
*/
public String getCurrentName();
/**
* 获取当前系统的用户。
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentUser();
* </pre>
*
* @return 用户对象。
*/
public User getCurrentUser();
/**
* 获取当前用户所在的组织名
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentOrgName();
* </pre>
*
* @return
*/
public String getCurrentOrgName();
/**
* 获取当前组织ID
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentOrgId();
* </pre>
*
* @return
*/
public String getCurrentOrgId();
/**
* 获取当前用户所在的主岗位名称
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentPositionName();
* </pre>
*
* @return
*/
public String getCurrentPositionName();
/**
* 获取当前用户所在的主岗位ID
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentPositionId();
* </pre>
*
* @return
*/
public String getCurrentPositionId();
/**
* 获取当前用户员工扩展属性值
*
* @param attrKey 具体的扩展属性key
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentEmployeeAttrVal("securityLevel");
* </pre>
*
* @return
* @author huangdq
* @date 2020-09-04
*/
public String getCurrentEmployeeAttrVal(String attrKey);
/**
* 获取员工扩展属性值
*
* @param id
* @param attrKey
*
* <pre>
* 脚本中使用方法:
* cscript.getEmployeeAttrVal(userId, "securityLevel");
* </pre>
*
* @return
* @author huangdq
* @date 2020-09-04
*/
public String getEmployeeAttrVal(String id, String attrKey);
/**
* 获取扩展属性值
*
* @param id
* @param partyType employee-员工,org-机构,position-岗位,role-角色
* @param attrKey 具体的扩展属性key
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentAttrVal("employee", "securityLevel");
* </pre>
*
* @return
* @author huangdq
* @date 2020-09-04
*/
public String getAttrVal(String id, String partyType, String attrKey);
/* 系统脚本 */
/**
* 获取系统当前日期,默认格式2015-12-21
*
* @return
*/
public String getCurDate();
/**
* 获取当前日期时间,按format格式输出
*
* @param format
* @return
*/
public String getCurDate(String format);
/**
* 获取当前日期时间,按format格式输出
*
* @param
* @return
*/
public String getCurDateTime();
/* 工具脚本 */
/**
* 比较两个字符串是否相等,不区分大小写,如果两个均为空则也认为相等。
*
* @param str1
* @param str2
* @return
*/
public boolean equalsIgnoreCase(String str1, String str2);
/**
* 比较两个字符串是否相等,如果两个均为空则也认为相等。
*
* @param str1
* @param str2
* @return
*/
public boolean equals(String str1, String str2);
/**
* 将字符串转化为short类型(默认值0)
*
* @param str 字符串值
* @return
*/
public short parseShort(String str);
/**
* 将字符串转化为short类型
*
* @param str 字符串值
* @param defaultValue 自定义默认
* @return 返回转化的值
*/
public short parseShort(String str, short defaultValue);
/**
* 将字符串转化为int类型(默认值0)
*
* @param str 字符串值
* @return
*/
public int parseInt(String str);
/**
* 将字符串转化为int类型
*
* @param str 字符串值
* @param defaultValue 自定义默认
* @return 返回转化的值
*/
public int parseInt(String str, int defaultValue);
/**
* 将字符串转化为long类型
*
* @param str 字符串值
* @return 返回转化的值
*/
public long parseLong(String str);
/**
* 将字符串转化为long类型
*
* @param str 字符串值
* @param defaultValue 自定义默认
* @return 返回转化的值
*/
public long parseLong(String str, long defaultValue);
/**
* 将字符串转化为float类型
*
* @param str 字符串值
* @return 返回转化的值
*/
public float parseFloat(String str);
/**
* 将字符串转化为float类型
*
* @param str 字符串值
* @param defaultValue 自定义默认
* @return 返回转化的值
*/
public float parseFloat(String str, float defaultValue);
/**
* 将字符串转化为double类型
*
* @param str 字符串值
* @return 返回转化的值
*/
public double parseDouble(String str);
/**
* 将字符串转化为double类型
*
* @param str 字符串值
* @param defaultValue 自定义默认
* @return 返回转化的值
*/
public double parseDouble(String str, double defaultValue);
/**
* 将字符串转化为boolean类型(默认值false)
*
* @param str 字符串值(如无值则返回缺省值, 如值为数字1,则返回true,不是数字1的)
* @return 返回转化的值
*/
public boolean parseBoolean(String str);
/**
* 将字符串转化为long类型
*
* @param str 字符串值 (如无值则返回缺省值, 如值为数字1,则返回true,不是数字1的)
* @param defaultValue 自定义默认
* @return 返回转化的值
*/
public Boolean parseBoolean(String str, Boolean defaultValue);
/**
* 将obj类型转换为string
*
* @param obj 如果是null返回空字符串
* @return
*/
public String parseString(Object obj);
/**
* 将obj类型转换为string
*
* @param obj 如果是null返回空字符串
* @return
*/
public String parseString(Object obj, String style);
/**
* 转化日期格式 , 如无值则返回缺省值,如有值则返回 yyyy-MM-dd HH:mm:ss 格式的日期,或者自定义格式的日期
*
* @param str
* @param style
* @return
* @throws Exception
*/
public Date parseDate(String str, String style) throws Exception;
/**
* 转化日期格式 , 如无值则返回缺省值,如有值则返回 yyyy-MM-dd HH:mm:ss 格式的日期,或者自定义格式的日期
*
* @param str
* @param style
* @return
* @throws Exception
*/
public Date parseDate(String str, Date defaultValue, String style) throws Exception;
/**
* 2个日期比较
*
* @param date1 日期1
* @param date2 日期2
* @return 返回 0 表示时间日期相同 返回 1 表示日期1>日期2 返回 -1 表示日期1<日期2 返回-10 表示日期1为null 返回 10 表示日期2为null
*/
public int compareTo(Date date1, Date date2);
/**
* 2个字符串比较
*
* @param str1
* @param str2
* @return 返回 0 表示字符串相同 返回 1 表示字符串1>字符串2 返回 -1 表示字符串1<字符串2 返回-10 表示字符串1为"" 或null 返回 10 表示字符串2为""或null
*/
public int compareTo(String str1, String str2);
/**
* 判断字符串是否为空
*
* @param str
* @return
*/
public boolean isEmpty(String str);
/**
* 判断对象是否为空(Map,Collection,String,Array,Long是否为空)
*
* @param obj
* @return
*/
public boolean isEmpty(Object obj);
/**
* <pre>
* 脚本获取当前人用户信息
* 通过在【上下级管理】维护的下属信息
* cscript.currentUser()
* </pre>
*
* @return Set<BpmIdentity>
*/
public Set<BpmIdentity> currentUser();
/**
* <pre>
* 脚本获取指定Id的用户信息
* 通过在【上下级管理】维护的下属信息
* cscript.user(uid)
* </pre>
*
* @return Set<BpmIdentity>
*/
public Set<BpmIdentity> user(String uid);
/* 组织架构脚本 */
/**
* <pre>
* 脚本获取当前人的下级用户信息
* 通过在【上下级管理】维护的下属信息
* cscript.findCurrentUserUnders()
* </pre>
*
* @return Set<BpmIdentity>
*/
public Set<BpmIdentity> findCurrentUserUnders();
/**
* <pre>
* 脚本获取当前人的上级用户信息
* 通过在【上下级管理】维护的上级信息
* cscript.findCurrentUserSuperoirs()
* </pre>
*
* @return Set<BpmIdentity>
*/
public Set<BpmIdentity> findCurrentUserSuperoirs();
/**
* <pre>
* 脚本获取当前人的上级用户ID
* 通过在【上下级管理】维护的上级信息
* cscript.findCurrentUserSuperoirIds()
* </pre>
*
* @return Set<BpmIdentity>
*/
public List<String> findCurrentUserSuperoirIds();
/**
* 脚本获取当前组织或者包含所有子组织ID 只能用于in 或者 not in 在。。之内和 不在。。之内 cscript.findCurrentUserOrgIds(true/false)
*
* @param descendants 是否递归查询子组织,true:查询包含所有子组织/false:只查询当前组织
* @return List<String> 组织ID列表
*/
public List<String> findCurrentUserOrgIds(boolean descendants);
/**
* 脚本获取当前组织的上一级或者所有上级ID cscript.findCurrentUserParentOrgIds(true/false)
*
* @param descendants 是否递归查询父组织,true:查询所有父组织/false:只查询直接父组织
* @return List<String>
*/
public List<String> findCurrentUserParentOrgIds(boolean descendants);
/**
* 脚本获取当前用户的所有角色ID 只能用于in 或者 not in 在。。之内和 不在。。之内 cscript.findCurrentUserRoleIds()
*
* @return List<String>
*/
public List<String> findCurrentUserRoleIds();
/**
* 脚本获取用户的岗位ID 只能用于in 或者 not in 在。。之内和 不在。。之内 cscript.findCurrentUserPositionIds(true/false)
*
* @param isMain 是否主岗位,true:是/false:所有岗位
* @return List<String>
*/
public List<String> findCurrentUserPositionIds(boolean isMain);
/**
* 脚本判断当前用户是否部门负责人 cscript.isOrgManager()
*
* @return boolean true/false
*/
public boolean isOrgManager();
/**
* 获取当前用户所在的最上层组织id
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentTopOrgId()
* </pre>
*
* @return String 如果是顶级组织返回的是"0"
*/
public String getCurrentTopOrgId();
/**
* 根据用户id和岗位姓名判断是否有岗位信息
*
* <pre>
* 脚本中使用方法:
* cscript.hasPosition("111","技术经理", true)
* </pre>
*
* @param userId 用户ID,当传空时,则默认获取当前用户Id
* @param posName 岗位名称
* @return
* @throws Exception
*/
public boolean hasPosition(String userId, String posName, boolean isMain);
/**
* 获取当前用户所在的主岗位ID
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrentTopOrg()
* </pre>
*
* @return
*/
public String getCurrentMainPositionId();
/**
* 根据组织ID获取组织机构名称
*
* <pre>
* 脚本中使用方法:
* cscript.getOrgName("222324232525252")
* </pre>
*
* @param orgId 组织ID
* @return
*/
public String getOrgNameById(String orgId);
/**
* 根据组织别名获取组织机构名称
*
* <pre>
* 脚本中使用方法:
* cscript.getOrgName("gzlc")
* </pre>
*
* @param orgAlias 组织别名
* @return
*/
public String getOrgName(String orgAlias);
/**
* WebService 调用
*
* <pre>
* InvokeCmd cmd = new DefaultInvokeCmd();
* cmd.setAddress(target);
* cmd.setOperatorNamespace("http://webservice.basics.jit.com/");
* cmd.setOperatorName("queryCardTypeTest");
* cmd.setJsonParam("{\"type\":\"0\"}");
* cmd.setSoapAction(true);
* </pre>
*
* @param cmd
* @return
*/
public InvokeResult webServiceInvoke(InvokeCmd cmd);
/**
cscript.getUuid()
* </pre>
*
* @return
*/
public String getUuid()
/**
* 获取一个uuidu
*
* <pre>
* 脚本中使用方法:
* cscript.uuid()
* </pre>
*
* @return
*/
public String uuid();
/**
* 输入参数数据处理脚本
*
* @param params
* @return
*/
public Map<String, Object> defaultResfulInput(Map<String, Object> params);
/**
* 输出参数数据处理脚本
*
* @param data
* @return
*/
public List<?> defaultResfulOutput(String data);
/**
* 根据页面传递的组织id进行过滤组织选择器
*
* <pre>
* 脚本中使用方法:
* cscript.queryByOrgIdInfo(组织ID)
* </pre>
*
* @param orgId
* @return
*/
public List<PartyEntityTreePo> queryByOrgIdInfo(String orgId);
/**
* 返回当前用户所属组织下的所有用户
*
* <pre>
* 脚本中使用方法:
* cscript.getCurrOrgEmps()
* </pre>
*/
public List<PartyEntityTreePo> getCurrOrgEmps();
/**
* 岗位范围脚本测试
*
* <pre>
* 脚本中使用方法:
* cscript.queryByPositionIdInfo()
* </pre>
*/
public List<PartyEntityTreePo> queryByPositionIdInfo();
/**
* 获取当前登录用户角色*
*
* <pre>
*脚本中使用方法:
*cscript.getCurrRole()
* </pre>
*
* @return
*/
public List<PartyRoleTree> getCurrRole();
/**
*
* 测试脚本方法 cscript.testScript("test")
*
* @param object
* @return
*/
public Object testScript(Object object);