mirror of
https://codeup.aliyun.com/64f7d6b8ce01efaafef1e678/coal/coal.git
synced 2026-01-25 07:46:40 +08:00
feat: 增加批量录入功能
This commit is contained in:
@@ -4,6 +4,7 @@ import cn.lihongjie.coal.annotation.OrgScope;
|
||||
import cn.lihongjie.coal.annotation.SysLog;
|
||||
import cn.lihongjie.coal.base.dto.CommonQuery;
|
||||
import cn.lihongjie.coal.base.dto.IdRequest;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.BatchAddRequest;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.CreateWarehouseGoodsUnitDto;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.UpdateWarehouseGoodsUnitDto;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.WarehouseGoodsUnitDto;
|
||||
@@ -51,4 +52,11 @@ public class WarehouseGoodsUnitController {
|
||||
public Page<WarehouseGoodsUnitDto> list(@RequestBody CommonQuery request) {
|
||||
return this.service.list(request);
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/batchAdd")
|
||||
public Boolean batchAdd(@RequestBody BatchAddRequest request) {
|
||||
this.service.batchAdd(request);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package cn.lihongjie.coal.warehouseGoodsUnit.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@Data
|
||||
public class BatchAddRequest {
|
||||
|
||||
private List<String> names;
|
||||
}
|
||||
@@ -2,7 +2,9 @@ package cn.lihongjie.coal.warehouseGoodsUnit.service;
|
||||
|
||||
import cn.lihongjie.coal.base.dto.CommonQuery;
|
||||
import cn.lihongjie.coal.base.dto.IdRequest;
|
||||
import cn.lihongjie.coal.base.mapper.CommonMapper;
|
||||
import cn.lihongjie.coal.base.service.BaseService;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.BatchAddRequest;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.CreateWarehouseGoodsUnitDto;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.UpdateWarehouseGoodsUnitDto;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.dto.WarehouseGoodsUnitDto;
|
||||
@@ -10,8 +12,13 @@ import cn.lihongjie.coal.warehouseGoodsUnit.entity.WarehouseGoodsUnitEntity;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.mapper.WarehouseGoodsUnitMapper;
|
||||
import cn.lihongjie.coal.warehouseGoodsUnit.repository.WarehouseGoodsUnitRepository;
|
||||
|
||||
import jakarta.persistence.EntityManager;
|
||||
import jakarta.persistence.PersistenceContext;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.convert.ConversionService;
|
||||
import org.springframework.data.domain.Page;
|
||||
@@ -22,12 +29,14 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
@Transactional
|
||||
public class WarehouseGoodsUnitService
|
||||
extends BaseService<WarehouseGoodsUnitEntity, WarehouseGoodsUnitRepository> {
|
||||
@PersistenceContext EntityManager em;
|
||||
@Autowired private WarehouseGoodsUnitRepository repository;
|
||||
|
||||
@Autowired private WarehouseGoodsUnitMapper mapper;
|
||||
@@ -71,7 +80,34 @@ public class WarehouseGoodsUnitService
|
||||
|
||||
return page.map(this.mapper::toDto);
|
||||
}
|
||||
@Autowired private CommonMapper commonMapper;
|
||||
|
||||
public void batchAdd(BatchAddRequest request) {
|
||||
|
||||
if (CollectionUtils.isNotEmpty(request.getNames())) {
|
||||
|
||||
Set<String> set =
|
||||
request.getNames().stream()
|
||||
.distinct()
|
||||
.map(StringUtils::trim)
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
List<String> exists =
|
||||
em.createQuery(
|
||||
"select distinct name from WarehouseGoodsUnitEntity",
|
||||
String.class)
|
||||
.getResultList();
|
||||
set.removeAll(exists);
|
||||
if (CollectionUtils.isNotEmpty(set)) {
|
||||
set.forEach(
|
||||
name -> {
|
||||
WarehouseGoodsUnitEntity entity = new WarehouseGoodsUnitEntity();
|
||||
entity.setName(name);
|
||||
this.repository.save(entity);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void init(String orgId) {
|
||||
|
||||
@@ -81,10 +117,10 @@ public class WarehouseGoodsUnitService
|
||||
return;
|
||||
}
|
||||
|
||||
Set<String> units = Set.of(
|
||||
"吨", "千克", "克", "升", "毫升", "个", "件", "台", "套", "箱", "包", "袋", "桶", "瓶", "罐", "卷",
|
||||
"支", "根", "条", "片", "块", "颗", "粒", "对", "双", "只", "张", "本", "盒");
|
||||
|
||||
Set<String> units =
|
||||
Set.of(
|
||||
"吨", "千克", "克", "升", "毫升", "个", "件", "台", "套", "箱", "包", "袋", "桶", "瓶", "罐",
|
||||
"卷", "支", "根", "条", "片", "块", "颗", "粒", "对", "双", "只", "张", "本", "盒");
|
||||
|
||||
for (String unit : units) {
|
||||
WarehouseGoodsUnitEntity entity = new WarehouseGoodsUnitEntity();
|
||||
|
||||
Reference in New Issue
Block a user