|
@@ -1,14 +1,22 @@
|
|
package com.ozs.base.service.impl;
|
|
package com.ozs.base.service.impl;
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
-import com.ozs.base.domain.BaseExpert;
|
|
|
|
import com.ozs.base.domain.BaseSupplier;
|
|
import com.ozs.base.domain.BaseSupplier;
|
|
-import com.ozs.base.mapper.BaseExpertMapper;
|
|
|
|
|
|
+import com.ozs.base.domain.vo.BaseSupplierVo;
|
|
import com.ozs.base.mapper.BaseSupplierMapper;
|
|
import com.ozs.base.mapper.BaseSupplierMapper;
|
|
import com.ozs.base.service.BaseSupplierService;
|
|
import com.ozs.base.service.BaseSupplierService;
|
|
|
|
+import com.ozs.common.core.domain.AjaxResult;
|
|
|
|
+import com.ozs.common.core.domain.model.LoginUser;
|
|
|
|
+import com.ozs.common.exception.ServiceException;
|
|
|
|
+import com.ozs.common.utils.bean.BeanUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
+import org.springframework.util.ObjectUtils;
|
|
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.Date;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -23,8 +31,16 @@ public class BaseSupplierServiceImpl extends ServiceImpl<BaseSupplierMapper, Bas
|
|
private BaseSupplierMapper baseSupplierMapper;
|
|
private BaseSupplierMapper baseSupplierMapper;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public int insertBaseSupplier(BaseSupplier baseSupplier) {
|
|
|
|
- return baseSupplierMapper.insertBaseSupplier(baseSupplier);
|
|
|
|
|
|
+ public AjaxResult insertBaseSupplier(BaseSupplier baseSupplier) {
|
|
|
|
+ //查询供应商名称是否已使用
|
|
|
|
+ LambdaQueryWrapper<BaseSupplier> baseSupplierWrapper = new LambdaQueryWrapper<>();
|
|
|
|
+ baseSupplierWrapper.eq(BaseSupplier::getSupplierName, baseSupplier.getSupplierName());
|
|
|
|
+ List<BaseSupplier> supplierNameList = baseSupplierMapper.selectList(baseSupplierWrapper);
|
|
|
|
+ //供应商名称已存在的不可添加
|
|
|
|
+ if (!ObjectUtils.isEmpty(supplierNameList)) {
|
|
|
|
+ return AjaxResult.error("供应商名称“" + baseSupplier.getSupplierName() + "”已被使用");
|
|
|
|
+ }
|
|
|
|
+ return AjaxResult.success(baseSupplierMapper.insertBaseSupplier(baseSupplier));
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -41,4 +57,50 @@ public class BaseSupplierServiceImpl extends ServiceImpl<BaseSupplierMapper, Bas
|
|
public List<BaseSupplier> selectBaseSupplier(BaseSupplier baseSupplier) {
|
|
public List<BaseSupplier> selectBaseSupplier(BaseSupplier baseSupplier) {
|
|
return baseSupplierMapper.selectBaseSupplier(baseSupplier);
|
|
return baseSupplierMapper.selectBaseSupplier(baseSupplier);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Transactional
|
|
|
|
+ @Override
|
|
|
|
+ public String importBaseSuppliers(List<BaseSupplierVo> supplierVos, LoginUser loginUser) {
|
|
|
|
+ //操作成功和失败的标签
|
|
|
|
+ int successNum = 0;
|
|
|
|
+ int failureNum = 0;
|
|
|
|
+ StringBuilder successMsg = new StringBuilder();
|
|
|
|
+ StringBuilder failureMsg = new StringBuilder();
|
|
|
|
+ //转实体类
|
|
|
|
+ List<BaseSupplier> suppliers = new ArrayList<>();
|
|
|
|
+ for (BaseSupplierVo supplierVo : supplierVos) {
|
|
|
|
+ BaseSupplier supplier = new BaseSupplier();
|
|
|
|
+ BeanUtils.copyProperties(supplierVo, supplier);
|
|
|
|
+ //默认白名单
|
|
|
|
+ supplier.setSupplierState("1");
|
|
|
|
+ suppliers.add(supplier);
|
|
|
|
+ }
|
|
|
|
+ for (BaseSupplier supplier : suppliers) {
|
|
|
|
+ //查询供应商名称是否已使用
|
|
|
|
+ LambdaQueryWrapper<BaseSupplier> baseSupplierWrapper = new LambdaQueryWrapper<>();
|
|
|
|
+ baseSupplierWrapper.eq(BaseSupplier::getSupplierName, supplier.getSupplierName());
|
|
|
|
+ List<BaseSupplier> supplierNameList = baseSupplierMapper.selectList(baseSupplierWrapper);
|
|
|
|
+ //供应商名称已存在的不可添加
|
|
|
|
+ if (!ObjectUtils.isEmpty(supplierNameList)) {
|
|
|
|
+ ++failureNum;
|
|
|
|
+ failureMsg.append(failureNum + "、供应商名称“" + supplier.getSupplierName() + "”已被使用");
|
|
|
|
+ }
|
|
|
|
+ //是否预先采购
|
|
|
|
+ supplier.setSupplierAdvancePurchase(supplier.getSupplierAdvancePurchase().equals("是") ? "1" : "0");
|
|
|
|
+ supplier.setCreated(String.valueOf(loginUser.getUserId()));
|
|
|
|
+ supplier.setCreateTime(new Date());
|
|
|
|
+ supplier.setUpdated(String.valueOf(loginUser.getUserId()));
|
|
|
|
+ supplier.setUpdateTime(new Date());
|
|
|
|
+ baseSupplierMapper.insert(supplier);
|
|
|
|
+ successNum++;
|
|
|
|
+ successMsg.append(successNum + "、供应商【" + supplier.getSupplierName() + "】导入成功!");
|
|
|
|
+ }
|
|
|
|
+ if (failureNum > 0) {
|
|
|
|
+ failureMsg.insert(0, "导入失败!共 " + failureNum + " 条数据格式不正确:");
|
|
|
|
+ throw new ServiceException(failureMsg.toString());
|
|
|
|
+ } else {
|
|
|
|
+ successMsg.insert(0, "导入成功!共 " + successNum + " 条。");
|
|
|
|
+ }
|
|
|
|
+ return successMsg.toString();
|
|
|
|
+ }
|
|
}
|
|
}
|