package com.ruoyi.asset.service;

import com.ruoyi.asset.domain.RfidBindingContext;
import com.ruoyi.asset.domain.RfidBindingResult;

/**
 * RFID绑定公共服务
 *
 * @author Yangk
 */
public interface IRfidBindingService
{
    /**
     * 按资产编码和EPC绑定资产与RFID标签
     *
     * @param assetCode 资产编码
     * @param epcCode EPC编码
     * @param context 操作上下文
     * @return 绑定前后的资产和标签快照
     */
    public RfidBindingResult bind(String assetCode, String epcCode, RfidBindingContext context);

    /**
     * 按标签ID解绑资产与RFID标签
     *
     * @param tagId 标签ID
     * @param context 操作上下文
     * @return 解绑前后的资产和标签快照
     */
    public RfidBindingResult unbind(Long tagId, RfidBindingContext context);
}
