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按 ...
随机推荐
- doubango(6)--Doubango协议栈中对RTP的管理
相关数据结构 1. tsip_dialog_invite_t 描述: 一个invite_dialog代表了一个invite期间的所有的信令流程,因此,它首先是一个普遍的dialog的特殊化结构, ...
- Eclipse格式化代码换行、删除空行
Java代码 Window-preference-Java-Code Style-Formatter|Edit...-Line Wrapping|Maximum line width: 修改一行最大长 ...
- js冒泡排序及计算其运行时间
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 穷举 迭代 while
for循环拥有两类: 穷举: 把所有可能的情况都走一遍,使用if条件筛选出来满足条件的情况. 例:1.单位给发了一张150元购物卡,拿着到超市买三类洗化用品.洗发水15元,香皂2元,牙刷5元.求刚好花 ...
- Array数组常用的5个方法
es6 时代来临了,不知道es5 你熟知了吗? 在此介绍一个我常用到的5个方法,万恶的ie9一下并不支持,需要做兼容慎用 indexOf indexOf()方法返回在该数组中第一个找到的元素位置,如果 ...
- 关于bootstrap 在MVC里 模态框里加载iframe页面做编辑的时候
前台代码 <div class="modal fade" id="myModal" tabindex="-1" role=" ...
- 关于sleep()和interrupt()及主线程和线程
看代码 public class TestSleep { public static void main(String args[]) throws InterruptedException{ Thr ...
- self、 superclass 、 super的区别
self. superclass . super self : 当前方法的调用者 class:获取方法调用者的类对象 superclass:获取方法调用者的父类对象 super:不是一个指针,编译指示 ...
- 封装keyframes插件
模仿jquery,使用简单,自动添加浏览器前缀 var keyframes = new SHBKerframes(); keyframes.define([{ name:'myAnimate', 0% ...
- [JAVA] - Java OutOfMemoryError分类
Java OutOfMemoryError一般常遇到的分为两类,分别提示: "Java heap space" 和 "PermGen space",前面的是指j ...