文档库--推送

This commit is contained in:
zhn
2022-03-04 16:36:36 +08:00
parent d0669d917e
commit 00988b1480
7 changed files with 94 additions and 16 deletions
@@ -57,6 +57,8 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
*/
IPage<SysUser> getUserByDepIds(Page page, @Param("departIds") List<String> departIds, @Param("username") String username);
List<SysUser> getUserListByDepIds(@Param("departIds") List<String> departIds);
/**
* 根据角色Id查询用户信息
* @param page
@@ -57,6 +57,18 @@
</if>
</select>
<select id="getUserListByDepIds" resultType="com.jero.modules.system.entity.SysUser">
select * from sys_user where del_flag = 0
<if test="departIds!=null and departIds.size()>0">
and id in (select dru.user_id from sys_depart_role dr, sys_depart_role_user dru where dr.id = dru.drole_id and dr.depart_id in
<foreach collection="departIds" index="index" item="id" open="(" separator="," close=")">
#{id}
</foreach>
)
</if>
</select>
<!-- 根据角色Id查询 -->
<select id="getUserByRoleId" resultType="com.jero.modules.system.entity.SysUser">
select * from sys_user where del_flag = 0 and id in (select user_id from sys_user_role where role_id=#{roleId})
@@ -59,17 +59,17 @@ public interface ISysUserService extends IService<SysUser> {
* @return
*/
public boolean deleteBatchUsers(String userIds);
public SysUser getUserByName(String username);
/**
* 添加用户和用户角色关系
* @param user
* @param roles
*/
public void addUserWithRole(SysUser user,String roles);
/**
* 修改用户和用户角色关系
* @param user
@@ -83,7 +83,7 @@ public interface ISysUserService extends IService<SysUser> {
* @return
*/
public List<String> getRole(String username);
/**
* 查询用户信息包括 部门信息
* @param username
@@ -105,6 +105,13 @@ public interface ISysUserService extends IService<SysUser> {
*/
public IPage<SysUser> getUserByDepIds(Page<SysUser> page, List<String> departIds, String username);
/**
* 部门下用户
* @param departIds
* @return
*/
public List<SysUser> getUserListByDepIds(List<String> departIds);
/**
* 根据 userIds查询,查询用户所属部门的名称(多个部门名逗号隔开)
* @param
@@ -154,14 +161,14 @@ public interface ISysUserService extends IService<SysUser> {
* @return 权限集合
*/
Set<String> getUserPermissionsSet(String username);
/**
* 根据用户名设置部门ID
* @param username
* @param orgCode
*/
void updateUserDepart(String username,String orgCode);
/**
* 根据手机号获取用户名和密码
*/
@@ -187,7 +194,7 @@ public interface ISysUserService extends IService<SysUser> {
* @param departs
*/
void editUserWithDepart(SysUser user, String departs);
/**
* 校验用户是否有效
* @param sysUser
@@ -41,7 +41,7 @@ import java.util.stream.Collectors;
@Service
@Slf4j
public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements ISysUserService {
@Autowired
private SysUserMapper userMapper;
@Autowired
@@ -116,8 +116,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
public SysUser getUserByName(String username) {
return userMapper.getUserByName(username);
}
@Override
@Transactional
public void addUserWithRole(SysUser user, String roles) {
@@ -152,7 +152,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
public List<String> getRole(String username) {
return sysUserRoleMapper.getRoleByUserName(username);
}
/**
* 通过用户名获取用户角色集合
* @param username 用户名
@@ -196,7 +196,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
// SysUser user = userMapper.getUserByName(username);
// info.setSysUserCode(user.getUsername());
// info.setSysUserName(user.getRealname());
LoginUser user = sysBaseAPI.getUserByName(username);
if(user!=null) {
@@ -204,7 +204,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
info.setSysUserName(user.getRealname());
info.setSysOrgCode(user.getOrgCode());
}
//多部门支持in查询
List<SysDepart> list = sysDepartMapper.queryUserDeparts(user.getId());
List<String> sysMultiOrgCode = new ArrayList<String>();
@@ -220,7 +220,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
}
}
info.setSysMultiOrgCode(sysMultiOrgCode);
return info;
}
@@ -235,6 +235,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
return userMapper.getUserByDepIds(page, departIds,username);
}
@Override
public List<SysUser> getUserListByDepIds(List<String> departIds) {
return userMapper.getUserListByDepIds(departIds);
}
@Override
public Map<String, String> getDepNamesByUserIds(List<String> userIds) {
List<SysUserDepVo> list = this.baseMapper.getDepNamesByUserIds(userIds);
@@ -443,7 +443,10 @@ public class BussDocumentLibraryEOController extends JeroController<BussDocument
@ApiOperation(value = "推送")
@GetMapping(value = "/pullMessage")
public Result<?> pullMessage(String ids) {
public Result<?> pullMessage(String departIds,String userIds,String documentIds) {
bussDocumentLibraryEOService.pullMessage(departIds,userIds,documentIds);
return Result.OK("推送成功");
}
@@ -171,4 +171,6 @@ public interface IBussDocumentLibraryEOService extends IService<BussDocumentLibr
*/
List<Map<String, Object>> getHeaderOrConditionForOcr(String flag, String cut);
String pullMessage(String departIds,String ids,String documentIds);
}
@@ -12,6 +12,7 @@ import com.jero.common.constant.enums.MessageTypeEnum;
import com.jero.common.constant.enums.ModuleEnum;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.vo.LoginUser;
import com.jero.generater.modules.online.cgform.entity.OnlCgformField;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
@@ -34,6 +35,8 @@ import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.modules.system.service.ISysAnnouncementService;
import com.jero.modules.system.service.ISysUserService;
import com.jero.modules.system.service.impl.SysBaseApiImpl;
import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
import com.jero.modules.tag.entity.OnlCgformArea;
@@ -113,6 +116,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
private DomainUserRelService domainUserRelService;
@Autowired
private SysCategoryServiceImpl sysCategoryService;
@Autowired
private ISysBaseAPI sysBaseAPI;
@Autowired
private ISysUserService sysUserService;
@Value(value = "${jero.path.upload}")
private String uploadpath;
@@ -2085,4 +2092,44 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
}
return list;
}
/**
* 推送
* @param userIds
* @param documentIds
* @return
*/
@Override
public String pullMessage(String departIds,String userIds,String documentIds) {
departIds ="c6d7cb4deeac411cb3384b1b31278596";
// if(StringUtils.isBlank(documentIds)){
// return "请选择文档";
// }
List<String> userIdList = new ArrayList<>();
if(StringUtils.isNotBlank(departIds)){
//查询部门下的人员
List<SysUser> userList = sysUserService.getUserListByDepIds(Arrays.asList(departIds.split(",")));
if(userList.size() != 0){
userIdList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
}
}
userIdList.addAll(Arrays.asList(userIds.split(",")));
//查询文档
LambdaQueryWrapper<BussDocumentLibraryEO> lambdaQueryWrapper = new LambdaQueryWrapper();
lambdaQueryWrapper.in(BussDocumentLibraryEO::getId,Arrays.asList(documentIds.split(",")));
List<Map<String, Object>> mapList = this.listMaps(lambdaQueryWrapper);
List<String> serialNumberList = new ArrayList<>();
for (Map<String, Object> map : mapList) {
serialNumberList.add((String) map.get("serial_number"));
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String content = sysUser.getRealname()+"向内推送了"+StringUtils.join(serialNumberList,",")+",请注意查看。";
String contentInfo = sysUser.getRealname()+"向内推送了"+StringUtils.join(serialNumberList,",")+",请注意查看。";
//封装消息的实体类
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
return "推送成功" ;
}
}