using System.Collections.Generic;
using System.Threading.Tasks;
using Repository.Models;

namespace Repository.BackendRepository.Interface
{
    public interface INiagaraDataSynchronizeRepository : IBackendRepository
    {
        /// <summary>
        /// 同步N4至資料表 import_niagara_tag
        /// </summary>
        /// <param name="ds"></param>
        /// <param name="building"></param>
        /// <returns></returns>
        Task InsertNiagaraTagList(List<Device_value> ds, string building);
        /// <summary>
        /// 同步N4至資料表 import_niagara_item
        /// </summary>
        /// <param name="ds"></param>
        /// <param name="building"></param>
        /// <returns></returns>
        Task InsertItemFromNiagara(List<Device_value> ds, string building);
        /// <summary>
        /// 比對 device
        /// </summary>
        /// <returns></returns>
        Task DeviceComparison();
        /// <summary>
        /// 比對 device_item
        /// </summary>
        /// <returns></returns>
        Task DeviceItemComparison();
        /// <summary>
        /// 新增資料至 buildingMenu
        /// </summary>
        /// <returns></returns>
        Task InsertBuildingMenu();
        /// <summary>
        /// 新增資料至 subSystemFloor
        /// </summary>
        /// <returns></returns>
        Task InsertSubSystemFloor();
    }
}