UserController.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. <?php
  2. /**
  3. * UserController o2o用户相关接口
  4. *
  5. *
  6. *
  7. */
  8. class UserController extends MoonClubBaseController{
  9. public function actionInfo(){
  10. $user_id = Yii::app()->getRequest()->getParam("user_id");
  11. if(CommonFn::isMongoId($user_id)){
  12. $user = Service::factory('UserService')->getUser(new MongoId($user_id),false);
  13. if($user){
  14. $user = $user->parseRow($user->attributes);
  15. CommonFn::requestAjax(true,CommonFn::getMessage('message','operation_success'),$user);
  16. }else{
  17. CommonFn::requestAjax(false,CommonFn::getMessage('user','id_not_exist'));
  18. }
  19. }else{
  20. CommonFn::requestAjax(false,CommonFn::getMessage('message','params_illegal'));
  21. }
  22. }
  23. public function actionUserDetail() {
  24. $user_id = Yii::app()->getRequest()->getParam('user_id');
  25. if (CommonFn::isMongoId($user_id)) {
  26. $user = RUser::get(new MongoId($user_id));
  27. //查找是否有该用户
  28. if (!empty($user)) {
  29. $user_name = Yii::app()->getRequest()->getParam('user_name','');
  30. $sex = Yii::app()->getRequest()->getParam('sex',1);
  31. $card_id = Yii::app()->getRequest()->getParam('card_id',0);
  32. $mobile = Yii::app()->getRequest()->getParam('mobile','');
  33. $address = Yii::app()->getRequest()->getParam('address','');
  34. $time = Yii::app()->getRequest()->getParam('time');
  35. $register_time = time();
  36. $criteria = new EMongoCriteria();
  37. $criteria->user_id('==',$user->_id);
  38. $tmp = UserInfo::model()->find($criteria);
  39. if ($tmp) {
  40. $tmp->user_id = $user->_id;
  41. $tmp->user_name = $user_name;
  42. $tmp->time = $time;
  43. $tmp->sex = $sex;
  44. $tmp->card_id = $card_id;
  45. $tmp->mobile = $mobile;
  46. $tmp->address = $address;
  47. $result = $tmp->save();
  48. } else {
  49. $userInfo = new UserInfo;
  50. $userInfo->user_id = $user->_id;
  51. $userInfo->user_name = $user_name;
  52. $userInfo->time = $time;
  53. $userInfo->sex = $sex;
  54. $userInfo->card_id = $card_id;
  55. $userInfo->mobile = $mobile;
  56. $userInfo->address = $address;
  57. $userInfo->register_time = $register_time;
  58. $result = $userInfo->save();
  59. }
  60. CommonFn::requestAjax(true,CommonFn::getMessage('message','operation_success'),$result);
  61. } else {
  62. CommonFn::requestAjax(false,CommonFn::getMessage('message','id_not_exits'));
  63. }
  64. } else {
  65. CommonFn::requestAjax(false,CommonFn::getMessage('message','params_illegal'));
  66. }
  67. }
  68. public function actionFindUserInfoByMobile() {
  69. $mobile = Yii::app()->getRequest()->getParam('mobile','');
  70. if (empty($mobile)) {
  71. CommonFn::requestAjax(false, CommonFn::getMessage('message', 'mobile_not_exits'));exit;
  72. } else {
  73. $criteria = new EMongoCriteria();
  74. $criteria->addCond('mobile','==',$mobile);
  75. $cursor = UserInfo::model()->findAll($criteria);
  76. $users = CommonFn::getRowsFromCursor($cursor);
  77. $users = UserInfo::model()->parse($users);
  78. CommonFn::requestAjax(true,CommonFn::getMessage('message','operation_success'),$users);
  79. }
  80. }
  81. public function actionXOrderByUserId()
  82. {
  83. $user_id = Yii::app()->request->getParam('user_id','');
  84. if (!CommonFn::isMongoId($user_id)) {
  85. CommonFn::requestAjax(false, CommonFn::getMessage('message', 'id_not_exits'));exit;
  86. }
  87. $criteria = new EMongoCriteria();
  88. $criteria->user_id('==',new MongoId($user_id));
  89. $userInfos = XyhOrder::model()->findAll($criteria);
  90. $row = CommonFn::getRowsFromCursor($userInfos);
  91. $i = 0;
  92. $data = array();
  93. foreach ($userInfos as $key => $value) {
  94. $criteria = new EMongoCriteria();
  95. $criteria->xyh_order_id('==',(string)$value->_id);
  96. $tmp = Docters::model()->findAll($criteria);
  97. $tmp = CommonFn::getRowsFromCursor($tmp);
  98. $data[$i]['docters'] = Docters::model()->parse($tmp);
  99. $tmp = NutritiousMeals::model()->findAll($criteria);
  100. $tmp = CommonFn::getRowsFromCursor($tmp);
  101. $data[$i]['nutritiousMeals'] = NutritiousMeals::model()->parse($tmp);
  102. $tmp = Techs::model()->findAll($criteria);
  103. $tmp = CommonFn::getRowsFromCursor($tmp);
  104. $data[$i]['techs'] = Techs::model()->parse($tmp);
  105. $tmp = YsServices::model()->findAll($criteria);
  106. $tmp = CommonFn::getRowsFromCursor($tmp);
  107. $data[$i]['ysServices'] = YsServices::model()->parse($tmp);
  108. $tmp = Prolactins::model()->findAll($criteria);
  109. $tmp = CommonFn::getRowsFromCursor($tmp);
  110. $data[$i]['prolactins'] = Prolactins::model()->parse($tmp);
  111. $tmp = Foods::model()->findAll($criteria);
  112. $tmp = CommonFn::getRowsFromCursor($tmp);
  113. $data[$i++]['foods'] = Foods::model()->parse($tmp);
  114. }
  115. $rows = array();
  116. foreach ($row as $k => $v) {
  117. $package = PackageProduct::get(new MongoId($v['package_id']));
  118. $row[$k]['package_name'] = $package->package_name;
  119. }
  120. $rows['xyh_orders'] = $row;
  121. $rows['service_info'] = $data;
  122. CommonFn::requestAjax(true, '成功',$rows);exit;
  123. }
  124. }