RechargeController.php 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: PHP
  5. * Date: 2016/9/28
  6. * Time: 9:29
  7. */
  8. class RechargeController extends AdminController {
  9. public function actionIndex() {
  10. $status_option = Recharge::$status_option;
  11. $status = CommonFn::getComboboxData($status_option, 100, true, 100);
  12. // 代金券信息
  13. $criteria_main = new EMongoCriteria();
  14. $criteria_main->status('==', 1);
  15. $conpon_main = Coupon::model()->findAll($criteria_main);
  16. $rows_main = CommonFn::getRowsFromCursor($conpon_main);
  17. $main_row = array();
  18. foreach($rows_main as $row){
  19. $ids = (string)$row['_id'];
  20. $main_row[$ids] = array('name' =>$row['name']);
  21. }
  22. $main_coupons = CommonFn::getComboboxData($main_row, 100, true, 100);
  23. $this->render('index', array(
  24. 'status' => $status,
  25. 'main_coupons' => $main_coupons,
  26. ));
  27. }
  28. public function actionList() {
  29. $search = Yii::app()->request->getParam('search', '');
  30. $id = Yii::app()->request->getParam('id', '');
  31. $filter_status = intval(Yii::app()->request->getParam('status', 100));
  32. $params = CommonFn::getPageParams();
  33. $criteria = new EMongoCriteria($params);
  34. if ($id != ''){
  35. $recharge_id = new MongoId($id);
  36. $criteria->_id('==', $recharge_id);
  37. }
  38. if ($filter_status != 100){
  39. $criteria->addCond('status','==',strval($filter_status));
  40. }
  41. if ($search != ''){
  42. if(CommonFn::isMongoId($search)){
  43. $criteria->_id('==', new MongoId($search));
  44. $criteria->addCond('_id','or',new MongoId($search));
  45. $criteria->addCond('user','or',new MongoId($search));
  46. }
  47. }
  48. $recharge = Recharge::model()->findAll($criteria);
  49. $total = $recharge->count();
  50. $rows = CommonFn::getRowsFromCursor($recharge);
  51. $parsedRows = Recharge::model()->parse($rows);
  52. echo CommonFn::composeDatagridData($parsedRows, $total);
  53. }
  54. //添加充值卡信息
  55. public function actionAdd () {
  56. $denomination = Yii::app()->request->getParam('denomination', '');
  57. $cash_back = Yii::app()->request->getParam('cash_back', '0');
  58. $status = Yii::app()->request->getParam('status', -1);
  59. $desc = Yii::app()->request->getParam('desc', '');
  60. $flag = empty($denomination);
  61. $flag = $flag || $status == -1;
  62. if ($flag) {
  63. CommonFn::requestAjax(false, '请检查数据完整性', array());
  64. exit;
  65. }
  66. $recharge = new Recharge();
  67. $recharge->denomination = intval($denomination);//充值面额
  68. $recharge->cash_back = intval($cash_back);//返现金额
  69. $recharge->desc = $desc;//描述
  70. $recharge->status = intval($status);//状态
  71. $addRecharge_arr = array('denomination','cash_back','status','desc');
  72. $success = $recharge->save(true, $addRecharge_arr);
  73. CommonFn::requestAjax($success, '', array());
  74. }
  75. public function actionEdit() {
  76. $denomination = intval(Yii::app()->request->getParam('denomination',''));//面额
  77. $desc = Yii::app()->request->getParam('desc', '');//描述
  78. $status = Yii::app()->request->getParam('status', '');
  79. $id = Yii::app()->request->getParam('id', '');
  80. $coupons = array();//代金券
  81. $select_fun = Yii::app()->request->getParam('select_fun', '');
  82. //指定状态
  83. if ($status == 100) {
  84. CommonFn::requestAjax(false, '必须指定状态!');
  85. }
  86. //填写面额
  87. if (!isset($denomination)) {
  88. CommonFn::requestAjax(false, '必须填写面额!');
  89. }
  90. $cash_back = 0;
  91. if ($select_fun == 'coupon') {
  92. //数组分割处理
  93. $coupons = explode("<br />",nl2br(trim(Yii::app()->request->getParam('coupons'))));
  94. foreach ($coupons as $key => $coupon) {
  95. $coupon = rtrim(trim($coupon),',');
  96. foreach ($coupons as $k => $v) {
  97. if ($key != $k) {
  98. $v = rtrim(trim($v),',');
  99. if ($v == $coupon) {
  100. CommonFn::requestAjax(false, '代金券id重复');
  101. break;
  102. }
  103. }
  104. }
  105. $coupon = new MongoId($coupon);
  106. $coupon_obj = Coupon::get($coupon);
  107. if (!$coupon_obj) {
  108. CommonFn::requestAjax(false, '代金券不存在');
  109. break;
  110. }
  111. }
  112. } else{
  113. //返现
  114. $cash_back = intval(Yii::app()->request->getParam('cash_back', ''));
  115. }
  116. $criteria = new EMongoCriteria();
  117. $criteria->_id = new MongoId($id);
  118. $recharge = Recharge::model()->find($criteria);
  119. $recharge->coupons = $coupons;
  120. $recharge->cash_back = $cash_back;
  121. $recharge->desc = $desc;
  122. $recharge->denomination = $denomination;
  123. $recharge->status = $status;
  124. //保存修改的充值券信息
  125. $addRecharge_arr = array('denomination','cash_back','status','desc','coupons');
  126. $success = $recharge->save(true, $addRecharge_arr);
  127. CommonFn::requestAjax($success, '', array());
  128. }
  129. }