|
@ -4,22 +4,18 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|
|
import com.epmet.commons.rocketmq.messages.OperationLogMQMsg; |
|
|
|
|
|
import com.epmet.commons.tools.constant.ServiceConstant; |
|
|
import com.epmet.commons.tools.constant.ServiceConstant; |
|
|
import com.epmet.commons.tools.exception.EpmetErrorCode; |
|
|
import com.epmet.commons.tools.exception.EpmetErrorCode; |
|
|
import com.epmet.commons.tools.exception.RenException; |
|
|
|
|
|
import com.epmet.commons.tools.feign.ResultDataResolver; |
|
|
import com.epmet.commons.tools.feign.ResultDataResolver; |
|
|
import com.epmet.commons.tools.utils.Result; |
|
|
import com.epmet.commons.tools.utils.Result; |
|
|
import com.epmet.dao.LogOperationDao; |
|
|
import com.epmet.dao.LogOperationDao; |
|
|
import com.epmet.dto.CustomerStaffDTO; |
|
|
import com.epmet.dto.CustomerStaffDTO; |
|
|
import com.epmet.dto.form.CustomerStaffFormDTO; |
|
|
import com.epmet.dto.form.CustomerStaffFormDTO; |
|
|
import com.epmet.dto.form.ThirdCustomerStaffFormDTO; |
|
|
|
|
|
import com.epmet.dto.region.LogOperationResultDTO; |
|
|
import com.epmet.dto.region.LogOperationResultDTO; |
|
|
import com.epmet.entity.LogOperationEntity; |
|
|
import com.epmet.entity.LogOperationEntity; |
|
|
import com.epmet.enums.LogOperationTypeEnum; |
|
|
import com.epmet.enums.LogOperationTypeEnum; |
|
|
import com.epmet.feign.EpmetUserOpenFeignClient; |
|
|
import com.epmet.feign.EpmetUserOpenFeignClient; |
|
|
import com.epmet.service.LogOperationService; |
|
|
import com.epmet.service.LogOperationService; |
|
|
import com.github.pagehelper.PageHelper; |
|
|
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.stereotype.Service; |
|
|
import org.springframework.stereotype.Service; |
|
@ -41,7 +37,7 @@ public class LogOperationServiceImpl implements LogOperationService, ResultDataR |
|
|
private EpmetUserOpenFeignClient userOpenFeignClient; |
|
|
private EpmetUserOpenFeignClient userOpenFeignClient; |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public void log(OperationLogMQMsg msg, String category) { |
|
|
public void log(LogOperationEntity msg) { |
|
|
LambdaQueryWrapper<LogOperationEntity> w = new LambdaQueryWrapper<>(); |
|
|
LambdaQueryWrapper<LogOperationEntity> w = new LambdaQueryWrapper<>(); |
|
|
w.eq(LogOperationEntity::getType, msg.getType()); |
|
|
w.eq(LogOperationEntity::getType, msg.getType()); |
|
|
w.eq(LogOperationEntity::getTargetId, msg.getTargetId()); |
|
|
w.eq(LogOperationEntity::getTargetId, msg.getTargetId()); |
|
@ -53,24 +49,19 @@ public class LogOperationServiceImpl implements LogOperationService, ResultDataR |
|
|
// 该日志已存在,不做任何操作
|
|
|
// 该日志已存在,不做任何操作
|
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
logOperationDao.insert(msg); |
|
|
LogOperationEntity insert = new LogOperationEntity(); |
|
|
|
|
|
insert.setContent(msg.getContent()); |
|
|
|
|
|
insert.setOperatingTime(msg.getOperatingTime()); |
|
|
|
|
|
insert.setOperatorId(msg.getOperatorId()); |
|
|
|
|
|
insert.setTargetId(msg.getTargetId()); |
|
|
|
|
|
insert.setType(msg.getType()); |
|
|
|
|
|
insert.setCategory(category); |
|
|
|
|
|
logOperationDao.insert(insert); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public List<LogOperationResultDTO> listOperationLogs(String operatorName, String operatorMobile, String customerId, Integer pageNo, Integer pageSize) { |
|
|
public List<LogOperationResultDTO> listOperationLogs(String condition, String customerId, Integer pageNo, Integer pageSize) { |
|
|
// 1.条件查询
|
|
|
// 1.条件查询
|
|
|
if (StringUtils.isNotBlank(operatorMobile)) { |
|
|
List<LogOperationResultDTO> logDtos = listByOperatorMobile(condition, customerId, pageNo, pageSize); |
|
|
return listByOperatorMobile(operatorMobile, customerId, pageNo, pageSize); |
|
|
if (CollectionUtils.isEmpty(logDtos)) { |
|
|
} else if (StringUtils.isNotBlank(operatorName)) { |
|
|
logDtos = listByOperatorName(condition, pageNo, pageSize); |
|
|
return listByOperatorName(operatorName, pageNo, pageSize); |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (CollectionUtils.isEmpty(logDtos)) { |
|
|
|
|
|
return new ArrayList<>(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 2.直接分页查询
|
|
|
// 2.直接分页查询
|
|
@ -78,10 +69,10 @@ public class LogOperationServiceImpl implements LogOperationService, ResultDataR |
|
|
LambdaQueryWrapper<LogOperationEntity> w = new LambdaQueryWrapper<>(); |
|
|
LambdaQueryWrapper<LogOperationEntity> w = new LambdaQueryWrapper<>(); |
|
|
w.orderByDesc(LogOperationEntity::getOperatingTime); |
|
|
w.orderByDesc(LogOperationEntity::getOperatingTime); |
|
|
IPage<LogOperationEntity> iPage = logOperationDao.selectPage(new Page<>(pageNo, pageSize), w); |
|
|
IPage<LogOperationEntity> iPage = logOperationDao.selectPage(new Page<>(pageNo, pageSize), w); |
|
|
List<LogOperationEntity> logs = iPage.getRecords(); |
|
|
List<LogOperationEntity> logEntities = iPage.getRecords(); |
|
|
List<String> userIds = logs.stream().map(l -> l.getOperatorId()).collect(Collectors.toList()); |
|
|
List<String> userIds = logEntities.stream().map(l -> l.getOperatorId()).collect(Collectors.toList()); |
|
|
|
|
|
|
|
|
return convertLogOperationEntity2DTO(logs, getStaffMapByUserIds(userIds)); |
|
|
return convertLogOperationEntity2DTO(logEntities, getStaffMapByUserIds(userIds)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private Map<String, CustomerStaffDTO> getStaffMapByUserIds(List<String> userIds) { |
|
|
private Map<String, CustomerStaffDTO> getStaffMapByUserIds(List<String> userIds) { |
|
|