初版小程序
This commit is contained in:
parent
23308b03a5
commit
8972ac59b7
7
pom.xml
7
pom.xml
|
|
@ -123,7 +123,12 @@
|
|||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
|
||||
<dependency>
|
||||
<groupId>org.seleniumhq.selenium</groupId>
|
||||
<artifactId>selenium-java</artifactId>
|
||||
<version>3.141.59</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,111 @@
|
|||
package com.bonus.emergencyrap.config;
|
||||
|
||||
|
||||
public class DataConfig {
|
||||
/**
|
||||
* url 网站地址
|
||||
*/
|
||||
public static final String URL = "http://xydyjzh.ah.sgcc.com.cn";
|
||||
/**
|
||||
* 驱动名称
|
||||
*/
|
||||
public static final String DRIVE_NAME = "webdriver.chrome.driver";
|
||||
|
||||
/**
|
||||
* 用户名1 蒋涛
|
||||
*/
|
||||
public static final String USER_NAME1 = "guoj123X";
|
||||
|
||||
/**
|
||||
* 密码1
|
||||
*/
|
||||
public static final String PASS1 = "aqjzcm333..";
|
||||
|
||||
/**
|
||||
* 用户名2 武警
|
||||
*/
|
||||
public static final String USER_NAME2 = "wangzy0078";
|
||||
|
||||
/**
|
||||
* 密码2
|
||||
*/
|
||||
public static final String PASS2 = "sfzhsw@0078";
|
||||
|
||||
/**
|
||||
* 浏览器驱动地址
|
||||
*/
|
||||
public static final String drivePath = "D:\\bns\\chromedriver_win32\\chromedriver.exe";
|
||||
/**
|
||||
* 文件地址
|
||||
*/
|
||||
public static final String filePath = "D:\\bns\\config";
|
||||
|
||||
/**
|
||||
* 日期替换 年月日
|
||||
*/
|
||||
public static final String date="--date";
|
||||
|
||||
/**
|
||||
* 日期替换 年月日-时分秒
|
||||
*/
|
||||
public static final String dateTime="--dateTime";
|
||||
|
||||
/**
|
||||
* 日期替换 年月日-时分秒
|
||||
*/
|
||||
public static final String tr="--tr";
|
||||
|
||||
public static final String td="--td";
|
||||
|
||||
/**
|
||||
* 日期替换 年月日-时分秒
|
||||
*/
|
||||
public static final String attributeId="--attributeId";
|
||||
|
||||
|
||||
/**
|
||||
* 日期替换 明天 年月日-时分秒
|
||||
*/
|
||||
public static final String tomorrow="--tomorrow";
|
||||
|
||||
|
||||
/**
|
||||
* 日期替换 今天 年月日-时分秒
|
||||
*/
|
||||
public static final String today="--today";
|
||||
|
||||
/**
|
||||
* 天气
|
||||
*/
|
||||
public static final String weather = "--weather";
|
||||
|
||||
/**
|
||||
* 上个月的按钮
|
||||
*/
|
||||
public static final String lastMonth = "//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[1]/div[2]/div/button[1]";
|
||||
|
||||
/**
|
||||
* 预警按钮
|
||||
*/
|
||||
public static final String yuJing ="//*[@id=\"tab-3\"]/div/span";
|
||||
|
||||
/**
|
||||
* 早报
|
||||
*/
|
||||
public static final String morningDaily ="morning_daily";
|
||||
|
||||
/**
|
||||
* 晚报
|
||||
*/
|
||||
public static final String eveningDaily ="evening_daily";
|
||||
|
||||
/**
|
||||
* 早日志
|
||||
*/
|
||||
public static final String morningLog ="morning_log";
|
||||
|
||||
/**
|
||||
* 晚日志
|
||||
*/
|
||||
public static final String eveningLog ="evening_log";
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package com.bonus.emergencyrap.mapper;
|
||||
|
||||
import com.bonus.emergencyrap.vo.CollectDataVo;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface CollectDataMapper {
|
||||
CollectDataVo getCollectData(CollectDataVo collectDataVo);
|
||||
|
||||
void updateCollectData(CollectDataVo collectDataVo);
|
||||
}
|
||||
|
|
@ -1,11 +1,7 @@
|
|||
package com.bonus.emergencyrap.service;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.bonus.emergencyrap.constant.TextConstants;
|
||||
import com.bonus.emergencyrap.mapper.LogsMapper;
|
||||
import com.bonus.emergencyrap.utils.DateTimeHelper;
|
||||
import com.bonus.emergencyrap.utils.TextFileUtils;
|
||||
import com.bonus.emergencyrap.utils.UploadFile;
|
||||
import com.bonus.emergencyrap.vo.TaskMessageVo;
|
||||
import com.bonus.emergencyrap.vo.TaskProcessVo;
|
||||
import com.bonus.emergencyrap.vo.TaskVo;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,31 @@
|
|||
package com.bonus.emergencyrap.service;
|
||||
|
||||
import com.bonus.emergencyrap.vo.TaskProcessVo;
|
||||
import com.bonus.emergencyrap.vo.TaskVo;
|
||||
|
||||
import java.text.ParseException;
|
||||
|
||||
/**
|
||||
* @author 马三炮
|
||||
* @date 2025/9/28
|
||||
*/
|
||||
public interface StepService {
|
||||
|
||||
void initDrive(TaskVo taskVo);
|
||||
|
||||
void openWeb(TaskVo taskVo) throws InterruptedException;
|
||||
|
||||
void input(TaskProcessVo taskProcessVo, String res) throws Exception;
|
||||
|
||||
void onClick(TaskProcessVo taskProcessVo) throws Exception ;
|
||||
|
||||
String getObject(TaskProcessVo taskProcessVo) throws InterruptedException;
|
||||
|
||||
void isAlert();
|
||||
|
||||
void hover(TaskProcessVo taskProcessVo) throws InterruptedException;
|
||||
|
||||
String collectData(TaskProcessVo taskProcessVo,TaskVo taskVo);
|
||||
|
||||
void getYuJing(TaskProcessVo taskProcessVo) throws InterruptedException, ParseException;
|
||||
}
|
||||
|
|
@ -0,0 +1,371 @@
|
|||
package com.bonus.emergencyrap.service;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.bonus.emergencyrap.config.DataConfig;
|
||||
import com.bonus.emergencyrap.mapper.CollectDataMapper;
|
||||
import com.bonus.emergencyrap.utils.DateTimeUtils;
|
||||
import com.bonus.emergencyrap.utils.StringUtils;
|
||||
import com.bonus.emergencyrap.vo.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.openqa.selenium.By;
|
||||
import org.openqa.selenium.JavascriptExecutor;
|
||||
import org.openqa.selenium.WebDriver;
|
||||
import org.openqa.selenium.WebElement;
|
||||
import org.openqa.selenium.chrome.ChromeDriver;
|
||||
import org.openqa.selenium.chrome.ChromeOptions;
|
||||
import org.openqa.selenium.interactions.Actions;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author 马三炮
|
||||
* @date 2025/9/28
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class StepServiceImpl implements StepService{
|
||||
|
||||
private static WebDriver webDriver;
|
||||
|
||||
@Resource
|
||||
private CollectDataMapper collectDataMapper;
|
||||
|
||||
|
||||
/**
|
||||
* 初始化浏览器
|
||||
* @param taskVo
|
||||
*/
|
||||
public void initDrive(TaskVo taskVo) {
|
||||
// chromedriver服务地址
|
||||
System.setProperty(taskVo.getDriverName(), taskVo.getDriverUrl());
|
||||
ChromeOptions option = new ChromeOptions();
|
||||
//添加浏览器地址
|
||||
option.setBinary(taskVo.getBrowserUrl());
|
||||
|
||||
option.addArguments("--start-maximized");
|
||||
option.addArguments(taskVo.getResolution());
|
||||
option.addArguments("disable-infobars");
|
||||
|
||||
webDriver = new ChromeDriver(option);
|
||||
}
|
||||
|
||||
/**
|
||||
* 打开网页
|
||||
* @param taskVo
|
||||
* @throws InterruptedException
|
||||
*/
|
||||
public void openWeb(TaskVo taskVo) throws InterruptedException {
|
||||
//第一步打开指定网站
|
||||
webDriver.get(taskVo.getUrl());
|
||||
log.info("打开网站------------");
|
||||
Thread.sleep(2000);
|
||||
}
|
||||
|
||||
/**
|
||||
* 输入
|
||||
*/
|
||||
public void input(TaskProcessVo taskProcessVo, String res) throws Exception {
|
||||
//******************************************************************
|
||||
/**
|
||||
* 第二步 用户登录
|
||||
*/
|
||||
log.info("输入值:" + taskProcessVo + ",---------");
|
||||
if (StringUtils.isNotNull(taskProcessVo.getXpath())){
|
||||
//填写内容
|
||||
String traof = taskProcessVo.getElementName();
|
||||
WebElement traofEle = webDriver.findElement(By.xpath(taskProcessVo.getXpath()));
|
||||
traofEle.clear();
|
||||
traofEle.sendKeys(traof);
|
||||
log.info(taskProcessVo.getElementName()+"填写新增-----------");
|
||||
Thread.sleep(Long.valueOf(String.valueOf(taskProcessVo.getSleepTime()*1000)));
|
||||
}else {
|
||||
//输入用户名
|
||||
webDriver.findElement(By.id(taskProcessVo.getElement())).sendKeys(taskProcessVo.getElementName());
|
||||
log.info(taskProcessVo.getElementName()+"输入值完成------------");
|
||||
Thread.sleep(Long.valueOf(String.valueOf(taskProcessVo.getSleepTime()*1000)));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 点击事件
|
||||
* @param taskProcessVo
|
||||
* @throws Exception
|
||||
*/
|
||||
public void onClick(TaskProcessVo taskProcessVo) throws Exception {
|
||||
|
||||
if (StringUtils.isNotNull(taskProcessVo.getXpath())){
|
||||
Thread.sleep(2000);
|
||||
webDriver.findElement(By.xpath(taskProcessVo.getXpath())).click();
|
||||
log.info(taskProcessVo.getElementName()+"----------");
|
||||
}else {
|
||||
webDriver.findElement(By.id(taskProcessVo.getElementName())).click();
|
||||
log.info("系统登录------------");
|
||||
Thread.sleep(Long.valueOf(String.valueOf(taskProcessVo.getSleepTime()*1000)));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 悬停
|
||||
* @param taskProcessVo
|
||||
* @return
|
||||
* @throws InterruptedException
|
||||
*/
|
||||
public String getObject(TaskProcessVo taskProcessVo) throws InterruptedException {
|
||||
//执行鼠标悬停动作-管理
|
||||
Actions action = new Actions(webDriver);
|
||||
WebElement wegl = webDriver.findElement(By.xpath(taskProcessVo.getXpath()));
|
||||
action.moveToElement(wegl).build().perform();
|
||||
Thread.sleep(Long.valueOf(String.valueOf(taskProcessVo.getSleepTime()*1000)));
|
||||
|
||||
//获取管理标签中的aria-describedby属性
|
||||
String attributeId = wegl.getAttribute("aria-describedby");
|
||||
log.info(taskProcessVo.getElementName()+"管理标签的ID值为:" + attributeId);
|
||||
Thread.sleep(Long.valueOf(String.valueOf(taskProcessVo.getSleepTime()*1000)));
|
||||
return attributeId;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 判断是否有弹框,隐藏弹框
|
||||
*/
|
||||
public void isAlert() {
|
||||
try {
|
||||
WebElement alert = webDriver.findElement(By.xpath("/html/body/div[5]"));
|
||||
JavascriptExecutor js = (JavascriptExecutor) webDriver;
|
||||
js.executeScript("arguments[0].setAttribute(arguments[1],arguments[2])", alert, "style", "display:none");
|
||||
Thread.sleep(3000);
|
||||
|
||||
WebElement alert1 = webDriver.findElement(By.xpath("/html/body/div[2]"));
|
||||
JavascriptExecutor js1 = (JavascriptExecutor) webDriver;
|
||||
js1.executeScript("arguments[0].setAttribute(arguments[1],arguments[2])", alert1, "style", "display:none");
|
||||
Thread.sleep(3000);
|
||||
}catch (Exception e){
|
||||
log.error("隐藏出错或者没有弹窗");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 悬停
|
||||
* @param taskProcessVo
|
||||
*/
|
||||
public void hover(TaskProcessVo taskProcessVo) throws InterruptedException {
|
||||
|
||||
if (StringUtils.isNotNull(taskProcessVo.getXpath())){
|
||||
Actions action = new Actions(webDriver);
|
||||
//执行鼠标悬停动作-常态值班
|
||||
String ctzbXpath =taskProcessVo.getXpath();
|
||||
WebElement wectzb = webDriver.findElement(By.xpath(ctzbXpath));
|
||||
action.moveToElement(wectzb).build().perform();
|
||||
Thread.sleep(Long.valueOf(String.valueOf(taskProcessVo.getSleepTime()*1000)));
|
||||
}else {
|
||||
//定位值班管理iframe的标签
|
||||
WebElement dutyIframe = webDriver.findElement(By.id(taskProcessVo.getElement()));
|
||||
webDriver.switchTo().frame(dutyIframe);
|
||||
log.info("定位到值班管理iframe-----------");
|
||||
Thread.sleep(Long.valueOf(String.valueOf(taskProcessVo.getSleepTime()*1000)));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param taskProcessVo
|
||||
* @param taskVo
|
||||
* @return
|
||||
*/
|
||||
public String collectData(TaskProcessVo taskProcessVo,TaskVo taskVo) {
|
||||
if (DataConfig.morningDaily.equals(taskProcessVo.getElementName()) || DataConfig.eveningDaily.equals(taskProcessVo.getElementName())){
|
||||
CollectDataVo collectDataVo = new CollectDataVo();
|
||||
collectDataVo.setType(taskProcessVo.getElementName());
|
||||
collectDataVo = collectDataMapper.getCollectData(collectDataVo);
|
||||
String data = collectDataVo.getData();
|
||||
DailyBean dailyBean = JSON.parseObject(data, DailyBean.class);
|
||||
String month = DateTimeUtils.getCurrentDay().substring(5, 7);
|
||||
if ("11".equals(month) || "12".equals(month) || "01".equals(month) || "02".equals(month) || "03".equals(month)) {
|
||||
dailyBean.getTenBean().setUhv("0");
|
||||
dailyBean.getTenBean().setFiveHundredKv("0");
|
||||
dailyBean.getTenBean().setTwoHundredTwentyKv("0");
|
||||
dailyBean.getTenBean().setOneHundredTenKv("0");
|
||||
dailyBean.getTenBean().setThirtyFiveKv("0");
|
||||
dailyBean.getTenBean().setTenKv("0");
|
||||
dailyBean.getTenBean().setAverageWaterLevel("0");
|
||||
dailyBean.getTenBean().setDesignValues("0");
|
||||
dailyBean.getTenBean().setMeasuredValue("0");
|
||||
dailyBean.getTenBean().setActionHasBeenTaken("0");
|
||||
|
||||
dailyBean.getElevenBean().setUhv("0");
|
||||
dailyBean.getElevenBean().setFiveHundredKv("0");
|
||||
dailyBean.getElevenBean().setTwoHundredTwentyKv("0");
|
||||
dailyBean.getElevenBean().setOneHundredTenKv("0");
|
||||
dailyBean.getElevenBean().setThirtyFiveKv("0");
|
||||
dailyBean.getElevenBean().setTenKv("0");
|
||||
dailyBean.getElevenBean().setAverageWaterLevel("0");
|
||||
dailyBean.getElevenBean().setMeasuredValue("0");
|
||||
dailyBean.getElevenBean().setActionHasBeenTaken("0");
|
||||
} else {
|
||||
dailyBean.getTenBean().setUhv("");
|
||||
dailyBean.getTenBean().setFiveHundredKv("");
|
||||
dailyBean.getTenBean().setTwoHundredTwentyKv("");
|
||||
dailyBean.getTenBean().setOneHundredTenKv("");
|
||||
dailyBean.getTenBean().setThirtyFiveKv("");
|
||||
dailyBean.getTenBean().setTenKv("");
|
||||
dailyBean.getTenBean().setAverageWaterLevel("");
|
||||
dailyBean.getTenBean().setDesignValues("");
|
||||
dailyBean.getTenBean().setMeasuredValue("");
|
||||
dailyBean.getTenBean().setActionHasBeenTaken("");
|
||||
|
||||
dailyBean.getElevenBean().setUhv("");
|
||||
dailyBean.getElevenBean().setFiveHundredKv("");
|
||||
dailyBean.getElevenBean().setTwoHundredTwentyKv("");
|
||||
dailyBean.getElevenBean().setOneHundredTenKv("");
|
||||
dailyBean.getElevenBean().setThirtyFiveKv("");
|
||||
dailyBean.getElevenBean().setTenKv("");
|
||||
dailyBean.getElevenBean().setAverageWaterLevel("");
|
||||
dailyBean.getElevenBean().setMeasuredValue("");
|
||||
dailyBean.getElevenBean().setActionHasBeenTaken("");
|
||||
}
|
||||
if ("06".equals(month) || "07".equals(month) || "08".equals(month) || "09".equals(month)) {
|
||||
dailyBean.getTwelveBean().setUhv("0");
|
||||
dailyBean.getTwelveBean().setFiveHundredKv("0");
|
||||
dailyBean.getTwelveBean().setTwoHundredTwentyKv("0");
|
||||
dailyBean.getTwelveBean().setOneHundredTenKv("0");
|
||||
dailyBean.getTwelveBean().setThirtyFiveKv("0");
|
||||
dailyBean.getTwelveBean().setTenKv("0");
|
||||
dailyBean.getTwelveBean().setAverageWaterLevel("0");
|
||||
dailyBean.getTwelveBean().setDesignValues("0");
|
||||
dailyBean.getTwelveBean().setMeasuredValue("0");
|
||||
dailyBean.getTwelveBean().setActionHasBeenTaken("0");
|
||||
|
||||
dailyBean.getThirteenBean().setUhv("0");
|
||||
dailyBean.getThirteenBean().setFiveHundredKv("0");
|
||||
dailyBean.getThirteenBean().setTwoHundredTwentyKv("0");
|
||||
dailyBean.getThirteenBean().setOneHundredTenKv("0");
|
||||
dailyBean.getThirteenBean().setThirtyFiveKv("0");
|
||||
dailyBean.getThirteenBean().setTenKv("0");
|
||||
dailyBean.getThirteenBean().setAverageWaterLevel("0");
|
||||
dailyBean.getThirteenBean().setDesignValues("0");
|
||||
dailyBean.getThirteenBean().setMeasuredValue("0");
|
||||
dailyBean.getThirteenBean().setActionHasBeenTaken("0");
|
||||
|
||||
} else {
|
||||
dailyBean.getTwelveBean().setUhv("");
|
||||
dailyBean.getTwelveBean().setFiveHundredKv("");
|
||||
dailyBean.getTwelveBean().setTwoHundredTwentyKv("");
|
||||
dailyBean.getTwelveBean().setOneHundredTenKv("");
|
||||
dailyBean.getTwelveBean().setThirtyFiveKv("");
|
||||
dailyBean.getTwelveBean().setTenKv("");
|
||||
dailyBean.getTwelveBean().setAverageWaterLevel("");
|
||||
dailyBean.getTwelveBean().setDesignValues("");
|
||||
dailyBean.getTwelveBean().setMeasuredValue("");
|
||||
dailyBean.getTwelveBean().setActionHasBeenTaken("");
|
||||
|
||||
dailyBean.getThirteenBean().setUhv("");
|
||||
dailyBean.getThirteenBean().setFiveHundredKv("");
|
||||
dailyBean.getThirteenBean().setTwoHundredTwentyKv("");
|
||||
dailyBean.getThirteenBean().setOneHundredTenKv("");
|
||||
dailyBean.getThirteenBean().setThirtyFiveKv("");
|
||||
dailyBean.getThirteenBean().setTenKv("");
|
||||
dailyBean.getThirteenBean().setAverageWaterLevel("");
|
||||
dailyBean.getThirteenBean().setDesignValues("");
|
||||
dailyBean.getThirteenBean().setMeasuredValue("");
|
||||
dailyBean.getThirteenBean().setActionHasBeenTaken("");
|
||||
}
|
||||
collectDataVo.setData(dailyBean.toString());
|
||||
collectDataMapper.updateCollectData(collectDataVo);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getYuJing(TaskProcessVo taskProcessVo) throws InterruptedException, ParseException {
|
||||
Thread.sleep(5000);
|
||||
String code = "";
|
||||
CollectDataVo collectDataVo = new CollectDataVo();
|
||||
collectDataVo.setType(taskProcessVo.getElementName());
|
||||
collectDataVo = collectDataMapper.getCollectData(collectDataVo);
|
||||
String data = collectDataVo.getData();
|
||||
DailyBean dailyBean = JSON.parseObject(data, DailyBean.class);
|
||||
String code_child = "宿州灵璧公司安排抢修以伍12支(主网10支,配网2支)、车辆12台、发电机1台、照明灯40套、配变10台、箱变4台、电缆1千米、电杆50根、金具50套、绝缘子100串。";
|
||||
String code_chlid2 = "针对此次预警,今日宿州灵璧供电公司开展预警响应,对重要保电线路、变电站进行特巡,安排抢修队伍、绑定应急车辆、装备,抢修队长,通过i" +
|
||||
"国网反馈巡视照片、视频,在新一代系统里均形成巡视记录、车辆队伍轨迹,未发现问题。";
|
||||
//判断是否有发布数据
|
||||
WebElement numClasses = webDriver.findElement(By.xpath("//*[@id=\"tab-3\"]/div/span"));
|
||||
if ("0".equals(numClasses.getText())) {
|
||||
code = "宿州灵璧未发布预警,";
|
||||
} else {
|
||||
//险情类别与等级 例:高温蓝色,暴雨蓝色
|
||||
WebElement weatherEle = webDriver.findElement(By.xpath("/html/body/div[1]/div/section/main/div[1]/div[2]/div[1]/section/main/div/div[3]/table/tbody/tr[1]/td[6]/div/div"));
|
||||
Thread.sleep(300);
|
||||
log.info("天气:" + weatherEle.getText());
|
||||
WebElement time1Ele = webDriver.findElement(By.xpath("/html/body/div[1]/div/section/main/div[1]/div[2]/div[1]/section/main/div/div[3]/table/tbody/tr[1]/td[8]/div/div/div[1]"));
|
||||
Thread.sleep(300);
|
||||
log.info("时间1:" + time1Ele.getText());
|
||||
WebElement time2Ele = webDriver.findElement(By.xpath("/html/body/div[1]/div/section/main/div[1]/div[2]/div[1]/section/main/div/div[3]/table/tbody/tr[1]/td[8]/div/div/div[2]"));
|
||||
Thread.sleep(300);
|
||||
log.info("时间2:" + time2Ele.getText());
|
||||
//判断当前日期是否在此之间
|
||||
String startTime = time1Ele.getText().substring(0, 10);
|
||||
String endTime = time2Ele.getText().substring(0, 10);
|
||||
// boolean tf = DateTimeUtils.compareDate(startTime, endTime);
|
||||
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Date date = inputFormat.parse(startTime);
|
||||
Date date1 = inputFormat.parse(endTime);
|
||||
|
||||
SimpleDateFormat outputFormat = new SimpleDateFormat("MM月dd日");
|
||||
code = "宿州灵璧供电公司发布" + weatherEle.getText() + "预警1项,(" + outputFormat.format(date) + "-" + outputFormat.format(date1) + "发布"+weatherEle.getText()+"),";
|
||||
}
|
||||
if ("宿州灵璧未发布预警,".equals(code)){
|
||||
code_child = "";
|
||||
code_chlid2 = "";
|
||||
}
|
||||
//一、总体情况
|
||||
//今天的日期
|
||||
String data2 = DateTimeUtils.getCurrentDay2();
|
||||
//明天的日期
|
||||
String data3 = DateTimeUtils.getTomorrowDate();
|
||||
if (DataConfig.morningDaily.equals(taskProcessVo.getElementName())) {
|
||||
data = data2 + "17:30至" + data3 + "08:30,";
|
||||
} else {
|
||||
data = data2 + "08:30至" + data2 + "17:30,";
|
||||
}
|
||||
if (DataConfig.morningLog.equals(taskProcessVo.getElementName())){
|
||||
LogBean logBean = JSON.parseObject(data, LogBean.class);
|
||||
String logDate = data3 +"08:30,";
|
||||
if (DataConfig.eveningLog.equals(taskProcessVo.getElementName())){
|
||||
logDate=data2 + "17:30,";
|
||||
}
|
||||
logBean.setEvent_detection_content(data + "灵璧供电公司电网运行正常,安全生产、电力建设、供电服务、网络与信息系统安全运行,安全生产形势平稳。截止" + logDate + "发生主网设备故障跳闸0起,配网线路故障跳闸0起,停运公变0台,停运专变0台,低压故障停电0户。施工作业计划执行正常,安全生产态势平稳有序。用于应急救援、抢修作业等物资齐全;相关队伍在新一代应急系统中位置正常,没有不在所属地域情况。\n" + code +
|
||||
"对系统检测图层中气象实况风速、温度、降雨进行查看、对专题灾害图层地震、台风防汛进行查看均正常,未对宿州灵璧" +
|
||||
"辖区造成影响。通过首页公共气象图层检查宿州灵璧境内公共预警正常;降雨预报、预警正常;雷达预报正常。");
|
||||
logBean.setWarning_disposal_title(code.substring(0,code.length() - 1));
|
||||
logBean.setWarning_disposal_content(data+code+code_child+"各单位重点做好以下工作:1、密切关注气象变化,做好防范应对准备。 2、做好电网运行方式和施工现场安排,合理安排电网运行方式。3、加强设备巡视和运行监控。各单位要加强输变配电设备巡视检查和运行监控,排查变配电站(房)的防渗、防淹隐患,备齐防汛物资和抽水设备,提前清理输配电通道周边可能影响线路安全的树竹、广告标牌、易飘浮物,防范树竹倒伏造成倒杆断线,消除各类隐患。\n"+code_chlid2);
|
||||
logBean.setGeneral_chronicles_content(logBean.getGeneral_chronicles_content());
|
||||
}
|
||||
|
||||
if ("0".equals(numClasses.getText())) {
|
||||
dailyBean.setWarning_company(data+code + code_child);
|
||||
dailyBean.setWarning_company_impatient(data+code + code_child);
|
||||
dailyBean.setImportant_matters(data + "1"+code +"2"+"今日灵璧公司对本部进行通信测试值班电话均及时接通,值班人员响应速度,用词规范,电话声音清晰;值班视频均音质清晰,画面清楚,无回声、杂音。电话及网络均通畅。砀山公司对本部日常操练、值班视频均音质清晰,画面清楚,无回声、杂音,操练人员精神面貌良好,对应急工作职责清楚明晰,结果合格。队员着装、装备齐全,队伍迅速集结,在20分钟内集结完毕,队员职责明确,任务明确,队员抢修能力,应急处置能力良好,未发现其他问题。\n");
|
||||
}else {
|
||||
dailyBean.setWarning_company(data+code +"对系统检测图层中气象实况风速、温度、降雨进行查看、对专题灾害图层地震、台风防汛进行查看均正常,未对宿州灵璧" +
|
||||
"辖区造成影响。通过首页公共气象图层检查宿州灵璧境内公共预警正常;降雨预报、预警正常;雷达预报正常。"+ code_child);
|
||||
dailyBean.setWarning_company_impatient(data+code +"对系统检测图层中气象实况风速、温度、降雨进行查看、对专题灾害图层地震、台风防汛进行查看均正常,未对宿州灵璧" +
|
||||
"辖区造成影响。通过首页公共气象图层检查宿州灵璧境内公共预警正常;降雨预报、预警正常;雷达预报正常。"+ code_child);
|
||||
|
||||
dailyBean.setImportant_matters(data + "1"+code +"对系统检测图层中气象实况风速、温度、降雨进行查看、对专题灾害图层地震、台风防汛进行查看均正常,未对宿州灵璧" +
|
||||
"辖区造成影响。通过首页公共气象图层检查宿州灵璧境内公共预警正常;降雨预报、预警正常;雷达预报正常。"+"2"+"今日灵璧公司对本部进行通信测试值班电话均及时接通,值班人员响应速度,用词规范,电话声音清晰;值班视频均音质清晰,画面清楚,无回声、杂音。电话及网络均通畅。砀山公司对本部日常操练、值班视频均音质清晰,画面清楚,无回声、杂音,操练人员精神面貌良好,对应急工作职责清楚明晰,结果合格。队员着装、装备齐全,队伍迅速集结,在20分钟内集结完毕,队员职责明确,任务明确,队员抢修能力,应急处置能力良好,未发现其他问题。\n");
|
||||
|
||||
}
|
||||
dailyBean.setOverall(data + "宿州灵璧公司电网运行平稳,电力建设、供电服务、网络与信息系统运行正常,安全生产形势总体平稳。\n");
|
||||
dailyBean.setPersonnel_daily_work(dailyBean.getPersonnel_daily_work());
|
||||
collectDataVo.setData(dailyBean.toString());
|
||||
collectDataMapper.updateCollectData(collectDataVo);
|
||||
log.info("天气预警日报更新完成");
|
||||
}
|
||||
}
|
||||
|
|
@ -76,4 +76,6 @@ public interface TaskService {
|
|||
* @param taskVo
|
||||
*/
|
||||
void updateTaskStatus(TaskVo taskVo);
|
||||
|
||||
void runJob(TaskVo taskVo);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,18 +1,21 @@
|
|||
package com.bonus.emergencyrap.service;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.bonus.emergencyrap.constant.TextConstants;
|
||||
|
||||
import com.bonus.emergencyrap.config.DataConfig;
|
||||
import com.bonus.emergencyrap.mapper.TaskMapper;
|
||||
import com.bonus.emergencyrap.utils.DateTimeHelper;
|
||||
import com.bonus.emergencyrap.utils.StringUtils;
|
||||
import com.bonus.emergencyrap.utils.TextFileUtils;
|
||||
import com.bonus.emergencyrap.utils.UploadFile;
|
||||
import com.bonus.emergencyrap.utils.*;
|
||||
import com.bonus.emergencyrap.vo.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.text.ParseException;
|
||||
import java.util.*;
|
||||
import java.text.SimpleDateFormat;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
|
|
@ -21,6 +24,9 @@ public class TaskServiceImpl implements TaskService{
|
|||
@Autowired
|
||||
private TaskMapper mapper;
|
||||
|
||||
@Resource
|
||||
private StepService stepService;
|
||||
|
||||
@Override
|
||||
public List<TaskVo> getTaskList(TaskVo vo) {
|
||||
try{
|
||||
|
|
@ -193,4 +199,133 @@ public class TaskServiceImpl implements TaskService{
|
|||
|
||||
}
|
||||
|
||||
/**
|
||||
* 执行任务
|
||||
*/
|
||||
|
||||
@Async
|
||||
public void runJob(TaskVo taskVo){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
List<TaskProcessVo> taskProcessList = taskVo.getList();
|
||||
taskVo.setExeTime(sdf.format(new Date()));
|
||||
String res =null;
|
||||
//执行每一步操作
|
||||
for (int i = 0; i < taskProcessList.size(); i++) {
|
||||
try {
|
||||
switch (taskProcessList.get(i).getInteractive()) {
|
||||
case "文本输入":
|
||||
if("是".equals(taskProcessList.get(i).getIsStep())){
|
||||
replaceXpath(taskProcessList.get(i),res);
|
||||
}
|
||||
stepService.input(taskProcessList.get(i),res);
|
||||
break;
|
||||
case "单击":
|
||||
if (taskProcessList.get(i).getXpath().contains(DataConfig.lastMonth)){
|
||||
//判断是否是第一天,是的话,点击上月按钮,切换至上月,不是直接跳过
|
||||
if (!DateTimeUtils.isOneDay()) {
|
||||
replaceTr(taskProcessList.get(i+1).getXpath());
|
||||
break;
|
||||
}else {
|
||||
String mothDay = DateTimeUtils.getBeforeLastMonthdate();
|
||||
//判断上个月最后一天的位置
|
||||
int tr = DateTimeUtils.getWeekNum(mothDay);
|
||||
int td = DateTimeUtils.getWeekOfDate(mothDay);
|
||||
taskProcessList.get(i+1).getXpath().replaceAll(DataConfig.tr,String.valueOf(tr));
|
||||
taskProcessList.get(i+1).getXpath().replaceAll(DataConfig.td,String.valueOf(td));
|
||||
}
|
||||
}
|
||||
|
||||
if("是".equals(taskProcessList.get(i).getIsStep())){
|
||||
replaceXpath(taskProcessList.get(i),res);
|
||||
}
|
||||
stepService.onClick(taskProcessList.get(i));
|
||||
break;
|
||||
case "获取对象":
|
||||
res = stepService.getObject(taskProcessList.get(i));
|
||||
// 在这里添加"获取对象"对应的处理逻辑
|
||||
break;
|
||||
case "悬停":
|
||||
stepService.hover(taskProcessList.get(i));
|
||||
// 在这里添加"获取对象"对应的处理逻辑
|
||||
break;
|
||||
case "双击":
|
||||
// 在这里添加"获取对象"对应的处理逻辑
|
||||
break;
|
||||
case "采集数据":
|
||||
if(StringUtils.isNotEmpty(taskProcessList.get(i).getRealTaskId())){
|
||||
TaskVo param=new TaskVo(taskProcessList.get(i).getRealTaskId());
|
||||
TaskVo vo =getTaskDetails(param);
|
||||
res = stepService.collectData(taskProcessList.get(i),vo);
|
||||
}else if (taskProcessList.get(i).getXpath().contains(DataConfig.yuJing)){
|
||||
stepService.getYuJing(taskProcessList.get(i));
|
||||
}
|
||||
|
||||
break;
|
||||
case "判断时间":
|
||||
break;
|
||||
// 可以根据需要添加其他case
|
||||
default:
|
||||
// 可选:添加默认处理逻辑
|
||||
break;
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error(taskProcessList.get(i).getElementName(), e);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void replaceTr(String xpath) throws ParseException {
|
||||
//不是本月第一天
|
||||
int tr = 1;
|
||||
int td = 1;
|
||||
String currentDay = DateTimeUtils.getCurrentDay();
|
||||
int weekNum = DateTimeUtils.getWeekNum(currentDay);
|
||||
int dayNum = DateTimeUtils.getWeekOfDate(currentDay);
|
||||
if (dayNum == 1) {
|
||||
if (DateTimeUtils.getMonthOneDayIs0()) {//第一天是0
|
||||
tr = weekNum;
|
||||
} else {
|
||||
tr = weekNum - 1;
|
||||
if (weekNum == 1) {
|
||||
tr = 5;
|
||||
}
|
||||
}
|
||||
td = 7;
|
||||
} else {
|
||||
if (DateTimeUtils.getMonthOneDayIs0()) {//第一天是0
|
||||
tr = weekNum + 1;
|
||||
} else {
|
||||
tr = weekNum;
|
||||
}
|
||||
td = dayNum - 1;
|
||||
}
|
||||
xpath.replaceAll(DataConfig.tr,String.valueOf(tr));
|
||||
xpath.replaceAll(DataConfig.td,String.valueOf(td));
|
||||
}
|
||||
|
||||
/**
|
||||
* 进行替换
|
||||
* @param taskProcessVo
|
||||
* @param res
|
||||
*/
|
||||
public void replaceXpath(TaskProcessVo taskProcessVo,String res){
|
||||
if (StringUtils.isNotEmpty(taskProcessVo.getXpath())){
|
||||
//今天的日期
|
||||
String data2 = DateTimeUtils.getCurrentDay2();
|
||||
//明天的日期
|
||||
String data3 = DateTimeUtils.getTomorrowDate();
|
||||
|
||||
if (taskProcessVo.getXpath().contains(DataConfig.attributeId)){
|
||||
taskProcessVo.getXpath().replaceAll(DataConfig.attributeId,res);
|
||||
}
|
||||
if (taskProcessVo.getElementName().contains(DataConfig.today)){
|
||||
taskProcessVo.getElementName().replaceAll(DataConfig.today,data2);
|
||||
}
|
||||
if (taskProcessVo.getElementName().contains(DataConfig.tomorrow)){
|
||||
taskProcessVo.getElementName().replaceAll(DataConfig.tomorrow,data3);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ import org.slf4j.LoggerFactory;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.Map;
|
||||
|
|
@ -28,9 +29,10 @@ import java.util.Map;
|
|||
public class ActuatorJob implements Job {
|
||||
private static final Logger logger = LoggerFactory.getLogger(ActuatorJob.class);
|
||||
|
||||
@Autowired
|
||||
@Resource
|
||||
private TaskService taskService;
|
||||
|
||||
|
||||
@Override
|
||||
public void execute(JobExecutionContext context) throws JobExecutionException {
|
||||
try{
|
||||
|
|
@ -39,6 +41,14 @@ public class ActuatorJob implements Job {
|
|||
String taskId = context.getTrigger().getJobDataMap().get("taskId").toString();
|
||||
TaskVo param=new TaskVo(taskId);
|
||||
TaskVo vo =taskService.getTaskDetails(param);
|
||||
//执行任务
|
||||
if (vo.getFailNum()==0){
|
||||
logger.warn("任务ID: {} 错误次数已达{}次,超过最大限制10次,本次不执行任务",
|
||||
vo.getTaskId(), vo.getFailNum());
|
||||
return;
|
||||
}
|
||||
vo.setFailNum(vo.getFailNum()-1);
|
||||
taskService.runJob(vo);
|
||||
logger.info("SampleJob 执行时间: {}", currentTime);
|
||||
logger.info("任务执行器开始执行,执行任务id=="+vo.getTaskId()+"任务名称是=="+vo.getTaskName()+"执行时间=="+vo.getCron());
|
||||
}catch (Exception e){
|
||||
|
|
|
|||
|
|
@ -0,0 +1,288 @@
|
|||
package com.bonus.emergencyrap.utils;
|
||||
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 日期操作工具类
|
||||
*/
|
||||
public class DateTimeUtils {
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 获取当前时间是本周第几天,从周一开始计算
|
||||
* @return
|
||||
*/
|
||||
public static int getWeekOfDate(String dateString ) throws ParseException {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Date dt= sdf.parse(dateString);
|
||||
int[] weekDays = {7, 1, 2, 3, 4,5, 6};
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(dt);
|
||||
int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
|
||||
if (w < 0){
|
||||
w = 0;
|
||||
}
|
||||
return weekDays[w];
|
||||
}
|
||||
|
||||
/**'
|
||||
*获取当前时间是本月第几周
|
||||
* @return
|
||||
*/
|
||||
public static int getWeekNum(String dateString ) throws ParseException {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Date date= sdf.parse(dateString);
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
calendar.setTime(date);
|
||||
int weekOfMonth = calendar.get(Calendar.WEEK_OF_MONTH);
|
||||
if (getWeekOfDate(dateString) == 7){
|
||||
weekOfMonth = weekOfMonth - 1;
|
||||
}
|
||||
return weekOfMonth;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取本月第一天在第几周
|
||||
* @return true 0 false >0
|
||||
* @throws ParseException
|
||||
*/
|
||||
public static boolean getMonthOneDayIs0() throws ParseException {
|
||||
LocalDate firstDayOfMonth = LocalDate.now().withDayOfMonth(1);
|
||||
int t=getWeekNum(firstDayOfMonth.toString());
|
||||
// int t=getWeekNum(day);
|
||||
if(t>0){
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取上个月的最后一天
|
||||
*/
|
||||
public static String getBeforeLastMonthdate(){
|
||||
SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd");
|
||||
Calendar calendar=Calendar.getInstance();
|
||||
int month=calendar.get(Calendar.MONTH);
|
||||
calendar.set(Calendar.MONTH, month-1);
|
||||
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
|
||||
String format = sf.format(calendar.getTime());
|
||||
return format;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前日期
|
||||
* @return
|
||||
*/
|
||||
public static String getCurrentDay(){
|
||||
Date date=new Date();
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
|
||||
return formatter.format(date);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取昨天的日期
|
||||
* @return
|
||||
*/
|
||||
public static String getLastDayYYYYMMDD(){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Calendar c = Calendar.getInstance();
|
||||
c.add(Calendar.DATE, -1);//-1.昨天时间 0.当前时间 1.明天时间 *以此类推
|
||||
String time = sdf.format(c.getTime());
|
||||
System.out.println("昨天的时间时间是:" + time);//20190704
|
||||
return time;
|
||||
}
|
||||
private static List<Integer> getARandomCollectionOfData() {
|
||||
Random random = new Random();
|
||||
int minCount = 3; // 最小数量
|
||||
int maxCount = 5; // 最大数量
|
||||
int count = random.nextInt(maxCount - minCount + 1) + minCount; // 随机生成数量
|
||||
List<Integer> numbers = new ArrayList<>();
|
||||
while (numbers.size() < count) {
|
||||
int randomNumber = random.nextInt(6) + 2; // 随机生成1到7的数字
|
||||
if (!numbers.contains(randomNumber)) {
|
||||
numbers.add(randomNumber);
|
||||
}
|
||||
}
|
||||
Collections.shuffle(numbers);
|
||||
System.out.println(numbers);
|
||||
return numbers;
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws ParseException {
|
||||
// System.out.println(getMMDDByNow());
|
||||
//获取一个随机数据集合
|
||||
List<Integer> list = getARandomCollectionOfData();
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
String type = "";
|
||||
String company = "";
|
||||
if (i < 2){
|
||||
type = "通信测试";
|
||||
}else {
|
||||
type = "日常操练";
|
||||
}
|
||||
switch(String.valueOf(list.get(i))){
|
||||
case "1":
|
||||
company = "宿州";
|
||||
break;
|
||||
case "2":
|
||||
company = "埇桥";
|
||||
break;
|
||||
case "3":
|
||||
company = "砀山";
|
||||
break;
|
||||
case "4":
|
||||
company = "萧县";
|
||||
break;
|
||||
case "5":
|
||||
company = "灵璧";
|
||||
break;
|
||||
case "6":
|
||||
company = "城郊";
|
||||
break;
|
||||
case "7":
|
||||
company = "泗县";
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
System.out.println(type);
|
||||
System.out.println(company);
|
||||
System.out.println(i+1);
|
||||
System.out.println("-------------------");
|
||||
}
|
||||
}
|
||||
public static String getCurrentDay2(){
|
||||
Date date=new Date();
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("MM月dd日");
|
||||
return formatter.format(date);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取昨天的日期
|
||||
* @return
|
||||
*/
|
||||
public static String getLastDay(){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日");
|
||||
Calendar c = Calendar.getInstance();
|
||||
c.add(Calendar.DATE, -1);//-1.昨天时间 0.当前时间 1.明天时间 *以此类推
|
||||
String time = sdf.format(c.getTime());
|
||||
System.out.println("昨天的时间时间是:" + time);//20190704
|
||||
return time;
|
||||
}
|
||||
/**
|
||||
* 获取明天的日期
|
||||
* @return
|
||||
*/
|
||||
public static String getTomorrowDate() {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日");
|
||||
Calendar c = Calendar.getInstance();
|
||||
c.add(Calendar.DATE, 1);//-1.昨天时间 0.当前时间 1.明天时间 *以此类推
|
||||
String time = sdf.format(c.getTime());
|
||||
System.out.println("昨天的时间时间是:" + time);//20190704
|
||||
return time;
|
||||
}
|
||||
/**
|
||||
* 获取当前月日
|
||||
* @return
|
||||
*/
|
||||
public static String getCurrentDayByMonth(){
|
||||
Date date=new Date();
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("MM月dd日");
|
||||
return formatter.format(date);
|
||||
}
|
||||
public static String getMMDDByNow(){
|
||||
Date date=new Date();
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("MMdd");
|
||||
return formatter.format(date);
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断当前日期是否为本月第一天
|
||||
* @return
|
||||
*/
|
||||
public static boolean isOneDay(){
|
||||
// TODO Auto-generated method stub
|
||||
Date now = new Date();
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");//可以方便地修改日期格式
|
||||
String curr = dateFormat.format( now );
|
||||
System.out.println("当前日期:" + curr);
|
||||
|
||||
Calendar c = Calendar.getInstance();//可以对每个时间域单独修改
|
||||
|
||||
int year = c.get(Calendar.YEAR);
|
||||
int month = c.get(Calendar.MONTH);
|
||||
int date = c.get(Calendar.DATE);
|
||||
if(date == 1){
|
||||
System.out.println(curr + "是第一天");
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
System.out.println(curr + "不是第一天");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断当前时间是否在[startTime, endTime]区间,注意三个参数的时间格式要一致
|
||||
* @param startTime
|
||||
* @param endTime
|
||||
* @return 在时间段内返回true,不在返回false
|
||||
*/
|
||||
public static boolean isEffectiveDate(String startTime, String endTime){
|
||||
/**
|
||||
* 判断当前时间是否在一个时间段内 HH:mm 格式
|
||||
*/
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
|
||||
String now = sdf.format(new Date());
|
||||
Date nowTime;
|
||||
try{
|
||||
nowTime = sdf.parse(now);
|
||||
Date startTime1 = sdf.parse(startTime);
|
||||
Date endTime1 = sdf.parse(endTime);
|
||||
if (nowTime.getTime() == startTime1.getTime()
|
||||
|| nowTime.getTime() == endTime1.getTime()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Calendar date = Calendar.getInstance();
|
||||
date.setTime(nowTime);
|
||||
|
||||
Calendar begin = Calendar.getInstance();
|
||||
begin.setTime(startTime1);
|
||||
|
||||
Calendar end = Calendar.getInstance();
|
||||
end.setTime(endTime1);
|
||||
|
||||
return date.after(begin) && date.before(end);
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public static boolean compareDate(String date1, String date2) throws ParseException {
|
||||
boolean tf = false;
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
|
||||
|
||||
// 定义起始日期和结束日期
|
||||
Date startDate = dateFormat.parse(date1 + " 00:00:00");
|
||||
Date endDate = dateFormat.parse(date2 + " 23:59:59");
|
||||
|
||||
// 定义要判断的日期
|
||||
Date dateToCheck = new Date();
|
||||
|
||||
// 判断日期是否在范围内
|
||||
if (startDate.compareTo(dateToCheck) <= 0 && endDate.compareTo(dateToCheck) >= 0) {
|
||||
System.out.println("日期在范围内");
|
||||
tf = true;
|
||||
} else {
|
||||
tf = false;
|
||||
System.out.println("日期不在范围内");
|
||||
}
|
||||
return tf;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* 附件八-输配电线停运及恢复
|
||||
* @author ztq
|
||||
*/
|
||||
@Data
|
||||
public class AnnexEightBean {
|
||||
|
||||
/**
|
||||
* 特高压
|
||||
*/
|
||||
private String transmit_electricity_add_outage_uvh;
|
||||
private String transmit_electricity_add_repair_uvh;
|
||||
private String transmit_electricity_add_no_repair_uvh;
|
||||
|
||||
private String transmit_electricity_cumulative_outage_uvh;
|
||||
private String transmit_electricity_cumulative_repair_uvh;
|
||||
private String transmit_electricity_cumulative_no_repair_uvh;
|
||||
|
||||
/**
|
||||
* 500kv
|
||||
*/
|
||||
private String transmit_electricity_add_outage_five;
|
||||
private String transmit_electricity_add_repair_five;
|
||||
private String transmit_electricity_add_no_repair_five;
|
||||
|
||||
private String transmit_electricity_cumulative_outage_five;
|
||||
private String transmit_electricity_cumulative_repair_five;
|
||||
private String transmit_electricity_cumulative_no_repair_five;
|
||||
|
||||
/**
|
||||
* 220/300kv
|
||||
*/
|
||||
private String transmit_electricity_add_outage_two;
|
||||
private String transmit_electricity_add_repair_two;
|
||||
private String transmit_electricity_add_no_repair_two;
|
||||
|
||||
private String transmit_electricity_cumulative_outage_two;
|
||||
private String transmit_electricity_cumulative_repair_two;
|
||||
private String transmit_electricity_cumulative_no_repair_two;
|
||||
|
||||
/**
|
||||
* 110/66kv
|
||||
*/
|
||||
private String transmit_electricity_add_outage_one;
|
||||
private String transmit_electricity_add_repair_one;
|
||||
private String transmit_electricity_add_no_repair_one;
|
||||
|
||||
private String transmit_electricity_cumulative_outage_one;
|
||||
private String transmit_electricity_cumulative_repair_one;
|
||||
private String transmit_electricity_cumulative_no_repair_one;
|
||||
|
||||
/**
|
||||
* 35kv
|
||||
*/
|
||||
private String transmit_electricity_add_outage_three;
|
||||
private String transmit_electricity_add_repair_three;
|
||||
private String transmit_electricity_add_no_repair_three;
|
||||
|
||||
private String transmit_electricity_cumulative_outage_three;
|
||||
private String transmit_electricity_cumulative_repair_three;
|
||||
private String transmit_electricity_cumulative_no_repair_three;
|
||||
|
||||
/**
|
||||
* 10kv
|
||||
*/
|
||||
private String transmit_electricity_add_outage_ten;
|
||||
private String transmit_electricity_add_repair_ten;
|
||||
private String transmit_electricity_add_no_repair_ten;
|
||||
|
||||
private String transmit_electricity_cumulative_outage_ten;
|
||||
private String transmit_electricity_cumulative_repair_ten;
|
||||
private String transmit_electricity_cumulative_no_repair_ten;
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 包名称:com.bonus.autoweb.UI.entity
|
||||
* 类名称:AnnexTenBean
|
||||
* 类描述:附件十一
|
||||
* 创建人:@author tqzhang
|
||||
* 创建时间:2023年08月01日 13:23
|
||||
*/
|
||||
@Data
|
||||
public class AnnexElevenBean {
|
||||
private String uhv;
|
||||
private String fiveHundredKv;
|
||||
private String twoHundredTwentyKv;
|
||||
private String oneHundredTenKv;
|
||||
private String thirtyFiveKv;
|
||||
private String tenKv;
|
||||
private String averageWaterLevel;
|
||||
private String measuredValue;
|
||||
private String actionHasBeenTaken;
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 包名称:com.bonus.autoweb.UI.entity
|
||||
* 类名称:AnnexFiveBean
|
||||
* 类描述:附件五 入境筛查和集中观察场所供电保障情况表
|
||||
* 创建人:@author tqzhang
|
||||
* 创建时间:2023年07月27日 11:29
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class AnnexFiveBean {
|
||||
//入境筛选和集中观察场所数量
|
||||
private String airportPort;
|
||||
private String venueHospital;
|
||||
private String guesthouseHotel;
|
||||
private String safeguardPersonnel;
|
||||
//投入力量
|
||||
private String electricallyGuaranteedVehicles;
|
||||
private String powerGenerationVehicles;
|
||||
private String dynamo;
|
||||
private String remark;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* 附件四-疫情防控供电保障情况统计表
|
||||
* @author zys
|
||||
*/
|
||||
@Data
|
||||
public class AnnexFourBean {
|
||||
|
||||
/**
|
||||
* 定点医院
|
||||
*/
|
||||
private String designated_hospitals;
|
||||
|
||||
/**
|
||||
* 发热门诊
|
||||
*/
|
||||
private String fever_clinic;
|
||||
|
||||
/**
|
||||
* 防疫用品企业
|
||||
*/
|
||||
private String epidemic_enterprise;
|
||||
|
||||
/**
|
||||
* 其他重要用户
|
||||
*/
|
||||
private String other_important_users;
|
||||
|
||||
/**
|
||||
* 客户用电保障人员
|
||||
*/
|
||||
private String customer_power_personnel;
|
||||
|
||||
/**
|
||||
* 电网运维保障人员
|
||||
*/
|
||||
private String power_devops_personnel;
|
||||
|
||||
/**
|
||||
* 保电车辆
|
||||
*/
|
||||
private String electrically_vehicles;
|
||||
|
||||
/**
|
||||
* 应急发电车
|
||||
*/
|
||||
private String emergency_power_vehicles;
|
||||
|
||||
/**
|
||||
* 应急发电机
|
||||
*/
|
||||
private String emergency_generator;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 包名称:com.bonus.autoweb.UI.entity
|
||||
* 类名称:AnnexTwelveBean
|
||||
* 类描述:附件十四 超设计风力线路数量统计表
|
||||
* 创建人:@author tqzhang
|
||||
* 创建时间:2023年07月27日 13:15
|
||||
*/
|
||||
@Data
|
||||
public class AnnexFourteenBean {
|
||||
private String uhv;
|
||||
private String fiveHundredKv;
|
||||
private String twoHundredTwentyKv;
|
||||
private String oneHundredTenKv;
|
||||
private String thirtyFiveKv;
|
||||
private String tenKv;
|
||||
private String averageWaterLevel;
|
||||
private String measuredValue;
|
||||
private String designValues;
|
||||
private String actionHasBeenTaken;
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* 附件九-台区用户停电及恢复
|
||||
* @author ztq
|
||||
*/
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class AnnexNineBean {
|
||||
|
||||
/**
|
||||
* 台区
|
||||
*/
|
||||
private String add_blackout_tai_district;
|
||||
private String add_repair_tai_district;
|
||||
private String add_no_repair_tai_district;
|
||||
|
||||
private String cumulative_blackout_tai_district;
|
||||
private String cumulative_repair_tai_district;
|
||||
private String cumulative_no_repair_tai_district;
|
||||
|
||||
/**
|
||||
* 用户
|
||||
*/
|
||||
private String add_blackout_user;
|
||||
private String add_repair_user;
|
||||
private String add_no_repair_user;
|
||||
|
||||
private String cumulative_blackout_user;
|
||||
private String cumulative_repair_user;
|
||||
private String cumulative_no_repair_user;
|
||||
|
||||
/**
|
||||
* 出动抢修力量
|
||||
* 人员 车辆
|
||||
*/
|
||||
private String add_power_personnel;
|
||||
private String add_power_vehicle;
|
||||
|
||||
private String cumulative_power_personnel;
|
||||
private String cumulative_power_vehicle;
|
||||
}
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* 附件一-操练情况统计表
|
||||
* @author zys
|
||||
*/
|
||||
@Data
|
||||
public class AnnexOneBean {
|
||||
|
||||
/**
|
||||
* 操练内容(选择框)
|
||||
* “四要素”检查
|
||||
* 通信测试
|
||||
* 重要站线视频连线检查
|
||||
*/
|
||||
private String exercise_content;
|
||||
|
||||
/**
|
||||
* 操练数量
|
||||
* 人员
|
||||
*/
|
||||
private String exercise_person_num;
|
||||
|
||||
/**
|
||||
* 操练数量
|
||||
* 车辆
|
||||
*/
|
||||
private String exercise_vehicle_num;
|
||||
|
||||
/**
|
||||
* 操练数量
|
||||
* 发电车
|
||||
*/
|
||||
private String exercise_power_vehicle_num;
|
||||
|
||||
/**
|
||||
* 操练数量
|
||||
* 发电机
|
||||
*/
|
||||
private String exercise_dynamo_num;
|
||||
|
||||
/**
|
||||
* 操练发现的问题
|
||||
*/
|
||||
private String exercise_find_problems;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* 附件七-变电站停运及恢复
|
||||
* @author ztq
|
||||
*/
|
||||
@Data
|
||||
public class AnnexSevenBean {
|
||||
|
||||
/**
|
||||
* 特高压
|
||||
*/
|
||||
private String power_substation_add_outage_uvh;
|
||||
private String power_substation_add_repair_uvh;
|
||||
private String power_substation_add_no_repair_uvh;
|
||||
|
||||
private String power_substation_cumulative_outage_uvh;
|
||||
private String power_substation_cumulative_repair_uvh;
|
||||
private String power_substation_cumulative_no_repair_uvh;
|
||||
|
||||
/**
|
||||
* 500kv
|
||||
*/
|
||||
private String power_substation_add_outage_five;
|
||||
private String power_substation_add_repair_five;
|
||||
private String power_substation_add_no_repair_five;
|
||||
|
||||
private String power_substation_cumulative_outage_five;
|
||||
private String power_substation_cumulative_repair_five;
|
||||
private String power_substation_cumulative_no_repair_five;
|
||||
|
||||
/**
|
||||
* 220/300kv
|
||||
*/
|
||||
private String power_substation_add_outage_two;
|
||||
private String power_substation_add_repair_two;
|
||||
private String power_substation_add_no_repair_two;
|
||||
|
||||
private String power_substation_cumulative_outage_two;
|
||||
private String power_substation_cumulative_repair_two;
|
||||
private String power_substation_cumulative_no_repair_two;
|
||||
|
||||
/**
|
||||
* 110/66kv
|
||||
*/
|
||||
private String power_substation_add_outage_one;
|
||||
private String power_substation_add_repair_one;
|
||||
private String power_substation_add_no_repair_one;
|
||||
|
||||
private String power_substation_cumulative_outage_one;
|
||||
private String power_substation_cumulative_repair_one;
|
||||
private String power_substation_cumulative_no_repair_one;
|
||||
|
||||
/**
|
||||
* 35kv
|
||||
*/
|
||||
private String power_substation_add_outage_three;
|
||||
private String power_substation_add_repair_three;
|
||||
private String power_substation_add_no_repair_three;
|
||||
|
||||
private String power_substation_cumulative_outage_three;
|
||||
private String power_substation_cumulative_repair_three;
|
||||
private String power_substation_cumulative_no_repair_three;
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* 附件六-预警及应急响应情况跟踪表
|
||||
* @author zys
|
||||
*/
|
||||
@Data
|
||||
public class AnnexSixBean {
|
||||
|
||||
/**
|
||||
* 领导及指挥人员
|
||||
*/
|
||||
private String leaders_command_staff;
|
||||
|
||||
/**
|
||||
* 投入力量
|
||||
* 人员
|
||||
*/
|
||||
private String input_amount_person;
|
||||
|
||||
/**
|
||||
* 投入力量
|
||||
* 车辆
|
||||
*/
|
||||
private String input_amount_vehicle;
|
||||
|
||||
/**
|
||||
* 投入力量
|
||||
* 发电车
|
||||
*/
|
||||
private String input_amount_power_vehicle;
|
||||
|
||||
/**
|
||||
* 投入力量
|
||||
* 发电机
|
||||
*/
|
||||
private String input_amount_dynamo;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 包名称:com.bonus.autoweb.UI.entity
|
||||
* 类名称:AnnexTenBean
|
||||
* 类描述:附件十
|
||||
* 创建人:@author tqzhang
|
||||
* 创建时间:2023年08月01日 13:23
|
||||
*/
|
||||
@Data
|
||||
public class AnnexTenBean {
|
||||
private String uhv;
|
||||
private String fiveHundredKv;
|
||||
private String twoHundredTwentyKv;
|
||||
private String oneHundredTenKv;
|
||||
private String thirtyFiveKv;
|
||||
private String tenKv;
|
||||
private String averageWaterLevel;
|
||||
private String measuredValue;
|
||||
private String designValues;
|
||||
private String actionHasBeenTaken;
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 包名称:com.bonus.autoweb.UI.entity
|
||||
* 类名称:AnnexTwelveBean
|
||||
* 类描述:附件十三 超设计水位线路数量统计表(仅6月-9月报送)
|
||||
* 创建人:@author tqzhang
|
||||
* 创建时间:2023年07月27日 13:15
|
||||
*/
|
||||
@Data
|
||||
public class AnnexThirteenBean {
|
||||
private String uhv;
|
||||
private String fiveHundredKv;
|
||||
private String twoHundredTwentyKv;
|
||||
private String oneHundredTenKv;
|
||||
private String thirtyFiveKv;
|
||||
private String tenKv;
|
||||
private String averageWaterLevel;
|
||||
private String measuredValue;
|
||||
private String designValues;
|
||||
private String actionHasBeenTaken;
|
||||
}
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 包名称:com.bonus.autoweb.UI.entity
|
||||
* 类名称:AnnexThreeBean
|
||||
* 类描述:附件三 电网生产相关专业员工感染情况统计表
|
||||
* 创建人:@author tqzhang
|
||||
* 创建时间:2023年07月27日 11:18
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class AnnexThreeBean {
|
||||
//合计 新增
|
||||
private String totalAddDiagnosed;
|
||||
private String totalAddHeal;
|
||||
private String totalAddSuspected;
|
||||
//合计 现有
|
||||
private String totalExistingDiagnosed;
|
||||
private String totalExistingHeal;
|
||||
private String totalExistingSuspected;
|
||||
//电网调度 新增
|
||||
private String dispatchAddDiagnosed;
|
||||
private String dispatchAddHeal;
|
||||
private String dispatchAddSuspected;
|
||||
//电网调度 现有
|
||||
private String dispatchExistingDiagnosed;
|
||||
private String dispatchExistingHeal;
|
||||
private String dispatchExistingSuspected;
|
||||
//运维维修 新增
|
||||
private String repairAddDiagnosed;
|
||||
private String repairAddHeal;
|
||||
private String repairAddSuspected;
|
||||
//运维维修 现有
|
||||
private String repairExistingDiagnosed;
|
||||
private String repairExistingHeal;
|
||||
private String repairExistingSuspected;
|
||||
//营销服务 新增
|
||||
private String marketingAddDiagnosed;
|
||||
private String marketingAddHeal;
|
||||
private String marketingAddSuspected;
|
||||
//营销服务 现有
|
||||
private String marketingExistingDiagnosed;
|
||||
private String marketingExistingHeal;
|
||||
private String marketingExistingSuspected;
|
||||
//电网建设 新增
|
||||
private String constructionAddDiagnosed;
|
||||
private String constructionAddHeal;
|
||||
private String constructionAddSuspected;
|
||||
//电网建设 现有
|
||||
private String constructionExistingDiagnosed;
|
||||
private String constructionExistingHeal;
|
||||
private String constructionExistingSuspected;
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 包名称:com.bonus.autoweb.UI.entity
|
||||
* 类名称:AnnexTwelveBean
|
||||
* 类描述:附件十二 超设计水位变电站数量统计表(仅6月-9月报送)
|
||||
* 创建人:@author tqzhang
|
||||
* 创建时间:2023年07月27日 13:15
|
||||
*/
|
||||
@Data
|
||||
public class AnnexTwelveBean {
|
||||
private String uhv;
|
||||
private String fiveHundredKv;
|
||||
private String twoHundredTwentyKv;
|
||||
private String oneHundredTenKv;
|
||||
private String thirtyFiveKv;
|
||||
private String tenKv;
|
||||
private String averageWaterLevel;
|
||||
private String measuredValue;
|
||||
private String designValues;
|
||||
private String actionHasBeenTaken;
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* 附件二-资源核查问题数量统计表
|
||||
* @author zys
|
||||
*/
|
||||
@Data
|
||||
public class AnnexTwoBean {
|
||||
|
||||
/**
|
||||
* 核查数量
|
||||
* 人员
|
||||
*/
|
||||
private String verification_person_num;
|
||||
|
||||
/**
|
||||
* 核查数量
|
||||
* 队伍
|
||||
*/
|
||||
private String verification_team_num;
|
||||
|
||||
/**
|
||||
* 核查数量
|
||||
* 装备
|
||||
*/
|
||||
private String verification_equip_num;
|
||||
|
||||
/**
|
||||
* 核查数量
|
||||
* 物资
|
||||
*/
|
||||
private String verification_material_num;
|
||||
|
||||
/**
|
||||
* 核查数量
|
||||
* 车辆
|
||||
*/
|
||||
private String verification_vehicle_num;
|
||||
|
||||
/**
|
||||
* 核查发现的问题
|
||||
*/
|
||||
private String verification_find_problems;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author 马三炮
|
||||
* @date 2025/9/28
|
||||
*/
|
||||
@Data
|
||||
public class CollectDataVo {
|
||||
|
||||
private String id;
|
||||
|
||||
private String type;
|
||||
|
||||
private String updateTime;
|
||||
|
||||
private String data;
|
||||
}
|
||||
|
|
@ -0,0 +1,140 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 日报实体类
|
||||
* @author zys
|
||||
*/
|
||||
@Data
|
||||
public class DailyBean {
|
||||
|
||||
/**
|
||||
* 总体情况
|
||||
*/
|
||||
private String overall;
|
||||
|
||||
/**
|
||||
* 重要事项
|
||||
*/
|
||||
private String important_matters;
|
||||
|
||||
/**
|
||||
* 安全生产情况
|
||||
*/
|
||||
private String safety_production;
|
||||
|
||||
/**
|
||||
* 值班员日常工作情况
|
||||
*/
|
||||
private String personnel_daily_work;
|
||||
|
||||
/**
|
||||
* 供电保障情况
|
||||
* 今日重大活动保电情况
|
||||
*/
|
||||
private String power_guarantee_today_work;
|
||||
|
||||
/**
|
||||
* 供电保障情况
|
||||
* 明日重大保电情况
|
||||
*/
|
||||
private String power_guarantee_tomorrow_work;
|
||||
|
||||
/**
|
||||
* 供电保障情况
|
||||
* 今日疫情防控应急保电情况
|
||||
*/
|
||||
private String power_guarantee_today_pestilence;
|
||||
|
||||
/**
|
||||
* 预警及应急响应情况
|
||||
* 公司预警情况
|
||||
*/
|
||||
private String warning_company;
|
||||
|
||||
/**
|
||||
* 预警及应急响应情况
|
||||
* 公司应急响应情况
|
||||
*/
|
||||
private String warning_company_impatient;
|
||||
|
||||
/**
|
||||
* 预警及应急响应情况
|
||||
* 社会突发事件救援及处置情况
|
||||
*/
|
||||
private String warning_society_emergency;
|
||||
|
||||
/**
|
||||
* 其他情况说明
|
||||
*/
|
||||
private String other_situations;
|
||||
|
||||
/**
|
||||
* 附件一
|
||||
*/
|
||||
private AnnexOneBean oneBean;
|
||||
|
||||
/**
|
||||
* 附件二
|
||||
*/
|
||||
private AnnexTwoBean twoBean;
|
||||
|
||||
/**
|
||||
* 附件三
|
||||
*/
|
||||
private AnnexThreeBean threeBean;
|
||||
|
||||
/**
|
||||
* 附件四
|
||||
*/
|
||||
private AnnexFourBean fourBean;
|
||||
|
||||
/**
|
||||
* 附件五
|
||||
*/
|
||||
private AnnexFiveBean fiveBean;
|
||||
|
||||
/**
|
||||
* 附件六
|
||||
*/
|
||||
private AnnexSixBean sixBean;
|
||||
|
||||
/**
|
||||
* 附件七
|
||||
*/
|
||||
private AnnexSevenBean sevenBean;
|
||||
|
||||
/**
|
||||
* 附件八
|
||||
*/
|
||||
private AnnexEightBean eightBean;
|
||||
|
||||
/**
|
||||
* 附件九
|
||||
*/
|
||||
private AnnexNineBean nineBean;
|
||||
|
||||
/**
|
||||
* 附件十
|
||||
*/
|
||||
private AnnexTenBean tenBean;
|
||||
/**
|
||||
* 附件十一
|
||||
*/
|
||||
private AnnexElevenBean elevenBean;
|
||||
/**
|
||||
* 附件十二
|
||||
*/
|
||||
private AnnexTwelveBean twelveBean;
|
||||
|
||||
/**
|
||||
* 附件十三
|
||||
*/
|
||||
private AnnexThirteenBean thirteenBean;
|
||||
|
||||
/**
|
||||
* 附件十四
|
||||
*/
|
||||
private AnnexFourteenBean fourteenBean;
|
||||
}
|
||||
|
|
@ -0,0 +1,108 @@
|
|||
package com.bonus.emergencyrap.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 日志实体类
|
||||
* @author zys
|
||||
*/
|
||||
@Data
|
||||
public class LogBean implements Serializable {
|
||||
|
||||
/**
|
||||
* 天气
|
||||
*/
|
||||
private String weather;
|
||||
/**
|
||||
* 最低气温 0/10
|
||||
*/
|
||||
private String min_temperature;
|
||||
|
||||
/**
|
||||
* 最高气温 0/10
|
||||
*/
|
||||
private String max_temperature;
|
||||
|
||||
/**
|
||||
* 事件检测标题
|
||||
*/
|
||||
private String event_detection_title;
|
||||
|
||||
/**
|
||||
* 事件检测内容
|
||||
*/
|
||||
private String event_detection_content;
|
||||
|
||||
/**
|
||||
* 保电工作标题
|
||||
*/
|
||||
private String power_work_title;
|
||||
|
||||
/**
|
||||
* 保电工作内容
|
||||
*/
|
||||
private String power_work_content;
|
||||
|
||||
/**
|
||||
* 资源核查情况标题
|
||||
*/
|
||||
private String resource_check_title;
|
||||
|
||||
/**
|
||||
* 资源核查情况内容
|
||||
*/
|
||||
private String resource_check_content;
|
||||
|
||||
/**
|
||||
* 通信测试标题
|
||||
*/
|
||||
private String communications_test_title;
|
||||
|
||||
/**
|
||||
* 通信测试内容
|
||||
*/
|
||||
private String communications_test_content;
|
||||
|
||||
/**
|
||||
* 日常操作情况标题
|
||||
*/
|
||||
private String daily_operation_title;
|
||||
|
||||
/**
|
||||
* 日常操作情况内容
|
||||
*/
|
||||
private String daily_operation_content;
|
||||
|
||||
/**
|
||||
* 日报提报情况标题
|
||||
*/
|
||||
private String daily_submission_title;
|
||||
|
||||
/**
|
||||
* 日报提报情况内容
|
||||
*/
|
||||
private String daily_submission_content;
|
||||
|
||||
/**
|
||||
* 预警处置标题
|
||||
*/
|
||||
private String warning_disposal_title;
|
||||
|
||||
/**
|
||||
* 预警处置内容
|
||||
*/
|
||||
private String warning_disposal_content;
|
||||
|
||||
/**
|
||||
* 一般记事标题
|
||||
*/
|
||||
private String general_chronicles_title;
|
||||
|
||||
/**
|
||||
* 一般记事内容
|
||||
*/
|
||||
private String general_chronicles_content;
|
||||
|
||||
}
|
||||
|
|
@ -28,7 +28,7 @@ public class TaskProcessVo {
|
|||
private double sleepTime;
|
||||
/**
|
||||
* 交互方式
|
||||
* 点击 、输入 、双击、单击、无操作
|
||||
* 悬停 、文本输入 、双击、单击、获取对象、数据采集、单选、多选
|
||||
*/
|
||||
private String interactive;
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -0,0 +1,14 @@
|
|||
<?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.bonus.emergencyrap.mapper.CollectDataMapper">
|
||||
<update id="updateCollectData">
|
||||
update tb_collect_data set data = #{date} where id =#{id}
|
||||
</update>
|
||||
|
||||
<select id="getCollectData" resultType="com.bonus.emergencyrap.vo.CollectDataVo">
|
||||
select id,type,update_time as updateTime,data
|
||||
from tb_collect_data
|
||||
where type=#{type}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue