package org.jeecg.modules.system.app.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.system.app.dto.AppSiteDTO;
import org.jeecg.modules.system.app.dto.AppSitePageDTO;
import org.jeecg.modules.system.app.dto.EditSitePayInfoDTO;
import org.jeecg.modules.system.app.entity.AppSite;

/**
 * @Description: 商户表
 * @Author: jeecg-boot
 * @Date: 2025-07-03
 * @Version: V1.0
 */
public interface IAppSiteService extends IService<AppSite> {

    /**
     *商户新增
     * @param appSiteDTO
     * @return
     */
    Boolean saveSite(AppSiteDTO appSiteDTO);
    /**
     * 商户修改
     * @param appSiteDTO
     * @return
     */
    Boolean editSite(AppSiteDTO appSiteDTO);
    /**
     * 通过id查询商户
     * @param id
     * @return
     */
    AppSiteDTO querySiteById(String id);
    /**
     * 通过商户编码查询商户
     * @param orgCode
     * @return
     */
    AppSiteDTO querySiteByOrgCode(String orgCode);
    /**
     * 删除商户
     * @param id
     * @return
     */
    Boolean deleteSiteById(String id);

    IPage<AppSiteDTO> querySitePage(AppSitePageDTO dto);

    AppSiteDTO queryByTenantId(String tenantId);

    /**
     * <p>根据部门信息ID修改支付信息</p>
     * @author SheepHy
     * @param editSitePayInfoDTO，参数为类则包含{@link EditSitePayInfoDTO}
     * @return 返回值描述，如无返回值则为void 返回值为类则包含{@link Boolean}
     *
     */
    Boolean editSitePayInfo(EditSitePayInfoDTO editSitePayInfoDTO);

    /**
     * <p>根据部门信息ID修改支付信息</p>
     * @author SheepHy
     * @param id，参数为类则包含
     * @return 返回值描述，如无返回值则为void 返回值为类则包含{@link EditSitePayInfoDTO}
     *
     */
    EditSitePayInfoDTO querySitePayInfoById(String id);
}
