From 3e6e5a5300c8b41af08f51a3932b230f9fcb9935 Mon Sep 17 00:00:00 2001 From: feige <791364011@qq.com> Date: 星期五, 08 八月 2025 13:40:02 +0800 Subject: [PATCH] 增加了相关代码 --- archiveManager/src/main/java/com/ruoyi/domain/Archiverecordstouser.java | 20 ++++++ archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java | 11 +++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiverecordstouserController.java | 27 ++++++++ archiveManager/src/main/java/com/ruoyi/service/IArchiverecordstouserService.java | 7 ++ archiveManager/src/main/java/com/ruoyi/service/impl/ArchiverecordstouserServiceImpl.java | 46 +++++++++++++++ archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveRecordsServiceImpl.java | 30 +++++---- ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java | 2 7 files changed, 126 insertions(+), 17 deletions(-) diff --git a/archiveManager/src/main/java/com/ruoyi/domain/Archiverecordstouser.java b/archiveManager/src/main/java/com/ruoyi/domain/Archiverecordstouser.java index ed7388a..6fc130d 100644 --- a/archiveManager/src/main/java/com/ruoyi/domain/Archiverecordstouser.java +++ b/archiveManager/src/main/java/com/ruoyi/domain/Archiverecordstouser.java @@ -41,7 +41,27 @@ } @TableField(exist = false) private SysUser sysUser; + @TableField(exist = false) + private String userName; + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public String getPhonenumber() { + return phonenumber; + } + + public void setPhonenumber(String phonenumber) { + this.phonenumber = phonenumber; + } + + @TableField(exist = false) + private String phonenumber; public void setId(Long id) { this.id = id; diff --git a/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java index 429c7be..d26677a 100644 --- a/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java +++ b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java @@ -12,8 +12,15 @@ public interface ArchiveRecordsMapper extends BaseMapper<ArchiveRecords> { - @Select("SELECT c.*,a.archive_records_id,b.user_id FROM archiverecordstouser a inner join sys_user b ON a.user_id = b.user_id right join archive_records c on c.record_id=a.archive_records_id ${ew.customSqlSegment} ") - Page<ArchiveRecords> selectJoinUserPage(Page<ArchiveRecords> page, @Param("ew") LambdaQueryWrapper<ArchiveRecords> queryWrapper); + @Select({ + "<script>", + "SELECT c.*,a.archive_records_id,b.user_id FROM archiverecordstouser a inner join sys_user b ON a.user_id = b.user_id right join archive_records c on c.record_id=a.archive_records_id ${ew.customSqlSegment} ", + "<if test= \"userId !=1 \">", + "order by a.user_id desc", + "</if>", + "</script>" + }) + Page<ArchiveRecords> selectJoinUserPage(Page<ArchiveRecords> page, @Param("userId") Long userId, @Param("ew") LambdaQueryWrapper<ArchiveRecords> queryWrapper); @Select("select max(id) from archive_records") Long findMaxId(); diff --git a/archiveManager/src/main/java/com/ruoyi/service/IArchiverecordstouserService.java b/archiveManager/src/main/java/com/ruoyi/service/IArchiverecordstouserService.java index b46923e..ea60c0d 100644 --- a/archiveManager/src/main/java/com/ruoyi/service/IArchiverecordstouserService.java +++ b/archiveManager/src/main/java/com/ruoyi/service/IArchiverecordstouserService.java @@ -64,4 +64,11 @@ * @return 缁撴灉 */ public int deleteArchiverecordstouserById(Long id); + + + + public int deleteArchiverecordstouserByRecordId(String recordId, Long userId); + + + public int queryArchiverecordstouserByRecordId(String recordId, Long userId); } diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveRecordsServiceImpl.java b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveRecordsServiceImpl.java index 22f5ae5..4036f57 100644 --- a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveRecordsServiceImpl.java +++ b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveRecordsServiceImpl.java @@ -37,7 +37,7 @@ - private LambdaQueryWrapper<ArchiveRecords> buildCondition(ArchiveRecords archiveRecords){ + private LambdaQueryWrapper<ArchiveRecords> buildCondition(ArchiveRecords archiveRecords, Long userId){ LambdaQueryWrapper<ArchiveRecords> lqw = new LambdaQueryWrapper<>(); lqw.like(!StringUtils.isEmpty(archiveRecords.getProjectName()), ArchiveRecords::getProjectName, archiveRecords.getProjectName()) @@ -53,9 +53,9 @@ // .eq(zfProperty.getHappenTime()!=null,ZfProperty::getHappenTime,zfProperty.getHappenTime()) // .between(zfProperty.getHappenStartTime() != null && zfProperty.getHappenEndTime() != null, ZfProperty::getHappenTime, zfProperty.getHappenStartTime(), zfProperty.getHappenEndTime()); // lqw.orderByDesc(ZfProperty::getCreateTime); - // lqw.orderByDesc(ArchiveRecords::isOwnData); - // lqw.orderByDesc(ArchiveRecords::getCreateTime); - lqw.orderByDesc(ArchiveRecords::getCreateTime); + if(userId==1) + + lqw.orderByDesc(ArchiveRecords::getCreateTime); System.out.println("ssssssssssssddd0000000000000000"); return lqw; @@ -69,8 +69,10 @@ @Override public AjaxResult selectDataList(ArchiveRecords archiveRecords, Integer pageNum, Integer pageSize) { - - LambdaQueryWrapper<ArchiveRecords> lqw = buildCondition(archiveRecords); + //鎷垮埌褰撳墠鐢ㄦ埛鐨刬d + // 鑾峰彇褰撳墠鐢ㄦ埛ID + Long userid = SecurityUtils.getUserId(); + LambdaQueryWrapper<ArchiveRecords> lqw = buildCondition(archiveRecords, userid); System.out.println("-------------"); System.out.println(pageNum); @@ -81,7 +83,7 @@ Page<ArchiveRecords> page = new Page<>(pageNum, pageSize); // 浣跨敤鑷畾涔夌殑鍒嗛〉鏌ヨ鏂规硶锛屽厛杩炴帴鍐嶅垎椤� - Page<ArchiveRecords> pageResult = this.baseMapper.selectJoinUserPage(page, lqw); + Page<ArchiveRecords> pageResult = this.baseMapper.selectJoinUserPage(page, userid, lqw); //selectJoinUserPage(page, lqw); @@ -92,9 +94,7 @@ // List<ArchiveRecords> beanRecords = list(lqw); // log.info("浠庢暟鎹簱涓煡鍒扮殑涓�:{}", beanRecords); // return markOwnData(familyId, fatherFaId, motherFaId, beanRecords); - //鎷垮埌褰撳墠鐢ㄦ埛鐨刬d - // 鑾峰彇褰撳墠鐢ㄦ埛ID - Long userid = SecurityUtils.getUserId(); + beanRecords.forEach(record ->{ if(record.isArchiveRecordsId()!=null&&record.getUserId()==userid) @@ -104,8 +104,9 @@ else record.setOwnData(false); }); - - // Collections.sort(beanRecords, Comparator.comparing(ArchiveRecords::isOwnData)); + //涓嶆槸绠$悊鍛樿繘琛屾帓搴� + // if(userid != 1) + // Collections.sort(beanRecords, Comparator.comparing(ArchiveRecords::isOwnData)); HashMap<String, Object> data = MapUtils.getResult(pageResult, beanRecords); // System.out.println(data.get("data")); // System.out.println(data.get("pageNum")); @@ -143,7 +144,10 @@ @Override public List<ArchiveRecords> selectArchiveRecordsList(ArchiveRecords archiveRecords) { - LambdaQueryWrapper<ArchiveRecords> lambdaQueryWrapper = buildCondition(archiveRecords); + //鎷垮埌褰撳墠鐢ㄦ埛鐨刬d + // 鑾峰彇褰撳墠鐢ㄦ埛ID + Long userid = SecurityUtils.getUserId(); + LambdaQueryWrapper<ArchiveRecords> lambdaQueryWrapper = buildCondition(archiveRecords,userid); List<ArchiveRecords> beanRecords = list(lambdaQueryWrapper); return beanRecords; diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiverecordstouserServiceImpl.java b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiverecordstouserServiceImpl.java index d7b7df3..49a9bac 100644 --- a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiverecordstouserServiceImpl.java +++ b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiverecordstouserServiceImpl.java @@ -3,6 +3,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.stream.Collectors; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -16,6 +17,7 @@ import com.ruoyi.mapper.ArchiverecordstouserMapper; import com.ruoyi.service.IArchiverecordstouserService; import com.ruoyi.system.mapper.SysUserMapper; +import com.ruoyi.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -31,17 +33,34 @@ { @Autowired private SysUserMapper userMapper; + @Autowired + private ISysUserService iSysUserService; private LambdaQueryWrapper<Archiverecordstouser> buildCondition(Archiverecordstouser archiverecordstouser) { LambdaQueryWrapper<Archiverecordstouser> lqw = new LambdaQueryWrapper<>(); lqw.eq(!StringUtils.isEmpty(archiverecordstouser.getArchiveRecordsId()),Archiverecordstouser::getArchiveRecordsId, archiverecordstouser.getArchiveRecordsId()); + //淇濆瓨鐩稿叧鐢ㄦ埛鐨剈serId + List<Long> arr = new ArrayList<>(); + List<SysUser> all = new ArrayList<>(); + + if(!StringUtils.isEmpty(archiverecordstouser.getUserName())||!StringUtils.isEmpty(archiverecordstouser.getPhonenumber())) + { + //鏍规嵁鐢ㄦ埛鍚嶆煡璇㈢敤鎴风浉鍏砳d + SysUser sysUser = new SysUser(); + sysUser.setUserName(archiverecordstouser.getUserName()); + sysUser.setPhonenumber(archiverecordstouser.getPhonenumber()); + all = userMapper.selectUserList(sysUser); + } + arr = all.stream().map(SysUser::getUserId).collect(Collectors.toList()); + lqw.in(!all.isEmpty(), Archiverecordstouser::getUserId, arr); + // System.out.println(archiverecordstouser.getSysUser().getUserName()+"098643"); return lqw; } @Override public int insertRecordToUsers(String recordId, Long[] userIds) { - // 鏂板鐢ㄦ埛涓庤鑹茬鐞� + // 鏂板鐢ㄦ埛涓庢鍗疯褰� List<Archiverecordstouser> list = new ArrayList<Archiverecordstouser>(); for (Long userId : userIds) { @@ -157,4 +176,29 @@ { return 0; } + + @Override + public int deleteArchiverecordstouserByRecordId(String recordId, Long userId) { + + LambdaQueryWrapper<Archiverecordstouser> lqw = new LambdaQueryWrapper<>(); + lqw.eq(!StringUtils.isEmpty(recordId), Archiverecordstouser::getArchiveRecordsId, recordId) + .eq(userId!=null, Archiverecordstouser::getUserId, userId); + if(this.remove(lqw)) + return 1; + else + return 0; + } + + @Override + public int queryArchiverecordstouserByRecordId(String recordId, Long userId) { + LambdaQueryWrapper<Archiverecordstouser> lqw = new LambdaQueryWrapper<>(); + lqw.eq(!StringUtils.isEmpty(recordId), Archiverecordstouser::getArchiveRecordsId, recordId) + .eq(userId!=null, Archiverecordstouser::getUserId, userId); + + List<Archiverecordstouser> lis = list(lqw); + if(!lis.isEmpty()) + return 1; + else + return 0; + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiverecordstouserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiverecordstouserController.java index 285a545..2ab71be 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiverecordstouserController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiverecordstouserController.java @@ -47,7 +47,15 @@ @PutMapping("/authUserToArchive") public AjaxResult selectRecordToUser(String recordId, Long[] userIds) { - return toAjax(archiverecordstouserService.insertRecordToUsers(recordId, userIds)); + for(Long userId:userIds) + { + if(archiverecordstouserService.queryArchiverecordstouserByRecordId(recordId, userId)==1) + { + return toAjax(0); + } + } + archiverecordstouserService.insertRecordToUsers(recordId, userIds); + return toAjax(200); } /** * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛� @@ -117,4 +125,21 @@ { return toAjax(archiverecordstouserService.deleteArchiverecordstouserByIds(ids)); } + /** + * 鏍规嵁鐢ㄦ埛id鍜宺ecordId杩涜鍒犻櫎 + */ + @PreAuthorize("@ss.hasPermi('system:archiverecordstouser:remove')") + @DeleteMapping("/deleteByRidUid") + public AjaxResult removeByRecordIdAndUserId(String recordId, Long userId) + { + return toAjax(archiverecordstouserService.deleteArchiverecordstouserByRecordId(recordId, userId)); + } + + + @PreAuthorize("@ss.hasPermi('system:archiverecordstouser:query')") + @GetMapping("/getByRidUid") + public AjaxResult getByRecordIdAndUserId(String recordId, Long userId) + { + return toAjax(archiverecordstouserService.queryArchiverecordstouserByRecordId(recordId, userId)); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java index acd5ba6..ca90495 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java @@ -92,6 +92,8 @@ /** * 淇敼銆愯濉啓鍔熻兘鍚嶇О銆� + * + * system:materials:edit */ @PreAuthorize("@ss.hasPermi('system:materials:edit')") @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.UPDATE) -- Gitblit v1.9.1