From 74766cd4ee039dc8d34072cc76eb17cdfd226e31 Mon Sep 17 00:00:00 2001 From: 18792927508 <1322446236@qq.com> Date: Tue, 23 Jan 2024 14:06:12 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=94=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/system/SysDeptController.java | 29 +++++----- .../mscase/MsCaseApplicationController.java | 55 +++++++++++++++++-- .../mscase/MsVideoConferenceController.java | 43 --------------- .../mscase/MsCaseApplicationMapper.java | 8 +-- .../impl/MsCaseApplicationServiceImpl.java | 54 ++++++++++++++---- .../resources/mapper/system/SysUserMapper.xml | 30 +++++----- 6 files changed, 129 insertions(+), 90 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java index 59e7588..f46a5e6 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDeptController.java @@ -1,18 +1,5 @@ package com.ruoyi.web.controller.system; -import java.util.List; -import org.apache.commons.lang3.ArrayUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.controller.BaseController; @@ -21,6 +8,13 @@ import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.system.service.ISysDeptService; +import org.apache.commons.lang3.ArrayUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; /** * 部门信息 @@ -44,6 +38,15 @@ public class SysDeptController extends BaseController List depts = deptService.selectDeptList(dept); return success(depts); } + /** + * 获取部门列表 + */ + @GetMapping("/selectList") + public AjaxResult selectList(SysDept dept) + { + List depts = deptService.selectDeptList(dept); + return success(depts); + } /** * 查询部门列表(排除节点) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsCaseApplicationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsCaseApplicationController.java index 07a629a..75d29f6 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsCaseApplicationController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsCaseApplicationController.java @@ -3,17 +3,18 @@ package com.ruoyi.web.controller.wisdomarbitrate.mscase; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; +import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.exception.EsignDemoException; import com.ruoyi.wisdomarbitrate.domain.entity.mscase.MsCaseApplication; import com.ruoyi.wisdomarbitrate.domain.entity.mscase.MsCaseAttach; -import com.ruoyi.wisdomarbitrate.domain.vo.mscase.BookingVO; -import com.ruoyi.wisdomarbitrate.domain.vo.mscase.MsCaseApplicationReq; -import com.ruoyi.wisdomarbitrate.domain.vo.mscase.MsCaseApplicationVO; -import com.ruoyi.wisdomarbitrate.domain.vo.mscase.MsCaseAttachVO; +import com.ruoyi.wisdomarbitrate.domain.vo.mscase.*; import com.ruoyi.wisdomarbitrate.service.mscase.MsCaseApplicationService; +import com.ruoyi.wisdomarbitrate.service.mscase.VideoConferenceService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -31,6 +32,8 @@ import java.util.List; public class MsCaseApplicationController extends BaseController { @Resource private MsCaseApplicationService caseApplicationService; + @Autowired + private VideoConferenceService videoService; /** * 分页查询案件列表 @@ -243,4 +246,48 @@ public class MsCaseApplicationController extends BaseController { return caseApplicationService.confirmMediation(attach); } + /** + * 获取userSign + * @param userId + * @return + */ + @Anonymous + @GetMapping("/generateUserSign") + public AjaxResult generateUserSign(@RequestParam(required = true) String userId){ + if(StrUtil.isEmpty(userId)){ + error("参数校验失败"); + } + return AjaxResult.success(videoService.generateUserSign(userId)); + } + /** + * 生成房间号 + * @return + */ + @Anonymous + @GetMapping("/createRoomId") + public AjaxResult createRoomId(@RequestParam("caseId") Long caseId) { + + return success(videoService.createRoomId(caseId)); + } + /** + * 预约会议 + * @param reservedConferenceVO + * @return + */ + @PostMapping("/reservedConference") + public AjaxResult reservedConference(@Validated @RequestBody MsReservedConferenceVO reservedConferenceVO) throws Exception { + + return videoService.reservedConference(reservedConferenceVO); + } + /** + * 根据案件id查询已预约的会议 + * @param caseId + * @return + */ + @Anonymous + @GetMapping("/reserveConferenceList") + public AjaxResult reserveConferenceList( @RequestParam("caseId") Long caseId) { + + return success(videoService.reserveConferenceList(caseId)); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsVideoConferenceController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsVideoConferenceController.java index b4a994b..03d6e87 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsVideoConferenceController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/mscase/MsVideoConferenceController.java @@ -9,7 +9,6 @@ import com.ruoyi.wisdomarbitrate.domain.vo.mscase.SendRoomNoMessageVO; import com.ruoyi.wisdomarbitrate.domain.vo.mscase.VideoCallBackVO; import com.ruoyi.wisdomarbitrate.service.mscase.VideoConferenceService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -35,50 +34,8 @@ public class MsVideoConferenceController extends BaseController { return videoService.videoList(caseId); } - /** - * 获取userSign - * @param userId - * @return - */ - @Anonymous - @GetMapping("/generateUserSign") - public AjaxResult generateUserSign(@RequestParam(required = true) String userId){ - if(StrUtil.isEmpty(userId)){ - error("参数校验失败"); - } - return AjaxResult.success(videoService.generateUserSign(userId)); - } - /** - * 生成房间号 - * @return - */ - @Anonymous - @GetMapping("/createRoomId") - public AjaxResult createRoomId(@RequestParam("caseId") Long caseId) { - return success(videoService.createRoomId(caseId)); - } - /** - * 根据案件id查询已预约的会议 - * @param caseId - * @return - */ - @Anonymous - @GetMapping("/reserveConferenceList") - public AjaxResult reserveConferenceList( @RequestParam("caseId") Long caseId) { - return success(videoService.reserveConferenceList(caseId)); - } - /** - * 预约会议 - * @param reservedConferenceVO - * @return - */ - @PostMapping("/reservedConference") - public AjaxResult reservedConference(@Validated @RequestBody MsReservedConferenceVO reservedConferenceVO) throws Exception { - - return videoService.reservedConference(reservedConferenceVO); - } /** * 从腾讯云下载文件到本地 * @param diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/mscase/MsCaseApplicationMapper.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/mscase/MsCaseApplicationMapper.java index 63db421..c0bb584 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/mscase/MsCaseApplicationMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/mscase/MsCaseApplicationMapper.java @@ -61,7 +61,7 @@ public interface MsCaseApplicationMapper extends Mapper { " " + "" + - " AND a.mediation_method = '1'" + + " AND c.mediation_method = '1'" + " " + "" + @@ -95,11 +95,11 @@ public interface MsCaseApplicationMapper extends Mapper { " AND a1.application_organ_id = #{req.applicationOrganId} " + " " + "" + - " AND a.respondent_identity_num = #{req.respondentIdentityNum} " + + " AND a.respondent_identity_num = #{req.respondentIdentityNum} AND c1.case_flow_id=#{req.caseFlowId}" + " " + "" + - " AND a.mediation_method = '1'" + + " AND c.mediation_method = '1'" + " " + @@ -133,7 +133,7 @@ public interface MsCaseApplicationMapper extends Mapper { " " + "" + - " AND a.mediation_method = '1'" + + " AND c.mediation_method = '1'" + " " + diff --git a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java index bb194c8..89725e5 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/mscase/impl/MsCaseApplicationServiceImpl.java @@ -143,15 +143,12 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { */ @Override public List list(MsCaseApplicationReq req) { - // admin查询所有案件 - if (StrUtil.equals(SecurityUtils.getUsername(), "admin")) { - startPage(); - return msCaseApplicationMapper.list(req, null); - } + // 根据用户查询角色 LoginUser loginUser = SecurityUtils.getLoginUser(); - SysUser sysUser = loginUser.getUser(); - List roles = sysUser.getRoles(); + // 根据id查询用户 + SysUser sysUser = sysUserMapper.selectUserById(loginUser.getUserId()); + List roles = loginUser.getUser().getRoles(); if (CollectionUtil.isEmpty(roles)) { throw new ServiceException("该用户未指定角色"); } @@ -170,16 +167,47 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { if (CollectionUtil.isEmpty(caseFlows)) { throw new ServiceException("该角色为绑定案件流程"); } + Map flowMap = caseFlows.stream().collect(Collectors.toMap(MsCaseFlow::getButtonAuthFlag, Function.identity())); + // admin查询所有案件 + if (StrUtil.equals(SecurityUtils.getUsername(), "admin")) { + MsCaseFlow caseFlow =null; + if(req.getHearDateFlag()!=null){ + caseFlow = flowMap.get("caseManagement:list:mediate"); + }else { + // 根据按钮权限标识符查询待选择调解员流程id + caseFlow = flowMap.get("caseManagement:list:selectmediator"); + } + if(caseFlow!=null) { + req.setCaseFlowId(caseFlow.getId()); + } + startPage(); + + return msCaseApplicationMapper.list(req, null); + } for (SysRole role : roles) { if(StrUtil.isNotEmpty(role.getRoleName())&&StrUtil.equals(role.getRoleName(),"申请人")){ - if(loginUser.getDeptId()!=null) { - req.setApplicationOrganId(String.valueOf(loginUser.getDeptId())); + if(sysUser.getDeptId()!=null) { + req.setApplicationOrganId(String.valueOf(sysUser.getDeptId())); } req.setApplicantFlag(1); + break; + } if(StrUtil.isNotEmpty(role.getRoleName())&&StrUtil.equals(role.getRoleName(),"被申请人")){ // todo 被申请人案件根据被申请人身份证号查询案件列表 req.setRespondentIdentityNum(sysUser.getIdCard()); + MsCaseFlow caseFlow =null; + // 查询待调解流程id + if(req.getHearDateFlag()!=null){ + caseFlow = flowMap.get("caseManagement:list:mediate"); + }else { + // 根据按钮权限标识符查询待选择调解员流程id + caseFlow = flowMap.get("caseManagement:list:selectmediator"); + } + if(caseFlow!=null) { + req.setCaseFlowId(caseFlow.getId()); + } + break; } } startPage(); @@ -948,7 +976,7 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { criteria.andIsNull("type"); } criteria.andEqualTo("caseAppliId", vo.getId()); - criteria.andEqualTo("mediatorId", user.getUserId()); + // criteria.andEqualTo("mediatorId", user.getUserId()); int count = msCaseMediatorMapper.selectCountByExample(example); if (count > 0) { // 申请人已预约,更新主表流程节点 @@ -2100,7 +2128,11 @@ public class MsCaseApplicationServiceImpl implements MsCaseApplicationService { agentUser.setDeptId(Long.valueOf(affiliate.getApplicationOrganId())); userMapper.insertUser(agentUser); userRoleMapper.insertUserRole(agentUser.getUserId(), roleId); - } else if (null != agentUser.getDeptId() && !String.valueOf(agentUser.getDeptId()).equals(affiliate.getApplicationOrganId())) { + } else if (null == agentUser.getDeptId() ) { + // todo 未关联部门,关联部门 + agentUser.setDeptId(Long.valueOf(affiliate.getApplicationOrganId())); + userMapper.updateUser(agentUser); + }else if (null != agentUser.getDeptId() && !String.valueOf(agentUser.getDeptId()).equals(affiliate.getApplicationOrganId())) { if (null != agentUser.getDept() && StrUtil.isNotEmpty(agentUser.getDept().getDeptName())) { throw new ServiceException("该申请代理人已在【" + agentUser.getDept().getDeptName() + "】申请机构下存在,请检查填写信息是否正确"); } else { diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index d749958..83a5b25 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -274,21 +274,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update ms_sys_user - dept_id = #{deptId}, - user_name = #{userName}, - nick_name = #{nickName}, - id_card = #{idCard}, - email = #{email}, - phonenumber = #{phonenumber}, - sex = #{sex}, - avatar = #{avatar}, - password = #{password}, - status = #{status}, - login_ip = #{loginIp}, - login_date = #{loginDate}, - update_by = #{updateBy}, - remark = #{remark}, - specialty = #{specialty}, + dept_id = #{deptId}, + user_name = #{userName}, + nick_name = #{nickName}, + id_card = #{idCard}, + email = #{email}, + phonenumber = #{phonenumber}, + sex = #{sex}, + avatar = #{avatar}, + password = #{password}, + status = #{status}, + login_ip = #{loginIp}, + login_date = #{loginDate}, + update_by = #{updateBy}, + remark = #{remark}, + specialty = #{specialty}, update_time = sysdate() where user_id = #{userId} -- 2.54.0