|
|
@@ -24,6 +24,8 @@ import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Collections;
|
|
|
import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
|
|
|
@@ -110,14 +112,21 @@ public class SmsbDepartmentUserServiceImpl extends ServiceImpl<SmsbDepartmentUse
|
|
|
return super.update(new LambdaUpdateWrapper<>(SmsbDepartmentUserDO.class)
|
|
|
.set(SmsbDepartmentUserDO::getDepartmentId , null)
|
|
|
.set(SmsbDepartmentUserDO::getPath , null)
|
|
|
- .likeRight(SmsbDepartmentUserDO::getPath , path));
|
|
|
+ .likeRight(SmsbDepartmentUserDO::getPath, path));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public Boolean updateUserFirstName(SmsbUserUpdate userUpdate) {
|
|
|
return super.update(new LambdaUpdateWrapper<>(SmsbDepartmentUserDO.class)
|
|
|
- .set(SmsbDepartmentUserDO::getName , userUpdate.getName())
|
|
|
- .eq(SmsbDepartmentUserDO::getUserId , userUpdate.getUserId()));
|
|
|
+ .set(SmsbDepartmentUserDO::getName, userUpdate.getName())
|
|
|
+ .eq(SmsbDepartmentUserDO::getUserId, userUpdate.getUserId()));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean updateDeviceExceptionLevel(SmsbUserExceptionLevelUpdate levelUpdate) {
|
|
|
+ return super.update(new LambdaUpdateWrapper<>(SmsbDepartmentUserDO.class)
|
|
|
+ .set(SmsbDepartmentUserDO::getInformLevel, levelUpdate.getInformLevel())
|
|
|
+ .eq(SmsbDepartmentUserDO::getUserId, levelUpdate.getUserId()));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -162,4 +171,37 @@ public class SmsbDepartmentUserServiceImpl extends ServiceImpl<SmsbDepartmentUse
|
|
|
});
|
|
|
return smsbSimpleUserList;
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取指定org下接收级别<=informLevel的用户
|
|
|
+ *
|
|
|
+ * @param org 指定org
|
|
|
+ * @param informLevel 指定informLevel
|
|
|
+ * @return 指定部门下接收级别<= informLevel的用户
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public List<SmsbSimpleUserCO> listUserByOrgAndInformLevel(String tenant, List<String> org, int informLevel) {
|
|
|
+ List<SmsbDepartmentUserDO> list = new ArrayList<>(this.list(Wrappers.lambdaQuery(SmsbDepartmentUserDO.class)
|
|
|
+ .eq(SmsbDepartmentUserDO::getTenant, tenant)
|
|
|
+ .eq(SmsbDepartmentUserDO::getEnabled, 1)
|
|
|
+ .eq(SmsbDepartmentUserDO::getInformLevel, 9999)));
|
|
|
+ if (!CollectionUtils.isEmpty(org)) {
|
|
|
+
|
|
|
+ LambdaQueryWrapper<SmsbDepartmentUserDO> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+
|
|
|
+ queryWrapper.in(SmsbDepartmentUserDO::getPath, org);
|
|
|
+ queryWrapper.eq(SmsbDepartmentUserDO::getEnabled, 1);
|
|
|
+ queryWrapper.le(SmsbDepartmentUserDO::getInformLevel, informLevel);
|
|
|
+
|
|
|
+ list.addAll(this.list(queryWrapper));
|
|
|
+ }
|
|
|
+
|
|
|
+ List<SmsbSimpleUserCO> smsbSimpleUserList = Lists.newArrayListWithCapacity(list.size());
|
|
|
+ list.forEach(user -> {
|
|
|
+ SmsbSimpleUserCO userCO = new SmsbSimpleUserCO();
|
|
|
+ BeanUtils.copyProperties(user, userCO);
|
|
|
+ smsbSimpleUserList.add(userCO);
|
|
|
+ });
|
|
|
+ return smsbSimpleUserList;
|
|
|
+ }
|
|
|
}
|