|  |  | 
 |  |  |         a.type, | 
 |  |  |         a.SOURCE, | 
 |  |  |         e.ORDER_NO, | 
 |  |  |         a.remark | 
 |  |  |         a.remark, | 
 |  |  |         s.SHOP_NAME | 
 |  |  |         from sys_proj_use a | 
 |  |  |         left join shopping_goods b on a.proj_id = b.id | 
 |  |  |         left join sys_vip_info c on c.ID = a.VIP_ID | 
 |  |  |             left join sys_shop_info s on c.SHOP_ID=s.id | 
 |  |  |         left join sys_order_item d on d.id = a.ORDER_ITEM_ID | 
 |  |  |         left join sys_order e on e.id = d.ORDER_ID | 
 |  |  |         left join shopping_goods_category f on f.id = b.cate_id | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |         <where> | 
 |  |  | 
 |  |  |         <collection property="taocanProjUse" ofType="com.matrix.system.hive.bean.SysProjUse"> | 
 |  |  |             <id property="id" column="proj_info_id" /> | 
 |  |  |             <result property="projName" column="proj_proj_name"/> | 
 |  |  |             <result property="source" column="proj_source"/> | 
 |  |  |             <result property="price" column="proj_price"/> | 
 |  |  |             <result property="failTime" column="proj_FAIL_TIME"/> | 
 |  |  |             <result property="surplusCount" column="proj_SURPLUS_COUNT"/> | 
 |  |  |             <result property="timeLength" column="proj_time_length"/> | 
 |  |  | 
 |  |  |             e.SURPLUS_COUNT proj_SURPLUS_COUNT, | 
 |  |  |             e.id proj_info_id, | 
 |  |  |             e.proj_id proj_projId, | 
 |  |  |             e.source proj_source, | 
 |  |  |             e.price proj_price, | 
 |  |  |             e.status proj_status, | 
 |  |  |             f.time_length proj_time_length, | 
 |  |  |             f.img proj_img | 
 |  |  | 
 |  |  |             left join shopping_goods f on e.proj_id=f.id | 
 |  |  |         where 1=1 and a.type='套餐' and a.TAOCAN_ID IS NULL | 
 |  |  |         <if test="record.queryKey != null and record.queryKey !='' "> | 
 |  |  |             and (instr(b.name, #{record.queryKey}) or instr(b.zjm, #{record.queryKey}) or instr(goods_no, #{record.queryKey})) | 
 |  |  |             and (instr(b.name, #{record.queryKey}) or instr(b.zjm, #{record.queryKey}) or instr(b.goods_no, #{record.queryKey})) | 
 |  |  |         </if> | 
 |  |  |         <if test="record.isOver != null and record.isOver !='' "> | 
 |  |  |             and a.IS_OVER = #{record.isOver} | 
 |  |  | 
 |  |  |         </if> | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <select id="selectTaocanCountForCourseAndInfinite" resultType="java.lang.Integer"> | 
 |  |  |         select count(1) from sys_proj_use | 
 |  |  |         where taocan_id=#{taocanId} and vip_id=#{vipId} | 
 |  |  |     </select> | 
 |  |  | </mapper> |