SquareController.class.php 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. <?php
  2. namespace Admin\Controller;
  3. use Common\Controller\AdminController;
  4. class SquareController extends AdminController {
  5. public function __construct(){
  6. parent::__construct();
  7. }
  8. public function course(){
  9. $sort = I('sort','1');
  10. $courseStatus = I('course_status','');
  11. $keyword = I('get.keyword','');
  12. $condition = array('course_flag'=>1);
  13. $orderList = array(
  14. 1=>array('operate_dt desc','时间倒序',1),
  15. 2=>array('operate_dt asc','时间正序',2),
  16. 3=>array('course_join desc','加入量倒序',3),
  17. 4=>array('course_join asc','加入量倒序',4),
  18. );
  19. $statusList = array('全部状态',2=>'待审核',3=>'已上架',4=>'审核不通过');
  20. $orderby = $orderList[$sort][0];
  21. if (!empty($keyword)){
  22. $condition['course_id|course_name'] = array('LIKE','%'.$keyword.'%');
  23. }
  24. if (!empty($courseStatus)){
  25. $condition['course_status'] = $courseStatus;
  26. }else{
  27. $condition['course_status'] = array('IN','2,3,4');
  28. }
  29. $this->assign('sort',$sort);
  30. $this->assign('orderby',$orderby);
  31. $this->assign('keyword',$keyword);
  32. $this->assign('orderList',$orderList);
  33. $this->assign('statusList',$statusList);
  34. $this->assign('courseStatus',$courseStatus);
  35. $crons = $condition;
  36. $crons['is_delete'] = 1;
  37. $count = M('Course')->where($condition)->count();
  38. //分页
  39. $Page = new \Think\Page($count);
  40. $show = $Page->show();
  41. $courseList = D('Course')->getCourseList($condition,$Page->firstRow, $Page->listRows, $orderby);
  42. $this->assign('page',$show);
  43. $this->assign('list',$courseList);
  44. $this->display();
  45. }
  46. public function detailCourse(){
  47. $courseId = I('course_id','');
  48. if (empty($courseId) || $courseId<1000000){
  49. $this->error("课程ID错误",'/admin/square/course');
  50. }
  51. $keyword = I('get.keyword','');
  52. $condition = array('is_delete'=>1,'course_id'=>$courseId);
  53. if (!empty($keyword)){
  54. $condition['words_name'] = array('LIKE','%'.$keyword.'%');
  55. }
  56. $count = M('Words')->where($condition)->count();
  57. //分页
  58. $Page = new \Think\Page($count);
  59. $show = $Page->show();
  60. $wordsRes = M('Words')->where($condition)->field()->order('words_id desc')->limit($Page->firstRow.','.$Page->listRows)->select();
  61. $wordsList = array();
  62. foreach ($wordsRes as $row){
  63. $wordsList[] = array(
  64. 'words_id' => $row['words_id'],
  65. 'course_id' => $row['course_id'],
  66. 'words_name' => $row['words_name'],
  67. 'words_voice' => $row['words_voice'],
  68. 'words_read' => $row['words_read'],
  69. 'operate_dt' => $row['operate_dt'],
  70. 'words_text' => $this->getWordsText($row),
  71. );
  72. }
  73. $this->assign('page',$show);
  74. $this->assign('list',$wordsList);
  75. $this->assign('keyword',$keyword);
  76. $this->assign('courseId',$courseId);
  77. $this->display('detailCourse');
  78. }
  79. public function show(){
  80. $wordsId = I('words_id','');
  81. $wordsKeys = array('n'=>'words_n','pron'=>'words_pron','adj'=>'words_adj','num'=>'words_num','v'=>'words_v','adv'=>'words_adv','art'=>'words_art','prep'=>'words_prep','conj'=>'words_conj','int'=>'words_int','vt'=>'words_vt','vi'=>'words_vi',);
  82. $info = array();
  83. if (!empty($wordsId)){
  84. $info = M('Words')->where(array('words_id'=>$wordsId))->find();
  85. }
  86. $this->assign('info',$info);
  87. $this->assign('wordsKeys', $wordsKeys);
  88. $this->display();
  89. }
  90. //修改课程状态
  91. public function statusCourse(){
  92. $courseId = I('course_id','');
  93. $courseStatus = I('course_status','');
  94. if (empty($courseId) || $courseId<1000000){
  95. $this->error("课程ID错误",'/admin/square/course');
  96. }
  97. M('Course')->where(array('course_id'=>$courseId))->save(array('course_status'=>$courseStatus));
  98. if ($courseStatus==3){
  99. $info = M('Course')->where(array('course_id'=>$courseId))->find();
  100. $noticeTitle = '上传课程审核已通过';
  101. $noticeContent = '亲爱的小主,你上传至单词广场的《'.$info['course_name'].'》课程已审核通过,赶紧去单词广场查看下吧。';
  102. M('Notice')->add(array('notice_title'=>$noticeTitle,'notice_content'=>$noticeContent,'ref_user_id'=>$info['user_id'],'user_id'=>0,'operate_dt'=>time()));
  103. M('User')->where(array('user_id'=>$info['user_id'],'is_delete'=>1))->setInc('sys_notice');
  104. }
  105. $this->success('课程状态修改成功','/admin/square/course');
  106. }
  107. //修改自由记
  108. public function statusNotepad(){
  109. $courseId = I('course_id','');
  110. $courseStatus = I('course_status','');
  111. if (empty($courseId) || $courseId<1000000){
  112. $this->error("自由记ID错误",'/admin/square/notepad');
  113. }
  114. M('Course')->where(array('course_id'=>$courseId))->save(array('course_status'=>$courseStatus));
  115. if ($courseStatus==3){
  116. $info = M('Course')->where(array('course_id'=>$courseId))->find();
  117. $noticeTitle = '上传自由记审核已通过';
  118. $noticeContent = '亲爱的小主,你上传至单词广场的《'.$info['course_name'].'》自由记已审核通过,赶紧去单词广场查看下吧。';
  119. M('Notice')->add(array('notice_title'=>$noticeTitle,'notice_content'=>$noticeContent,'ref_user_id'=>$info['user_id'],'user_id'=>0,'operate_dt'=>time()));
  120. M('User')->where(array('user_id'=>$info['user_id'],'is_delete'=>1))->setInc('sys_notice');
  121. }
  122. $this->success('自由记状态修改成功','/admin/square/notepad');
  123. }
  124. public function notepad(){
  125. $sort = I('sort','1');
  126. $courseStatus = I('course_status','');
  127. $keyword = I('get.keyword','');
  128. $condition = array('course_source'=>2,'couse_flag'=>2);
  129. $orderList = array(
  130. 1=>array('operate_dt desc','时间倒序',1),
  131. 2=>array('operate_dt asc','时间正序',2),
  132. 3=>array('course_join desc','加入量倒序',3),
  133. 4=>array('course_join asc','加入量倒序',4),
  134. );
  135. $statusList = array('全部状态',2=>'待审核',3=>'已上架',4=>'审核不通过');
  136. $orderby = $orderList[$sort][0];
  137. if (!empty($keyword)){
  138. $condition['course_id|course_name'] = array('LIKE','%'.$keyword.'%');
  139. }
  140. if (!empty($courseStatus)){
  141. $condition['course_status'] = $courseStatus;
  142. }else{
  143. $condition['course_status'] = array('IN','2,3,4');
  144. }
  145. $this->assign('sort',$sort);
  146. $this->assign('orderby',$orderby);
  147. $this->assign('keyword',$keyword);
  148. $this->assign('orderList',$orderList);
  149. $this->assign('statusList',$statusList);
  150. $this->assign('courseStatus',$courseStatus);
  151. $crons = $condition;
  152. $crons['is_delete'] = 1;
  153. $count = M('Course')->where($crons)->count();
  154. //分页
  155. $Page = new \Think\Page($count);
  156. $show = $Page->show();
  157. $notepadList = D('Course')->getCourseList($condition,$Page->firstRow, $Page->listRows, $orderby);
  158. $this->assign('page',$show);
  159. $this->assign('list',$notepadList);
  160. $this->display();
  161. }
  162. public function detailNotepad(){
  163. $courseId = I('course_id','');
  164. $info = array();
  165. if (!empty($courseId)){
  166. $info = M('Course')->where(array('course_id'=>$courseId))->find();
  167. }
  168. $this->assign('info',$info);
  169. $this->assign('courseId', $courseId);
  170. $this->display();
  171. }
  172. public function unpass(){
  173. $step = I('step');
  174. $courseId = I('course_id','');
  175. if (empty($courseId) || $courseId<1000000){
  176. $this->error("ID错误",$_SERVER['HTTP_REFERER']);
  177. }
  178. $info = M('Course')->where(array('course_id'=>$courseId))->find();
  179. if (empty($step)){
  180. $refererUrl = $_SERVER['HTTP_REFERER'];
  181. if (empty($refererUrl)){
  182. $refererUrl = '/admin/square/index';
  183. }
  184. $this->assign('info',$info);
  185. $this->assign('courseId', $courseId);
  186. $this->assign('refererUrl', $refererUrl);
  187. $this->display();
  188. }else if($step==2){
  189. $refererUrl = I('refererUrl');
  190. $courseReason = I('course_reason');
  191. if (mb_strlen($courseReason,'UTF8')<3 || mb_strlen($courseReason,'UTF8')>50){
  192. $this->error('未通过原因3到50个汉字');
  193. }
  194. M('Course')->where(array('course_id'=>$courseId))->save(array('course_reason'=>$courseReason,'course_status'=>4));
  195. if ($info['course_flag']==1){
  196. $noticeTitle = '上传课程审核不通过';
  197. $noticeContent = '亲爱的小主,你上传至单词广场的《'.$info['course_name'].'》课程审核不通过,原因为:'.$courseReason.'。请修改后再重新上传。';
  198. }else{
  199. $noticeTitle = '上传自由记审核不通过';
  200. $noticeContent = '亲爱的小主,你上传至单词广场的《'.$info['course_name'].'》自由记审核不通过,原因为:'.$courseReason.'。请修改后再重新上传。';
  201. }
  202. M('Notice')->add(array('notice_title'=>$noticeTitle,'notice_content'=>$noticeContent,'ref_user_id'=>$info['user_id'],'user_id'=>0,'operate_dt'=>time()));
  203. M('User')->where(array('user_id'=>$info['user_id'],'is_delete'=>1))->setInc('sys_notice');
  204. $this->success('审核未通过成功',$refererUrl);
  205. }
  206. }
  207. }