diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/dept/DeptApiImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/dept/DeptApiImpl.java index f147139e..adecb122 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/dept/DeptApiImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/api/dept/DeptApiImpl.java @@ -108,6 +108,14 @@ public class DeptApiImpl implements DeptApi { return success(BeanUtils.toBean(deptDO, DeptRespDTO.class)); } + @Override + @DataPermission(enable = false) + public CommonResult> getDeptByFactoryIds(Collection factoryIds) { + + List deptDOS = deptService.getDeptListByFactoryIds(factoryIds); + return success(BeanUtils.toBean(deptDOS, DeptRespDTO.class)); + } + @Override @DataPermission(enable = false) public CommonResult> getChildDeptList(Long deptId) { diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java index 9079f238..6d4b73b3 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java @@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; @Data @NoArgsConstructor @AllArgsConstructor -public class DeptSimpleRespVO { +public class DeptSimpleRespVO { @Schema(description = "部门编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") private Long id; @@ -28,4 +28,7 @@ public class DeptSimpleRespVO { @Schema(description = "工厂编号") private Long factoryId; + + @Schema(description = "机构类型 | 字典值参考 system_dept_type", example = "0") + private String type; } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/loan/LoanController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/loan/LoanController.java index 038caebb..16ca407f 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/loan/LoanController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/loan/LoanController.java @@ -4,6 +4,8 @@ import cn.hutool.core.collection.CollUtil; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.module.smartfactory.api.factoryInfo.FactoryInfoApi; +import cn.iocoder.yudao.module.smartfactory.api.factoryInfo.dto.FactoryInfoDTO; import cn.iocoder.yudao.module.smartfactory.api.staff.StaffApi; import cn.iocoder.yudao.module.smartfactory.api.staff.dto.StaffDTO; import cn.iocoder.yudao.module.system.controller.admin.loan.vo.LoanPageReqVO; @@ -44,7 +46,7 @@ public class LoanController { private StaffApi staffApi; @Resource - private DeptService deptService; + private FactoryInfoApi factoryInfoApi; @GetMapping("/get") @Operation(summary = "获得借支管理") @@ -55,6 +57,15 @@ public class LoanController { return success(BeanUtils.toBean(loan, LoanRespVO.class)); } + @GetMapping("/getByStaffId") + @Operation(summary = "获得指定员工的借支管理") + @Parameter(name = "staffId", description = "员工编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('system:loan:query')") + public CommonResult getByStaffId(@RequestParam("id") Long id) { + LoanDO loan = loanService.getByUserId(id); + return success(BeanUtils.toBean(loan, LoanRespVO.class)); + } + @GetMapping("/page") @Operation(summary = "获得借支管理分页") @PreAuthorize("@ss.hasPermission('system:loan:query')") @@ -70,7 +81,7 @@ public class LoanController { // 获取部门信息 Set deptIds = convertSet(result.getList(), LoanRespVO::getDeptId); - Map deptMap = convertMap(deptService.getDeptList(deptIds), DeptDO::getId); + Map deptMap = factoryInfoApi.getFactoryMap(deptIds); result.getList().forEach(item -> { // 设置借支用户名称 diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java index 16cbea78..9a2eb701 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java @@ -372,11 +372,14 @@ public class UserController { List postDO = postService.getPostList(null, Collections.singleton(CommonStatusEnum.ENABLE.getStatus())); postDO.sort(Comparator.comparing(PostDO::getSort)); + Map> mapDropDown = new HashMap<>(); + mapDropDown.put(1, getDeptNameFun(deptDO)); + mapDropDown.put(2, getPostNameFun(postDO)); + // 输出 Excel ExcelUtils.write(response, "用户数据.xls", "数据", UserRespVO.class, UserConvert.INSTANCE.convertList(list, deptMap, postMap, positionMap), - 1, getDeptNameFun(deptDO), - 2, getPostNameFun(postDO)); + mapDropDown); } @GetMapping("/get-import-template") @@ -397,11 +400,14 @@ public class UserController { List postDO = postService.getPostList(null, Collections.singleton(CommonStatusEnum.ENABLE.getStatus())); postDO.sort(Comparator.comparing(PostDO::getSort)); + Map> mapDropDown = new HashMap<>(); + mapDropDown.put(1, getDeptNameFun(deptDO)); + mapDropDown.put(2, getPostNameFun(postDO)); + // 输出 ExcelUtils.write(response, "用户导入模板.xlsx", "用户列表", UserImportExcelVO.class, null, - 1, getDeptNameFun(deptDO), - 2, getPostNameFun(postDO)); + mapDropDown); } @PostMapping("/import") diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/worklog/LogFormController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/worklog/LogFormController.java index 6e0c509d..5cd94cda 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/worklog/LogFormController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/worklog/LogFormController.java @@ -71,8 +71,10 @@ public class LogFormController { //获取规则信息 LogRuleDO logRuleDO = logRuleService.getLogRule(form.getId()); - //设置日志类型 - logFormRespVO.setType(logRuleDO.getType()); + if (logRuleDO != null) { + //设置日志类型 + logFormRespVO.setType(logRuleDO.getType()); + } } return success(logFormRespVO); diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/worklog/LogUseMapper.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/worklog/LogUseMapper.java index 88d14789..6bca784b 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/worklog/LogUseMapper.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/worklog/LogUseMapper.java @@ -45,4 +45,6 @@ public interface LogUseMapper extends BaseMapperX { * @return */ List getFormIdsByDataPermission(Long userId); + + List selectUseDeptList(); } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java index df8d5e22..d0cffcde 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java @@ -1084,6 +1084,7 @@ public class AttendanceServiceImpl implements AttendanceService { // -- 如果有报错的话 - 那么进行回滚操作 - 并且redis 中的补卡次数也要+1 (redis并不会回滚) String key = "ReplacementCardNum" + "_" + userId + "_" + LocalDateTime.now().format(Constants.YEAR_MONTH_FORMAT); stringRedisTemplate.opsForValue().increment(key, 1); + log.error("补卡失败", e); throw exception(ABNORMAL_CARD_REPLENISHMENT); } } @@ -1115,6 +1116,7 @@ public class AttendanceServiceImpl implements AttendanceService { // -- 如果有报错的话 - 那么进行回滚操作 - 并且redis 中的补卡次数也要+1 (redis并不会回滚) String key = "ReplacementCardNum" + "_" + userId + "_" + LocalDateTime.now().format(Constants.YEAR_MONTH_FORMAT); stringRedisTemplate.opsForValue().increment(key, punchRecordIds.size()); + log.error("补卡失败", e); throw exception(ABNORMAL_CARD_REPLENISHMENT); } } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java index 53bd84dd..45b6c329 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java @@ -160,7 +160,7 @@ public interface DeptService { * @param factoryIds * @return */ - List getDeptListByFactoryIds(List factoryIds); + List getDeptListByFactoryIds(Collection factoryIds); /** * 获取部门列表 diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java index 5784c05a..7dedab46 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceImpl.java @@ -356,7 +356,7 @@ public class DeptServiceImpl implements DeptService { } @Override - public List getDeptListByFactoryIds(List factoryIds) { + public List getDeptListByFactoryIds(Collection factoryIds) { return deptMapper.selectList(new LambdaQueryWrapper() .in(DeptDO::getFactoryId, factoryIds)); } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java index e25fd904..e002fee8 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java @@ -98,11 +98,7 @@ public class LogUseServiceImpl implements LogUseService { @Override public List getUseDeptList() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("DISTINCT use_user_dept"); - - List logUseDOS = logUseMapper.selectList(queryWrapper); - return convertList(logUseDOS, LogUseDO::getUseUserDept); + return logUseMapper.selectUseDeptList(); } @Override diff --git a/yudao-module-system/yudao-module-system-biz/src/main/resources/logback-spring.xml b/yudao-module-system/yudao-module-system-biz/src/main/resources/logback-spring.xml index b1b9f3fa..a9262550 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/resources/logback-spring.xml +++ b/yudao-module-system/yudao-module-system-biz/src/main/resources/logback-spring.xml @@ -66,7 +66,7 @@ - + diff --git a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/worklog/WorkLogUseMapper.xml b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/worklog/WorkLogUseMapper.xml index 56117716..957572a0 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/worklog/WorkLogUseMapper.xml +++ b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/worklog/WorkLogUseMapper.xml @@ -30,4 +30,17 @@ deleted = 0 and form_id = #{formId} + + \ No newline at end of file