You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
8.2 KiB

<?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.qs.serve.modules.baz.mapper.BazVisitInstanceMapper">
<resultMap id="bazVisitInstanceMap" type="com.qs.serve.modules.baz.entity.BazVisitInstance" >
<result property="id" column="id"/>
<result property="title" column="title"/>
<result property="visitId" column="visit_id"/>
<result property="targetType" column="target_type"/>
<result property="visitState" column="visit_state"/>
<result property="visitorId" column="visitor_id"/>
<result property="visitorCode" column="visitor_code"/>
<result property="visitorName" column="visitor_name"/>
<result property="targetId" column="target_id"/>
<result property="targetCode" column="target_code"/>
<result property="targetName" column="target_name"/>
<result property="targetLocalX" column="target_local_x"/>
<result property="targetLocalY" column="target_local_y"/>
<result property="targetAddress" column="target_address"/>
<result property="targetMapAddress" column="target_map_address"/>
<result property="finishedTime" column="finished_time"/>
<result property="missLocalFlag" column="miss_local_flag"/>
<result property="remark" column="remark"/>
<result property="positionStatusContent" column="position_status_content"/>
<result property="positionStatus" column="position_status"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
<result property="tenantId" column="tenant_id"/>
<result property="delFlag" column="del_flag"/>
<result property="createBy" column="create_by"/>
<result property="updateBy" column="update_by"/>
</resultMap>
<sql id="bazVisitInstanceSql">
baz_visit_instance.`id`,
baz_visit_instance.`title`,
baz_visit_instance.`visit_id`,
baz_visit_instance.`target_type`,
baz_visit_instance.`visit_state`,
baz_visit_instance.`visitor_id`,
baz_visit_instance.`visitor_code`,
baz_visit_instance.`visitor_name`,
baz_visit_instance.`target_id`,
baz_visit_instance.`target_code`,
baz_visit_instance.`target_name`,
baz_visit_instance.`target_local_x`,
baz_visit_instance.`target_local_y`,
baz_visit_instance.`target_address`,
baz_visit_instance.`target_map_address`,
baz_visit_instance.`finished_time`,
baz_visit_instance.`miss_local_flag`,
baz_visit_instance.`remark`,
baz_visit_instance.`position_status_content`,
baz_visit_instance.`position_status`,
baz_visit_instance.`create_time`,
baz_visit_instance.`update_time`,
baz_visit_instance.`tenant_id`,
baz_visit_instance.`del_flag`,
baz_visit_instance.`create_by`,
baz_visit_instance.`update_by` </sql>
<select id="selectBazVisitInstanceList" parameterType="com.qs.serve.modules.baz.entity.BazVisitInstance" resultMap="bazVisitInstanceMap">
SELECT
ins_flow.remark as summary,
ins_flow2.create_time as sign_time,
ins_flow3.create_time as out_time,
<include refid="bazVisitInstanceSql"/>
FROM `baz_visit_instance` `baz_visit_instance`
left join (
select baz_visit_instance_flow.remark,baz_visit_instance_flow.visit_instance_id from baz_visit_instance_flow where flow_biz_type = '3'
) ins_flow on ins_flow.visit_instance_id = baz_visit_instance.id
left join (
select baz_visit_instance_flow.create_time,baz_visit_instance_flow.visit_instance_id from baz_visit_instance_flow where flow_biz_type = '1'
) ins_flow2 on ins_flow2.visit_instance_id = baz_visit_instance.id
left join (
select baz_visit_instance_flow.create_time,baz_visit_instance_flow.visit_instance_id from baz_visit_instance_flow where flow_biz_type = '2'
) ins_flow3 on ins_flow3.visit_instance_id = baz_visit_instance.id
<where>
<if test="query.id != null"> and `baz_visit_instance`.`id` = #{query.id}</if>
<if test="query.title != null and query.title != ''"> and `baz_visit_instance`.`title` = #{query.title}</if>
<if test="query.visitId != null"> and `baz_visit_instance`.`visit_id` = #{query.visitId}</if>
<if test="query.targetType != null and query.targetType != ''"> and `baz_visit_instance`.`target_type` = #{query.targetType}</if>
<if test="query.visitState != null"> and `baz_visit_instance`.`visit_state` = #{query.visitState}</if>
<if test="query.visitorId != null and query.visitorId != ''"> and `baz_visit_instance`.`visitor_id` = #{query.visitorId}</if>
<if test="query.visitorCode != null and query.visitorCode != ''"> and `baz_visit_instance`.`visitor_code` = #{query.visitorCode}</if>
<if test="query.visitorName != null and query.visitorName != ''"> and `baz_visit_instance`.`visitor_name` = #{query.visitorName}</if>
<if test="query.targetId != null and query.targetId != ''"> and `baz_visit_instance`.`target_id` = #{query.targetId}</if>
<if test="query.targetCode != null and query.targetCode != ''"> and `baz_visit_instance`.`target_code` = #{query.targetCode}</if>
<if test="query.targetName != null and query.targetName != ''"> and `baz_visit_instance`.`target_name` = #{query.targetName}</if>
<if test="query.targetLocalX != null and query.targetLocalX != ''"> and `baz_visit_instance`.`target_local_x` = #{query.targetLocalX}</if>
<if test="query.targetLocalY != null and query.targetLocalY != ''"> and `baz_visit_instance`.`target_local_y` = #{query.targetLocalY}</if>
<if test="query.targetAddress != null and query.targetAddress != ''"> and `baz_visit_instance`.`target_address` = #{query.targetAddress}</if>
<if test="query.targetMapAddress != null and query.targetMapAddress != ''"> and `baz_visit_instance`.`target_map_address` = #{query.targetMapAddress}</if>
<if test="query.finishedTime != null"> and `baz_visit_instance`.`finished_time` = #{query.finishedTime}</if>
<if test="query.missLocalFlag != null"> and `baz_visit_instance`.`miss_local_flag` = #{query.missLocalFlag}</if>
<if test="query.remark != null and query.remark != ''"> and `baz_visit_instance`.`remark` = #{query.remark}</if>
<if test="query.positionStatus != null and query.positionStatus != ''"> and `baz_visit_instance`.`position_status` = #{query.positionStatus}</if>
<if test="query.createTime != null"> and `baz_visit_instance`.`create_time` = #{query.createTime}</if>
<if test="query.updateTime != null"> and `baz_visit_instance`.`update_time` = #{query.updateTime}</if>
<if test="query.tenantId != null and query.tenantId != ''"> and `baz_visit_instance`.`tenant_id` = #{query.tenantId}</if>
<if test="query.delFlag != null and query.delFlag != ''"> and `baz_visit_instance`.`del_flag` = #{query.delFlag}</if>
<if test="query.createBy != null and query.createBy != ''"> and `baz_visit_instance`.`create_by` = #{query.createBy}</if>
<if test="query.updateBy != null and query.updateBy != ''"> and `baz_visit_instance`.`update_by` = #{query.updateBy}</if>
<if test="query.queryUserIds!=null and query.queryUserIds.size > 0">
and `baz_visit_instance`.`visitor_id` in
<foreach collection="query.queryUserIds" item ="selectId" index="i" open="(" close=")" separator=",">
#{selectId}
</foreach>
</if>
<if test="query.ignoreUserId != null and query.ignoreUserId != ''"> and `baz_visit_instance`.`visitor_id` != #{query.ignoreUserId}</if>
<if test="query.queryStartDate != null"> and `baz_visit_instance`.`create_time` &gt;= #{query.queryStartDate}</if>
<if test="query.queryEndDate != null"> and `baz_visit_instance`.`create_time` &lt;= #{query.queryEndDate}</if>
</where>
order by `baz_visit_instance`.`create_time` desc
</select>
</mapper>