package com.jeesharp.business.modules.setting.service;

import com.jeesharp.business.modules.setting.entity.PrivacyPolicy;
import com.jeesharp.business.modules.setting.vo.PrivacyPolicyQueryVO;
import com.jeesharp.framework.mybatis.core.service.BaseInterface;

/**
 * 隐私政策领域服务接口。
 *
 * @author jeesharp
 * @since 2026-05-20
 */
public interface PrivacyPolicyService extends BaseInterface<PrivacyPolicy, PrivacyPolicyQueryVO> {

    /**
     * 按文档编号查询启用中的记录（移动端展示）。
     *
     * @param docCode 文档编号
     * @return 实体，不存在或未启用时返回 null
     */
    PrivacyPolicy getEnabledByDocCode(String docCode);

    /**
     * 统计同编号下是否存在其它记录（唯一校验）。
     *
     * @param docCode   文档编号
     * @param excludeId 排除主键，新增时传 null
     * @return 记录数
     */
    long countByDocCodeExcludeId(String docCode, String excludeId);
/**
     * 更新状态。
     *
     * @param id     主键
     * @param status 状态值
     */
    void updateStatus(String id, Integer status);
}
