ActivityV2Controller.class.php 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. <?php
  2. namespace Admin\Controller;
  3. /**
  4. * 样式管理
  5. * @author xusong
  6. * @version 0.0.1
  7. */
  8. class ActivityV2Controller extends CommonController {
  9. /**
  10. * [_initialize 前置操作-继承公共前置方法]
  11. */
  12. public function _initialize() {
  13. // 调用父类前置方法
  14. parent::_initialize();
  15. // 登录校验
  16. $this->Is_Login();
  17. // 权限校验
  18. $this->Is_Power();
  19. //要执行的表
  20. }
  21. /**
  22. * 活动列表
  23. * @author Devil
  24. */
  25. public function Index() {
  26. $List = M('activity_v2')->order('id desc')->select();
  27. $this->assign('List', $List);
  28. $this->display('Index');
  29. }
  30. /**
  31. * [SaveInfo 文章添加/编辑页面]
  32. * @author Devil
  33. * @blog http://gong.gg/
  34. * @version 0.0.1
  35. * @datetime 2016-12-14T21:37:02+0800
  36. */
  37. public function SaveInfo() {
  38. // 文章信息
  39. // $this->display('test');die;
  40. if (empty($_REQUEST['id'])) {
  41. var_dump('error');die;
  42. } else {
  43. $data = M('activity_v2')->find(I('id'));
  44. $data['prize_list'] = json_decode($data['prize_list'],TRUE);
  45. $data['prize_rule'] = json_decode($data['prize_rule'],TRUE);
  46. // var_dump($data);
  47. if (empty($data)) {
  48. $data['id'] = I('id');
  49. }
  50. }
  51. // 是否启用
  52. $this->assign('common_is_enable_list', L('common_is_enable_list'));
  53. $this->assign('data', $data);
  54. $this->display($data['view']);
  55. }
  56. /**
  57. * [Save 文章添加/编辑]
  58. * @author Devil
  59. * @blog http://gong.gg/
  60. * @version 0.0.1
  61. * @datetime 2016-12-14T21:37:02+0800
  62. */
  63. public function Save() {
  64. $post = I('post.');
  65. // var_dump($post);die;
  66. if (!IS_AjAX) {
  67. $this->error(L('common_unauthorized_access'));
  68. }
  69. $prize_length = count($post['prize_id']);
  70. if($prize_length){
  71. for ($i=0;$i<=$prize_length-1;$i++){
  72. $prizes[] = [
  73. 'prize_id'=>$post['prize_id'][$i],
  74. 'prize_name'=>$post['prize_name'][$i],
  75. 'prize_num'=>$post['prize_num'][$i],
  76. 'prize_level'=>$post['prize_level'][$i],
  77. 'prize_img'=>$post['prize_img'][$i],
  78. 'prize_status'=>$post['prize_status'][$i] ? :0,
  79. 'prize_object'=>$post['prize_object'][$i]
  80. ];
  81. }
  82. $prize_json = json_encode($prizes,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  83. }
  84. $prize_json = $prize_json ? $prize_json : '';
  85. //中奖规则序列化
  86. $rule_length = count($post['rule_id']);
  87. if($rule_length){
  88. for ($i=0;$i<=$rule_length-1;$i++){
  89. // var_dump($prize_name);
  90. $prize_id = explode('#', $post['rule_prize_name'][$i])[0];
  91. $rules[] = [
  92. 'rule_id'=>trim($post['rule_id'][$i]),
  93. 'rule_prize_id'=>trim($prize_id),
  94. 'rule_prize_name'=>trim($post['rule_prize_name'][$i]),
  95. 'rule_num'=>trim($post['rule_num'][$i]),
  96. 'rule_probability'=>trim($post['rule_probability'][$i]),
  97. 'rule_role'=>trim($post['rule_role'][$i]),
  98. 'rule_date'=>trim($post['rule_date'][$i]),
  99. 'rule_hour'=>trim($post['rule_hour'][$i]),
  100. 'rule_cycle'=>trim($post['rule_cycle'][$i]),
  101. 'rule_status'=>trim($post['rule_status'][$i]) ? : 0
  102. ];
  103. }
  104. $rule_json = json_encode($rules,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  105. }
  106. $rule_json = $rule_json ? $rule_json : '';
  107. $data['activity_name'] = trim(I('activity_name'));
  108. $data['logic'] = trim(I('logic'));
  109. $data['is_enable'] = trim(I('is_enable'));
  110. $data['start_at'] = trim(I('start_at'));
  111. $data['end_at'] = trim(I('end_at'));
  112. $data['introduce'] = trim(I('introduce'));
  113. $data['is_test'] = trim(I('is_test'));
  114. $data['vip_chance'] = trim(I('vip_chance'));
  115. $data['novip_chance'] = trim(I('novip_chance'));
  116. $data['prize_list'] = $prize_json;
  117. $data['prize_rule'] = $rule_json;
  118. $data['view'] = trim(I('view'));
  119. $data['prize_log_table'] = trim(I('prize_log_table'));
  120. $data['checkvip_style'] = trim(I('checkvip_style'));
  121. // 添加
  122. if ($id = I('id')) {
  123. $data['id'] = $id;
  124. $data['updated_at'] = date('Y-m-d H:i:s');
  125. if (M('activity_v2')->save($data)) {
  126. $this->ajaxReturn('更新成功');
  127. } else {
  128. $this->ajaxReturn('更新失败',400);
  129. }
  130. } else {
  131. $data['created_at'] = date('Y-m-d H:i:s');
  132. $data['updated_at'] = date('Y-m-d H:i:s');
  133. if ($bool=M('activity_v2')->add($data)) {
  134. $this->ajaxReturn('新增成功');
  135. } else {
  136. echo M()->getLastSql();
  137. $this->ajaxReturn('新增失败',400);
  138. }
  139. }
  140. }
  141. /**
  142. * [Delete 删除]
  143. * @author Devil
  144. * @blog http://gong.gg/
  145. * @version 0.0.1
  146. * @datetime 2016-12-15T11:03:30+0800
  147. */
  148. public function Delete() {
  149. // 是否ajax请求
  150. if (!IS_AJAX) {
  151. $this->error(L('common_unauthorized_access'));
  152. }
  153. // 删除数据
  154. if (I('id')) {
  155. // 更新
  156. if (M('activity_v2')->delete(I('id'))) {
  157. $this->ajaxReturn(L('common_operation_delete_success'));
  158. } else {
  159. $this->ajaxReturn(L('common_operation_delete_error'), -100);
  160. }
  161. } else {
  162. $this->ajaxReturn(L('common_param_error'), -1);
  163. }
  164. }
  165. public function uploadFile($path, $name, $type) {
  166. $error = FileUploadError($name);
  167. if ($error !== true) {
  168. $this->ajaxReturn($error, -1);
  169. }
  170. if (!is_dir($path)) {
  171. mkdir(ROOT_PATH . $path, 0777, true);
  172. }
  173. $filename = \time() . '.'.$type;
  174. $home_site_logo = $path . $filename;
  175. if (move_uploaded_file($_FILES[$name]['tmp_name'], ROOT_PATH . $home_site_logo)) {
  176. return $_SERVER['SERVER_NAME'] . '/' . $home_site_logo;
  177. }
  178. }
  179. public function Uploader() {
  180. if($load_config = file_get_contents('UploadImageDir.config')){
  181. $arr = json_decode($load_config,true);
  182. $path = $arr['prize'] ? : C('uploaderPrizeImg');
  183. }else{
  184. $path = C('uploaderPrizeImg');
  185. }
  186. $uploader = D('Uploader');
  187. if(I('get.model') == 'one'){
  188. $uploader->Uploader($path);
  189. die;
  190. }
  191. $info = $uploader->Uploader($path);
  192. if ($info['state'] == 'SUCCESS') {
  193. $this->ajaxReturn($info['state'], 200);
  194. } else {
  195. $this->ajaxReturn($info['state'], 400);
  196. }
  197. }
  198. }