package com.seer.teach.iot.convert;

import com.seer.teach.common.resp.AddressIdResp;
import com.seer.teach.iot.api.req.DeviceReqDTO;
import com.seer.teach.iot.api.resp.DeviceRespDTO;
import com.seer.teach.iot.module.entity.AppKeySecretsEntity;
import com.seer.teach.iot.module.entity.DeviceModelsEntity;
import com.seer.teach.iot.module.entity.DevicesEntity;
import com.seer.teach.iot.module.entity.IotVersionsEntity;
import org.mapstruct.MapMapping;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;

/**
 * 设备数据Conver接口
 * <p>
 * 设备数据Conver接口
 * </p>
 *
 * @author Captain
 * @version 1.0
 * @since 2025-07-16 10:52
 */
@Mapper
public interface DevicesConvert {

    DevicesConvert INSTANCE = Mappers.getMapper(DevicesConvert.class);

    DeviceRespDTO toDeviceDTO(DevicesEntity one);

    DevicesEntity toDeviceEntity(DeviceReqDTO reqDTO);

    DevicesEntity toDeviceEntity(String unionId, String ip, Integer cityId, Integer modelId, Integer appId);

    DevicesEntity toDeviceEntity(String unionId, Integer appId, String ip, Integer modelId, Integer versionId, Integer cityId, Integer status);

}