| | |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | |
| | | |
| | | @ApiOperation("查询正在升级的设备") |
| | | @GetMapping("searchAll") |
| | | public Response searchAll(){ |
| | | return service.searchAll(); |
| | | public Response searchAll() { |
| | | return service.searchAll(); |
| | | } |
| | | |
| | | @ApiOperation("websocket查询正在升级的设备") |
| | | @PostMapping("searchWebscoket") |
| | | public Response searchWebscoket(@RequestBody List<Integer> devIds) { |
| | | return service.searchWebscoket(devIds); |
| | | } |
| | | |
| | | @ApiOperation("查询A059设备升级") |
| | | @GetMapping("searchA059") |
| | | public Response searchA059(@RequestParam int pageNum,@RequestParam int pageSize,@RequestParam(required = false) String stationName1,@RequestParam(required = false) String stationName2,@RequestParam(required = false) String stationName5){ |
| | | public Response searchA059(@RequestParam int pageNum, @RequestParam int pageSize, @RequestParam(required = false) String stationName1, @RequestParam(required = false) String stationName2, @RequestParam(required = false) String stationName5) { |
| | | UserInf userInf = ActionUtil.getUser(); |
| | | return service.searchA059(pageNum,pageSize,stationName1,stationName2,stationName5,userInf.getUId().intValue()); |
| | | return service.searchA059(pageNum, pageSize, stationName1, stationName2, stationName5, userInf.getUId().intValue()); |
| | | } |
| | | |
| | | @ApiOperation("更新升级参数") |
| | | @PostMapping("updateParam") |
| | | public Response updateA059(@RequestBody Fbs9100sDfuState fbs9100sDfuState){ |
| | | public Response updateA059(@RequestBody Fbs9100sDfuState fbs9100sDfuState) { |
| | | return service.updateA059(fbs9100sDfuState); |
| | | } |
| | | |
| | |
| | | |
| | | import com.whyc.pojo.Fbs9100sDfuState; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import org.springframework.web.bind.annotation.RequestParam; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | List judgeStation(@Param("devIds") List<Integer> devIds); |
| | | |
| | | int updateDfuEn(@Param("id") long id); |
| | | |
| | | //websocket查询正在升级的设备 |
| | | List<Fbs9100sDfuState> searchWebscoket(@Param("devIds") List<Integer> devIds); |
| | | } |
| | |
| | | package com.whyc.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.github.pagehelper.PageHelper; |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.mapper.Fbs9100sDfuStateMapper; |
| | | import com.whyc.pojo.Fbs9100sDfuState; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | |
| | | public class Fbs9100sDfuStateService { |
| | | @Resource |
| | | private Fbs9100sDfuStateMapper mapper; |
| | | |
| | | //查询正在升级的设备 |
| | | public Response searchAll() { |
| | | List list=mapper.searchAll(); |
| | | PageInfo pageInfo=new PageInfo(list); |
| | | return new Response().set(1,pageInfo); |
| | | List list = mapper.searchAll(); |
| | | PageInfo pageInfo = new PageInfo(list); |
| | | return new Response().set(1, pageInfo); |
| | | } |
| | | |
| | | public Response searchA059(int pageNum,int pageSize,String stationName1,String stationName2,String stationName5,int uId){ |
| | | PageHelper.startPage(pageNum,pageSize); |
| | | List list = mapper.searchA059(stationName1,stationName2,stationName5,uId); |
| | | //websocket查询正在升级的设备 |
| | | public Response searchWebscoket(List<Integer> devIds) { |
| | | List<Fbs9100sDfuState> list = mapper.searchWebscoket(devIds); |
| | | return new Response().set(1, list); |
| | | } |
| | | |
| | | public Response searchA059(int pageNum, int pageSize, String stationName1, String stationName2, String stationName5, int uId) { |
| | | PageHelper.startPage(pageNum, pageSize); |
| | | List list = mapper.searchA059(stationName1, stationName2, stationName5, uId); |
| | | PageInfo<Fbs9100sDfuState> pageInfo = new PageInfo<>(list); |
| | | return new Response().set(1,pageInfo,"查询成功"); |
| | | return new Response().set(1, pageInfo, "查询成功"); |
| | | } |
| | | |
| | | public Response updateA059(Fbs9100sDfuState fbs9100sDfuState){ |
| | | //UpdateWrapper updateWrapper = new UpdateWrapper(); |
| | | //updateWrapper.eq("dev_id",fbs9100sDfuState.getDevId()); |
| | | public Response updateA059(Fbs9100sDfuState fbs9100sDfuState) { |
| | | int flag = 0; |
| | | if (fbs9100sDfuState.getDfuEn()==3){//升级失败 |
| | | if (fbs9100sDfuState.getDfuEn() == 3) {//升级失败 |
| | | flag = mapper.updateDfuEn(fbs9100sDfuState.getNum()); |
| | | }else { |
| | | } else { |
| | | flag = mapper.updateById(fbs9100sDfuState); |
| | | } |
| | | return new Response().set(1,flag>0?true:false); |
| | | return new Response().set(1, flag > 0 ? true : false); |
| | | } |
| | | |
| | | //添加 |
| | |
| | | package com.whyc.webSocket; |
| | | |
| | | import com.google.gson.reflect.TypeToken; |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.service.Fbs9100sDfuStateService; |
| | | import com.whyc.util.ActionUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import javax.websocket.*; |
| | | import javax.websocket.server.ServerEndpoint; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | @Component |
| | |
| | | @OnOpen |
| | | public void onOpen(Session session) { |
| | | this.session = session; |
| | | } |
| | | |
| | | @OnMessage |
| | | public synchronized void onMessage(Session session, String message) { |
| | | List<Integer> devIds = ActionUtil.getGson().fromJson(message, new TypeToken<List<Integer>>() { |
| | | }.getType()); |
| | | thread = new Thread("Thread_fbs9100sDfuState") { |
| | | @Override |
| | | public void run() { |
| | |
| | | threadFlagMap.put(thread.getId(), true); |
| | | try { |
| | | |
| | | Response res = service.searchAll(); |
| | | Response res = service.searchWebscoket(devIds); |
| | | if (session.isOpen()) { |
| | | //推送信息 |
| | | synchronized (session) { |
| | |
| | | } |
| | | //将线程存储,便于调用定位 |
| | | threadMap.put(session.getId(), this.thread); |
| | | } |
| | | |
| | | @OnMessage |
| | | public synchronized void onMessage(Session session, String message) { |
| | | |
| | | } |
| | | |
| | | @OnClose |
| | |
| | | <?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="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 |
| | | and dfu_en = 1 |
| | | <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 |
| | | 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 |
| | | 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'"> |
| | |
| | | </where> |
| | | </select> |
| | | |
| | | |
| | | </mapper> |