|
|
@@ -8,7 +8,10 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
+import org.springblade.client.corps.excel.CorpsCompanyExcel;
|
|
|
import org.springblade.client.corps.excel.CorpsExcel;
|
|
|
+import org.springblade.client.corps.excel.CorpsSupplierExcel;
|
|
|
+import org.springblade.client.corps.mapper.CorpsAddrMapper;
|
|
|
import org.springblade.client.corps.mapper.CorpsDescMapper;
|
|
|
import org.springblade.client.corps.mapper.CorpsTypeDescMapper;
|
|
|
import org.springblade.client.corps.mapper.CorpsTypeMapper;
|
|
|
@@ -47,8 +50,10 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
private CorpsTypeServiceImpl corpsTypeService;
|
|
|
private CorpsTypeMapper corpsTypeMapper;
|
|
|
private CorpsAddrServiceImpl corpsAddrService;
|
|
|
- @Autowired
|
|
|
- private CorpsTypeDescMapper middleMapper;
|
|
|
+
|
|
|
+ private final CorpsTypeDescMapper middleMapper;
|
|
|
+
|
|
|
+ private final CorpsAddrMapper corpsAddrMapper;
|
|
|
|
|
|
@Override
|
|
|
public IPage<CorpsDescVO> selectCorpsDescPage(IPage<CorpsDescVO> page, CorpsDescVO corpsDesc) {
|
|
|
@@ -209,10 +214,11 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
corpsDesc.setCompanytype(e.getCompanytype());
|
|
|
corpsDesc.setPosition(e.getPosition());
|
|
|
corpsDesc.setCorpsTypeId(String.valueOf(corpsType.getId()));
|
|
|
- corpsDesc.setCorpType(corpType);
|
|
|
+ corpsDesc.setCorpType("KH");
|
|
|
//名称相等视为重复数据
|
|
|
LambdaQueryWrapper<CorpsDesc> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
queryWrapper.eq(CorpsDesc::getCname,corpsDesc.getCname());
|
|
|
+ queryWrapper.eq(CorpsDesc::getCorpType,"KH");
|
|
|
queryWrapper.eq(CorpsDesc::getIsDeleted,0);
|
|
|
CorpsDesc selectOne = baseMapper.selectOne(queryWrapper);
|
|
|
if(selectOne==null)
|
|
|
@@ -229,6 +235,25 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
middle.setCreateUser(AuthUtil.getUserId());
|
|
|
middle.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
middleMapper.insert(middle);
|
|
|
+
|
|
|
+ //绑定收货地址
|
|
|
+ String addressList = e.getAddressList();
|
|
|
+ String[] split = addressList.split("-");
|
|
|
+ List<String> list = Arrays.asList(split);
|
|
|
+ if(CollectionUtils.isNotEmpty(list))
|
|
|
+ {
|
|
|
+ list.forEach(lt->{
|
|
|
+ CorpsAddr corpsAddr=new CorpsAddr();
|
|
|
+ corpsAddr.setPid(corpsDesc.getId());
|
|
|
+ corpsAddr.setAddr(lt);
|
|
|
+ corpsAddr.setCreateTime(new Date());
|
|
|
+ corpsAddr.setCreateUser(AuthUtil.getUserId());
|
|
|
+ corpsAddrMapper.insert(corpsAddr);
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
@@ -262,6 +287,170 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public R importCompanyDesc(List<CorpsCompanyExcel> data, Boolean isCovered, String corpType)
|
|
|
+ {
|
|
|
+ try {
|
|
|
+ if(org.springframework.util.CollectionUtils.isEmpty(data))
|
|
|
+ {
|
|
|
+ throw new SecurityException("导入数据不能为空");
|
|
|
+ }
|
|
|
+ List<Boolean> countList=new ArrayList<>();
|
|
|
+
|
|
|
+ data.forEach(e->{
|
|
|
+ String type = e.getType();
|
|
|
+ CorpsType corpsType = corpsTypeMapper.selectCorpsTypeCname(type, AuthUtil.getTenantId());
|
|
|
+ if(corpsType!=null)
|
|
|
+ {
|
|
|
+ countList.add(true);
|
|
|
+ CorpsDesc corpsDesc=new CorpsDesc();
|
|
|
+ corpsDesc.setCode(e.getCode());
|
|
|
+ corpsDesc.setCname(e.getCname());
|
|
|
+ corpsDesc.setAccountBank(e.getAccountBank());
|
|
|
+ corpsDesc.setAccountNo(e.getAccountNo());
|
|
|
+ corpsDesc.setAccountBankFcy(e.getAccountBankFcy());
|
|
|
+ corpsDesc.setTenantId(AuthUtil.getTenantId());
|
|
|
+ corpsDesc.setAccountNoFcy(e.getAccountNoFcy());
|
|
|
+ corpsDesc.setCorpsTypeId(String.valueOf(corpsType.getId()));
|
|
|
+ corpsDesc.setCorpType("GS");
|
|
|
+ //名称相等视为重复数据
|
|
|
+ LambdaQueryWrapper<CorpsDesc> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(CorpsDesc::getCname,corpsDesc.getCname());
|
|
|
+ queryWrapper.eq(CorpsDesc::getIsDeleted,0);
|
|
|
+ queryWrapper.eq(CorpsDesc::getCorpType,"GS");
|
|
|
+ CorpsDesc selectOne = baseMapper.selectOne(queryWrapper);
|
|
|
+ if(selectOne==null)
|
|
|
+ {
|
|
|
+ corpsDesc.setCorpType("GS");
|
|
|
+ corpsDesc.setCreateTime(new Date());
|
|
|
+ corpsDesc.setCreateUser(AuthUtil.getUserId());
|
|
|
+ corpsDesc.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ baseMapper.insert(corpsDesc);
|
|
|
+
|
|
|
+ CorpsTypeDesc middle=new CorpsTypeDesc();
|
|
|
+ middle.setCorpId(corpsDesc.getId());
|
|
|
+ middle.setCorpTypeId(corpsType.getId());
|
|
|
+ middle.setCreateTime(new Date());
|
|
|
+ middle.setCreateUser(AuthUtil.getUserId());
|
|
|
+ middle.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ middleMapper.insert(middle);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ corpsDesc.setCorpType("GS");
|
|
|
+ corpsDesc.setId(selectOne.getId());
|
|
|
+ corpsDesc.setUpdateTime(new Date());
|
|
|
+ corpsDesc.setUpdateUser(AuthUtil.getUserId());
|
|
|
+ baseMapper.updateById(corpsDesc);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ countList.add(false);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ List<Boolean> booleanList = countList.stream().filter(e -> e == true).collect(Collectors.toList());
|
|
|
+ if(data.size()>booleanList.size())
|
|
|
+ {
|
|
|
+ return R.fail("导入中的数据,输入的公司分类不存在或者未填分类字段");
|
|
|
+ }
|
|
|
+ else if(data.size()==booleanList.size())
|
|
|
+ {
|
|
|
+ return R.success("导入成功");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ throw new SecurityException("导入失败,请仔细检查导入数据");
|
|
|
+ }
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new SecurityException("请检查导入数据");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public R importSupplierDesc(List<CorpsSupplierExcel> data, Boolean isCovered, String corpType)
|
|
|
+ {
|
|
|
+ try {
|
|
|
+ if(org.springframework.util.CollectionUtils.isEmpty(data))
|
|
|
+ {
|
|
|
+ throw new SecurityException("导入数据不能为空");
|
|
|
+ }
|
|
|
+ List<Boolean> countList=new ArrayList<>();
|
|
|
+
|
|
|
+ data.forEach(e->{
|
|
|
+ String type = e.getType();
|
|
|
+ CorpsType corpsType = corpsTypeMapper.selectCorpsTypeCname(type, AuthUtil.getTenantId());
|
|
|
+ if(corpsType!=null)
|
|
|
+ {
|
|
|
+ countList.add(true);
|
|
|
+ CorpsDesc corpsDesc=new CorpsDesc();
|
|
|
+ corpsDesc.setCode(e.getCode());
|
|
|
+ corpsDesc.setCname(e.getCname());
|
|
|
+ corpsDesc.setAccountBank(e.getAccountBank());
|
|
|
+ corpsDesc.setAccountNo(e.getAccountNo());
|
|
|
+ corpsDesc.setAccountBankFcy(e.getAccountBankFcy());
|
|
|
+ corpsDesc.setTenantId(AuthUtil.getTenantId());
|
|
|
+ corpsDesc.setAccountNoFcy(e.getAccountNoFcy());
|
|
|
+ corpsDesc.setCorpsTypeId(String.valueOf(corpsType.getId()));
|
|
|
+ corpsDesc.setCorpType("GYS");
|
|
|
+ //名称相等视为重复数据
|
|
|
+ LambdaQueryWrapper<CorpsDesc> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(CorpsDesc::getCname,corpsDesc.getCname());
|
|
|
+ queryWrapper.eq(CorpsDesc::getIsDeleted,0);
|
|
|
+ queryWrapper.eq(CorpsDesc::getCorpType,"GYS");
|
|
|
+ CorpsDesc selectOne = baseMapper.selectOne(queryWrapper);
|
|
|
+ if(selectOne==null)
|
|
|
+ {
|
|
|
+ corpsDesc.setCorpType("GYS");
|
|
|
+ corpsDesc.setCreateTime(new Date());
|
|
|
+ corpsDesc.setCreateUser(AuthUtil.getUserId());
|
|
|
+ corpsDesc.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ baseMapper.insert(corpsDesc);
|
|
|
+
|
|
|
+ CorpsTypeDesc middle=new CorpsTypeDesc();
|
|
|
+ middle.setCorpId(corpsDesc.getId());
|
|
|
+ middle.setCorpTypeId(corpsType.getId());
|
|
|
+ middle.setCreateTime(new Date());
|
|
|
+ middle.setCreateUser(AuthUtil.getUserId());
|
|
|
+ middle.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
+ middleMapper.insert(middle);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ corpsDesc.setCorpType("GYS");
|
|
|
+ corpsDesc.setId(selectOne.getId());
|
|
|
+ corpsDesc.setUpdateTime(new Date());
|
|
|
+ corpsDesc.setUpdateUser(AuthUtil.getUserId());
|
|
|
+ baseMapper.updateById(corpsDesc);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ countList.add(false);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ List<Boolean> booleanList = countList.stream().filter(e -> e == true).collect(Collectors.toList());
|
|
|
+ if(data.size()>booleanList.size())
|
|
|
+ {
|
|
|
+ return R.fail("导入中的数据,输入的公司分类不存在或者未填分类字段");
|
|
|
+ }
|
|
|
+ else if(data.size()==booleanList.size())
|
|
|
+ {
|
|
|
+ return R.success("导入成功");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ throw new SecurityException("导入失败,请仔细检查导入数据");
|
|
|
+ }
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new SecurityException("请检查导入数据");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 保护客户联系人信息
|