绑定父子关系
This commit is contained in:
@@ -152,4 +152,72 @@ public class LbDepartmentUserServiceImpl extends ServiceImpl<LbDepartmentUserMap
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> bindParentUser(String parentUserId,
|
||||
String parentUserName,
|
||||
String childUserId,
|
||||
String childUserName,
|
||||
String tenantId) {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
try {
|
||||
if (parentUserId == null || parentUserId.trim().isEmpty()) {
|
||||
result.put("success", false);
|
||||
result.put("message", "父用户id不能为空");
|
||||
return result;
|
||||
}
|
||||
if (childUserId == null || childUserId.trim().isEmpty()) {
|
||||
result.put("success", false);
|
||||
result.put("message", "子用户id不能为空");
|
||||
return result;
|
||||
}
|
||||
if (tenantId == null || tenantId.trim().isEmpty()) {
|
||||
result.put("success", false);
|
||||
result.put("message", "租户id不能为空");
|
||||
return result;
|
||||
}
|
||||
|
||||
String parentUserIdTrim = parentUserId.trim();
|
||||
String childUserIdTrim = childUserId.trim();
|
||||
String tenantIdTrim = tenantId.trim();
|
||||
|
||||
// 第1步:根据子用户id查询目标记录
|
||||
LambdaQueryWrapper<LbDepartmentUser> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(LbDepartmentUser::getTenantId, tenantIdTrim)
|
||||
.eq(LbDepartmentUser::getUserId, childUserIdTrim);
|
||||
if (childUserName != null && !childUserName.trim().isEmpty()) {
|
||||
queryWrapper.eq(LbDepartmentUser::getName, childUserName.trim());
|
||||
}
|
||||
LbDepartmentUser childUser = this.getOne(queryWrapper, false);
|
||||
if (childUser == null) {
|
||||
result.put("success", false);
|
||||
result.put("message", "未查询到对应子用户");
|
||||
return result;
|
||||
}
|
||||
|
||||
// 第2步:设置父用户id
|
||||
childUser.setParentId(parentUserIdTrim);
|
||||
childUser.setUpdateTime(LocalDateTime.now());
|
||||
|
||||
// 第3步:更新数据库表
|
||||
boolean ok = this.updateById(childUser);
|
||||
result.put("success", ok);
|
||||
result.put("message", ok ? "绑定父用户成功" : "绑定父用户失败");
|
||||
if (ok) {
|
||||
Map<String, Object> data = new HashMap<>();
|
||||
data.put("parentUserId", parentUserIdTrim);
|
||||
data.put("parentUserName", parentUserName);
|
||||
data.put("childUserId", childUserIdTrim);
|
||||
data.put("childUserName", childUser.getName());
|
||||
data.put("tenantId", tenantIdTrim);
|
||||
data.put("record", this.getById(childUser.getId()));
|
||||
result.put("data", data);
|
||||
}
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
result.put("success", false);
|
||||
result.put("message", "绑定父子用户异常:" + e.getMessage());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user