|
@@ -1,29 +1,27 @@
|
|
|
package com.fdkankan.manage.service.impl;
|
|
package com.fdkankan.manage.service.impl;
|
|
|
|
|
|
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.fdkankan.manage.common.PageInfo;
|
|
import com.fdkankan.manage.common.PageInfo;
|
|
|
import com.fdkankan.manage.common.ResultCode;
|
|
import com.fdkankan.manage.common.ResultCode;
|
|
|
-import com.fdkankan.manage.entity.FeedbackOption;
|
|
|
|
|
-import com.fdkankan.manage.entity.SysUser;
|
|
|
|
|
|
|
+import com.fdkankan.manage.entity.*;
|
|
|
import com.fdkankan.manage.exception.BusinessException;
|
|
import com.fdkankan.manage.exception.BusinessException;
|
|
|
import com.fdkankan.manage.mapper.IFeedbackOptionMapper;
|
|
import com.fdkankan.manage.mapper.IFeedbackOptionMapper;
|
|
|
-import com.fdkankan.manage.service.IFeedbackOptionService;
|
|
|
|
|
|
|
+import com.fdkankan.manage.service.*;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
-import com.fdkankan.manage.service.ISysUserService;
|
|
|
|
|
import com.fdkankan.manage.vo.request.FeedbackOptionParam;
|
|
import com.fdkankan.manage.vo.request.FeedbackOptionParam;
|
|
|
|
|
+import com.fdkankan.manage.vo.response.CaseVo;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
import java.sql.BatchUpdateException;
|
|
import java.sql.BatchUpdateException;
|
|
|
-import java.util.HashMap;
|
|
|
|
|
-import java.util.HashSet;
|
|
|
|
|
-import java.util.List;
|
|
|
|
|
-import java.util.Set;
|
|
|
|
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -48,12 +46,14 @@ public class FeedbackOptionServiceImpl extends ServiceImpl<IFeedbackOptionMapper
|
|
|
Page<FeedbackOption> page = this.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper);
|
|
Page<FeedbackOption> page = this.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper);
|
|
|
Set<Long> sysIds = page.getRecords().stream().map(FeedbackOption::getSysUserId).collect(Collectors.toSet());
|
|
Set<Long> sysIds = page.getRecords().stream().map(FeedbackOption::getSysUserId).collect(Collectors.toSet());
|
|
|
HashMap<Long, SysUser> byIds = sysUserService.getByIds(sysIds);
|
|
HashMap<Long, SysUser> byIds = sysUserService.getByIds(sysIds);
|
|
|
|
|
+
|
|
|
for (FeedbackOption record : page.getRecords()) {
|
|
for (FeedbackOption record : page.getRecords()) {
|
|
|
SysUser sysUser = byIds.get(record.getSysUserId());
|
|
SysUser sysUser = byIds.get(record.getSysUserId());
|
|
|
if(sysUser != null){
|
|
if(sysUser != null){
|
|
|
record.setSysNickName(sysUser.getNickName());
|
|
record.setSysNickName(sysUser.getNickName());
|
|
|
record.setSysUserName(sysUser.getUserName());
|
|
record.setSysUserName(sysUser.getUserName());
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
return PageInfo.PageInfo(page);
|
|
return PageInfo.PageInfo(page);
|
|
|
}
|
|
}
|
|
@@ -76,6 +76,14 @@ public class FeedbackOptionServiceImpl extends ServiceImpl<IFeedbackOptionMapper
|
|
|
this.updateById(feedbackOption);
|
|
this.updateById(feedbackOption);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ ICaseService caseService;
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ ISceneProService sceneProService;
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ IScenePlusService scenePlusService;
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ ICameraDetailService cameraDetailService;
|
|
|
@Override
|
|
@Override
|
|
|
public void delete(FeedbackOption param) {
|
|
public void delete(FeedbackOption param) {
|
|
|
if(param.getId() == null){
|
|
if(param.getId() == null){
|
|
@@ -86,6 +94,49 @@ public class FeedbackOptionServiceImpl extends ServiceImpl<IFeedbackOptionMapper
|
|
|
throw new BusinessException(ResultCode.FEEDBACK_OPTION_DELETE_ERROR);
|
|
throw new BusinessException(ResultCode.FEEDBACK_OPTION_DELETE_ERROR);
|
|
|
}
|
|
}
|
|
|
this.removeById(param.getId());
|
|
this.removeById(param.getId());
|
|
|
|
|
+
|
|
|
|
|
+ LambdaQueryWrapper<FeedbackOption> wrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
+ wrapper.like(FeedbackOption::getAiOption,param.getId());
|
|
|
|
|
+ List<FeedbackOption> list = this.list(wrapper);
|
|
|
|
|
+ for (FeedbackOption option : list) {
|
|
|
|
|
+ JSONArray aiOption = option.getAiOption();
|
|
|
|
|
+ aiOption.removeAll(Arrays.asList(param.getId()));
|
|
|
|
|
+ aiOption.removeAll(Arrays.asList(String.valueOf(param.getId())));
|
|
|
|
|
+
|
|
|
|
|
+ LambdaUpdateWrapper<FeedbackOption> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ updateWrapper.eq(FeedbackOption::getId,option.getId());
|
|
|
|
|
+ updateWrapper.set(FeedbackOption::getAiOption,aiOption.toJSONString());
|
|
|
|
|
+ this.update(updateWrapper);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ LambdaQueryWrapper<Case> wrapper2 = new LambdaQueryWrapper<>();
|
|
|
|
|
+ wrapper2.like(Case::getFeedbackOptionIds,param.getId());
|
|
|
|
|
+ List<Case> list2 = caseService.list(wrapper2);
|
|
|
|
|
+ for (Case option : list2) {
|
|
|
|
|
+ JSONArray aiOption = option.getFeedbackOptionIds();
|
|
|
|
|
+ aiOption.removeAll(Arrays.asList(param.getId()));
|
|
|
|
|
+ aiOption.removeAll(Arrays.asList(String.valueOf(param.getId())));
|
|
|
|
|
+
|
|
|
|
|
+ LambdaUpdateWrapper<Case> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ updateWrapper.eq(Case::getId,option.getId());
|
|
|
|
|
+ updateWrapper.set(Case::getFeedbackOptionIds,aiOption.toJSONString());
|
|
|
|
|
+ caseService.update(updateWrapper);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ LambdaUpdateWrapper<ScenePro> sw = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ sw.eq(ScenePro::getFeedbackOptionId,param.getId());
|
|
|
|
|
+ sw.set(ScenePro::getFeedbackOptionId,null);
|
|
|
|
|
+ sceneProService.update(sw);
|
|
|
|
|
+
|
|
|
|
|
+ LambdaUpdateWrapper<ScenePlus> sw2 = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ sw2.eq(ScenePlus::getFeedbackOptionId,param.getId());
|
|
|
|
|
+ sw2.set(ScenePlus::getFeedbackOptionId,null);
|
|
|
|
|
+ scenePlusService.update(sw2);
|
|
|
|
|
+
|
|
|
|
|
+ LambdaUpdateWrapper<CameraDetail> sw3 = new LambdaUpdateWrapper<>();
|
|
|
|
|
+ sw3.eq(CameraDetail::getFeedbackOptionId,param.getId());
|
|
|
|
|
+ sw3.set(CameraDetail::getFeedbackOptionId,null);
|
|
|
|
|
+ cameraDetailService.update(sw3);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|