SaleController.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <?php
  2. // ini_set('display_errors', 1);
  3. /**
  4. * MainController
  5. * Feel free to delete the methods and replace them with your own code.
  6. *
  7. * @author JieRen
  8. */
  9. class SaleController extends DooController {
  10. public $data;
  11. /**
  12. * 构造函数
  13. */
  14. function __construct() {
  15. session_start();
  16. $this->data['rootUrl'] = Doo::conf()->APP_URL;
  17. }
  18. /**
  19. * 索引列表页
  20. */
  21. function index() {
  22. if (empty($_SESSION['main'])) {
  23. return Doo::conf()->APP_URL . 'm';
  24. }
  25. if(isset($_POST['submit'])&&isset($_POST['salename'])&&isset($_POST['promocode'])){
  26. if (preg_match('/^1[3458][0-9]{9}$/', $_POST['promocode'])) {
  27. Doo::loadModel('m/sale');
  28. $saleObj = new Sale();
  29. $saleObj->salename = $_POST['salename'];
  30. $saleObj->promocode = $_POST['promocode'];
  31. $saleObj->total = 0;
  32. $saleObj->usez = 0;
  33. if($saleObj->insert()){
  34. // exit('添加完成');
  35. }
  36. }
  37. }
  38. Doo::loadModel('m/sale');
  39. Doo::loadHelper('DooPager');
  40. $sale = new Sale();
  41. $totalArchive = $sale->count();
  42. $pager = new DooPager(Doo::conf()->APP_URL . "m/sale/page", $totalArchive, 30, 10);
  43. if (!empty($this->params['pindex']))
  44. $pager->paginate(intval($this->params['pindex']));
  45. else
  46. $pager->paginate(1);
  47. $saleArray = $sale->find(array('select' => 'id, salename, promocode, total, usez', 'desc' => 'id', 'limit' => $pager->limit, 'asArray' => true));
  48. foreach ($saleArray as $key => $value) {
  49. $saleArray[$key]['unuse'] = $value['total']-$value['usez'];
  50. }
  51. $this->data['userArray'] = $saleArray;
  52. $moneyArray = $sale->find(array('select' => 'sum(total) as total,sum(usez) as usez', 'desc' => 'id', 'asArray' => true));
  53. $this->data['total'] = $moneyArray[0]['total']+$moneyArray[0]['usez'];
  54. $this->data['usez'] = $moneyArray[0]['usez'];
  55. $this->data['unpay'] = $moneyArray[0]['total'];
  56. $this->data['pager'] = $pager->output;
  57. $this->data['selectsale'] = true;
  58. $this->render('admin/sale', $this->data,true);
  59. }
  60. /**
  61. * 确认提取
  62. */
  63. function doCash() {
  64. if (empty($_SESSION['main'])) {
  65. return Doo::conf()->APP_URL . 'm';
  66. }
  67. Doo::loadModel('m/sale');
  68. if(isset($_POST['submit'])&&isset($_POST['confirm'])&&isset($_POST['money'])){
  69. $conStr = $_POST['confirm'];
  70. $monStr = intval($_POST['money']);
  71. $pidStr = $this->params['pid'];
  72. Doo::loadModel('m/sale');
  73. $sale = new Sale();
  74. $saleArray = $sale->getById($pidStr,array('asArray' => true));
  75. // var_dump($saleArray[0]);
  76. if ($saleArray[0]['total']>=$monStr) {
  77. // TODO:减去提取的金额
  78. // TODO:写入记录表
  79. $sale->id = $saleArray[0]['id'];
  80. $sale->total = new DooDbExpression('total-' . $monStr);
  81. $sale->usez = new DooDbExpression('usez+' . $monStr);
  82. $sale->update();
  83. Doo::loadModel('m/billrecord');
  84. $brecord = new Billrecord();
  85. $brecord->salename = $saleArray[0]['salename'];
  86. $brecord->total = $saleArray[0]['total'];
  87. $brecord->usez = $saleArray[0]['usez'];
  88. $brecord->curr = $monStr;
  89. $brecord->opuser = $conStr;
  90. $brecord->optime = time();
  91. $brecord->insert();
  92. // exit('已操作成功');
  93. }
  94. }
  95. // $sale = new Sale();
  96. // $saleArray = $sale->find(array('select' => 'id, salename, promocode, total, usez', 'desc' => 'id', 'asArray' => true));
  97. // $this->data['userArray'] = $saleArray;
  98. // $this->data['unuse'] = $saleArray['total']-$saleArray['usez'];
  99. // $this->data['uid'] = $this->params['pid'];
  100. // $this->render('admin/sale_cash', $this->data,true);
  101. return '/m/sale';
  102. }
  103. }
  104. ?>