|
@@ -4,20 +4,26 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import org.dromara.commodityManagement.domain.DaHuoNumber;
|
|
|
+import org.dromara.commodityManagement.domain.Template;
|
|
|
import org.dromara.commodityManagement.domain.bo.DaHuoNumberBo;
|
|
|
+import org.dromara.commodityManagement.domain.vo.DaHuoNumberImportVo;
|
|
|
import org.dromara.commodityManagement.domain.vo.DaHuoNumberVo;
|
|
|
import org.dromara.commodityManagement.mapper.DaHuoNumberMapper;
|
|
|
import org.dromara.commodityManagement.mapper.TemplateMapper;
|
|
|
import org.dromara.commodityManagement.service.DaHuoNumberService;
|
|
|
import org.dromara.common.core.utils.MapstructUtils;
|
|
|
import org.dromara.common.core.utils.StringUtils;
|
|
|
+import org.dromara.common.excel.core.ExcelResult;
|
|
|
import org.dromara.common.mybatis.core.page.PageQuery;
|
|
|
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
|
|
|
+import static org.dromara.commodityManagement.emum.ItemType.DAHUO_TYPE;
|
|
|
+
|
|
|
@Service
|
|
|
@RequiredArgsConstructor
|
|
|
public class DaHuoNumberImpl implements DaHuoNumberService {
|
|
@@ -25,12 +31,10 @@ public class DaHuoNumberImpl implements DaHuoNumberService {
|
|
|
private final DaHuoNumberMapper daHuoNumberMapper;
|
|
|
private final TemplateMapper templateMapper;
|
|
|
|
|
|
- private static final String DAHUO_TYPE = "1";
|
|
|
-
|
|
|
@Override
|
|
|
public TableDataInfo<DaHuoNumberVo> selectPageDaHuoNumberList(DaHuoNumberBo daHuoNumberBo, PageQuery pageQuery) {
|
|
|
QueryWrapper<DaHuoNumber> qw = new QueryWrapper<>();
|
|
|
- qw.eq("type", DAHUO_TYPE);
|
|
|
+ qw.eq("type", DAHUO_TYPE.getType());
|
|
|
qw.eq(StringUtils.isNotBlank(daHuoNumberBo.getName()), "name", daHuoNumberBo.getName());
|
|
|
qw.eq(StringUtils.isNotBlank(daHuoNumberBo.getKuanhao()), "kuanhao", daHuoNumberBo.getKuanhao());
|
|
|
qw.eq(StringUtils.isNotBlank(daHuoNumberBo.getHuaxinghao()), "huaxinghao", daHuoNumberBo.getHuaxinghao());
|
|
@@ -43,22 +47,41 @@ public class DaHuoNumberImpl implements DaHuoNumberService {
|
|
|
@Override
|
|
|
public int insertDaHuoNumber(DaHuoNumberBo daHuoNumberBo) {
|
|
|
DaHuoNumber daHuoNumber = MapstructUtils.convert(daHuoNumberBo, DaHuoNumber.class);
|
|
|
+ int allRow = 0;
|
|
|
+ allRow += daHuoNumberMapper.insert(daHuoNumber);
|
|
|
+ Long row = daHuoNumberMapper.selectLastId();
|
|
|
if (daHuoNumber.getTemplate() != null) {
|
|
|
- templateMapper.insert(daHuoNumber.getTemplate());
|
|
|
+ for (Template template : daHuoNumber.getTemplate()){
|
|
|
+ template.setItem_id(row);
|
|
|
+ allRow += templateMapper.insert(template);
|
|
|
+ }
|
|
|
}
|
|
|
- return daHuoNumberMapper.insert(daHuoNumber);
|
|
|
+ return allRow;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int updateDaHuoNumber(DaHuoNumberBo daHuoNumberBo) {
|
|
|
DaHuoNumber daHuoNumber = MapstructUtils.convert(daHuoNumberBo, DaHuoNumber.class);
|
|
|
- QueryWrapper<DaHuoNumber> qw = new QueryWrapper<>();
|
|
|
- qw.eq("id", daHuoNumber.getId());
|
|
|
- return daHuoNumberMapper.update(daHuoNumber, qw);
|
|
|
+ if (daHuoNumber.getTemplate() != null){
|
|
|
+ for (Template template : daHuoNumber.getTemplate()){
|
|
|
+ switch (template.getDelUpdateOrAdd()){
|
|
|
+ case 1:
|
|
|
+ templateMapper.deleteById(template);break;
|
|
|
+ case 2:
|
|
|
+ templateMapper.updateById(template);break;
|
|
|
+ case 3:
|
|
|
+ templateMapper.insert(template);break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return daHuoNumberMapper.updateById(daHuoNumber);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int deleteDaHuoNumberByIds(Long[] daHuoNumberIds) {
|
|
|
+ for (Long daHuoNumberId : daHuoNumberIds) {
|
|
|
+ templateMapper.delete(new QueryWrapper<Template>().eq("item_id", daHuoNumberId));
|
|
|
+ }
|
|
|
return daHuoNumberMapper.deleteByIds(Arrays.asList(daHuoNumberIds));
|
|
|
}
|
|
|
|
|
@@ -71,4 +94,21 @@ public class DaHuoNumberImpl implements DaHuoNumberService {
|
|
|
public List<DaHuoNumber> selectDaHuoNumberList() {
|
|
|
return daHuoNumberMapper.selectList();
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public int insertImportExcel(ExcelResult<DaHuoNumberImportVo> result){
|
|
|
+ for (DaHuoNumberImportVo importVo : result.getList()){
|
|
|
+ String[] templateNames = importVo.getTemplate().split(",");
|
|
|
+ List<Template> templates = new ArrayList<>();
|
|
|
+ for (String templateName : templateNames){
|
|
|
+ templates.add(new Template(templateName));
|
|
|
+ }
|
|
|
+ DaHuoNumberBo daHuoNumber = MapstructUtils.convert(importVo, DaHuoNumberBo.class);
|
|
|
+ if (daHuoNumber != null) {
|
|
|
+ daHuoNumber.setTemplate(templates);
|
|
|
+ }
|
|
|
+ insertDaHuoNumber(daHuoNumber);
|
|
|
+ }
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
}
|