using System; using System.Collections.Generic; using Top.Api.Util; using Top.Api; using Top.Api.DingTalk; namespace DingTalk.Api.Request { /// /// TOP API: dingtalk.oapi.attendance.record.upload /// public class OapiAttendanceRecordUploadRequest : BaseDingTalkRequest { /// /// 设备唯一标识 /// public string DeviceId { get; set; } /// /// 打卡设备名称 /// public string DeviceName { get; set; } /// /// 打卡备注图片地址,必须是公网可访问的地址 /// public string PhotoUrl { get; set; } /// /// 员工打卡的时间 /// public Nullable UserCheckTime { get; set; } /// /// 员工id /// public string Userid { get; set; } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.attendance.record.upload"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("device_id", this.DeviceId); parameters.Add("device_name", this.DeviceName); parameters.Add("photo_url", this.PhotoUrl); parameters.Add("user_check_time", this.UserCheckTime); parameters.Add("userid", this.Userid); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("device_id", this.DeviceId); RequestValidator.ValidateRequired("device_name", this.DeviceName); RequestValidator.ValidateRequired("user_check_time", this.UserCheckTime); RequestValidator.ValidateRequired("userid", this.Userid); } #endregion } }