/**
 *  Auto created by ApiCreator Tool.
 *  SVN Rev: 79835, Author: 32725, Date: 2017-11-10 11:03:30 +0800 
 *  SHOULD NOT MODIFY!
 */
 
#ifndef _LC_OPENAPI_CLIENT_CloudRecordPlan_H_
#define _LC_OPENAPI_CLIENT_CloudRecordPlan_H_

#include "LCOpenApiDefine.h"
#include "LCOpenApiRequest.h"
#include "LCOpenApiResponse.h"

/** DESCRIPTION: 
�桁�莅上�������篋�綵��鎕������
Period鐚�����������
        everyday鐚�罸鎀� 膈�篁隙�����医����
        Monday鐚�罸���
        Tuesday鐚�罸���
        Wednesday鐚�罸���
        Thursday鐚�罸����
        Friday鐚�罸���
        Saturday鐚�罸����
        Sunday鐚�罸����
    ���榊ー��Monday, Wednesday, Friday�����劫�紊�����
 */

namespace Dahua{
namespace LCOpenApi{
	using namespace std;
	class CloudRecordPlanRequest : public LCOpenApiRequest
	{
	public:
		class CloudRecordPlanRequestData
		{
		public:
			CloudRecordPlanRequestData();
			~CloudRecordPlanRequestData();
			
		public:
			/** [cstr]cloudRecordPlan */
			#define _STATIC_CloudRecordPlanRequestData_method "cloudRecordPlan"
			string method;
		public:
			/** ����ID */
			string channelId;
		public:
			/** ����token(userToken��accessToken) */
			string token;
		public:
			/** 莅上�ID */
			string deviceId;

		};
	public:
		CloudRecordPlanRequest();
		~CloudRecordPlanRequest();
	public:
		virtual int build();
	public:
		CloudRecordPlanRequestData data;
	};

	
	typedef typename CloudRecordPlanRequest::CloudRecordPlanRequestData CloudRecordPlanRequestData;


	class CloudRecordPlanResponse : public LCOpenApiResponse
	{
	public:
		class CloudRecordPlanResponseData
		{
		public:
			CloudRecordPlanResponseData();
			~CloudRecordPlanResponseData();
			
		public:
			/** define a list with struct of CloudRecordPlanResponseData_RulesElement */
			class CloudRecordPlanResponseData_RulesElement : public LCOpenApiBase
			{
			public:
				CloudRecordPlanResponseData_RulesElement();
				~CloudRecordPlanResponseData_RulesElement();
			public:
				/** 膸����狗�� */
				string endTime;
			public:
				/** [long]�狗�贋�� */
				int64 timestamp;
			public:
				/** ��紊����� */
				string period;
			public:
				/** 綣�紮��狗�� */
				string beginTime;
			};
		public:
			LCOpenApiVector<CloudRecordPlanResponseData_RulesElement> rules;
		public:
			/** ����ID */
			string channelId;
		public:
			/** [int]罸�����炊��羌��狗�器���篏�鐚�絨�囐� */
			int limitTime;
		public:
			/** [int]筝�茵�絽��鐚���篏�鐚�M鐚� */
			int upstream;

		};
	public:
		CloudRecordPlanResponse();
		~CloudRecordPlanResponse();
	public:
		virtual int parse();
	public:
		CloudRecordPlanResponseData data;
	};

	
	typedef typename CloudRecordPlanResponse::CloudRecordPlanResponseData CloudRecordPlanResponseData;
	typedef typename CloudRecordPlanResponse::CloudRecordPlanResponseData::CloudRecordPlanResponseData_RulesElement CloudRecordPlanResponseData_RulesElement;

}
}

#endif