Foxtable(狐表)用户栏目专家坐堂 → 获取企业微信数据


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

主题:获取企业微信数据

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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
获取企业微信数据  发帖心情 Post By:2020/7/30 22:18:00 [显示全部帖子]

你好我想获取企业微信考勤打卡的数据,我建了一个GetQYAccessTokenkqdk,但报错,什么原因
Dim ur As String = "https://qyapi.weixin.qq.com/cgi-bin/checkin/getcheckindata?access_token={0}"
Dim hc As New HttpClient(CExp(ur,Functions.Execute("GetQYAccessTokenkqdk")))
Dim jo As JObject = JObject.Parse(hc.GetData())


图片点击可在新窗口打开查看此主题相关图片如下:打卡报错.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/7/31 8:24:00 [显示全部帖子]

我完整的代码是这样的呀,他现在是errcode这里就报错
Dim ur As String = "https://qyapi.weixin.qq.com/cgi-bin/checkin/getcheckindata?access_token={0}"
Dim hc As New HttpClient(CExp(ur,Functions.Execute("GetQYAccessTokenkqdk")))
Dim jo As JObject = JObject.Parse(hc.GetData())
If jo("errcode") = "0" Then
    DataTables("企业微信打卡数据").DataRows.Clear

     Dim nms() As String = {"userid","checkin_time"} 
    For Each jt As JToken In jo("checkindata")
        Dim dr As DataRow = DataTables("企业微信打卡数据").AddNew()
        For Each nm As String In nms
            dr(nm) = jt(nm)
        Next
    Next
    DataTables("企业微信打卡数据").Save()
Else
    MessageBox.Show(jo.ToString)
End If

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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/7/31 10:35:00 [显示全部帖子]

不是呀,我不知道是你理解有误,还是我理解有误(创建,修改部门是需要提交数据,但我现在好比只获取部门信息呀,我要提交什么数据呢)
我现在不需要提交数据呀,我只是把企业微信里的打卡数据获取过来就行了呀
[此贴子已经被作者于2020/7/31 10:36:51编辑过]

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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/8/2 9:39:00 [显示全部帖子]

现在是这样的,我数据能读取过来了,但这里的时间是Unix时间戳,我实际使用的时候需要转换,这个在狐表里需要转换吗,怎么转换
还有,我取过来的数据,他要把那个设置的时间(见附件)也取过来,什么原因

图片点击可在新窗口打开查看此主题相关图片如下:565656.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/8/3 10:04:00 [显示全部帖子]

你好,这个unix时间戳我还是转换不来
你可以指点一下代码吗
比如说我要获取昨天的打卡数据,
我代码应该怎么写

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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/8/3 11:34:00 [显示全部帖子]

你好,我时间获取过来了,但是前面四行,把我那个上下班的设定时间(见附件
图片点击可在新窗口打开查看此主题相关图片如下:打卡时间.png
图片点击可在新窗口打开查看
)获取过来了,什么原因
我完整代码如下
Dim st As New Date(1970,1,1,8,0,0)
Dim kssj,jssj  As Long
kssj = (Date.today.adddays(-5) - st).TotalSeconds()
jssj=(Date.today.adddays(1) - st).TotalSeconds()
Dim ur As String = "https://qyapi.weixin.qq.com/cgi-bin/checkin/getcheckindata?access_token={0}"
Dim hc As New HttpClient(CExp(ur,Functions.Execute("GetQYAccessTokenkqdk")))
Dim jo As New JObject
jo("opencheckindatatype") = 3
jo("starttime") =kssj
jo("endtime") =jssj
jo("useridlist") ="12762"
  
'……其它参数参考微信开发文档
hc.Content = jo.ToString()
jo = JObject.Parse(hc.GetData())
If jo("errcode") = "0" Then
    DataTables("企业微信打卡数据").DataRows.Clear
     Dim nms() As String = {"userid","checkin_time"} 
    For Each jt As JToken In jo("checkindata")
        Dim dr As DataRow = DataTables("企业微信打卡数据").AddNew()
        For Each nm As String In nms
            dr(nm) = jt(nm)
        Next
    Next
    DataTables("企业微信打卡数据").Save()
  msgbox(0)
Else
    MessageBox.Show(jo.ToString)
End If

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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/8/3 13:35:00 [显示全部帖子]

不理解
我现在指的是这个
 8:30,11:30,13:30,17:00
这几个不是打卡时间,只是我当时设定的上下班时间,他怎么了取成员工的打卡时间了,这几行根本不是打卡数据呀


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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/8/3 14:35:00 [显示全部帖子]

我现在的方法是一个一个员工去取数,感觉有这么几个问题:
  1.员工比较多,有几百人,我要每个员工都要遍历过去吗?
  2.哪个员工的哪笔数据我已经下载过了,我有什么办法做个标记吗,表明我已经下载过了,下次取数的时候,不需要再取了

 以上这个方法是比较笨的,都是要我去检索企业微信里的打卡数据,定时去同步过来,有没有另外一个办法,就是当企业微信里有打卡数据的时候,主动同步过来

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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/8/3 15:08:00 [显示全部帖子]

"useridlist": ["james","paul"]
问题就在这里,我员工几百人,我需要每个员工遍历一遍吗,可能企业微信打卡的人,就几十个人
我有什么办法能先把有打卡数据的员工取出来吗


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


加好友 发短信
等级:幼狐 帖子:185 积分:1526 威望:0 精华:0 注册:2017/7/23 17:17:00
  发帖心情 Post By:2020/8/3 21:32:00 [显示全部帖子]

师傅,我现在打卡数据是能获取过来了,但是效率好慢
有没有办法,主动从企业微信推送过来,企业微信一打卡,马上能给狐表一个信号,直接写入数据

 回到顶部
总数 11 1 2 下一页