package com.engine.common.service; import weaver.hrm.User; import java.util.List; import java.util.Map; public interface HrmCommonService { /** * 是否存在下属 * */ public boolean isManager(int userid); /** * 获取直接下属 * */ public String getUnderling(int userid); /** * 获取直接下属 * */ public String getUnderling(int userid, String keyword); /** * 获取所有下属 * */ public String getAllUnderling(int userid); /** * 获取所有下属 * */ public String getAllUnderling(int userid, String keyword); /** * 获取用户角色信息roleIds * */ public String getRoleIds(int userid); /** * 获取用户角色信息 * */ public List getRoleInfo(int userid); /** * 获取用户角色信息 * */ public List getRoleInfo(String userid); /** * 获取角色成员信息 * */ public String getRoleMemberIds(int roleid, String rolelevel); /** * 获取角色成员信息 * */ public String getRoleMemberIds(String roleid, String rolelevel); /** * 获取角色成员信息 * */ public String getRoleMemberIds(int roleid, String rolelevel,Map params); /** * 获取角色成员信息 * */ public String getRoleMemberIds(String roleid, String rolelevel,Map params); /** * 获取角色成员信息 * */ public String getRoleSql(String userid); /** * 获取角色成员SQL * */ public String getHrmRoleMemeberSqlByRoleIds(String roleids); /** * 获取角色成员SQL * */ public String getHrmRoleMemeberSqlByRoleIds4Cus(String roleids); /** * 获取角色成员信息 * */ public List getRoleMembers(String roleid, String rolelevel); /** * 获取角色成员信息 * */ public List getRoleMembers(int roleid, String rolelevel); /** * 获取角色成员信息 * */ public List getRoleMembers(String roleid, String rolelevel,Map params); /** * 获取角色成员信息 * */ public List getRoleMembers(int roleid, String rolelevel,Map params); /** * 返回查询hrmRoleMembers表的查询条件,按人员ID * */ public String getHrmRoleMembers_queryConditionSql(int uid, String hrmRoleMembers_alias); /** * 获取用户角色最大级别 * */ public int getMaxRoleLevel(int userid, String rightStr); /** * SQL拼接 for项目&资产 */ public String getCptRoleMembersSql(String roleid,String rolelevel); /** * SQL拼接 for文档 */ public String getDocRoleMembersSql(int roleid,String rolelevel); /** * 常用组sql */ public String getHrmGroupSql(String userid); /** * 获取人员所属考勤组的节假日设置 * @param resourceId * @param beginDate * @param endDate * @return */ public Map getHolidayInfo(String resourceId,String beginDate,String endDate); /** * 判断人员是否需要考勤 * @param user user对象 * @return 开启考勤:1 未开启: 0 */ public String isneedsign(User user); /** * 根据条件获取人员迟到明细数据 * @param fromDate 查询开始日期 * @param toDate 查询结束日期 * @param subCompanyId 分部ID * @param departmentId 部门ID * @param resourceId 人员ID * @return 迟到日期集合 */ public List getBeLateDaysList(String fromDate, String toDate, String subCompanyId, String departmentId, String resourceId); /** * 根据条件获取人员矿工明细数据 * @param fromDate 查询开始日期 * @param toDate 查询结束日期 * @param subCompanyId 分部ID * @param departmentId 部门ID * @param resourceId 人员ID * @return 矿工日期集合 */ public List getAbsenteeismDaysList(String fromDate, String toDate, String subCompanyId, String departmentId, String resourceId); /** * 判断当前日期是否是工作日 * @param userId 人员id * @param currentDate 当前日期 * @return true/false */ public boolean isWorkDay(String userId,String currentDate); /** * 汉字转换位汉语拼音首字母,英文字符不变,特殊字符丢失 支持多音字,生成方式如(长沙市长:cssc,zssz,zssc,cssz) * * @param chines 汉字 * @return 拼音 */ public String converterToFirstSpell(String chines); /** * 汉字转换位汉语全拼,英文字符不变,特殊字符丢失 * 支持多音字,生成方式如(重当参:zhongdangcen,zhongdangcan,chongdangcen * ,chongdangshen,zhongdangshen,chongdangcan) * * @param chines 汉字 * @return 拼音 */ public String converterToSpell(String chines); /** * 汉字转换快速搜索 * @param chinese * @return */ public String generateQuickSearchStr(String chinese); /** * 获取管理分权sql过滤条件 * @param rightStr * @param tableAlias * @param user * @return */ public String getManageDetachSql(String rightStr, String tableAlias,User user); /** * 获取管理分权sql过滤条件 * @param rightStr * @param tableAlias * @param userId * @return */ public String getManageDetachSql(String rightStr, String tableAlias,int userId); /** * 获取是否开启管理分权开关 * @param params * @param user * @return */ public Map getManageDetachEnable(Map params,User user); public String getHrmGroupSql(String userid, String groupName); /** * 获取人员数据 * @param params * @param user * @return */ public Map getHrmResource4eTeams(Map params, User user); /** * 获取人员所有上级分部 * @param params * @param user * @return */ public Map getSubCompanyId4eTeams(Map params, User user); /** * 校验账号密码是否正确 * @param params * @return */ public Map checkUser(Map params); /** * 根据userid获取角色信息 * @param userid * @return */ Map getRoleInfoByUserID(String userid); List> getUserIdByEmail(List emails); List getDetachSubcomList(String moudleType, String rightStr, User user); /** * 员工离职后自动解绑发票邮箱并注销该员工在发票云的信息 * @param userid * @return */ String unbindInvoiceCloud(int userid); }