forked from kidgrow-microservices-platform

houruijun
2020-10-22 e50e03e296a2456836afbb7f6bee461ee7bddd05
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderDetailMapper.xml
@@ -145,7 +145,7 @@
    <sql id="whereforall">
        <where>
            <!--查询条件自行添加-->
            DE.is_del=0 and DE.ailight_count>0 and DE.pro_begintime &lt;=now() and DE.pro_endtime >=now() and
            DE.is_del=0 and DE.ailight_count>=0 and DE.pro_begintime &lt;=now() and DE.pro_endtime >=now() and
            DE.enabled=1
            <if test="p.hospitalId != null and p.hospitalId !=''">
                and PRO.hospital_id = #{p.hospitalId}
@@ -168,7 +168,10 @@
        product_order_detail DE
        LEFT JOIN product_order PRO ON DE.order_id = PRO.id
        <include refid="whereforall"/>
        order by DE.pro_endtime asc,DE.id asc
        order by
        DE.pro_endtime ASC,
        DE.pro_begintime ASC,
        DE.id asc
    </select>
    <select id="getEnabledCount" resultType="int" parameterType="long">
@@ -261,4 +264,99 @@
ORDER BY
   create_time DESC
    </select>
   <select id="getUserdProduct" resultType="int">
        SELECT
        sum(total)
        FROM
        (
        SELECT
        count(*) total
        FROM
        `product_order` order_order
        LEFT JOIN product_order_record record ON order_order.id = record.order_id
        WHERE
        order_order.hospital_id = #{hospitalId}
        AND order_order.department_id = #{departmentId}
        and  record.pro_id!=1000000000000000000
        AND order_order.is_del = 0
   AND order_order.enabled = 1
      AND record.is_del = 0
   AND record.enabled = 1
   AND record.pro_endtime>now()
        UNION ALL
        SELECT
        count(*) total
        FROM
        `product_order` order_order
        LEFT JOIN product_order_record record ON order_order.id = record.order_id
        WHERE
        order_order.hospital_id = #{hospitalId}
        AND record.is_share = 1
        and  record.pro_id!=1000000000000000000
        AND order_order.is_del = 0
   AND order_order.enabled = 1
      AND record.is_del = 0
   AND record.enabled = 1
   AND record.pro_endtime>now()
        ) cc
    </select>
    <select id="productEndList" resultType="com.kidgrow.oprationcenter.vo.ProductEndVo">
        SELECT
        id,
        pro_id,
        pro_begintime beginTime,
        MIN( T2.pro_endtime ) endTime,
        MIN( T2.ailight_count ) ailight_count,
        pro_type,
        pro_name,
        T2.hospital_id,
        hospital_name,
        T2.department_id,
        department_name
        FROM
        (
        SELECT
        details.id id,
        details.pro_id,
        details.pro_begintime pro_begintime,
        details.pro_endtime pro_endtime,
        details.ailight_count,
        details.pro_name pro_name,
        details.pro_type pro_type,
        orders.hospital_id hospital_id,
        orders.hospital_name hospital_name,
        orders.department_id department_id,
        orders.department_name department_name
        FROM
        product_order_detail details
        LEFT JOIN product_order orders ON orders.id = details.order_id
        WHERE
        details.is_del = 0
        AND details.enabled = 1
        AND orders.is_del = 0
        AND orders.enabled = 1
        AND pro_endtime BETWEEN now() AND DATE_ADD(NOW(), INTERVAL ${monthPar} MONTH)
        AND ailight_count BETWEEN 1 AND ${aiCountPar}
        AND pro_type=1
        ORDER BY
        ailight_count,
        pro_endtime
        ) AS T2
        GROUP BY
        department_id,
        hospital_id,
        department_name,
        hospital_name,
        id,
        pro_id,
        pro_type,
        pro_name,
        ailight_count,
        pro_endtime,
        pro_begintime
        ORDER BY
        ailight_count,
        pro_endtime,
        department_id
    </select>
</mapper>