package com.norteksoft.product.api; import java.util.HashMap; import java.util.List; import java.util.Set; import com.norteksoft.product.api.entity.Option; import com.norteksoft.product.api.entity.OptionGroup; import com.norteksoft.product.api.entity.User; import com.norteksoft.wf.base.enumeration.DataDictUseType; import com.norteksoft.wf.engine.client.DictQueryCondition; import com.norteksoft.product.api.entity.DataDictionary; public interface WorkflowDataDictService { /** * 根据给定的条件查询数据字典列表 * @param condition * @return 数据字典集合 */ public List<DataDictionary> queryDataDict(DictQueryCondition condition); /** * 根据数据字典查询人员列表 * @param dictIds 数据字典id的集合 * @return 用户登录名集合 */ public List<String> getCandidate(List<Long> dictIds); /** * 根据数据字典ID获取办理人登录名 * @param dictId 数据字典id * @return 用户登录名集合 */ public List<String> getCandidate(Long dictId); /** * 根据数据字典ID查询办理人登录名及用户名 * @param dictIds 数据字典id集合 * @return set集合,String[]{loginName,userName} * @deprecated * 替换为<code>HashMap getUserNames(List<Long> dictIds)</code> */ public Set<String[]> getCandidateNames(List<Long> dictIds); /** * 根据数据字典ID查询办理人登录名及用户名 * @param dictId 数据字典id * @return set集合,String[]{loginName,userName} * @deprecated * 替换为<code>HashMap getUserNames(Long dictId)</code> */ public Set<String[]> getCandidateNames(Long dictId); /** * 根据数据字典ID查询办理人登录名及用户名 * @param dictIds 数据字典id集合 * @return HashMap集合,key为loginName,value为userName */ public HashMap<String,String> getUserNames(List<Long> dictIds); /** * 根据数据字典ID查询办理人登录名及用户名 * @param dictId 数据字典id * @return HashMap集合,key为loginName,value为userName */ public HashMap<String,String> getUserNames(Long dictId); /** * 根据数据字典ID集合查询数据字典列表 * @param dictIds 数据字典id集合 * @return 数据字典集合 */ public List<DataDictionary> queryDataDict(List<Long> dictIds); /** * 根据数据字典ID查询数据字典 * @param dictId 数据字典id * @return 数据字典 */ public DataDictionary queryDataDict(Long dictId); /** * 根据用户登录名获得数据字典列表 * @param loginName 用户登录名 * @return */ public List<DataDictionary> queryDataDicts(String loginName); /** * 根据用户ID查询该用户的直属领导 * @param userId 用户id * @return 该用户的直属领导 */ public User getDirectLeader(Long userId); /** * 根据用户ID查询该用户的直属领导 * @param userId * @return */ @Deprecated public User getDirectLeader(Long userId,Long companyId); /** * 根据用户登录名查询该用户的直属领导 * @param loginName 用户登录名 * @return 该用户的直属领导 */ public User getDirectLeader(String loginName); /** * 根据用户登录名查询该用户的直属领导 * @param loginName 用户登录名 * @return 该用户的直属领导 */ public List<User> getDirectLeaders(String loginName); /** * 根据用户登录名查询该用户的直属领导 * @param loginName * @return */ @Deprecated public User getDirectLeader(String loginName,Long companyId); /** * 根据数据字典typNo和用途查询数据字典 * @param typeNo 数据字典类型编号 * @param dataDictUseType 用途 {@link com.norteksoft.wf.base.enumeration.DataDictUseType} * @return 数据字典集合 */ public List<DataDictionary> queryDataDict(String typeNo,DataDictUseType dataDictUseType); /** * 根据数据字典查询人员和备注信息 * @return 人员和备注信息集合 */ public List<String> getCandidateAddition(List<Long> dictIds); /** * 根据数据字典查询人员和备注信息 * @return 人员和备注信息集合 */ public List<String> getCandidateAddition(Long dictId); /** * 根据数据字典title得到人员登录名 * @param title 数据字典标题 * @return 人员登录名集合 */ public List<String> getCandidate(String title); /** * 查询所有选项组 * @return 选项组集合 */ @Deprecated public List<OptionGroup> getOptionGroups(); /** * 根据选项组编号查询选项组 * @param code 选项组编号 * @return 选项组 */ @Deprecated public OptionGroup getOptionGroupByCode(String code); /** * 根据选项组名称查询选项组 * @param code 选项组编号 * @return 选项组 */ @Deprecated public OptionGroup getOptionGroupByName(String name); /** * 根据选项组查询所有选项 * @param optionGroupId 选项组id * @return 选项集合 */ @Deprecated public List<Option> getOptionsByGroup(Long optionGroupId); /** * 根据选项组编号查询选项 * @param code 选项组编号 * @return 选项集合 */ @Deprecated public List<Option> getOptionsByGroupCode(String code); /** * 根据选项组名称查询选项 * @param name 选项名称 * @return 选项集合 */ @Deprecated public List<Option> getOptionsByGroupName(String name); }