WeMall微信商城源码插件Coupon代金券代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考
 
AdminController.class.php

  1. <?php
  2. namespace Addons\Coupon\Controller;
  3.  
  4. class AdminController extends InitController
  5. {
  6. public function index()
  7. {
  8. $num = 25;
  9. $p = I("get.page") ? I("get.page") : 1;
  10.  
  11. $couponModel = D(’Addons://Coupon/AddonCouponMenu’);
  12. $coupon = $couponModel->getPageConditionOrder($p, $num, "id desc");
  13. $this->assign("couponList", $coupon);// 赋值数据集
  14.  
  15. $count = $couponModel->getCount();// 查询满足要求的总记录数
  16. $Page = new \Think\Page($count, $num);// 实例化分页类 传入总记录数和每页显示的记录数
  17. $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>");
  18. $show = $Page->show();// 分页显示输出
  19. $this->assign(’page’, $show);// 赋值分页输出
  20.  
  21. $this->display(); // 输出模板
  22. }
  23.  
  24. public function add()
  25. {
  26. if (IS_POST) {
  27. if (!I("post.name")) {
  28. return;
  29. }
  30.  
  31. $data = I("post.");
  32. $data[’last_time’] = I(’post.last_time’, ’’, strtotime’);
  33. $coupon_id = D(’Addons://Coupon/AddonCouponMenu’)->addCouponMenu($data);
  34.  
  35. isset($coupon_id) ? $this->success(’添加成功’, Admin/Admin/index/addon/Coupon’) : $this->error(’添加失败’, u_addons("Coupon://Admin/Admin/index"));
  36. } else {
  37. $this->display(); // 输出模板
  38. }
  39. }
  40.  
  41. public function detail()
  42. {
  43. $cdata[’coupon_menu_id’] = I(’get.id’);
  44. $m = M(’AddonCoupon’);
  45. $count = $m->where($cdata)->count(); // 查询满足要求的总记录数
  46. $Page = new \Think\Page ($count, 15); // 实例化分页类 传入总记录数和每页显示的记录数
  47. $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>");
  48. $show = $Page->show(); // 分页显示输出
  49. $detail = $m->where($cdata)->limit($Page->firstRow . ’,’ . $Page->listRows)->select();
  50.  
  51. $this->assign("page", $show); // 赋值分页输出
  52. $this->assign(’coupon’, $detail);
  53. $this->display();
  54. }
  55.  
  56. public function export()
  57. {
  58.  
  59. }
  60.  
  61. public function del()
  62. {
  63. $cdata[’coupon_menu_id’] = $data[’id’] = I(’get.id’);
  64. $c = M(’AddonCouponMenu’)->where($data)->delete();
  65. $m = M(’AddonCoupon’)->where($cdata)->delete();
  66. if ($c != false && $m != false) {
  67. $this->success(’删除成功’, Admin/Admin/index/addon/Coupon’);
  68. } else {
  69. $this->error(’操作失败’, Admin/Admin/index/addon/Coupon’);
  70. }
  71. }
  72.  
  73. public function detail_del()
  74. {
  75. $cdata[’id’] = I(’get.id’);
  76. $m = M(’AddonCoupon’)->where($cdata)->delete();
  77. if ($m != false) {
  78. $this->success(’删除成功’, Admin/Admin/index/addon/Coupon’);
  79. } else {
  80. $this->error(’操作失败’, Admin/Admin/index/addon/Coupon’);
  81. }
  82. }
  83. }

  

AddonCouponMenuModel.class.php

  1. <?php
  2. namespace Addons\Coupon\Model;
  3.  
  4. use Think\Model\RelationModel;
  5.  
  6. class AddonCouponMenuModel extends RelationModel
  7. {
  8. protected $_link = array();
  9.  
  10. public function getCount()
  11. {
  12. $count = $this->count();
  13. return $count;
  14. }
  15.  
  16. public function getPageConditionOrder($p = 1, $num = 1, $order)
  17. {
  18. // 进行分页数据查询 注意page方法的参数的前面部分是当前的页数使用 $_GET[p]获取
  19. $orderList = $this->page($p . ’,’ . $num . ’’)->order($order)->select();
  20. return $orderList;
  21. }
  22.  
  23. public function addCouponMenu($data)
  24. {
  25. $data[’ctime’] = time();
  26. $number = $data[’num’] = intval($data[’num’]);
  27. $data[’coupon_menu_id’] = $this->add($data);
  28.  
  29. for ($i = 0; $i < $number; $i++) {
  30. $data[’code’] = rand_code(6);
  31. $code = M(’AddonCoupon’)->where(array(’code => $data[’code’]))->find();
  32. if (!isset($code)) {
  33. $coupon_id = M(’AddonCoupon’)->add($data);
  34. } else {
  35. $number = $number + 1;
  36. }
  37. }
  38. return $coupon_id;
  39. }
  40. }

  

 Admin_detail.html

  1. <section class="content-header">
  2. <h1>
  3. 优惠券管理
  4. <small></small>
  5. </h1>
  6. </section>
  7.  
  8. <!-- Main content -->
  9. <section class="content">
  10. <div class="row">
  11. <!-- /.col -->
  12. <div class="col-md-12">
  13. <div class="box box-danger">
  14. <div class="box-header with-border">
  15. <h3 class="box-title">优惠券管理</h3>
  16. <!-- /.box-tools -->
  17. </div>
  18. <!-- /.box-header -->
  19. <div class="box-body no-padding">
  20. <div class="mailbox-controls">
  21. <div class="btn-group">
  22. <a href="{:u_addons(\’Coupon://Admin/Admin/index\’)}" class="btn btn-danger ">
  23. 返回优惠券列表页
  24. </a>
  25. </div>
  26. <!-- /.btn-group -->
  27. </div>
  28. <div class="table-responsive" style="overflow-x: visible;">
  29. <table class="table table-bordered table-hover">
  30. <tbody>
  31. <tr>
  32. <!--<th class="hidden-xs">-->
  33. <!--<label><input onchange="checkAll()" type="checkbox" value=""></label>-->
  34. <!--</th>-->
  35. <th>ID</th>
  36. <th>优惠码</th>
  37. <th>金额</th>
  38. <th>状态</th>
  39. <th>截止时间</th>
  40. <th>操作</th>
  41. </tr>
  42. <volist name="coupon" id="coupon">
  43. <tr>
  44. <!--<td class="hidden-xs">-->
  45. <!--<label><input name="checkbox" class="check" type="checkbox"-->
  46. <!--value="{$coupon.id}"></label>-->
  47. <!--</td>-->
  48. <td>
  49. {$coupon.id}
  50. </td>
  51. <td>
  52. {$coupon.code}
  53. </td>
  54. <td>
  55. {$coupon.price}
  56. </td>
  57. <td>
  58. {$coupon.status}
  59. </td>
  60. <td>
  61. {:date(’Y-m-d H:i:s’,$coupon[’last_time’])}
  62. </td>
  63. <td class="table-action"><a
  64. href="{:u_addons(\’Coupon://Admin/Admin/detail_del\’,array(’id’=>$coupon[’id’]))}">删除</a></td>
  65. </tr>
  66. </volist>
  67. </tbody>
  68. </table>
  69. <div class="box-footer no-padding">
  70. <div class="mailbox-controls">
  71. <!--<div class="btn-group">-->
  72. <!--<button type="button" class="btn btn-danger"-->
  73. <!--onclick="batchUrl(’{:U(\’Admin/coupon/delcoupon\’)}’)">全部删除-->
  74. <!--</button>-->
  75. <!--</div>-->
  76. <div class="pull-right" style="margin-bottom: 6px">
  77. {$page}
  78. <!-- /.btn-group -->
  79. </div>
  80. </div>
  81. </div>
  82. </div>
  83. <!-- /.mail-box-messages -->
  84. </div>
  85. </div>
  86. <!-- /. box -->
  87. </div>
  88. <!-- /.col -->
  89. </div>
  90. </section>

 代码来源: www.wemallshop.com


 

WeMall微信商城源码插件代金券部分代码的更多相关文章

  1. WeMall微信商城源码插件会员卡代码详情

    WeMall微信商城源码插件会员卡代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考 Index_index.html <html> <head> ...

  2. WeMall微信商城源码插件大转盘代码详情

    WeMall微信商城源码插件大转盘代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考 代码详情地址:http://addon.wemallshop.com/Product/ ...

  3. WeMall微信商城源码活动报名插件代码详情

    WeMall微信商城源码插件活动报名代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考,商家可自由设置报名项目,活动时间,报名内容 代码详情地址:http://addon. ...

  4. wemall app商城源码Android之支付宝通知处理类

    wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之处 ...

  5. wemall app商城源码机器人检测

    wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之 ...

  6. wemall app商城源码Android之支付宝接口公用函数

    wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之  ...

  7. wemall app商城源码Android数据的SharedPreferences储存方式

    wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android数据 ...

  8. wemall app商城源码Android之ListView异步加载网络图片(优化缓存机制)

    wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之L ...

  9. wemall app商城源码中android按钮的三种响应事件

    wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码中android按 ...

随机推荐

  1. Bootstrap入门(十三)组件7:导航条

    Bootstrap入门(十三)组件7:导航条 1.默认样式的导航条 2.嵌入表单和按钮 3.嵌入文本和非导航的链接 4.组件排列和下拉菜单 5.固定在顶部/底部 6.反色的导航条 7.路径导航 首先先 ...

  2. FP Tree算法原理总结

    在Apriori算法原理总结中,我们对Apriori算法的原理做了总结.作为一个挖掘频繁项集的算法,Apriori算法需要多次扫描数据,I/O是很大的瓶颈.为了解决这个问题,FP Tree算法(也称F ...

  3. Ubuntu下java环境的搭建

    喜欢捣鼓计算机相关的,然后大二的时候就想着用linux,于是当时就装了个ubuntu,还想着把java环境搭建进去,但当时由于"意志不坚定"后来就没用linux了,知道最近突然想在 ...

  4. 关于C++的const对象

    对于const类对象,类指针, 类引用, 只能调用类的const成员函数. 1.const成员函数不允许被修改它所在对象的任何一个成员变量. 2.const成员函数能访问对象的const成员, 而其他 ...

  5. 关于小程序swiper不显示图的那些事

    还有几天快过年了,在这里提前祝大家新年快乐! 今天没事研究了一下小程序,想整个轮播图玩玩,然后开始看看文档https://mp.weixin.qq.com/debug/wxadoc/dev/compo ...

  6. Vue.js 系列教程 3:Vue-cli,生命周期钩子

    原文:intro-to-vue-3-vue-cli-lifecycle-hooks 译者:nzbin 这是 JavaScript 框架 Vue.js 五篇教程的第三部分.在这一部分,我们将学习 Vue ...

  7. vb.net 总结

    vb.net 可以说是vb6.0的升级版,在语法结构上与vb很相似.那么,我们就来说一下它们之间有什么不同的地方吧. vb6.0          vb是我们入门的一个非常好的编程软件,它可以实现软件 ...

  8. uml系列(七)——交互图

    交互图是uml中描述系统中的对象如何进行交互动作的 . 废话不多说,还是来张图: 概念          交互图,主要描述的是系统中的一组对象的消息的传递的,为对象间的交互定义了一个可视的表示方法. ...

  9. headfirst设计模式(2)—观察者模式

    定义 观察者模式(有时又被称为发布(publish)-订阅(Subscribe)模式,在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知.这通常透过呼叫各观察 ...

  10. Javascript—①你好,世界!

    新手Perfect教程之Javascript教程①-你好,世界! 前言:不知道Javascript是什么东东的自行度娘或google一下 Javascript在html<head>和< ...