WeMall微信商城源码插件代金券部分代码
WeMall微信商城源码插件Coupon代金券代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考
AdminController.class.php
<?php
namespace Addons\Coupon\Controller;
class AdminController extends InitController
{
public function index()
{
$num = 25;
$p = I("get.page") ? I("get.page") : 1;
$couponModel = D(’Addons://Coupon/AddonCouponMenu’);
$coupon = $couponModel->getPageConditionOrder($p, $num, "id desc");
$this->assign("couponList", $coupon);// 赋值数据集
$count = $couponModel->getCount();// 查询满足要求的总记录数
$Page = new \Think\Page($count, $num);// 实例化分页类 传入总记录数和每页显示的记录数
$Page->setConfig(’theme’, "<ul class=’pagination no-margin pull-right’></li><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% 页</a></ul>");
$show = $Page->show();// 分页显示输出
$this->assign(’page’, $show);// 赋值分页输出
$this->display(); // 输出模板
}
public function add()
{
if (IS_POST) {
if (!I("post.name")) {
return;
}
$data = I("post.");
$data[’last_time’] = I(’post.last_time’, ’’, ’strtotime’);
$coupon_id = D(’Addons://Coupon/AddonCouponMenu’)->addCouponMenu($data);
isset($coupon_id) ? $this->success(’添加成功’, ’Admin/Admin/index/addon/Coupon’) : $this->error(’添加失败’, u_addons("Coupon://Admin/Admin/index"));
} else {
$this->display(); // 输出模板
}
}
public function detail()
{
$cdata[’coupon_menu_id’] = I(’get.id’);
$m = M(’AddonCoupon’);
$count = $m->where($cdata)->count(); // 查询满足要求的总记录数
$Page = new \Think\Page ($count, 15); // 实例化分页类 传入总记录数和每页显示的记录数
$Page->setConfig(’theme’, "<ul class=’pagination no-margin pull-right’></li><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% 页</a></ul>");
$show = $Page->show(); // 分页显示输出
$detail = $m->where($cdata)->limit($Page->firstRow . ’,’ . $Page->listRows)->select();
$this->assign("page", $show); // 赋值分页输出
$this->assign(’coupon’, $detail);
$this->display();
}
public function export()
{
}
public function del()
{
$cdata[’coupon_menu_id’] = $data[’id’] = I(’get.id’);
$c = M(’AddonCouponMenu’)->where($data)->delete();
$m = M(’AddonCoupon’)->where($cdata)->delete();
if ($c != false && $m != false) {
$this->success(’删除成功’, ’Admin/Admin/index/addon/Coupon’);
} else {
$this->error(’操作失败’, ’Admin/Admin/index/addon/Coupon’);
}
}
public function detail_del()
{
$cdata[’id’] = I(’get.id’);
$m = M(’AddonCoupon’)->where($cdata)->delete();
if ($m != false) {
$this->success(’删除成功’, ’Admin/Admin/index/addon/Coupon’);
} else {
$this->error(’操作失败’, ’Admin/Admin/index/addon/Coupon’);
}
}
}
AddonCouponMenuModel.class.php
<?php
namespace Addons\Coupon\Model;
use Think\Model\RelationModel;
class AddonCouponMenuModel extends RelationModel
{
protected $_link = array();
public function getCount()
{
$count = $this->count();
return $count;
}
public function getPageConditionOrder($p = 1, $num = 1, $order)
{
// 进行分页数据查询 注意page方法的参数的前面部分是当前的页数使用 $_GET[p]获取
$orderList = $this->page($p . ’,’ . $num . ’’)->order($order)->select();
return $orderList;
}
public function addCouponMenu($data)
{
$data[’ctime’] = time();
$number = $data[’num’] = intval($data[’num’]);
$data[’coupon_menu_id’] = $this->add($data);
for ($i = 0; $i < $number; $i++) {
$data[’code’] = rand_code(6);
$code = M(’AddonCoupon’)->where(array(’code’ => $data[’code’]))->find();
if (!isset($code)) {
$coupon_id = M(’AddonCoupon’)->add($data);
} else {
$number = $number + 1;
}
}
return $coupon_id;
}
}
Admin_detail.html
<section class="content-header">
<h1>
优惠券管理
<small></small>
</h1>
</section>
<!-- Main content -->
<section class="content">
<div class="row">
<!-- /.col -->
<div class="col-md-12">
<div class="box box-danger">
<div class="box-header with-border">
<h3 class="box-title">优惠券管理</h3>
<!-- /.box-tools -->
</div>
<!-- /.box-header -->
<div class="box-body no-padding">
<div class="mailbox-controls">
<div class="btn-group">
<a href="{:u_addons(\’Coupon://Admin/Admin/index\’)}" class="btn btn-danger ">
返回优惠券列表页
</a>
</div>
<!-- /.btn-group -->
</div>
<div class="table-responsive" style="overflow-x: visible;">
<table class="table table-bordered table-hover">
<tbody>
<tr>
<!--<th class="hidden-xs">-->
<!--<label><input onchange="checkAll()" type="checkbox" value=""></label>-->
<!--</th>-->
<th>ID</th>
<th>优惠码</th>
<th>金额</th>
<th>状态</th>
<th>截止时间</th>
<th>操作</th>
</tr>
<volist name="coupon" id="coupon">
<tr>
<!--<td class="hidden-xs">-->
<!--<label><input name="checkbox" class="check" type="checkbox"-->
<!--value="{$coupon.id}"></label>-->
<!--</td>-->
<td>
{$coupon.id}
</td>
<td>
{$coupon.code}
</td>
<td>
{$coupon.price}
</td>
<td>
{$coupon.status}
</td>
<td>
{:date(’Y-m-d H:i:s’,$coupon[’last_time’])}
</td>
<td class="table-action"><a
href="{:u_addons(\’Coupon://Admin/Admin/detail_del\’,array(’id’=>$coupon[’id’]))}">删除</a></td>
</tr>
</volist>
</tbody>
</table>
<div class="box-footer no-padding">
<div class="mailbox-controls">
<!--<div class="btn-group">-->
<!--<button type="button" class="btn btn-danger"-->
<!--onclick="batchUrl(’{:U(\’Admin/coupon/delcoupon\’)}’)">全部删除-->
<!--</button>-->
<!--</div>-->
<div class="pull-right" style="margin-bottom: 6px">
{$page}
<!-- /.btn-group -->
</div>
</div>
</div>
</div>
<!-- /.mail-box-messages -->
</div>
</div>
<!-- /. box -->
</div>
<!-- /.col -->
</div>
</section>
代码来源: www.wemallshop.com

WeMall微信商城源码插件代金券部分代码的更多相关文章
- WeMall微信商城源码插件会员卡代码详情
WeMall微信商城源码插件会员卡代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考 Index_index.html <html> <head> ...
- WeMall微信商城源码插件大转盘代码详情
WeMall微信商城源码插件大转盘代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考 代码详情地址:http://addon.wemallshop.com/Product/ ...
- WeMall微信商城源码活动报名插件代码详情
WeMall微信商城源码插件活动报名代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考,商家可自由设置报名项目,活动时间,报名内容 代码详情地址:http://addon. ...
- wemall app商城源码Android之支付宝通知处理类
wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之处 ...
- wemall app商城源码机器人检测
wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之 ...
- wemall app商城源码Android之支付宝接口公用函数
wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之 ...
- wemall app商城源码Android数据的SharedPreferences储存方式
wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android数据 ...
- wemall app商城源码Android之ListView异步加载网络图片(优化缓存机制)
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之L ...
- wemall app商城源码中android按钮的三种响应事件
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码中android按 ...
随机推荐
- 解决xtrabackup command not found no mysqld group 问题
现象:手动执行xtrabackup没问题,环境变量检查过也没问题.放到执行计划中 会报错: sh: xtrabackup_56: command not found innobackupex: Err ...
- 解决NetStream.appendBytes直播爆音的问题解决
研究了一下Adobe家HDS的具体实现 OSMF.利用其中的一个核心方法 flash.net.NetStream.appendBytes()构建了我们自己的HTTP点直播播放框架.但今年年初发现一个问 ...
- FlashPlayer11 异步解码 Bitmap
Flash Player 11引入了一个全新的功能是异步解码位图的功能,这个功能对某些类型的Flash应用会很有效,尤其是需要加载大分辨率的位图的相册或游戏会有显著效果,使用位图图像时,可以异步解码和 ...
- 基于ASIO的协程库orchid简介
什么是orchid? orchid是一个构建于boost库基础上的C++库,类似于python下的gevent/eventlet,为用户提供基于协程的并发模型. 什么是协程: 协程,即协作式程序,其思 ...
- HDU5875
Function Time Limit: 7000/3500 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total ...
- 无限二等分[0,1]这个区间之后还剩下啥?what's left after dividing an unit interval [0,1] infinitely many times?
Dividing an unit interval \([0,1]\) into two equal subintervals by the midpoint \(\dfrac {0+1} {2}=\ ...
- Node - EJS模板应用(node+express+ejs)
准备工作: 工具:Webstorm 1. 新建一个文件夹为blogs(随意). 一个js文件app.js. 一个文件夹views,文件夹内一个index.ejs文件,文件夹asstes内style.c ...
- MongoDB学习总结(五) —— 安全认证
作为数据库软件,我们要确保数据的安全,不是谁都可以访问的,所以mongodb也像其他的数据库软件一样可以采用用户验证的方法, mongodb 3.0之前的版本提供了addUser方法向不同的数据库添加 ...
- php单例模式与工厂模式
单例模式:单例模式又称为职责模式,它用来在程序中创建一个单一功能的访问点,通俗地说就是实例化出来的对象是唯一的. 所有的单例模式至少拥有以下三种公共元素:1. 它们必须拥有一个构造函数,并且必须被标记 ...
- Weex系列二、显示图片
上次我们创建了一个简单的Weex的demo. 一.常用的类 WXSDKEngine:SDK开放的绝大多数接口都在此有声明. WXLog: 用来打印日志. WXDebugTool: weex提供的对外调 ...