限价、投标、招采、物资一览bug修改

This commit is contained in:
2025-09-08 15:33:03 +08:00
parent 998547e63f
commit 2ecb0063bf
10 changed files with 50 additions and 8 deletions

View File

@ -107,8 +107,8 @@ public class BusBiddingLimitListController extends BaseController {
@Log(title = "成本-投标", businessType = BusinessType.INSERT) @Log(title = "成本-投标", businessType = BusinessType.INSERT)
@RepeatSubmit() @RepeatSubmit()
@PostMapping("/importExcelFile") @PostMapping("/importExcelFile")
public R<Void> importExcelFile(Long projectId, @RequestParam("file") MultipartFile file) { public R<Void> importExcelFile(BusBiddingLimitListBo bo, @RequestParam("file") MultipartFile file) {
return toAjax(busBiddingLimitListService.importExcelFile(projectId, file)); return toAjax(busBiddingLimitListService.importExcelFile(bo, file));
} }
/** /**

View File

@ -1,5 +1,6 @@
package org.dromara.bidding.domain.vo; package org.dromara.bidding.domain.vo;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import org.dromara.bidding.domain.BusBiddingLimitList; import org.dromara.bidding.domain.BusBiddingLimitList;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
@ -77,6 +78,7 @@ public class BusBiddingLimitListVo implements Serializable {
* 名称 * 名称
*/ */
@ExcelProperty(value = "名称") @ExcelProperty(value = "名称")
@ColumnWidth(50)
private String name; private String name;
/** /**

View File

@ -79,7 +79,7 @@ public interface IBusBiddingLimitListService extends IService<BusBiddingLimitLis
*/ */
List<BusBiddingLimitListVo> getTree(BusBiddingLimitListBo bo); List<BusBiddingLimitListVo> getTree(BusBiddingLimitListBo bo);
Boolean importExcelFile(Long projectId, MultipartFile file); Boolean importExcelFile(BusBiddingLimitListBo projectId, MultipartFile file);
List<BusBiddingLimitVersionsVo> obtainAllVersionNumbers(BiddingAllVersionNumbersReq bo); List<BusBiddingLimitVersionsVo> obtainAllVersionNumbers(BiddingAllVersionNumbersReq bo);

View File

@ -71,4 +71,6 @@ public interface IBusBiddingLimitVersionsService extends IService<BusBiddingLimi
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
BusBiddingLimitVersions queryByProjectId( String versions, Long projectId); BusBiddingLimitVersions queryByProjectId( String versions, Long projectId);
BusBiddingLimitVersions getByProjectIdVersions(Long projectId, String versions);
} }

View File

@ -25,8 +25,6 @@ import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.utils.excel.ExcelDynamicReader; import org.dromara.common.utils.excel.ExcelDynamicReader;
import org.dromara.tender.domain.BusBillofquantitiesLimitList;
import org.dromara.tender.domain.bo.BusBillofquantitiesLimitListBo;
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.transaction.annotation.Transactional;
@ -239,7 +237,15 @@ public class BusBiddingLimitListServiceImpl extends ServiceImpl<BusBiddingLimitL
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean importExcelFile(Long projectId, MultipartFile file) { public Boolean importExcelFile(BusBiddingLimitListBo bo, MultipartFile file) {
BusBiddingLimitVersions biddingLimitVersions = busBiddingLimitVersionsService.getByProjectIdVersions(bo.getProjectId(),bo.getVersions());
if (biddingLimitVersions == null) {
throw new ServiceException("版本号不存在!!!");
}
if (BusinessStatusEnum.FINISH.getStatus().equals(biddingLimitVersions.getStatus())) {
throw new ServiceException("数据已审核完成,不允许修改!!!");
}
// 跳过1行表头读取0到6列共7列映射到ExcelData实体类 // 跳过1行表头读取0到6列共7列映射到ExcelData实体类
List<BusBiddingLimitListBo> dataList = null; List<BusBiddingLimitListBo> dataList = null;
@ -271,7 +277,6 @@ public class BusBiddingLimitListServiceImpl extends ServiceImpl<BusBiddingLimitL
busBillofquantities.add(limitList); busBillofquantities.add(limitList);
}); });
log.info(busBillofquantities.toString()); log.info(busBillofquantities.toString());
return this.updateBatchById(busBillofquantities); return this.updateBatchById(busBillofquantities);
} }

View File

@ -145,6 +145,13 @@ public class BusBiddingLimitVersionsServiceImpl extends ServiceImpl<BusBiddingLi
.eq(BusBiddingLimitVersions::getVersions, versions)); .eq(BusBiddingLimitVersions::getVersions, versions));
} }
@Override
public BusBiddingLimitVersions getByProjectIdVersions(Long projectId, String versions) {
return baseMapper.selectOne(new LambdaQueryWrapper<BusBiddingLimitVersions>()
.eq(BusBiddingLimitVersions::getProjectId, projectId)
.eq(BusBiddingLimitVersions::getVersions, versions));
}
/** /**
* 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等) * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等)

View File

@ -1,5 +1,6 @@
package org.dromara.tender.domain.vo; package org.dromara.tender.domain.vo;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import org.dromara.design.domain.vo.ObtainTheListRes; import org.dromara.design.domain.vo.ObtainTheListRes;
import org.dromara.tender.domain.BusBillofquantitiesLimitList; import org.dromara.tender.domain.BusBillofquantitiesLimitList;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
@ -82,6 +83,7 @@ public class BusBillofquantitiesLimitListVo implements Serializable {
/** /**
* 名称 * 名称
*/ */
@ColumnWidth(50)
@ExcelProperty(value = "名称") @ExcelProperty(value = "名称")
private String name; private String name;

View File

@ -1,5 +1,7 @@
package org.dromara.tender.service; package org.dromara.tender.service;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import org.dromara.tender.domain.vo.BusBLimitListVersionsVo; import org.dromara.tender.domain.vo.BusBLimitListVersionsVo;
import org.dromara.tender.domain.bo.BusBLimitListVersionsBo; import org.dromara.tender.domain.bo.BusBLimitListVersionsBo;
import org.dromara.tender.domain.BusBLimitListVersions; import org.dromara.tender.domain.BusBLimitListVersions;
@ -69,4 +71,6 @@ public interface IBusBLimitListVersionsService extends IService<BusBLimitListVer
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
BusBLimitListVersionsVo queryByVersion(String versions); BusBLimitListVersionsVo queryByVersion(String versions);
BusBLimitListVersions getByProjectIdVersions( Long projectId, String versions);
} }

View File

@ -148,6 +148,13 @@ public class BusBLimitListVersionsServiceImpl extends ServiceImpl<BusBLimitListV
return vo; return vo;
} }
@Override
public BusBLimitListVersions getByProjectIdVersions(Long projectId, String versions) {
return baseMapper.selectOne(new LambdaQueryWrapper<BusBLimitListVersions>()
.eq(BusBLimitListVersions::getProjectId, projectId)
.eq(BusBLimitListVersions::getVersions, versions));
}
/** /**
* 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等) * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等)
* 正常使用只需#processEvent.flowCode=='leave1' * 正常使用只需#processEvent.flowCode=='leave1'

View File

@ -1,17 +1,21 @@
package org.dromara.tender.service.impl; package org.dromara.tender.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.constant.HttpStatus;
import org.dromara.common.core.enums.BusinessStatusEnum;
import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.utils.excel.ExcelDynamicReader; import org.dromara.common.utils.excel.ExcelDynamicReader;
import org.dromara.tender.domain.BusBLimitListVersions;
import org.dromara.tender.domain.BusBillofquantitiesLimitList; import org.dromara.tender.domain.BusBillofquantitiesLimitList;
import org.dromara.tender.domain.bo.BusBLimitListVersionsBo; import org.dromara.tender.domain.bo.BusBLimitListVersionsBo;
import org.dromara.tender.domain.bo.BusBillofquantitiesLimitListBo; import org.dromara.tender.domain.bo.BusBillofquantitiesLimitListBo;
@ -238,7 +242,13 @@ public class BusBillofquantitiesLimitListServiceImpl extends ServiceImpl<BusBill
@Override @Override
public Boolean importExcelFile(BusBillofquantitiesLimitListBo bo, MultipartFile file) throws Exception { public Boolean importExcelFile(BusBillofquantitiesLimitListBo bo, MultipartFile file) throws Exception {
BusBLimitListVersions busBLimitListVersions = busBLimitListVersionsService.getByProjectIdVersions(bo.getProjectId(),bo.getVersions());
if (busBLimitListVersions == null) {
throw new ServiceException("版本号不存在!!!");
}
if (BusinessStatusEnum.FINISH.getStatus().equals(busBLimitListVersions.getStatus())) {
throw new ServiceException("数据已审核完成,不允许修改!!!");
}
// 跳过1行表头读取0到6列共7列映射到ExcelData实体类 // 跳过1行表头读取0到6列共7列映射到ExcelData实体类
List<BusBillofquantitiesLimitListBo> dataList = ExcelDynamicReader.readExcel( List<BusBillofquantitiesLimitListBo> dataList = ExcelDynamicReader.readExcel(
@ -262,6 +272,9 @@ public class BusBillofquantitiesLimitListServiceImpl extends ServiceImpl<BusBill
limitList.setTaxRate(item.getTaxRate()); limitList.setTaxRate(item.getTaxRate());
busBillofquantities.add(limitList); busBillofquantities.add(limitList);
}); });
if (CollUtil.isEmpty(busBillofquantities)) {
throw new ServiceException("表格中无有效数据", HttpStatus.BAD_REQUEST);
}
return baseMapper.updateBatchById(busBillofquantities); return baseMapper.updateBatchById(busBillofquantities);
} }