<?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.whyc.mapper.Fbs9100sDfuStateMapper">
|
<select id="searchAll" resultType="com.whyc.pojo.Fbs9100sDfuState">
|
select distinct db_ram_db.tb_fbs9100s_dfu_state.num
|
, db_ram_db.tb_fbs9100s_dfu_state.dev_id
|
, db_battinf.tb_battinf.stationname
|
, db_battinf.tb_battinf.stationId
|
, db_battinf.tb_battinf.fBSDeviceName
|
, sysVersion_new
|
, softVersion_new
|
, sysVersion_dev
|
, softVersion_dev
|
, dfu_file
|
, dfu_en
|
, dfu_wr_stat
|
, dfu_data_blocknum
|
, dfu_data_blocklen
|
, dfu_file_len
|
, db_ram_db.tb_fbs9100_state.dev_version
|
from db_ram_db.tb_fbs9100s_dfu_state,
|
db_battinf.tb_battinf,
|
db_ram_db.tb_fbs9100_state
|
where db_ram_db.tb_fbs9100s_dfu_state.dev_id = db_battinf.tb_battinf.fBSDeviceId
|
and db_ram_db.tb_fbs9100s_dfu_state.dev_id = db_ram_db.tb_fbs9100_state.dev_id
|
and dfu_en = 1
|
</select>
|
|
<select id="searchWebscoket" resultType="com.whyc.pojo.Fbs9100sDfuState">
|
select distinct db_ram_db.tb_fbs9100s_dfu_state.num
|
, db_ram_db.tb_fbs9100s_dfu_state.dev_id
|
, db_battinf.tb_battinf.stationname
|
, db_battinf.tb_battinf.stationId
|
, db_battinf.tb_battinf.fBSDeviceName
|
, sysVersion_new
|
, softVersion_new
|
, sysVersion_dev
|
, softVersion_dev
|
, dfu_file
|
, dfu_en
|
, dfu_wr_stat
|
, dfu_data_blocknum
|
, dfu_data_blocklen
|
, dfu_file_len
|
, db_ram_db.tb_fbs9100_state.dev_version
|
from db_ram_db.tb_fbs9100s_dfu_state,
|
db_battinf.tb_battinf,
|
db_ram_db.tb_fbs9100_state
|
<where>
|
db_ram_db.tb_fbs9100s_dfu_state.dev_id = db_battinf.tb_battinf.fBSDeviceId
|
and db_ram_db.tb_fbs9100s_dfu_state.dev_id = db_ram_db.tb_fbs9100_state.dev_id
|
<if test="devIds.size>0">
|
<foreach collection="devIds" item="devId" open="and db_ram_db.tb_fbs9100s_dfu_state.dev_id in("
|
close=")" separator=",">
|
#{devId}
|
</foreach>
|
</if>
|
</where>
|
</select>
|
|
<select id="searchA059" resultType="com.whyc.pojo.Fbs9100sDfuState">
|
select distinct
|
db_ram_db.tb_fbs9100s_dfu_state.num,db_ram_db.tb_fbs9100s_dfu_state.dev_id,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationId,db_battinf.tb_battinf.fBSDeviceName
|
,sysVersion_new,softVersion_new,sysVersion_dev,softVersion_dev,dfu_file,dfu_en,dfu_wr_stat,dfu_data_blocknum,dfu_data_blocklen,dfu_file_len,error_code
|
from db_ram_db.tb_fbs9100s_dfu_state,db_battinf.tb_battinf
|
where db_ram_db.tb_fbs9100s_dfu_state.dev_id=db_battinf.tb_battinf.fBSDeviceId
|
and db_ram_db.tb_fbs9100s_dfu_state.dev_id like '8059%'
|
<if test="stationName1 != null and stationName1!='' and stationName1!='null'">
|
and db_battinf.tb_battinf.stationName1=#{stationName1}
|
</if>
|
<if test="stationName2 != null and stationName2!='' and stationName2!='null'">
|
and db_battinf.tb_battinf.stationName2=#{stationName2}
|
</if>
|
<if test="stationName5 != null and stationName5!='' and stationName5!='null'">
|
and db_battinf.tb_battinf.stationName5=#{stationName5}
|
</if>
|
and db_battinf.tb_battinf.StationId in (
|
select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId
|
from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr
|
where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id
|
and db_user.tb_user_battgroup_baojigroup_usr.uId=#{uId}
|
)
|
</select>
|
|
|
<insert id="addPro">
|
merge into db_ram_db.tb_fbs9100s_dfu_state tgt
|
using(
|
SELECT DISTINCT fBSDeviceId,0,1 FROM db_battinf.tb_battinf
|
<where>
|
fBSDeviceId not in(select DISTINCT dev_id from db_ram_db.tb_fbs9100s_dfu_state where dfu_en=true)
|
<if test="num == 0">
|
and stationid=#{stationName}
|
</if>
|
<if test="num == 1">
|
and stationname1=#{stationName}
|
</if>
|
<if test="num == 2">
|
and stationname2=#{stationName}
|
</if>
|
<if test="num == 5">
|
and stationname5=#{stationName}
|
</if>
|
</where>
|
) src on tgt.dev_id=src.fBSDeviceId
|
when not matched then
|
insert(dev_id,dfu_wr_stat,dfu_data_blocknum) values(src.fBSDeviceId,0,1)
|
when matched then
|
update set dfu_wr_stat=0,dfu_data_blocknum=1
|
|
</insert>
|
|
<update id="updatePro">
|
<foreach collection="devIds" item="devId" index="index" separator=";">
|
update db_ram_db.tb_fbs9100s_dfu_state set dfu_en=true,dfu_wr_stat=1, dfu_data_blocknum=1,dfu_file=#{dfuFile}
|
<where>
|
dev_id =#{devId}
|
</where>
|
</foreach>
|
</update>
|
<update id="updateDfuEn">
|
update db_ram_db.tb_fbs9100s_dfu_state set dfu_en=3 where num=#{id}
|
</update>
|
|
<select id="serchInserStation" resultType="com.whyc.pojo.Fbs9100sDfuState">
|
SELECT DISTINCT fBSDeviceId,fBSDeviceName,stationId,stationname,stationname1,stationname2,stationname3,stationname5
|
,db_ram_db.tb_fbs9100_state.dev_id,db_ram_db.tb_fbs9100_state.dev_version
|
from db_battinf.tb_battinf,db_ram_db.tb_fbs9100_state
|
<where>
|
db_battinf.tb_battinf.fBSDeviceId=db_ram_db.tb_fbs9100_state.dev_id
|
<if test="num == 0">
|
and stationid=#{stationName}
|
</if>
|
<if test="num == 1">
|
and stationname1=#{stationName}
|
</if>
|
<if test="num == 2">
|
and stationname2=#{stationName}
|
</if>
|
<if test="num == 5">
|
and stationname5=#{stationName}
|
</if>
|
</where>
|
order by fBSDeviceId
|
</select>
|
<select id="judgeStation" resultType="com.whyc.dto.result.JudgeStationBinf">
|
select distinct dev_id as fBSDeviceId,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationname1,db_battinf.tb_battinf.stationname2,db_battinf.tb_battinf.stationname3,db_battinf.tb_battinf.stationname5 from db_ram_db.tb_fbs9100_state,db_battinf.tb_battinf
|
<where>
|
db_ram_db.tb_fbs9100_state.dev_id=db_battinf.tb_battinf.fBSDeviceId and dev_workstate=0
|
<if test="devIds.size>0">
|
<foreach collection="devIds" item="devId" open="and dev_id in(" close=")" separator=",">
|
#{devId}
|
</foreach>
|
</if>
|
</where>
|
</select>
|
|
|
</mapper>
|