diff --git a/pjcloud-integrated/pjcloud-integrated-api/src/main/java/com/bsd/pjcloud/integrated/dto/visitor/app/VisitorsAppDTO.java b/pjcloud-integrated/pjcloud-integrated-api/src/main/java/com/bsd/pjcloud/integrated/dto/visitor/app/VisitorsAppDTO.java index 35c34abc..c62af4d1 100644 --- a/pjcloud-integrated/pjcloud-integrated-api/src/main/java/com/bsd/pjcloud/integrated/dto/visitor/app/VisitorsAppDTO.java +++ b/pjcloud-integrated/pjcloud-integrated-api/src/main/java/com/bsd/pjcloud/integrated/dto/visitor/app/VisitorsAppDTO.java @@ -1,5 +1,6 @@ package com.bsd.pjcloud.integrated.dto.visitor.app; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import lombok.Data; @@ -48,9 +49,16 @@ public class VisitorsAppDTO { /** * 到访单位 */ - @Schema(description="到访单位") + @Schema(description="到访单位id") private Long deptId; + /** + * 到访单位 + */ + @Schema(description="到访单位") + private String deptName; + + /** * 接待人 */ @@ -75,11 +83,13 @@ public class VisitorsAppDTO { * 到访时间 */ @Schema(description="到访时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime vStartDate; /** * 到访时间 */ @Schema(description="到访时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime vEndDate; /** @@ -94,10 +104,14 @@ public class VisitorsAppDTO { @Schema(description="是否有随行人员 0 否 1是") private String isOtherPeople; + + @Schema(description="用户id") + private Long userId; + @Schema(description="车牌号集合") - private List visitorsCarAppDTOList; + private List carList; @Schema(description="随行人员集合") - private List visitorsPeopleAppDTOList; + private List otherPeople; } \ No newline at end of file diff --git a/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/controller/VisitorsController.java b/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/controller/VisitorsController.java index a06b6ed0..b82d2d2d 100644 --- a/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/controller/VisitorsController.java +++ b/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/controller/VisitorsController.java @@ -136,7 +136,7 @@ public class VisitorsController { @Operation(summary = "app新增访客" , description = "app新增访客" ) @SysLog("新增访客" ) @PostMapping("/app/save") - @Idempotent(key = "#mobile", expireTime = 10, info = "请勿重复提交") + @Idempotent(expireTime = 10, info = "请勿重复提交") public R saveFK(@RequestBody VisitorsAppDTO visitors) { return R.ok(visitorsService.vistorsSave(visitors)); } diff --git a/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/entity/VisitorsEntity.java b/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/entity/VisitorsEntity.java index 4442253d..9b112765 100644 --- a/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/entity/VisitorsEntity.java +++ b/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/entity/VisitorsEntity.java @@ -68,8 +68,8 @@ public class VisitorsEntity extends Model { /** * 接待人 */ - @Schema(description="接待人") - private Long userName; + @Schema(description="拜访人") + private String userName; /** * 车牌号id diff --git a/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/service/impl/VisitorsServiceImpl.java b/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/service/impl/VisitorsServiceImpl.java index 8e1eecde..fad4a471 100644 --- a/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/service/impl/VisitorsServiceImpl.java +++ b/pjcloud-integrated/pjcloud-integrated-biz/src/main/java/com/bsd/pjcloud/integrated/service/impl/VisitorsServiceImpl.java @@ -83,7 +83,7 @@ public class VisitorsServiceImpl extends ServiceImpl visitorsCarAppDTOList = visitors.getVisitorsCarAppDTOList(); + List visitorsCarAppDTOList = visitors.getCarList(); if (!CollectionUtils.isEmpty(visitorsCarAppDTOList)){ List visitorsCarEntities = BeanUtils.toBean(visitorsCarAppDTOList, VisitorsCarEntity.class); visitorsCarEntities.forEach(i->{ @@ -91,6 +91,14 @@ public class VisitorsServiceImpl extends ServiceImpl visitorsPeopleAppDTOList = visitors.getOtherPeople(); + if (!CollectionUtils.isEmpty(visitorsPeopleAppDTOList)){ + List visitorsPeopleEntities = BeanUtils.toBean(visitorsPeopleAppDTOList, VisitorsPeopleEntity.class); + visitorsPeopleEntities.forEach(i->{ + i.setVisitorsId(bean.getId()); + }); + visitorsPeopleMapper.insert(visitorsPeopleEntities); + } return insert; } @@ -143,7 +151,7 @@ public class VisitorsServiceImpl extends ServiceImpl visitorsCarAppDTOList = visitors.getVisitorsCarAppDTOList(); + List visitorsCarAppDTOList = visitors.getCarList(); if (!CollectionUtils.isEmpty(visitorsCarAppDTOList)){ List visitorsCarEntities = BeanUtils.toBean(visitorsCarAppDTOList, VisitorsCarEntity.class); visitorsCarEntities.forEach(i->{ @@ -151,7 +159,7 @@ public class VisitorsServiceImpl extends ServiceImpl visitorsPeopleAppDTOList = visitors.getVisitorsPeopleAppDTOList(); + List visitorsPeopleAppDTOList = visitors.getOtherPeople(); if (!CollectionUtils.isEmpty(visitorsPeopleAppDTOList)){ List visitorsPeopleEntities = BeanUtils.toBean(visitorsPeopleAppDTOList, VisitorsPeopleEntity.class); visitorsPeopleEntities.forEach(i->{ diff --git a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/vo/SimpleUserListVO.java b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/vo/SimpleUserListVO.java new file mode 100644 index 00000000..74c519a5 --- /dev/null +++ b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/vo/SimpleUserListVO.java @@ -0,0 +1,15 @@ +package com.bsd.pjcloud.admin.api.vo; + + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Data +@Schema(description = "简要用户信息,不包含手机号") +public class SimpleUserListVO { + + private Long userId; + + @Schema(description = "姓名") + private String name; +} diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java index 065482f3..dddf78c5 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java @@ -91,6 +91,19 @@ public class SysDeptController { return R.ok(sysDeptService.selectTree(deptName, parentId)); } + /** + * + * 查询所有,无权限过滤 + * simpleTree + * @param deptName + * @param parentId + * @return + */ + @GetMapping(value = "/simpleTree") + public R getSimpleTree(String deptName, Long parentId) { + return R.ok(sysDeptService.selectSimpleTree(deptName, parentId)); + } + /** * 添加 * diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserController.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserController.java index 6fc91211..56228edd 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserController.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserController.java @@ -29,10 +29,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.bsd.pjcloud.admin.api.dto.UserDTO; import com.bsd.pjcloud.admin.api.dto.UserInfo; import com.bsd.pjcloud.admin.api.entity.SysUser; -import com.bsd.pjcloud.admin.api.vo.SimpleUserAllListVO; -import com.bsd.pjcloud.admin.api.vo.UserExcelFaceVo; -import com.bsd.pjcloud.admin.api.vo.UserExcelVO; -import com.bsd.pjcloud.admin.api.vo.UserVO; +import com.bsd.pjcloud.admin.api.vo.*; import com.bsd.pjcloud.admin.service.SysUserService; import com.bsd.pjcloud.common.core.constant.CommonConstants; import com.bsd.pjcloud.common.core.exception.ErrorCodes; @@ -360,6 +357,19 @@ public class SysUserController { return R.ok(userService.listUserIdByDeptIds(CollUtil.toList(deptIdList))); } + + /** + * 根据部门id查询用户列表 + * @param deptId + * @return + */ +// @Inner + @GetMapping("/getUserIdListByDeptId") + public R> getUserIdListByDeptId(@RequestParam("deptId")Long deptId, + @RequestParam(value = "name",required = false) String name) { + return R.ok(userService.listUserIdByDeptId(deptId,name)); + } + /** * 根据用户名获取用户列表 * diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java index 94ba43d4..a8ca1393 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java @@ -130,4 +130,8 @@ public interface SysDeptService extends IService { List getInnerDept(DeptAllListDto dto); + + + + List> selectSimpleTree(String deptName, Long parentId); } diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserService.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserService.java index cfaa7d60..79890825 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserService.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserService.java @@ -26,10 +26,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.bsd.pjcloud.admin.api.dto.UserDTO; import com.bsd.pjcloud.admin.api.dto.UserInfo; import com.bsd.pjcloud.admin.api.entity.SysUser; -import com.bsd.pjcloud.admin.api.vo.SimpleUserAllListVO; -import com.bsd.pjcloud.admin.api.vo.UserExcelFaceVo; -import com.bsd.pjcloud.admin.api.vo.UserExcelVO; -import com.bsd.pjcloud.admin.api.vo.UserVO; +import com.bsd.pjcloud.admin.api.vo.*; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.flow.task.dto.ProcessNodeRecordAssignUserParamDto; @@ -221,4 +218,13 @@ public interface SysUserService extends IService { * @return */ List listScopeByLikeNameOrByMobileScope(LambdaQueryWrapper eq); + + + /** + * 根据部门id/姓名,获取用户信息 + * @param deptId + * @param name + * @return + */ + List listUserIdByDeptId(Long deptId, String name); } diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java index c961176a..6b3c1497 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java @@ -38,7 +38,6 @@ import com.bsd.pjcloud.admin.api.vo.DeptExcelVO; import com.bsd.pjcloud.admin.api.vo.OrgTreeVO; import com.bsd.pjcloud.admin.mapper.*; import com.bsd.pjcloud.admin.service.SysDeptService; -import com.bsd.pjcloud.common.core.constant.enums.YesNoEnum; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.data.datascope.DataScope; import com.bsd.pjcloud.common.excel.vo.ErrorMessage; @@ -423,6 +422,30 @@ public class SysDeptServiceImpl extends ServiceImpl impl ); } + @Override + public List> selectSimpleTree(String deptName, Long parentId) { + // 查询全部部门 + List deptAllList = deptMapper + .selectList(Wrappers.lambdaQuery().like(StrUtil.isNotBlank(deptName), SysDept::getName, deptName)); + + List> collect = deptAllList.stream() + .filter(dept -> dept.getDeptId().intValue() != dept.getParentId()) + .sorted(Comparator.comparingInt(SysDept::getSortOrder)) + .map(dept -> { + TreeNode treeNode = new TreeNode<>(); + treeNode.setId(dept.getDeptId()); + treeNode.setParentId(dept.getParentId()); + treeNode.setName(dept.getName()); + return treeNode; + }) + .collect(Collectors.toList()); + + List> build = TreeUtil.build(collect, parentId == null ? 0 : parentId); + + return build; + + } + /** * 递归查询所有子节点。 * diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java index 4066c95a..bdb25298 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java @@ -911,6 +911,14 @@ public class SysUserServiceImpl extends ServiceImpl impl return baseMapper.selectListByScope(eq, DataScope.of()); } + @Override + public List listUserIdByDeptId(Long deptId, String name) { + List sysUsers = baseMapper.selectList(Wrappers.lambdaQuery() + .eq(SysUser::getDeptId, deptId) + .like(StrUtil.isNotBlank(name),SysUser::getName, name)); + return com.bsd.pjcloud.common.core.util.BeanUtils.toBean(sysUsers, SimpleUserListVO.class); + } + private SysUserServiceImpl getSelf() { return SpringUtil.getBean(getClass()); }