Number.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <?php
  2. namespace app\admin\controller\card;
  3. use app\admin\controller\Admin;
  4. /**
  5. * 发卡
  6. */
  7. class Number extends Admin{
  8. protected $CardNumber = null;
  9. protected function _initialize(){
  10. parent::_initialize();
  11. $this->CardNumber = model('card.Number');
  12. }
  13. public function index(){
  14. $this->assign('meta_title','卡号管理');
  15. $maxid = $this->CardNumber->max('id');
  16. $this->assign('maxid',$maxid);
  17. return $this->fetch();
  18. }
  19. public function load(){
  20. $page = input('get.page');
  21. $limit = input('get.limit');
  22. $where = [];
  23. $is_bind = input('get.is_bind');
  24. if ($is_bind === 0) {
  25. $where['bind_time'] = 0;
  26. }else if($is_bind == 1){
  27. $where['bind_time'] = ['neq',0];
  28. }
  29. $no = input('param.no');
  30. if (!empty($no)) {
  31. $where['no'] = $no;
  32. }
  33. $search = input('get.search');
  34. if (!empty($search)) {
  35. $where['c.cname|c.id'] = ['like','%'.$search.'%'];
  36. }
  37. $start_id = input('get.start_id');
  38. $end_id = input('get.end_id');
  39. if (!empty($start_id) ) {
  40. if (empty($end_id)) {
  41. $where['cn.id'] = ['egt',$start_id];
  42. }else{
  43. $where['cn.id'] = ['between',[$start_id,$end_id]];
  44. }
  45. }else if (!empty($end_id)) {
  46. $where['cn.id'] = ['elt',$end_id];
  47. }
  48. $list = $this->CardNumber->field('cn.*')
  49. ->alias('cn')
  50. ->join('Customer c','c.id = cn.customer_id','left')
  51. ->where($where)->order('cn.id desc')->paginate($limit,false,['page'=>$page]);
  52. $data = [];
  53. foreach ($list as $key => $value) {
  54. $data[$key]['id'] = $value['id'];
  55. $data[$key]['no'] = $value['no']."\t";
  56. $data[$key]['secret'] = $value['secret'];
  57. $data[$key]['denomination'] = $value['denomination'];
  58. $data[$key]['balance'] = $value['balance'];
  59. if (!empty($value['expire_start_time'])) {
  60. $data[$key]['expire_start_time'] = date('Y-m-d',$value['expire_start_time']);
  61. }else{
  62. $data[$key]['expire_start_time'] = '';
  63. }
  64. if (!empty($value['expire_end_time'])) {
  65. $data[$key]['expire_end_time'] = date('Y-m-d',$value['expire_end_time']);
  66. }else{
  67. $data[$key]['expire_end_time'] = '';
  68. }
  69. if (!empty($value['sale_time'])) {
  70. $data[$key]['sale_time'] = date('Y-m-d H:i:s',$value['sale_time']);
  71. }else{
  72. $data[$key]['sale_time'] = '';
  73. }
  74. if (!empty($value['bind_time'])) {
  75. $data[$key]['bind_time'] = date('Y-m-d H:i:s',$value['bind_time']);
  76. }else{
  77. $data[$key]['bind_time'] = '';
  78. }
  79. $data[$key]['state'] = $value['state'];
  80. $data[$key]['create_time'] = $value['create_time'];
  81. $customer = $value['customer'];
  82. if ($customer) {
  83. $data[$key]['customer'] = $customer['cname'].'['.$customer['id'].']';
  84. }else{
  85. $data[$key]['customer'] = '';
  86. }
  87. $goods_type = $value['goods_type'];
  88. if ($goods_type) {
  89. $goods_type_str = '';
  90. foreach ($goods_type as $k => $val) {
  91. $goods_type_str .= '【'.$val['cname'].'】';
  92. }
  93. $data[$key]['goods_type'] = $goods_type_str;
  94. }else{
  95. $data[$key]['goods_type'] = '全品类';
  96. }
  97. $store_type = $value['store_type'];
  98. if ($store_type) {
  99. $store_type_str = '';
  100. foreach ($store_type as $k => $val) {
  101. $store_type_str .= '【'.$val['cname'].'】';
  102. }
  103. $data[$key]['store_type'] = $store_type_str;
  104. }else{
  105. $data[$key]['store_type'] = '全品类';
  106. }
  107. $url = "https://mall-h5.jucai.gov.cn/member/bind_card?card_no=".$value['no']."&card_pwd=".$value['secret'];
  108. $data[$key]['qrcode'] = createqrcode($url);
  109. }
  110. $this->output(0,'获取成功',$data,$list->total());
  111. }
  112. public function state(){
  113. if($this->request->isPost()){
  114. $id = input('post.id');
  115. $number = $this->CardNumber->where(['id'=>$id])->find();
  116. if (!$number) {
  117. $this->output(1,'参数错误');
  118. }
  119. $state = input('post.state');
  120. $number->state = $state == 'true'?1:0;
  121. $result = $number->save();
  122. if (!$result) {
  123. $this->output(1,'保存失败');
  124. }
  125. $this->output(0,'保存成功');
  126. }
  127. }
  128. }