promotion_xianshi.php 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. <?php
  2. /**
  3. * 限时折扣管理
  4. *
  5. *
  6. *
  7. ***/
  8. defined('InShopNC') or exit('Access Invalid!');
  9. class promotion_xianshiControl extends SystemControl{
  10. public function __construct(){
  11. parent::__construct();
  12. //读取语言包
  13. Language::read('promotion_xianshi');
  14. //检查审核功能是否开启
  15. if (intval($_GET['promotion_allow']) !== 1 && intval(C('promotion_allow')) !== 1){
  16. $url = array(
  17. array(
  18. 'url'=>'index.php?act=promotion_xianshi&promotion_allow=1',
  19. 'msg'=>Language::get('open'),
  20. ),
  21. array(
  22. 'url'=>'index.php?act=dashboard&op=welcome',
  23. 'msg'=>Language::get('close'),
  24. ),
  25. );
  26. showMessage(Language::get('promotion_unavailable'),$url,'html','succ',1,6000);
  27. }
  28. }
  29. /**
  30. * 默认Op
  31. */
  32. public function indexOp() {
  33. //自动开启限时折扣
  34. if (intval($_GET['promotion_allow']) === 1){
  35. $model_setting = Model('setting');
  36. $update_array = array();
  37. $update_array['promotion_allow'] = 1;
  38. $model_setting->updateSetting($update_array);
  39. }
  40. $this->xianshi_listOp();
  41. }
  42. /**
  43. * 活动列表
  44. **/
  45. public function xianshi_listOp() {
  46. $model_xianshi = Model('p_xianshi');
  47. $condition = array();
  48. if(!empty($_GET['xianshi_name'])) {
  49. $condition['xianshi_name'] = array('like', '%'.$_GET['xianshi_name'].'%');
  50. }
  51. if(!empty($_GET['store_name'])) {
  52. $condition['store_name'] = array('like', '%'.$_GET['store_name'].'%');
  53. }
  54. if(!empty($_GET['state'])) {
  55. $condition['state'] = intval($_GET['state']);
  56. }
  57. $xianshi_list = $model_xianshi->getXianshiList($condition, 10, 'state desc, end_time desc');
  58. Tpl::output('list',$xianshi_list);
  59. Tpl::output('show_page',$model_xianshi->showpage());
  60. Tpl::output('xianshi_state_array',$model_xianshi->getXianshiStateArray());
  61. $this->show_menu('xianshi_list');
  62. // 输出自营店铺IDS
  63. Tpl::output('flippedOwnShopIds', array_flip(model('store')->getOwnShopIds()));
  64. Tpl::showpage('promotion_xianshi.list');
  65. }
  66. /**
  67. * 限时折扣活动取消
  68. **/
  69. public function xianshi_cancelOp() {
  70. $xianshi_id = intval($_POST['xianshi_id']);
  71. $model_xianshi = Model('p_xianshi');
  72. $result = $model_xianshi->cancelXianshi(array('xianshi_id' => $xianshi_id));
  73. if($result) {
  74. $this->log('取消限时折扣活动,活动编号'.$xianshi_id);
  75. showMessage(Language::get('nc_common_op_succ'),'');
  76. } else {
  77. showMessage(Language::get('nc_common_op_fail'),'');
  78. }
  79. }
  80. /**
  81. * 限时折扣活动删除
  82. **/
  83. public function xianshi_delOp() {
  84. $xianshi_id = intval($_POST['xianshi_id']);
  85. $model_xianshi = Model('p_xianshi');
  86. $result = $model_xianshi->delXianshi(array('xianshi_id' => $xianshi_id));
  87. if($result) {
  88. $this->log('删除限时折扣活动,活动编号'.$xianshi_id);
  89. showMessage(Language::get('nc_common_op_succ'),'');
  90. } else {
  91. showMessage(Language::get('nc_common_op_fail'),'');
  92. }
  93. }
  94. /**
  95. * 活动详细信息
  96. **/
  97. public function xianshi_detailOp() {
  98. $xianshi_id = intval($_GET['xianshi_id']);
  99. $model_xianshi = Model('p_xianshi');
  100. $model_xianshi_goods = Model('p_xianshi_goods');
  101. $xianshi_info = $model_xianshi->getXianshiInfoByID($xianshi_id);
  102. if(empty($xianshi_info)) {
  103. showMessage(L('param_error'));
  104. }
  105. Tpl::output('xianshi_info',$xianshi_info);
  106. //获取限时折扣商品列表
  107. $condition = array();
  108. $condition['xianshi_id'] = $xianshi_id;
  109. $xianshi_goods_list = $model_xianshi_goods->getXianshiGoodsExtendList($condition);
  110. Tpl::output('list',$xianshi_goods_list);
  111. $this->show_menu('xianshi_detail');
  112. Tpl::showpage('promotion_xianshi.detail');
  113. }
  114. /**
  115. * 套餐管理
  116. **/
  117. public function xianshi_quotaOp() {
  118. $model_xianshi_quota = Model('p_xianshi_quota');
  119. $condition = array();
  120. $condition['store_name'] = array('like', '%'.$_GET['store_name'].'%');
  121. $list = $model_xianshi_quota->getXianshiQuotaList($condition, 10, 'end_time desc');
  122. Tpl::output('list',$list);
  123. Tpl::output('show_page',$model_xianshi_quota->showpage());
  124. $this->show_menu('xianshi_quota');
  125. Tpl::showpage('promotion_xianshi_quota.list');
  126. }
  127. /**
  128. * 设置
  129. **/
  130. public function xianshi_settingOp() {
  131. $model_setting = Model('setting');
  132. $setting = $model_setting->GetListSetting();
  133. Tpl::output('setting',$setting);
  134. $this->show_menu('xianshi_setting');
  135. Tpl::showpage('promotion_xianshi.setting');
  136. }
  137. public function xianshi_setting_saveOp() {
  138. $promotion_xianshi_price = intval($_POST['promotion_xianshi_price']);
  139. if($promotion_xianshi_price === 0) {
  140. $promotion_xianshi_price = 20;
  141. }
  142. $model_setting = Model('setting');
  143. $update_array = array();
  144. $update_array['promotion_xianshi_price'] = $promotion_xianshi_price;
  145. $result = $model_setting->updateSetting($update_array);
  146. if ($result){
  147. $this->log('修改限时折扣价格为'.$promotion_xianshi_price.'元');
  148. showMessage(Language::get('setting_save_success'),'');
  149. }else {
  150. showMessage(Language::get('setting_save_fail'),'');
  151. }
  152. }
  153. /**
  154. * ajax修改抢购信息
  155. */
  156. public function ajaxOp(){
  157. $result = true;
  158. $update_array = array();
  159. $where_array = array();
  160. switch ($_GET['branch']){
  161. case 'recommend':
  162. $model= Model('p_xianshi_goods');
  163. $update_array['xianshi_recommend'] = $_GET['value'];
  164. $where_array['xianshi_goods_id'] = $_GET['id'];
  165. $result = $model->editXianshiGoods($update_array, $where_array);
  166. break;
  167. }
  168. if($result) {
  169. echo 'true';exit;
  170. } else {
  171. echo 'false';exit;
  172. }
  173. }
  174. /*
  175. * 发送消息
  176. */
  177. private function send_message($member_id,$member_name,$message) {
  178. $param = array();
  179. $param['from_member_id'] = 0;
  180. $param['member_id'] = $member_id;
  181. $param['to_member_name'] = $member_name;
  182. $param['message_type'] = '1';//表示为系统消息
  183. $param['msg_content'] = $message;
  184. $model_message = Model('message');
  185. return $model_message->saveMessage($param);
  186. }
  187. /**
  188. * 页面内导航菜单
  189. *
  190. * @param string $menu_key 当前导航的menu_key
  191. * @param array $array 附加菜单
  192. * @return
  193. */
  194. private function show_menu($menu_key) {
  195. $menu_array = array(
  196. 'xianshi_list'=>array('menu_type'=>'link','menu_name'=>Language::get('xianshi_list'),'menu_url'=>'index.php?act=promotion_xianshi&op=xianshi_list'),
  197. 'xianshi_detail'=>array('menu_type'=>'link','menu_name'=>Language::get('xianshi_detail'),'menu_url'=>'index.php?act=promotion_xianshi&op=xianshi_detail'),
  198. 'xianshi_quota'=>array('menu_type'=>'link','menu_name'=>Language::get('xianshi_quota'),'menu_url'=>'index.php?act=promotion_xianshi&op=xianshi_quota'),
  199. 'xianshi_setting'=>array('menu_type'=>'link','menu_name'=>Language::get('xianshi_setting'),'menu_url'=>'index.php?act=promotion_xianshi&op=xianshi_setting'),
  200. );
  201. if($menu_key != 'xianshi_detail') unset($menu_array['xianshi_detail']);
  202. $menu_array[$menu_key]['menu_type'] = 'text';
  203. Tpl::output('menu',$menu_array);
  204. }
  205. }