From d99aad4524f70b62401c135f946bda5696c702cb Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 29 五月 2025 21:36:25 +0800
Subject: [PATCH] 小程序接口修改

---
 springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/ComplaintServiceImpl.java |  278 +++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 196 insertions(+), 82 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/ComplaintServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/ComplaintServiceImpl.java
index 2e3f188..93d7a21 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/ComplaintServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/ComplaintServiceImpl.java
@@ -4,6 +4,7 @@
 import cn.hutool.core.collection.CollUtil;
 import cn.idev.excel.EasyExcel;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -77,6 +78,7 @@
     private final HttpServletResponse response;
     private final IPartyMemberService partyMemberService;
     private final IdentityInformationService identityInformationService;
+    private final IDepartmentService departmentService;
     private final RedisUtils redisUtils;
 
     @Override
@@ -110,8 +112,7 @@
         SystemUser systemUser = identityInformationVO.getSystemUser();
         Integer identity = identityInformationVO.getIdentity();
         if (identity == 2) {
-            SystemUserLevel systemUserLevel = identityInformationVO.getSystemUserLevel();
-            accountLevel = systemUserLevel.getLevel();
+            accountLevel = systemUser.getAccountLevel();
             switch (accountLevel) {
                 case 1:
                     //市级
@@ -122,39 +123,57 @@
                 case 2:
                     //区县级
                     complaint.setCityCode(510400);
-                    complaint.setDistrictsCode(Integer.valueOf(systemUserLevel.getDistrictsCode()));
+                    complaint.setDistrictsCode(Integer.valueOf(systemUser.getDistrictsCode()));
                     complaint.setReportUserName(systemUser.getName());
                     complaint.setReportUserPhone(systemUser.getPhone());
+
+
+                    complaint.setSuperiorId(Long.valueOf(systemUser.getDistrictsCode()));
                     break;
                 case 3:
                     //街道
                     complaint.setCityCode(510400);
-                    complaint.setDistrictsCode(Integer.valueOf(systemUserLevel.getDistrictsCode()));
-                    complaint.setStreetId(Long.valueOf(systemUserLevel.getStreetId()));
+                    complaint.setDistrictsCode(Integer.valueOf(systemUser.getDistrictsCode()));
+                    complaint.setStreetId(Long.valueOf(systemUser.getStreetId()));
                     complaint.setReportUserName(systemUser.getName());
                     complaint.setReportUserPhone(systemUser.getPhone());
+
+                    complaint.setSuperiorId(Long.valueOf(systemUser.getStreetId()));
                     break;
                 case 4:
                     //社区
                     complaint.setCityCode(510400);
-                    complaint.setDistrictsCode(Integer.valueOf(systemUserLevel.getDistrictsCode()));
-                    complaint.setStreetId(Long.valueOf(systemUserLevel.getStreetId()));
-                    complaint.setCommunityId(systemUserLevel.getCommunityId());
+                    complaint.setDistrictsCode(Integer.valueOf(systemUser.getDistrictsCode()));
+                    complaint.setStreetId(Long.valueOf(systemUser.getStreetId()));
+                    complaint.setCommunityId(systemUser.getCommunityId());
                     complaint.setReportUserName(systemUser.getName());
                     complaint.setReportUserPhone(systemUser.getPhone());
+
+                    complaint.setSuperiorId(systemUser.getCommunityId());
                     break;
                 case 5:
                     //党员
                     complaint.setCityCode(510400);
-                    complaint.setDistrictsCode(Integer.valueOf(systemUserLevel.getDistrictsCode()));
-                    complaint.setStreetId(Long.valueOf(systemUserLevel.getStreetId()));
-                    complaint.setCommunityId(systemUserLevel.getCommunityId());
+                    complaint.setDistrictsCode(Integer.valueOf(systemUser.getDistrictsCode()));
+                    complaint.setStreetId(Long.valueOf(systemUser.getStreetId()));
+                    complaint.setCommunityId(systemUser.getCommunityId());
                     PartyMember partyMember = partyMemberService.getPartyMemberByPhone(loginUserInfoVO.getPhone());
                     complaint.setPartyMemberId(partyMember.getId());
                     complaint.setReportUserName(partyMember.getName());
                     complaint.setReportUserPhone(partyMember.getPhone());
+
+                    accountLevel=4;
+                    complaint.setSuperiorId(systemUser.getCommunityId());
                     break;
             }
+
+            // 判断该单位的管理员 添加处理人
+//            Integer oneDepartmentId = systemUser.getOneDepartmentId();
+//            SystemUser oneDepartmentSystemUser = systemUserService.getOne(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId,oneDepartmentId).eq(SystemUser::getIsDeptAdmin,1).ne(SystemUser::getStatus,3));
+//            if(null != oneDepartmentSystemUser){
+//                complaint.setAssignPersonId(oneDepartmentSystemUser.getId());
+//                complaint.setHandleUserId(oneDepartmentSystemUser.getId());
+//            }
         } else {
             PartyMember partyMember = partyMemberService.getPartyMemberByPhone(loginUserInfoVO.getPhone());
             //党员
@@ -165,8 +184,19 @@
             complaint.setPartyMemberId(partyMember.getId());
             complaint.setReportUserName(partyMember.getName());
             complaint.setReportUserPhone(partyMember.getPhone());
+
+            // 添加处理人
+//            SystemUser one = systemUserService.getOne(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getAccountLevel, 4).eq(SystemUser::getIsDeptAdmin, 1).eq(SystemUser::getCommunityId, partyMember.getCommunityId()).ne(SystemUser::getStatus, 3));
+//            if (null != one) {
+//                complaint.setAssignPersonId(one.getId());
+//                complaint.setHandleUserId(one.getId());
+//            }
+
+
         }
         complaint.setReportType(accountLevel);
+        complaint.setNowLevel(accountLevel);
+
         // 设置其他字段
         complaint.setStatus(ProcessStatusEnum.PROCESSING.getCode());
         complaint.setCreateTime(new Date(System.currentTimeMillis()));
@@ -211,7 +241,7 @@
     @Override
     public Page<ComplaintVO> complaintList(ComplaintQuery query, LoginUserInfoVO loginUserInfoVO) {
 
-
+        // 已分派了的
         Page<ComplaintVO> page = new Page<>(query.getPageNum(), query.getPageSize());
         //判断当前登录用户级别,查询对应工单
         Optional<SystemUser> systemUserByPhone = systemUserService.getSystemUserAdminByPhone(loginUserInfoVO.getPhone());
@@ -221,53 +251,79 @@
         IdentityInformation identityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfoVO);
         Integer identity = identityInformation.getIdentity();
         query.setUserId(loginUserInfoVO.getUserId());
+
+        SystemUser systemUser = null;
         //上级
         if (systemUserByPhone.isPresent() && null != identity && identity == 2) {
-            SystemUser systemUser = systemUserByPhone.get();
-            SystemUserLevel systemUserLevel = identityInformation.getSystemUserLevel();
-            accountLevel = systemUserLevel.getLevel();
+          systemUserByPhone.get();
+            accountLevel = systemUser.getAccountLevel();
             switch (accountLevel) {
-                case 1:
-                    //市级
-                    targetId = 510400L;
-                    break;
                 case 2:
                     //区县级
-                    targetId = Long.valueOf(systemUserLevel.getDistrictsCode());
+                    targetId = Long.valueOf(systemUser.getDistrictsCode());
                     break;
                 case 3:
                     //街道
-                    targetId = Long.valueOf(systemUserLevel.getStreetId());
+                    targetId = Long.valueOf(systemUser.getStreetId());
                     break;
                 case 4:
                     //社区
-                    targetId = systemUserLevel.getCommunityId();
+                    targetId = systemUser.getCommunityId();
                     break;
                 case 5:
                     //党员
                     PartyMember partyMember = partyMemberService.getPartyMemberByPhone(loginUserInfoVO.getPhone());
-                    targetId = partyMember.getId();
+                    targetId = partyMember.getCommunityId();
                     break;
             }
         } else {
             //党员
             PartyMember partyMember = partyMemberService.getPartyMemberByPhone(loginUserInfoVO.getPhone());
-            targetId = partyMember.getId();
+            targetId = partyMember.getCommunityId();
         }
         //查询对应诉求
         //page = baseMapper.selectComplaintPage(page, query, targetId, isSuperior);
-        page = baseMapper.selectComplaintPage1(page, query, accountLevel, targetId);
-
-     /*   for (ComplaintVO s : page.getRecords()) {
-            buttonPermission(s, systemUserByPhone, loginUserInfoVO);
-            Integer auditButtonStatus = s.getAuditButtonStatus();
-
-            Long reporterId = s.getReporterId();
-            Long superiorId = s.getSuperiorId2();
-            if (!targetId.equals(reporterId) && !targetId.equals(superiorId) && (s.getStatus() == 5)) {
-                s.setStatus(0);
+        // 党员只看自己上报的
+        if(accountLevel==5){
+            page =  baseMapper.selectComplaintPage2(page, query, accountLevel, targetId);
+        }else if(accountLevel==2){
+            // 西区单位  如果是西区单位,则只看自己上报的
+            if(systemUser.getSystemRoleId()==1){
+                // 是管理员 看所有的
+                page =  baseMapper.selectComplaintPage3(page, query, accountLevel, targetId);
+            }else {
+                // 不是管理员 看到指派给我的单位的诉求
+                page =  baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId());
             }
-        }*/
+        }else if(accountLevel==3){
+            // 街道 1
+            if(systemUser.getSystemRoleId()==1){
+                // 获取街道的所有单位
+                List<Department> list = departmentService.list(new LambdaQueryWrapper<Department>().eq(Department::getTier, 3).eq(Department::getStreetId, systemUser.getStreetId()));
+                if(list.isEmpty()){
+                    return page;
+                }
+                // 是管理员 可以看到下派来的  也可以看到上派待审核的
+                page =  baseMapper.selectComplaintPage5(page, query,systemUser.getStreetId(),list.stream().map(Department::getId).collect(Collectors.toList()));
+            }else {
+                // 不是管理员 看指派给我的
+                page =  baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId());
+            }
+        }else if(accountLevel==4){
+            // 社区
+            if(systemUser.getSystemRoleId()==1){
+                List<Department> list = departmentService.list(new LambdaQueryWrapper<Department>().eq(Department::getTier, 4).eq(Department::getCommunityId, systemUser.getCommunityId()));
+                if(list.isEmpty()){
+                    return page;
+                }
+                // 是管理员
+                page =  baseMapper.selectComplaintPage6(page, query,systemUser.getCommunityId(),list.stream().map(Department::getId).collect(Collectors.toList()));
+            }else {
+                // 不是管理员 看到负责社区的所有诉求  和 上级下派来的诉求
+                page =  baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId());
+
+            }
+        }
         return page;
     }
 
@@ -682,7 +738,6 @@
         String phone = loginUserInfoVO.getPhone();
         IdentityInformation identityInformationVO = identityInformationService.getCurrentIdentityInformation(loginUserInfoVO);
         SystemUser adminUser = identityInformationVO.getSystemUser();
-        SystemUserLevel systemUserLevel = identityInformationVO.getSystemUserLevel();
 
         Long superiorId;
         int reportType;
@@ -690,6 +745,7 @@
         Long reporterId = null;
         String departmentName = "";
         String reporter = "";
+        int nowLevel=0;
         if (identityInformationVO.getIdentity() == 1) {
             PartyMember partyMember = partyMemberService.getPartyMemberByPhone(phone);
             superiorId = partyMember.getCommunityId();
@@ -698,10 +754,13 @@
             reporterLevel = 5;
             departmentName = partyMember.getDistricts() + "-" + partyMember.getStreet() + "-" + partyMember.getCommunity();
             reporter = partyMember.getName();
+            // 找到当前社区上一级人
+            nowLevel = 3;
+
         } else if (identityInformationVO.getIdentity() == 2) {
-            int accountLevel = systemUserLevel.getLevel(); // 改为基本类型
-            if (accountLevel == 1) {
-                throw new ServiceException("市级账号,无法上报!");
+            int accountLevel = adminUser.getAccountLevel(); // 改为基本类型
+            if (accountLevel == 2) {
+                throw new ServiceException("区级账号,无法上报!");
             }
             reportType = accountLevel - 1;
             reporterLevel = accountLevel;
@@ -709,16 +768,14 @@
 
             // 使用基本类型比较并补充默认分支
             if (accountLevel == ReportTypeEnum.COMMUNITY.getCode()) {
-                superiorId = Long.parseLong(systemUserLevel.getStreetId());
-                reporterId = systemUserLevel.getCommunityId();
+                superiorId = Long.parseLong(adminUser.getStreetId());
+                reporterId = adminUser.getCommunityId();
+                nowLevel = 3;
+
             } else if (accountLevel == ReportTypeEnum.STREET.getCode()) {
-                superiorId = Long.parseLong(systemUserLevel.getDistrictsCode());
-                reporterId = Long.parseLong(systemUserLevel.getStreetId());
-            } else if (accountLevel == ReportTypeEnum.DISTRICT.getCode()) {
-                superiorId = 510400L; // 攀枝花市
-                reporterId = Long.parseLong(systemUserLevel.getDistrictsCode());
-            } else if (accountLevel == ReportTypeEnum.PARTY.getCode()) {
-                superiorId = systemUserLevel.getCommunityId();
+                superiorId = Long.parseLong(adminUser.getDistrictsCode());
+                reporterId = Long.parseLong(adminUser.getStreetId());
+                nowLevel = 2;
             } else {
                 // 处理未预期的账号等级
                 throw new ServiceException("未知的账号等级");
@@ -726,20 +783,20 @@
             //查询社区信息
             switch (accountLevel) {
                 case 2:
-                    BcRegion region = bcRegionService.getDistrictByCode(systemUserLevel.getDistrictsCode().toString());
+                    BcRegion region = bcRegionService.getDistrictByCode(adminUser.getDistrictsCode().toString());
                     if (Objects.nonNull(region)) {
                         departmentName = region.getRegionName();
                     }
                     break;
                 case 3:
-                    ComStreet street = comStreetService.getById(systemUserLevel.getStreetId().toString());
+                    ComStreet street = comStreetService.getById(adminUser.getStreetId().toString());
                     if (Objects.nonNull(street)) {
                         BcRegion district = bcRegionService.getDistrictByCode(street.getAreaCode().toString());
                         departmentName = Objects.nonNull(district) ? district.getRegionName() + "-" + street.getName() : street.getName();
                     }
                     break;
                 case 4:
-                    ComAct act = comActService.getById(systemUserLevel.getCommunityId());
+                    ComAct act = comActService.getById(adminUser.getCommunityId());
                     if (Objects.nonNull(act)) {
                         ComStreet street2 = comStreetService.getById(adminUser.getStreetId().toString());
                         BcRegion district = bcRegionService.getDistrictByCode(act.getAreaCode());
@@ -756,6 +813,9 @@
         if (complaint.getStatus() != 0) {
             complaint.setStatus(0);
         }
+        complaint.setSuperiorId(superiorId);
+        complaint.setNowLevel(nowLevel);
+        complaint.setAssignStatus(0);
         updateById(complaint);
 
         // 标记最新
@@ -829,13 +889,12 @@
         if (identityInformation.getIdentity() != 2) {
             throw new ServiceException("无权下派");
         }
+        SystemUser systemUser = identityInformation.getSystemUser();
 
-        SystemUserLevel systemUserLevel = identityInformation.getSystemUserLevel();
-        int accountLevel = systemUserLevel.getLevel(); // 改为基本类型
+        int accountLevel = systemUser.getAccountLevel(); // 改为基本类型
         if (accountLevel == 4) {
             throw new ServiceException("社区账号,无法下派!");
         }
-        accountLevel++;
 
         Complaint complaint = getById(dto.getComplaintId());
         //查询当前单位审核记录表数据
@@ -869,22 +928,31 @@
         complaintAuditRecordService.save(record);
         ComplaintAuditRecord complaintAuditRecord = new ComplaintAuditRecord();
         complaintAuditRecord.setComplaintId(complaint.getId());
-        complaintAuditRecord.setReportType(systemUserLevel.getLevel());
+        complaintAuditRecord.setReportType(systemUser.getAccountLevel());
         Long superiorId = null;
-        switch (systemUserLevel.getLevel()) {
+        int nowLevel=0;
+
+        switch (systemUser.getAccountLevel()) {
             case 1:
                 superiorId = 510400L;//默认市级
                 break;
             case 2:
-                superiorId = Long.parseLong(systemUserLevel.getDistrictsCode());
+                superiorId = Long.parseLong(systemUser.getStreetId());
+                nowLevel=3;
                 break;
             case 3:
-                superiorId = Long.parseLong(systemUserLevel.getStreetId());
+                superiorId = systemUser.getCommunityId();
+                nowLevel=4;
                 break;
             case 4:
-                superiorId = systemUserLevel.getCommunityId();
+                superiorId = systemUser.getCommunityId();
                 break;
         }
+        complaint.setSuperiorId(superiorId);
+        complaint.setAssignStatus(0);
+        complaint.setNowLevel(nowLevel);
+        this.updateById(complaint);
+
         complaintAuditRecord.setSuperiorId(superiorId);
         complaintFlowService.createFlow(complaintAuditRecord, 1, loginUserInfoVO.getUserId());
     }
@@ -917,6 +985,8 @@
                 break;
         }
 
+
+
         //查询上报审核记录
         ComplaintAuditRecord complaintAuditRecord = complaintAuditRecordService.lambdaQuery()
                 .eq(ComplaintAuditRecord::getComplaintId, complaintReporAuditDTO.getId())
@@ -931,6 +1001,7 @@
         complaintAuditRecord.setAuditorName(systemUser.getName());
         complaintAuditRecord.setAuditorPhone(systemUser.getPhone());
         complaintAuditRecord.setAuditTime(new Date());
+
         if (complaintReporAuditDTO.getAuditResult().equals(1)) {
             complaintAuditRecord.setAuditStatus(1);
             complaintAuditRecord.setAuditorId(loginUserInfoVO.getUserId());
@@ -941,6 +1012,14 @@
             complaintAuditRecord2.setSuperiorId(complaintAuditRecord.getReporterId());
             complaintAuditRecord2.setReportType(complaintAuditRecord.getReporterLevel());
             complaintFlowService.createFlow(complaintAuditRecord2, 0, loginUserInfoVO.getUserId());
+
+            // 通过修改状态
+            Complaint complaint = this.getById(complaintReporAuditDTO.getId());
+            complaint.setAssignPersonId(complaintReporAuditDTO.getDeptId());
+            complaint.setAssignStatus(1);
+            this.updateById(complaint);
+
+
         } else {
             complaintAuditRecord.setRejectReason(complaintReporAuditDTO.getRejectReason());
             complaintAuditRecord.setAuditStatus(2);
@@ -972,8 +1051,8 @@
             reporter = partyMember.getName();
         } else if (identityInformation.getIdentity() == 2) {
             int accountLevel = systemUserLevel.getLevel(); // 改为基本类型
-            if (accountLevel == 1) {
-                throw new ServiceException("市级账号,无法延期申请!");
+            if (accountLevel == 2) {
+                throw new ServiceException("区级账号,无法延期申请!");
             }
             reportType = accountLevel - 1;
             reporter = systemUser.getName();
@@ -1119,12 +1198,11 @@
         IdentityInformation identityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfoVO);
 
         SystemUser adminUser = identityInformation.getSystemUser();
-        SystemUserLevel systemUserLevel = identityInformation.getSystemUserLevel();
 
         if (identityInformation.getIdentity() != 2) {
             throw new ServiceException("无权下派");
         }
-        int accountLevel = systemUserLevel.getLevel(); // 改为基本类型
+        int accountLevel = adminUser.getAccountLevel(); // 改为基本类型
       /*  if (accountLevel == 1) {
             throw new ServiceException("市级账号,无法上报!");
         }*/
@@ -1132,30 +1210,20 @@
         // 使用基本类型比较并补充默认分支
         List<DispatchVO> dispatchVOList = new ArrayList<>();
         if (accountLevel == ReportTypeEnum.STREET.getCode()) {
-            String streetId = systemUserLevel.getStreetId();
-            List<ComAct> list = comActService.list(new LambdaQueryWrapper<ComAct>().eq(ComAct::getStreetId, streetId));
-            for (ComAct comAct : list) {
+            // 社区的单位
+            List<Department> list1 = departmentService.list(new LambdaQueryWrapper<Department>().eq(Department::getTier, 4));
+            for (Department department : list1) {
                 DispatchVO dispatchVO = new DispatchVO();
-                dispatchVO.setId(comAct.getCommunityId().toString());
-                dispatchVO.setName(comAct.getName());
+                dispatchVO.setId(department.getCommunityId().toString());
+                dispatchVO.setName(department.getName());
                 dispatchVOList.add(dispatchVO);
             }
         } else if (accountLevel == ReportTypeEnum.DISTRICT.getCode()) {
-            String districtsCode = systemUserLevel.getDistrictsCode();
-            List<ComStreet> list = comStreetService.list(new LambdaQueryWrapper<ComStreet>().eq(ComStreet::getAreaCode, districtsCode));
-            for (ComStreet street : list) {
+            List<Department> list1 = departmentService.list(new LambdaQueryWrapper<Department>().eq(Department::getTier, 3));
+            for (Department department : list1) {
                 DispatchVO dispatchVO = new DispatchVO();
-                dispatchVO.setId(street.getStreetId().toString());
-                dispatchVO.setName(street.getName());
-                dispatchVOList.add(dispatchVO);
-            }
-        } else if (accountLevel == ReportTypeEnum.CITY.getCode()) {
-            List<BcRegion> list = bcRegionService.list(new LambdaQueryWrapper<BcRegion>()
-                    .eq(BcRegion::getHierarchyOrder, 3).eq(BcRegion::getParentId, 510400));//获取攀枝花市下的区县
-            for (BcRegion region : list) {
-                DispatchVO dispatchVO = new DispatchVO();
-                dispatchVO.setId(region.getRegionCode());
-                dispatchVO.setName(region.getRegionName());
+                dispatchVO.setId(department.getCommunityId().toString());
+                dispatchVO.setName(department.getName());
                 dispatchVOList.add(dispatchVO);
             }
         } else {
@@ -1727,5 +1795,51 @@
         }
         return baseMapper.queryCompliantList(targetId, accountLevel, loginUserInfo, query);
     }
+
+
+    @Override
+    public Page<SysUserVO> getDeptUserList(LoginUserInfoVO loginUserInfo,BasePage page) {
+        IdentityInformation currentIdentityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfo);
+        if (currentIdentityInformation.getIdentity().equals(2)) {
+            SystemUser systemUser = currentIdentityInformation.getSystemUser();
+            if(systemUser.getIsDeptAdmin()==0){
+                throw new ServiceException("你没有分配权限");
+            }
+
+            Page<SysUserVO> sysUserVOPage = new Page<>();
+            ArrayList<SysUserVO> sysUserVOS = new ArrayList<>();
+
+            Page<SystemUser> page1 = systemUserService.page(new Page<>(page.getPageNum(), page.getPageSize()), new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId, systemUser.getOneDepartmentId()).ne(SystemUser::getId,systemUser.getId()).ne(SystemUser::getStatus, 3));
+            for (SystemUser record : page1.getRecords()) {
+                SysUserVO sysUserVO = new SysUserVO();
+                sysUserVO.setId(record.getId());
+                sysUserVO.setName(record.getName());
+                sysUserVOS.add(sysUserVO);
+            }
+            sysUserVOPage.setRecords(sysUserVOS);
+            BeanUtils.copyProperties(page1,sysUserVOPage);
+            return sysUserVOPage;
+        }else {
+            throw new ServiceException("你没有分配权限");
+        }
+    }
+
+
+    @Override
+    public void assignComplain(LoginUserInfoVO loginUserInfo, Long complainId, Integer userId) {
+        IdentityInformation currentIdentityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfo);
+        if (currentIdentityInformation.getIdentity().equals(2)) {
+            SystemUser systemUser = currentIdentityInformation.getSystemUser();
+            Complaint complaint = baseMapper.selectById(complainId);
+            // 已分配状态
+            complaint.setAssignPersonId(userId);
+            complaint.setFirstStatus(1);
+            complaint.setAssignStatus(1);
+        }else {
+            throw new ServiceException("你没有分配权限");
+        }
+
+    }
+
 }
 

--
Gitblit v1.7.1