From ebddc5c51ff07ea3567d7db6e32b2fcaab90eb20 Mon Sep 17 00:00:00 2001 From: zt Date: Fri, 17 Oct 2025 15:37:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusProjectTeamMemberCreateReq.java | 6 ++++++ .../impl/BusProjectTeamMemberServiceImpl.java | 6 ++++++ .../controller/system/SysUserController.java | 2 +- .../dromara/system/service/ISysUserService.java | 4 +++- .../system/service/impl/SysUserServiceImpl.java | 17 ++++++++++------- 5 files changed, 26 insertions(+), 9 deletions(-) diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/domain/dto/projectteammember/BusProjectTeamMemberCreateReq.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/domain/dto/projectteammember/BusProjectTeamMemberCreateReq.java index 854dce1b..432f6310 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/domain/dto/projectteammember/BusProjectTeamMemberCreateReq.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/domain/dto/projectteammember/BusProjectTeamMemberCreateReq.java @@ -1,5 +1,6 @@ package org.dromara.project.domain.dto.projectteammember; +import jakarta.validation.constraints.NotNull; import lombok.Data; import java.io.Serial; @@ -45,4 +46,9 @@ public class BusProjectTeamMemberCreateReq implements Serializable { */ private String remark; + /** + * 分包公司id + */ + private Long contractorId; + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/service/impl/BusProjectTeamMemberServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/service/impl/BusProjectTeamMemberServiceImpl.java index fda6ac2b..006c815f 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/service/impl/BusProjectTeamMemberServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/project/service/impl/BusProjectTeamMemberServiceImpl.java @@ -176,11 +176,13 @@ public class BusProjectTeamMemberServiceImpl extends ServiceImpl constructionUserLuw = Wrappers.lambdaUpdate(SubConstructionUser.class) .eq(SubConstructionUser::getId, constructionUser.getId()) .set(SubConstructionUser::getProjectId, req.getProjectId()) + .set(req.getContractorId()!=null,SubConstructionUser::getContractorId, req.getContractorId()) .set(SubConstructionUser::getTeamId, projectTeamMember.getTeamId()) .set(SubConstructionUser::getTeamName, projectTeam.getTeamName()) .set(SubConstructionUser::getEntryDate, new Date()) .set(SubConstructionUser::getLeaveDate, null) .set(SubConstructionUser::getExitStatus, "0") + .set(SubConstructionUser::getUserRole, "0") .set(StrUtil.isNotBlank(req.getTypeOfWork()),SubConstructionUser::getTypeOfWork,req.getTypeOfWork()) .set(constructionUser.getFirstDate() == null, SubConstructionUser::getFirstDate, LocalDate.now()); constructionUserService.update(constructionUserLuw); @@ -212,6 +214,10 @@ public class BusProjectTeamMemberServiceImpl extends ServiceImpl updateFb(@PathVariable("userId") Long userId, @PathVariable("contractorId") Long contractorId) { - return R.ok(userService.updateFb(userId, contractorId)); + return R.ok(userService.updateFb(userId, contractorId,true)); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java index e8635461..52f17c6e 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java @@ -275,11 +275,13 @@ public interface ISysUserService { List selectUserListByAppUserType(String appUserType,Long projectId,Long contractorId); - Boolean updateFb(Long userId,Long contractorId); + Boolean updateFb(Long userId,Long contractorId,Boolean isSub); List selectUserByRoleIdAndProjectId(Long roleId,Long projectId); List selectUserByRoleIdsAndProjectId(List roleIds,Long projectId); String queryNameById(Long id); + + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index dfe19444..f0dd2c99 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -1223,17 +1223,20 @@ public class SysUserServiceImpl implements ISysUserService, UserService { } @Override - public Boolean updateFb(Long userId,Long contractorId) { + public Boolean updateFb(Long userId,Long contractorId,Boolean isSub) { SysUser sysUser = baseMapper.selectById(userId); sysUser.setContractorId(contractorId); - SubConstructionUser constructionUser = constructionUserService.lambdaQuery() - .eq(SubConstructionUser::getSysUserId, userId) - .one(); - if(constructionUser != null){ - constructionUser.setContractorId(contractorId); - constructionUserService.updateById(constructionUser); + if(isSub){ + SubConstructionUser constructionUser = constructionUserService.lambdaQuery() + .eq(SubConstructionUser::getSysUserId, userId) + .one(); + if(constructionUser != null){ + constructionUser.setContractorId(contractorId); + constructionUserService.updateById(constructionUser); + } } + return baseMapper.updateById(sysUser)>0; }