package com.brilliance.isc.esb.api.edmp;

import com.brilliance.isc.esb.model.Req;
import com.brilliance.isc.esb.model.Res;
import com.brilliance.isc.esb.model.edmp.*;
import com.brilliance.isc.esb.newmodel.waishu.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * EDMP 外部数据管理平台-外部数据联机服务
 *
 * @restApi
 */
//@RequestMapping("/trades")
public interface EdmpClient {
    /**
     * NFPA 银税通发票批量核验
     *
     * @param nfpaReq
     * @return
     */
    @PostMapping("/NFPA")
    EdmpRes<NFPARes> callNfpa(NFPAReq nfpaReq);
    /**
     * NS11-银税通发票批量核验
     *
     * @param ns11Req
     * @return
     */
    @PostMapping("/NS11")
    EdmpRes<NS11Res> callNS11(NS11Req ns11Req);

    /**
     * NFP3 银税通发票资产状态跟踪批量
     *
     * @param reqNFP3
     * @return
     */
    @PostMapping("/NFP3")
    Res<ResNFP3> callNFP3(Req<ReqNFP3> reqNFP3);

    /**
     * NFP4 银税通发票资产状态每日监控结果
     *
     * @param reqNFP4
     * @return
     */
    @PostMapping("/NFP4")
    Res<ResNFP4> callNFP4(Req<ReqNFP4> reqNFP4);

    /**
     * NFP6 银税通单笔发票核验实时查询
     *
     * @param reqNFP6
     * @return
     */
    @PostMapping("/NFP6")
    Res<ResNFP6> callNFP6(Req<ReqNFP6> reqNFP6);
}
