报价结构化

This commit is contained in:
yss
2023-11-22 11:07:14 +08:00
parent bbff72a6ab
commit abd8296248
13 changed files with 440 additions and 7 deletions

View File

@ -0,0 +1,76 @@
package com.chinaunicom.mall.ebtp.project.bidratio.controller;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.chinaunicom.mall.ebtp.project.bidratio.entity.BidRatio;
import com.chinaunicom.mall.ebtp.project.bidratio.service.IBidRatioService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import javax.annotation.Resource;
import javax.validation.Valid;
@RestController
@Api(tags = "中标/中选分配比例")
@RequestMapping("/v1/expert/bidratio")
public class BidRatioController{
@Resource
private IBidRatioService ibidRatioService;
/**
* 插入新数据
*
* @param bidRatio
*
* @return
*/
@ApiOperation("插入新数据")
@PostMapping("/insert")
public BaseResponse<Boolean> insert(@ApiParam(value = "对象数据", required = true) @RequestBody @Valid BidRatio bidRatio){
boolean save = ibidRatioService.save(bidRatio);
return BaseResponse.success(save);
}
/**
* 修改数据
*
* @param bidRatio
*
* @return
*/
@ApiOperation("修改数据")
@PostMapping("/update")
public BaseResponse<Boolean> update(@ApiParam(value = "对象数据", required = true) @RequestBody BidRatio bidRatio){
Boolean i = ibidRatioService.updateById(bidRatio);
return BaseResponse.success(i);
}
/**
* 查询数据
*
* @param id
*
* @return
*/
@ApiOperation("查询数据")
@GetMapping("/{id}")
public BaseResponse<BidRatio> get(@ApiParam(value = "主键id", required = true) @PathVariable String id){
BidRatio bidRatio = ibidRatioService.getById(id);
return BaseResponse.success(bidRatio);
}
}

View File

@ -0,0 +1,15 @@
package com.chinaunicom.mall.ebtp.project.bidratio.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.chinaunicom.mall.ebtp.project.bidratio.entity.BidRatio;
/**
* @auto.generated
*/
@Repository
public interface BidRatioMapper extends BaseMapper<BidRatio> {
}

View File

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.chinaunicom.mall.ebtp.project.bidratio.dao.BidRatioMapper">
<resultMap id="BaseResultMap"
type="com.chinaunicom.mall.ebtp.project.bidratio.entity.BidRatio">
<result column="id" jdbcType="VARCHAR" property="id"/>
<result column="intended_bid_rank" jdbcType="INTEGER" property="intendedBidRank"/>
<result column="intended_bid_ratio" jdbcType="DECIMAL" property="intendedBidRatio"/>
<result column="project_id" jdbcType="VARCHAR" property="projectId"/>
<result column="section_id" jdbcType="VARCHAR" property="sectionId"/>
<result column="create_by" jdbcType="VARCHAR" property="createBy"/>
<result column="create_date" jdbcType="TIMESTAMP" property="createDate"/>
<result column="update_by" jdbcType="VARCHAR" property="updateBy"/>
<result column="update_date" jdbcType="TIMESTAMP" property="updateDate"/>
</resultMap>
<sql id="Base_Column_List">
a.id id,
a.intended_bid_rank intendedBidRank,
a.intended_bid_ratio intendedBidRatio,
a.project_id projectId,
a.section_id sectionId,
a.create_by createBy,
a.create_date createDate,
a.update_by updateBy,
a.update_date updateDate,
</sql>
<!--逻辑删除方法 此方法为代码生成器生成 不允许修改 如有特殊需求 请自行新建SQL语句-->
<update id="deleteOff" parameterType="java.lang.Long">
update biz_project_bid_ratio
set
delete_flag="deleted"
where ID=#{id,jdbcType=BIGINT}
</update>
</mapper>

View File

@ -0,0 +1,92 @@
package com.chinaunicom.mall.ebtp.project.bidratio.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
import com.chinaunicom.mall.ebtp.common.config.CustomLocalDateTimeTypeHandler;
/**
* 实体类 BidRatio
*
* @auto.generated
*/
@Data
@Accessors(chain = true)
@ApiModel
@EqualsAndHashCode(callSuper = false)
@TableName(value = "biz_project_bid_ratio", autoResultMap = true)
public class BidRatio implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty(value = "")
private String id;
/**
* 拟中标候选人排名
*/
@ApiModelProperty(value = "拟中标候选人排名")
private Integer intendedBidRank;
/**
* 拟分配比例
*/
@ApiModelProperty(value = "拟分配比例")
private BigDecimal intendedBidRatio;
/**
* 项目ID
*/
@ApiModelProperty(value = "项目ID")
private String projectId;
/**
* 分包标段id
*/
@ApiModelProperty(value = "分包标段id")
private String sectionId;
/**
* 创建者
*/
@ApiModelProperty(value = "创建者")
private String createBy;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@TableField(typeHandler = CustomLocalDateTimeTypeHandler.class)
private java.time.LocalDateTime createDate;
/**
* 更新者
*/
@ApiModelProperty(value = "更新者")
private String updateBy;
/**
* 更新时间
*/
@ApiModelProperty(value = "更新时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@TableField(typeHandler = CustomLocalDateTimeTypeHandler.class)
private java.time.LocalDateTime updateDate;
}

View File

@ -0,0 +1,16 @@
package com.chinaunicom.mall.ebtp.project.bidratio.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.chinaunicom.mall.ebtp.project.bidratio.entity.BidRatio;
/**
* 对数据表 biz_project_bid_ratio 操作的 service
* @author Auto create
*
*/
public interface IBidRatioService extends IService<BidRatio>{
}

View File

@ -0,0 +1,17 @@
package com.chinaunicom.mall.ebtp.project.bidratio.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.chinaunicom.mall.ebtp.project.bidratio.dao.BidRatioMapper;
import com.chinaunicom.mall.ebtp.project.bidratio.entity.BidRatio;
import com.chinaunicom.mall.ebtp.project.bidratio.service.IBidRatioService;
import org.springframework.stereotype.Service;
/**
* 对数据表 biz_project_bid_ratio 操作的 serviceImpl
* @auto.generated
*
*/
@Service
public class BidRatioServiceImpl extends ServiceImpl<BidRatioMapper,BidRatio> implements IBidRatioService {
}

View File

@ -0,0 +1,40 @@
package com.chinaunicom.mall.ebtp.project.projectentrust.entity.ebpentity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class ProjBidRatioInfoVO{
@ApiModelProperty("主键")
private Long id;
@ApiModelProperty("方案id")
private Long projId;
@ApiModelProperty("拟中标候选人排名")
private Integer intendedBidRank;
@ApiModelProperty("拟分配比例")
private BigDecimal intendedBidRatio;
@ApiModelProperty("租户名称")
private String tenantName;
@ApiModelProperty("备用字段1")
private String attribute1;
@ApiModelProperty("备用字段2")
private String attribute2;
@ApiModelProperty("备用字段3")
private String attribute3;
@ApiModelProperty("备用字段4")
private String attribute4;
@ApiModelProperty("备用字段5")
private String attribute5;
}

View File

@ -11,6 +11,7 @@ import lombok.Data;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -167,6 +168,30 @@ public class PurpBaseInfoVO {
@ApiModelProperty(value = "附件列表") @ApiModelProperty(value = "附件列表")
private List<BaseFileNoPageVO> baseFileVOList; private List<BaseFileNoPageVO> baseFileVOList;
@ApiModelProperty(value = "最高限价")
private BigDecimal priceCeiling;
@ApiModelProperty(value = "最高限价说明")
private String priceCeilingExplain;
@ApiModelProperty(value = "是否启用结构化报价 0否1是")
private String isStructureQuote;
@ApiModelProperty(value = "结构化报价模型 001普通报价模型")
private String structureQuoteModel;
@ApiModelProperty(value = "结构化报价限价类型 001总价限制002单价+总价限制")
private String structureQuoteLimitType;
@ApiModelProperty(value = "中标/中选人数量是否明确 0否1是")
private String bidNumberIsDefinite;
@ApiModelProperty(value = "中标/中选分配比例")
private List<ProjBidRatioInfoVO> projBidRatioInfoVoList = new ArrayList<>();
@ApiModelProperty(value = "中标/中选人数量")
private Integer bidDefiniteNumber;
@ApiModelProperty(value = "采购内容") @ApiModelProperty(value = "采购内容")
private List<PurpMaterialVO> purpMaterialVOList; private List<PurpMaterialVO> purpMaterialVOList;

View File

@ -153,6 +153,9 @@ public class PurpMaterialVO {
@ApiModelProperty(value = "资产价值") @ApiModelProperty(value = "资产价值")
private BigDecimal assetVal; private BigDecimal assetVal;
@ApiModelProperty(value = "单项不含税最高限价")
private BigDecimal singlePriceCeiling;
@ApiModelProperty(value = "采购方式") @ApiModelProperty(value = "采购方式")
private String purcMode; private String purcMode;

View File

@ -17,6 +17,8 @@ import com.chinaunicom.mall.ebtp.common.constant.EbtpRoleEnum;
import com.chinaunicom.mall.ebtp.common.exception.common.CommonExceptionEnum; import com.chinaunicom.mall.ebtp.common.exception.common.CommonExceptionEnum;
import com.chinaunicom.mall.ebtp.common.util.JsonUtils; import com.chinaunicom.mall.ebtp.common.util.JsonUtils;
import com.chinaunicom.mall.ebtp.common.util.PropertyUtils; import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
import com.chinaunicom.mall.ebtp.project.bidratio.entity.BidRatio;
import com.chinaunicom.mall.ebtp.project.bidratio.service.IBidRatioService;
import com.chinaunicom.mall.ebtp.project.checkSpecialCharacters.CheckUtil; import com.chinaunicom.mall.ebtp.project.checkSpecialCharacters.CheckUtil;
import com.chinaunicom.mall.ebtp.project.common.EbpProjectCommonUtil; import com.chinaunicom.mall.ebtp.project.common.EbpProjectCommonUtil;
import com.chinaunicom.mall.ebtp.project.common.InquiryCommonUtil; import com.chinaunicom.mall.ebtp.project.common.InquiryCommonUtil;
@ -127,6 +129,9 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
@Resource @Resource
private CheckUtil checkUtil; private CheckUtil checkUtil;
@Resource
private IBidRatioService bidRatioService;
/** /**
* 查询条件拼接 * 查询条件拼接
* @param projectRecordVO 项目建档信息 * @param projectRecordVO 项目建档信息
@ -372,6 +377,10 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
BaseResponse<Boolean> result = ebtpMallProcessApi.initialize(id,sectionMaps,isReviewMethod); BaseResponse<Boolean> result = ebtpMallProcessApi.initialize(id,sectionMaps,isReviewMethod);
ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_SECTION_INIT_ERROR.customValid(!result.isSuccess()); ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_SECTION_INIT_ERROR.customValid(!result.isSuccess());
log.info("初始化流程返回 projectID"+id + " 返回结果:"+JsonUtils.objectToJson(result)); log.info("初始化流程返回 projectID"+id + " 返回结果:"+JsonUtils.objectToJson(result));
if(result.isSuccess()&&!isReviewMethod){
//只有有评审室并且是后审才能初始化应答格式
}
} }
@Override @Override
@ -600,6 +609,11 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
List<ProjectSection> sectionList = (List<ProjectSection>)resultMap.get("sectionList"); List<ProjectSection> sectionList = (List<ProjectSection>)resultMap.get("sectionList");
projectSectionService.saveBatch(sectionList); projectSectionService.saveBatch(sectionList);
List<BidRatio> bidRatioList = (List<BidRatio>)resultMap.get("bidRatioList");
if(null != bidRatioList){
bidRatioService.saveBatch(bidRatioList);
}
List<SectionMaterial> materialList = (List<SectionMaterial>)resultMap.get("materialList"); List<SectionMaterial> materialList = (List<SectionMaterial>)resultMap.get("materialList");
if(null != materialList){ if(null != materialList){
sectionMaterialService.saveBatch(materialList); sectionMaterialService.saveBatch(materialList);
@ -744,6 +758,7 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
List<ProjectSection> sectionList = new ArrayList<>(); List<ProjectSection> sectionList = new ArrayList<>();
List<SectionMaterial> materialList = new ArrayList<>(); List<SectionMaterial> materialList = new ArrayList<>();
List<SectionSupplier> supplierList = new ArrayList<>(); List<SectionSupplier> supplierList = new ArrayList<>();
List<BidRatio> bidRatioList = new ArrayList<>();
//项目标段序号 //项目标段序号
int sectionOrderNumber = 1; int sectionOrderNumber = 1;
@ -784,9 +799,26 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
section.setBidSectContractPrice(purpBaseInfoVo.getBudgetAmount()); section.setBidSectContractPrice(purpBaseInfoVo.getBudgetAmount());
//评价方法 //评价方法
section.setEvalMethodDict(EbpProjectCommonUtil.EVAL_METHOD_MAP.get(projBaseInfoVO.getScoreType())); section.setEvalMethodDict(EbpProjectCommonUtil.EVAL_METHOD_MAP.get(projBaseInfoVO.getScoreType()));
//最高限价
section.setPriceCeiling(purpBaseInfoVo.getPriceCeiling());
//最高限价说明
section.setPriceCeilingExplain(purpBaseInfoVo.getPriceCeilingExplain());
//是否启用结构化报价 0否1是
section.setIsStructureQuote(purpBaseInfoVo.getIsStructureQuote());
//结构化报价模型 001普通报价模型
section.setStructureQuoteModel(purpBaseInfoVo.getStructureQuoteModel());
//结构化报价限价类型 001总价限制002单价+总价限制
section.setStructureQuoteLimitType(purpBaseInfoVo.getStructureQuoteLimitType());
//中标/中选人数量是否明确 0否1是
section.setBidNumberIsDefinite(purpBaseInfoVo.getBidNumberIsDefinite());
//中标/中选人数量
section.setBidDefiniteNumber(purpBaseInfoVo.getBidDefiniteNumber());
//中标/中选分配比例
bidRatioList.addAll(assembleBidRatio(record.getId(),section.getId(),purpBaseInfoVo.getProjBidRatioInfoVoList()));
//物资 //物资
materialList.addAll(assembleMaterial(record.getId(),section.getId(),purpBaseInfoVo.getPurpMaterialVOList())); section.setMaterialList(assembleMaterial(record.getId(),section.getId(),purpBaseInfoVo.getPurpMaterialVOList()));
materialList.addAll(section.getMaterialList());
//供应商 //供应商
supplierList.addAll(assembleSupplier(record.getId(),section.getId(),projBaseInfoVO.getProjSuppRelVOList())); supplierList.addAll(assembleSupplier(record.getId(),section.getId(),projBaseInfoVO.getProjSuppRelVOList()));
@ -794,7 +826,7 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
sectionList.add(section); sectionList.add(section);
} }
return getStringObjectMap(record, sectionList, materialList, supplierList); return getStringObjectMap(record, sectionList, materialList, supplierList,bidRatioList);
} }
/** /**
@ -848,6 +880,8 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
material.setProcurementCount(Optional.ofNullable(purpMaterialVO.getInRequNum()).orElseGet(purpMaterialVO::getRequNum)); material.setProcurementCount(Optional.ofNullable(purpMaterialVO.getInRequNum()).orElseGet(purpMaterialVO::getRequNum));
material.setMaterialUnit(purpMaterialVO.getUnit()); material.setMaterialUnit(purpMaterialVO.getUnit());
material.setBasePrice(purpMaterialVO.getUnitAmt()); material.setBasePrice(purpMaterialVO.getUnitAmt());
material.setMaterialCode(purpMaterialVO.getMaterialCode());
material.setMaxPriceCeiling(purpMaterialVO.getSinglePriceCeiling());
resultList.add(material); resultList.add(material);
} }
} }
@ -855,6 +889,32 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
return resultList; return resultList;
} }
/**
* 中标/中选分配比例
* @param projectId 项目ID
* @param sectionId 方案ID
* @param projBidRatioInfoVOList 中标/中选分配比例集合
* @return 返回结果
*/
private List<BidRatio> assembleBidRatio(String projectId,String sectionId,List<ProjBidRatioInfoVO> projBidRatioInfoVOList){
List<BidRatio> resultList = new ArrayList<>();
if(null != projBidRatioInfoVOList){
for(ProjBidRatioInfoVO bidRatioInfoVO:projBidRatioInfoVOList){
BidRatio bidRatio = new BidRatio();
bidRatio.setId(PropertyUtils.getSnowflakeId());
bidRatio.setProjectId(projectId);
bidRatio.setSectionId(sectionId);
bidRatio.setIntendedBidRank(bidRatioInfoVO.getIntendedBidRank());
bidRatio.setIntendedBidRatio(bidRatioInfoVO.getIntendedBidRatio());
resultList.add(bidRatio);
}
}
return resultList;
}
/** /**
* 物理删除信息 * 物理删除信息
@ -1023,7 +1083,7 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
List<SectionMaterial> materialList = new ArrayList<>(assembleInquiryMaterial(record.getId(), section.getId(), inquiryVO.getInquiryGoodsList())); List<SectionMaterial> materialList = new ArrayList<>(assembleInquiryMaterial(record.getId(), section.getId(), inquiryVO.getInquiryGoodsList()));
sectionList.add(section); sectionList.add(section);
return getStringObjectMap(record, sectionList, materialList, supplierList); return getStringObjectMap(record, sectionList, materialList, supplierList,null);
} }
/** /**
@ -1034,12 +1094,13 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
* @param supplierList 供应商集合 * @param supplierList 供应商集合
* @return 返回结果 * @return 返回结果
*/ */
private Map<String, Object> getStringObjectMap(ProjectRecord record, List<ProjectSection> sectionList, List<SectionMaterial> materialList, List<SectionSupplier> supplierList) { private Map<String, Object> getStringObjectMap(ProjectRecord record, List<ProjectSection> sectionList, List<SectionMaterial> materialList, List<SectionSupplier> supplierList,List<BidRatio> bidRatioList) {
Map<String, Object> resultMap = new HashMap<>(); Map<String, Object> resultMap = new HashMap<>();
resultMap.put("projectRecord", record); resultMap.put("projectRecord", record);
resultMap.put("sectionList", sectionList); resultMap.put("sectionList", sectionList);
resultMap.put("materialList", materialList); resultMap.put("materialList", materialList);
resultMap.put("supplierList", supplierList); resultMap.put("supplierList", supplierList);
resultMap.put("bidRatioList", bidRatioList);
//zhqbin 校验非法字符,长度 //zhqbin 校验非法字符,长度
checkUtil.checkInquiryVO(resultMap); checkUtil.checkInquiryVO(resultMap);
return resultMap; return resultMap;

View File

@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseEntity; import com.chinaunicom.mall.ebtp.common.base.entity.BaseEntity;
import com.chinaunicom.mall.ebtp.common.config.CustomLocalDateTimeTypeHandler; import com.chinaunicom.mall.ebtp.common.config.CustomLocalDateTimeTypeHandler;
import com.chinaunicom.mall.ebtp.project.bidratio.entity.BidRatio;
import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterial;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@ -17,6 +19,8 @@ import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
/** /**
* 项目标段信息实体类 BizProjectSection * 项目标段信息实体类 BizProjectSection
@ -240,4 +244,31 @@ public class ProjectSection extends BaseEntity implements Serializable {
@ApiModelProperty(value = "是否唱标 0 否 1 是") @ApiModelProperty(value = "是否唱标 0 否 1 是")
private Integer isAnnouncement; private Integer isAnnouncement;
@ApiModelProperty(value = "最高限价")
private BigDecimal priceCeiling;
@ApiModelProperty(value = "最高限价说明")
private String priceCeilingExplain;
@ApiModelProperty(value = "是否启用结构化报价 0否1是")
private String isStructureQuote;
@ApiModelProperty(value = "结构化报价模型 001普通报价模型")
private String structureQuoteModel;
@ApiModelProperty(value = "结构化报价限价类型 001总价限制002单价+总价限制")
private String structureQuoteLimitType;
@ApiModelProperty(value = "中标/中选人数量是否明确 0否1是")
private String bidNumberIsDefinite;
@ApiModelProperty(value = "中标/中选分配比例")
private List<BidRatio> projBidRatioInfoVoList = new ArrayList<>();
@ApiModelProperty(value = "中标/中选人数量")
private Integer bidDefiniteNumber;
@ApiModelProperty(value = "物料信息")
private List<SectionMaterial> materialList = new ArrayList<>();
} }

View File

@ -1,6 +1,8 @@
package com.chinaunicom.mall.ebtp.project.sectionmaterial.controller; package com.chinaunicom.mall.ebtp.project.sectionmaterial.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterial; import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterial;
import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterialVO; import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterialVO;
@ -13,6 +15,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
/** /**
* 项目物资信息controller * 项目物资信息controller
@ -80,5 +83,11 @@ public class SectionMaterialController{
return BaseResponse.success(sectionMaterial); return BaseResponse.success(sectionMaterial);
} }
@ApiOperation("根据标段查询物资信息")
@PostMapping("/getSectionMaterialBySectionIds")
public BaseResponse<List<SectionMaterial>> getSectionMaterialBySectionIds(@ApiParam(value = "对象数据", required = true) @RequestBody List<String> sectionIds){
LambdaQueryWrapper<SectionMaterial> query= Wrappers.lambdaQuery();
query.in(SectionMaterial::getSectionId,sectionIds);
return BaseResponse.success(sectionMaterialService.list(query));
}
} }

View File

@ -78,9 +78,9 @@ public class SectionMaterial extends BaseEntity implements Serializable {
private String materialTypeName; private String materialTypeName;
/** /**
* 物资品牌 * 物资品牌/规格型号
*/ */
@ApiModelProperty(value = "物资品牌(品牌名称)") @ApiModelProperty(value = "物资品牌(品牌名称)/规格型号")
private String materialBrand; private String materialBrand;
/** /**
@ -121,4 +121,17 @@ public class SectionMaterial extends BaseEntity implements Serializable {
@ApiModelProperty(value = "商品分类") @ApiModelProperty(value = "商品分类")
private String categoryCode; private String categoryCode;
/**
* 物资编码
*/
@ApiModelProperty(value = "物资编码")
private String materialCode;
/**
* 单项不含税最高限价
*/
@ApiModelProperty(value = "单项不含税最高限价")
private BigDecimal maxPriceCeiling;
} }