using System;
using System.Xml.Serialization;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
namespace DingTalk.Api.Request
{
///
/// TOP API: dingtalk.oapi.pbp.instance.group.position.update
///
public class OapiPbpInstanceGroupPositionUpdateRequest : BaseDingTalkRequest
{
///
/// 同步参数
///
public string SyncParam { get; set; }
public PunchGroupSyncPositionParamDomain SyncParam_ { set { this.SyncParam = TopUtils.ObjectToJson(value); } }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.pbp.instance.group.position.update";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("sync_param", this.SyncParam);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("sync_param", this.SyncParam);
}
///
/// PunchGroupPositionParamDomain Data Structure.
///
[Serializable]
public class PunchGroupPositionParamDomain : TopObject
{
///
/// 位置唯一标识
///
[XmlElement("position_id")]
public string PositionId { get; set; }
///
/// 位置名称
///
[XmlElement("position_name")]
public string PositionName { get; set; }
///
/// 位置类型,如101表示B1
///
[XmlElement("position_type")]
public Nullable PositionType { get; set; }
}
///
/// PunchGroupSyncPositionParamDomain Data Structure.
///
[Serializable]
public class PunchGroupSyncPositionParamDomain : TopObject
{
///
/// 新增位置列表
///
[XmlArray("add_position_list")]
[XmlArrayItem("punch_group_position_param")]
public List AddPositionList { get; set; }
///
/// 业务唯一标识
///
[XmlElement("biz_id")]
public string BizId { get; set; }
///
/// 业务实例唯一标识
///
[XmlElement("biz_inst_id")]
public string BizInstId { get; set; }
///
/// 删除位置列表
///
[XmlArray("delete_position_list")]
[XmlArrayItem("punch_group_position_param")]
public List DeletePositionList { get; set; }
///
/// 打卡组唯一标识
///
[XmlElement("punch_group_id")]
public string PunchGroupId { get; set; }
}
#endregion
}
}