package cc.iotkit.manager.service;


import cc.iotkit.common.api.PageRequest;
import cc.iotkit.common.api.Paging;
import cc.iotkit.manager.dto.vo.category.vo.*;
import cc.iotkit.model.iccid.DIccidRecordDO;
import cn.hutool.db.PageResult;

import javax.validation.Valid;
import java.util.List;

/**
 * 物联网卡 Service 接口
 *
 * @author 芋道源码
 */
public interface DIccidRecordService {

    /**
     * 创建物联网卡
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    String createDIccidRecord(@Valid DIccidRecordSaveReqVO createReqVO);

    /**
     * 更新物联网卡
     *
     * @param updateReqVO 更新信息
     */
    void updateDIccidRecord(@Valid DIccidRecordSaveReqVO updateReqVO);

    /**
     * 删除物联网卡
     *
     * @param id 编号
     */
    void deleteDIccidRecord(Long id);

    /**
     * 获得物联网卡
     *
     * @param id 编号
     * @return 物联网卡
     */
    DIccidRecordDO getDIccidRecord(Long id);

    /**
     * 获得物联网卡分页
     *
     * @param pageReqVO 分页查询
     * @return 物联网卡分页
     */
    Paging<DIccidRecordRespVO> getDIccidRecordPage(PageRequest<DIccidRecordPageReqVO> pageReqVO);

    String createList(DIccidRecordListSaveReqVO createReqVO, Integer num);

}