source: pro-violet-viettel/sourcecode/application/modules/admin/models/user_model.php @ 767

Last change on this file since 767 was 767, checked in by namnd, 10 years ago
File size: 5.9 KB
Line 
1<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
2
3class User_model extends CI_Model
4{
5       
6        protected $table_name = 'tbluser';
7        protected $id_name = 'us_id';
8
9        function __construct()
10        {
11                parent::__construct();
12                $this->vservices->setApiUrl($this->config->item('api_url'));
13                $this->vservices->setConnection($this->curl);
14        }
15       
16        function check_data($login_name)
17        {
18                $this->db->where('login_name', $login_name);
19                $query = $this->db->get($this->table_name);
20                return $query->num_rows();
21        }
22       
23        function get_list_users($data)
24        {
25                $sql="SELECT * FROM ".$this->table_name;
26                if ($data['status'] == 1){
27                        $sql.=" WHERE expire_date > NOW() AND p_id <> 5";
28                }
29                if ($data['status'] == 2){
30                        $sql.=" WHERE expire_date > NOW() AND p_id = 5";
31                }
32                if ($data['status'] == 3){
33                        $sql.=" WHERE expire_date < NOW() AND p_id = 5";
34                }
35                if ($data['status'] == 4){
36                        $sql.=" WHERE expire_date < NOW() AND p_id <> 5";
37                }
38                if (isset($data['keyword']))
39                {
40                        if (strlen($data['keyword'])>0){
41                                if ($data['status']==0){
42                                        if(strlen($data['daterange_start'])>0){
43                                                $sql.=" WHERE (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%') AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
44                                        }else
45                                        {
46                                                $sql.=" WHERE (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%')";
47                                        }
48                                }else
49                                {
50                                        if(strlen($data['daterange_start'])>0){
51                                                $sql.=" AND (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%') AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
52                                        }else{
53                                                $sql.=" AND (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%') ";
54                                        }
55                                }
56                        }else
57                        {
58                                if(strlen($data['daterange_start'])>0){
59                                        if ($data['status']==0){
60                                                $sql.=" WHERE created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."'";
61                                        }else{
62                                                $sql.=" AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
63                                        }
64                                }
65                        }
66                }
67                $order = "";
68                if ($data['sorting_order'] != "sorting") {
69                        if($data['sorting_field'] != "status"){
70                                $sort = "DESC";
71                                if ($data['sorting_order'] == "sorting_asc")
72                                        $sort = "ASC";
73                                $order = "ORDER BY " . $data['sorting_field'] . " " . $sort;
74                        }
75                }
76                return $this->db->query($sql." ".$order." LIMIT ".$data['start'].", ".$data['perpage']." ")->result_array();
77        }
78
79        function get_total_users($data)
80        {
81                $sql="SELECT COUNT(".$this->id_name.") AS total FROM ".$this->table_name;
82               
83                if ($data['status'] == 1){
84                        $sql.=" WHERE expire_date > NOW() AND p_id <> 5";
85                }
86                if ($data['status'] == 2){
87                        $sql.=" WHERE expire_date > NOW() AND p_id = 5";
88                }
89                if ($data['status'] == 3){
90                        $sql.=" WHERE expire_date < NOW() AND p_id = 5";
91                }
92                if ($data['status'] == 4){
93                        $sql.=" WHERE expire_date < NOW() AND p_id <> 5";
94                }
95               
96                if (isset($data['keyword']))
97                {
98                        if (strlen($data['keyword'])>0){
99                                if ($data['status']==0){
100                                        if(strlen($data['daterange_start'])>0){
101                                                $sql.=" WHERE (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%') AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
102                                        }else
103                                        {
104                                                $sql.=" WHERE (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%')";
105                                        }
106                                }else
107                                {
108                                        if(strlen($data['daterange_start'])>0){
109                                                $sql.=" AND (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%') AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
110                                        }else{
111                                                $sql.=" AND (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR district LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%') ";
112                                        }
113                                }
114                        }else
115                        {
116                                if(strlen($data['daterange_start'])>0){
117                                        if ($data['status']==0){
118                                                $sql.=" WHERE created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."'";
119                                        }else{
120                                                $sql.=" AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
121                                        }
122                                }
123                        }
124                       
125                }
126               
127                $query = $this->db->query($sql);
128                $row = $query->row_array();
129               
130                return $row['total'];
131        }
132       
133        function get_user_info($src, $us_id, $token)
134        {
135                $data = $this->vservices->actionExecute('getinfo', array('src' => $src, 'us_id' => $us_id, 'token'=>$token), 'user');
136        return $data;
137        }
138       
139}
Note: See TracBrowser for help on using the repository browser.