模板
表结构
HSGD_base_GROUP_CUSTOMER_import_RECORD
HSGD_base_GROUP_CUSTOMER_import_COMPLETION
HSGD_base_GROUP_CUSTOMER_NOT_import_RECORD
代码
package com.zhgd.base.controller.api;
import com.zhgd.base.service.IZhgdSrbaseGroupCustomerimportService;
import com.zhgd.common.util.JsonUtil;
import com.zhgd.common.web.ResponseResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
@RestController
@Api(tags = "Zhgd Sr base Group import Customer Controller")
@RequestMapping(value = "/api/srbaseGroupCustomerimport")
@Slf4j
public class ApiZhgdSrbaseGroupCustomerimportController {
@Resource
private IZhgdSrbaseGroupCustomerimportService iZhgdSrbaseGroupCustomerimportService;
@ApiOperation(value = "掌柜组织改版导入组织人员接口", response = String.class, notes = "import base Group Customer")
@PostMapping(value = "/11202/v1/importbaseGroupCustomer")
public ResponseResult> importbaseGroupCustomer(@RequestParam("importFile") MultipartFile importFile){
String importFileName = importFile != null ? importFile.getOriginalFilename() : "--";
log.info("[掌柜组织改版]导入部门组织人员,导入文件名:{}",importFileName);
ResponseResult> result = new ResponseResult<>();
result.setData(iZhgdSrbaseGroupCustomerimportService.importbaseGroupCustomerProcess(importFile));
log.info("[掌柜组织改版]导入部门组织人员,导入文件名:{}", JsonUtil.toJSonString(result));
return result;
}
// @ApiOperation(value = "掌柜组织改版 初始化组织人员上下级关系接口", response = String.class, notes = "Initialize base Group Customer Relation")
// @PostMapping(value = "/11203/v1/initializebaseGroupCustomerRelation")
// public ResponseResult initializebaseGroupCustomerRelation(HttpServletRequest request){
// log.info("[掌柜组织改版]初始化组织人员上下级关系,开始...");
// ResponseResult result = new ResponseResult<>();
// result.setData(iZhgdSrbaseGroupCustomerimportService.initializebaseGroupCustomerRelationProcess());
// log.info("[掌柜组织改版]初始化组织人员上下级关系,响应结果:{}", JsonUtil.toJSonString(result));
// return result;
// }
}
package com.zhgd.base.service;
import com.zhgd.base.entity.HsgdbaseGroupCustomerimportRecord;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
public interface IZhgdSrbaseGroupCustomerimportService {
void batchInsertAll(List recordList);
List importbaseGroupCustomerProcess(MultipartFile importFile);
Boolean initializebaseGroupCustomerRelationProcess();
void insert(HsgdbaseGroupCustomerimportRecord record);
}
package com.zhgd.base.service.impl;
import com.alibaba.excel.EasyExcel;
import com.github.pagehelper.PageHelper;
import com.zhgd.base.domain.model.ZhgdSrGroupCustomerimportModel;
import com.zhgd.base.domain.vo.HsgdbaseGroupCustomerSimpleVO;
import com.zhgd.base.domain.vo.HsgdbaseGroupLevelNameVO;
import com.zhgd.base.domain.vo.HsgdbaseGroupSimpleVO;
import com.zhgd.base.entity.*;
import com.zhgd.base.enums.HsgdbaseGroupLevelEnum;
import com.zhgd.base.listener.ZhgdSrbaseGroupCustomerimportExcelListener;
import com.zhgd.base.mapper.HsgdbaseGroupCustomerimportCompletionMapper;
import com.zhgd.base.mapper.HsgdbaseGroupCustomerimportRecordMapper;
import com.zhgd.base.mapper.HsgdbaseGroupCustomerMapper;
import com.zhgd.base.mapper.HsgdbaseGroupMapper;
import com.zhgd.base.service.*;
import com.zhgd.common.util.StringUtil;
import com.zhgd.common.util.UUIDUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@Service
@Slf4j
public class ZhgdSrbaseGroupCustomerimportServiceImpl implements IZhgdSrbaseGroupCustomerimportService {
private final String SYSTEM_USER_NAME = "system";
@Resource
private HsgdbaseGroupCustomerimportRecordMapper hsgdbaseGroupCustomerimportRecordMapper;
@Resource
private HsgdbaseGroupCustomerimportCompletionMapper hsgdbaseGroupCustomerimportCompletionMapper;
@Resource
private IZhgdSrbaseGroupimportCustomerHandleService iZhgdSrbaseGroupimportCustomerHandleService;
@Resource
private HsgdbaseGroupCustomerMapper hsgdbaseGroupCustomerMapper;
@Resource
private HsgdbaseGroupMapper hsgdbaseGroupMapper;
@Resource
private IZhgdSrbaseGroupimportService iZhgdSrbaseGroupimportService;
@Resource
private IHsgdbaseGroupCustomerService iHsgdbaseGroupCustomerService;
@Resource
private IHsgdbaseGroupCustomerNotimportRecordService iHsgdbaseGroupCustomerNotimportRecordService;
@Transactional(rollbackFor = Exception.class)
@Override
public void batchInsertAll(List recordList) {
hsgdbaseGroupCustomerimportRecordMapper.insertAll(recordList);
}
@Override
public void insert(HsgdbaseGroupCustomerimportRecord record) {
hsgdbaseGroupCustomerimportRecordMapper.insert(record);
}
@Override
public List importbaseGroupCustomerProcess(MultipartFile importFile) {
List importResultList = new ArrayList<>();
try {
String batchNo = UUIDUtils.getUUID();
ZhgdSrbaseGroupCustomerimportExcelListener listener = new ZhgdSrbaseGroupCustomerimportExcelListener(iZhgdSrbaseGroupimportCustomerHandleService, batchNo);
EasyExcel.read(importFile.getInputStream(), ZhgdSrGroupCustomerimportModel.class, listener).sheet(0).doRead();
// 2、文件校验(待处理)
// 3、组织数据
int totalRecord = this.organizeAndSavebaseGroupCustomerCompletionData(batchNo);
this.savebaseGroupCustomerData(batchNo,totalRecord);
} catch (Exception e) {
log.info("导入异常", e);
importResultList.add("导入异常 :" + e.getMessage());
return importResultList;
}
importResultList.add("执行完成,请检查是否全部导入成功!");
return importResultList;
}
@Override
public Boolean initializebaseGroupCustomerRelationProcess() {
return null;
}
private int organizeAndSavebaseGroupCustomerCompletionData(String batchNo) {
int importDataTotal = hsgdbaseGroupCustomerimportRecordMapper.countimportbaseGroupCustomerDataTotalByBatchNo(batchNo);
if (importDataTotal > 0) {
// 每页记录数
int pageSize = 120, startPage = 1;
// 总页数
int totalPage = importDataTotal % pageSize == 0 ? (importDataTotal / pageSize) : (importDataTotal / pageSize + 1);
for (int pageN = 0; pageN < totalPage; pageN++) {
PageHelper.startPage(startPage + pageN, pageSize, false);
List list = hsgdbaseGroupCustomerimportRecordMapper.selectListByBatchNo(batchNo);
if (CollectionUtils.isNotEmpty(list)) {
List completionList = new ArrayList<>();
HsgdbaseGroupCustomerimportCompletion completion;
for (int i = 0, listSize = list.size(); i < listSize; i++) {
HsgdbaseGroupCustomerimportRecord record = list.get(i);
completion = new HsgdbaseGroupCustomerimportCompletion();
if (StringUtils.isNotBlank(record.getLeveloneGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.ONE.getGroupLevel());
}
if (StringUtils.isNotBlank(record.getLevelTwoGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.TWO.getGroupLevel());
}
if (StringUtils.isNotBlank(record.getLevelThreeGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.THREE.getGroupLevel());
}
if (StringUtils.isNotBlank(record.getLevelFourGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.FOUR.getGroupLevel());
}
if (StringUtils.isNotBlank(record.getLevelFiveGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.FIVE.getGroupLevel());
}
if (StringUtils.isNotBlank(record.getLevelSixGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.SIX.getGroupLevel());
}
if (StringUtils.isNotBlank(record.getLevelSevenGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.SEVEN.getGroupLevel());
}
if (StringUtils.isNotBlank(record.getLevelEightGroup())) {
completion.setGroupLevel(HsgdbaseGroupLevelEnum.EIGHT.getGroupLevel());
}
BeanUtils.copyProperties(record, completion);
completionList.add(completion);
}
iZhgdSrbaseGroupimportCustomerHandleService.insertAllimportCompletion(completionList);
}
}
}
return importDataTotal;
}
private void savebaseGroupCustomerData(String batchNo, int totalRecord) {
if(totalRecord > 0) {
int pageSize = 120, startPage = 1;
int totalPage = totalRecord % pageSize == 0 ? (totalRecord / pageSize) : (totalRecord / pageSize + 1);
Date nowDate = new Date();
Long parentId;
String oneMapKey, twoMapKey, threeMapKey, fourMapKey, fiveMapKey, sixMapKey, sevenMapKey, eightMapKey;
HsgdbaseGroupSimpleVO groupSimpleVo = null;
Map grouponeLevelMap = new HashMap<>();
Map groupTwoLevelMap = new HashMap<>();
Map groupThreeLevelMap = new HashMap<>();
Map groupFourLevelMap = new HashMap<>();
Map groupFiveLevelMap = new HashMap<>();
Map groupSixLevelMap = new HashMap<>();
Map groupSevenLevelMap = new HashMap<>();
Map groupEightLevelMap = new HashMap<>();
for (int pageN = 0; pageN < totalPage; pageN++) {
PageHelper.startPage(startPage + pageN, pageSize, false);
List completionPageList = hsgdbaseGroupCustomerimportCompletionMapper.selectListByBatchNo(batchNo);
if(CollectionUtils.isNotEmpty(completionPageList)){
List customerIdList = completionPageList.stream().map(HsgdbaseGroupCustomerimportCompletion::getCustomerId).collect(Collectors.toList());
List customerSiList = hsgdbaseGroupCustomerimportCompletionMapper.querySrCustomerInfoByIds(customerIdList);
List customerDealerList = hsgdbaseGroupCustomerimportCompletionMapper.queryDealerCustomerInfoByIds(customerIdList);
Map customerSiMap = new HashMap<>();
if (CollectionUtils.isNotEmpty(customerSiList)) {
Map srCustomerSiMap = customerSiList.stream().collect(Collectors.toMap(HsgdbaseGroupCustomerSimpleVO::getCustomerId, Function.identity(), (key1, key2) -> key2));
customerSiMap.putAll(srCustomerSiMap);
}
if (CollectionUtils.isNotEmpty(customerDealerList)) {
Map dealerCustomerSiMap = customerDealerList.stream().collect(Collectors.toMap(HsgdbaseGroupCustomerSimpleVO::getCustomerId, Function.identity(), (key1, key2) -> key2));
customerSiMap.putAll(dealerCustomerSiMap);
}
List groupCustomerList = new ArrayList<>();
HsgdbaseGroupCustomer baseGroupCustomer;
List errorRecordList = new ArrayList<>();
HsgdbaseGroupCustomerNotimportRecord notimportRecord;
Map completionMap = completionPageList.stream().collect(Collectors.toMap(HsgdbaseGroupCustomerimportCompletion::getId,Function.identity(),(key1,key2)->key2));
for (HsgdbaseGroupCustomerimportCompletion completionVO : completionPageList){
HsgdbaseGroupCustomerSimpleVO customerVo = customerSiMap.get(completionVO.getCustomerId());
Long importId = completionVO.getId();
if(customerSiMap.containsKey(completionVO.getCustomerId())){
if (HsgdbaseGroupLevelEnum.ONE.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
if (groupOneLevelMap.get(oneMapKey) == null) {
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if (groupOneLevelMap.get(oneMapKey) != null) {
groupSimpleVo = groupOneLevelMap.get(oneMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo, customerVo, nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
} else {
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
else if (HsgdbaseGroupLevelEnum.TWO.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
twoMapKey = completionVO.getLevelTwoGroup();
if(groupOneLevelMap.get(oneMapKey) == null){
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) == null){
this.queryTwoLevelGroup(twoMapKey, groupTwoLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) != null){
groupSimpleVo = groupTwoLevelMap.get(twoMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo,customerVo,nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
else if (HsgdbaseGroupLevelEnum.THREE.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
twoMapKey = completionVO.getLevelTwoGroup();
threeMapKey = completionVO.getLevelThreeGroup();
if(groupOneLevelMap.get(oneMapKey) == null){
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) == null){
this.queryTwoLevelGroup(twoMapKey, groupTwoLevelMap, completionVO);
}
if(groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) == null){
this.queryThreeLevelGroup(threeMapKey, groupThreeLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) != null){
groupSimpleVo = groupThreeLevelMap.get(threeMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo,customerVo,nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
else if (HsgdbaseGroupLevelEnum.FOUR.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
twoMapKey = completionVO.getLevelTwoGroup();
threeMapKey = completionVO.getLevelThreeGroup();
fourMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup();
if(groupOneLevelMap.get(oneMapKey) == null){
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) == null){
this.queryTwoLevelGroup(twoMapKey, groupTwoLevelMap, completionVO);
}
if(groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) == null){
this.queryThreeLevelGroup(threeMapKey, groupThreeLevelMap, completionVO);
}
if(groupThreeLevelMap.get(threeMapKey) != null && groupFourLevelMap.get(fourMapKey) == null){
parentId = groupThreeLevelMap.get(threeMapKey).getGroupId();
this.queryFourLevelGroup(fourMapKey, groupFourLevelMap, completionVO,parentId);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) != null
&& groupThreeLevelMap.get(threeMapKey) != null && groupFourLevelMap.get(fourMapKey) != null){
groupSimpleVo = groupFourLevelMap.get(fourMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo,customerVo,nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
else if (HsgdbaseGroupLevelEnum.FIVE.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
twoMapKey = completionVO.getLevelTwoGroup();
threeMapKey = completionVO.getLevelThreeGroup();
fourMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup();
fiveMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup();
if(groupOneLevelMap.get(oneMapKey) == null){
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) == null){
this.queryTwoLevelGroup(twoMapKey, groupTwoLevelMap, completionVO);
}
if(groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) == null){
this.queryThreeLevelGroup(threeMapKey, groupThreeLevelMap, completionVO);
}
if(groupThreeLevelMap.get(threeMapKey) != null && groupFourLevelMap.get(fourMapKey) == null){
parentId = groupThreeLevelMap.get(threeMapKey).getGroupId();
this.queryFourLevelGroup(fourMapKey, groupFourLevelMap, completionVO,parentId);
}
if(groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) == null){
parentId = groupFourLevelMap.get(fourMapKey).getGroupId();
this.queryFiveLevelGroup(fiveMapKey, groupFiveLevelMap, completionVO,parentId);
}
if (groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) != null &&
groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) != null) {
groupSimpleVo = groupFiveLevelMap.get(fiveMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo, customerVo, nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
else if (HsgdbaseGroupLevelEnum.SIX.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
twoMapKey = completionVO.getLevelTwoGroup();
threeMapKey = completionVO.getLevelThreeGroup();
fourMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup();
fiveMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup();
sixMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup()
+ "-" + completionVO.getLevelSixGroup();
if(groupOneLevelMap.get(oneMapKey) == null){
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) == null){
this.queryTwoLevelGroup(twoMapKey, groupTwoLevelMap, completionVO);
}
if(groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) == null){
this.queryThreeLevelGroup(threeMapKey, groupThreeLevelMap, completionVO);
}
if(groupThreeLevelMap.get(threeMapKey) != null && groupFourLevelMap.get(fourMapKey) == null){
parentId = groupThreeLevelMap.get(threeMapKey).getGroupId();
this.queryFourLevelGroup(fourMapKey, groupFourLevelMap, completionVO,parentId);
}
if(groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) == null){
parentId = groupFourLevelMap.get(fourMapKey).getGroupId();
this.queryFiveLevelGroup(fiveMapKey, groupFiveLevelMap, completionVO,parentId);
}
if(groupFiveLevelMap.get(fiveMapKey) != null && groupSixLevelMap.get(sixMapKey) == null){
parentId = groupFiveLevelMap.get(fiveMapKey).getGroupId();
this.querySixLevelGroup(sixMapKey, groupSixLevelMap, completionVO,parentId);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) != null &&
groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) != null && groupSixLevelMap.get(sixMapKey) != null ){
groupSimpleVo = groupSixLevelMap.get(sixMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo,customerVo,nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
else if (HsgdbaseGroupLevelEnum.SEVEN.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
twoMapKey = completionVO.getLevelTwoGroup();
threeMapKey = completionVO.getLevelThreeGroup();
fourMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup();
fiveMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup();
sixMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup()
+ "-" + completionVO.getLevelSixGroup();
sevenMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup()
+ "-" + completionVO.getLevelSixGroup() + "-" + completionVO.getLevelSevenGroup();
if(groupOneLevelMap.get(oneMapKey) == null){
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) == null){
this.queryTwoLevelGroup(twoMapKey, groupTwoLevelMap, completionVO);
}
if(groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) == null){
this.queryThreeLevelGroup(threeMapKey, groupThreeLevelMap, completionVO);
}
if(groupThreeLevelMap.get(threeMapKey) != null && groupFourLevelMap.get(fourMapKey) == null){
parentId = groupThreeLevelMap.get(threeMapKey).getGroupId();
this.queryFourLevelGroup(fourMapKey, groupFourLevelMap, completionVO,parentId);
}
if(groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) == null){
parentId = groupFourLevelMap.get(fourMapKey).getGroupId();
this.queryFiveLevelGroup(fiveMapKey, groupFiveLevelMap, completionVO,parentId);
}
if(groupFiveLevelMap.get(fiveMapKey) != null && groupSixLevelMap.get(sixMapKey) == null){
parentId = groupFiveLevelMap.get(fiveMapKey).getGroupId();
this.querySixLevelGroup(sixMapKey, groupSixLevelMap, completionVO,parentId);
}
if(groupSixLevelMap.get(sixMapKey) != null && groupSevenLevelMap.get(sevenMapKey) == null){
parentId = groupSixLevelMap.get(sixMapKey) .getGroupId();
this.querySevenLevelGroup(sevenMapKey, groupSevenLevelMap, completionVO,parentId);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) != null &&
groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) != null && groupSixLevelMap.get(sixMapKey) != null
&& groupSevenLevelMap.get(sevenMapKey) != null){
groupSimpleVo = groupSevenLevelMap.get(sevenMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo,customerVo,nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
else if (HsgdbaseGroupLevelEnum.EIGHT.getGroupLevel().equals(completionVO.getGroupLevel())) {
oneMapKey = completionVO.getLeveloneGroup();
twoMapKey = completionVO.getLevelTwoGroup();
threeMapKey = completionVO.getLevelThreeGroup();
fourMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup();
fiveMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup();
sixMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup()
+ "-" + completionVO.getLevelSixGroup();
sevenMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup()
+ "-" + completionVO.getLevelSixGroup() + "-" + completionVO.getLevelSevenGroup();
eightMapKey = completionVO.getLevelThreeGroup() + "-" + completionVO.getLevelFourGroup() + "-" + completionVO.getLevelFiveGroup()
+ "-" + completionVO.getLevelSixGroup() + "-" + completionVO.getLevelSevenGroup() + "-" + completionVO.getLevelEightGroup();
if(groupOneLevelMap.get(oneMapKey) == null){
this.queryoneLevelGroup(oneMapKey, groupOneLevelMap, completionVO);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) == null){
this.queryTwoLevelGroup(twoMapKey, groupTwoLevelMap, completionVO);
}
if(groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) == null){
this.queryThreeLevelGroup(threeMapKey, groupThreeLevelMap, completionVO);
}
if(groupThreeLevelMap.get(threeMapKey) != null && groupFourLevelMap.get(fourMapKey) == null){
parentId = groupThreeLevelMap.get(threeMapKey).getGroupId();
this.queryFourLevelGroup(fourMapKey, groupFourLevelMap, completionVO,parentId);
}
if(groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) == null){
parentId = groupFourLevelMap.get(fourMapKey).getGroupId();
this.queryFiveLevelGroup(fiveMapKey, groupFiveLevelMap, completionVO,parentId);
}
if(groupFiveLevelMap.get(fiveMapKey) != null && groupSixLevelMap.get(sixMapKey) == null){
parentId = groupFiveLevelMap.get(fiveMapKey).getGroupId();
this.querySixLevelGroup(sixMapKey, groupSixLevelMap, completionVO,parentId);
}
if(groupSixLevelMap.get(sixMapKey) != null && groupSevenLevelMap.get(sevenMapKey) == null){
parentId = groupSixLevelMap.get(sixMapKey) .getGroupId();
this.querySevenLevelGroup(sevenMapKey, groupSevenLevelMap, completionVO,parentId);
}
if( groupSevenLevelMap.get(sevenMapKey) != null && groupEightLevelMap.get(eightMapKey) == null){
parentId = groupSevenLevelMap.get(sevenMapKey).getGroupId();
this.queryEightLevelGroup(eightMapKey, groupEightLevelMap, completionVO,parentId);
}
if(groupOneLevelMap.get(oneMapKey) != null && groupTwoLevelMap.get(twoMapKey) != null && groupThreeLevelMap.get(threeMapKey) != null &&
groupFourLevelMap.get(fourMapKey) != null && groupFiveLevelMap.get(fiveMapKey) != null && groupSixLevelMap.get(sixMapKey) != null
&& groupSevenLevelMap.get(sevenMapKey) != null && groupEightLevelMap.get(eightMapKey) != null){
groupSimpleVo = groupEightLevelMap.get(eightMapKey);
baseGroupCustomer = this.createHsgdbaseGroupCutomerData(groupSimpleVo,customerVo,nowDate,importId);
groupCustomerList.add(baseGroupCustomer);
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
}else{
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(completionVO, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
if(CollectionUtils.isNotEmpty(groupCustomerList)){
List customerIds = groupCustomerList.stream().map(HsgdbaseGroupCustomer::getCustomerId).collect(Collectors.toList());
List groupCustomerIdList = iHsgdbaseGroupCustomerService.selectListByCustomerId(customerIds);
List existsList = groupCustomerIdList.stream().map(e -> e.getCustomerId() + "-" + e.getGroupId() ).collect(Collectors.toList());
List needInsertGroupCustomerList = new ArrayList<>();
for (HsgdbaseGroupCustomer customer : groupCustomerList){
if(!existsList.contains(customer.getCustomerId() + "-" + customer.getGroupId())){
needInsertGroupCustomerList.add(customer);
}else{
HsgdbaseGroupCustomerimportCompletion comRecord = completionMap.get(customer.getimportId());
notimportRecord = new HsgdbaseGroupCustomerNotimportRecord();
BeanUtils.copyProperties(comRecord, notimportRecord);
errorRecordList.add(notimportRecord);
}
}
if(CollectionUtils.isNotEmpty(needInsertGroupCustomerList)){
iHsgdbaseGroupCustomerService.saveBatch(needInsertGroupCustomerList);
}
}
if(CollectionUtils.isNotEmpty(errorRecordList)){
iHsgdbaseGroupCustomerNotimportRecordService.saveBatch(errorRecordList);
}
}
}
}
}
private HsgdbaseGroupCustomer createHsgdbaseGroupCutomerData(HsgdbaseGroupSimpleVO oneSimpleVo, HsgdbaseGroupCustomerSimpleVO customerVo, Date nowDate,Long importCustomerComId) {
HsgdbaseGroupCustomer hsgdbaseGroupCustomer = new HsgdbaseGroupCustomer();
hsgdbaseGroupCustomer.setGroupId(oneSimpleVo.getGroupId());
hsgdbaseGroupCustomer.setType(customerVo.getCustomerType());
hsgdbaseGroupCustomer.setBusType(Integer.parseInt(customerVo.getBusType()));
hsgdbaseGroupCustomer.setCustomerId(customerVo.getCustomerId());
hsgdbaseGroupCustomer.setPoiCode(customerVo.getPoiCode());
hsgdbaseGroupCustomer.setStatus(1);
hsgdbaseGroupCustomer.setCreated(nowDate);
hsgdbaseGroupCustomer.setCreatedBy(SYSTEM_USER_NAME);
hsgdbaseGroupCustomer.setCreatedById(-1L);
hsgdbaseGroupCustomer.setUpdated(nowDate);
hsgdbaseGroupCustomer.setUpdatedBy(SYSTEM_USER_NAME);
hsgdbaseGroupCustomer.setUpdatedById(-1L);
hsgdbaseGroupCustomer.setimportId(importCustomerComId);
return hsgdbaseGroupCustomer;
}
private HsgdbaseGroupSimpleVO queryoneLevelGroup(String oneMapKey, Map groupOneLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO) {
HsgdbaseGroupSimpleVO oneSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevel(completionVO.getLeveloneGroup(), HsgdbaseGroupLevelEnum.ONE.getGroupLevel());
if (oneSimpleVo != null) {
groupOneLevelMap.put(oneMapKey, oneSimpleVo);
}
return oneSimpleVo;
}
private HsgdbaseGroupSimpleVO queryTwoLevelGroup(String twoMapKey, Map groupTwoLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO) {
HsgdbaseGroupSimpleVO twoSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevel(completionVO.getLevelTwoGroup(), HsgdbaseGroupLevelEnum.TWO.getGroupLevel());
if (twoSimpleVo != null) {
groupTwoLevelMap.put(twoMapKey, twoSimpleVo);
}
return twoSimpleVo;
}
private HsgdbaseGroupSimpleVO queryThreeLevelGroup(String threeMapKey, Map groupThreeLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO) {
HsgdbaseGroupSimpleVO threeSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevel(completionVO.getLevelThreeGroup(), HsgdbaseGroupLevelEnum.THREE.getGroupLevel());
if (threeSimpleVo != null) {
groupThreeLevelMap.put(threeMapKey, threeSimpleVo);
}
return threeSimpleVo;
}
private HsgdbaseGroupSimpleVO queryFourLevelGroup(String fourMapKey, Map groupFourLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO, Long parentId) {
HsgdbaseGroupSimpleVO fourSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevelAndParentId(completionVO.getLevelFourGroup(), HsgdbaseGroupLevelEnum.FOUR.getGroupLevel(), parentId);
if (fourSimpleVo != null) {
groupFourLevelMap.put(fourMapKey, fourSimpleVo);
}
return fourSimpleVo;
}
private HsgdbaseGroupSimpleVO queryFiveLevelGroup(String fiveMapKey, Map groupFiveLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO, Long parentId) {
HsgdbaseGroupSimpleVO fiveSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevelAndParentId(completionVO.getLevelFiveGroup(), HsgdbaseGroupLevelEnum.FIVE.getGroupLevel(), parentId);
if (fiveSimpleVo != null) {
groupFiveLevelMap.put(fiveMapKey, fiveSimpleVo);
}
return fiveSimpleVo;
}
private HsgdbaseGroupSimpleVO querySixLevelGroup(String sixMapKey, Map groupSixLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO, Long parentId) {
HsgdbaseGroupSimpleVO sixSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevelAndParentId(completionVO.getLevelSixGroup(),HsgdbaseGroupLevelEnum.SIX.getGroupLevel(), parentId);
if(sixSimpleVo != null){
groupSixLevelMap.put(sixMapKey,sixSimpleVo);
}
return sixSimpleVo;
}
private HsgdbaseGroupSimpleVO querySevenLevelGroup(String sevenMapKey, Map groupSevenLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO, Long parentId) {
HsgdbaseGroupSimpleVO sevenSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevelAndParentId(completionVO.getLevelSevenGroup(), HsgdbaseGroupLevelEnum.SEVEN.getGroupLevel(),parentId);
if (sevenSimpleVo != null) {
groupSevenLevelMap.put(sevenMapKey, sevenSimpleVo);
}
return sevenSimpleVo;
}
private HsgdbaseGroupSimpleVO queryEightLevelGroup(String eightMapKey, Map groupEightLevelMap, HsgdbaseGroupCustomerimportCompletion completionVO, Long parentId) {
HsgdbaseGroupSimpleVO eightSimpleVo = iZhgdSrbaseGroupimportService.getGroupSimpleByGroupNameAndLevelAndParentId(completionVO.getLevelEightGroup(), HsgdbaseGroupLevelEnum.EIGHT.getGroupLevel(), parentId);
if (eightSimpleVo != null) {
groupEightLevelMap.put(eightMapKey, eightSimpleVo);
}
return eightSimpleVo;
}
}
package com.zhgd.base.mapper; import com.baomidou.mybatisplus.core.mapper.baseMapper; import com.zhgd.base.entity.HsgdbaseGroupCustomerimportRecord; import com.zhgd.base.entity.HsgdbaseGroupimportRecord; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import java.util.List; @Repository public interface HsgdbaseGroupCustomerimportRecordMapper extends baseMapper{ Boolean insertAll(@Param("paramList") List param); int countimportbaseGroupCustomerDataTotalByBatchNo(String batchNo); List selectListByBatchNo(String batchNo); }
HsgdbaseGroupCustomerimportRecordMapper.xml
ID, LEVEL_ONE_GROUP, LEVEL_TWO_GROUP, LEVEL_THREE_GROUP, LEVEL_FOUR_GROUP, LEVEL_FIVE_GROUP, LEVEL_SIX_GROUP, LEVEL_SEVEN_GROUP, LEVEL_EIGHT_GROUP, CUSTOMER_ID, POI_CODE, CREATED, CREATED_BY, UPDATED, UPDATED_BY, BATCH_NO insert into HSGD_base_GROUP_CUSTOMER_import_RECORD LEVEL_ONE_GROUP, LEVEL_TWO_GROUP, LEVEL_THREE_GROUP, LEVEL_FOUR_GROUP, LEVEL_FIVE_GROUP, LEVEL_SIX_GROUP, LEVEL_SEVEN_GROUP, LEVEL_EIGHT_GROUP, CUSTOMER_ID, POI_CODE, CREATED, CREATED_BY, UPDATED, UPDATED_BY, BATCH_NO, VALUES#{param.levelOneGroup, jdbcType=VARCHAR}, #{param.levelTwoGroup, jdbcType=VARCHAR}, #{param.levelThreeGroup, jdbcType=VARCHAR}, #{param.levelFourGroup, jdbcType=VARCHAR}, #{param.levelFiveGroup, jdbcType=VARCHAR}, #{param.levelSixGroup, jdbcType=VARCHAR}, #{param.levelSevenGroup, jdbcType=VARCHAR}, #{param.levelEightGroup, jdbcType=VARCHAR}, #{param.customerId, jdbcType=BIGINT}, #{param.poiCode, jdbcType=BIGINT}, #{param.created, jdbcType=TIMESTAMP}, #{param.createdBy, jdbcType=VARCHAR}, #{param.updated, jdbcType=TIMESTAMP}, #{param.updatedBy, jdbcType=VARCHAR}, #{param.batchNo, jdbcType=VARCHAR},
package com.zhgd.base.mapper; import com.baomidou.mybatisplus.core.mapper.baseMapper; import com.zhgd.base.domain.vo.HsgdbaseGroupCustomerSimpleVO; import com.zhgd.base.entity.HsgdbaseGroupCustomerimportCompletion; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import java.util.List; @Repository public interface HsgdbaseGroupCustomerimportCompletionMapper extends baseMapper{ Boolean insertAll(@Param("paramList") List param); List selectListByBatchNo(String batchNo); List querySrCustomerInfoByIds(@Param("list") List customerIdList); List queryDealerCustomerInfoByIds(List customerIdList); }
HsgdbaseGroupCustomerimportCompletionMapper.xml
ID, LEVEL_ONE_GROUP, LEVEL_TWO_GROUP, LEVEL_THREE_GROUP, LEVEL_FOUR_GROUP, LEVEL_FIVE_GROUP, LEVEL_SIX_GROUP, LEVEL_SEVEN_GROUP, LEVEL_EIGHT_GROUP, CUSTOMER_ID, POI_CODE, CREATED, CREATED_BY, UPDATED, UPDATED_BY, BATCH_NO,GROUP_LEVEL insert into HSGD_base_GROUP_CUSTOMER_import_COMPLETION LEVEL_ONE_GROUP, LEVEL_TWO_GROUP, LEVEL_THREE_GROUP, LEVEL_FOUR_GROUP, LEVEL_FIVE_GROUP, LEVEL_SIX_GROUP, LEVEL_SEVEN_GROUP, LEVEL_EIGHT_GROUP, CUSTOMER_ID, POI_CODE, CREATED, CREATED_BY, UPDATED, UPDATED_BY, BATCH_NO, GROUP_LEVEL, VALUES#{param.levelOneGroup, jdbcType=VARCHAR}, #{param.levelTwoGroup, jdbcType=VARCHAR}, #{param.levelThreeGroup, jdbcType=VARCHAR}, #{param.levelFourGroup, jdbcType=VARCHAR}, #{param.levelFiveGroup, jdbcType=VARCHAR}, #{param.levelSixGroup, jdbcType=VARCHAR}, #{param.levelSevenGroup, jdbcType=VARCHAR}, #{param.levelEightGroup, jdbcType=VARCHAR}, #{param.customerId, jdbcType=BIGINT}, #{param.poiCode, jdbcType=BIGINT}, #{param.created, jdbcType=TIMESTAMP}, #{param.createdBy, jdbcType=VARCHAR}, #{param.updated, jdbcType=TIMESTAMP}, #{param.updatedBy, jdbcType=VARCHAR}, #{param.batchNo, jdbcType=VARCHAR}, #{param.groupLevel, jdbcType=INTEGER}, SELECT FROM HSGD_base_GROUP_CUSTOMER_import_COMPLETION WITH(NOLOCK) WHERe BATCH_NO = #{batchNo} ORDER BY LEVEL_ONE_GROUP,LEVEL_TWO_GROUP,LEVEL_THREE_GROUP,LEVEL_FOUR_GROUP,LEVEL_FIVE_GROUP,LEVEL_SIX_GROUP,LEVEL_SEVEN_GROUP,LEVEL_EIGHT_GROUP SELECT businessInfo.CUSTOMER_ID AS customerId, 1 AS customerType, businessInfo.BUS_TYPE AS busType, wsCustomer.ORG_ID AS poiCode FROM CRM_BUSINESS_INFO businessInfo WITH(NOLOCK) LEFT JOIN CRM_WS_CUSTOMER wsCustomer WITH(NOLOCK) ON businessInfo.CUSTOMER_ID = wsCustomer.CUSTOMER_ID WHERe businessInfo.BUS_STATUS = 1 AND wsCustomer.CUST_STATUS = 1 AND businessInfo.CUSTOMER_ID IN #{custoemrId} SELECT wsCustomer.CUSTOMER_ID AS customerId, 2 AS customerType, CASE WHEN poiInfo.POI_TYPE = 'saler' THEN 1 WHEN poiInfo.POI_TYPE = 'dealer' AND poiInfo.DEALER_SOURCE_TYPE = '经销商' THEN 3 WHEN poiInfo.POI_TYPE = 'dealer' AND poiInfo.DEALER_SOURCE_TYPE = '镇村通伙伴' THEN 2 END AS busType, wsCustomer.ORG_ID AS poiCode FROM CRM_WS_CUSTOMER wsCustomer WITH(NOLOCK) LEFT JOIN CRM_POI_INFO poiInfo WITH(NOLOCK) ON poiInfo.POI_CODE = wsCustomer.ORG_ID WHERe poiInfo.STATUS = 1 AND wsCustomer.CUST_STATUS = 1 AND wsCustomer.CUSTOMER_ID IN #{custoemrId} AND poiInfo.POI_TYPE IN ('dealer','saler')
package com.zhgd.base.service;
import com.zhgd.base.domain.model.ZhgdSrGroupCustomerimportModel;
import com.zhgd.base.entity.HsgdbaseGroupCustomerimportCompletion;
import java.util.List;
public interface IZhgdSrbaseGroupimportCustomerHandleService {
void saveSrbaseGroupCustomerimportDataList(List dataList);
void saveSrbaseGroupCustomerimportData(ZhgdSrGroupCustomerimportModel data);
void insertAllimportCompletion(List completionList);
}
package com.zhgd.base.service.impl;
import com.zhgd.base.domain.model.ZhgdSrGroupCustomerimportModel;
import com.zhgd.base.entity.HsgdbaseGroupCustomerimportCompletion;
import com.zhgd.base.entity.HsgdbaseGroupCustomerimportRecord;
import com.zhgd.base.entity.HsgdbaseGroupimportRecord;
import com.zhgd.base.mapper.HsgdbaseGroupCustomerimportCompletionMapper;
import com.zhgd.base.service.IZhgdSrbaseGroupCustomerimportService;
import com.zhgd.base.service.IZhgdSrbaseGroupimportCustomerHandleService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.math.NumberUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Service
@Slf4j
public class ZhgdSrbaseGroupimportCustomerHandleServiceImpl implements IZhgdSrbaseGroupimportCustomerHandleService {
@Resource
private IZhgdSrbaseGroupCustomerimportService iZhgdSrbaseGroupCustomerimportService;
@Resource
private HsgdbaseGroupCustomerimportCompletionMapper hsgdbaseGroupCustomerimportCompletionMapper;
@Override
public void saveSrbaseGroupCustomerimportDataList(List dataList) {
Date nowDate = new Date();
final String userName = "system";
if(CollectionUtils.isNotEmpty(dataList)){
List recordList = new ArrayList();
HsgdbaseGroupCustomerimportRecord record = null;
for (int i=0,len = dataList.size();i< len;i++){
ZhgdSrGroupCustomerimportModel importModel = dataList.get(i);
record = new HsgdbaseGroupCustomerimportRecord();
BeanUtils.copyProperties(importModel,record);
record.setCreated(nowDate);
record.setCreatedBy(userName);
record.setUpdated(nowDate);
record.setUpdatedBy(userName);
if(StringUtils.isNotBlank(importModel.getCustomerID()) && NumberUtils.isNumber(importModel.getCustomerID())){
record.setCustomerId(Long.parseLong(importModel.getCustomerID()));
}
if(StringUtils.isNotBlank(importModel.getPoiCode()) && NumberUtils.isNumber(importModel.getPoiCode())){
record.setPoiCode(Long.parseLong(importModel.getPoiCode()));
}
recordList.add(record);
};
iZhgdSrbaseGroupCustomerimportService.batchInsertAll(recordList);
}
}
@Override
public void saveSrbaseGroupCustomerimportData(ZhgdSrGroupCustomerimportModel data) {
Date nowDate = new Date();
final String userName = "system";
if(data != null){
HsgdbaseGroupCustomerimportRecord record = new HsgdbaseGroupCustomerimportRecord();
BeanUtils.copyProperties(data,record);
record.setCreated(nowDate);
record.setCreatedBy(userName);
record.setUpdated(nowDate);
record.setUpdatedBy(userName);
if(StringUtils.isNotBlank(data.getCustomerID()) && NumberUtils.isNumber(data.getCustomerID())){
record.setCustomerId(Long.parseLong(data.getCustomerID()));
}
if(StringUtils.isNotBlank(data.getPoiCode()) && NumberUtils.isNumber(data.getPoiCode())){
record.setPoiCode(Long.parseLong(data.getPoiCode()));
}
iZhgdSrbaseGroupCustomerimportService.insert(record);
}
}
@Override
@Transactional
public void insertAllimportCompletion(List completionList) {
hsgdbaseGroupCustomerimportCompletionMapper.insertAll(completionList);
}
}
package com.zhgd.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.zhgd.base.entity.HsgdbaseGroupCustomer; import java.util.List; public interface IHsgdbaseGroupCustomerService extends IService{ Boolean saveBatch(List param); long countExistsGroupCustomer(Long customerId, Long groupId); void insert(HsgdbaseGroupCustomer customer); List selectListByCustomerId(List customerIds); }
package com.zhgd.base.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zhgd.base.entity.HsgdbaseGroupCustomer; import com.zhgd.base.mapper.HsgdbaseGroupCustomerMapper; import com.zhgd.base.service.IHsgdbaseGroupCustomerService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; @Service @Slf4j public class HsgdbaseGroupCustomerServiceImpl extends ServiceImplimplements IHsgdbaseGroupCustomerService { @Transactional(rollbackFor = Exception.class) @Override public Boolean saveBatch(List param) { return this.getbaseMapper().insertAll(param); } @Override public long countExistsGroupCustomer(Long customerId, Long groupId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("CUSTOMER_ID",customerId); queryWrapper.eq("GROUP_ID",groupId); queryWrapper.eq("STATUS",1); long count = this.getbaseMapper().selectCount(queryWrapper); return count; } @Override public void insert(HsgdbaseGroupCustomer customer) { this.getbaseMapper().insert(customer); } @Override public List selectListByCustomerId(List customerIds) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.in("CUSTOMER_ID",customerIds); queryWrapper.eq("STATUS",1); return this.getbaseMapper().selectList(queryWrapper); } }
导入之后
HSGD_base_GROUP_CUSTOMER_import_RECORD
HSGD_base_GROUP_CUSTOMER_import_COMPLETION
HSGD_base_GROUP_CUSTOMER_NOT_import_RECORD


![Java EasyExcel导入组织人员[精品推荐] Java EasyExcel导入组织人员[精品推荐]](http://www.mshxw.com/aiimages/31/340410.png)
