//
//  CloudPhoneAPI.h
//  VclustersGemini
//
//  Created by APPLE on 2020/8/27.
//  Copyright © 2020 APPLE. All rights reserved.
//

#ifndef CloudPhoneAPI_h
#define CloudPhoneAPI_h


#pragma mark - API - 获取云手机信息

/*单个云手机信息   get请求
 输入参数       userCard
 返回数据模型    CloudPhoneDataModel*/
#define LoadSingleDeviceAPI            @"/api/resources/v5/client/disk/info/userCard/single"

/*获取设备列表   get请求
 输入参数       无
 返回数据模型    CloudPhoneListModel*/
#define LoadDeviceAPI            @"/api/resources/v5/client/disk/info"

/*云手机超分getRbd*/
#define GETDEVICESTATESAPI       @"/api/resources/user/cloud/connect"

/*获取云手机websocket连接地址\校验token   get请求
 输入参数     userCardId       int   参数说明/api/resources/user/cloud/token/{userCardId}  在后面拼接设备id
 返回数据模型 SuperModel*/
#define GETCloudIsMountAPI       @"/api/resources/user/cloud/isMount?userCardId="

/*暂停站点迁移   get请求
 输入参数     userCardId       int   参数说明/api/storage/v1/site/switch/suspend/{userCardId}  在后面拼接设备id
 返回数据模型 SuperModel*/
#define zdqhAPISuspendAPI       @"/api/storage/v1/site/switch/suspend"

/*一键换机      post请求
 输入参数       userCardId           int       云手机ID
              coordinatesLat       NSString  用户坐标经度
              coordinatesLng       NSString  用户坐标纬度
              userOperatorNetwork  NSString  用户运营商网络
 返回数据模型    SuperModel*/
#define ChangePhoneAPI     @"/api/resources/v1/cardStatus/change/mobilephone"



#pragma mark - API - 云手机设置上报信息
/*超分        post请求
 输入参数      userCardId           int       云手机ID
              coordinatesLat       NSString  用户坐标经度
              coordinatesLng       NSString  用户坐标纬度
              userOperatorNetwork  NSString  用户运营商网络
 返回数据模型    SuperModel  ps：需要在data中获取数据暂时未写数据model*/
#define GETDEVICESTATEUSERBUOY          @"/api/resources/user/cloud/updateCardBuoy"/*设置云手机浮标*/
#define GETDEVICENetworkQualitySAPI     @"/api/resources/v5/networkQuality/addNetworkQualityLog"/*上报网络质量信息*/

/*系统升级      get请求
 输入参数       userCardId           int       云手机ID
 返回数据模型    SuperModel*/
#define GETUpgradeAPI   @"/api/pay/v5/system/upgrade/execute"

/*判断系统升级是否可以保存数据      get请求
 输入参数       userCardId           int       云手机ID
 返回数据模型    SuperModel*/
#define GETUpgradeCanSaveDataAPI @"/api/pay/v5/system/upgrade/info"

#pragma mark - API - 站点迁移
#define ExchagneSiteAPI                 @"/api/storage/v1/site/switch/start"  /*站点迁移*/
#define GETTASKCOUNT                    @"/api/storage/v1/rbdMove/getTaskCount"      /*获取站点排队数量*/
#define GETLOCATIONCOUNT                @"/api/storage/v1/rbdMove/getLocationCount"  /*获取排队当前序列号*/
#define GETTASKCOUNT                    @"/api/storage/v1/rbdMove/getTaskCount"      /*获取站点排队数量*/
#define GETLOCATIONCOUNT                @"/api/storage/v1/rbdMove/getLocationCount"  /*获取排队云手机当前序列号*/
#define GetAllBaseStatesUseInfoAPI      @"/api/storage/v1/site/switch/area/list"     /*获取所有站点使用情况*/
#define CancelChagneSiteWaitingAPI      @"/api/storage/v1/rbdMove/logoutMove"        /*取消站点迁移排队*/
#define NewExchagneSiteAPI              @"/api/storage/v1/rbdMove/addTask"  /*用户确认排队 使用该接口记录用户排队成功*/
#define CancelExchagneSiteAPI           @"/api/storage/v1/site/switch/delete" /*取消切换*/


/*试用看完广告免排队，上报通知服务器      post请求
 输入参数       phoneType           NSString  星动:VIP  星曜:SVIP  星际:STAR
              trialRecordId        int   试用排队ID  通过开始排队接口获得
 返回数据模型    AvoidQueuUpLoadModel*/
#define AvoidQueuUpLoadAPI     @"/api/resources/v4/freetrial/jumpOverQueue"
#pragma mark - API - 桌面快捷方式
#define QueryIconUrlWithPackageNameAPI   @"/api/public/v1/shortcut/fileId"       /*快捷方式 - 根据app包名查询icon的field*/
#define AddIconFileIDWithPackageNameAPI  @"/api/public/v1/shortcut/addFileId"    /*快捷方式 - icon 上传文件服务器之后 通知服务器*/

/*获取是否有免费排队资格      get请求
 返回数据模型    FreeAuthDataModel*/
#define GETHaveFreeQuitAPI  @"/api/resources/v4/freetrial/queueFree"


/**激活码试用云手机-查询进入等待时长      get请求 */
#define GetActiveCodeTrialWaitTimeAPI      @"/api/pay/v5/trialCodeConfig/getWaitTime"
/**激活码试用云手机-获取试用规则         get请求 */
#define GetActiveCodeTrialRuleAPI          @"/api/pay/v5/trialCodeConfig/getConfigByPhoneType"

/**免费试用云手机-查询进入等待时长        Post请求 */
#define GetNormalTrialWaitTimeAPI     @"/api/resources/v1/trial/reenterTime"
/**免费试用云手机-获取广告配置           get请求 */
#define GetNormalTrialRuleAPI         @"/api/resources/v4/freetrial/advert/config"
/**免费试用云手机-间隔广告上报           Post请求 */
#define GETTrialADReportAPI           @"/api/resources/v1/trial/report"


/**云手机支付透传 - 支付订单上报服务器       Post请求 */
#define  PostCloudPhonePayFromAppReportAPI           @"/api/pay/third/order"

/**云手机套餐升级 - 获取套餐列表信息以及支付信息       Get请求 */
#define  GetCloudPhonePackageUpdateInfoAPI           @"/api/pay/v1/meal/upgrade/list"
/**云手机套餐升级 - 获取云手机套餐升级当前套餐价格      Post请求 */
#define  PostCloudPhonePackageUpdatePriceAPI           @"/api/pay/v1/meal/upgrade/price"


/**试用云手机推荐 - 获取用户标签list      Post请求 */
#define  PostTrailUserTagListAPI           @"/api/user/v5/userLabelInfo/getAllLabel"

/**试用云手机推荐 - 设置用户标签      Post请求 */
#define  PostSetTrailUserTagAPI            @"/api/user/v5/userLabelInfo/setLabel"

/*获取云手机的分辨率      get请求
 输入参数       无
        
 返回数据模型    PhoneResolvingModel*/
#define GetPhoneResolvingsAPI     @"/api/resources/v5/machine/resolution/getResolvingPower"

/*获取云手机的分辨率      get请求
 输入参数       width   int  分辨率宽度
               high    int  分辨率高度
               dpi     int  分辨率密度
           userCardId  int  云手机ID
        
 返回数据模型    SuperModel*/
#define PostUploadPhoneResolvingsAPI @"/api/resources/v5/machine/resolution/operationResolvingPower"

/*获取年卡云机推荐app      get请求
 输入参数       userCardId 云机ID
        
 返回数据模型    RecommendedAppListModel*/
#define GETRecommendAppAPI @"/api/public/v1/market/get/recommend"

/*获取年卡剩余时间    get请求
 输入参数       userCardId  云机ID
        
 返回数据模型    SuperModel*/
#define GETPhoneVailTimeAPI @"/api/resources/yearMember/getResidueTime"

/*获取续费云手机年卡时长套餐*/
#define GETYearCardpackageAPI @"/api/pay/v2/meal/info/getTimeMenuRule"

/*云机下线      get请求
 输入参数       userCardId  云机ID
        
 返回数据模型    SuperModel*/
#define GETOffLinePhoneAPI @"/api/resources/yearMember/downline"

/*云机上线开始计时      get请求
 输入参数       userCardId  云机ID
        
 返回数据模型    SuperModel*/
#define GETOnLinePhoneAPI @"/api/resources/yearMember/startTime"

/*关闭漂浮按钮      get请求
 输入参数       userCardId  云机ID
        
 返回数据模型    SuperModel*/
#define GETCloseRemindAPI @"/api/resources/yearMember/closeRemind"


/*获取年卡进入云机排队详情      get请求
 输入参数       userCardId 云机ID
        
 返回数据模型    GetPhoneYearCardQunueDataModel*/
#define GetPhoneYearCardQunueDataAPI @"/api/resources/user/cloud/getConnectQueuePosition"

/*取消年卡排队      post请求
 输入参数       userCardId 云机ID
        
 返回数据模型    SuperModel*/
#define CancelPhoneYearCardQunueAPI @"/api/resources/user/cloud/cancelConnectQueue"

/*获取云手机新手视频信息      post请求
 输入参数       pageNum 页码 1
 输入参数       pageSize 页长 20
        
 返回数据模型    SuperModel*/
#define GetGuideVideoList @"/api/public/v1/novice/guide/video/list"

/*点赞或者踩      post请求
 输入参数       type 类型 0点赞 1踩
 输入参数       videoId 视频ID str
        
 返回数据模型    SuperModel*/
#define clickVideoAction @"/api/public/v1/novice/guide/video/clickVideoAction"

/*取消点赞或者踩  （目前只有取消踩）    post请求
 输入参数       type 类型 0点赞 1踩
 输入参数       videoId 视频ID str
        
 返回数据模型    SuperModel*/
#define cancelClickVideoAction @"/api/public/v1/novice/guide/video/cancelClickVideoAction"

/*视频展示次数     post请求
 输入参数       videoId 视频ID str
        
 返回数据模型    SuperModel*/
#define videoShowAction @"/api/public/v1/novice/guide/video/videoShow"


/*获取年卡分享详情      get请求
 输入参数       无
        
 返回数据模型    YearCardShareDataModel*/
#define GetPhoneYearCardShareDataAPI @"/api/resources/register/send/cloud/phone/shareCanReceiveCloudPhone"

/*获取年卡分享详情      post请求
 输入参数       无
        
 返回数据模型    SuperModel*/
#define PostPhoneYearCardShareDataAPI @"/api/resources/register/send/cloud/phone/shareReceiveCloudPhone"

/*批量恢复出厂设置      get请求
 输入参数       数组
        
 返回数据模型    SuperModel*/
#define PostPhoneListReSetAPI   @"/api/resources/card/resources/reset"

/*批量重启设置      get请求
 输入参数       数组
        
 返回数据模型    SuperModel*/
#define PostPhoneListReStartAPI @"/api/resources/card/resources/reboot"

#define TabBarItemClickAPI           @"/api/public/v1/systemBuriedPoint/stat"

#define NewBuryPointAPI              @"/api/public/v5/buriedPointRecord/reportRecords" /*新埋点功能-2022.6.21*/

#define PostServiceUseAPI               @"/api/pay/v4/addedServiceClient/report"    /*增值服务使用记录上报*/

/*获取验证码   post请求
 输入参数         phone     NSString    电话号码
                 type      NSString   regist:注册
                                      login:验证码登录
                                      passwd_back:找回密码
                                      modify_phone:修改手机号码
                                      send_star_coin:赠送星币
                                      logout_user:注销账号
                                      common:微信登录、QQ登录、Apple登录、第三方登录设置密码
     authorizationType     NSString   1:微信登录 2:QQ登录  3:Apple登录 其它情况无需该字段
 
 返回数据模型 SuperModel*/
#define SMSVerCodeAPI                  @"/api/message/v1/phone/send"

/*登录注册   post请求
 输入参数         phone     NSString    电话号码
                code      NSString   设备唯一标识符
                  
 返回数据模型 SuperModel*/
#define SMSVerCodeRegisterAndLoginAPI  @"/api/user/v1/user/register"

#define AppVersionCheckAPI       @"/api/publics/v1/client/upgrade/version"  /*app新版本检测API*/


#define GetUserPhoneInfoAPI       @"/api/resources/user/cloud/getUserPhoneInfo"

#define PostPhonePackageInfoAPI   @"/api/pay/v1/menu/rule/getInfo"

#define PostCreateOrderAPI        @"/api/pay/v1/order/create"/*创建订单*/

#define GetPayOrderAPI            @"/api/pay/v1/order/pullOrder"/*拉起订单支付*/

/*获取用户基本信息  post请求
 输入参数          phone     NSString    电话号码
                 code       NSString   设备唯一标识符
                  
 返回数据模型 SuperModel*/
#define PostUserDetailInfo            @"/api/user/v1/user/getUserDetailInfo"

/*获取用户基本信息  post请求
 输入参数          phone     NSString    电话号码
                 code       NSString   设备唯一标识符
                  
 返回数据模型 SuperModel*/
#define PostListOrderInfo            @"/api/pay/v1/order/listOrderInfo"

/*获取用户基本信息  Get请求
 输入参数          userCardId     int    云手机ID
                  
 返回数据模型 SuperModel*/
#define GetPhonereboot               @"/api/resources/api/usercard/reboot"

#endif /* CloudPhoneAPI_h */
