From 52eebe3d52887f9ed0e5654a1d8b0c873f9f284d Mon Sep 17 00:00:00 2001 From: mashuanghui Date: Tue, 20 Aug 2024 14:21:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/query/ProjectQuery.java | 5 +++-- .../controller/TerminalController.java | 15 +++++++++++++ .../WrkInfoTerminalRecordController.java | 15 ++++++++++++- .../work/service/impl/WrkInfoServiceImpl.java | 18 +++++++++++++-- .../main/resources/mapper/WrkInfoMapper.xml | 3 --- .../system/entity/dto/ListUserDTO.java | 2 ++ .../system/feign/RemoteUserService.java | 15 ++++++------- .../system/remote/RemoteUserController.java | 22 ++++++++++++++----- .../system/service/ISysUserService.java | 8 +++---- .../service/impl/SysUserServiceImpl.java | 12 ++++++++++ 10 files changed, 89 insertions(+), 26 deletions(-) diff --git a/chushang-modules/chushang-module-inspection/inspection-feign/src/main/java/com/chushang/inspection/project/query/ProjectQuery.java b/chushang-modules/chushang-module-inspection/inspection-feign/src/main/java/com/chushang/inspection/project/query/ProjectQuery.java index c714479..ab02f2a 100644 --- a/chushang-modules/chushang-module-inspection/inspection-feign/src/main/java/com/chushang/inspection/project/query/ProjectQuery.java +++ b/chushang-modules/chushang-module-inspection/inspection-feign/src/main/java/com/chushang/inspection/project/query/ProjectQuery.java @@ -22,18 +22,19 @@ public class ProjectQuery extends CommonParam { /** * 项目联系人 */ - @Condition(name = "project_concat", type = Condition.ConditionType.like,tableName = "wrk_info") private String projectConcat; /** * 联系人手机号 */ - @Condition(name = "project_phone", type = Condition.ConditionType.like,tableName = "wrk_info") private String projectPhone; /** * 所属部门 */ @Condition(name = "dept_id",type = Condition.ConditionType.eq,tableName = "wrk_info") private Long deptId; + + @Condition(name = "user_id", type = Condition.ConditionType.in,tableName = "wrk_info") + private List userIds ; /** * 创建时间 */ diff --git a/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/terminal/controller/TerminalController.java b/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/terminal/controller/TerminalController.java index daa41f9..382df30 100644 --- a/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/terminal/controller/TerminalController.java +++ b/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/terminal/controller/TerminalController.java @@ -16,6 +16,8 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.List; +import java.util.function.BiConsumer; /** * 终端信息表(st_terminal)表控制层 @@ -38,6 +40,10 @@ public class TerminalController { @GetMapping("/page") @RequiresPermissions("ins:terminal:page") public AjaxResult pageList(@Validated TerminalQuery query) { + List createTimes = query.getCreateTimes(); + List inspectionTime = query.getInspectionTime(); + query.setCreateTimes(extendTimeRange(createTimes, " 00:00:00", " 23:59:59")); + query.setInspectionTime(extendTimeRange(inspectionTime, " 00:00:00", " 23:59:59")); return AjaxResult.success(terminalService.pageList(query)); } @@ -109,4 +115,13 @@ public class TerminalController { public AjaxResult delTerminal(@RequestBody @Validated Delete delete){ return AjaxResult.success(terminalService.removeBatchByIds(delete.getIds())); } + private List extendTimeRange(List timeList, String prefix, String suffix) { + if (timeList != null && timeList.size() >= 2) { + String startTime = timeList.get(0) + prefix; + String endTime = timeList.get(1) + suffix; + timeList.set(0, startTime); + timeList.set(1, endTime); + } + return timeList; + } } diff --git a/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/controller/WrkInfoTerminalRecordController.java b/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/controller/WrkInfoTerminalRecordController.java index 44cb2af..56d7449 100644 --- a/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/controller/WrkInfoTerminalRecordController.java +++ b/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/controller/WrkInfoTerminalRecordController.java @@ -10,6 +10,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.List; /** * 工单终端信息(wrk_info_terminal_record)表控制层 @@ -36,7 +37,19 @@ public class WrkInfoTerminalRecordController { public AjaxResult minePageList(@Validated TerminalQuery query) { // 获取当前用户的 query.setUserId(SecurityUtils.getUserId()); + List createTimes = query.getCreateTimes(); + List inspectionTime = query.getInspectionTime(); + query.setCreateTimes(extendTimeRange(createTimes, " 00:00:00", " 23:59:59")); + query.setInspectionTime(extendTimeRange(inspectionTime, " 00:00:00", " 23:59:59")); return AjaxResult.success(terminalRecordService.minePageList(query)); } - + private List extendTimeRange(List timeList, String prefix, String suffix) { + if (timeList != null && timeList.size() >= 2) { + String startTime = timeList.get(0) + prefix; + String endTime = timeList.get(1) + suffix; + timeList.set(0, startTime); + timeList.set(1, endTime); + } + return timeList; + } } diff --git a/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/service/impl/WrkInfoServiceImpl.java b/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/service/impl/WrkInfoServiceImpl.java index 666927a..b24a1b7 100644 --- a/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/service/impl/WrkInfoServiceImpl.java +++ b/chushang-modules/chushang-module-inspection/inspection-service/src/main/java/com/chushang/inspection/work/service/impl/WrkInfoServiceImpl.java @@ -21,6 +21,7 @@ import com.chushang.common.core.exception.utils.AssertUtil; import com.chushang.common.core.util.DateUtils; import com.chushang.common.core.util.IPUtils; import com.chushang.common.core.util.SpringUtils; +import com.chushang.common.core.util.StringUtils; import com.chushang.common.core.web.Result; import com.chushang.common.dict.utils.DictUtils; import com.chushang.common.excel.utils.ExcelUtils; @@ -58,6 +59,7 @@ import com.chushang.oss.entity.dto.UploadBytesDTO; import com.chushang.oss.entity.vo.FileSourceVo; import com.chushang.oss.feign.RemoteOssService; import com.chushang.security.utils.SecurityUtils; +import com.chushang.system.entity.dto.ListUserDTO; import com.chushang.system.feign.RemoteDeptService; import com.chushang.task.entity.dto.CreateTaskDTO; import com.chushang.task.enums.ServiceEnum; @@ -78,6 +80,7 @@ import java.io.IOException; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.*; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -796,8 +799,20 @@ public class WrkInfoServiceImpl extends ServiceImpl impl public PageResult empData(ProjectQuery projectQuery) { CommonParam commonParam = CommonParam.buildPageRequest(); Page page = new Page<>(commonParam.getPage(), commonParam.getLimit()); + + if (StringUtils.isNotEmpty(projectQuery.getProjectPhone()) || StringUtils.isNotEmpty(projectQuery.getProjectConcat())){ + ListUserDTO listUserDTO = new ListUserDTO(); + listUserDTO.setPhone(projectQuery.getProjectPhone()); + listUserDTO.setNickName(projectQuery.getProjectConcat()); + listUserDTO.setNickName(projectQuery.getProjectConcat()); + List sysUsers = userFeignService.getSysUsers(listUserDTO).getData(); + if (CollectionUtil.isNotEmpty(sysUsers)){ + projectQuery.setUserIds(sysUsers.stream().map(SysUser::getUserId).collect(Collectors.toList())); + } + } WrapperUtils.buildSql(projectQuery); List employeeVOList = baseMapper.empData(projectQuery, page); + Set deptIds = employeeVOList.stream().map(EmployeeVO::getDeptId).collect(Collectors.toSet()); Set userIds = employeeVOList.stream().map(EmployeeVO::getUserId).collect(Collectors.toSet()); // 查询全部部门 @@ -812,11 +827,10 @@ public class WrkInfoServiceImpl extends ServiceImpl impl // 查询全部工单 for (EmployeeVO employeeVO:employeeVOList){ - employeeVO.setDeptName(deptNameMap.get(employeeVO.getDeptId())); employeeVO.setProjectConcat(userNameByIds.get(employeeVO.getUserId()) == null ?"admin":userNameByIds.get(employeeVO.getUserId()).getNickName()); employeeVO.setProjectPhone(userNameByIds.get(employeeVO.getUserId())== null ? "17638147107":userNameByIds.get(employeeVO.getUserId()).getPhone()); + employeeVO.setDeptName(deptNameMap.get(employeeVO.getDeptId())); } - return new PageResult(employeeVOList,page.getTotal(),page.getSize(),page.getCurrent()); } diff --git a/chushang-modules/chushang-module-inspection/inspection-service/src/main/resources/mapper/WrkInfoMapper.xml b/chushang-modules/chushang-module-inspection/inspection-service/src/main/resources/mapper/WrkInfoMapper.xml index 3785e93..1fdd5b0 100644 --- a/chushang-modules/chushang-module-inspection/inspection-service/src/main/resources/mapper/WrkInfoMapper.xml +++ b/chushang-modules/chushang-module-inspection/inspection-service/src/main/resources/mapper/WrkInfoMapper.xml @@ -304,9 +304,6 @@ THEN 1 ELSE 0 END) as aduitNum FROM wrk_info where del_state = 0 - - AND project_concat = #{query.projectConcat} - ${query.sqlParam.get('sqlWhere')} diff --git a/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/entity/dto/ListUserDTO.java b/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/entity/dto/ListUserDTO.java index 4fb89ca..43acf2a 100644 --- a/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/entity/dto/ListUserDTO.java +++ b/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/entity/dto/ListUserDTO.java @@ -24,6 +24,8 @@ public class ListUserDTO extends CommonParam { private Integer status; private String phone; + private String nickName; + private List createTimes; } diff --git a/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/feign/RemoteUserService.java b/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/feign/RemoteUserService.java index 7123494..7a54050 100644 --- a/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/feign/RemoteUserService.java +++ b/chushang-modules/chushang-module-system/system-feign/src/main/java/com/chushang/system/feign/RemoteUserService.java @@ -2,18 +2,14 @@ package com.chushang.system.feign; import com.chushang.common.core.constant.SecurityConstants; import com.chushang.common.core.web.Result; -import com.chushang.security.entity.po.DataScopeEntity; +import com.chushang.security.entity.po.SysUser; import com.chushang.security.entity.vo.LoginUser; import com.chushang.system.constants.SystemConstants; -import com.chushang.security.entity.po.SysUser; +import com.chushang.system.entity.dto.ListUserDTO; import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.cloud.openfeign.SpringQueryMap; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestHeader; -import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.*; -import java.util.Collection; +import java.util.List; import java.util.Map; import java.util.Set; @@ -62,4 +58,7 @@ public interface RemoteUserService { @GetMapping("/querynamebyid") Map getUserNameByIds(@RequestParam(value = "userIds") Set userIds, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + + @PostMapping("/user/list") + Result> getSysUsers(@RequestBody ListUserDTO listUser) ; } diff --git a/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/remote/RemoteUserController.java b/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/remote/RemoteUserController.java index 87fe7b5..e5c70b9 100644 --- a/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/remote/RemoteUserController.java +++ b/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/remote/RemoteUserController.java @@ -4,19 +4,23 @@ import cn.hutool.core.collection.CollectionUtil; import com.chushang.common.core.util.StringUtils; import com.chushang.common.core.web.AjaxResult; import com.chushang.common.core.web.Result; -import com.chushang.common.mybatis.utils.PageResult; -import com.chushang.security.entity.po.DataScopeEntity; import com.chushang.security.annotation.InnerAuth; -import com.chushang.security.entity.po.SysDept; -import com.chushang.security.entity.vo.LoginUser; +import com.chushang.security.entity.po.DataScopeEntity; import com.chushang.security.entity.po.SysUser; +import com.chushang.security.entity.vo.LoginUser; import com.chushang.system.entity.dto.ListUserDTO; import com.chushang.system.feign.RemoteUserService; -import com.chushang.system.service.*; +import com.chushang.system.service.ISysPermissionService; +import com.chushang.system.service.ISysPostService; +import com.chushang.system.service.ISysRoleService; +import com.chushang.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.*; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; import java.util.function.Function; import java.util.stream.Collectors; @@ -97,6 +101,12 @@ public class RemoteUserController implements RemoteUserService { return Map.of(); } + @PostMapping(value = "/user/list") + public Result> getSysUsers(ListUserDTO listUser) { + List list = sysUserService.getSysUsers(listUser); + return list == null ? Result.failed("未查询到数据") : Result.ok(list); + } + @GetMapping(value = "/empData") @InnerAuth diff --git a/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/ISysUserService.java b/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/ISysUserService.java index ebe5628..91919c8 100644 --- a/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/ISysUserService.java +++ b/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/ISysUserService.java @@ -5,13 +5,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.IService; import com.chushang.common.core.exception.ResultException; import com.chushang.common.core.web.AjaxResult; -import com.chushang.security.utils.SecurityUtils; -import com.chushang.system.entity.dto.ListUserDTO; import com.chushang.security.entity.po.SysUser; -import org.springframework.cache.annotation.CacheConfig; -import org.springframework.cache.annotation.Cacheable; +import com.chushang.system.entity.dto.ListUserDTO; import java.util.Collection; +import java.util.List; import java.util.Map; /** @@ -98,4 +96,6 @@ public interface ISysUserService extends IService { Map getIdByUsernames(Collection userNames); Map getIdByNicknames(Collection nickNames); + + List getSysUsers(ListUserDTO listUser); } diff --git a/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/impl/SysUserServiceImpl.java b/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/impl/SysUserServiceImpl.java index fa9362a..58540ac 100644 --- a/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/impl/SysUserServiceImpl.java +++ b/chushang-modules/chushang-module-system/system-service/src/main/java/com/chushang/system/service/impl/SysUserServiceImpl.java @@ -263,6 +263,18 @@ public class SysUserServiceImpl extends ServiceImpl impl .toMap(SysUser::getNickName, SysUser::getUserId, (v1, v2) -> v1)); } + @Override + public List getSysUsers(ListUserDTO listUser) { + List list = list(new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(listUser.getPhone()),SysUser::getPhone, listUser.getPhone()). + like(StringUtils.isNotEmpty(listUser.getUsername()),SysUser::getUsername, listUser.getUsername()). + like(StringUtils.isNotEmpty(listUser.getNickName()),SysUser::getNickName, listUser.getNickName())); + if (CollUtil.isEmpty(list)) { + return null; + } + return list; + } + private void checkUsernameUnique(String username) { long count = count(new LambdaQueryWrapper()