Browse Source

2024-12-06

master
qiezi 1 year ago
parent
commit
37315bfbde
  1. 6
      src/main/java/com/spring/modules/quote/controller/QuoteDetailRoutingController.java
  2. 3
      src/main/java/com/spring/modules/quote/service/QuoteDetailRoutingService.java
  3. 21
      src/main/java/com/spring/modules/quote/service/impl/QuoteDetailBomTreeServiceImpl.java
  4. 5
      src/main/java/com/spring/modules/quote/service/impl/QuoteDetailRoutingServiceImpl.java
  5. 37
      src/main/resources/mapper/quote/QuoteDetailBomTreeMapper.xml

6
src/main/java/com/spring/modules/quote/controller/QuoteDetailRoutingController.java

@ -41,4 +41,10 @@ public class QuoteDetailRoutingController {
quoteDetailRoutingService.changeQuoteDetailRouting(quoteDetailRouting); quoteDetailRoutingService.changeQuoteDetailRouting(quoteDetailRouting);
return R.ok("操作成功"); return R.ok("操作成功");
} }
@PostMapping("/update")
public R updateQuoteDetailRouting(@RequestBody QuoteDetailRouting quoteDetailRouting) {
quoteDetailRoutingService.updateQuoteDetailRouting(quoteDetailRouting);
return R.ok("操作成功");
}
} }

3
src/main/java/com/spring/modules/quote/service/QuoteDetailRoutingService.java

@ -20,4 +20,7 @@ public interface QuoteDetailRoutingService extends IService<QuoteDetailRouting>
void changeQuoteDetailRouting(QuoteDetailRouting quoteDetailRouting); void changeQuoteDetailRouting(QuoteDetailRouting quoteDetailRouting);
void againQuoteDetailRouting(QuoteDetailBomTree tree, long id); void againQuoteDetailRouting(QuoteDetailBomTree tree, long id);
void updateQuoteDetailRouting(QuoteDetailRouting quoteDetailRouting);
} }

21
src/main/java/com/spring/modules/quote/service/impl/QuoteDetailBomTreeServiceImpl.java

@ -1,15 +1,9 @@
package com.spring.modules.quote.service.impl; package com.spring.modules.quote.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.spring.modules.quote.entity.QuoteDetail;
import com.spring.modules.quote.entity.QuoteDetailBom;
import com.spring.modules.quote.entity.QuoteDetailBomTree;
import com.spring.modules.quote.entity.QuoteDetailRouting;
import com.spring.modules.quote.entity.*;
import com.spring.modules.quote.mapper.QuoteDetailBomTreeMapper; import com.spring.modules.quote.mapper.QuoteDetailBomTreeMapper;
import com.spring.modules.quote.service.QuoteDetailBomService;
import com.spring.modules.quote.service.QuoteDetailBomTreeService;
import com.spring.modules.quote.service.QuoteDetailRoutingService;
import com.spring.modules.quote.service.QuoteDetailService;
import com.spring.modules.quote.service.*;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -29,6 +23,8 @@ public class QuoteDetailBomTreeServiceImpl extends ServiceImpl<QuoteDetailBomTre
private QuoteDetailBomService quoteDetailBomService; private QuoteDetailBomService quoteDetailBomService;
@Autowired @Autowired
private QuoteDetailRoutingService quoteDetailRoutingService; private QuoteDetailRoutingService quoteDetailRoutingService;
@Autowired
private QuoteDetailToolService quoteDetailToolService;
@Override @Override
@Transactional @Transactional
public void initQuoteDetailBomTree(QuoteDetail detail, Long parentId, Integer level) { public void initQuoteDetailBomTree(QuoteDetail detail, Long parentId, Integer level) {
@ -49,6 +45,15 @@ public class QuoteDetailBomTreeServiceImpl extends ServiceImpl<QuoteDetailBomTre
routing.setCreateDate(new Date()); routing.setCreateDate(new Date());
quoteDetailRoutingService.saveQuoteDetailRouting(routing); quoteDetailRoutingService.saveQuoteDetailRouting(routing);
} }
if (parentId.equals(0L)){
// 处理工具
// 1清空工具信息
quoteDetailToolService.lambdaUpdate()
.eq(QuoteDetailTool::getQuoteDetailId, detail.getId())
.remove();
// 2根据routing 生成工具信息
}
List<QuoteDetailBom> componentParts = baseMapper.queryBomComponentPart(bom); List<QuoteDetailBom> componentParts = baseMapper.queryBomComponentPart(bom);
log.info("BOM子物料:{}",componentParts); log.info("BOM子物料:{}",componentParts);
// 3查询子物料是否存在BOM信息 // 3查询子物料是否存在BOM信息

5
src/main/java/com/spring/modules/quote/service/impl/QuoteDetailRoutingServiceImpl.java

@ -218,4 +218,9 @@ public class QuoteDetailRoutingServiceImpl extends ServiceImpl<QuoteDetailRoutin
save(detailRouting); save(detailRouting);
} }
} }
@Override
public void updateQuoteDetailRouting(QuoteDetailRouting quoteDetailRouting) {
updateById(quoteDetailRouting);
}
} }

37
src/main/resources/mapper/quote/QuoteDetailBomTreeMapper.xml

@ -134,25 +134,24 @@
</select> </select>
<select id="queryPartBomRouting" resultType="com.spring.modules.quote.entity.QuoteDetailRouting"> <select id="queryPartBomRouting" resultType="com.spring.modules.quote.entity.QuoteDetailRouting">
select top 1
rd.site,
#{buNo} as bu_no,
rd.routing_revision,
rd.routing_type,
rd.part_no,
rd.alternative_no,
#{quoteId} as quote_id,
#{quoteNo} as quote_no,
#{id} as quote_detail_id,
#{itemNo} as quote_detail_item_no,
#{versionNo} as version_no
select top 1 rd.site,
#{buNo} as bu_no,
rd.routing_revision,
rd.routing_type,
rd.part_no,
rd.alternative_no,
#{quoteId} as quote_id,
#{quoteNo} as quote_no,
#{id} as quote_detail_id,
#{itemNo} as quote_detail_item_no,
#{versionNo} as version_no
from plm_routing_detail rd from plm_routing_detail rd
left join plm_routing_header rh
on rd.site = rh.site and rd.part_no = rh.part_no and
rd.routing_type = rh.routing_type and
rd.routing_revision = rh.routing_revision
left join plm_routing_header rh
on rd.site = rh.site and rd.part_no = rh.part_no and
rd.routing_type = rh.routing_type and
rd.routing_revision = rh.routing_revision
where rd.site = #{site} where rd.site = #{site}
and rd.part_no = #{partNo}
and rd.part_no = #{partNo}
<if test="engChgLevel == null"> <if test="engChgLevel == null">
and rh.phase_out_date is null and rh.phase_out_date is null
</if> </if>
@ -162,10 +161,10 @@
<if test="alternativeNo != null and alternativeNo != ''"> <if test="alternativeNo != null and alternativeNo != ''">
and rd.alternative_no = #{alternativeNo} and rd.alternative_no = #{alternativeNo}
</if> </if>
<if test="alternativeNo == null or alternativeNo == ''">
<if test="alternativeNo == null or alternativeNo == ''">
and rd.alternative_no = '*' and rd.alternative_no = '*'
</if> </if>
order by rh.phase_in_date desc,rh.create_date desc
order by rh.phase_in_date desc, rh.create_date desc
</select> </select>
</mapper> </mapper>
Loading…
Cancel
Save