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.attendance.group.positions.add /// public class OapiAttendanceGroupPositionsAddRequest : BaseDingTalkRequest { /// /// 考勤组id /// public string GroupKey { get; set; } /// /// 操作人userId /// public string OpUserid { get; set; } /// /// postion列表 /// public string PositionList { get; set; } public List PositionList_ { set { this.PositionList = TopUtils.ObjectToJson(value); } } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.attendance.group.positions.add"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("group_key", this.GroupKey); parameters.Add("op_userid", this.OpUserid); parameters.Add("position_list", this.PositionList); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("group_key", this.GroupKey); RequestValidator.ValidateRequired("position_list", this.PositionList); RequestValidator.ValidateObjectMaxListSize("position_list", this.PositionList, 100); } /// /// PositionDomain Data Structure. /// [Serializable] public class PositionDomain : TopObject { /// /// 地址描述 /// [XmlElement("address")] public string Address { get; set; } /// /// 业务方positionId /// [XmlElement("foreign_id")] public string ForeignId { get; set; } /// /// 纬度(支持6位小数) /// [XmlElement("latitude")] public string Latitude { get; set; } /// /// 经度(支持6位小数) /// [XmlElement("longitude")] public string Longitude { get; set; } /// /// 打卡位置允许的偏移量 /// [XmlElement("offset")] public Nullable Offset { get; set; } } #endregion } }