package cn.gistack.alerts.sms.service.impl;
|
|
import cn.gistack.alerts.alarmRule.service.AlarmRuleService;
|
import cn.gistack.alerts.sms.entity.SmsRecord;
|
import cn.gistack.alerts.sms.mapper.SmsRecordMapper;
|
import cn.gistack.alerts.sms.service.ISmsRecordService;
|
import cn.gistack.alerts.sms.vo.SmsRecordVO;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.apache.logging.log4j.util.Strings;
|
import org.springblade.core.log.exception.ServiceException;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 短信发送记录
|
* @author zhongrj
|
*/
|
@Service
|
public class SmsRecordServiceImpl extends ServiceImpl<SmsRecordMapper, SmsRecord> implements ISmsRecordService {
|
|
@Autowired
|
private AlarmRuleService alarmRuleService;
|
|
/**
|
* 自定义分页列表查询
|
* @param page 分页查询对象
|
* @param smsRecord
|
* @return
|
*/
|
@Override
|
public Object selectSmsRecordPage(IPage<SmsRecordVO> page, SmsRecordVO smsRecord) {
|
if (null!=smsRecord.getIsExport()){
|
// 导出,不分页
|
return baseMapper.selectSmsRecordPage(null,smsRecord);
|
}
|
// 查询返回
|
return page.setRecords(baseMapper.selectSmsRecordPage(page,smsRecord));
|
}
|
|
/**
|
* 批量插入记录
|
* @param list
|
* @return
|
*/
|
@Override
|
public int batchSaveSendRecord(List<SmsRecord> list) {
|
return baseMapper.batchSaveSendRecord(list);
|
}
|
|
/**
|
* 自定义分页列表查询
|
* @param page 分页查询对象
|
* @param smsRecord
|
* @return
|
*/
|
@Override
|
public Object msgPage(IPage<SmsRecordVO> page, SmsRecordVO smsRecord) {
|
List<String> list = new ArrayList<>();
|
// 判断是否为一级目录
|
if (null!=smsRecord.getSmsType() && smsRecord.getSmsType().length()>1){
|
// 查询对应的短信模板ID 集合
|
list = alarmRuleService.getAlarmRuleDetailList(smsRecord.getSmsType());
|
// 设置类型为null
|
smsRecord.setSmsType("");
|
}
|
if (!Strings.isBlank(smsRecord.getType()) && smsRecord.getType().equals("1")){
|
// 查询短信
|
return page.setRecords(baseMapper.smsPage(page,smsRecord,list));
|
}
|
if (!Strings.isBlank(smsRecord.getType()) && smsRecord.getType().equals("2")){
|
// 查询站内信
|
return page.setRecords(baseMapper.msgPage(page,smsRecord,list));
|
}
|
// 查询全部返回
|
return page.setRecords(baseMapper.smsAndMsgPage(page,smsRecord,list));
|
}
|
}
|