签到

仿签到功能
开发工具:MyEclipse、MySQL
开发语言:javabean+servlet+jsp、layui 、bootstrap
图如下:
在这里插入图片描述
在这里插入图片描述
jsp代码如下:
//点击签到按钮

	function signIn(){
		if (daytime==undefined) {
			var memberID=${SESSION_USERs.memberID};
			var remarks="签到";
			
			var date = new Date();
		    var seperator1 = "-";
		    var seperator2 = ":";
		    var month = date.getMonth() + 1;
		    var strDate = date.getDate();
		    if (month >= 1 && month <= 9) {
		        month = "0" + month;
		    }
		    if (strDate >= 0 && strDate <= 9) {
		        strDate = "0" + strDate;
		    }
		    
		    var currentdates = date.getFullYear() + seperator1 + month + seperator1 + strDate
		            + " " + date.getHours() + seperator2 + date.getMinutes()
		            + seperator2 + date.getSeconds();
		    
		    var handleTime=currentdates;
		    if (memberID > 0 && remarks != undefined && remarks != ""&& handleTime != undefined && handleTime != "") {
               
                var layerIndex = layer.load(0);
                $.post("${ctx}/servlet/integralServlet?fun=doInsertIntegral", {
                    memberID: memberID,
                    remarks: remarks,
                    handleTime:handleTime
                }, function (message) {
                	layer.close(layerIndex);
                	layer.msg("签到成功!", { icon: 0, skin: "layui-layer-molv" });
                   
                });
                
            }
            else {
                layer.alert('请填写完整', { icon: 0, title: '提示' });
            }
		} else {
			today = daytime;
			today = today.substring(0,10);
			if (today==currentdate) {
				layer.msg("今天已签到!", { icon: 0, skin: "layui-layer-molv" });
			} else {
				var memberID=${SESSION_USERs.memberID};
				var remarks="签到";
				
				var date = new Date();
			    var seperator1 = "-";
			    var seperator2 = ":";
			    var month = date.getMonth() + 1;
			    var strDate = date.getDate();
			    if (month >= 1 && month <= 9) {
			        month = "0" + month;
			    }
			    if (strDate >= 0 && strDate <= 9) {
			        strDate = "0" + strDate;
			    }
			    
			    var currentdates = date.getFullYear() + seperator1 + month + seperator1 + strDate
			            + " " + date.getHours() + seperator2 + date.getMinutes()
			            + seperator2 + date.getSeconds();
			    
			    var handleTime=currentdates;
			    if (memberID > 0 && remarks != undefined && remarks != ""&& handleTime != undefined && handleTime != "") {
	               
	                var layerIndex = layer.load(0);
	                $.post("${ctx}/servlet/integralServlet?fun=doInsertIntegral", {
	                    memberID: memberID,
	                    remarks: remarks,
	                    handleTime:handleTime
	                }, function (message) {
	                	layer.close(layerIndex);
	                	layer.msg("今天已签到!", { icon: 0, skin: "layui-layer-molv" });
	                   
	                });
	                
	            }
	            else {
	                layer.alert('请填写完整', { icon: 0, title: '提示' });
	            }
	         }
		}
	    
	}
	
	//签到日历
	function ss(){
		var memberID=${SESSION_USERs.memberID};
		$.getJSON("${ctx}/servlet/integralServlet?fun=doPersonSelect&memberID=" + memberID+"&YM="+YM, function (data) {
			
			console.log(data);
			for(var i=0;i<data.length;i++){
				daytime=ChangeDateFormat(data[i].handleTime);
			    var HandleTime=data[i].handleTime.date;
			    HandleTime=HandleTime-1;
			    arrdate.push(HandleTime);
			    
			}
			
			var signFun = function() {
		        var dateArray=arrdate;// 假设已经签到的
		        
		        var $dateBox = $("#js-qiandao-list"),//日历
		            $currentDate = $(".current-date"),
		            $qiandaoBnt = $("#js-just-qiandao"),//被调用的那个id(签到按钮)
		            _html = '',
		            _handle = true,
		            myDate = new Date();
		        $currentDate.text(myDate.getFullYear() + '年' + parseInt(myDate.getMonth() + 1) + '月' + myDate.getDate() + '日');
		
		        var monthFirst = new Date(myDate.getFullYear(), parseInt(myDate.getMonth()), 1).getDay();
		
		        var d = new Date(myDate.getFullYear(), parseInt(myDate.getMonth() + 1), 0);
		        var totalDay = d.getDate(); //获取当前月的天数
		
		        for (var i = 0; i < 42; i++) {
		            _html += ' <li><div class="qiandao-icon"></div></li>';
		        }
		        $dateBox.html(_html); //生成日历网格
		
		        var $dateLi = $dateBox.find("li");
		        for (var i = 0; i < totalDay; i++) {
		            $dateLi.eq(i + monthFirst).addClass("date" + parseInt(i + 1));
		            for (var j = 0; j < dateArray.length; j++) {
		                if (i == dateArray[j]) {
		                    $dateLi.eq(i + monthFirst).addClass("qiandao");
		                }
		            }
		        } //生成当月的日历且含已签到
		
		        $(".date" + myDate.getDate()).addClass('able-qiandao');
		
		        $dateBox.on("click", "li", function() {
		                if ($(this).hasClass('able-qiandao') && _handle) {
		                    $(this).addClass('qiandao');
		                    qiandaoFun();
		                }
		            }); //签到
		
		        $qiandaoBnt.on("click", function() {
		            if (_handle) {
		            	if (daytime!=undefined) {
							var daytimess = daytime.substring(0,10);
			            	if(daytimess==currentdate){
			            		qiandaoFun();
			            		layer.msg("今天已签到!", { icon: 0, skin: "layui-layer-molv" });
			            	}else{
			            		signIn();
			            		qiandaoFun();
			            	}
			            		
						} else {
							signIn();
			            	qiandaoFun();
						}
			        }
			          
		        }); //签到
				
				if (daytime!=undefined) {
					var hh=daytime.substring(0,10);
					if(hh==currentdate){
						$qiandaoBnt.addClass('actived');
						_handle = false;
					}
							
				} else {

				}
				
		        function qiandaoFun() {
		            $qiandaoBnt.addClass('actived');
		            openLayer("qiandao-active", qianDao);
		            _handle = false;
		        }
		
		        function qianDao() {
		            $(".date" + myDate.getDate()).addClass('qiandao');//签到的就画线
		        }
		    }();
		
		    function openLayer(a, Fun) {
		        $('.' + a).fadeIn(Fun);
		    } //打开弹窗
		
		    var closeLayer = function() {
		            $("body").on("click", ".close-qiandao-layer", function() {
		                $(this).parents(".qiandao-layer").fadeOut();
		            });
		        }(); //关闭弹窗
		
		    $("#js-qiandao-history").on("click", function() {
		        openLayer("qiandao-history-layer", myFun);
		
		        function myFun() {
		            console.log(1);
		        } //打开弹窗返回函数
		    });
		    
		});
		
	}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值