|
@@ -11,7 +11,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
import org.springframework.util.CollectionUtils;
|
|
|
import shop.alien.entity.result.R;
|
|
import shop.alien.entity.result.R;
|
|
|
import shop.alien.entity.store.LifeFeedback;
|
|
import shop.alien.entity.store.LifeFeedback;
|
|
|
-import shop.alien.entity.store.LifeImg;
|
|
|
|
|
import shop.alien.entity.store.LifeLog;
|
|
import shop.alien.entity.store.LifeLog;
|
|
|
import shop.alien.entity.store.dto.FeedbackReplyDto;
|
|
import shop.alien.entity.store.dto.FeedbackReplyDto;
|
|
|
import shop.alien.entity.store.dto.LifeFeedbackDto;
|
|
import shop.alien.entity.store.dto.LifeFeedbackDto;
|
|
@@ -19,7 +18,6 @@ import shop.alien.entity.store.vo.LifeFeedbackVo;
|
|
|
import shop.alien.mapper.LifeFeedbackMapper;
|
|
import shop.alien.mapper.LifeFeedbackMapper;
|
|
|
import shop.alien.mapper.LifeLogMapper;
|
|
import shop.alien.mapper.LifeLogMapper;
|
|
|
import shop.alien.store.service.LifeFeedbackService;
|
|
import shop.alien.store.service.LifeFeedbackService;
|
|
|
-import shop.alien.store.service.LifeImgService;
|
|
|
|
|
|
|
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
@@ -34,7 +32,6 @@ import java.util.List;
|
|
|
public class LifeFeedbackServiceImpl extends ServiceImpl<LifeFeedbackMapper, LifeFeedback> implements LifeFeedbackService {
|
|
public class LifeFeedbackServiceImpl extends ServiceImpl<LifeFeedbackMapper, LifeFeedback> implements LifeFeedbackService {
|
|
|
|
|
|
|
|
private final LifeFeedbackMapper lifeFeedbackMapper;
|
|
private final LifeFeedbackMapper lifeFeedbackMapper;
|
|
|
- private final LifeImgService lifeImgService;
|
|
|
|
|
private final LifeLogMapper lifeLogMapper;
|
|
private final LifeLogMapper lifeLogMapper;
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -67,23 +64,7 @@ public class LifeFeedbackServiceImpl extends ServiceImpl<LifeFeedbackMapper, Lif
|
|
|
return R.fail("提交反馈失败");
|
|
return R.fail("提交反馈失败");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 3. 保存附件图片(使用批量插入)
|
|
|
|
|
- if (!CollectionUtils.isEmpty(dto.getImgUrlList())) {
|
|
|
|
|
- List<LifeImg> imgList = new java.util.ArrayList<>();
|
|
|
|
|
- int sort = 1;
|
|
|
|
|
- for (String imgUrl : dto.getImgUrlList()) {
|
|
|
|
|
- LifeImg img = new LifeImg();
|
|
|
|
|
- img.setFeedbackId(feedback.getId());
|
|
|
|
|
- img.setImgUrl(imgUrl);
|
|
|
|
|
- img.setImgSort(sort++);
|
|
|
|
|
- img.setCreatedTime(new Date());
|
|
|
|
|
- img.setCreatedUserId(dto.getUserId());
|
|
|
|
|
- imgList.add(img);
|
|
|
|
|
- }
|
|
|
|
|
- lifeImgService.batchSave(imgList);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- // 4. 记录日志
|
|
|
|
|
|
|
+ // 3. 记录日志
|
|
|
saveLog("用户提交反馈,ID:" + feedback.getId());
|
|
saveLog("用户提交反馈,ID:" + feedback.getId());
|
|
|
|
|
|
|
|
return R.success("提交成功");
|
|
return R.success("提交成功");
|
|
@@ -134,7 +115,7 @@ public class LifeFeedbackServiceImpl extends ServiceImpl<LifeFeedbackMapper, Lif
|
|
|
// 4. 更新原始反馈的处理状态和跟进人员(使用MyBatis Plus的updateById方法)
|
|
// 4. 更新原始反馈的处理状态和跟进人员(使用MyBatis Plus的updateById方法)
|
|
|
LifeFeedback updateFeedback = new LifeFeedback();
|
|
LifeFeedback updateFeedback = new LifeFeedback();
|
|
|
updateFeedback.setId(dto.getFeedbackId());
|
|
updateFeedback.setId(dto.getFeedbackId());
|
|
|
- updateFeedback.setHandleStatus(1); // 处理中
|
|
|
|
|
|
|
+ updateFeedback.setHandleStatus(2); // 已完成
|
|
|
updateFeedback.setFollowUpStaff(dto.getStaffId());
|
|
updateFeedback.setFollowUpStaff(dto.getStaffId());
|
|
|
updateFeedback.setUpdatedTime(new Date());
|
|
updateFeedback.setUpdatedTime(new Date());
|
|
|
updateFeedback.setUpdatedUserId(dto.getStaffId());
|
|
updateFeedback.setUpdatedUserId(dto.getStaffId());
|
|
@@ -158,13 +139,6 @@ public class LifeFeedbackServiceImpl extends ServiceImpl<LifeFeedbackMapper, Lif
|
|
|
IPage<LifeFeedbackVo> voPage = lifeFeedbackMapper.selectFeedbackListWithStaff(
|
|
IPage<LifeFeedbackVo> voPage = lifeFeedbackMapper.selectFeedbackListWithStaff(
|
|
|
pageParam, userId, feedbackSource, 1, null
|
|
pageParam, userId, feedbackSource, 1, null
|
|
|
);
|
|
);
|
|
|
-
|
|
|
|
|
- // 为每条记录查询附件图片
|
|
|
|
|
- voPage.getRecords().forEach(vo -> {
|
|
|
|
|
- List<String> imgUrls = lifeImgService.getImgUrlsByFeedbackId(vo.getId());
|
|
|
|
|
- vo.setImgUrlList(imgUrls);
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
return voPage;
|
|
return voPage;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
log.error("查询反馈列表失败", e);
|
|
log.error("查询反馈列表失败", e);
|
|
@@ -181,11 +155,7 @@ public class LifeFeedbackServiceImpl extends ServiceImpl<LifeFeedbackMapper, Lif
|
|
|
return R.fail("反馈记录不存在");
|
|
return R.fail("反馈记录不存在");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 2. 查询附件图片
|
|
|
|
|
- List<String> imgUrls = lifeImgService.getImgUrlsByFeedbackId(feedbackId);
|
|
|
|
|
- vo.setImgUrlList(imgUrls);
|
|
|
|
|
-
|
|
|
|
|
- // 3. 查询平台回复列表(如果是主动反馈)
|
|
|
|
|
|
|
+ // 2. 查询平台回复列表(如果是主动反馈)
|
|
|
if (vo.getFeedbackWay() == 1) {
|
|
if (vo.getFeedbackWay() == 1) {
|
|
|
List<LifeFeedbackVo> replyList = lifeFeedbackMapper.selectPlatformReplies(
|
|
List<LifeFeedbackVo> replyList = lifeFeedbackMapper.selectPlatformReplies(
|
|
|
vo.getUserId(), vo.getFeedbackSource(), vo.getFeedbackTime()
|
|
vo.getUserId(), vo.getFeedbackSource(), vo.getFeedbackTime()
|
|
@@ -200,29 +170,6 @@ public class LifeFeedbackServiceImpl extends ServiceImpl<LifeFeedbackMapper, Lif
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- @Override
|
|
|
|
|
- public R<String> updateHandleStatus(Integer feedbackId, Integer handleStatus, Integer staffId) {
|
|
|
|
|
- try {
|
|
|
|
|
- // 使用MyBatis Plus的updateById方法
|
|
|
|
|
- LifeFeedback feedback = new LifeFeedback();
|
|
|
|
|
- feedback.setId(feedbackId);
|
|
|
|
|
- feedback.setHandleStatus(handleStatus);
|
|
|
|
|
- feedback.setFollowUpStaff(staffId);
|
|
|
|
|
- feedback.setUpdatedTime(new Date());
|
|
|
|
|
- feedback.setUpdatedUserId(staffId);
|
|
|
|
|
-
|
|
|
|
|
- boolean result = this.updateById(feedback);
|
|
|
|
|
- if (result) {
|
|
|
|
|
- saveLog("更新反馈处理状态,反馈ID:" + feedbackId + ",状态:" + handleStatus);
|
|
|
|
|
- return R.success("更新成功");
|
|
|
|
|
- }
|
|
|
|
|
- return R.fail("更新失败");
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("更新反馈处理状态失败", e);
|
|
|
|
|
- return R.fail("更新失败:" + e.getMessage());
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* 保存操作日志
|
|
* 保存操作日志
|
|
|
*/
|
|
*/
|