public
function
project_search(){
$this
->load->library('pagination');
$this
->load->model('depart_mdl');
$data
=
$this
->get_project_data();
$get_data
=
$this
->input->get();
$data
=
array_merge
(
$data
,
$get_data
);
$name
=
$get_data
['name'];
$username
=
$get_data
['username'];
$budget
=
$get_data
['budget'];
$type
=
$get_data
['type'];
$posttime_start
=
$get_data
['posttime_start'];
$posttime_end
=
$get_data
['posttime_end'];
$purchase_type
=
$get_data
['purchase_type'];
$depart_code
=
$get_data
['depart_code'];
$project_status
=
$get_data
['project_status'];
$bidder_way
=
$get_data
['bidder_way'];
$suffix
=
"?name=$name&username=$username&budget=$budget&type=$type&posttime_start=$posttime_start&posttime_end=$posttime_end&purchase_type=$purchase_type&depart_code=$depart_code&project_status=$project_status&bidder_way=$bidder_way"
;
$config
['base_url'] = site_url('project/project_search').
$suffix
;
$config
['total_rows'] =
$this
->db->count_all(
$this
->db->dbprefix('project'));
$config
['per_page'] = 10;
$config
['page_query_string'] = TRUE;
$config
['query_string_segment'] = 'page';
$config
['uri_segment'] = 3;
$this
->pagination->initialize(
$config
);
$user
=
$this
->user_mdl->get_user_by_salary_no(
$this
->session->userdata('salary_no'));
$this
->db->from('ustc_project');
$this
->db->join('ustc_admins','ustc_admins.salary_no=ustc_project.salary_no');
if
(
$user
->role!=1){
$depart_code
=
explode
(',',
$user
->grant_depart_code);
$this
->db->where_in('grant_depart_code',
$depart_code
);
$this
->db->or_where('ustc_project.salary_no =',
$this
->session->userdata('salary_no'));
}
if
(
$name
!= ''){
$this
->db->like('name',
$name
);
}
if
(
$username
!= ''){
$this
->db->like('username',
$get_data
['username']);
}
if
(
$budget
!= ''){
$this
->db->like('budget',
$get_data
['budget']);
}
if
(
$type
!= ''){
$this
->db->where('type',
$get_data
['type']);
}
if
(
$depart_code
!= ''){
$this
->db->where('depart_code',
$get_data
['depart_code']);
}
if
(
$purchase_type
!= ''){
$this
->db->where('purchase_type',
$get_data
['purchase_type']);
}
if
(
$project_status
!= ''){
$this
->db->where('project_status',
$get_data
['project_status']);
}
if
(
$bidder_way
!= ''){
$this
->db->where('bidder_way',
$get_data
['bidder_way']);
}
if
(
$posttime_start
!= ''){
$this
->db->where('posttime > ',
strtotime
(
$get_data
['posttime_start']));
}
if
(
$posttime_end
!= ''){
$this
->db->where('posttime < ',
strtotime
(
$get_data
['posttime_end']));
}
if
(isset(
$get_data
['page'])){
$page_from
=
$get_data
['page'];
}
else
{
$page_from
= 0;
}
$this
->db->order_by('posttime','desc');
$projects
=
$this
->db->limit(
$config
['per_page'],
$page_from
)->get()->result_array();
for
(
$i
=0;
$i
<
count
(
$projects
);
$i
++){
$projects
[
$i
]['type'] =
$this
->manage_info_mdl->get_value_by_id(
$projects
[
$i
]['type'])->value;
$projects
[
$i
]['purchase_type'] =
$this
->manage_info_mdl->get_value_by_id(
$projects
[
$i
]['purchase_type'])->value;
$projects
[
$i
]['depart'] =
$this
->depart_mdl->get_depart_by_code(
$projects
[
$i
]['depart_code'])->name;
}
$data
['projects'] =
$projects
;
$data
['user_role'] =
$this
->user_mdl->get_user_by_salary_no(
$this
->session->userdata('salary_no'))->role;
$this
->_template('project_search',
$data
);
}