select
si.id as supplier_id
,si.name as supplier_name
,u.login_name
,si.contact_tel
,s.name as station_name
,fc.name as category_name
,case when fc_parent.id is not null then fc_parent.name else fc.name end as parent_category_name
,f.name as flower_name
,f.`level` as flower_level
,f.unit as flower_unit
,f.price as flower_price
,f.stock flower_stock
,f.status as flower_status
from t_flower f
left join t_supplier_info si
on f.supplier_id=si.id
left join t_user u
on si.user_id =u.id
left join t_station s
on si.station_id=s.id
left join t_flower_category fc
on f.category=fc.id
left join t_flower_category fc_parent
on fc.parent_id=fc_parent.id
-- and u.deleted=0 and s.deleted=0 and fc.deleted=0
order by ${dto.orderField} ${dto.orderType}
select
si.id as supplier_id
,si.name as supplier_name
,u.login_name
,si.contact_tel
,s.name as station_name
,fc.name as category_name
,case when fc_parent.id is not null then fc_parent.name else fc.name end as parent_category_name
,f.name as flower_name
,f.`level` as flower_level
,f.unit as flower_unit
,f.price as flower_price
,f.stock flower_stock
,f.status as flower_status
,code.label as flower_status_str
, code2.label as flower_level_str
from t_flower f
left join t_supplier_info si
on f.supplier_id=si.id
left join t_user u
on si.user_id =u.id
left join t_station s
on si.station_id=s.id
left join t_flower_category fc
on f.category=fc.id
left join t_flower_category fc_parent
on fc.parent_id=fc_parent.id
LEFT JOIN (SELECT ct.label, ct.value from t_code_value ct where type_code = 'FLOWER_STATUS') code ON f.status = code.value
LEFT JOIN (SELECT ct.label, ct.value from t_code_value ct where type_code = 'FLOWER_LEVEL') code2 ON f.`level` = code2.value
order by ${dto.orderField} ${dto.orderType}
where f.deleted=0 and si.deleted =0
and f.supplier_id = #{dto.supplierId}
AND si.name LIKE concat('%', #{dto.supplierName},'%')
AND u.login_name LIKE concat('%', #{dto.loginName},'%')
AND si.contact_tel LIKE concat('%', #{dto.contactTel},'%')
AND si.station_id = #{dto.stationId}
AND ( f.category = #{dto.flowerCategory} or f.category in (
select id from t_flower_category where parent_id = #{dto.flowerCategory}
))
AND f.status = #{dto.flowerStatus}
AND f.`level` = #{dto.flowerLevel}