package com.smartor.service.impl;
|
|
import com.google.gson.Gson;
|
import com.ruoyi.common.exception.base.BaseException;
|
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.DtoConversionUtils;
|
import com.smartor.domain.*;
|
import com.smartor.mapper.IvrTaskcallMapper;
|
import com.smartor.mapper.PatTaskRelevanceMapper;
|
import com.smartor.service.IIvrTaskcallService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.lang3.ObjectUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.List;
|
|
/**
|
* 单一任务(随访)Service业务层处理
|
*
|
* @author ruoyi
|
* @date 2024-02-02
|
*/
|
@Slf4j
|
@Service
|
public class IvrTaskcallServiceImpl implements IIvrTaskcallService {
|
@Autowired
|
private IvrTaskcallMapper ivrTaskcallMapper;
|
|
@Autowired
|
private PatTaskRelevanceMapper patTaskRelevanceMapper;
|
|
/**
|
* 查询单一任务(随访)
|
*
|
* @param id 单一任务(随访)主键
|
* @return 单一任务(随访)
|
*/
|
@Override
|
public IvrTaskcall selectIvrTaskcallById(Long id) {
|
return ivrTaskcallMapper.selectIvrTaskcallById(id);
|
}
|
|
/**
|
* 查询单一任务(随访)列表
|
*
|
* @param ivrTaskcall 单一任务(随访)
|
* @return 单一任务(随访)
|
*/
|
@Override
|
public List<IvrTaskcall> selectIvrTaskcallList(IvrTaskcall ivrTaskcall) {
|
return ivrTaskcallMapper.selectIvrTaskcallList(ivrTaskcall);
|
}
|
|
/**
|
* 新增单一任务(随访)
|
*
|
* @param ivrTaskcall 单一任务(随访)
|
* @return 结果
|
*/
|
@Override
|
public int insertIvrTaskcall(IvrTaskcall ivrTaskcall) {
|
ivrTaskcall.setCreateTime(DateUtils.getNowDate());
|
return ivrTaskcallMapper.insertIvrTaskcall(ivrTaskcall);
|
}
|
|
/**
|
* 修改单一任务(随访)
|
*
|
* @param ivrTaskcall 单一任务(随访)
|
* @return 结果
|
*/
|
@Override
|
public int updateIvrTaskcall(IvrTaskcall ivrTaskcall) {
|
ivrTaskcall.setUpdateTime(DateUtils.getNowDate());
|
return ivrTaskcallMapper.updateIvrTaskcall(ivrTaskcall);
|
}
|
|
/**
|
* 批量删除单一任务(随访)
|
*
|
* @param ids 需要删除的单一任务(随访)主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteIvrTaskcallByIds(Long[] ids) {
|
Integer i = 0;
|
for (Long id : ids) {
|
i = ivrTaskcallMapper.deleteIvrTaskcallById(id);
|
}
|
return i;
|
}
|
|
/**
|
* 单一任务
|
*
|
* @param ivrTaskcallVO 单一任务
|
* @return 结果
|
*/
|
@Transactional(rollbackFor = Exception.class)
|
@Override
|
public int insertOrUpdateTask(IvrTaskcallVO ivrTaskcallVO) {
|
if (ObjectUtils.isEmpty(ivrTaskcallVO)) {
|
log.info("宣教任务入参为空,请检查入参");
|
throw new BaseException("宣教任务入参为空,请检查入参");
|
}
|
Integer integer = 0;
|
if (ivrTaskcallVO.getIsoperation() != null && ivrTaskcallVO.getIsoperation() == 1) {
|
//新增
|
if (CollectionUtils.isNotEmpty(ivrTaskcallVO.getPatTaskRelevances())) {
|
for (PatTaskRelevance patTaskRelevance : ivrTaskcallVO.getPatTaskRelevances()) {
|
//将任务信息新增到宣教任务表中
|
IvrTaskcall ivrTaskcall = DtoConversionUtils.sourceToTarget(ivrTaskcallVO, IvrTaskcall.class);
|
ivrTaskcall.setSendname(patTaskRelevance.getName());
|
ivrTaskcall.setAge(patTaskRelevance.getAge());
|
ivrTaskcall.setSfzh(patTaskRelevance.getSfzh());
|
ivrTaskcall.setPhone(patTaskRelevance.getPhone());
|
ivrTaskcall.setAddr(patTaskRelevance.getAddr());
|
ivrTaskcall.setCreateTime(DateUtils.getNowDate());
|
ivrTaskcall.setTextParam(new Gson().toJson(ivrTaskcallVO.getTextParam()));
|
ivrTaskcallMapper.insertIvrTaskcall(ivrTaskcall);
|
integer = ivrTaskcall.getId().intValue();
|
}
|
}
|
|
} else if (ivrTaskcallVO.getIsoperation() != null && ivrTaskcallVO.getIsoperation() == 2) {
|
if (CollectionUtils.isNotEmpty(ivrTaskcallVO.getPatTaskRelevances())) {
|
for (PatTaskRelevance patTaskRelevance : ivrTaskcallVO.getPatTaskRelevances()) {
|
IvrTaskcall ivrTaskcall = DtoConversionUtils.sourceToTarget(ivrTaskcallVO, IvrTaskcall.class);
|
ivrTaskcall.setSendname(patTaskRelevance.getName());
|
ivrTaskcall.setAge(patTaskRelevance.getAge());
|
ivrTaskcall.setSfzh(patTaskRelevance.getSfzh());
|
ivrTaskcall.setPhone(patTaskRelevance.getPhone());
|
ivrTaskcall.setAddr(patTaskRelevance.getAddr());
|
ivrTaskcall.setCreateTime(DateUtils.getNowDate());
|
ivrTaskcall.setTextParam(new Gson().toJson(ivrTaskcallVO.getTextParam()));
|
|
ivrTaskcallMapper.updateIvrTaskcall(ivrTaskcall);
|
integer = ivrTaskcall.getId().intValue();
|
}
|
}
|
|
} else if (ivrTaskcallVO.getIsoperation() != null && ivrTaskcallVO.getIsoperation() == 3) {
|
ivrTaskcallMapper.deleteIvrTaskcallById(ivrTaskcallVO.getId());
|
|
integer = ivrTaskcallVO.getId().intValue();
|
}
|
return integer;
|
}
|
|
}
|