WeMall WeChat mall source code sign-in plug-in Sign, used for the sign-in system of the mall, shares some of the more important codes for technicians to learn and refer to
WeMall WeChat mall source code sign-in plug-in Sign, used for the sign-in system of the mall, shares some of the more important codes , for technicians’ learning reference
AdminController.class.php<?php <?php<br />
<br>
namespace AddonsSignController;<br>
<br>
class AdminController extends InitController<br>
{<br>
<br>
<br>
Public function __construct()<br>
{<br>
parent::__construct();<br>
}<br>
<br>
Public function index()<br>
{<br>
$config = M("AddonSignConfig")->find();<br>
$this->assign("config", $config);<br>
<br>
$record = D(’Addons://Sign/AddonSignRecord’); // Instantiate the User object<br>
<br>
$count = $record->count();//Query the total number of records that meet the requirements<br>
$Page = new ThinkPage($count, 12); // Instantiate the paging class and pass in the total number of records and the number of records displayed on each page (25)<br>
$Page->setConfig('theme', "<div><ul>
<li>%FIRST%</li>
<li>%UP_PAGE%</li>
<li>%LINK_PAGE%</li>
<li>%DOWN_PAGE%</li>
<li>%END%</li>
<li><a> %HEADER% %NOW_PAGE%/% TOTAL_PAGE % page</a></li>
</ul></div>");<br>
$show = $Page->show();// Display output in paging <br>
// Perform paging data query. Note that the parameters of the limit method must use the attributes of the Page class<br>
$record = $record->limit($Page->firstRow . ’,’ . $Page->listRows)->order("id desc")->relation(true)->select();<br>
<br>
$this->assign("record", $record);//Assignment data set<br>
$this->assign(’page’, $show);// Assignment paging output<br>
<br>
$this->display();<br>
}<br>
<br>
Public function addConfig()<br>
{<br>
M("AddonSignConfig")->where(array("id" => "1"))->save($_POST);<br>
$this->success(’Modification successful’, ‘Admin/Admin/index/addon/Sign’);<br>
}<br>
}
IndexController.class.php<?php <?php<br />
namespace AddonsSignController;<br>
<br>
class IndexController extends InitController<br>
{<br>
Public $appUrl = "";<br>
Public function __construct()<br>
{<br>
parent::__construct();<br>
$this->appUrl = "http://" . I("server.HTTP_HOST");<br>
}<br>
<br>
Public function init()<br>
{<br>
return R("App/Common/init");<br>
}<br>
<br>
Public function oauthRegister($wxuser)<br>
{<br>
return R("App/Common/oauthRegister", array($wxuser));<br>
}<br>
<br>
Public function index()<br>
{<br>
<br>
$user = R("App/Public/oauthLogin");<br>
<br>
// $user = M("User")->where(array("uid" => session("userUid")))->find();<br>
$contact = M("Contact")->where(array("user_id" => $user["id"]))->find();<br>
if ($contact) {<br>
$this->assign("contact", $contact);<br>
}<br>
$config = M("Config")->find();<br>
$this->assign("config", $config);<br>
$this->assign("user", $user);<br>
<br>
$product = M("addonScore")->select();<br>
$this->assign("product", $product);<br>
$this->display();<br>
}<br>
<br>
Public function addOrder()<br>
{<br>
// $user = M("User")->where(array("uid" => session("userUid")))->find();<br>
$user = M("User")->where(array("id" => session("userId")))->find();<br>
$score = floatval($user["score"]) - floatval($_POST["score"]);<br>
If ($score >= 0) {<br>
M("User")->where(array("id" => $user["id"]))->save(array("score" => $score));<br>
else {<br>
return;<br>
}<br>
<br>
$userHas = M("Contact")->where(array("user_id" => session("userId")))->find();<br>
if ($userHas) {<br> $contact ["id"] = $userHas ["id"];<br>
$contact ["user_id"] = session("userId");<br>
$contact ["name"] = $_POST ["name"];<br>
$contact ["phone"] = $_POST ["phone"];<br>
$contact ["address"] = $_POST ["address"];<br>
M("Contact")->save($contact);<br>
} else {<br>
$contact ["user_id"] = session("userId");<br>
$contact ["name"] = $_POST ["name"];<br>
$contact ["city"] = "";<br>
$contact ["area"] = "";<br>
$contact ["phone"] = $_POST ["phone"];<br>
$contact ["address"] = $_POST ["address"];<br>
M("Contact")->add($contact);<br>
}<br>
$userHas = M("Contact")->where(array("user_id" => session("userId")))->find();<br>
$contact_id = $userHas["id"];<br>
<br>
$data ["user_id"] = session("userId");<br>
$data ["contact_id"] = $contact_id;<br>
$data ["orderid"] = date("ymdhis") . mt_rand(1, 9);<br>
$data ["totalscore"] = $_POST["score"];<br>
$data ["status"] = 0;<br>
$data ["note"] = $_POST ["note"];<br>
$data ["time"] = date("Y-m-d H:i:s");<br>
$data ["score_id"] = $_POST ["id"];<br>
$result = M("AddonScoreOrder")->add($data);<br>
if ($result) {<br>
$this->ajaxReturn($result);<br>
}<br>
}<br>
public function sign(){<br>
$today = date("Y-m-d");<br>
$where["time"] = array("like", $today . "%");<br>
$where["user_id"] = session("userId");<br>
$record = D("Addons://Sign/AddonSignRecord")->where($where)->find();<br>
if ($record) {<br>
$this->ajaxReturn(array("status" => 0));<br>
return;<br>
}<br>
<br>
$user = M("User")->where(array("id" => session("userId")))->find();<br>
<br>
$count = 0;<br>
do{<br>
$count++;<br>
$yesterday = date("Y-m-d", strtotime("-$count day"));<br>
$where["time"] = array("like", $yesterday . "%");<br> $record = D("AddonSignRecord")->where($where)->find();<br>
} while ($record);<br>
$continue_sign = $count-1;<br>
<br>
$config = M("AddonSignConfig")->find();<br>
if ($config) {<br>
$addScore = floatval($continue_sign) * floatval($config["continue_sign"]) + floatval($config["first_sign"]);<br>
M("AddonSignRecord")->add(array("user_id" => session("userId"), "score" => $addScore));<br>
<br>
$score = floatval($user["score"]) + $addScore;<br>
M("User")->where(array("id" => $user["id"]))->save(array("score" => $score));<br>
$this->ajaxReturn(array("status" => 1, "score" => $addScore));<br>
}<br>
}<br>
<br>
}
Index_index.htmlnbsp;html><br>
<br>
<br>
<meta>
<br>
<meta>
<br>
<meta>
<br>
<title>签到系统</title>
<br>
<meta>
<br>
<meta>
<br>
<!-- apple devices fullscreen --><br>
<meta>
<br>
<meta>
<br>
<link>
<br>
<link>
<br>
<link>
<br>
<link>
<br>
<link>
<br>
<br>
<br>
<div>
<br>
<div>
<br>
<div>
<br>
<div>
<br>
<div><img alt="The main source code of WeMall WeChat mall check-in plug-in Sign" ></div>
<br>
<div>
<br>
<span>{$user.username}</span><br>
<span>会员ID: {$user.id}</span><br>
</div>
<br>
</div>
<br>
<div>
<br>
<a>积分<span>{$user.score}</span></a><br>
<a><span><span></span>
style="color: #fff;background-color: transparent;border-color: #fff;">今日签到</span></a><br>
</div>
<br>
</div>
<br>
</div>
<br>
<div>
<br>
<div>
<br>
<ul>
<br>
<volist><br>
<li>
<br>
<div>
<br>
<div>
<br>
<h5>{$product.name}</h5>
<br>
</div>
<br>
<div>
<br>
<img alt="The main source code of WeMall WeChat mall check-in plug-in Sign" ><br>
</div>
<br>
<div>
<br>
<div>积分:<b>{$product.score}</b>
</div>
<br>
<div>
<a></a>
onclick="doCart(this , ’{$product.score}’ , ’{$product.id}’)" style="color: black;">立即兑换<br>
</div>
<br>
</div>
<br>
</div>
<br>
</li>
<br>
</volist><br>
</ul>
<br>
</div>
<br>
</div>
<br>
<div></div>
<br>
<div></div>
style="left: 0px; bottom: 0px; z-index: 3000; position: fixed; display: none;width: 100%;"><br>
<div>
<br>
<div>
<br>
<div><img alt="The main source code of WeMall WeChat mall check-in plug-in Sign" ></div>
<br>
</div>
<br>
<div>
<br>
<ul>
<br>
<li>
<br>
<div>姓名</div>
<br>
<div>
<br>
<input><br>
</div>
<br>
</li>
<br>
<li>
<br>
<div>手机</div>
<br>
<div>
<br>
<input><br>
</div>
<br>
</li>
<br>
<li>
<br>
<div>地址</div>
<br>
<div>
<br>
<input><br>
</div>
<br>
</li>
<br>
<li>
<br>
<div>备注</div>
<br>
<div>
<br>
<input><br>
</div>
<br>
</li>
<br>
</ul>
<br>
</div>
<br>
<br>
<div>
<br>
<a></a>
style="display: none;"><br>
<br>
<div>
<br>
<input>
style="display: none; width: 100%;"><br>
<a></a>
onclick="submitOrder()">提交<br>
</div>
<br>
</div>
<br>
<br>
</div>
<br>
</div>
<br>
<br>
<div>
<br>
<div>温馨提示</div>
<br>
<div></div>
<br>
<div><button>知道了</button></div>
<br>
<div></div>
<br>
</div>
<br>
<br>
<script></script><br>
<script></script><br>
<script><br />
var id = 0;<br />
var score = 0;<br />
function hidePop(){<br />
$("#join_box").hide();<br />
$("#cover2").hide();<br />
}<br />
function showPop(){<br />
$("#join_box").show();<br />
$("#cover2").show();<br />
}<br />
function doCart(obj , scoreIn ,idIn){<br />
if(parseFloat(scoreIn) > parseFloat($(’#myscore’).html())){<br />
alert("积分不足!");<br />
return;<br />
}<br />
id = idIn;<br />
score = scoreIn;<br />
showPop();<br />
}<br />
<br />
var signFlag = true;<br />
function signIn(obj){<br />
$.ajax({<br />
type: "post",<br />
url: "{:u_addons(’Sign://Index/sign’)}",<br />
data: {<br />
<br />
},<br />
success: function (data) {<br />
if(data){<br />
var json = eval(data)<br />
$("#alert").show();<br />
if (typeof json.score != "undefined") {<br />
$("#alert_text").html("恭喜您获得"+json.score+"积分");<br />
}else{<br />
$("#alert_text").html("对不起,您已签到!");<br />
}<br />
<br />
}<br />
},<br />
beforeSend: function () {<br />
<br />
},<br />
complete: function () {<br />
}<br />
<br />
});<br />
<br />
// $("#alert").show();<br />
}<br />
function hideAlert(){<br />
$("#alert").hide();<br />
location.reload();<br />
}<br />
var submitFlag = true;<br />
function submitOrder(){<br />
if (submitFlag == false) {<br />
alert("请不要重复操作!");<br />
return;<br />
};<br />
var name = $(’#name’).val();<br />
var phone = $(’#phone’).val();<br />
var address = $(’#address’).val();<br />
var note = $(’#note’).val();<br />
<br />
if (name.length == 0 || phone.length == 0 || address.length == 0) {<br />
alert("请核对输入的信息!");<br />
return;<br />
};<br />
submitFlag = false;<br />
<br />
$.ajax({<br />
type: "post",<br />
url: "{:u_addons(’Sign://Index/addOrder’)}",<br />
data: {<br />
name: name,<br />
phone: phone,<br />
id: id,<br />
score: score,<br />
address: address,<br />
note: note<br />
},<br />
success: function (data) {<br />
if(data){<br />
hidePop();<br />
alert("商品兑换成功!");<br />
location.reload();<br />
}<br />
},<br />
beforeSend: function () {<br />
<br />
},<br />
complete: function () {<br />
}<br />
<br />
});<br />
}<br />
</script><br>
<br>
Admin_index.html
<section><br>
<h1>
<br>
Sign-in management<br>
<small></small><br>
</h1>
<br>
</section><br>
<!-- Main content --><br>
<section><br>
<div>
<br>
<!-- /.col --><br>
<div>
<br>
Check-in Management
<div>
<br><div>
<br> Sign in setting 设
<h3></h3>
<br><!-- /.box-tools --> Sign -in records 记
<br>
<div> Sign in setting>-> <br>
<div>
<form action="%7B:%20u_addons%20('sign://%20adimin/admin/addconfig's)%7D" id="myform" method="post"></form>
onsubmit="return false;" class="form-horizontal"><!-- <h3>
</h3>
送 The first sign -in gift points <br /><br />
<p>
<br />
</div>
value="{$config.continue_sign}" name="continue_sign" type="text"><br />
<div class="form-group">
--><br>
<div>
onclick="myFormSubmit(’{:u_addons(’Sign://Admin/Admin/index’)}’)"<br>
<br>
<div> Sign-in records>-> <br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div></section>