package com.czg.order.service;

import com.czg.order.dto.ShopMerchantDTO;
import com.czg.order.entity.ShopDirectMerchant;
import com.czg.order.entity.ShopMerchant;
import com.czg.pay.NativeMerchantDTO;
import com.mybatisflex.core.service.IService;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;

/**
 * 第三方商户进件 服务层。
 *
 * @author Administrator
 * @since 2025-02-11
 */
public interface ShopMerchantService extends IService<ShopMerchant> {

    ShopMerchantDTO detail(Long shopId);

    /**
     * 进件结果保存/ 支付参数修改
     */
    Boolean editEntry(ShopMerchantDTO shopMerchantParam, boolean isUp);


    /**
     * 已绑定的支付
     * 更新商户支付参数
     */
    void upMerchant(@NotBlank Long relatedId, @NotNull NativeMerchantDTO nativeMerchantDTO);

    ShopMerchant getByShopId(Long shopId);


    ShopDirectMerchant getMainMerchant(Long shopId);
}
