user.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. Doo::loadCore('db/DooModel');
  3. /**
  4. * Created by PhpStorm.
  5. * User: ellisran
  6. * Date: 2016/9/22
  7. * Time: 16:20
  8. */
  9. class User extends DooModel {
  10. public $userid;
  11. public $username;
  12. public $realname;
  13. public $useremail;
  14. public $mobile;
  15. public $userpasswd;
  16. public $idcard;
  17. public $_table = 'kt_user';
  18. public $_primarykey = 'userid';
  19. public $_fields = array('userid', 'username', 'realname', 'useremail', 'mobile', 'userpasswd', 'idcard');
  20. public function __construct() {
  21. parent::setupModel(__CLASS__);
  22. }
  23. public function getAllRow($limit){
  24. return $this->find(array('asc' => 'userid', 'limit' => $limit, 'asArray' => true));
  25. }
  26. public function getResultbysort($sort = '',$limit) {
  27. if($sort == 'id' || $sort == ''){
  28. return $this->find(array('asc' => 'userid', 'limit' => $limit, 'asArray' => true));
  29. }elseif($sort == 'class') {
  30. $sql = 'SELECT `kt_user`. * , count( `kt_class_user`.userid ) FROM `kt_user` LEFT JOIN `kt_class_user` ON `kt_user`.userid = `kt_class_user`.userid GROUP BY `kt_user`.userid ORDER BY count( `kt_class_user`.userid ) DESC , userid ASC LIMIT ' . $limit;
  31. $query = Doo::db ()->query ( $sql );
  32. $result = $query->fetchAll ();
  33. return $result;
  34. }elseif($sort == 'cost') {
  35. $sql = 'SELECT `kt_user`. * , sum( `kt_class_user`.price ) FROM `kt_user` LEFT JOIN `kt_class_user` ON `kt_user`.userid = `kt_class_user`.userid GROUP BY `kt_user`.userid ORDER BY sum( `kt_class_user`.price ) DESC , userid ASC LIMIT ' . $limit;
  36. $query = Doo::db ()->query ( $sql );
  37. $result = $query->fetchAll ();
  38. return $result;
  39. }
  40. }
  41. public function getNamebyId($id){
  42. return $this->getOne(array('select' => 'username,realname,idcard', 'where' => 'userid='.$id, 'asArray' => TRUE));
  43. }
  44. public function getuserbyId($id){
  45. return $this->getOne(array('where' => 'userid='.$id, 'asArray' =>TRUE));
  46. }
  47. public function getUserMsgbySearch($search){
  48. return $this->getOne(array('where' => 'username="'.$search.'" or realname="'.$search.'"', 'asArray' => TRUE));
  49. }
  50. public function getUserMsgbyidcard($search){
  51. return $this->getOne(array('where' => 'idcard like "%'.$search.'"', 'asArray' => TRUE));
  52. }
  53. public function getRowByEmail($email){
  54. return $this->getOne(array('where' => 'useremail="'.$email.'"', 'asArray' => TRUE));
  55. }
  56. public function getRowByMobile($mobile){
  57. return $this->getOne(array('where' => 'mobile="'.$mobile.'"', 'asArray' => TRUE));
  58. }
  59. public function getRowByUsername($username){
  60. return $this->getOne(array('where' => 'username="'.$username.'"', 'asArray' => TRUE));
  61. }
  62. public function getRowByUserPass($data){
  63. return $this->getOne(array('where' => 'username="'.$data['name'].'" and password="'.$data['password'].'"'));
  64. }
  65. }