(1)查詢用戶簽到信息接口:
@app.route('/get_sign/<user_id>')defget_sign(user_id):try:data=get_sign_info(user_id)exceptExceptionase:returnjsonify({'status':0,'Exception':str(e)})returnjsonify({'status':1,'data':data})defget_sign_info(user_id):conn=sqlite3.connect('test.sqlite')cursor=conn.cursor()cursor.execute('selectdatefromsignwhereuser_id=?',(user_id,))all_date=set([x[0]forxincursor.fetchall()])now_date=date.today().strftime('%Y-%m-%d')//將日期字符串化ifnow_dateinall_date:signed=Trueelse:signed=Falsetotal=len(all_date)conn.close()return{'total':total,'signed':signed}
查詢到所有簽到日期后用set去除重復項,然后判斷一下當天的日期是否在其中,如果不在其中,signed=False表示今日未簽到。簽到總數就是all_date的長度
使用了datetime庫來獲取日期信息。from datetime import date
(2)添加用戶簽到信息接口:
@app.route('/sign/<user_id>')defsign(user_id):try:update_sign(user_id)exceptExceptionase:returnjsonify({'status':0,'Exception':str(e)})returnjsonify({'status':1})defupdate_sign(user_id):now_date=date.today().strftime('%Y-%m-%d')conn=sqlite3.connect('test.sqlite')cursor=conn.cursor()cursor.execute('insertintosign(user_id,date)values(?,?)',\(user_id,now_date))conn.commit()conn.close()
四、小程序前端
wxml文件
<viewclass="sign"wx:if="{{isLogin==true}}"><imageclass="image"src='../../dist/images/sign.png'></image><viewclass="sign_info"><viewwx:if="{{signed==false}}"bindtap='sign'>點擊此處簽到</view><viewwx:if="{{signed==true}}">今日已簽到</view><view>已簽到{{total_sign}}天</view></view></view>
wxss文件
.image{float:left;width:140rpx;height:140rpx;margin-right:7%;margin-left:20%;}.sign{margin-top:10%;}.sign_info{width:100%;color:#666;font-size:43rpx;}
js文件
get_sign:function(){varthat=this;varuserId=wx.getStorageSync("userId");wx.request({url:'http://服務器公網ip:80/get_sign/'+userId,method:"GET",success:function(res){if(res.data.status==1){that.setData({total_sign:res.data.data.total,signed:res.data.data.signed,})}else{console.log("statuserror:"+res.data.Exception)}},})},sign:function(){varthat=this;varuserId=wx.getStorageSync("userId");wx.request({url:'http://服務器公網ip:80/sign/'+userId,method:"GET",success:function(res){if(res.data.status==1){that.setData({total_sign:that.data.total_sign+1,signed:true,})wx.showToast({title:'成功',icon:'success',duration:2000})}else{console.log("statuserror:"+res.data.Exception)}},})},
關于微信小程序中怎么實現一個簽到功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
標準普爾,也就是大家俗稱的標普,是一家世界權威金融分析機構,總部在美國紐約。標普專為全球資本市場提供獨立信用評級、指數服務、風險評估、投資研究和數據服務??梢哉f,標普是全球金融基礎建構的重要一員,在業內一向處于領先地位。標普評級有十個級別,分別是AAA級、AA級、A級、BBB級、 BB級、 B級、CCC級、CC級、C級和D級。標準普爾公司對于各種上市公司的股票進行信用等級劃分,主要是從最高到最低排...
(資料圖)關于雪中悍刀行講的是什么的知識大家了解嗎?以下就是小編整理的關于雪中悍刀行講的是什么的介紹,希望可以給到大家一些參考,一起來了解下吧!1、該小說講述一個關于廟堂權爭與刀劍交錯的時代,一個暗潮涌動粉墨登場的江湖。2、初始版內容:有個白狐兒臉,佩雙刀繡冬春雷,要做那天下第一;湖底有白發老魁愛吃葷;缺門牙老仆背劍匣;山上有個騎青牛的年輕師叔祖,不敢下山;有個騎大貓扛向日葵不太冷的少女殺手。3、...
工行2022年活期存款利率是0.3%。銀行的活期利息一般是一 個季度結算一 次, 一年結算4次。 活期每季結息一次,分別是3、6、9、12月的20號左右結息,按當日掛牌利率結算?;钇谑羌径饶┑?0號為結息日,結算利息第二天才會轉賬,即每季度末21日轉賬至銀行賬戶?;钇诶创婵罱痤~、存款天數、存款日利率計算。但是銀行存款的率一般是年利率,因此在結算活期利息的時候需要轉換成日利率再計算。粗,銀行規定...