member_fcode.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 2017/4/6
  6. * Time: 下午1:42
  7. */
  8. require_once (BASE_ROOT_PATH . '/helper/fcode/mfcode.php');
  9. require_once (BASE_ROOT_PATH . '/helper/fcode/operator.php');
  10. require_once (BASE_ROOT_PATH . '/helper/user_session/fcode.php');
  11. require_once (BASE_ROOT_PATH . '/helper/goods_helper.php');
  12. require_once (BASE_ROOT_PATH . '/helper/user_session/fcode.php');
  13. class member_fcodeControl extends mbMemberControl
  14. {
  15. public function __construct()
  16. {
  17. parent::__construct();
  18. }
  19. public function listOp()
  20. {
  21. $mod_fcode = Model('goods_fcode');
  22. $items = $mod_fcode->getFcodeList(array('mobile' => session_helper::cur_mobile()),'*','fc_state asc,fc_id asc',$this->page_size());
  23. $page_count = $mod_fcode->gettotalpage();
  24. $fcodes = [];
  25. $gids = [];
  26. foreach ($items as $item) {
  27. $fcoder = new fcode\mfcode($item);
  28. $fcode = $fcoder->format();
  29. $gids[] = intval($fcode['goods_id']);
  30. $fcodes[] = $fcode;
  31. }
  32. if(empty($fcodes))
  33. {
  34. return self::outsuccess(array('special_list' => null,
  35. 'fcodes' => null,
  36. 'summary' => null,
  37. 'groupbuy' => null,
  38. 'limitime' => null,
  39. 'bundling' => null,
  40. 'mobile_page' => mobile_page($page_count)));
  41. }
  42. else
  43. {
  44. $blocks = $this->format($fcodes);
  45. $helper = new goods_helper();
  46. $ret = $helper->cart_summary($gids,$related_goods);
  47. return self::outsuccess(array('special_list' => $blocks,
  48. 'fcodes' => $fcodes,
  49. 'summary' => $ret['summary'],
  50. 'groupbuy' => $ret['groupbuy'],
  51. 'limitime' => $ret['limitime'],
  52. 'bundling' => $ret['bundling'],
  53. 'mobile_page' => mobile_page($page_count)));
  54. }
  55. }
  56. private function format($fcodes)
  57. {
  58. $blocks = [];
  59. if(!empty($fcodes)) {
  60. $blocks[] = special_formater::def_divider();
  61. }
  62. foreach ($fcodes as $fcode)
  63. {
  64. $block = [];
  65. $block['item_title'] = '';
  66. $block['item_type'] = 'home1';
  67. $block['scale'] = 3.224299;
  68. $item['image'] = '';
  69. $item['show_type'] = "fcode";
  70. $item['show_data'] = strval($fcode['fcode_id']);
  71. $item['type'] = "goods";
  72. $item['data'] = strval($fcode['goods_id']);;
  73. $item['title'] = '';
  74. $block['items'][] = $item;
  75. $blocks[] = $block;
  76. $blocks[] = special_formater::def_divider();
  77. }
  78. return $blocks;
  79. }
  80. public function addOp()
  81. {
  82. $fc_code = $_GET['fcode'];
  83. $user_key = $_GET['key'];
  84. if(empty($fc_code) || empty($user_key)) {
  85. return self::outerr(errcode::ErrParamter,"参数错误,请输入正确的参数");
  86. }
  87. try
  88. {
  89. $fcode = new fcode\mfcode($fc_code);
  90. if($fcode->used()) {
  91. return self::outerr(errcode::ErrParamter,"该F码已经使用过了,不能添加.");
  92. }
  93. if($fcode->expired()) {
  94. return self::outerr(errcode::ErrParamter,"该F码已经过期,不能添加.");
  95. }
  96. if($fcode->user_key() != $user_key) {
  97. return self::outerr(errcode::ErrParamter,"密钥不正确,可能输入错误或者已经被其他人占用.");
  98. }
  99. $oper = new fcode\operator($fcode->commonid(),$fcode->batch_code());
  100. $oper->change($fcode->params(),session_helper::cur_mobile());
  101. $fcode = new user_session\fcode();
  102. $fcode->onStatus();
  103. return self::outsuccess(null);
  104. }
  105. catch (Exception $ex) {
  106. return self::outerr(errcode::ErrParamter,"参数错误,没有此F码.");
  107. }
  108. }
  109. }