91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信小程序實現二維碼簽到考勤系統

發布時間:2020-09-14 11:16:07 來源:腳本之家 閱讀:370 作者:菥蓂尋生 欄目:web開發

一。手動生成二維碼的.js代碼

這里要引入一個官方文檔wxapp.qrcode.min.js

let drawQrcode = require('../utils/wxapp.qrcode.min.js');//引入wxapp.qrcode.min.js文件
createQRcode(canvasWidth, canvasHeight, canvasId, url) {
  // 調用qrcode.js里的方法,傳入對應參數
  drawQrcode({
   width: canvasWidth,
   height: canvasHeight,
   canvasId: canvasId,
   text: url
  })
  console.log(drawQrcode.width)
 },
 setCanvasSize() {
  let size = {};
  // getSystemInfoSync 微信小程序提供getSystemInfoSync獲取設備的信息
  let res = wx.getSystemInfoSync();
  // console.log(res);
  // 獲取比例
  let scale = 686 / 750;
  let width = res.windowWidth * scale;
  let height = width;
  size.w = width;
  size.h = height;
  return size;
 },
 formsubmit(e) {
  let url = e.detail.value.url || this.data.placeholder;
  // let url = e.detail.value.url ? e.detail.value.url : this.data.placeholder;
  wx.showToast({
   title: '生成中',
   icon: 'loading',
   duration: 2000
  })
  let that_ = this;

  let timer = setTimeout(() => {
   let size = that_.setCanvasSize();
   //調用createQRcode方法
   that_.createQRcode(size.w, size.h, 'mycanvars', url);
   wx.hideToast();
   clearTimeout(timer);
  }, 2000)},


 /**
  * 生命周期函數--監聽頁面加載
  */
 onLoad: function (options) {
  //setCanvasSize 拿到畫布區域的尺寸(微信小程序不支持dom的操作,所以單獨定義方法去獲取)
  let size = this.setCanvasSize();
  // console.log(size);
  let url = this.data.placeholder;
  //調用createQRcode方法
  this.createQRcode(size.w, size.h, 'mycanvars', url);
 },

二。準備工作,導入數據庫表,和unit.js。獲取時間

const DB = wx.cloud.database().collection("cows")
const TB = wx.cloud.database().collection("log")
let i = 0
let id=''
var util = require('../utils/util.js');

三。寫入簽到簽退按鈕的.js代碼

now(){
  
  var that = this;
  console.log(that.data.nows)
  if (i == 0 && that.data.now =='簽到'){
   i=1;
   var time1 = util.formatTime(new Date())
   DB.add({
    data: {
     statctime:time1,
     endtime: ''
    },
    success(res) {
     id=res._id
     console.log("簽到成功", res._id)
    },
    fail(res) {
     console.log("簽到失敗", res)
    }
   })
   that.setData({
    statc: time1,
    now: '已簽到',
    color: 'rgb(199, 194, 194)'
   })
   wx.showToast({
    title: '簽到成功'
   })
   var timeout= setTimeout(function(){
    wx.switchTab({
     url: '/pages/arrary/first/ones/ones',
    })
   },1000)
   
  }
  else{
   wx.showToast({
    title: '已簽到,請勿重復簽到',
    icon: 'none'
   })
  }
 },
 nows(){
  var that = this;
  if (i == 1 || that.data.now == '已簽到' && that.data.nows == '簽退'){
   i=2;
   var time2 = util.formatTime(new Date())
   DB.doc(id).update({
    data: {
     endtime: time2
    },
    success(res) {
     console.log("簽退成功", res)
    },
    fail(res) {
     console.log("簽退失敗", res)
    }
   })
   that.setData({
    ends: time2,
    nows: '已簽退',
    colors: 'rgb(199, 194, 194)'
   })
   wx.showToast({
    title: '簽退成功'
   })
  }
  else
  {
   if(i==2){
    wx.showToast({
     title: '已簽退,請勿重復簽退',
     icon: 'none'
    })
   }
   else{
    wx.showToast({
     title: '請先簽到,簽到之后方可簽退!',
     icon: 'none'
    })
   }
  }
 },

第四。頁面監聽簽退后會跳出簽退頁面。重新進入需要監聽。

 var that = this
  wx.cloud.callFunction({
   name: "getopenid",
   success(res) {
    var openid = res.result.openid
    DB.get({
     success(e) {
      console.log(e)
      var lenths = e.data.length;
      console.log(lenths);
      var time1 = util.formatTime(new Date())
      for (var i = 0; i < lenths; i++) {
       if (e.data[i]._openid == openid && e.data[i].statctime.substring(0, 10) == time1.substring(0, 10)) {
        var st = e.data[i].statctime
        var en = e.data[i].endtime
        that.setData({
         statc: st,
         now: '已簽到',
         color: 'rgb(199, 194, 194)',
        })
       }
      }
     },
     fail(e) {
      console.log("查詢失敗", e)
     }
    })
    console.log("獲取成功", res.result.openid)

   },
   fail(res) {
    console.log("獲取成功", res)
   }
  })

到這,一個簡單的簽到頁面就完成了。如有不對的地方,小菜鳥期盼大神的指導。
希望對你們有用處。

總結

以上所述是小編給大家介紹的微信小程序實現二維碼簽到考勤系統,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

博乐市| 临西县| 北海市| 威远县| 开平市| 五大连池市| 新竹县| 中山市| 呼玛县| 和田县| 宝应县| 马公市| 嫩江县| 铜梁县| 安岳县| 保山市| 汾阳市| 九台市| 漠河县| 三门县| 郓城县| 闵行区| 绥滨县| 微博| 吕梁市| 页游| 安龙县| 青州市| 湾仔区| 龙门县| 通道| 安乡县| 翼城县| 海晏县| 孟津县| 台南县| 新沂市| 曲水县| 海宁市| 拉萨市| 会宁县|