package com.dsh.guns.modular.system.service.impl;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.dsh.course.feignClient.account.UserClient;
|
import com.dsh.course.feignClient.account.model.GetUserInfoByNameOrPhone;
|
import com.dsh.course.feignClient.driver.DriverClient;
|
import com.dsh.course.mapper.TFeedbackMapper;
|
import com.dsh.guns.modular.system.model.TFeedback;
|
import com.dsh.guns.modular.system.service.ITFeedbackService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* <p>
|
* 反馈管理 服务实现类
|
* </p>
|
*
|
* @author 吕雪
|
* @since 2020-06-10
|
*/
|
@Service
|
public class TFeedbackServiceImpl extends ServiceImpl<TFeedbackMapper, TFeedback> implements ITFeedbackService {
|
|
@Autowired
|
private UserClient userClient;
|
|
@Autowired
|
private DriverClient driverClient;
|
@Override
|
public List<Map<String, Object>> getFeedbackList(Page<Map<String, Object>> page, String beginTime, String endTime, Integer type, String name, String phone, Integer state) {
|
if (type == 2) {
|
List<Map<String, Object>> userInfoByNameOrPhone = driverClient.getDriverInfoByNameOrPhone(new GetUserInfoByNameOrPhone(name, phone));
|
ArrayList<Integer> integers = new ArrayList<>();
|
if (userInfoByNameOrPhone.size() > 0) {
|
for (Map<String, Object> stringObjectMap : userInfoByNameOrPhone) {
|
integers.add((Integer) stringObjectMap.get("id"));
|
}
|
} else {
|
integers.add(-1);
|
}
|
List<Map<String, Object>> feedbackList = this.baseMapper.getFeedbackList(page, beginTime, endTime, type, integers, state);
|
for (Map<String, Object> stringObjectMap : feedbackList) {
|
for (Map<String, Object> objectMap : userInfoByNameOrPhone) {
|
if (stringObjectMap.get("userId").toString().equals(objectMap.get("id").toString())) {
|
stringObjectMap.put("userName", objectMap.get("nickName").toString());
|
stringObjectMap.put("userPhone", objectMap.get("phone").toString());
|
}
|
}
|
}
|
return feedbackList;
|
}else {
|
|
List<Map<String, Object>> userInfoByNameOrPhone = userClient.getUserInfoByNameOrPhone(new GetUserInfoByNameOrPhone(name, phone));
|
ArrayList<Integer> integers = new ArrayList<>();
|
if (userInfoByNameOrPhone.size() > 0) {
|
for (Map<String, Object> stringObjectMap : userInfoByNameOrPhone) {
|
integers.add((Integer) stringObjectMap.get("id"));
|
}
|
} else {
|
integers.add(-1);
|
}
|
List<Map<String, Object>> feedbackList = this.baseMapper.getFeedbackList(page, beginTime, endTime, type, integers, state);
|
for (Map<String, Object> stringObjectMap : feedbackList) {
|
for (Map<String, Object> objectMap : userInfoByNameOrPhone) {
|
if (stringObjectMap.get("userId").toString().equals(objectMap.get("id").toString())) {
|
stringObjectMap.put("userName", objectMap.get("nickName").toString());
|
stringObjectMap.put("userPhone", objectMap.get("phone").toString());
|
}
|
}
|
}
|
return feedbackList;
|
|
|
|
|
|
|
|
}
|
}
|
}
|