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

Last change on this file since 858 was 818, checked in by namnd, 10 years ago
File size: 8.5 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['province_code'])>0){
43                                                if(strlen($data['daterange_start'])>0){
44                                                        $sql.=" WHERE province = '".$data['province_code']."' AND (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']."')";
45                                                }
46                                        }else{
47                                                if(strlen($data['daterange_start'])>0){
48                                                        $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']."')";
49                                                }else
50                                                {
51                                                        $sql.=" WHERE (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%')";
52                                                }
53                                        }
54                                }else
55                                {
56                                        if (strlen($data['province_code'])>0){
57                                                if(strlen($data['daterange_start'])>0){
58                                                        $sql.=" AND province = '".$data['province_code']."' 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']."')";
59                                                }else{
60                                                        $sql.=" AND province = '".$data['province_code']."' 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']."%') ";
61                                                }
62                                        }
63                                }
64                        }else
65                        {
66                                if(strlen($data['daterange_start'])>0){
67                                        if ($data['status']==0){
68                                                if (strlen($data['province_code'])>0){
69                                                        $sql.=" WHERE province = '".$data['province_code']."' AND created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."'";
70                                                }else{
71                                                        $sql.=" WHERE (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
72                                                }
73                                        }else{
74                                                if (strlen($data['province_code'])>0){
75                                                        $sql.=" AND province = '".$data['province_code']."' AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
76                                                }else{
77                                                        $sql.=" AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
78                                                }
79                                        }               
80                                }
81                                else{
82                                        if ($data['status']==0){
83                                                if (strlen($data['province_code'])>0){
84                                                        $sql.=" WHERE province = '".$data['province_code']."'";
85                                                }
86                                        }else{
87                                                if (strlen($data['province_code'])>0){
88                                                        $sql.=" AND province = '".$data['province_code']."'";
89                                                }
90                                        }               
91                                }
92                        }
93                }
94                $order = "";
95                if ($data['sorting_order'] != "sorting") {
96                        if($data['sorting_field'] != "status"){
97                                $sort = "DESC";
98                                if ($data['sorting_order'] == "sorting_asc")
99                                        $sort = "ASC";
100                                $order = "ORDER BY " . $data['sorting_field'] . " " . $sort;
101                        }
102                }
103                write_file('./log/test.log', date("d-m-Y: H:i:s"). ": ".$sql." ".$order." LIMIT ".$data['start'].", ".$data['perpage'] , FOPEN_WRITE_CREATE);
104                return $this->db->query($sql." ".$order." LIMIT ".$data['start'].", ".$data['perpage']." ")->result_array();
105        }
106
107        function get_total_users($data)
108        {
109                $sql="SELECT COUNT(".$this->id_name.") AS total FROM ".$this->table_name;
110               
111                if ($data['status'] == 1){
112                        $sql.=" WHERE expire_date > NOW() AND p_id <> 5";
113                }
114                if ($data['status'] == 2){
115                        $sql.=" WHERE expire_date > NOW() AND p_id = 5";
116                }
117                if ($data['status'] == 3){
118                        $sql.=" WHERE expire_date < NOW() AND p_id = 5";
119                }
120                if ($data['status'] == 4){
121                        $sql.=" WHERE expire_date < NOW() AND p_id <> 5";
122                }
123               
124                if (isset($data['keyword']))
125                {
126                        if (strlen($data['keyword'])>0){
127                                if ($data['status']==0){
128                                        if (strlen($data['province_code'])>0){
129                                                if(strlen($data['daterange_start'])>0){
130                                                        $sql.=" WHERE province = '".$data['province_code']."' AND (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']."')";
131                                                }
132                                        }else{
133                                                if(strlen($data['daterange_start'])>0){
134                                                        $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']."')";
135                                                }else
136                                                {
137                                                        $sql.=" WHERE (cellphone LIKE '%".$data['keyword']."%' OR collaborator LIKE '%".$data['keyword']."%' OR acc_balanced LIKE '%".$data['keyword']."%' OR province LIKE '%".$data['keyword']."%')";
138                                                }
139                                        }
140                                }else
141                                {
142                                        if (strlen($data['province_code'])>0){
143                                                if(strlen($data['daterange_start'])>0){
144                                                        $sql.=" AND province = '".$data['province_code']."' 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']."')";
145                                                }else{
146                                                        $sql.=" AND province = '".$data['province_code']."' 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']."%') ";
147                                                }
148                                        }
149                                }
150                        }else
151                        {
152                                if(strlen($data['daterange_start'])>0){
153                                        if ($data['status']==0){
154                                                if (strlen($data['province_code'])>0){
155                                                        $sql.=" WHERE province = '".$data['province_code']."' AND created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."'";
156                                                }else{
157                                                        $sql.=" AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
158                                                }
159                                        }else{
160                                                if (strlen($data['province_code'])>0){
161                                                        $sql.=" AND province = '".$data['province_code']."' AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
162                                                }else{
163                                                        $sql.=" AND (created_time BETWEEN '".$data['daterange_start']."' AND '".$data['daterange_end']."')";
164                                                }
165                                        }               
166                                }
167                                else{
168                                        if ($data['status']==0){
169                                                if (strlen($data['province_code'])>0){
170                                                        $sql.=" WHERE province = '".$data['province_code']."'";
171                                                }
172                                        }else{
173                                                if (strlen($data['province_code'])>0){
174                                                        $sql.=" AND province = '".$data['province_code']."'";
175                                                }
176                                        }               
177                                }
178                        }
179                }
180               
181                $query = $this->db->query($sql);
182                $row = $query->row_array();
183               
184                return $row['total'];
185        }
186       
187        function get_user_info($src, $us_id, $token)
188        {
189                $data = $this->vservices->actionExecute('getinfo', array('src' => $src, 'us_id' => $us_id, 'token'=>$token), 'user');
190        return $data;
191        }
192       
193}
Note: See TracBrowser for help on using the repository browser.