104 lines
4.1 KiB
XML
104 lines
4.1 KiB
XML
<?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.couplet.business.server.mapper.FenceMapper">
|
|
|
|
<resultMap id="map" type="com.couplet.common.domain.Fence">
|
|
<id property="fenceId" column="fence_id"/>
|
|
<result property="fenceName" column="fence_name"/>
|
|
<result property="fenceDescription" column="fence_description"/>
|
|
<result property="fenceLongitudeLatitude" column="fence_longitude_latitude"/>
|
|
<result property="fenceState" column="fence_state"/>
|
|
<result property="createName" column="create_name" />
|
|
<result property="updateTime" column="update_time" />
|
|
<result property="isDelete" column="is_delete" />
|
|
<result property="maintainerName" column="maintainer_name" />
|
|
<result property="fenceCondition" column="fence_condition" />
|
|
</resultMap>
|
|
<resultMap id="logoMap" type="com.couplet.common.domain.Logo">
|
|
<id property="logoId" column="logo_id"/>
|
|
<result property="logoName" column="logo_name" />
|
|
</resultMap>
|
|
<sql id="selectFence">
|
|
SELECT
|
|
f.fence_id,
|
|
fence_name,
|
|
fence_longitude_latitude,
|
|
fence_description,
|
|
is_delete,
|
|
fence_state,
|
|
create_time,
|
|
update_time,
|
|
create_name,
|
|
maintainer_name,
|
|
alarm_status,
|
|
fence_condition,
|
|
l.logo_id,
|
|
GROUP_CONCAT(logo_name) as logoName
|
|
FROM couplet_fence_info f INNER JOIN couplet_fences_and_logo m on
|
|
f.fence_id=m.fences_id INNER JOIN couplet_logo_info l on l.logo_id=m.logo_id
|
|
</sql>
|
|
<sql id="fence">
|
|
SELECT
|
|
fence_id,
|
|
fence_name,
|
|
fence_longitude_latitude,
|
|
fence_description,
|
|
is_delete,
|
|
fence_state,
|
|
create_time,
|
|
update_time,
|
|
create_name,
|
|
maintainer_name,
|
|
alarm_status,
|
|
fence_condition
|
|
FROM couplet_fence_info
|
|
</sql>
|
|
<insert id="insertFence" parameterType="com.couplet.common.domain.request.FenceRequest" keyProperty="fenceId"
|
|
useGeneratedKeys="true">
|
|
INSERT INTO `couplet-cloud`.`couplet_fence_info`
|
|
(`fence_name`, `fence_longitude_latitude`, `fence_description`, `is_delete`, `fence_state`, `create_time`,
|
|
`update_time`, `create_name`, `maintainer_name`, `alarm_status`,`fence_condition`)
|
|
VALUES
|
|
(#{fenceName}, null, #{fenceDescription}, 0, 0, now(), null, null, #{maintainerName}, 0 ,0)
|
|
|
|
|
|
</insert>
|
|
|
|
<update id="changeFence" parameterType="com.couplet.common.domain.request.FenceUpdateRequest">
|
|
|
|
UPDATE `couplet-cloud`.`couplet_fence_info`
|
|
SET `fence_name` = #{fenceName},
|
|
`fence_longitude_latitude` = #{fenceLongitudeLatitude},
|
|
`fence_description` = #{fenceDescription},
|
|
`is_delete` = #{isDelete},
|
|
`fence_state` = #{fenceState},
|
|
`update_time` = now(),
|
|
`maintainer_name` = 'admin',
|
|
`alarm_status` = #{alarmStatus},
|
|
`fence_condition` = #{fenceCondition}
|
|
WHERE `fence_id` = #{fenceId}
|
|
|
|
</update>
|
|
<delete id="removeByFenceId" parameterType="java.lang.Long">
|
|
delete from couplet_fence_info where fence_id = #{fenceId}
|
|
</delete>
|
|
<select id="pageQuery" resultMap="map"
|
|
parameterType="com.couplet.common.domain.request.FenceConfig">
|
|
<include refid="selectFence"></include>
|
|
<where>
|
|
<if test="fenceName!=null and fenceName!='' ">
|
|
and fence_name like concat('%',#{fenceName},'%')
|
|
</if>
|
|
<if test="fenceState!=null">
|
|
and fence_state = #{fenceState}
|
|
</if>
|
|
</where>
|
|
GROUP BY f.fence_id
|
|
</select>
|
|
<select id="checkFenceKeyUnique" resultType="java.lang.Boolean">
|
|
<include refid="fence"/> where fence_name = #{fenceName}
|
|
</select>
|
|
</mapper>
|