package com.cool.store.service.privatesphere;

import com.cool.store.request.privatesphere.PrivateSphereBindRequest;
import com.cool.store.request.privatesphere.PrivateSphereSnRequest;
import com.cool.store.vo.privatesphere.PrivateSphereVO;

/**
 * <p>
 * 私域二维码服务
 * </p>
 *
 * @author wangff
 * @since 2026/4/1
 */
public interface PrivateSphereQrService {

    /**
     * 生成二维码并上传到OSS
     * 相同sn优先从redis中获取二维码图片路径
     *
     * @param request 设备sn
     * @return 二维码图片的OSS路径
     */
    PrivateSphereVO generateQrCode(PrivateSphereSnRequest request);

    /**
     * 门店绑定设备sn
     * @param request 门店设备sn绑定
     * @return 是否成功
     */
    Boolean bindStoreSn(PrivateSphereBindRequest request);

    /**
     * 根据设备sn获取门店私域二维码
     * @param request 设备sn
     * @return 私域二维码
     */
    PrivateSphereVO getPrivateSphereQr(PrivateSphereSnRequest request);
}
