package com.cool.store.service;

import com.cool.store.dto.xgj.XgjBranchBankDTO;
import com.cool.store.dto.xgj.XgjPartnerPageDTO;
import com.cool.store.dto.xgj.XgjPayResultDTO;
import com.cool.store.request.xgj.*;

import java.util.List;

/**
 * <p>
 * 新管家三方接口服务类
 * </p>
 *
 * @author wangff
 * @since 2025/11/28
 */
public interface ThirdXgjService {

    /**
     * 新管家账号关闭
     * @param request 新管家账号关闭Request
     * @return 是否成功
     */
    String accountClose(XgjAccountCloseRequest request);

    /**
     * 新管家报销单
     * @param request 新管家报销单Request
     * @return 每刻单号
     */
    String reimburse(XgjReimburseRequest request);

    /**
     * 新管家供应商同步
     * @param request 新管家同步供应商Request
     * @return java.lang.String
     */
    String savePartner(XgjSavePartnerRequest request);

    /**
     * 获取单据支付结果
     * @param request 新管家获取单据支付结果Request
     * @return 新管家单据支付结果DTO
     */
    XgjPayResultDTO queryOrderStatus(XgjPaymentRequest request);

    /**
     * 查询往来单位列表
     * @param request 新管家往来单位查询Request
     * @return 新管家分页DTO
     */
    XgjPartnerPageDTO queryPartnerPage(XgjPartnerQueryRequest request);

    /**
     * 查询支行列表
     * @return 新管家支行列表
     */
    List<XgjBranchBankDTO> queryBranchBankList(XgjBankQueryRequest request);
}
