2021-07-20 16:51:57 +08:00
|
|
|
<?xml version="1.0" encoding="UTF-8" ?>
|
|
|
|
|
<!DOCTYPE mapper
|
2021-08-05 17:30:26 +08:00
|
|
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
2021-07-20 16:51:57 +08:00
|
|
|
<mapper namespace="com.xhpc.charging.station.mapper.XhpcTerminalMapper">
|
2021-07-28 18:07:25 +08:00
|
|
|
|
|
|
|
|
<resultMap id="BaseResultMap" type="com.xhpc.common.domain.XhpcTerminal">
|
|
|
|
|
<result property="terminalId" column="terminal_id"/>
|
|
|
|
|
<result property="chargingPileId" column="charging_pile_id"/>
|
|
|
|
|
<result property="chargingStationId" column="charging_station_id"/>
|
|
|
|
|
<result property="name" column="name"/>
|
|
|
|
|
<result property="serialNumber" column="serial_number"/>
|
|
|
|
|
<result property="pileSerialNumber" column="pile_serial_number"/>
|
|
|
|
|
<result property="gunStatus" column="gun_status"/>
|
|
|
|
|
<result property="workStatus" column="work_status"/>
|
|
|
|
|
<result property="status" column="status"/>
|
|
|
|
|
<result property="delFlag" column="del_flag"/>
|
2021-08-05 17:30:26 +08:00
|
|
|
<result property="createTime" column="create_time"/>
|
|
|
|
|
<result property="createBy" column="create_by"/>
|
|
|
|
|
<result property="updateTime" column="update_time"/>
|
|
|
|
|
<result property="updateBy" column="update_by"/>
|
|
|
|
|
<result property="remark" column="remark"/>
|
2021-08-05 20:30:16 +08:00
|
|
|
<result property="rateModelId" column="rate_model_id"/>
|
2021-07-20 16:51:57 +08:00
|
|
|
</resultMap>
|
|
|
|
|
|
2021-07-27 18:09:18 +08:00
|
|
|
<sql id="selectXhpcTerminalVo">
|
2021-08-05 17:30:26 +08:00
|
|
|
select terminal_id,
|
|
|
|
|
charging_pile_id,
|
|
|
|
|
charging_station_id,
|
|
|
|
|
name,
|
|
|
|
|
serial_number,
|
|
|
|
|
pile_serial_number,
|
|
|
|
|
gun_status,
|
|
|
|
|
work_status,
|
|
|
|
|
status,
|
|
|
|
|
del_flag,
|
|
|
|
|
create_time,
|
|
|
|
|
create_by,
|
|
|
|
|
update_time,
|
|
|
|
|
update_by,
|
|
|
|
|
remark
|
|
|
|
|
from xhpc_terminal
|
2021-07-27 18:09:18 +08:00
|
|
|
</sql>
|
|
|
|
|
|
2021-07-20 16:51:57 +08:00
|
|
|
<select id="countXhpcTerminalWorkStatus" resultType="map">
|
2021-08-05 17:30:26 +08:00
|
|
|
select (select count(terminal_id)
|
|
|
|
|
from xhpc_terminal
|
|
|
|
|
where status = 0
|
|
|
|
|
and del_flag = 0
|
|
|
|
|
and work_status = 0
|
|
|
|
|
and charging_station_id = #{chargingStationId}) offLine,
|
|
|
|
|
(select count(terminal_id)
|
|
|
|
|
from xhpc_terminal
|
|
|
|
|
where status = 0
|
|
|
|
|
and del_flag = 0
|
|
|
|
|
and work_status = 1
|
|
|
|
|
and charging_station_id = #{chargingStationId}) fault,
|
|
|
|
|
(select count(terminal_id)
|
|
|
|
|
from xhpc_terminal
|
|
|
|
|
where status = 0
|
|
|
|
|
and del_flag = 0
|
|
|
|
|
and work_status = 2
|
|
|
|
|
and charging_station_id = #{chargingStationId}) freeTime,
|
|
|
|
|
(select count(terminal_id)
|
|
|
|
|
from xhpc_terminal
|
|
|
|
|
where status = 0
|
|
|
|
|
and del_flag = 0
|
|
|
|
|
and work_status = 3
|
|
|
|
|
and charging_station_id = #{chargingStationId}) charge
|
2021-07-20 16:51:57 +08:00
|
|
|
from xhpc_terminal LIMIT 1
|
|
|
|
|
</select>
|
2021-07-27 18:09:18 +08:00
|
|
|
|
2021-08-05 17:30:26 +08:00
|
|
|
<select id="getXhpcTerminalList" resultType="map">
|
2021-07-27 18:09:18 +08:00
|
|
|
select
|
2021-08-05 17:30:26 +08:00
|
|
|
te.terminal_id as terminalId,
|
|
|
|
|
te.name as terminalName,
|
|
|
|
|
ct.name as chargingStationName,
|
|
|
|
|
te.pile_serial_number as pileSerialNumber,
|
|
|
|
|
cp.power as power,
|
|
|
|
|
cp.serial_number as serialNumber,
|
|
|
|
|
te.status as status,
|
|
|
|
|
te.work_status as workStatus
|
2021-07-27 18:09:18 +08:00
|
|
|
from xhpc_terminal as te
|
|
|
|
|
left join xhpc_charging_station as ct on ct.charging_station_id = te.charging_station_id
|
|
|
|
|
left join xhpc_charging_pile as cp on cp.charging_pile_id = te.charging_pile_id
|
|
|
|
|
where te.del_flag=0
|
|
|
|
|
<if test="chargingStationId !=null">
|
2021-08-05 17:30:26 +08:00
|
|
|
and te.charging_station_id=#{chargingStationId}
|
2021-07-27 18:09:18 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="serialNumber !=null and serialNumber !=''">
|
2021-08-05 17:30:26 +08:00
|
|
|
and te.serial_number like CONCAT('%',#{serialNumber},'%')
|
2021-07-27 18:09:18 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="type !=null ">
|
2021-08-05 17:30:26 +08:00
|
|
|
and cp.type=#{type}
|
2021-07-27 18:09:18 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="status !=null ">
|
2021-08-05 17:30:26 +08:00
|
|
|
and cp.status=#{status}
|
2021-07-27 18:09:18 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="workStatus !=null and workStatus !=''">
|
2021-08-05 17:30:26 +08:00
|
|
|
and te.work_status=#{chargingStationId}
|
2021-07-27 18:09:18 +08:00
|
|
|
</if>
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<select id="selectXhpcTerminalById" resultMap="BaseResultMap">
|
|
|
|
|
<include refid="selectXhpcTerminalVo"/>
|
|
|
|
|
where terminal_id = #{terminalId}
|
|
|
|
|
</select>
|
|
|
|
|
|
2021-07-28 18:07:25 +08:00
|
|
|
<update id="updateXhpcTerminal" parameterType="com.xhpc.common.domain.XhpcTerminal">
|
2021-07-27 18:09:18 +08:00
|
|
|
update xhpc_terminal
|
|
|
|
|
<trim prefix="SET" suffixOverrides=",">
|
|
|
|
|
<if test="chargingPileId != null">charging_pile_id = #{chargingPileId},</if>
|
|
|
|
|
<if test="chargingStationId != null">charging_station_id = #{chargingStationId},</if>
|
|
|
|
|
<if test="name != null">name = #{name},</if>
|
|
|
|
|
<if test="serialNumber != null">serial_number = #{serialNumber},</if>
|
|
|
|
|
<if test="pileSerialNumber != null">pile_serial_number = #{pileSerialNumber},</if>
|
|
|
|
|
<if test="gunStatus != null">gun_status = #{gunStatus},</if>
|
|
|
|
|
<if test="workStatus != null">work_status = #{workStatus},</if>
|
|
|
|
|
<if test="status != null">status = #{status},</if>
|
|
|
|
|
<if test="delFlag != null">del_flag = #{delFlag},</if>
|
|
|
|
|
<if test="createTime != null">create_time = #{createTime},</if>
|
|
|
|
|
<if test="createBy != null">create_by = #{createBy},</if>
|
|
|
|
|
<if test="updateTime != null">update_time = #{updateTime},</if>
|
|
|
|
|
<if test="updateBy != null">update_by = #{updateBy},</if>
|
|
|
|
|
<if test="remark != null">remark = #{remark},</if>
|
|
|
|
|
</trim>
|
|
|
|
|
where terminal_id = #{terminalId}
|
|
|
|
|
</update>
|
|
|
|
|
|
2021-07-28 18:07:25 +08:00
|
|
|
<insert id="addXhpcTerminal" parameterType="com.xhpc.common.domain.XhpcTerminal" useGeneratedKeys="true"
|
|
|
|
|
keyProperty="terminalId">
|
2021-07-27 18:09:18 +08:00
|
|
|
insert into xhpc_terminal
|
|
|
|
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
|
|
|
|
<if test="null != chargingPileId ">
|
|
|
|
|
charging_pile_id,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != chargingStationId ">
|
|
|
|
|
charging_station_id,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != name ">
|
|
|
|
|
name,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != serialNumber ">
|
|
|
|
|
serial_number,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != pileSerialNumber ">
|
|
|
|
|
pile_serial_number,
|
|
|
|
|
</if>
|
2021-08-03 19:59:27 +08:00
|
|
|
<if test="null != gunStatus ">
|
2021-07-27 18:09:18 +08:00
|
|
|
gun_status,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != workStatus ">
|
|
|
|
|
work_status,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != status ">
|
|
|
|
|
status,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != delFlag ">
|
|
|
|
|
del_flag,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != createTime ">
|
|
|
|
|
create_time,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != createBy and '' != createBy">
|
|
|
|
|
create_by,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != updateTime ">
|
|
|
|
|
update_time,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != updateBy and '' != updateBy">
|
|
|
|
|
update_by,
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != remark and '' != remark">
|
|
|
|
|
remark
|
|
|
|
|
</if>
|
|
|
|
|
</trim>
|
|
|
|
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
|
|
|
|
<if test="null != chargingPileId ">
|
|
|
|
|
#{chargingPileId},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != chargingStationId ">
|
|
|
|
|
#{chargingStationId},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != name ">
|
|
|
|
|
#{name},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != serialNumber ">
|
|
|
|
|
#{serialNumber},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != pileSerialNumber ">
|
|
|
|
|
#{pileSerialNumber},
|
|
|
|
|
</if>
|
2021-08-03 19:59:27 +08:00
|
|
|
<if test="null != gunStatus ">
|
|
|
|
|
#{gunStatus},
|
2021-07-27 18:09:18 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="null != workStatus ">
|
|
|
|
|
#{workStatus},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != status ">
|
|
|
|
|
#{status},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != delFlag ">
|
|
|
|
|
#{delFlag},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != createTime ">
|
|
|
|
|
#{createTime},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != createBy and '' != createBy">
|
|
|
|
|
#{createBy},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != updateTime ">
|
|
|
|
|
#{updateTime},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != updateBy and '' != updateBy">
|
|
|
|
|
#{updateBy},
|
|
|
|
|
</if>
|
|
|
|
|
<if test="null != remark and '' != remark">
|
|
|
|
|
#{remark}
|
|
|
|
|
</if>
|
|
|
|
|
</trim>
|
|
|
|
|
</insert>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<select id="selectXhpcTerminalPileMessage" resultType="map">
|
2021-08-05 17:30:26 +08:00
|
|
|
select ter.terminal_id as terminalId,
|
|
|
|
|
ter.charging_station_id as chargingStationId,
|
|
|
|
|
ter.name as name,
|
|
|
|
|
ter.serial_number as serialNumber,
|
|
|
|
|
ter.gun_status as gunStatus,
|
|
|
|
|
ter.work_status as workStatus,
|
|
|
|
|
ter.status as status,
|
|
|
|
|
ct.name as chargingStationName,
|
|
|
|
|
ter.create_time as createTime,
|
|
|
|
|
cp.serial_number as pileSerialNumber,
|
|
|
|
|
cp.type as type,
|
|
|
|
|
cp.national_standard as nationalStandard,
|
|
|
|
|
cp.power as power,
|
|
|
|
|
cp.auxiliary_power_supply as auxiliaryPowerSupply,
|
|
|
|
|
cp.input_voltage as inputVoltage,
|
|
|
|
|
cp.max_voltage as maxVoltage,
|
|
|
|
|
cp.min_voltage as minVoltage,
|
|
|
|
|
cp.max_electric_current as maxElectricCurrent,
|
|
|
|
|
cp.min_electric_current as minElectricCurrent,
|
|
|
|
|
cp.communication_operator as communicationOperator,
|
|
|
|
|
cp.sim_card as simCard
|
2021-07-27 18:09:18 +08:00
|
|
|
from xhpc_terminal as ter
|
2021-08-05 17:30:26 +08:00
|
|
|
left join xhpc_charging_pile as cp on cp.charging_pile_id = ter.charging_pile_id
|
|
|
|
|
left join xhpc_charging_station as ct on ct.charging_station_id = ter.charging_station_id
|
|
|
|
|
where ter.terminal_id = #{terminalId}
|
2021-07-27 18:09:18 +08:00
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<select id="getXhpcRateTimeTypeList" resultType="map">
|
|
|
|
|
<if test="type ==1">
|
|
|
|
|
select
|
|
|
|
|
rt.start_time as startTime,
|
|
|
|
|
replace(rt.end_time,'00:00:00','24:00:00') AS endTime,
|
|
|
|
|
rt.rate_id as rateId,
|
2021-08-05 11:18:32 +08:00
|
|
|
rt.rate_value as rateValue,
|
2021-08-05 17:30:26 +08:00
|
|
|
ra.power_fee as powerFee,
|
|
|
|
|
ra.service_fee as serviceFee,
|
2021-07-27 18:09:18 +08:00
|
|
|
ra.name as rateName
|
|
|
|
|
from xhpc_rate_time as rt
|
|
|
|
|
left join xhpc_rate as ra on ra.rate_id =rt.rate_id
|
|
|
|
|
where rt.charging_station_id=#{chargingStationId} and rt.del_flag =0 and rt.type=1
|
|
|
|
|
</if>
|
|
|
|
|
<if test="type ==2">
|
|
|
|
|
select
|
|
|
|
|
rt.start_time as startTime,
|
|
|
|
|
replace(rt.end_time,'00:00:00','24:00:00') AS endTime,
|
|
|
|
|
rt.rate_id as rateId,
|
2021-08-05 17:30:26 +08:00
|
|
|
ra.power_fee as powerFee,
|
|
|
|
|
ra.service_fee as serviceFee,
|
2021-07-27 18:09:18 +08:00
|
|
|
ra.name as rateName
|
|
|
|
|
from xhpc_rate_time as rt
|
|
|
|
|
left join xhpc_rate as ra on ra.rate_id =rt.rate_id
|
|
|
|
|
where rt.charging_station_id=#{chargingStationId} and rt.del_flag =0 and rt.type=2
|
|
|
|
|
group by type
|
|
|
|
|
</if>
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<select id="getXhpcRateTimeOrderStatistics" resultType="map">
|
2021-08-05 17:30:26 +08:00
|
|
|
select IFNULL(sum(charging_degree), '0') AS chargingDegreeSum,
|
|
|
|
|
COUNT(real_time_order_id) as realTimeOrderIdCount,
|
|
|
|
|
COUNT(DISTINCT user_id) as userIdCount
|
2021-07-27 18:09:18 +08:00
|
|
|
from xhpc_real_time_order
|
|
|
|
|
where real_time_order_id in (
|
2021-08-05 17:30:26 +08:00
|
|
|
select max(real_time_order_id)
|
|
|
|
|
from xhpc_real_time_order
|
|
|
|
|
WHERE to_days(create_time) = to_days(now())
|
|
|
|
|
and charging_station_id = #{chargingStationId}
|
|
|
|
|
and gun_number = #{gunNumber}
|
|
|
|
|
group by charging_order_id)
|
2021-07-27 18:09:18 +08:00
|
|
|
</select>
|
2021-07-29 13:47:03 +08:00
|
|
|
|
|
|
|
|
<select id="getWXpNumMessage" resultType="map">
|
2021-08-05 17:30:26 +08:00
|
|
|
select ter.name as terminalName,
|
|
|
|
|
ter.serial_number as serialNumber,
|
|
|
|
|
cp.power as power,
|
|
|
|
|
cp.type as type,
|
|
|
|
|
cp.max_voltage as maxVoltage,
|
|
|
|
|
cp.auxiliary_power_supply as auxiliaryPowerSupply,
|
|
|
|
|
ct.parking_instructions as parkingInstructions,
|
|
|
|
|
ct.create_time as createTime,
|
|
|
|
|
ter.charging_station_id as chargingStationId
|
2021-07-29 13:47:03 +08:00
|
|
|
from xhpc_terminal as ter
|
2021-08-05 17:30:26 +08:00
|
|
|
left join xhpc_charging_pile as cp on cp.charging_pile_id = ter.charging_pile_id
|
|
|
|
|
left join xhpc_charging_station as ct on ct.charging_station_id = ter.charging_station_id
|
|
|
|
|
where ter.serial_number = #{pNum}
|
|
|
|
|
and ter.del_flag = 0
|
2021-07-29 13:47:03 +08:00
|
|
|
</select>
|
2021-07-29 15:07:34 +08:00
|
|
|
|
|
|
|
|
<select id="getImageList" resultType="map">
|
|
|
|
|
select
|
|
|
|
|
img_id as imgId,
|
|
|
|
|
url as url
|
|
|
|
|
from xhpc_img where del_flag=0 and status=0
|
|
|
|
|
<if test="imgIds !=null and imgIds.size()>0 ">
|
|
|
|
|
and img_id in
|
2021-08-05 17:30:26 +08:00
|
|
|
<foreach collection="imgIds" item="chargingStationId" open="(" separator="," close=")">
|
2021-07-29 15:07:34 +08:00
|
|
|
#{chargingStationId}
|
|
|
|
|
</foreach>
|
|
|
|
|
</if>
|
|
|
|
|
</select>
|
2021-07-28 18:07:25 +08:00
|
|
|
</mapper>
|