CommentController.php 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <?php
  2. class CommentController extends AdminController{
  3. public function actionIndex()
  4. {
  5. $status_option = Comment::$status_option;
  6. $type_option = Yii::app()->params['o2o_service'];
  7. $status = CommonFn::getComboboxData($status_option, 100, true, 100);
  8. //var_dump($status);die();
  9. $type = CommonFn::getComboboxData($type_option, 100, true, 100);
  10. //var_dump($type);die();
  11. $this->render('index', array(
  12. 'type' => $type,
  13. 'status' => $status
  14. ));
  15. }
  16. //获得评价列表
  17. public function actionList(){
  18. //var_dump($_GET);die();
  19. $params = CommonFn::getPageParams();
  20. $status = intval(Yii::app()->request->getParam('status', 100));
  21. $id = Yii::app()->request->getParam('id', '');
  22. $type = intval(Yii::app()->request->getParam('type',100));
  23. $weight = intval(Yii::app()->request->getParam('weight',100));
  24. $score = intval(Yii::app()->request->getParam('score',100));
  25. $search = Yii::app()->request->getParam('search', '');
  26. $search_type = intval(Yii::app()->request->getParam('search_type', 1));
  27. $criteria = new EMongoCriteria($params);
  28. if ($search != ''){
  29. $user = RUser::getUserByName($search);
  30. if($user){
  31. $criteria->user('==',$user->_id);
  32. }
  33. }
  34. if ($id != ''){
  35. $comment_id = new MongoId($id);
  36. $criteria->_id('==', $comment_id);
  37. }
  38. if($score !=100){
  39. $criteria->score('==', $score);
  40. }
  41. if ($type != 100){
  42. $criteria->type('==', $type);
  43. }
  44. if ($weight !=100){
  45. $criteria->weight('==', $weight);
  46. }
  47. if ($status != 100){
  48. $criteria->status('==', $status);
  49. }
  50. $cursor = Comment::model()->findAll($criteria);
  51. //var_dump($cursor);die();
  52. $total = $cursor->count();
  53. //var_dump($total);die();
  54. $rows = CommonFn::getRowsFromCursor($cursor);
  55. $parsedRows = Comment::model()->parse($rows);
  56. //var_dump($parsedRows);
  57. //var_dump($parsedRows);die();
  58. echo CommonFn::composeDatagridData($parsedRows, $total);
  59. }
  60. public function actionUpdate(){
  61. $id = Yii::app()->request->getParam('id', '');
  62. $status = intval(Yii::app()->request->getParam('status', 1));
  63. $weight = intval(Yii::app()->request->getParam('weight', 100));
  64. $reply = Yii::app()->request->getParam('reply', '');
  65. if($status == 100){
  66. CommonFn::requestAjax(false, '必须指定评价状态!');
  67. }
  68. $criteria = new EMongoCriteria();
  69. $mongo_id = new MongoId($id);
  70. $criteria->_id = $mongo_id;
  71. $comment = Comment::model()->find($criteria);
  72. $comment->status = $status;
  73. // $post->pics = $pics;
  74. $comment->weight = $weight;
  75. $comment->reply = $reply;
  76. $arr_post = array('status','weight', 'reply');
  77. $success = $comment->save(true,$arr_post);
  78. CommonFn::requestAjax($success, '', array());
  79. }
  80. //批量修改评价状态
  81. public function actionSetStatus(){
  82. $ids = Yii::app()->request->getParam('ids',"");
  83. $status = intval(Yii::app()->request->getParam('status',100));
  84. if ($status == 100){
  85. CommonFn::requestAjax(false,"必须设置状态值");
  86. }
  87. $status=$status>1?1:$status;
  88. $id_array = explode(",",$ids);
  89. if(!count($id_array) || !$ids){
  90. CommonFn::requestAjax(false,"请选择待修改的评价");
  91. }
  92. $criteria = new EMongoCriteria();
  93. foreach($id_array as $id){
  94. $mongo_id = new MongoId($id);
  95. $criteria->_id('==', $mongo_id);
  96. $post = Comment::model()->find($criteria);
  97. if($post){
  98. if($post->status===$status){
  99. continue;
  100. }
  101. $old_status = $post->status;
  102. $post->status = $status;
  103. $post->update(array( 'status'),true);
  104. }
  105. }
  106. CommonFn::requestAjax();
  107. }
  108. }