|
@@ -1,14 +1,19 @@
|
|
|
package com.fs.course.service.impl;
|
|
package com.fs.course.service.impl;
|
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
+import com.fs.common.core.domain.R;
|
|
|
import com.fs.common.exception.CustomException;
|
|
import com.fs.common.exception.CustomException;
|
|
|
import com.fs.course.domain.FsUserCompanyUser;
|
|
import com.fs.course.domain.FsUserCompanyUser;
|
|
|
|
|
+import com.fs.course.mapper.FsUserCompanyBindMapper;
|
|
|
import com.fs.course.mapper.FsUserCompanyUserMapper;
|
|
import com.fs.course.mapper.FsUserCompanyUserMapper;
|
|
|
import com.fs.course.service.IFsUserCompanyUserService;
|
|
import com.fs.course.service.IFsUserCompanyUserService;
|
|
|
import com.fs.qw.dto.UserProjectDTO;
|
|
import com.fs.qw.dto.UserProjectDTO;
|
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
@@ -24,6 +29,11 @@ import java.util.Objects;
|
|
|
@Service
|
|
@Service
|
|
|
public class FsUserCompanyUserServiceImpl extends ServiceImpl<FsUserCompanyUserMapper, FsUserCompanyUser> implements IFsUserCompanyUserService {
|
|
public class FsUserCompanyUserServiceImpl extends ServiceImpl<FsUserCompanyUserMapper, FsUserCompanyUser> implements IFsUserCompanyUserService {
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private FsUserCompanyUserMapper fsUserCompanyUserMapper;
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private FsUserCompanyBindMapper fsUserCompanyBindMapper;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 查询微信用户和销售关系
|
|
* 查询微信用户和销售关系
|
|
|
*
|
|
*
|
|
@@ -223,4 +233,51 @@ public class FsUserCompanyUserServiceImpl extends ServiceImpl<FsUserCompanyUserM
|
|
|
}
|
|
}
|
|
|
return baseMapper.batchUpdateStatus(ids, status) > 0;
|
|
return baseMapper.batchUpdateStatus(ids, status) > 0;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 会员解绑
|
|
|
|
|
+ * @param ids
|
|
|
|
|
+ * @return
|
|
|
|
|
+ */
|
|
|
|
|
+ @Override
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
|
|
+ public R deleFsUserCompanyUserByIds(String[] ids) {
|
|
|
|
|
+ if (ids == null || ids.length == 0) {
|
|
|
|
|
+ return R.error("解绑数据不能为空!");
|
|
|
|
|
+ }
|
|
|
|
|
+ try {
|
|
|
|
|
+ Long[] idArray = convertToLongArray(ids);
|
|
|
|
|
+ List<FsUserCompanyUser> FsUserCompanyUsers = fsUserCompanyUserMapper.getFsUserCompanyUserByIds(idArray);
|
|
|
|
|
+ fsUserCompanyUserMapper.deleteFsUserCompanyUserByIds(idArray);
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(FsUserCompanyUsers)) {
|
|
|
|
|
+ for (FsUserCompanyUser fsUserCompanyUser : FsUserCompanyUsers) {
|
|
|
|
|
+ fsUserCompanyBindMapper.deleteFsUserCompanyBindByCompanyUserIdAndFsUserId(fsUserCompanyUser.getCompanyUserId(), fsUserCompanyUser.getUserId());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ throw new RuntimeException("解绑失败", e);
|
|
|
|
|
+ }
|
|
|
|
|
+ return R.ok();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public static Long[] convertToLongArray(String[] stringArray) {
|
|
|
|
|
+ if (stringArray == null || stringArray.length == 0) {
|
|
|
|
|
+ return new Long[0];
|
|
|
|
|
+ }
|
|
|
|
|
+ Long[] longArray = new Long[stringArray.length];
|
|
|
|
|
+
|
|
|
|
|
+ for (int i = 0; i < stringArray.length; i++) {
|
|
|
|
|
+ String str = stringArray[i];
|
|
|
|
|
+ try {
|
|
|
|
|
+ if (str == null || str.trim().isEmpty()) {
|
|
|
|
|
+ throw new NumberFormatException("空字符串无法转换为 long");
|
|
|
|
|
+ }
|
|
|
|
|
+ longArray[i] = Long.parseLong(str.trim());
|
|
|
|
|
+ } catch (NumberFormatException e) {
|
|
|
|
|
+ throw new IllegalArgumentException(
|
|
|
|
|
+ String.format("索引 %d 的元素 \"%s\" 无法转换为 long", i, str), e);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return longArray;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|