DBRecordController.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <?php
  2. /**
  3. * summary: MongoDB管理
  4. * author: lee
  5. * date: 2014.05.09
  6. */
  7. class DBRecordController extends AdminController
  8. {
  9. public function actionGetRows(){
  10. $search = Yii::app()->request->getParam('search', '');
  11. $params = CommonFn::getPageParams();
  12. $criteria = new EMongoCriteria($params);
  13. $criteria->status('>', -3);
  14. if ($search != ''){
  15. $criteria->name('==', new MongoRegex('/'.$search.'/'));
  16. }
  17. $cursor = User::model()->findAll($criteria);
  18. $total = $cursor->count();
  19. $rows = CommonFn::getRowsFromCursor($cursor);
  20. foreach ($rows as $k => $v){
  21. $rows[$k]['_id'] = (string)$v['_id'];
  22. }
  23. echo CommonFn::composeDatagridData($rows, $total);
  24. }
  25. public function actionGetDetailRows(){
  26. $user_id = (int)Yii::app()->request->getParam('user_id', '');
  27. //$filter_cat = intval(Yii::app()->request->getParam('filter_cat', 0));
  28. $filter_start_time = Yii::app()->request->getParam('filter_start_time', '');
  29. $filter_end_time = Yii::app()->request->getParam('filter_end_time', '');
  30. $params = CommonFn::getPageParams();
  31. $params = CommonFn::getPageParams();
  32. $criteria = new EMongoCriteria($params);
  33. $criteria->action("elemmatch",array('user'=>$user_id));
  34. $cursor = DbAction::model()->findAll($criteria);
  35. $rows = CommonFn::getRowsFromCursor($cursor);
  36. $total = $cursor->count();
  37. foreach($rows as $k=>$v)
  38. {
  39. switch($v["c_name"])
  40. {
  41. case "topics":
  42. $mongo_id = new MongoId($v["r_id"]);
  43. $criteria = new EMongoCriteria();
  44. $criteria->_id('==', $mongo_id);
  45. $topic = Topic::model()->find($criteria);
  46. if(isset($topic->title))
  47. {
  48. $tmpTitle = $topic->title;
  49. }
  50. else
  51. {
  52. $delTopic = DeleteTopicsAr::model()->find($criteria);
  53. $tmpTitle = $delTopic->title;
  54. if(isset($tmpTitle))
  55. {
  56. $tmpTitle = "null";
  57. }
  58. }
  59. break;
  60. }
  61. $rows[$k]['title']=$tmpTitle;
  62. }
  63. echo CommonFn::composeDatagridData($rows, $total);
  64. // echo CommonFn::composeDatagridData($rows, $total);
  65. /*
  66. $criteria = new EMongoCriteria($params);
  67. //$criteria->db_name("==","area_org");
  68. //$criteria->action("elemmatch",array('user'=>15));
  69. //$cursor = DbAction::model()->findAll($criteria);
  70. $cursor = User::model()->findAll($criteria);
  71. CommonFn::showList($cursor);
  72. */
  73. /*
  74. if ($user_id != ''){
  75. $criteria->user('==', new MongoId($user_id));
  76. }
  77. if ($filter_cat > 0){
  78. $criteria->cat('==', $filter_cat);
  79. }
  80. if ($filter_start_time != ''){
  81. $criteria->create_time('>=', strtotime($filter_start_time));
  82. }
  83. if ($filter_end_time != ''){
  84. $criteria->create_time('<=', strtotime($filter_end_time));
  85. }
  86. $cursor = ScoreRecord::model()->findAll($criteria);
  87. $total = $cursor->count();
  88. $rows = CommonFn::getRowsFromCursor($cursor);
  89. $cat_option = ScoreRecord::$cat_option;
  90. foreach ($rows as $k => $v){
  91. $rows[$k]['create_time'] = date("Y-m-d H:i", $v['create_time']);
  92. $rows[$k]['cat_name'] = $cat_option[$v['cat']]['name'];
  93. }
  94. */
  95. //echo CommonFn::composeDatagridData($rows, $total);
  96. }
  97. }