MobileBenefitPackageMapper.xml 4.8 KB
Newer Older
杨凯's avatar
杨凯 committed
1 2 3 4
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.ebaiyihui.family.doctor.server.mapper.MobileBenefitPackageMapper">
    <sql id="base_columns">
杨凯's avatar
杨凯 committed
5
        x_id,productId,phone,userId,orderId,timeLimit,used,activateOrderId,benefitsStartTime,benefitsEndTime
杨凯's avatar
杨凯 committed
6 7 8 9 10
    </sql>
    <insert id="insert">
        INSERT INTO mobile_benefit_package (
                <if test="productId != '' and productId != null">productId,</if>
                <if test="userId != '' and userId != null">userId,</if>
杨凯's avatar
杨凯 committed
11
                <if test="orderId != '' and orderId != null">orderId,</if>
杨凯's avatar
杨凯 committed
12 13
                <if test="timeLimit != 0 and timeLimit != null">timeLimit,</if>
                <if test="activateOrderId != '' and activateOrderId != null">activateOrderId,</if>
杨凯's avatar
杨凯 committed
14 15 16 17 18 19 20 21 22 23
                <if test="benefitsStartTime != '' and benefitsStartTime != null">benefitsStartTime,</if>
                <if test="benefitsEndTime != '' and benefitsEndTime != null">benefitsEndTime,</if>
                <if test="isRenew != '' and isRenew != null">isRenew,</if>
                <if test="phone != '' and phone != null">phone</if>
        )
        VALUES
            (
                <if test="productId != '' and productId != null">#{productId,jdbcType=VARCHAR},</if>
                <if test="userId != '' and userId != null">#{userId,jdbcType=VARCHAR},</if>
                <if test="orderId != '' and orderId != null">#{orderId,jdbcType=VARCHAR},</if>
杨凯's avatar
杨凯 committed
24 25
                <if test="timeLimit != 0 and timeLimit != null">#{timeLimit,jdbcType=TINYINT},</if>
                <if test="activateOrderId != '' and activateOrderId != null">#{activateOrderId,jdbcType=VARCHAR},</if>
杨凯's avatar
杨凯 committed
26 27 28 29 30 31 32 33 34
                <if test="benefitsStartTime != '' and benefitsStartTime != null">#{benefitsStartTime},</if>
                <if test="benefitsEndTime != '' and benefitsEndTime != null">#{benefitsEndTime},</if>
                <if test="isRenew != '' and isRenew != null">#{isRenew,jdbcType=VARCHAR},</if>
                <if test="phone != '' and phone != null">#{phone,jdbcType=VARCHAR}</if>
            )
    </insert>
    <update id="updateUsed">
        update mobile_benefit_package set
        used = #{used,jdbcType=TINYINT}
杨凯's avatar
杨凯 committed
35
        where phone = #{phone,jdbcType=VARCHAR} and activateOrderId = #{activateOrderId}
杨凯's avatar
杨凯 committed
36 37 38 39
    </update>
    <update id="update">
        update mobile_benefit_package set
            userId = #{userId,jdbcType=VARCHAR}
杨凯's avatar
杨凯 committed
40
        where phone = #{phone,jdbcType=VARCHAR} and activateOrderId = #{activateOrderId}
杨凯's avatar
杨凯 committed
41 42
    </update>

杨凯's avatar
杨凯 committed
43 44 45
    <update id="updateDoctorId">
        update mobile_benefit_package set
            doctorId = #{doctorId,jdbcType=VARCHAR}
杨凯's avatar
杨凯 committed
46
        where phone = #{phone,jdbcType=VARCHAR} and activateOrderId = #{activateOrderId}
杨凯's avatar
杨凯 committed
47 48
    </update>

杨凯's avatar
杨凯 committed
49 50 51
    <update id="updateVersion">
        update mobile_benefit_package set
            version = #{version,jdbcType=TINYINT}
杨凯's avatar
杨凯 committed
52
        where phone = #{phone,jdbcType=VARCHAR} and activateOrderId = #{activateOrderId}
杨凯's avatar
杨凯 committed
53 54
    </update>

杨凯's avatar
杨凯 committed
55 56 57 58 59 60
    <select id="queryByPhone" resultType="com.ebaiyihui.family.doctor.server.entity.MobileBenefitPackageEntity">
        SELECT
        <include refid="base_columns"/>
        FROM
            mobile_benefit_package
        WHERE
杨凯's avatar
杨凯 committed
61
            phone = #{mobile} and activateOrderId = #{activateOrderId}
杨凯's avatar
杨凯 committed
62
            <if test="flag!=null and flag!=''">
杨凯's avatar
杨凯 committed
63
            and NOW() BETWEEN STR_TO_DATE(benefitsStartTime, '%Y-%m-%d %H:%i:%s') AND STR_TO_DATE(benefitsEndTime, '%Y-%m-%d %H:%i:%s')
杨凯's avatar
杨凯 committed
64
            </if>
杨凯's avatar
杨凯 committed
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
        ORDER BY
            x_create_time DESC
            LIMIT 0,1
    </select>

<!--    <select id="queryByOrderId" resultType="com.ebaiyihui.family.doctor.server.entity.MobileBenefitPackageEntity">-->
<!--        SELECT-->
<!--            <include refid="base_columns"/>-->
<!--        FROM-->
<!--            mobile_benefit_package-->
<!--        WHERE-->
<!--            orderId = #{orderId}-->
<!--        ORDER BY-->
<!--            x_create_time DESC-->
<!--            LIMIT 0,1-->
<!--    </select>-->
    <select id="getPatientIdsByPhoneAndOrderId" resultType="java.lang.String">
        SELECT DISTINCT
            ia.patient_id
        FROM
            mobile_benefit_package mbp
                LEFT JOIN inquiry_admission ia ON mbp.orderId = ia.package_id
        WHERE
            mbp.phone = #{phone}
    </select>
杨凯's avatar
杨凯 committed
90 91

    <select id="queryMaxOneList" resultType="com.ebaiyihui.family.doctor.server.entity.MobileBenefitPackageEntity">
杨凯's avatar
杨凯 committed
92
        SELECT t.x_id,t.productId,t.phone,t.userId,t.orderId,t.timeLimit,t.used, t.activateOrderId, t.benefitsStartTime, t.benefitsEndTime, t.isRenew
杨凯's avatar
杨凯 committed
93 94 95 96 97
        FROM mobile_benefit_package t
        LEFT JOIN mobile_benefit_package t2
            ON t.phone = t2.phone AND t.x_create_time &lt; t2.x_create_time
        WHERE t2.phone IS NULL and t.isRenew = 1 and t.version = 0;
    </select>
杨凯's avatar
杨凯 committed
98
</mapper>