Foxtable(狐表)用户栏目专家坐堂 → 读取微信考勤


  共有2182人关注过本帖树形打印复制链接

主题:读取微信考勤

帅哥哟,离线,有人找我吗?
zoyong
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:656 积分:7786 威望:0 精华:0 注册:2015/8/24 9:02:00
读取微信考勤  发帖心情 Post By:2018/6/27 16:08:00 [只看该作者]

.NET Framework 版本:2.0.50727.8784
Foxtable 版本:2018.3.9.1
错误所在事件:
详细错误信息:
远程服务器返回错误: (404) 未找到。

.NET Framework 版本:2.0.50727.8784
Foxtable 版本:2018.3.9.1
错误所在事件:窗口,QQ信息,考勤数据,Click
详细错误信息:
Error reading JObject from JsonReader. Path '', line 0, position 0.

代码:
Dim st As New Date(1970,1,1,8,0,0)
Dim t1 As Integer = CInt((Date.Today.AddDays(-100)  - st).TotalSeconds()) '时间戳开始时间
Dim t2 As Integer = CInt((Date.Now - st).TotalSeconds()) '时间戳结束时间

Dim ur As String = "https://qyapi.weixin.qq.com/cgi-bin/checkin/getapprovaldata?access_token={0}"
Dim hc As new HttpClient(Cexp(ur,Functions.Execute("GetQYAccessToken3")))     '企业号应用
Dim jo As New JObject
jo("starttime") = t1
jo("endtime") = t2
hc.Content = jo.Tostring()
jo = JObject.Parse(hc.GetData)
Dim json As String = jo("data").ToString()
Dim ja As JArray = Jarray.Parse(json)
For i As Integer = 0 To ja.Count - 1
    Dim r As Row =Tables("微信打卡数据").AddNew()
    r("用户id") = ja(i)("userid").ToString()   '
    r("规则名称") = ja(i)("groupname").ToString()   '
    r("打卡类型")  = ja(i)("checkin_type").ToString()   '
    r("异常类型") = ja(i)("exception_type").ToString()    '
    r("打卡时间") = ja(i)("checkin_time").ToString()     '
    r("打卡地点") = ja(i)("location_title").ToString()    '
    r("地点详情") = ja(i)("location_detail").ToString()    '
    r("wifi名称") = ja(i)("wifiname").ToString()   '
    r("备注") = ja(i)("notes").ToString()         '
    r("MAC地址") = ja(i)("wifimac").ToString()
    r("附件") = ja(i)("mediaids").ToString()
    
Next
Tables("微信打卡数据").save



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/27 16:15:00 [只看该作者]

弹出返回的值看看,如

 

hc.Content = jo.Tostring()
msgbox(hc.GetData)
jo = JObject.Parse(hc.GetData)

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/27 16:22:00 [只看该作者]

要发送的参数,一个也不能少

 

https://work.weixin.qq.com/api/doc#11196

 

 

请求示例:

  1. {
  2. "opencheckindatatype": 3,
  3. "starttime": 1492617600,
  4. "endtime": 1492790400,
  5. "useridlist": ["james","paul"]
  6. }

参数说明:

参数 必须 说明
access_token 调用接口凭证。必须使用打卡应用的Secret获取access_token
opencheckindatatype 打卡类型。1:上下班打卡;2:外出打卡;3:全部打卡
starttime 获取打卡记录的开始时间。Unix时间戳
endtime 获取打卡记录的结束时间。Unix时间戳
useridlist 需要获取打卡记录的用户列表
  1. 获取记录时间跨度不超过三个月
  2. 用户列表不超过100个。若用户超过100个,请分批获取
  3. 有打卡记录即可获取打卡数据,与当前”打卡应用”是否开启无关

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:656 积分:7786 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/6/27 16:24:00 [只看该作者]

jo = JObject.Parse(hc.GetData)
Dim json As String = jo("data").ToString()
Dim ja As JArray = Jarray.Parse(json)


应该是这个代码问题,谈出是空白。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/27 16:33:00 [只看该作者]

认认真真看3楼,不要照搬代码,灵活变通啊。

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:656 积分:7786 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/6/27 16:46:00 [只看该作者]

有点甜老师   你就帮忙修改好吧    我是真不会弄了

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/27 17:17:00 [只看该作者]

在这里加上参数

 

Dim jo As New JObject
jo("starttime") = t1
jo("endtime") = t2

jo("opencheckindatatype") = 3 ' 是 打卡类型.1:上下班打卡;2:外出打卡;3:全部打卡

Dim ja As New Jarray '定义数组
ja.Add("用户1")
ja.Add("用户2")

jo("useridlist") = ja


 回到顶部