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.add
///
public class OapiAttendanceGroupAddRequest : BaseDingTalkRequest
{
///
/// 操作人id
///
public string OpUserId { get; set; }
///
/// 考勤组信息
///
public string TopGroup { get; set; }
public TopGroupVoDomain TopGroup_ { set { this.TopGroup = TopUtils.ObjectToJson(value); } }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.attendance.group.add";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("op_user_id", this.OpUserId);
parameters.Add("top_group", this.TopGroup);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("op_user_id", this.OpUserId);
RequestValidator.ValidateRequired("top_group", this.TopGroup);
}
///
/// TopPositionVoDomain Data Structure.
///
[Serializable]
public class TopPositionVoDomain : TopObject
{
///
/// 精度
///
[XmlElement("accuracy")]
public string Accuracy { get; set; }
///
/// 地址
///
[XmlElement("address")]
public string Address { get; set; }
///
/// corpId
///
[XmlElement("corp_id")]
public string CorpId { get; set; }
///
/// 纬度
///
[XmlElement("latitude")]
public string Latitude { get; set; }
///
/// 经度
///
[XmlElement("longitude")]
public string Longitude { get; set; }
///
/// 标题
///
[XmlElement("title")]
public string Title { get; set; }
}
///
/// TopShiftVoDomain Data Structure.
///
[Serializable]
public class TopShiftVoDomain : TopObject
{
///
/// 班次id
///
[XmlElement("id")]
public Nullable Id { get; set; }
}
///
/// TopMemberVoDomain Data Structure.
///
[Serializable]
public class TopMemberVoDomain : TopObject
{
///
/// corpId
///
[XmlElement("corp_id")]
public string CorpId { get; set; }
///
/// 角色
///
[XmlElement("role")]
public string Role { get; set; }
///
/// 类型
///
[XmlElement("type")]
public string Type { get; set; }
///
/// 用户id
///
[XmlElement("user_id")]
public string UserId { get; set; }
}
///
/// TopGroupManageRolePermissionVoDomain Data Structure.
///
[Serializable]
public class TopGroupManageRolePermissionVoDomain : TopObject
{
///
/// 设置拍照打卡规则
///
[XmlElement("camera_check")]
public string CameraCheck { get; set; }
///
/// 设置打卡方式
///
[XmlElement("check_position_type")]
public string CheckPositionType { get; set; }
///
/// 设置考勤时间
///
[XmlElement("check_time")]
public string CheckTime { get; set; }
///
/// 设置参与考勤人员
///
[XmlElement("group_member")]
public string GroupMember { get; set; }
///
/// 设置考勤类型
///
[XmlElement("group_type")]
public string GroupType { get; set; }
///
/// 设置外勤打卡
///
[XmlElement("out_side_check")]
public string OutSideCheck { get; set; }
///
/// 设置加班规则
///
[XmlElement("over_time_rule")]
public string OverTimeRule { get; set; }
///
/// 员工排班
///
[XmlElement("schedule")]
public string Schedule { get; set; }
}
///
/// TopWifiVoDomain Data Structure.
///
[Serializable]
public class TopWifiVoDomain : TopObject
{
///
/// 企业corpid
///
[XmlElement("corp_id")]
public string CorpId { get; set; }
///
/// mac地址
///
[XmlElement("mac_addr")]
public string MacAddr { get; set; }
///
/// wifi的ssid
///
[XmlElement("ssid")]
public string Ssid { get; set; }
}
///
/// TopAtBleDeviceVODomain Data Structure.
///
[Serializable]
public class TopAtBleDeviceVODomain : TopObject
{
///
/// 设备id
///
[XmlElement("device_id")]
public Nullable DeviceId { get; set; }
}
///
/// TopGroupVoDomain Data Structure.
///
[Serializable]
public class TopGroupVoDomain : TopObject
{
///
/// 蓝牙打卡信息
///
[XmlArray("ble_device_list")]
[XmlArrayItem("top_at_ble_device_v_o")]
public List BleDeviceList { get; set; }
///
/// 打卡是否需要健康码
///
[XmlElement("check_need_healthy_code")]
public Nullable CheckNeedHealthyCode { get; set; }
///
/// corpId
///
[XmlElement("corp_id")]
public string CorpId { get; set; }
///
/// 默认班次id(固定班制必填)
///
[XmlElement("default_class_id")]
public Nullable DefaultClassId { get; set; }
///
/// 休息日打卡是否需审批。true:需要 false:不需要
///
[XmlElement("disable_check_when_rest")]
public Nullable DisableCheckWhenRest { get; set; }
///
/// 未排班时是否禁止员工打卡
///
[XmlElement("disable_check_without_schedule")]
public Nullable DisableCheckWithoutSchedule { get; set; }
///
/// 是否开启拍照打卡
///
[XmlElement("enable_camera_check")]
public Nullable EnableCameraCheck { get; set; }
///
/// 未排班时允许员工选择班次打卡
///
[XmlElement("enable_emp_select_class")]
public Nullable EnableEmpSelectClass { get; set; }
///
/// 是否开启人脸检测
///
[XmlElement("enable_face_check")]
public Nullable EnableFaceCheck { get; set; }
///
/// 是否第二天生效
///
[XmlElement("enable_next_day")]
public Nullable EnableNextDay { get; set; }
///
/// 是否开启外勤打卡必须拍照
///
[XmlElement("enable_outside_camera_check")]
public Nullable EnableOutsideCameraCheck { get; set; }
///
/// 是否可以外勤打卡
///
[XmlElement("enable_outside_check")]
public Nullable EnableOutsideCheck { get; set; }
///
/// 是否启用蓝牙定位
///
[XmlElement("enable_position_ble")]
public Nullable EnablePositionBle { get; set; }
///
/// 自由工时考勤组考勤开始时间与当天0点偏移分钟数(如:240表示4:00)
///
[XmlElement("freecheck_day_start_min_offset")]
public Nullable FreecheckDayStartMinOffset { get; set; }
///
/// 自由工时考勤组工作日(1表示周一,0表示周日)
///
[XmlArray("freecheck_work_days")]
[XmlArrayItem("number")]
public List FreecheckWorkDays { get; set; }
///
/// 考勤组id
///
[XmlElement("id")]
public Nullable Id { get; set; }
///
/// 考勤组子管理员userid列表
///
[XmlArray("manager_list")]
[XmlArrayItem("string")]
public List ManagerList { get; set; }
///
/// 考勤组成员
///
[XmlArray("members")]
[XmlArrayItem("top_member_vo")]
public List Members { get; set; }
///
/// 是否有修改考勤组成员相关信息
///
[XmlElement("modify_member")]
public Nullable ModifyMember { get; set; }
///
/// 考勤组名
///
[XmlElement("name")]
public string Name { get; set; }
///
/// 考勤范围
///
[XmlElement("offset")]
public Nullable Offset { get; set; }
///
/// 考勤组owner
///
[XmlElement("owner")]
public string Owner { get; set; }
///
/// 考勤地址
///
[XmlArray("positions")]
[XmlArrayItem("top_position_vo")]
public List Positions { get; set; }
///
/// 子管理员权限范围(w表示可管理,r表示可读)
///
[XmlElement("resource_permission_map")]
public TopGroupManageRolePermissionVoDomain ResourcePermissionMap { get; set; }
///
/// 班次信息
///
[XmlArray("shift_vo_list")]
[XmlArrayItem("top_shift_vo")]
public List ShiftVoList { get; set; }
///
/// 是否跳过节假日
///
[XmlElement("skip_holidays")]
public Nullable SkipHolidays { get; set; }
///
/// 特殊日期配置
///
[XmlElement("special_days")]
public string SpecialDays { get; set; }
///
/// 考勤组类型
///
[XmlElement("type")]
public string Type { get; set; }
///
/// 考勤wifi打卡
///
[XmlArray("wifis")]
[XmlArrayItem("top_wifi_vo")]
public List Wifis { get; set; }
///
/// 周班次列表(固定班制必填,0表示休息)
///
[XmlArray("workday_class_list")]
[XmlArrayItem("number")]
public List WorkdayClassList { get; set; }
}
#endregion
}
}