| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- package com.ydtech.modules.fee.service;
- import com.ydtech.modules.fee.dto.vo.ReCalcuLateProportion;
- import com.ydtech.modules.fee.dto.vo.RetailProportion;
- import com.ydtech.modules.ins.model.vo.QuoteRespVo;
- import com.ydtech.modules.order.entity.InsAreaCompany;
- import com.ydtech.modules.order.entity.InsOrders;
- import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
- import com.ydtech.modules.order.entity.vo.QueryOrderFeeResultVo;
- import com.ydtech.modules.order.entity.vo.QueryOrderFeeVo;
- import com.ydtech.modules.protocols.entity.po.PtlAgreementProductCostsExport;
- import com.ydtech.modules.protocols.entity.po.PtlAgreementProductCostsNew;
- import java.math.BigDecimal;
- import java.util.List;
- /**
- * 该类中只要包含费用的一些相关接口
- * 跟单费用的获取、跟单费用的拆分等
- */
- public interface FeeRuleSchemeNewService {
- /**
- * 总处理费用匹配方法
- * @param quoteInfoVo
- * @param quoteRespVo
- * @param agreementId
- * @param businessNo
- */
- // public void dealFeeOrderInfo(BaseQuoteInfoVo quoteInfoVo, QuoteRespVo quoteRespVo, String agreementId,String businessNo);
- /**
- * 查询费用明细
- *
- * @param companyId
- * @return
- */
- public QueryOrderFeeVo queryFeeOrderInfo(String companyId);
- public List<QueryOrderFeeResultVo> convertOrderFeeVoData(QueryOrderFeeVo orderFeeVo);
- /**
- * 比较和更新总费用比例
- *
- * @param insOrderNo
- * @param jqCostsProportionStr
- * @param syCostsProportionStr
- */
- void compareAndUpdateFeeOrderInfo(String insOrderNo, String jqCostsProportionStr, String syCostsProportionStr, String dealUser);
- /**
- * 查找匹配的费用因子
- *
- * @param insAreaCompany
- * @param insOrders
- */
- void verificationCostFactor(InsAreaCompany insAreaCompany, InsOrders insOrders, StringBuilder logs);
- /**
- * 查找匹配承保规则的因子
- *
- * @param insAreaCompany
- * @param insOrders
- */
- void verificationRuleFactor(InsAreaCompany insAreaCompany, InsOrders insOrders);
- /**
- * 重新计算费用
- *
- * @param costsProportion
- * @param deptProportion
- * @param retailProportion
- * @param retailLevel
- * @param ptlAgreementProductCostsExport
- * @param originalRetailProportion
- * @param type
- * @return
- */
- ReCalcuLateProportion recalculateProportion(BigDecimal costsProportion,
- BigDecimal deptProportion,
- BigDecimal retailProportion,
- BigDecimal taxRadio,
- Integer retailLevel,
- PtlAgreementProductCostsExport ptlAgreementProductCostsExport,
- RetailProportion originalRetailProportion,
- String type,
- BigDecimal enterProportion
- );
- /**
- * 计算费用因子
- *
- * @param costsId
- */
- void calcCosts(String costsId, InsAreaCompany insAreaCompany);
- void calcCostsTest(String costsId, InsAreaCompany insAreaCompany);
- /**
- * 计算费用因子 外部订单录入使用
- *
- * @param costsNew
- * @param insAreaCompany
- */
- void calcCostsExternal(PtlAgreementProductCostsNew costsNew, InsAreaCompany insAreaCompany);
- /**
- * 电销计算费用
- *
- * @param costsNew
- * @param insAreaCompany
- */
- void calcCostsExternalTelemarketing(PtlAgreementProductCostsNew costsNew, InsAreaCompany insAreaCompany);
- }
|