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


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

主题:获取企业微信数据

帅哥哟,离线,有人找我吗?
13968559581
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | 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

 回到顶部
帅哥,在线噢!
有点蓝
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105481 积分:536396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/3 11:58:00 [只看该作者]

时间戳转换为时间
Dim st As New Date(1970,1,1,8,0,0)
dim 时间戳  as long =1596297600
dim d as date = st.AddSeconds(时间戳)
msgbox(d)

 回到顶部
帅哥哟,离线,有人找我吗?
13968559581
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | 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
这几个不是打卡时间,只是我当时设定的上下班时间,他怎么了取成员工的打卡时间了,这几行根本不是打卡数据呀


 回到顶部
帅哥,在线噢!
有点蓝
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105481 积分:536396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/3 13:38:00 [只看该作者]

这个接口获取的就是打卡数据,如果有问题只能取咨询微信客服了,我也不知道是什么原因

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


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

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

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

 回到顶部
帅哥,在线噢!
有点蓝
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105481 积分:536396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/3 14:46:00 [只看该作者]

所以说还是没有仔细看微信开发文档

请求示例:useridlist 需要获取打卡记录的用户列表

  1. {
  2. "opencheckindatatype": 3,
  3. "starttime": 1492617600,
  4. "endtime": 1492790400,
  5. "useridlist": ["james","paul"]
  6. }
根据时间段取值不就行了,数据库记录的是哪个时间的数据自己不知道吗

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


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

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


 回到顶部
帅哥,在线噢!
有点蓝
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105481 积分:536396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/3 15:48:00 [只看该作者]

看接口只能是把所有员工传递过去,然后看返回的数据,有数据的说明有打卡

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


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

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

 回到顶部
帅哥,在线噢!
有点蓝
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105481 积分:536396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/3 21:35:00 [只看该作者]

没看到有这种功能。

 回到顶部
总数 20 上一页 1 2