Browse Source

询价查询功能

master
yanyan 2 weeks ago
parent
commit
4dbdfd1d2c
  1. 7
      src/main/java/com/xujie/modules/supplier/controller/SupplierInvNotificationController.java
  2. 49
      src/main/java/com/xujie/modules/supplier/data/PurQuotationDetailData.java
  3. 3
      src/main/java/com/xujie/modules/supplier/mapper/PurQuotationDetailMapper.java
  4. 11
      src/main/java/com/xujie/modules/supplier/service/PurQuotationService.java
  5. 8
      src/main/java/com/xujie/modules/supplier/service/impl/PurQuotationServiceImpl.java
  6. 136
      src/main/resources/mapper/supplier/PurQuotationDetailMapper.xml

7
src/main/java/com/xujie/modules/supplier/controller/SupplierInvNotificationController.java

@ -110,6 +110,13 @@ public class SupplierInvNotificationController {
}
@PostMapping("/getPurDetailPage")
@ApiOperation("询价单查询分页接口")
public R getPurDetailPage(@RequestBody PurQuotationDetailData query){
PageUtils page = purQuotationService.getPurDetailPage(query);
return R.ok().put("page", page);
}
// -----------------------------------------------------------------采购开票通知单 ---------------------------------------------------

49
src/main/java/com/xujie/modules/supplier/data/PurQuotationDetailData.java

@ -4,9 +4,7 @@ import com.xujie.common.utils.QueryPage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.data.relational.core.sql.In;
import java.time.LocalDateTime;
import java.util.Date;
/**
@ -33,7 +31,7 @@ public class PurQuotationDetailData extends QueryPage {
@ApiModelProperty(value = "物料名称")
private String partDesc;
@ApiModelProperty(value = "状态")
@ApiModelProperty(value = "状态(待报价/已报价/已接受/未接受/已拒绝)")
private String status;
@ApiModelProperty(value = "询价数量")
@ -97,6 +95,51 @@ public class PurQuotationDetailData extends QueryPage {
private String spec;
private String supplierId; //供应商编码
private String supplierName; //供应商名称
private String taxCode; //税率
private Double totalValeBase; //本位币总金额
private Double totalVale; //总金额
private String orderDate; //订单日期
private String userName;
private String fileName;
private String uploadFlag;
private String histFlag;
private Integer SeqNo;
private Date wantReplyDate;
private String employeeName;
private String deliveryTerm;
private String paymentTerm;
private String otherCondition;
private String startDate;
private String endDate;
private String submitFlag;
private String buyer;
private String currency;
private String primaryFlag;
public Object getKey() {
return this.id;
}

3
src/main/java/com/xujie/modules/supplier/mapper/PurQuotationDetailMapper.java

@ -23,9 +23,10 @@ public interface PurQuotationDetailMapper extends BaseMapper<PurQuotationDetail>
List<PurQuotationDetailData> getListByModel(PurQuotationDetail data);
IPage<PurQuotationDetail> myPage(Page<PurQuotationDetail> page, @Param("query") PurQuotationDetail data);
IPage<PurQuotationDetailData> myPage(Page<PurQuotationDetailData> page, @Param("query") PurQuotationDetailData data);
int getMaxItemNo(String orderNo);
void updatePurDetailStatus(PurQuotationDetailData purDetail);
}

11
src/main/java/com/xujie/modules/supplier/service/PurQuotationService.java

@ -25,7 +25,6 @@ public interface PurQuotationService {
void delPurHeader(PurQuotationHeader data);
List<PurQuotationDetailData> getPurDetailList(PurQuotationDetail query);
@ -35,6 +34,15 @@ public interface PurQuotationService {
void delPurDetail(PurQuotationDetail purDetail);
/**
* 询价单查询接口
* @Method getQuotationOffer
* @param query
* @return
*/
PageUtils getPurDetailPage(PurQuotationDetailData query);
//----------------------------------不用的方法----------------------------------------
@ -281,5 +289,4 @@ public interface PurQuotationService {
void updatePurDetailStatus(PurQuotationDetailData purDetail);
}

8
src/main/java/com/xujie/modules/supplier/service/impl/PurQuotationServiceImpl.java

@ -136,6 +136,14 @@ public class PurQuotationServiceImpl implements PurQuotationService {
purQuotationDetailMapper.deleteById(model.getId());
}
@Override
public PageUtils getPurDetailPage(PurQuotationDetailData data) {
IPage<PurQuotationDetailData> resultList =
purQuotationDetailMapper.myPage(new Page<>(data.getPage(), data.getLimit()), data);
return new PageUtils(resultList);
}
@Override
@Transactional

136
src/main/resources/mapper/supplier/PurQuotationDetailMapper.xml

@ -91,52 +91,110 @@
order by id desc
</select>
<select id="myPage" resultType="com.xujie.modules.supplier.entity.PurQuotationDetail">
select
<include refid="BaseColumnList"/>
from PurQuotationDetail
<select id="myPage" resultType="com.xujie.modules.supplier.data.PurQuotationDetailData">
select A.order_no
, A.supplier_id
, A.supplier_name
, A.tax_code
, A.buyer
, A.currency
, A.order_date
, A.upload_flag
, A.file_name
, A.want_reply_date
, A.other_condition as otherCondition
, B.item_no
, B.site
, B.part_no
, B.part_desc
, B.umid
, B.qty
, B.price
, B.material_cost
, B.produce_fee
, B.profit
, B.freight
, B.duty
, B.additional_cost
, B.pur_lead_time
, B.remark
, B.tax
, B.last_update_by
, B.status
, B.tax_rate
, B.surface_fee
, B.purchase_cycle
, B.mould_fee
, B.remark2
, E.user_display
, F.DeliveryTerm as deliveryTerm
, G.PaymentTerm as paymentTerm
, P.part_spec as spec
, round((round(round(B.qty, 2) * round(B.Price, 4), 2) + round(B.additional_cost, 2)) *
round(A.currency_rate, 6), 2) as total_vale_base
, (round(round(B.qty, 2) * round(B.price, 4), 2) + round(B.additional_cost, 2)) as total_vale
, (SELECT dbo.Get_Tax_TaxRate(A.site, D.taxCode)) as taxRate
from PurQuotationHeader as A
left join PurQuotationDetail B on A.site = B.site and A.order_no = B.order_no
left join part as P On B.Site = P.site and B.part_no = P.part_no
left join srm_supplier D on A.supplier_id = D.supplier_no and A.site = D.site
left join sys_user E on A.site = E.site and A.buyer = E.username
left join DeliveryTerm F on A.site = F.Site and A.delivery_term = F.DeliveryTermID
left join PaymentTerm G on A.site = G.Site and A.payment_term = G.PaymentTermID
where 1=1
<if test="query.orderNo != null and query.orderNo != '' "> and order_no like '%${query.orderNo}%'</if>
<if test="query.site != null and query.site != '' "> and site like '%${query.site}%'</if>
<if test="query.partNo != null and query.partNo != '' "> and part_no like '%${query.partNo}%'</if>
<if test="query.partDesc != null and query.partDesc != '' "> and part_desc like '%${query.partDesc}%'</if>
<if test="query.status != null and query.status != '' "> and status like '%${query.status}%'</if>
<if test="query.qty != null and query.qty != '' "> and qty like '%${query.qty}%'</if>
<if test="query.umid != null and query.umid != '' "> and umid like '%${query.umid}%'</if>
<if test="query.remark2 != null and query.remark2 != '' "> and remark2 like '%${query.remark2}%'</if>
<if test="query.convertFactor != null and query.convertFactor != '' "> and convert_factor like '%${query.convertFactor}%'</if>
<if test="query.actReplyDate != null and query.actReplyDate != '' "> and act_reply_date like '%${query.actReplyDate}%'</if>
<if test="query.orderRef1 != null and query.orderRef1 != '' "> and order_ref1 like '%${query.orderRef1}%'</if>
<if test="query.itemNo != null and query.itemNo != '' "> and item_no like '%${query.itemNo}%'</if>
<if test="query.surfaceFee != null and query.surfaceFee != '' "> and surface_fee like '%${query.surfaceFee}%'</if>
<if test="query.freight != null and query.freight != '' "> and freight like '%${query.freight}%'</if>
<if test="query.lastUpdateBy != null and query.lastUpdateBy != '' "> and last_update_by like '%${query.lastUpdateBy}%'</if>
<if test="query.orderRef2 != null and query.orderRef2 != '' "> and order_ref2 like '%${query.orderRef2}%'</if>
<if test="query.purLeadTime != null and query.purLeadTime != '' "> and pur_lead_time like '%${query.purLeadTime}%'</if>
<if test="query.duty != null and query.duty != '' "> and duty like '%${query.duty}%'</if>
<if test="query.profit != null and query.profit != '' "> and profit like '%${query.profit}%'</if>
<if test="query.tax != null and query.tax != '' "> and tax like '%${query.tax}%'</if>
<if test="query.materialCost != null and query.materialCost != '' "> and material_cost like '%${query.materialCost}%'</if>
<if test="query.remark != null and query.remark != '' "> and remark like '%${query.remark}%'</if>
<if test="query.id != null "> and id = '${query.id}'</if>
<if test="query.additionalCost != null and query.additionalCost != '' "> and additional_cost like '%${query.additionalCost}%'</if>
<if test="query.purchaseCycle != null and query.purchaseCycle != '' "> and purchase_cycle like '%${query.purchaseCycle}%'</if>
<if test="query.price != null and query.price != '' "> and price like '%${query.price}%'</if>
<if test="query.actReplyComments != null and query.actReplyComments != '' "> and act_reply_comments like '%${query.actReplyComments}%'</if>
<if test="query.taxRate != null and query.taxRate != '' "> and tax_rate like '%${query.taxRate}%'</if>
<if test="query.acceptFlag != null and query.acceptFlag != '' "> and accept_flag like '%${query.acceptFlag}%'</if>
<if test="query.produceFee != null and query.produceFee != '' "> and produce_fee like '%${query.produceFee}%'</if>
<if test="query.mouldFee != null and query.mouldFee != '' "> and mould_fee like '%${query.mouldFee}%'</if>
<if test="query.orderRef3 != null and query.orderRef3 != '' "> and order_ref3 like '%${query.orderRef3}%'</if>
<if test="query.orderRefType != null and query.orderRefType != '' "> and order_ref_type like '%${query.orderRefType}%'</if>
order by id desc
<if test="query.supplierId != null and query.supplierId != '' "> and A.supplier_id = '%${query.supplierId}%'</if>
<if test="query.supplierName != null and query.supplierName != '' "> and A.supplier_name like '%${query.supplierName}%'</if>
<if test="query.startDate != null">
and A.order_date gt;= '${query.startDate}'
</if>
<if test="query.endDate != null">
and A.order_date lt;= '${query.endDate}'
</if>
<if test="query.orderNo != null and query.orderNo != '' "> and B.order_no like '%${query.orderNo}%'</if>
<if test="query.site != null and query.site != '' "> and B.site like '%${query.site}%'</if>
<if test="query.partNo != null and query.partNo != '' "> and B.part_no like '%${query.partNo}%'</if>
<if test="query.partDesc != null and query.partDesc != '' "> and B.part_desc like '%${query.partDesc}%'</if>
<if test="query.status != null and query.status != '' "> and B.status like '%${query.status}%'</if>
<if test="query.qty != null and query.qty != '' "> and B.qty like '%${query.qty}%'</if>
<if test="query.umid != null and query.umid != '' "> and B.umid like '%${query.umid}%'</if>
<if test="query.remark2 != null and query.remark2 != '' "> and B.remark2 like '%${query.remark2}%'</if>
<if test="query.convertFactor != null and query.convertFactor != '' "> and B.convert_factor like '%${query.convertFactor}%'</if>
<if test="query.actReplyDate != null and query.actReplyDate != '' "> and B.act_reply_date like '%${query.actReplyDate}%'</if>
<if test="query.orderRef1 != null and query.orderRef1 != '' "> and B.order_ref1 like '%${query.orderRef1}%'</if>
<if test="query.itemNo != null and query.itemNo != '' "> and B.item_no like '%${query.itemNo}%'</if>
<if test="query.surfaceFee != null and query.surfaceFee != '' "> and B.surface_fee like '%${query.surfaceFee}%'</if>
<if test="query.freight != null and query.freight != '' "> and B.freight like '%${query.freight}%'</if>
<if test="query.lastUpdateBy != null and query.lastUpdateBy != '' "> and B.last_update_by like '%${query.lastUpdateBy}%'</if>
<if test="query.orderRef2 != null and query.orderRef2 != '' "> and B.order_ref2 like '%${query.orderRef2}%'</if>
<if test="query.purLeadTime != null and query.purLeadTime != '' "> and B.pur_lead_time like '%${query.purLeadTime}%'</if>
<if test="query.duty != null and query.duty != '' "> and B.duty like '%${query.duty}%'</if>
<if test="query.profit != null and query.profit != '' "> and B.profit like '%${query.profit}%'</if>
<if test="query.tax != null and query.tax != '' "> and B.tax like '%${query.tax}%'</if>
<if test="query.materialCost != null and query.materialCost != '' "> and B.material_cost like '%${query.materialCost}%'</if>
<if test="query.remark != null and query.remark != '' "> and B.remark like '%${query.remark}%'</if>
<if test="query.id != null "> and B.id = '${query.id}'</if>
<if test="query.additionalCost != null and query.additionalCost != '' "> and B.additional_cost like '%${query.additionalCost}%'</if>
<if test="query.purchaseCycle != null and query.purchaseCycle != '' "> and B.purchase_cycle like '%${query.purchaseCycle}%'</if>
<if test="query.price != null and query.price != '' "> and B.price like '%${query.price}%'</if>
<if test="query.actReplyComments != null and query.actReplyComments != '' "> and B.act_reply_comments like '%${query.actReplyComments}%'</if>
<if test="query.taxRate != null and query.taxRate != '' "> and B.tax_rate like '%${query.taxRate}%'</if>
<if test="query.acceptFlag != null and query.acceptFlag != '' "> and B.accept_flag like '%${query.acceptFlag}%'</if>
<if test="query.produceFee != null and query.produceFee != '' "> and B.produce_fee like '%${query.produceFee}%'</if>
<if test="query.mouldFee != null and query.mouldFee != '' "> and B.mould_fee like '%${query.mouldFee}%'</if>
<if test="query.orderRef3 != null and query.orderRef3 != '' "> and B.order_ref3 like '%${query.orderRef3}%'</if>
<if test="query.orderRefType != null and query.orderRefType != '' "> and B.order_ref_type like '%${query.orderRefType}%'</if>
Order by A.order_no desc ,B.item_no
</select>
<select id="getMaxItemNo" resultType="java.lang.Integer">
select max(item_no) from PurQuotationDetail
where order_no = #{orderNo}
</select>
<update id="updatePurDetailStatus">
update PurQuotationDetail
set status = #{status}

Loading…
Cancel
Save