package cn.gistack.sm.sjztmd.service.impl;
|
|
import cn.gistack.sm.sjztmd.entity.AttResBase;
|
import cn.gistack.sm.sjztmd.entity.TbRelResUser;
|
import cn.gistack.sm.sjztmd.excel.TbRelResUserExcel;
|
import cn.gistack.sm.sjztmd.mapper.TbRelResUserMapper;
|
import cn.gistack.sm.sjztmd.service.IAttResBaseService;
|
import cn.gistack.sm.sjztmd.service.ITbRelResUserService;
|
import com.baomidou.dynamic.datasource.annotation.DS;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.springblade.core.tool.utils.StringUtil;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* @PROJECT_NAME: skjcmanager
|
* @DESCRIPTION:
|
* @USER: aix
|
* @DATE: 2023/10/26 10:32
|
*/
|
@Service
|
@DS("zt")
|
public class TbRelResUserServiceImpl extends ServiceImpl<TbRelResUserMapper, TbRelResUser> implements ITbRelResUserService {
|
|
@Autowired
|
private IAttResBaseService attResBaseService;
|
|
@Autowired
|
private ITbRelResUserService tbRelResUserService;
|
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public void importbRelResUser(List<TbRelResUserExcel> data) {
|
if (data.size()>0) {
|
|
List<TbRelResUser> list = new ArrayList<>();
|
for (TbRelResUserExcel excelPo:data) {
|
if (StringUtil.isBlank(excelPo.getResNo()) || StringUtil.isBlank(excelPo.getPhone()))
|
continue;
|
|
TbRelResUser tbpo = new TbRelResUser();
|
|
AttResBase attResBase = attResBaseService.getOne(Wrappers.<AttResBase>query().lambda().eq(AttResBase::getResRegCode,excelPo.getResNo()));
|
|
if (null == attResBase)
|
continue;
|
|
if (StringUtil.isBlank(attResBase.getGuid()) || StringUtil.isBlank(excelPo.getPhone()))
|
continue;
|
|
tbpo.setResGuid(attResBase.getGuid());
|
tbpo.setPhone(excelPo.getPhone());
|
|
// 如果存在不保存
|
long count = tbRelResUserService.count(Wrappers.<TbRelResUser>query().lambda().eq(TbRelResUser::getResGuid,attResBase.getGuid()).eq(TbRelResUser::getPhone,excelPo.getPhone()));
|
if (count == 0)
|
list.add(tbpo);
|
}
|
|
if (list.size() > 0)
|
saveBatch(list);//批量保存
|
}
|
}
|
}
|