Ejemplo n.º 1
0
  public void clearDangerMultiBind() {

    DBCollection dc = MongoUtil.getInstance().getCollection("Bindings");
    DBCursor c = dc.find();
    JSONMessageBuilder bd = new JSONMessageBuilder();
    bd.setContent(
        "由于我们发现您绑定了多个不同姓名的账号,为保护个人隐私我们已经将您所有的绑定信息清空,如需继续使用请重新绑定自己的UIS账号。我们不推荐帮助其他人查询个人信息。");

    while (c.hasNext()) {
      DBObject obj = c.next();
      try {
        BasicDBList binds = (BasicDBList) obj.get("binds");
        if (binds.size() > 1) {
          Object name = null;
          for (int i = 0; i < binds.size(); i++) {
            DBObject u = (DBObject) binds.get(i);
            if (i > 0) {
              if (u.get("username") == null || !u.get("username").equals(name)) {
                dc.remove(obj);

                System.out.println(obj);
                bd.set("touser", obj.get("openid"));
                System.out.println(
                    CommonUtil.postWebRequest(
                        "https://api.weixin.qq.com/cgi-bin/message/custom/"
                            + "send?access_token="
                            + AccessTokenHelper.getInstance().getToken(AccessTokenHelper.WEIXIN),
                        WeixinMessageHelper.msg2jsonstr(bd.getMessage()).getBytes("utf-8"),
                        "application/json; charset=utf-8"));
              }
              break;
            }
            name = u.get("username");
          }
        }
      } catch (Exception ex) {

      }
    }
  }