简体中文
简体中文
English
联系我们
注册
登录

项目管理

更新时间:2022-02-17 05:21:57下载pdf

概念介绍

  • 项目为挂载在某一账号下的可独立操作的单元,空间和设备等必须要挂载在某一项目下才可进行操作。
  • 一个账号下可以有不定数量的项目,不同套餐的账号可配置不同数量的项目,新用户在注册登录后默认是没有项目的,需进行项目的创建流程后才可进行项目维度的相关操作。
  • 项目类型:
    • 室内项目:在建筑平面图上,对设备进行可视化管理;推荐简单的使用场景,项目地址可以简单用文案描述;适用于办公楼,商场等项目。
    • 户外项目:通过GIS地图精准定位设备,推荐空间较大,设备分散的使用场景,项目地址为国家+一级行政区作为划分;项目下级空间通过在地图上标记点位的形式展示;户外项目类型仅为高级版品牌商开通的账号才有创建权限;适用于户外路灯,充电桩等项目。

功能介绍

项目管理部分包括获取项目配置、获取项目列表、创建项目、获取项目信息、更新项目信息和删除项目等API。其中获取项目配置、获取项目列表和创建项目功能由 TuyaLightingProjectManager 类提供,创建户外项目需要行政区信息,其由 TuyaLightingRegionManager 来提供;获取项目信息、更新项目信息和删除项目功能由 TuyaLightingProject 类提供;项目相关信息由 TuyaLightingProjectModel 类提供。

配置项目

获取批量项目配置

接口说明

    - (void)getProjectConfigListWithSuccess:(void(^)(NSArray<TuyaLightingProjectConfigModel *> *configList))success
                                    failure:(void(^)(NSError *error))failure;

参数说明

参数 说明
success 成功回调
failure 失败回调

示例代码

Objc:

    [[TuyaLightingProjectManager new] getProjectConfigListWithSuccess:^(NSArray <TuyaLightingProjectConfigModel *> *configList) {
        NSLog(@"get success");
    } failure:^(NSError *error) {
        NSLog(@"get failure: %@", error);
    }];

获取项目列表

接口说明

    - (void)getProjectListWithSuccess:(nullable void(^)(NSArray <TuyaLightingProjectModel *> *projectList))success
                              failure:(nullable void(^)(NSError *error))failure;

参数说明

参数 说明
success 成功回调
failure 失败回调

示例代码

Objc:

    [[TuyaLightingProjectManager new] getProjectListWithSuccess:^(NSArray <TuyaLightingProjectModel *> *projectList) {
        NSLog(@"get success");
    } failure:^(NSError *error) {
        NSLog(@"get failure: %@", error);
    }];

创建项目

接口说明

    - (void)createProjectWithProjectType:(TuyaLightingProjectType)projectType
                             projectName:(NSString *)projectName
                              leaderName:(NSString *)leaderName
                            leaderMobile:(NSString *)leaderMobile
                           detailAddress:(NSString *)detailAddress
                        regionLocationId:(NSString *)regionLocationId
                                 success:(void(^)(id result))success
                                 failure:(void(^)(NSError *error))failure;

参数说明

参数 说明
projectType 项目类型,必填
projectName 项目名称,必填
leaderName 项目负责人姓名,必填
leaderMobile 项目负责人电话,必填
detailAddress 详细位置,必填
regionLocationId 项目行政区ID,由国家码和一级行政区码组合,以 , 拼接,区码通过 TuyaLightingRegionManager 获取,可选
success 成功回调
failure 失败回调

示例代码

Objc:

    [[TuyaLightingProjectManager new] createProjectWithProjectType:TuyaLightingProjectTypeIndoor
                                                      projectName:@"your projectName"
                                                       leaderName:@"your leaderName"
                                                     leaderMobile:@"your leaderMobile"
                                                    detailAddress:@"your detailAddress"
                                                 regionLocationId:nil
                                                          success:^(id result) {
                                                          NSLog(@"create success");
                                                        } failure:^(NSError *error) {
                                                          NSLog(@"create failure: %@", error);
                                                        }];

获取项目信息

接口说明

    - (void)getProjectInfoWithSuccess:(nullable void(^)(id result))success
                              failure:(nullable void(^)(NSError *error))failure;

参数说明

参数 说明
success 成功回调
failure 失败回调

示例代码

Objc:

    TuyaLightingProject *project = [TuyaLightingProject projectWithProjectId:123];
    [project getProjectInfoWithSuccess:^(id result) {
        NSLog(@"get success");
    } failure:^(NSError *error) {
         NSLog(@"get failure: %@", error);
    }];

获取项目详情

项目详情包括mesh列表、项目信息、收藏区域、网关列表、区域列表。

接口说明

    - (void)getProjectDetailWithSuccess:(nullable void(^)(void))success
                                failure:(nullable void(^)(NSError *error))failure;

参数说明

参数 说明
success 成功回调
failure 失败回调

示例代码

Objc:

    TuyaLightingProject *project = [TuyaLightingProject projectWithProjectId:123];
    [project getProjectDetailWithSuccess:^(void) {
        NSLog(@"get success");
    } failure:^(NSError *error) {
         NSLog(@"get failure: %@", error);
    }];

更新项目信息

接口说明

    - (void)updateProjectInfoWithProjectName:(nonnull NSString *)projectName
                                  leaderName:(nonnull NSString *)leaderName
                                leaderMobile:(nonnull NSString *)leaderMobile
                               detailAddress:(nonnull NSString *)detailAddress
                            regionLocationId:(nullable NSString *)regionLocationId
                                     success:(nullable void(^)(id result))success
                                     failure:(nullable void(^)(NSError *error))failure;

参数说明

参数 说明
projectName 项目名称,必填
leaderName 项目负责人姓名,必填
leaderMobile 项目负责人电话,必填
detailAddress 详细位置,必填
regionLocationId 项目行政区ID,由国家码和一级行政区码组合,以 , 拼接,区码通过 TuyaLightingRegionManager 获取,可选
success 成功回调
failure 失败回调

示例代码

Objc:

    TuyaLightingProject *project = [TuyaLightingProject projectWithProjectId:123];
    [project updateProjectInfoWithProjectName:@"your projectName"
                                   leaderName:@"your leaderName"
                                 leaderMobile:@"your leaderMobile"
                                detailAddress:@"your detailAddress"
                             regionLocationId:nil
                                      success:^(id result) {
                                        NSLog(@"update success");
                                    } failure:^(NSError *error) {
                                        NSLog(@"update failure: %@", error);
                                    }];

删除项目

接口说明

    - (void)deleteProjectWithPassword:(nonnull NSString *)password
                              success:(nullable void(^)(void))success
                              failure:(nullable void(^)(NSError *error))failure;

参数说明

参数 说明
password 密码,必填
success 成功回调
failure 失败回调

示例代码

Objc:

    TuyaLightingProject *project = [TuyaLightingProject projectWithProjectId:123];
    [project deleteProjectWithPassword:@"your password"
                               success:^{
                                 NSLog(@"delete success");
                             } failure:^(NSError *error) {
                                 NSLog(@"delete failure: %@", error);
                             }];

获取国家行政区列表

接口说明

- (void)getRegionListWithSuccess:(void(^)(NSArray<TuyaLightingRegionModel *> *regionList))success
                         failure:(void(^)(NSError *error))failure;

参数说明

参数 说明
success 成功回调
failure 失败回调

示例代码

Objc:

    TuyaLightingRegionManager *project = [TuyaLightingRegionManager new];
    [[TuyaLightingRegionManager sharedInstance] getRegionListWithSuccess:^(NSArray * _Nonnull regionList) {
        NSLog(@"get success");
    } failure:^(NSError * _Nonnull error) {
        NSLog(@"get failure: %@", error);
    }];

对象说明

TuyaLightingProjectConfigModel

参数 说明
projectType 项目类型,0代表室内,1代表户外
projectTypeName 项目类型名称
projectIconUrl 项目类型IconUrl
spaceAttributes 空间层级属性,TuyaLightingProjectSpaceItemModel数组
validationConditions 有效输入范围限制,TuyaLightingProjectValidationItemModel数组

TuyaLightingProjectSpaceItemModel

参数 说明
name 空间层级名称
iconUrl 空间层级IconUrl
roomLevel 空间层级

TuyaLightingProjectValidationItemModel

参数 说明
min 有效范围最小值
max 有效范围最大值

TuyaLightingRegionModel

参数 说明
locationId 行政区ID
name 行政区名称
pinyinInitials 行政区名称首字母
parentId 上级行政区ID
name 空间层级名称

TuyaLightingProjectModel

参数 说明
projectId 项目id
name 项目名称
geoName 项目地理位置
latitude 纬度
longitude 经度
backgroundUrl 项目背景图片
controlMode 控制模式 示例:smart:智能控制,local:本地控制,remote:远程控制
leaderName 项目负责人名称
leaderMobile 项目负责人手机或邮箱
clientCount 设备总数
errorClientCount 离线设备总数(包括蓝牙直连设备)
authClientCount 授权设备总数
realOfflineCount 离线设备总数(不包括蓝牙直连设备)
power 能耗
detail 项目详细地址
projectType 项目类型
regionLocationId 项目区域id
projectTypeName 项目类型名称
projectIconUrl 项目iconUrl
displayOrder 用于排序
dealStatus 公版字段
role 公版字段
admin 公版字段