Browse Source

2024-09-10

master
qiezi 2 years ago
parent
commit
3fbf2feb8a
  1. 7
      src/main/java/com/spring/modules/quotation/mapper/QuoteDetailPropertiesMapper.java
  2. 11
      src/main/java/com/spring/modules/quotation/service/QuoteDetailPropertiesService.java
  3. 2
      src/main/java/com/spring/modules/quotation/service/impl/QuotationDetailServiceImpl.java
  4. 28
      src/main/java/com/spring/modules/quotation/service/impl/QuotationHeaderServiceImpl.java
  5. 22
      src/main/java/com/spring/modules/quotation/service/impl/QuoteDetailPropertiesServiceImpl.java
  6. 35
      src/main/resources/mapper/quotation/QuoteDetailPropertiesMapper.xml

7
src/main/java/com/spring/modules/quotation/mapper/QuoteDetailPropertiesMapper.java

@ -1,6 +1,7 @@
package com.spring.modules.quotation.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.spring.modules.base.entity.PartSubPropertiesValue;
import com.spring.modules.base.entity.PartSubPropertiesValueHeader;
import com.spring.modules.quotation.entity.QuoteDetailProperties;
import com.spring.modules.quotation.vo.QuoteDetailPropertiesVo;
@ -32,4 +33,10 @@ public interface QuoteDetailPropertiesMapper extends BaseMapper<QuoteDetailPrope
void newQuoteDetailProperties(QuoteDetailPropertiesVo property);
BigDecimal queryMaxItemNo(QuoteDetailPropertiesVo property);
void savePartSubPropertiesValueHeader(PartSubPropertiesValueHeader propertiesValueHeader);
List<PartSubPropertiesValue> queryPartSubPropertiesValue(PartSubPropertiesValueHeader propertiesVo);
void savePartSubPropertiesValue(List<PartSubPropertiesValue> collect);
}

11
src/main/java/com/spring/modules/quotation/service/QuoteDetailPropertiesService.java

@ -1,6 +1,9 @@
package com.spring.modules.quotation.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.spring.modules.base.entity.PartSubPropertiesValue;
import com.spring.modules.base.entity.PartSubPropertiesValueHeader;
import com.spring.modules.quotation.entity.QuotationDetail;
import com.spring.modules.quotation.entity.QuoteDetailProperties;
import com.spring.modules.quotation.vo.QuoteDetailPropertiesVo;
@ -28,4 +31,12 @@ public interface QuoteDetailPropertiesService extends IService<QuoteDetailProper
void deleteQuoteDetailProperties(List<QuoteDetailPropertiesVo> propertiesVos);
void newQuoteDetailProperties(List<QuoteDetailPropertiesVo> propertiesVos);
PartSubPropertiesValueHeader getPartSubPropertiesValueHeader(QuoteDetailPropertiesVo propertiesVo);
void savePartSubPropertiesValueHeader(PartSubPropertiesValueHeader propertiesValueHeader);
List<PartSubPropertiesValue> getPartSubPropertiesValue(PartSubPropertiesValueHeader propertiesVo);
void savePartSubPropertiesValue(List<PartSubPropertiesValue> collect);
}

2
src/main/java/com/spring/modules/quotation/service/impl/QuotationDetailServiceImpl.java

@ -61,7 +61,7 @@ public class QuotationDetailServiceImpl extends ServiceImpl<QuotationDetailMappe
throw new RuntimeException("报价明细已存在该物料");
}
boolean save = save(quotationDetail);
// TODO 新增模板信息
// 新增模板信息
baseMapper.handleSavePropertiesHeader(quotationDetail);
baseMapper.handleSavePropertiesDetail(quotationDetail);
if (save){

28
src/main/java/com/spring/modules/quotation/service/impl/QuotationHeaderServiceImpl.java

@ -7,12 +7,15 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.spring.common.utils.Constant;
import com.spring.common.utils.R;
import com.spring.modules.base.entity.PartSubPropertiesValue;
import com.spring.modules.base.entity.PartSubPropertiesValueHeader;
import com.spring.modules.quotation.entity.*;
import com.spring.modules.quotation.mapper.QuotationHeaderMapper;
import com.spring.modules.quotation.service.*;
import com.spring.modules.quotation.vo.QuotationHeaderVo;
import com.spring.modules.quotation.vo.QuotationInformationVo;
import com.spring.modules.quotation.vo.QuoteBomDetailVo;
import com.spring.modules.quotation.vo.QuoteDetailPropertiesVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -44,6 +47,9 @@ public class QuotationHeaderServiceImpl extends ServiceImpl<QuotationHeaderMappe
@Autowired
private QuoteRoutingDetailService quoteRoutingDetailService;
@Autowired
private QuoteDetailPropertiesService quoteDetailPropertiesService;
@Override
public R getQuotationHeaderByPage(Integer no, Integer size,String site,String customerNo,String customerName,
String trackerName,String quotationNo,String customerInquiryNo,
@ -230,10 +236,29 @@ public class QuotationHeaderServiceImpl extends ServiceImpl<QuotationHeaderMappe
// 查询报价明细中的信息(材料工序工具成品属性)
// 1bom
List<QuoteBomHeader> bomHeader = getQuoteBomHeader(quotationDetail);
// 查询 属性信息
QuoteDetailPropertiesVo propertiesVo = new QuoteDetailPropertiesVo();
propertiesVo.setQuotationDetailId(quotationDetail.getQuotationDetailId().longValue());
propertiesVo.setSite(quotationDetail.getSite());
PartSubPropertiesValueHeader propertiesValueHeader = quoteDetailPropertiesService.getPartSubPropertiesValueHeader(propertiesVo);
// 查询属性详细详细信息
List<PartSubPropertiesValue> list = quoteDetailPropertiesService.getPartSubPropertiesValue(propertiesValueHeader);
if(!bomHeader.isEmpty()){
quotationDetail.setQuotationDetailId(null);
quotationDetail.setQuotationHeaderId(quotationHeader.getQuotationHeaderId());
quotationDetailService.save(quotationDetail);
// 新增属性PartSubPropertiesValueHeader
propertiesValueHeader.setPartNo("BJ"+quotationDetail.getQuotationDetailId());
quoteDetailPropertiesService.savePartSubPropertiesValueHeader(propertiesValueHeader);
quoteDetailPropertiesService.savePartSubPropertiesValue(list.stream().map(item -> {
item.setPartNo("BJ"+quotationDetail.getQuotationDetailId());
return item;
}).collect(Collectors.toList()));
return;
}
// 新增bom
@ -259,6 +284,9 @@ public class QuotationHeaderServiceImpl extends ServiceImpl<QuotationHeaderMappe
toolList = getQuotationTool(quotationDetail,toolList);
quotationToolService.batchInsertQuotationTool(toolList,quotationDetail.getQuotationDetailId());
}
// 3复制属性
});
}
}

22
src/main/java/com/spring/modules/quotation/service/impl/QuoteDetailPropertiesServiceImpl.java

@ -2,7 +2,9 @@ package com.spring.modules.quotation.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.spring.common.utils.Constant;
import com.spring.modules.base.entity.PartSubPropertiesValue;
import com.spring.modules.base.entity.PartSubPropertiesValueHeader;
import com.spring.modules.quotation.entity.QuotationDetail;
import com.spring.modules.quotation.entity.QuoteDetailProperties;
import com.spring.modules.quotation.mapper.QuoteDetailPropertiesMapper;
import com.spring.modules.quotation.service.QuoteDetailPropertiesService;
@ -127,4 +129,24 @@ public class QuoteDetailPropertiesServiceImpl extends ServiceImpl<QuoteDetailPro
baseMapper.newQuoteDetailProperties(property);
}
}
@Override
public PartSubPropertiesValueHeader getPartSubPropertiesValueHeader(QuoteDetailPropertiesVo propertiesVo) {
return baseMapper.queryPartSubPropertiesValueHeader(propertiesVo);
}
@Override
public void savePartSubPropertiesValueHeader(PartSubPropertiesValueHeader propertiesValueHeader) {
baseMapper.savePartSubPropertiesValueHeader(propertiesValueHeader);
}
@Override
public List<PartSubPropertiesValue> getPartSubPropertiesValue(PartSubPropertiesValueHeader propertiesVo) {
return baseMapper.queryPartSubPropertiesValue(propertiesVo);
}
@Override
public void savePartSubPropertiesValue(List<PartSubPropertiesValue> collect) {
baseMapper.savePartSubPropertiesValue(collect);
}
}

35
src/main/resources/mapper/quotation/QuoteDetailPropertiesMapper.xml

@ -166,7 +166,7 @@
<select id="queryPartSubPropertiesValueHeader"
resultType="com.spring.modules.base.entity.PartSubPropertiesValueHeader">
select PartNo, Site, CodeNo, SubCodeSeqNo, SubCodeDesc, RecordType
select top 1 PartNo, Site, CodeNo, SubCodeSeqNo, SubCodeDesc, RecordType
from PartSubPropertiesValueHeader
where CodeNo = 'I001'
and SubCodeSeqNo = 1
@ -201,4 +201,37 @@
and codeNo = #{codeNo}
and subCodeSeqNo = #{subCodeSeqNo}
</select>
<insert id="savePartSubPropertiesValueHeader">
insert into PartSubPropertiesValueHeader(PartNo, Site, CodeNo, SubCodeSeqNo, SubCodeDesc, RecordType)
values (#{partNo}, #{site}, #{codeNo}, #{subCodeSeqNo}, #{subCodeDesc}, #{recordType})
</insert>
<select id="queryPartSubPropertiesValue" resultType="com.spring.modules.base.entity.PartSubPropertiesValue">
select PartNo,
Site,
CodeNo,
SubCodeSeqNo,
SubCodeDesc,
ItemNo,
PropertiesItemNo,
TextValue,
NumValue,
RecordType
from PartSubPropertiesValue
where PartNo = #{partNo}
and Site = #{site}
and SubCodeSeqNo = #{subCodeSeqNo}
and RecordType = #{recordType}
and CodeNo = #{codeNo}
</select>
<insert id="savePartSubPropertiesValue">
insert into PartSubPropertiesValue(PartNo, Site, CodeNo, SubCodeSeqNo, SubCodeDesc, ItemNo, PropertiesItemNo,
TextValue, NumValue, RecordType)
values
<foreach collection="list" item="item" separator=",">
(#{item.partNo}, #{item.site}, #{item.codeNo}, #{item.subCodeSeqNo}, #{item.subCodeDesc}, #{item.itemNo}, #{item.propertiesItemNo}, #{item.textValue}, #{item.numValue}, #{item.recordType})
</foreach>
</insert>
</mapper>
Loading…
Cancel
Save