xiaoyong931011
2022-09-22 a56aa58c55f966c38cb8b5fc969eb1018fad5ce8
src/main/resources/mapper/modules/MallTeamLeaderMapper.xml
@@ -22,6 +22,7 @@
    <select id="selectApiLeaderListInPage" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
        select
        a.*,
        b.longlatiarr,
        ROUND(
            6378.138 * 2 * ASIN(
                SQRT(
@@ -32,8 +33,9 @@
            ) * 1000
        ) AS distance
        from mall_team_leader a
        left join mall_electronic_fence b on b.team_leader_code = a.unique_code
        <where>
            a.state = 1
            a.state = 1 and a.online_state = 1
            <if test="record.query != null and record.query != ''">
                and (a.name like CONCAT('%', CONCAT(#{record.query}, '%'))
                    or a.phone like CONCAT('%', CONCAT(#{record.query}, '%'))
@@ -74,6 +76,7 @@
        <result column="carriage" property="carriage" />
        <result column="remark" property="remark" />
        <result column="del_flag" property="delFlag" />
        <result column="is_home" property="isHome" />
        <collection property="items" ofType="cc.mrbird.febs.mall.entity.MallOrderItem">
            <id property="id" column="item_id" />
            <result property="orderId" column="order_id" />
@@ -110,13 +113,13 @@
        inner join mall_order_item b on a.id=b.order_id
        inner join mall_member c on a.take_unique_code=c.invite_id
        <where>
            a.del_flag=2
            and a.delivery_type = 1
            a.delivery_type = 1
            and c.id=#{record.memberId}
            <if test="record.query != null and record.query != ''">
                and ( a.name like CONCAT('%', CONCAT(#{record.query}, '%'))
                    or a.phone like CONCAT('%', CONCAT(#{record.query}, '%'))
                    or a.take_code like CONCAT('%', CONCAT(#{record.query}, '%'))
                    or b.goods_name like CONCAT('%', CONCAT(#{record.query}, '%'))
                    )
            </if>
            <if test="record.status == 4 and record.status != 0">
@@ -145,7 +148,7 @@
        select
            a.*
        from mall_team_leader a
        where a.state = 1
        where a.state = 1 and a.online_state = 1
    </select>
    <select id="selectLeaderByUniqueCode" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
@@ -168,7 +171,7 @@
        ) * 1000
        ) AS distance
        from mall_team_leader a
        where a.state = 1
        where a.state = 1 and a.online_state = 1
        order by distance ASC limit 1
    </select>
@@ -177,4 +180,38 @@
        where a.team_leader_id = #{record.teamLeaderId}
    </select>
    <select id="selectLeaderByUniqueCodeAndOrderBycreateTime" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
        select
            a.*
        from mall_team_leader a
        where a.unique_code = #{uniqueCode}
        order by a.CREATED_TIME desc
        limit 1
    </select>
    <select id="selectByFenceIdAndFenceNameAndLonAndLat" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
        select
            a.*,
            ROUND(
                        6378.138 * 2 * ASIN(
                            SQRT(
                                        POW(SIN((#{latitude} * PI() / 180 - a.latitude * PI() / 180) / 2),2)
                                        + COS(40.0497810000 * PI() / 180) * COS(a.latitude * PI() / 180)
                                            * POW(SIN((#{longitude}  * PI() / 180 - a.longitude * PI() / 180) / 2),2)
                                )
                        ) * 1000
                ) AS distance
        from mall_team_leader a
        inner join mall_electronic_fence b on b.team_leader_code = a.unique_code
        where b.gid = #{fenceId}
        and b.fence_name = #{fenceName}
    </select>
    <select id="getAllMallTeamLeaderList" resultType="cc.mrbird.febs.mall.entity.MallTeamLeader">
        select
            a.*
        from mall_team_leader a
        where a.state = 1
    </select>
</mapper>