09-01-供应商入库新增导入,修改字段;物资设备清单新增按设备名称查询,新增税率字段.
This commit is contained in:
@ -3,6 +3,7 @@ package org.dromara.test;
|
|||||||
import cn.hutool.core.io.FileUtil;
|
import cn.hutool.core.io.FileUtil;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.dromara.common.excel.utils.ExcelUtil;
|
||||||
import org.dromara.design.service.IDesTechnicalStandardService;
|
import org.dromara.design.service.IDesTechnicalStandardService;
|
||||||
import org.dromara.facility.domain.FacMatrix;
|
import org.dromara.facility.domain.FacMatrix;
|
||||||
import org.dromara.facility.service.IFacMatrixService;
|
import org.dromara.facility.service.IFacMatrixService;
|
||||||
@ -11,7 +12,11 @@ import org.dromara.progress.service.IPgsProgressCategoryService;
|
|||||||
import org.dromara.progress.service.IPgsProgressCategoryTemplateService;
|
import org.dromara.progress.service.IPgsProgressCategoryTemplateService;
|
||||||
import org.dromara.project.service.IBusProjectService;
|
import org.dromara.project.service.IBusProjectService;
|
||||||
import org.dromara.system.service.ISysDeptService;
|
import org.dromara.system.service.ISysDeptService;
|
||||||
|
import org.dromara.tender.domain.bo.TenderSupplierInputBo;
|
||||||
|
import org.dromara.tender.domain.vo.TenderSupplierInputVo;
|
||||||
|
import org.dromara.tender.service.impl.TenderSupplierInputServiceImpl;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.test.context.SpringBootTest;
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
@ -45,6 +50,8 @@ public class DemoTest {
|
|||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private ISysDeptService deptService;
|
private ISysDeptService deptService;
|
||||||
|
@Autowired
|
||||||
|
private TenderSupplierInputServiceImpl tenderSupplierInputService;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void test() {
|
void test() {
|
||||||
@ -99,4 +106,10 @@ public class DemoTest {
|
|||||||
deptService.selectProjectIdById(100L);
|
deptService.selectProjectIdById(100L);
|
||||||
deptService.selectProjectIdById(1937478258803171329L);
|
deptService.selectProjectIdById(1937478258803171329L);
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void tenderExport(){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
package org.dromara.tender.controller;
|
package org.dromara.tender.controller;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
@ -12,6 +14,8 @@ import org.dromara.cailiaoshebei.controller.constant;
|
|||||||
import org.dromara.cailiaoshebei.domain.BusCailiaoshebeiPici;
|
import org.dromara.cailiaoshebei.domain.BusCailiaoshebeiPici;
|
||||||
import org.dromara.common.core.domain.event.ProcessEvent;
|
import org.dromara.common.core.domain.event.ProcessEvent;
|
||||||
import org.dromara.system.service.ISysOssService;
|
import org.dromara.system.service.ISysOssService;
|
||||||
|
import org.dromara.tender.domain.TenderSupplierInput;
|
||||||
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
@ -74,6 +78,24 @@ public class TenderSupplierInputController extends BaseController {
|
|||||||
ExcelUtil.exportExcel(list, "供应商入库", TenderSupplierInputVo.class, response);
|
ExcelUtil.exportExcel(list, "供应商入库", TenderSupplierInputVo.class, response);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导入供应商入库 入库资料文件只有导入后修改进行上传
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("supplierInput:supplierInput:import")
|
||||||
|
@Log(title = "供应商入库", businessType = BusinessType.IMPORT)
|
||||||
|
@PostMapping("/import")
|
||||||
|
public R<Void> importData(@RequestParam("file")MultipartFile file) throws IOException {
|
||||||
|
List<TenderSupplierInputVo> tenderSupplierInputVos = ExcelUtil.importExcel(file.getInputStream(), TenderSupplierInputVo.class);
|
||||||
|
List<TenderSupplierInput> tenderSupplierInputs = new ArrayList<>();
|
||||||
|
|
||||||
|
for (TenderSupplierInputVo tenderSupplierInputVo : tenderSupplierInputVos) {
|
||||||
|
TenderSupplierInput newTenderSupplierInput = new TenderSupplierInput();
|
||||||
|
BeanUtils.copyProperties(tenderSupplierInputVo, newTenderSupplierInput);
|
||||||
|
tenderSupplierInputs.add(newTenderSupplierInput);
|
||||||
|
}
|
||||||
|
return toAjax(tenderSupplierInputService.saveOrUpdateBatch(tenderSupplierInputs));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取供应商入库详细信息
|
* 获取供应商入库详细信息
|
||||||
*
|
*
|
||||||
|
@ -90,6 +90,11 @@ public class BusBillofquantitiesLimitList extends BaseEntity {
|
|||||||
@TableField("unit_price")
|
@TableField("unit_price")
|
||||||
private BigDecimal unitPrice;
|
private BigDecimal unitPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 税率
|
||||||
|
*/
|
||||||
|
private int taxRate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 总价
|
* 总价
|
||||||
*/
|
*/
|
||||||
|
@ -134,14 +134,54 @@ public class TenderSupplierInput extends BaseEntity {
|
|||||||
private String safeCertificateValidity;
|
private String safeCertificateValidity;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 注册注册人员的数量
|
* 注册注册人员的数量 一级建造 二级建造 注册造价工程师 其他
|
||||||
*/
|
*/
|
||||||
private String registeredNumber;
|
// private String registeredNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 职称人员数量
|
* 注册造价工程师数量
|
||||||
*/
|
*/
|
||||||
private String personnelNumber;
|
private Long registeredEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 一级建造数量
|
||||||
|
*/
|
||||||
|
private Long firstBuildingNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 二级建造数量
|
||||||
|
*/
|
||||||
|
private Long secondBuildingNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 其他建造师数量
|
||||||
|
*/
|
||||||
|
private Long otherBuildingNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 职称人员数量 高级工程师 工程师数量 助理工程师 其他人员数量
|
||||||
|
*/
|
||||||
|
// private String personnelNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 高级工程师数量
|
||||||
|
*/
|
||||||
|
private Long seniorEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工程师数量
|
||||||
|
*/
|
||||||
|
private Long engineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 助理工程师数量
|
||||||
|
*/
|
||||||
|
private Long assistantEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 其他人员数量
|
||||||
|
*/
|
||||||
|
private Long otherPersonnelNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 存储文件ID
|
* 存储文件ID
|
||||||
|
@ -90,6 +90,11 @@ public class BusBillofquantitiesLimitListBo extends BaseEntity {
|
|||||||
*/
|
*/
|
||||||
private BigDecimal unitPrice;
|
private BigDecimal unitPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 税率
|
||||||
|
*/
|
||||||
|
private int taxRate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 总价
|
* 总价
|
||||||
*/
|
*/
|
||||||
|
@ -139,12 +139,52 @@ public class TenderSupplierInputBo extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 注册注册人员的数量
|
* 注册注册人员的数量
|
||||||
*/
|
*/
|
||||||
private String registeredNumber;
|
// private String registeredNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 注册造价工程师数量
|
||||||
|
*/
|
||||||
|
private Long registeredEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 一级建造数量
|
||||||
|
*/
|
||||||
|
private Long firstBuildingNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 二级建造数量
|
||||||
|
*/
|
||||||
|
private Long secondBuildingNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 其他建造师数量
|
||||||
|
*/
|
||||||
|
private Long otherBuildingNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 职称人员数量
|
* 职称人员数量
|
||||||
*/
|
*/
|
||||||
private String personnelNumber;
|
// private String personnelNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 高级工程师数量
|
||||||
|
*/
|
||||||
|
private Long seniorEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工程师数量
|
||||||
|
*/
|
||||||
|
private Long engineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 助理工程师数量
|
||||||
|
*/
|
||||||
|
private Long assistantEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 其他人员数量
|
||||||
|
*/
|
||||||
|
private Long otherPersonnelNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 存储文件ID
|
* 存储文件ID
|
||||||
|
@ -115,6 +115,12 @@ public class BusBillofquantitiesLimitListVo implements Serializable {
|
|||||||
@ExcelProperty(value = "单价")
|
@ExcelProperty(value = "单价")
|
||||||
private BigDecimal unitPrice;
|
private BigDecimal unitPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 税率
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "税率")
|
||||||
|
private int taxRate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 总价
|
* 总价
|
||||||
*/
|
*/
|
||||||
|
@ -33,7 +33,7 @@ public class TenderSupplierInputVo implements Serializable {
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "")
|
@ExcelProperty(value = "序号")
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -139,46 +139,97 @@ public class TenderSupplierInputVo implements Serializable {
|
|||||||
@ExcelProperty(value = "近三年营业额")
|
@ExcelProperty(value = "近三年营业额")
|
||||||
private String pastThreeYears;
|
private String pastThreeYears;
|
||||||
|
|
||||||
|
|
||||||
|
//除劳务类型外都可为空
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 安全生产许可证编号
|
* 安全生产许可证编号
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "安全生产许可证编号")
|
@ExcelProperty(value = "安全生产许可证编号(除劳务类型外都可为空)")
|
||||||
private String safeCode;
|
private String safeCode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 安全生产许可证发证日期
|
* 安全生产许可证发证日期
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "安全生产许可证发证日期")
|
@ExcelProperty(value = "安全生产许可证发证日期(除劳务类型外都可为空)")
|
||||||
private String safeCodeData;
|
private String safeCodeData;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 证书有效期
|
* 证书有效期
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "证书有效期")
|
@ExcelProperty(value = "证书有效期(除劳务类型外都可为空)")
|
||||||
private String safeCertificateValidity;
|
private String safeCertificateValidity;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 注册注册人员的数量
|
* 注册注册人员的数量
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "注册注册人员的数量")
|
// @ExcelProperty(value = "注册注册人员的数量(除劳务类型外都可为空)")
|
||||||
private String registeredNumber;
|
// private String registeredNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 注册造价工程师数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "注册造价工程师数量(除劳务类型外都可为空)")
|
||||||
|
private Long registeredEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 一级建造数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "一级建造数量(除劳务类型外都可为空)")
|
||||||
|
private Long firstBuildingNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 二级建造数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "二级建造数量(除劳务类型外都可为空)")
|
||||||
|
private Long secondBuildingNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 其他建造师数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "其他建造师数量(除劳务类型外都可为空)")
|
||||||
|
private Long otherBuildingNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 职称人员数量
|
* 职称人员数量
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "职称人员数量")
|
// @ExcelProperty(value = "职称人员数量(除劳务类型外都可为空)")
|
||||||
private String personnelNumber;
|
// private String personnelNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 高级工程师数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "高级工程师数量(除劳务类型外都可为空)")
|
||||||
|
private Long seniorEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工程师数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "工程师数量(除劳务类型外都可为空)")
|
||||||
|
private Long engineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 助理工程师数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "助理工程师数量(除劳务类型外都可为空)")
|
||||||
|
private Long assistantEngineerNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 其他人员数量
|
||||||
|
*/
|
||||||
|
@ExcelProperty(value = "其他人员数量(除劳务类型外都可为空)")
|
||||||
|
private Long otherPersonnelNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 存储文件ID
|
* 存储文件ID
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "存储文件ID")
|
//@ExcelProperty(value = "存储文件ID")
|
||||||
private Long fileId;
|
private Long fileId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 入库资料
|
* 入库资料
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "入库资料")
|
//@ExcelProperty(value = "入库资料")
|
||||||
private String inputFile;
|
private String inputFile;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -185,7 +185,7 @@ public class BusBillofquantitiesLimitListServiceImpl extends ServiceImpl<BusBill
|
|||||||
@Override
|
@Override
|
||||||
public List<BusBillofquantitiesLimitListVo> getTree(BusBillofquantitiesLimitListBo bo) {
|
public List<BusBillofquantitiesLimitListVo> getTree(BusBillofquantitiesLimitListBo bo) {
|
||||||
//获取所有数据
|
//获取所有数据
|
||||||
List<BusBillofquantitiesLimitListVo> listVoList = new ArrayList<>();
|
List<BusBillofquantitiesLimitListVo> listVoList;
|
||||||
if (bo.getType().equals(LimitListTypeEnum.COMPANY.getCode())){
|
if (bo.getType().equals(LimitListTypeEnum.COMPANY.getCode())){
|
||||||
listVoList = baseMapper.selectByBoByType(bo);
|
listVoList = baseMapper.selectByBoByType(bo);
|
||||||
}else {
|
}else {
|
||||||
|
@ -92,7 +92,7 @@ public class TenderSupplierInputServiceImpl extends ServiceImpl<TenderSupplierIn
|
|||||||
lqw.orderByDesc(TenderSupplierInput::getId);
|
lqw.orderByDesc(TenderSupplierInput::getId);
|
||||||
lqw.eq(bo.getProjectId() != null, TenderSupplierInput::getProjectId, bo.getProjectId());
|
lqw.eq(bo.getProjectId() != null, TenderSupplierInput::getProjectId, bo.getProjectId());
|
||||||
lqw.eq(StringUtils.isNotBlank(bo.getSupplierType()), TenderSupplierInput::getSupplierType, bo.getSupplierType());
|
lqw.eq(StringUtils.isNotBlank(bo.getSupplierType()), TenderSupplierInput::getSupplierType, bo.getSupplierType());
|
||||||
lqw.eq(StringUtils.isNotBlank(bo.getInputFile()), TenderSupplierInput::getInputFile, bo.getInputFile());
|
// lqw.eq(StringUtils.isNotBlank(bo.getInputFile()), TenderSupplierInput::getInputFile, bo.getInputFile());
|
||||||
lqw.like(StringUtils.isNotBlank(bo.getSupplierName()), TenderSupplierInput::getSupplierName, bo.getSupplierName());
|
lqw.like(StringUtils.isNotBlank(bo.getSupplierName()), TenderSupplierInput::getSupplierName, bo.getSupplierName());
|
||||||
lqw.like(StringUtils.isNotBlank(bo.getState()), TenderSupplierInput::getState, bo.getState());
|
lqw.like(StringUtils.isNotBlank(bo.getState()), TenderSupplierInput::getState, bo.getState());
|
||||||
return lqw;
|
return lqw;
|
||||||
|
@ -113,6 +113,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<if test="bo.sheet != null and bo.sheet != ''">
|
<if test="bo.sheet != null and bo.sheet != ''">
|
||||||
AND bbll.sheet = #{bo.sheet}
|
AND bbll.sheet = #{bo.sheet}
|
||||||
</if>
|
</if>
|
||||||
|
<if test="bo.name != null and bo.name != ''">
|
||||||
|
AND bbll.name LIKE CONCAT('%', #{bo.name}, '%')
|
||||||
|
</if>
|
||||||
</where>
|
</where>
|
||||||
GROUP BY bbll.id
|
GROUP BY bbll.id
|
||||||
ORDER BY bbll.sid ASC
|
ORDER BY bbll.sid ASC
|
||||||
@ -150,6 +153,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<if test="bo.sheet != null and bo.sheet != ''">
|
<if test="bo.sheet != null and bo.sheet != ''">
|
||||||
AND bbll.sheet = #{bo.sheet}
|
AND bbll.sheet = #{bo.sheet}
|
||||||
</if>
|
</if>
|
||||||
|
<if test="bo.name != null and bo.name != ''">
|
||||||
|
AND bbll.name LIKE CONCAT('%', #{bo.name}, '%')
|
||||||
|
</if>
|
||||||
</where>
|
</where>
|
||||||
GROUP BY bbll.id
|
GROUP BY bbll.id
|
||||||
ORDER BY bbll.sid ASC
|
ORDER BY bbll.sid ASC
|
||||||
|
Reference in New Issue
Block a user