select p.*, c.short_name as company_name , co.name as contact_name, u.nickname as manager_name, dict_type.label as project_type_name, dict_status.label as project_status_name, dict_stage.label as project_stage_name from project_info p left join company_info c on p.company_id= c.id left join contact_info co on p.contact_id =co.id left join lin_user u on p.manager_id=u.id left join ( select id,label,value from sys_dict_item where dict_type='project_type' and is_deleted=0 ) dict_type on p.project_type=dict_type.`value` left join ( select id,label,value from sys_dict_item where dict_type='project_status' and is_deleted=0 ) dict_status on p.project_status=dict_status.`value` left join ( select id,label,value from sys_dict_item where dict_type='project_stage' and is_deleted=0 ) dict_stage on p.project_stage=dict_stage.`value` where p.is_deleted=0 select p.*, c.short_name as company_name , co.name as contact_name, u.nickname as manager_name, dict_type.label as project_type_name, dict_status.label as project_status_name, dict_stage.label as project_stage_name from project_info p left join company_info c on p.company_id= c.id left join contact_info co on p.contact_id =co.id left join lin_user u on p.manager_id=u.id left join ( select id,label,value from sys_dict_item where dict_type='project_type' and is_deleted=0 ) dict_type on p.project_type=dict_type.`value` left join ( select id,label,value from sys_dict_item where dict_type='project_status' and is_deleted=0 ) dict_status on p.project_status=dict_status.`value` left join ( select id,label,value from sys_dict_item where dict_type='project_stage' and is_deleted=0 ) dict_stage on p.project_stage=dict_stage.`value` where p.is_deleted=0 and ( UPPER(p.project_name) like UPPER(concat('%',#{dto.keyword},'%')) or p.project_desc like concat('%',#{dto.keyword},'%') or p.remark like concat('%',#{dto.keyword},'%') or c.short_name like concat('%',#{dto.keyword},'%') or co.name like concat('%',#{dto.keyword},'%') or u.username like concat('%',#{dto.keyword},'%') ) and p.project_status= #{dto.status} and p.project_stage=#{dto.stage} and p.project_type= #{dto.type} and p.project_status in #{item} and p.project_stage in #{item} and p.project_type in #{item} order by p.create_time desc select p.*, c.short_name as company_name , co.name as contact_name, u.nickname as manager_name, dict_type.label as project_type_name, dict_status.label as project_status_name, dict_stage.label as project_stage_name from project_info p left join company_info c on p.company_id= c.id left join contact_info co on p.contact_id =co.id left join lin_user u on p.manager_id=u.id left join ( select id,label,value from sys_dict_item where dict_type='project_type' and is_deleted=0 ) dict_type on p.project_type=dict_type.`value` left join ( select id,label,value from sys_dict_item where dict_type='project_status' and is_deleted=0 ) dict_status on p.project_status=dict_status.`value` left join ( select id,label,value from sys_dict_item where dict_type='project_stage' and is_deleted=0 ) dict_stage on p.project_stage=dict_stage.`value` where p.is_deleted=0