From 03e8f82a95c3c9e0df512da513e4da7fc43793d1 Mon Sep 17 00:00:00 2001 From: skjia <106962133@qq.com> Date: Sun, 20 Jul 2025 15:12:02 +0800 Subject: [PATCH] =?UTF-8?q?jsk=20=20=E6=8A=A5=E4=BB=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/ims/controller/QuoteController.java | 23 +++-- .../canteen/core/ims/domain/Inquiry.java | 3 +- .../core/ims/domain/InquiryDetail.java | 6 +- .../bonus/canteen/core/ims/domain/Quote.java | 14 +-- .../canteen/core/ims/mapper/QuoteMapper.java | 4 + .../core/ims/service/IQuoteService.java | 7 +- .../ims/service/impl/QuoteServiceImpl.java | 37 +++++++- .../resources/mapper/ims/InquiryMapper.xml | 15 +++- .../main/resources/mapper/ims/QuoteMapper.xml | 88 +++++++++++++++++++ 9 files changed, 178 insertions(+), 19 deletions(-) diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/QuoteController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/QuoteController.java index 28ba1b9..9f46595 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/QuoteController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/QuoteController.java @@ -2,6 +2,9 @@ package com.bonus.canteen.core.ims.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.bonus.canteen.core.ims.domain.Inquiry; +import com.bonus.canteen.core.ims.domain.InquiryDetail; import com.bonus.common.log.enums.OperaType; //import com.bonus.canteen.core.ims.common.annotation.PreventRepeatSubmit; import io.swagger.annotations.Api; @@ -55,7 +58,7 @@ public class QuoteController extends BaseController { @ApiOperation(value = "导出报价详情列表") //@PreventRepeatSubmit //@RequiresPermissions("ims:quote:export") - @SysLog(title = "报价详情", businessType = OperaType.EXPORT, logType = 1,module = "仓储管理->导出报价详情") + @SysLog(title = "报价详情", businessType = OperaType.EXPORT, logType = 1,module = "报价管理->导出报价详情") @PostMapping("/export") public void export(HttpServletResponse response, Quote quote) { List list = quoteService.selectQuoteList(quote); @@ -79,7 +82,7 @@ public class QuoteController extends BaseController { @ApiOperation(value = "新增报价详情") //@PreventRepeatSubmit //@RequiresPermissions("ims:quote:add") - @SysLog(title = "报价详情", businessType = OperaType.INSERT, logType = 1,module = "仓储管理->新增报价详情") + @SysLog(title = "报价详情", businessType = OperaType.INSERT, logType = 1,module = "报价管理->新增报价详情") @PostMapping public AjaxResult add(@RequestBody Quote quote) { try { @@ -95,23 +98,31 @@ public class QuoteController extends BaseController { @ApiOperation(value = "修改报价详情") //@PreventRepeatSubmit //@RequiresPermissions("ims:quote:edit") - @SysLog(title = "报价详情", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->修改报价详情") + @SysLog(title = "报价详情", businessType = OperaType.UPDATE, logType = 1,module = "报价管理->修改报价详情") @PostMapping("/edit") - public AjaxResult edit(@RequestBody Quote quote) { + public AjaxResult edit(@RequestBody Inquiry quote) { try { return toAjax(quoteService.updateQuote(quote)); } catch (Exception e) { return error(e.getMessage()); } } - + /** + * 获取询价单详细信息 + */ + @ApiOperation(value = "获取询价单明细信息") + //@RequiresPermissions("ims:inquiry:query") + @PostMapping(value = "/detail") + public AjaxResult getInfo(@RequestBody InquiryDetail quote) { + return success(quoteService.selectInquiryDetailByInquiryId(quote)); + } /** * 删除报价详情 */ @ApiOperation(value = "删除报价详情") //@PreventRepeatSubmit //@RequiresPermissions("ims:quote:remove") - @SysLog(title = "报价详情", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->删除报价详情") + @SysLog(title = "报价详情", businessType = OperaType.DELETE, logType = 1,module = "报价管理->删除报价详情") @PostMapping("/del/{quoteIds}") public AjaxResult remove(@PathVariable Long[] quoteIds) { return toAjax(quoteService.deleteQuoteByQuoteIds(quoteIds)); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Inquiry.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Inquiry.java index 85b75bd..f43649e 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Inquiry.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Inquiry.java @@ -69,7 +69,7 @@ public class Inquiry extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "期望交货时间", width = 30, dateFormat = "yyyy-MM-dd") private Date requestArrivalTime; - + private Date arrivalTime; /** 询价备注 */ @Excel(name = "询价备注") @ApiModelProperty(value = "询价备注") @@ -122,4 +122,5 @@ public class Inquiry extends BaseEntity { private String searchValue; private String inquiryState; private String orderStatus; + private String supplierNames; } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/InquiryDetail.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/InquiryDetail.java index fca201e..f564831 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/InquiryDetail.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/InquiryDetail.java @@ -57,7 +57,11 @@ public class InquiryDetail extends BaseEntity { @Excel(name = "采购数量") @ApiModelProperty(value = "采购数量") private BigDecimal purNum; - + private String quoteNum; + private String supplierIds; + private String supplierId; + private String totalPrice; + private String singlePrice; private String areaId ; private String area ; diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Quote.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Quote.java index a5587df..1aafc88 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Quote.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/Quote.java @@ -23,14 +23,14 @@ public class Quote extends BaseEntity { /** 报价主键id */ private Long quoteId; - /** 询价供应商主键id */ - @Excel(name = "询价供应商主键id") - @ApiModelProperty(value = "询价供应商主键id") + /** 报价供应商主键id */ + @Excel(name = "报价供应商主键id") + @ApiModelProperty(value = "报价供应商主键id") private Long inquirySupplierId; - /** 询价明细主键id */ - @Excel(name = "询价明细主键id") - @ApiModelProperty(value = "询价明细主键id") + /** 报价明细主键id */ + @Excel(name = "报价明细主键id") + @ApiModelProperty(value = "报价明细主键id") private Long inquiryDetailId; /** 报价数量 */ @@ -47,6 +47,6 @@ public class Quote extends BaseEntity { @Excel(name = "单价") @ApiModelProperty(value = "单价") private Long singlePrice; - + private Long inquiryId; } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/QuoteMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/QuoteMapper.java index 5cc8ae1..66cf44c 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/QuoteMapper.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/QuoteMapper.java @@ -1,6 +1,8 @@ package com.bonus.canteen.core.ims.mapper; import java.util.List; + +import com.bonus.canteen.core.ims.domain.InquiryDetail; import com.bonus.canteen.core.ims.domain.Quote; /** @@ -26,6 +28,7 @@ public interface QuoteMapper { */ public List selectQuoteList(Quote quote); + public List selectInquiryDetailByInquiryId(InquiryDetail quote); /** * 新增报价详情 * @@ -57,4 +60,5 @@ public interface QuoteMapper { * @return 结果 */ public int deleteQuoteByQuoteIds(Long[] quoteIds); + public int delQuote(Long inquiryId); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/IQuoteService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/IQuoteService.java index 4d42ba0..81c470b 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/IQuoteService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/IQuoteService.java @@ -1,6 +1,9 @@ package com.bonus.canteen.core.ims.service; import java.util.List; + +import com.bonus.canteen.core.ims.domain.Inquiry; +import com.bonus.canteen.core.ims.domain.InquiryDetail; import com.bonus.canteen.core.ims.domain.Quote; /** @@ -26,6 +29,8 @@ public interface IQuoteService { */ public List selectQuoteList(Quote quote); + public List selectInquiryDetailByInquiryId(InquiryDetail quote); + /** * 新增报价详情 * @@ -40,7 +45,7 @@ public interface IQuoteService { * @param quote 报价详情 * @return 结果 */ - public int updateQuote(Quote quote); + public int updateQuote(Inquiry quote); /** * 批量删除报价详情 diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/QuoteServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/QuoteServiceImpl.java index 40da01f..89d547f 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/QuoteServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/QuoteServiceImpl.java @@ -1,6 +1,11 @@ package com.bonus.canteen.core.ims.service.impl; import java.util.List; + +import com.bonus.canteen.core.ims.domain.Inquiry; +import com.bonus.canteen.core.ims.domain.InquiryDetail; +import com.bonus.canteen.core.ims.domain.InquirySupplier; +import com.bonus.canteen.core.ims.mapper.InquirySupplierMapper; import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -19,6 +24,8 @@ import com.bonus.canteen.core.ims.service.IQuoteService; public class QuoteServiceImpl implements IQuoteService { @Autowired private QuoteMapper quoteMapper; + @Autowired + private InquirySupplierMapper inquirySupplierMapper; /** * 查询报价详情 @@ -42,6 +49,10 @@ public class QuoteServiceImpl implements IQuoteService { return quoteMapper.selectQuoteList(quote); } + @Override + public List selectInquiryDetailByInquiryId(InquiryDetail quote) { + return quoteMapper.selectInquiryDetailByInquiryId(quote); + } /** * 新增报价详情 * @@ -65,10 +76,32 @@ public class QuoteServiceImpl implements IQuoteService { * @return 结果 */ @Override - public int updateQuote(Quote quote) { + public int updateQuote(Inquiry quote) { quote.setUpdateTime(DateUtils.getNowDate()); try { - return quoteMapper.updateQuote(quote); + List list=quote.getDetailList(); + InquirySupplier iInquirySupplier=new InquirySupplier(); + iInquirySupplier.setSupplierId(quote.getSupplierId()); + iInquirySupplier.setArrivalTime(quote.getArrivalTime()); + Long allnum=0L; + if(list!=null&&list.size()>0){ + quoteMapper.delQuote(quote.getInquiryId()); + for(InquiryDetail vo:list){ + Quote addquote=new Quote(); + addquote.setInquiryId(quote.getInquiryId()); + addquote.setInquiryDetailId(vo.getInquiryDetailId()); + addquote.setQuoteNum(vo.getPurNum()); + addquote.setTotalPrice((Long.parseLong(vo.getTotalPrice())/100L)); + addquote.setSinglePrice((Integer.parseInt(vo.getSinglePrice())/100L)); + addquote.setInquirySupplierId(Long.parseLong(quote.getSupplierId())); + addquote.setCreateTime(DateUtils.getNowDate()); + allnum=allnum+(Long.parseLong(vo.getTotalPrice())/100L); + quoteMapper.insertQuote(addquote); + } + } + iInquirySupplier.setQuoteAmount(allnum+""); + inquirySupplierMapper.updateInquirySupplier(iInquirySupplier); + return 1; } catch (Exception e) { throw new ServiceException(e.getMessage()); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/InquiryMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/InquiryMapper.xml index 9a2a2bf..f820346 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/InquiryMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/InquiryMapper.xml @@ -26,6 +26,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -68,6 +69,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + @@ -88,6 +93,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" aa.request_arrival_time, aa.inquiry_notes, aa.phone, aa.link_man, aa.address, aa.bid_total_price, aa.supplier_id, bb.area_name as area, aa.create_by, aa.create_time, aa.update_by, aa.update_time,case when cc.bid_status=3 then dd.supplier_name else '' end as supplier_name, GROUP_CONCAT(cc.inquiry_supplier_id ) as supplier_ids, + GROUP_CONCAT(dd.supplier_name ) as supplier_names, sum(case when cc.bid_status=2 then 1 else 0 end) as inquirySupplierNum, sum(case when cc.bid_status=1 then 1 else 0 end) as supplierNum from ims_inquiry aa @@ -120,6 +126,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" aa.request_arrival_time, aa.inquiry_notes, aa.phone, aa.link_man, aa.address, aa.bid_total_price, aa.supplier_id, bb.area_name as area, aa.create_by, aa.create_time, aa.update_by, aa.update_time,case when cc.bid_status=3 then dd.supplier_name else '' end as supplier_name, GROUP_CONCAT(cc.inquiry_supplier_id ) as supplier_ids, + GROUP_CONCAT(dd.supplier_name ) as supplier_names, sum(case when cc.bid_status=2 then 1 else 0 end) as inquirySupplierNum, sum(case when cc.bid_status=1 then 1 else 0 end) as supplierNum from ims_inquiry aa @@ -131,7 +138,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/QuoteMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/QuoteMapper.xml index 36890fa..6c8fbc7 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/QuoteMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/QuoteMapper.xml @@ -15,6 +15,52 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select quote_id, inquiry_supplier_id, inquiry_detail_id, quote_num, total_price, single_price, create_by, create_time, update_by, update_time from ims_quote @@ -30,6 +76,43 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and single_price = #{singlePrice} + +