using System;
using System.Collections.Generic;
using Shared.SimpleControl;
namespace Shared
{
///
/// BaseRequestObj
///
[System.Serializable]
public class BaseRequestObj
{
public string RequestVersion = MainPage.RequestVersion;
public string RequestSource = MainPage.RequestSource;
public string LoginAccessToken;
}
//[System.Serializable]
//public class BaseNoTokenObj
//{
// public string RequestVersion = MainPage.RequestVersion;
// public string RequestSource = MainPage.RequestSource;
//}
[System.Serializable]
public class PageSettingObj
{
public int Page = 1;
public int PageSize = 100;
}
[System.Serializable]
public class BaseReqDtoObj
{
public PageSettingObj PageSetting = new PageSettingObj();
public string LoginAccessToken;
}
[System.Serializable]
public class BaseAccountCtrlObj: BaseRequestObj
{
///
/// 是否是子账号进行操作
///
public bool IsOtherAccountCtrl = MainPage.IsAdministrator;
///
/// 住宅ID
///
public string HomeId;
}
#region 项目(住宅)
#region 2、备份
#region 1.21添加项目(住宅)[App(网关)手动备份]备注文件夹
///
/// 添加项目备份文件夹
///
[System.Serializable]
public class AddHomeAppGatewayNameObj : BaseAccountCtrlObj
{
///
/// 备份名 -->键名 : BackupName
///
public string BackupName;
///
/// 网关的唯一Id(当ManualBackupType=2时,此值不能为空!
///
public string GatewayUniqueId;
///
/// ManualBackupType 手动备份类型(0:App手动备份,2:网关手动备份,4:公共备份) 默认值: 0
///
public int ManualBackupType = 0;
}
#endregion
#region 1.22 上传[项目(住宅(App(网关)手动备份]子文件
///
/// 上传手动备份
///
[System.Serializable]
public class UploadHomeAppGatewaySubFilesObj : BaseAccountCtrlObj
{
///
/// 备份名的Id
///
public string BackupClassId;
///
/// ManualBackupType 手动备份类型(0:App手动备份,2:网关手动备份,4:公共备份) 默认值: 0
///
public int ManualBackupType = 0;
///
/// 备份文件列表
///
public List UploadSubFileLists = new List ();
}
///
/// 文件数据
///
public class FileInfoData
{
///
/// BackupFileName
///
public string BackupFileName = string.Empty;
///
/// BackupFileContent
///
public byte [] BackupFileContent;
}
[System.Serializable]
public class UploadSubFileListsObj
{
public string BackupFileName;
public byte[] BackupFileContent;
}
#endregion
#region 1.23 删除App备份
///
/// 删除App备份
///
[System.Serializable]
public class DeleteAppBackupFileObj : BaseAccountCtrlObj
{
///
/// 备份名的Id
///
public string BackupClassId;
///
/// 需要删除文件名的数组 (注意如果提交的文件名的数组中并不是你, 或者不存在的,则不执行删除)
///
public List DeleteFileNameLists;
}
#endregion
#region 1.24 获取住宅备份数据_分页
///
/// 获取住宅备份数据_分页
///
[System.Serializable]
public class GetHomeDataBackupPaggerObj : BaseAccountCtrlObj
{
public string BackupType = "0";
public string GatewayUniqueId;
public PageSettingObj PageSetting = new PageSettingObj ();
}
#endregion
#region 1.25 获取备份文件不带数据_分页
///
/// 获取备份文件不带数据_分页
///
[System.Serializable]
public class GetHomeDataBackupUploadListPaggerObj : BaseAccountCtrlObj
{
public bool IsGatewayAutoBackup = false;
public string GatewayUniqueId;
public string BackupClassId;
public PageSettingObj PageSetting = new PageSettingObj ();
}
#endregion
#region 1.26 下载某一个备份数据文件
///
/// 下载某一个备份数据文件
///
[System.Serializable]
public class DownloadSomeDataBackupObj : BaseAccountCtrlObj
{
///
/// 下载的文件名称
///
public string BackupFileName;
///
/// BackupClassId
///
public string BackupClassId = "";
///
/// 当前获取是否为网关自动备份
///
public bool IsGatewayAutoBackup = false;
///
/// ZigbeeUniqueId 网关的唯一Id 当IsGatewayBackup= true时,此参数必须提供
///
public string GatewayUniqueId = null;
}
#endregion
#region 1.27 删除项目 (住宅)各种备份文件夹
///
/// 删除项目 (住宅)各种备份文件夹
///
[System.Serializable]
public class DelHomeAppGatewayNameObj : BaseAccountCtrlObj
{
///
/// 备注名主键
///
public string BackupClassId;
}
#endregion
#region 1.28 更新项目(住宅)[App(网关)手动备份]备注名
///
/// 更新项目(住宅)[App(网关)手动备份]备注名
///
[System.Serializable]
public class UpdateHomeAppGatewayNameObj : BaseAccountCtrlObj
{
///
/// 更新备注名
///
public string BackupName;
///
/// 备注名主键
///
public string BackupClassId;
}
#endregion
#region 1.29 项目 (住宅)下App自动备份
///
/// 项目 (住宅)下App自动备份
///
[System.Serializable]
public class HomeAppAutoDataBackupObj : BaseAccountCtrlObj
{
}
#endregion
#endregion
#region 6、绑定
#region 1.61 绑定网关到项目(住宅)
///
/// 绑定网关到项目(住宅)
///
[System.Serializable]
public class BindGatewayToHomeObj : BaseAccountCtrlObj
{
///
/// 网关ID列表
///
public List BindGateways = new List ();
}
#endregion
#region 1.62 解绑定网关到项目(住宅)
///
/// 绑定网关到项目(住宅)
///
[System.Serializable]
public class ReleaseGatewayToHomeObj : BaseAccountCtrlObj
{
///
/// 网关ID列表
///
public List BindGateways = new List ();
}
#endregion
#region 1.63 获得某个帐号所有已绑定的网关分页
///
/// 获得某个帐号所有已绑定的网关分页
///
[System.Serializable]
public class GetAllBindGatewarysPaggerObj : BaseNoTokenObj
{
///
/// 项目(住宅)类型(0:Zigbee 1:Buspro、3:Knx
///
public int HomeType = 1;
public BaseReqDtoObj ReqDto = new BaseReqDtoObj();
}
#endregion
#region 1.64 获取某个住宅的网关分页
///
/// 获取某个住宅的网关分页
///
[System.Serializable]
public class GetSingleHomeGatewayPaggerObj : BaseNoTokenObj
{
///
/// 是否是子账号进行操作
///
public bool IsOtherAccountCtrl = MainPage.IsAdministrator;
public GetSingleHomeReqDtoObj ReqDto = new GetSingleHomeReqDtoObj() ;
}
[System.Serializable]
public class GetSingleHomeReqDtoObj : BaseRequestObj
{
///
/// 住宅ID
///
public string HomeId;
///
/// 搜索网关唯一标识 默认为null
///
public string GatewayUniqueId;
public PageSettingObj PageSetting = new PageSettingObj ();
}
#endregion
#region 1.65 UpdateMac
///
/// UpdateMac 更新Mac(印度)
///
[System.Serializable]
public class UpdateMacObj : BaseAccountCtrlObj
{
///
/// 住宅Id
///
public string HomeId;
public string OldMac;
public string NewMac;
}
#endregion
#region 1.66 BindMac
///
/// /App/BindMac 绑定Mac(印度版)
///
[System.Serializable]
public class BindMacObj : BaseAccountCtrlObj
{
/////
///// 住宅Id
/////
//public string HomeId;
public string MAC;
}
#endregion
#endregion
#region 8、项目(住宅)
#region AddHome 1.81项目(住宅) - 1、添加项目(住宅)
///
/// 添加项目(住宅)
///
[System.Serializable]
public class AddHomeObj : BaseRequestObj
{
///
/// 住宅区域名称
///
public string Name;
///
/// 项目(住宅)类型(0:Zigbee 1:Buspro、3:Knx
///
public int HomeType = 1;
}
#endregion
#region DelHome 1.82删除项目(住宅)
///
/// 删除项目(住宅)
///
[System.Serializable]
public class DelHomeObj : BaseRequestObj
{
///
/// 项目(住宅)Id -->键名 : HomeId
///
public string HomeId;
}
#endregion
#region EditHome 1.83编辑项目(住宅)
///
/// 删除项目(住宅)
///
[System.Serializable]
public class EditHomeObj : BaseAccountCtrlObj
{
/////
///// 项目(住宅)Id -->键名 : HomeId
/////
//public string HomeId;
///
/// 住宅区域名称
///
public string Name;
///
/// 项目(住宅)类型(0:Zigbee 1:Buspro、3:Knx
///
public int HomeType = 1;
}
#endregion
#region AddHome 1.84 获取项目 (住宅)分页
[System.Serializable]
public class GetHomePagerReqDtoObj: BaseReqDtoObj
{
public string Name;
}
///
/// 获取项目 (住宅)分页
///
[System.Serializable]
public class GetHomePagerObj : BaseNoTokenObj
{
///
/// 项目(住宅)类型(0:Zigbee 1:Buspro、3:Knx
///
public int HomeType = 1;
public GetHomePagerReqDtoObj ReqDto = new GetHomePagerReqDtoObj ();
}
#endregion
#region 1.85 获取控制分享项目 (住宅)请求信息
///
/// 获取控制分享项目 (住宅)请求信息
///
[System.Serializable]
public class GetSharedHomeApiControlObj : BaseRequestObj
{
///
/// 分享者Id -->键名 : MainAccountId
///
public string MainAccountId;
///
/// 分享者住宅Id -->键名 : SharedHid
///
public string SharedHid;
}
#endregion
#endregion
#region ZigbeeUsers
#region 2.11 使用帐号密码登录
/////
///// 使用帐号密码登录
/////
//[System.Serializable]
//public class LoginObj : BaseNoTokenObj
//{
// public string Account;
// public string Password;
// public int Company;
//}
#endregion
///Zigbee用户模块
#region UpdatePassword 2.33修改密码 功能描述:修改当前账号的密码
///
/// Need Authorization
/// 响应状态码
//(1)Success 则调用此接口成功
//(2)NewPasswordAndOldPasswordEqual 原密码和新密码相同
//(3)OldPwdNoYes 原密码错误
//(4)Fail 操作失败
//(5)AccountNoExists 用户不存在
///
[System.Serializable]
public class UpdatePasswordObj:BaseNoTokenObj
{
public string OldPassword;// 原密码 string 是
public string NewPassword;// 新密码 string 是
}
#region 2.314 检测帐号是否存在
///
/// 检测帐号是否存在
///
[System.Serializable]
public class DetectionAccountObj : BaseNoTokenObj
{
public string Account;
}
#endregion
#region 2.320 注册 功能描述:用户手机和邮箱注册
[System.Serializable]
public class YdRegisterAccountObj: BaseNoTokenObj
{
public string Account;
public string Password;
public string Language;//语言 (固定为:Chinese和English) string 是
public string Contact;
public int Company;
}
#endregion
#region YdForgetPasswordObj 2.321 功能描述:忘记密码邮件形式
[System.Serializable]
public class YdForgetPasswordObj:BaseNoTokenObj
{
public string Account;// 账号 string 是
public int Company;
}
#endregion
#region BindSubAccount 2.322 功能描述:绑定子账号到项目
[System.Serializable]
public class BindSubAccountObj : BaseNoTokenObj
{
public string SubAccount;//
///
/// 住宅Id
///
public string HouseDistributedMark;
///
/// 是否允许子帐号远程控制
///
public bool IsAllowRemoteCtrl = true;
}
#endregion
#region DeletedSubAccount 2.323 功能描述:解除子账号和住宅的绑定
[System.Serializable]
public class DeletedSubAccountObj : BaseNoTokenObj
{
public string SubAccount;//
///
/// 住宅Id
///
public string HouseDistributedMark;
}
#endregion
#region GetSubAccountByDistributedMark 2.324 功能描述:获取项目(住宅)下面的子账号
[System.Serializable]
public class GetSubAccountByDistributedMarkObj : BaseNoTokenObj
{
///
/// 住宅Id
///
public string DistributedMark;
}
#endregion
#endregion
#region Alexa设备管理 部分
#region UploadDevices 1.31上传设备信息 功能描述:上传设备信息。
/////
///// Need Authorizatin
/////
//[System.Serializable]
//public class UploadDevicesObj:AlexaDevice
//{
//}
public class AlexaDeviceObj:BaseNoTokenObj
{
public string DeviceName;// 设备名 string 是
public string DeviceType;// 设别类型, 固定为
public int SubnetID;// 子网号 int 是
public int DeviceID;// 设备号 int 是
public int LoopID;// 回路号 int 是
public string MAC;// 需要绑定的一端口MAC码 string 是
public string RegionID;// 住宅区域编号 Int 是
}
#endregion
#endregion
//********************************旧****************************************
//#region ON软件读取指定区域网关列表,方法名:GatewayListON 参数:RegionID 类型:int
/////
///// Need Authorzation
/////
//[Serializable]
//public class GatewayListONObj
//{
// public int RegionID;
//}
//#endregion
#region ON软件添加网关,方法名:GatewayByRegionListToON
///
/// Need Authorization
///
[Serializable]
public class GatewayByRegionListToONObj
{
//参数: MAC 类型:string RegionID 类型:int
public string MAC;
public string RegionID;
}
#endregion
#region ON软件接触网关绑定,方法名:DelGatewayByMac
///
/// Need authorization
///
[Serializable]
public class DelGatewayByMacObj
{
//参数: MAC 类型:string
public string MAC;
}
#endregion
//#region Login 登录 功能描述:登录后获取访问令牌。
//[System.Serializable]
//public class LoginObj
//{
// public string Account;
// public string Password;
// public int Company;
//}
//#endregion
#region IsExistingAccount 验证账号是否被使用 功能描述:验证手机和邮箱是否被注册
[System.Serializable]
public class IsExistingAccountObj
{
public string Account;
}
#endregion
//#region SignIn 注册 功能描述:用户手机和邮箱注册
//[System.Serializable]
//public class SignInObj
//{
// public string Account;
// public string Password;
// public string Language;//语言 (固定为:Chinese和English) string 是
// public string Contact;
// public int Company;
//}
//#endregion
#region SignPhone 功能描述:发送手机验证码
[System.Serializable]
public class SignPhoneObj
{
public string Phone;
public int Company;// 短信模板编号 int 是
}
#endregion
#region ValidateSmsCode 功能描述:验证手机验证码
[System.Serializable]
public class ValidateSmsCodeObj
{
public string Phone;// 手机号 string 是
public string Code;// 验证码 string 是
}
#endregion
//#region ForgetPassword 功能描述:根据账号类型发送验证方式(邮箱账号发送邮件,手机账号发送短信验证码)
//[System.Serializable]
//public class ForgetPasswordObj
//{
// public string Account;// 账号 string 是
// public int Company;
//}
//#endregion
#region ForgetPasswordAction 功能描述:忘记密码,手机号找回密码方法
[System.Serializable]
public class ForgetPasswordActionObj
{
public string Account;// 账号 string 是
public string Password;// 密码 string 是
}
#endregion
//#region UpdatePassword 1.8修改密码 功能描述:修改当前账号的密码
/////
///// Need Authorization
/////
//[System.Serializable]
//public class UpdatePasswordObj
//{
// public string OldPassword;// 原密码 string 是
// public string Password;// 新密码 string 是
//}
#endregion
#region UpdateUserInformation 1.9更新或设置用户基本信息 功能描述:修改或设置当前登录的用户基本信息
///
/// Need Authorization
///
[System.Serializable]
public class UpdateUserInformationObj
{
public string Country;// 国家 string 是
public string City;// 城市 string 是
public string Company;// 公司 string 是
public string Contact;// 联系人 string 是
}
#endregion
#region BindPhone 1.10更新或绑定手机号 功能描述:修改或设置当前登录的用户基本信息
///
/// Need Authorization
///
[System.Serializable]
public class BindPhoneObj
{
public string Phone;
}
#endregion
#region UpdateUserLanguage 1.11修改用户语言 功能描述:修改用户语言
///
/// Need Authorization
///
[System.Serializable]
public class UpdateUserLanguageObj
{
public string Language;
}
#endregion
#region GetSubAccountList 1.12子账号以及调试账号列表 功能描述:查看当前账号下面所有的子账号和调试账号
///
/// Need Authorization
///
[System.Serializable]
public class GetSubAccountListObj
{
}
#endregion
//#region SignSubAccount 1.13注册子账号 功能描述:当前登录账号注册子账号
/////
///// Need Authorzation
/////
//[System.Serializable]
//public class SignSubAccountObj
//{
// public string Email;// 账号 string 是
// public string Password;// 密码 string 是
// public string Remark;// 备注 string 是
//}
//#endregion
#region EditSubAccount 1.14编辑子账号 功能描述:编辑子账号的备注和密码
///
/// Need Authorization
///
[System.Serializable]
public class EditSubAccountObj
{
public int Id;
public string Email;// 账号 string 是
public string Password;// 密码 string 是
public string Remark;// 备注 string 是
}
#endregion
//#region RemoveSubAccount 1.15删除子账号 功能描述:删除子账号
/////
///// Need Authorization
/////
//[System.Serializable]
//public class RemoveSubAccountObj
//{
// public string Email;
//}
//#endregion
#region DisableDebug 1.16禁用调试账号 功能描述:禁用当前账号的调试账号
///
/// Need Authorization
///
[System.Serializable]
public class DisableDebugObj
{
public string Account;
}
#endregion
#region EnableDebug 1.17启用调试账号 功能描述:启用当前账号的调试账号
///
/// Need Authorization
///
[System.Serializable]
public class EnableDebugObj
{
public string Account;
}
#endregion
#region AddMessage 1.18添加一个报警/提示消息 功能描述:添加一个用于推送得报警/提示的消息
///
/// Need Authorization
///
[System.Serializable]
public class AddMessageObj
{
public int SubnetID;// 子网号 int 是
public int DeviceID;// 设备号 int 是
public int SwitchNum;// 消息号 int 是
public int MessageMode;// 消息类型(报警为0,提示为1) int 是
public byte [] AlarmEmail;// 推送模式(邮件为1,APP为2) byte[] 是
public string DetailMessage;// 消息内容 stirng 是
public string MAC;// 一端口MAC string 是
}
#endregion
#region EduitMessage 1.19编辑一个报警/提示消息 功能描述:编辑一个用于推送得报警/提示的消息
///
/// Need Authorization
///
[System.Serializable]
public class EduitMessageObj
{
public int Id;
public int SubnetID;// 子网号 int 是
public int DeviceID;// 设备号 int 是
public int SwitchNum;// 消息号 int 是
public int MessageMode;// 消息类型(报警为0,提示为1) int 是
public byte [] AlarmEmail;// 推送模式(邮件为1,APP为2) byte[] 是
public string DetailMessage;// 消息内容 stirng 是
public string MAC;// 一端口MAC string 是
}
#endregion
#region MessageListFromUser 1.20用户的消息列表 功能描述:查看当前用户的消息列表
///
/// Need Authorization
///
[System.Serializable]
public class MessageListFromUserObj
{
}
#endregion
//#region 关于区域的方法
//#region AddHome 1.23创建一个住宅区域 功能描述:创建一个用户住宅区域
/////
///// Need Authorization
/////
//[System.Serializable]
//public class AddHomeObj: BaseRequestObj
//{
// ///
// /// 住宅区域名称
// ///
// public string Name;
// public string LoginAccessToken;
//}
[System.Serializable]
public class AddHomeAndGatewayByONObj
{
///
/// 住宅区域名称
///
public string Region;
///
/// The mac.
///
public string MAC;
}
#endregion
//#region HomeList 1.24获取用户的住宅区域列表 功能描述:获取用户所有住宅区域的列表
/////
///// Need Authorization
/////
//[System.Serializable]
//public class HomeListObj
//{
//}
//#endregion
#region EditHome 1.25编辑住宅区域名称 功能描述:编辑住宅区域名称
/////
///// Need Authorization
/////
//[System.Serializable]
//public class EditHomeObj
//{
// public string Name;// 住宅区域名称 string 是
// public string Id;// 住宅区域编号 Int 是
//}
//#endregion
//#region EditMACByON 修改住宅绑定的mac
//[System.Serializable]
//public class EditMACByONObj
//{
// ///
// /// 修改的新的mac
// ///
// public string MAC;
// ///
// /// mac 的id
// ///
// public int Id;
//}
//[System.Serializable]
//public class EditMACByHomeId
//{
// ///
// /// 修改的新的mac
// ///
// public string MAC;
// ///
// /// Home 的id
// ///
// public string RegionID;
// public bool IsReBind;
//}
////#endregion
//#region DeleteHome 1.26删除整个住宅区域 功能描述:删除整个住宅区域
/////
///// Need Authorzation
/////
//[System.Serializable]
//public class DeleteHomeObj
//{
// public string Id;// 住宅区域编号 int 是
//}
//#endregion
#region UploadDevices 1.30上传网关设备 功能描述:上传网关信息
///
/// Need Authorization
///
[System.Serializable]
public class UploadDevicesObjGateway
{
public string MAC;// 一端口的MAC码 string 是
public string Password;// 一端口的远程密码 string 是
public string UserName;// 一端口用户名 string 是
public string ProjectName;// 一端口工程名 string 是
public string RegionID;// 住宅区域编号 int 是
}
#endregion
//#region UploadDevices 1.31上传设备信息 功能描述:上传设备信息。
/////
///// Need Authorizatin
/////
//[System.Serializable]
//public class UploadDevicesObj
//{
// public AlexaDevice Device = new AlexaDevice();
//}
//public class AlexaDevice
//{
// public string DeviceName;// 设备名 string 是
// public string DeviceType;// 设别类型, 固定为
// public int SubnetID;// 子网号 int 是
// public int DeviceID;// 设备号 int 是
// public int LoopID;// 回路号 int 是
// public string MAC;// 需要绑定的一端口MAC码 string 是
// public string RegionID;// 住宅区域编号 Int 是
//}
//#endregion
#region GatewayList 1.32读取用户所有网关列表 功能描述:读取当前用户的所有一端口
/////
///// Need Authorization
/////
//[System.Serializable]
//public class GatewayListObj
//{
//}
[System.Serializable]
public class GatewayMACObj
{
public string MAC;// string
public int Id;// int
}
[System.Serializable]
public class GatewayObj : GatewayMACObj
{
public string Password;// string
public string ProjectName;// string
public string UserName;// string
public string Region;// string
}
#endregion
#region GatewayByRegionList 1.33读取用户指定区域网关列表 功能描述:读取当前用户指定区域的所有一端口
///
/// Need Authorization
///
[System.Serializable]
public class GatewayByRegionListObj
{
public string RegionID;// 住宅区域编号 int 是
}
#endregion
#region DeviceList 1.34读取设备信息列表 功能描述:读取当前用户设备列表
///
/// Need Authorization
///
[System.Serializable]
public class DeviceListObj
{
}
#endregion
///
/// Need Autorization
///
[Serializable]
public class DelGatewayObj
{
public int Id;// 网关编号 int 是
}
///
/// Need Autorization
///
[Serializable]
public class EditGatewayMACByONObj
{
public int Id;
public string MAC;
}
#endregion
#region 备份恢复数据
/////
///// 添加备份目录
/////
//[Serializable]
//public class AddFolderObj
//{
// ///
// /// 区域ID
// ///
// public string LevelID ;
// ///
// /// 备份目录名称
// ///
// public string Name;
//}
/////
///// 获取区域下的备份列表目录
/////
//[Serializable]
//public class GetUserFolderObj
//{
// ///
// /// 区域ID
// ///
// public string LevelID;
//}
///
/// 备份文件夹里面的文件目录
///
[Serializable]
public class UserBackupListObj
{
public int LevelID;
}
///
/// 获取备份文件数据
/// return 二进制流数据
///
[Serializable]
public class BackupDetailObj
{
public int Id;
}
/////
///// 上传备份文件数据
/////
//[Serializable]
//public class AddUserBackupObj
//{
// ///
// /// wenjian mingcheng
// ///
// public string Name;
// ///
// /// 文件数据
// ///
// public byte [] DetailByte;
// ///
// /// 文件夹 ID
// ///
// public int LevelID;
//}
/////
///// Delete backup data.
/////
//[Serializable]
//public class DeleteFolderDataObj
//{
// public int Id;
//}
///
/// 不是在本区域的登录响应,需要重定向到请求得到的域名下--RegionServer
///
[Serializable]
public class UserLoginLocalRegionRes
{
public string RegionName;
///
/// 请重定向到此域名下对应接口请求
///
public string RegionServer;
}
#endregion
}