feat: 添加中介Service接口和实现类
- 新增ICcdiIntermediaryService接口,定义中介服务层操作方法 - 新增CcdiIntermediaryServiceImpl实现类,提供中介CRUD功能 - 支持个人和实体中介的统一查询、详情查询、新增、修改、删除 - 实现证件号和统一社会信用代码唯一性校验 - 支持Excel批量导入功能 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,117 @@
|
||||
package com.ruoyi.ccdi.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.ccdi.domain.dto.*;
|
||||
import com.ruoyi.ccdi.domain.vo.CcdiIntermediaryEntityDetailVO;
|
||||
import com.ruoyi.ccdi.domain.vo.CcdiIntermediaryPersonDetailVO;
|
||||
import com.ruoyi.ccdi.domain.vo.CcdiIntermediaryVO;
|
||||
|
||||
/**
|
||||
* 中介Service接口
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2026-02-04
|
||||
*/
|
||||
public interface ICcdiIntermediaryService {
|
||||
|
||||
/**
|
||||
* 分页查询中介列表
|
||||
*
|
||||
* @param page 分页对象
|
||||
* @param queryDTO 查询条件
|
||||
* @return 中介VO分页结果
|
||||
*/
|
||||
Page<CcdiIntermediaryVO> selectIntermediaryPage(Page<CcdiIntermediaryVO> page, CcdiIntermediaryQueryDTO queryDTO);
|
||||
|
||||
/**
|
||||
* 查询个人中介详情
|
||||
*
|
||||
* @param bizId 人员ID
|
||||
* @return 个人中介详情VO
|
||||
*/
|
||||
CcdiIntermediaryPersonDetailVO selectIntermediaryPersonDetail(String bizId);
|
||||
|
||||
/**
|
||||
* 查询实体中介详情
|
||||
*
|
||||
* @param socialCreditCode 统一社会信用代码
|
||||
* @return 实体中介详情VO
|
||||
*/
|
||||
CcdiIntermediaryEntityDetailVO selectIntermediaryEntityDetail(String socialCreditCode);
|
||||
|
||||
/**
|
||||
* 新增个人中介
|
||||
*
|
||||
* @param addDTO 新增DTO
|
||||
* @return 结果
|
||||
*/
|
||||
int insertIntermediaryPerson(CcdiIntermediaryPersonAddDTO addDTO);
|
||||
|
||||
/**
|
||||
* 修改个人中介
|
||||
*
|
||||
* @param editDTO 编辑DTO
|
||||
* @return 结果
|
||||
*/
|
||||
int updateIntermediaryPerson(CcdiIntermediaryPersonEditDTO editDTO);
|
||||
|
||||
/**
|
||||
* 新增实体中介
|
||||
*
|
||||
* @param addDTO 新增DTO
|
||||
* @return 结果
|
||||
*/
|
||||
int insertIntermediaryEntity(CcdiIntermediaryEntityAddDTO addDTO);
|
||||
|
||||
/**
|
||||
* 修改实体中介
|
||||
*
|
||||
* @param editDTO 编辑DTO
|
||||
* @return 结果
|
||||
*/
|
||||
int updateIntermediaryEntity(CcdiIntermediaryEntityEditDTO editDTO);
|
||||
|
||||
/**
|
||||
* 批量删除中介
|
||||
*
|
||||
* @param ids 需要删除的ID数组
|
||||
* @return 结果
|
||||
*/
|
||||
int deleteIntermediaryByIds(String[] ids);
|
||||
|
||||
/**
|
||||
* 校验人员ID唯一性
|
||||
*
|
||||
* @param personId 人员ID
|
||||
* @param bizId 排除的人员ID
|
||||
* @return true=唯一, false=不唯一
|
||||
*/
|
||||
boolean checkPersonIdUnique(String personId, String bizId);
|
||||
|
||||
/**
|
||||
* 校验统一社会信用代码唯一性
|
||||
*
|
||||
* @param socialCreditCode 统一社会信用代码
|
||||
* @param excludeId 排除的ID
|
||||
* @return true=唯一, false=不唯一
|
||||
*/
|
||||
boolean checkSocialCreditCodeUnique(String socialCreditCode, String excludeId);
|
||||
|
||||
/**
|
||||
* 导入个人中介数据
|
||||
*
|
||||
* @param list Excel实体列表
|
||||
* @param updateSupport 是否更新支持
|
||||
* @return 结果
|
||||
*/
|
||||
String importIntermediaryPerson(java.util.List<com.ruoyi.ccdi.domain.excel.CcdiIntermediaryPersonExcel> list, boolean updateSupport);
|
||||
|
||||
/**
|
||||
* 导入实体中介数据
|
||||
*
|
||||
* @param list Excel实体列表
|
||||
* @param updateSupport 是否更新支持
|
||||
* @return 结果
|
||||
*/
|
||||
String importIntermediaryEntity(java.util.List<com.ruoyi.ccdi.domain.excel.CcdiIntermediaryEntityExcel> list, boolean updateSupport);
|
||||
}
|
||||
@@ -0,0 +1,424 @@
|
||||
package com.ruoyi.ccdi.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.ccdi.domain.CcdiBizIntermediary;
|
||||
import com.ruoyi.ccdi.domain.CcdiEnterpriseBaseInfo;
|
||||
import com.ruoyi.ccdi.domain.dto.CcdiIntermediaryEntityAddDTO;
|
||||
import com.ruoyi.ccdi.domain.dto.CcdiIntermediaryEntityEditDTO;
|
||||
import com.ruoyi.ccdi.domain.dto.CcdiIntermediaryPersonAddDTO;
|
||||
import com.ruoyi.ccdi.domain.dto.CcdiIntermediaryPersonEditDTO;
|
||||
import com.ruoyi.ccdi.domain.dto.CcdiIntermediaryQueryDTO;
|
||||
import com.ruoyi.ccdi.domain.excel.CcdiIntermediaryEntityExcel;
|
||||
import com.ruoyi.ccdi.domain.excel.CcdiIntermediaryPersonExcel;
|
||||
import com.ruoyi.ccdi.domain.vo.CcdiIntermediaryEntityDetailVO;
|
||||
import com.ruoyi.ccdi.domain.vo.CcdiIntermediaryPersonDetailVO;
|
||||
import com.ruoyi.ccdi.domain.vo.CcdiIntermediaryVO;
|
||||
import com.ruoyi.ccdi.mapper.CcdiBizIntermediaryMapper;
|
||||
import com.ruoyi.ccdi.mapper.CcdiEnterpriseBaseInfoMapper;
|
||||
import com.ruoyi.ccdi.service.ICcdiIntermediaryService;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 中介Service业务层处理
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2026-02-04
|
||||
*/
|
||||
@Service
|
||||
public class CcdiIntermediaryServiceImpl implements ICcdiIntermediaryService {
|
||||
|
||||
@Resource
|
||||
private CcdiBizIntermediaryMapper bizIntermediaryMapper;
|
||||
|
||||
@Resource
|
||||
private CcdiEnterpriseBaseInfoMapper enterpriseBaseInfoMapper;
|
||||
|
||||
/**
|
||||
* 分页查询中介列表
|
||||
*
|
||||
* @param page 分页对象
|
||||
* @param queryDTO 查询条件
|
||||
* @return 中介VO分页结果
|
||||
*/
|
||||
@Override
|
||||
public Page<CcdiIntermediaryVO> selectIntermediaryPage(Page<CcdiIntermediaryVO> page, CcdiIntermediaryQueryDTO queryDTO) {
|
||||
Page<CcdiIntermediaryVO> voPage = new Page<>(page.getCurrent(), page.getSize());
|
||||
List<CcdiIntermediaryVO> list = new ArrayList<>();
|
||||
|
||||
// 查询个人中介
|
||||
LambdaQueryWrapper<CcdiBizIntermediary> personWrapper = new LambdaQueryWrapper<>();
|
||||
personWrapper.like(StringUtils.isNotEmpty(queryDTO.getName()), CcdiBizIntermediary::getName, queryDTO.getName())
|
||||
.like(StringUtils.isNotEmpty(queryDTO.getCertificateNo()), CcdiBizIntermediary::getPersonId, queryDTO.getCertificateNo())
|
||||
.eq(StringUtils.isNotEmpty(queryDTO.getIntermediaryType()), CcdiBizIntermediary::getIntermediaryType, queryDTO.getIntermediaryType())
|
||||
.or()
|
||||
.eq(StringUtils.isEmpty(queryDTO.getIntermediaryType()) || "1".equals(queryDTO.getIntermediaryType()),
|
||||
CcdiBizIntermediary::getIntermediaryType, "1");
|
||||
|
||||
List<CcdiBizIntermediary> personList = bizIntermediaryMapper.selectList(personWrapper);
|
||||
for (CcdiBizIntermediary person : personList) {
|
||||
CcdiIntermediaryVO vo = new CcdiIntermediaryVO();
|
||||
vo.setId(person.getBizId());
|
||||
vo.setName(person.getName());
|
||||
vo.setCertificateNo(person.getPersonId());
|
||||
vo.setIntermediaryType("1");
|
||||
vo.setPersonType(person.getPersonType());
|
||||
vo.setCompany(person.getCompany());
|
||||
vo.setDataSource(person.getDataSource());
|
||||
vo.setCreateTime(person.getCreateTime());
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
// 查询实体中介
|
||||
LambdaQueryWrapper<CcdiEnterpriseBaseInfo> entityWrapper = new LambdaQueryWrapper<>();
|
||||
entityWrapper.like(StringUtils.isNotEmpty(queryDTO.getName()), CcdiEnterpriseBaseInfo::getEnterpriseName, queryDTO.getName())
|
||||
.like(StringUtils.isNotEmpty(queryDTO.getCertificateNo()), CcdiEnterpriseBaseInfo::getSocialCreditCode, queryDTO.getCertificateNo())
|
||||
.eq(StringUtils.isNotEmpty(queryDTO.getIntermediaryType()), CcdiEnterpriseBaseInfo::getIntermediaryType, queryDTO.getIntermediaryType())
|
||||
.or()
|
||||
.eq(StringUtils.isEmpty(queryDTO.getIntermediaryType()) || "2".equals(queryDTO.getIntermediaryType()),
|
||||
CcdiEnterpriseBaseInfo::getIntermediaryType, "2");
|
||||
|
||||
List<CcdiEnterpriseBaseInfo> entityList = enterpriseBaseInfoMapper.selectList(entityWrapper);
|
||||
for (CcdiEnterpriseBaseInfo entity : entityList) {
|
||||
CcdiIntermediaryVO vo = new CcdiIntermediaryVO();
|
||||
vo.setId(entity.getSocialCreditCode());
|
||||
vo.setName(entity.getEnterpriseName());
|
||||
vo.setCertificateNo(entity.getSocialCreditCode());
|
||||
vo.setIntermediaryType("2");
|
||||
vo.setDataSource(entity.getDataSource());
|
||||
vo.setCreateTime(entity.getCreateTime());
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
// 手动分页
|
||||
int start = (int) ((voPage.getCurrent() - 1) * voPage.getSize());
|
||||
int end = (int) Math.min(start + voPage.getSize(), list.size());
|
||||
|
||||
List<CcdiIntermediaryVO> pageList = new ArrayList<>();
|
||||
if (start < list.size()) {
|
||||
pageList = list.subList(start, end);
|
||||
}
|
||||
|
||||
voPage.setRecords(pageList);
|
||||
voPage.setTotal(list.size());
|
||||
|
||||
return voPage;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询个人中介详情
|
||||
*
|
||||
* @param bizId 人员ID
|
||||
* @return 个人中介详情VO
|
||||
*/
|
||||
@Override
|
||||
public CcdiIntermediaryPersonDetailVO selectIntermediaryPersonDetail(String bizId) {
|
||||
CcdiBizIntermediary person = bizIntermediaryMapper.selectById(bizId);
|
||||
if (person == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
CcdiIntermediaryPersonDetailVO vo = new CcdiIntermediaryPersonDetailVO();
|
||||
BeanUtils.copyProperties(person, vo);
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询实体中介详情
|
||||
*
|
||||
* @param socialCreditCode 统一社会信用代码
|
||||
* @return 实体中介详情VO
|
||||
*/
|
||||
@Override
|
||||
public CcdiIntermediaryEntityDetailVO selectIntermediaryEntityDetail(String socialCreditCode) {
|
||||
CcdiEnterpriseBaseInfo entity = enterpriseBaseInfoMapper.selectById(socialCreditCode);
|
||||
if (entity == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
CcdiIntermediaryEntityDetailVO vo = new CcdiIntermediaryEntityDetailVO();
|
||||
BeanUtils.copyProperties(entity, vo);
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增个人中介
|
||||
*
|
||||
* @param addDTO 新增DTO
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public int insertIntermediaryPerson(CcdiIntermediaryPersonAddDTO addDTO) {
|
||||
// 检查人员ID唯一性
|
||||
if (!checkPersonIdUnique(addDTO.getPersonId(), null)) {
|
||||
throw new RuntimeException("该证件号已存在");
|
||||
}
|
||||
|
||||
CcdiBizIntermediary person = new CcdiBizIntermediary();
|
||||
BeanUtils.copyProperties(addDTO, person);
|
||||
person.setIntermediaryType("1");
|
||||
|
||||
return bizIntermediaryMapper.insert(person);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改个人中介
|
||||
*
|
||||
* @param editDTO 编辑DTO
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public int updateIntermediaryPerson(CcdiIntermediaryPersonEditDTO editDTO) {
|
||||
// 检查人员ID唯一性(排除自己)
|
||||
if (StringUtils.isNotEmpty(editDTO.getPersonId())) {
|
||||
if (!checkPersonIdUnique(editDTO.getPersonId(), editDTO.getBizId())) {
|
||||
throw new RuntimeException("该证件号已存在");
|
||||
}
|
||||
}
|
||||
|
||||
CcdiBizIntermediary person = new CcdiBizIntermediary();
|
||||
BeanUtils.copyProperties(editDTO, person);
|
||||
|
||||
return bizIntermediaryMapper.updateById(person);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增实体中介
|
||||
*
|
||||
* @param addDTO 新增DTO
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public int insertIntermediaryEntity(CcdiIntermediaryEntityAddDTO addDTO) {
|
||||
// 检查统一社会信用代码唯一性
|
||||
if (StringUtils.isNotEmpty(addDTO.getSocialCreditCode())) {
|
||||
if (!checkSocialCreditCodeUnique(addDTO.getSocialCreditCode(), null)) {
|
||||
throw new RuntimeException("该统一社会信用代码已存在");
|
||||
}
|
||||
}
|
||||
|
||||
CcdiEnterpriseBaseInfo entity = new CcdiEnterpriseBaseInfo();
|
||||
BeanUtils.copyProperties(addDTO, entity);
|
||||
entity.setIntermediaryType("2");
|
||||
|
||||
return enterpriseBaseInfoMapper.insert(entity);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改实体中介
|
||||
*
|
||||
* @param editDTO 编辑DTO
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public int updateIntermediaryEntity(CcdiIntermediaryEntityEditDTO editDTO) {
|
||||
CcdiEnterpriseBaseInfo entity = new CcdiEnterpriseBaseInfo();
|
||||
BeanUtils.copyProperties(editDTO, entity);
|
||||
|
||||
return enterpriseBaseInfoMapper.updateById(entity);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除中介
|
||||
*
|
||||
* @param ids 需要删除的ID数组
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public int deleteIntermediaryByIds(String[] ids) {
|
||||
int count = 0;
|
||||
for (String id : ids) {
|
||||
// 判断是个人还是实体(个人ID长度较长,实体统一社会信用代码18位)
|
||||
if (id.length() > 18) {
|
||||
// 个人中介
|
||||
count += bizIntermediaryMapper.deleteById(id);
|
||||
} else {
|
||||
// 实体中介
|
||||
count += enterpriseBaseInfoMapper.deleteById(id);
|
||||
}
|
||||
}
|
||||
return count;
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验人员ID唯一性
|
||||
*
|
||||
* @param personId 人员ID
|
||||
* @param bizId 排除的人员ID
|
||||
* @return true=唯一, false=不唯一
|
||||
*/
|
||||
@Override
|
||||
public boolean checkPersonIdUnique(String personId, String bizId) {
|
||||
LambdaQueryWrapper<CcdiBizIntermediary> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(CcdiBizIntermediary::getPersonId, personId);
|
||||
if (StringUtils.isNotEmpty(bizId)) {
|
||||
wrapper.ne(CcdiBizIntermediary::getBizId, bizId);
|
||||
}
|
||||
return bizIntermediaryMapper.selectCount(wrapper) == 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验统一社会信用代码唯一性
|
||||
*
|
||||
* @param socialCreditCode 统一社会信用代码
|
||||
* @param excludeId 排除的ID
|
||||
* @return true=唯一, false=不唯一
|
||||
*/
|
||||
@Override
|
||||
public boolean checkSocialCreditCodeUnique(String socialCreditCode, String excludeId) {
|
||||
LambdaQueryWrapper<CcdiEnterpriseBaseInfo> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(CcdiEnterpriseBaseInfo::getSocialCreditCode, socialCreditCode);
|
||||
if (StringUtils.isNotEmpty(excludeId)) {
|
||||
wrapper.ne(CcdiEnterpriseBaseInfo::getSocialCreditCode, excludeId);
|
||||
}
|
||||
return enterpriseBaseInfoMapper.selectCount(wrapper) == 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 导入个人中介数据
|
||||
*
|
||||
* @param list Excel实体列表
|
||||
* @param updateSupport 是否更新支持
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public String importIntermediaryPerson(List<CcdiIntermediaryPersonExcel> list, boolean updateSupport) {
|
||||
if (StringUtils.isNull(list) || list.isEmpty()) {
|
||||
return "至少需要一条数据";
|
||||
}
|
||||
|
||||
int successNum = 0;
|
||||
int failureNum = 0;
|
||||
StringBuilder successMsg = new StringBuilder();
|
||||
StringBuilder failureMsg = new StringBuilder();
|
||||
|
||||
for (CcdiIntermediaryPersonExcel excel : list) {
|
||||
try {
|
||||
// 验证数据
|
||||
if (StringUtils.isEmpty(excel.getName())) {
|
||||
throw new RuntimeException("姓名不能为空");
|
||||
}
|
||||
if (StringUtils.isEmpty(excel.getPersonId())) {
|
||||
throw new RuntimeException("证件号码不能为空");
|
||||
}
|
||||
|
||||
// 转换为实体
|
||||
CcdiBizIntermediary person = new CcdiBizIntermediary();
|
||||
BeanUtils.copyProperties(excel, person);
|
||||
person.setIntermediaryType("1");
|
||||
|
||||
// 检查唯一性
|
||||
if (!checkPersonIdUnique(excel.getPersonId(), null)) {
|
||||
if (updateSupport) {
|
||||
// 更新模式:查询已存在记录并更新
|
||||
LambdaQueryWrapper<CcdiBizIntermediary> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(CcdiBizIntermediary::getPersonId, excel.getPersonId());
|
||||
CcdiBizIntermediary existingPerson = bizIntermediaryMapper.selectOne(wrapper);
|
||||
if (existingPerson != null) {
|
||||
person.setBizId(existingPerson.getBizId());
|
||||
bizIntermediaryMapper.updateById(person);
|
||||
}
|
||||
} else {
|
||||
throw new RuntimeException("该证件号已存在");
|
||||
}
|
||||
} else {
|
||||
bizIntermediaryMapper.insert(person);
|
||||
}
|
||||
|
||||
successNum++;
|
||||
successMsg.append("<br/>").append(successNum).append("、").append(excel.getName()).append(" 导入成功");
|
||||
} catch (Exception e) {
|
||||
failureNum++;
|
||||
failureMsg.append("<br/>").append(failureNum).append("、").append(excel.getName()).append(" 导入失败:");
|
||||
failureMsg.append(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
if (failureNum > 0) {
|
||||
failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
|
||||
throw new RuntimeException(failureMsg.toString());
|
||||
} else {
|
||||
successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条");
|
||||
return successMsg.toString();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导入实体中介数据
|
||||
*
|
||||
* @param list Excel实体列表
|
||||
* @param updateSupport 是否更新支持
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public String importIntermediaryEntity(List<CcdiIntermediaryEntityExcel> list, boolean updateSupport) {
|
||||
if (StringUtils.isNull(list) || list.isEmpty()) {
|
||||
return "至少需要一条数据";
|
||||
}
|
||||
|
||||
int successNum = 0;
|
||||
int failureNum = 0;
|
||||
StringBuilder successMsg = new StringBuilder();
|
||||
StringBuilder failureMsg = new StringBuilder();
|
||||
|
||||
for (CcdiIntermediaryEntityExcel excel : list) {
|
||||
try {
|
||||
// 验证数据
|
||||
if (StringUtils.isEmpty(excel.getEnterpriseName())) {
|
||||
throw new RuntimeException("机构名称不能为空");
|
||||
}
|
||||
|
||||
// 转换为实体
|
||||
CcdiEnterpriseBaseInfo entity = new CcdiEnterpriseBaseInfo();
|
||||
BeanUtils.copyProperties(excel, entity);
|
||||
entity.setIntermediaryType("2");
|
||||
|
||||
// 检查唯一性
|
||||
if (StringUtils.isNotEmpty(excel.getSocialCreditCode())) {
|
||||
if (!checkSocialCreditCodeUnique(excel.getSocialCreditCode(), null)) {
|
||||
if (updateSupport) {
|
||||
// 更新模式
|
||||
enterpriseBaseInfoMapper.updateById(entity);
|
||||
} else {
|
||||
throw new RuntimeException("该统一社会信用代码已存在");
|
||||
}
|
||||
} else {
|
||||
enterpriseBaseInfoMapper.insert(entity);
|
||||
}
|
||||
} else {
|
||||
// 没有统一社会信用代码,直接插入
|
||||
enterpriseBaseInfoMapper.insert(entity);
|
||||
}
|
||||
|
||||
successNum++;
|
||||
successMsg.append("<br/>").append(successNum).append("、").append(excel.getEnterpriseName()).append(" 导入成功");
|
||||
} catch (Exception e) {
|
||||
failureNum++;
|
||||
failureMsg.append("<br/>").append(failureNum).append("、").append(excel.getEnterpriseName()).append(" 导入失败:");
|
||||
failureMsg.append(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
if (failureNum > 0) {
|
||||
failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
|
||||
throw new RuntimeException(failureMsg.toString());
|
||||
} else {
|
||||
successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条");
|
||||
return successMsg.toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user