Browse Source

20210727

tall3
zy_Java 4 years ago
parent
commit
ed450e224b
  1. 26
      common/src/main/java/com/ccsens/common/bean/dto/PluginDto.java
  2. 11
      common/src/main/java/com/ccsens/common/service/IPluginService.java
  3. 71
      common/src/main/java/com/ccsens/common/service/PluginService.java
  4. 11
      util/src/main/java/com/ccsens/util/cron/NatureToDate.java
  5. 24
      util/src/test/java/com/ccsens/util/OtherTest.java

26
common/src/main/java/com/ccsens/common/bean/dto/PluginDto.java

@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
/**
@ -21,4 +22,29 @@ public class PluginDto {
@ApiModelProperty("样式类型 (1一行 2两行 3半屏)")
private int styleType;
}
@Data
@ApiModel("配置任务插件信息")
public static class UpdateTaskPlugin{
@NotNull(message = "任务详情id不能为空")
@ApiModelProperty("任务详情id")
private Long taskDetailId;
@NotNull(message = "插件id不能为空")
@ApiModelProperty("插件id")
private Long pluginId;
@ApiModelProperty("参数")
private String param;
@Min(1)
@ApiModelProperty("行")
private int row = 1;
@Min(1)
@ApiModelProperty("列")
private int col = 1;
@Min(1)
@ApiModelProperty("跨行")
private int rowspan = 1;
@Min(1)
@ApiModelProperty("跨列")
private int colspan = 1;
}
}

11
common/src/main/java/com/ccsens/common/service/IPluginService.java

@ -0,0 +1,11 @@
package com.ccsens.common.service;
import com.ccsens.common.bean.dto.PluginDto;
public interface IPluginService {
/**
* 配置任务插件关联信息
*/
void updateTaskPlugin(PluginDto.UpdateTaskPlugin updateTaskPlugin);
}

71
common/src/main/java/com/ccsens/common/service/PluginService.java

@ -0,0 +1,71 @@
package com.ccsens.common.service;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.ccsens.common.bean.dto.PluginDto;
import com.ccsens.common.bean.po.ProTaskPlugin;
import com.ccsens.common.bean.po.ProTaskPluginExample;
import com.ccsens.common.persist.dao.ProTaskPluginDao;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.apache.bcel.classfile.Code;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
public class PluginService implements IPluginService{
@Resource
private ProTaskPluginDao proTaskPluginDao;
@Resource
private Snowflake snowflake;
@Override
public void updateTaskPlugin(PluginDto.UpdateTaskPlugin updateTaskPlugin) {
//根据任务id和插件id查找以前的关联信息
ProTaskPluginExample taskPluginExample = new ProTaskPluginExample();
taskPluginExample.createCriteria().andTaskDetailIdEqualTo(updateTaskPlugin.getTaskDetailId())
.andPluginIdEqualTo(updateTaskPlugin.getPluginId());
List<ProTaskPlugin> proTaskPlugins = proTaskPluginDao.selectByExample(taskPluginExample);
if(CollectionUtil.isNotEmpty(proTaskPlugins)){
//有则修改
proTaskPlugins.forEach(proTaskPlugin -> {
if(StrUtil.isNotEmpty(updateTaskPlugin.getParam())){
proTaskPlugin.setParam(updateTaskPlugin.getParam());
}
if(ObjectUtil.isNotNull(updateTaskPlugin.getRow()) && updateTaskPlugin.getRow() != 0){
proTaskPlugin.setPlginRow(updateTaskPlugin.getRow());
}
if(ObjectUtil.isNotNull(updateTaskPlugin.getCol()) && updateTaskPlugin.getCol() != 0){
proTaskPlugin.setPlginCol(updateTaskPlugin.getCol());
}
if(ObjectUtil.isNotNull(updateTaskPlugin.getRowspan())){
proTaskPlugin.setRowspan(updateTaskPlugin.getRowspan());
}
if(ObjectUtil.isNotNull(updateTaskPlugin.getColspan())){
proTaskPlugin.setColspan(updateTaskPlugin.getColspan());
}
});
}else {
//无则添加
ProTaskPlugin proTaskPlugin = new ProTaskPlugin();
proTaskPlugin.setId(snowflake.nextId());
proTaskPlugin.setTaskDetailId(updateTaskPlugin.getTaskDetailId());
proTaskPlugin.setPluginId(updateTaskPlugin.getPluginId());
proTaskPlugin.setPlginRow(updateTaskPlugin.getRow());
proTaskPlugin.setPlginCol(updateTaskPlugin.getCol());
proTaskPlugin.setRowspan(updateTaskPlugin.getRowspan());
proTaskPlugin.setColspan(updateTaskPlugin.getColspan());
proTaskPlugin.setParam(updateTaskPlugin.getParam());
proTaskPluginDao.insertSelective(proTaskPlugin);
}
}
}

11
util/src/main/java/com/ccsens/util/cron/NatureToDate.java

@ -20,7 +20,7 @@ public class NatureToDate {
public static void main(String[] args) throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date start = sdf.parse("2019-11-1 0:00:00");
Date start = sdf.parse("2019-09-1 0:00:00");
Date end = sdf.parse("2019-11-2 0:00:00");
// System.out.println("每周一:" + generateDates("每周一", start, end));
@ -32,6 +32,7 @@ public class NatureToDate {
// System.out.println("每周天:" + generateDates("每周天", start, end));
// System.out.println("每周日:" + generateDates("每周日", start, end));
// System.out.println("每月15号:" + generateDates("每月15号", start, end));
// System.out.println("每月:" + generateDates("每月", start, end));
// System.out.println("每月31号:" + generateDates("每月31号", start, end));
// System.out.println("每天:" + generateDates("每天", start, end));
// System.out.println("每年二月:" + generateDates("每年二月", start, end));
@ -43,7 +44,7 @@ public class NatureToDate {
// System.out.println("入职第一年:" + generateDates("入职第一年", start, end));
// System.out.println("第八天:" + generateDates("第八天", start, end));
// System.out.println("第1天:" + generateDates("第1天", start, end));
System.out.println("每40分钟:" + generateDates("每40分钟", start, end));
// System.out.println("每40分钟:" + generateDates("每40分钟", start, end));
// System.out.println("每月15号下午5点:" + generateDates("每月15号下午5点", start, end));
// log.info("周一到周五 8点-9点: " + generateDates("周一到周五 18点", start, end));
@ -258,8 +259,10 @@ public class NatureToDate {
String[] split = new String[2];
if (CronConstant.CronExpression.map.containsKey(nature)){
split[0] = nature;
split[1] = nature;
// split[0] = nature;
// split[1] = nature;
CronConstant.TaskCron taskCron = CronConstant.CronExpression.map.get(nature);
return CronConstant.getDate(taskCron,startDate, endDate);
} else if (StringUtil.isMatch(nature, NatureConstant.WEEK_EVERY)){
String[] natureArr = nature.split(NatureConstant.SPACE);

24
util/src/test/java/com/ccsens/util/OtherTest.java

@ -16,6 +16,8 @@ import java.io.*;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@Slf4j
public class OtherTest {
@ -43,6 +45,7 @@ public class OtherTest {
System.out.println(file1);
ImageUtil.scale(file1, file2, 2);
}
@Test
public void func3() {
SimpleDateFormat sdf2 = new SimpleDateFormat("MM-dd a");
@ -69,6 +72,7 @@ public class OtherTest {
System.out.println(aa + "++++" + bb);
System.out.println(aa1 + "++++" + bb1);
}
@Data
public static class AA {
private int a;
@ -82,6 +86,7 @@ public class OtherTest {
public AA() {
}
}
@Test
public void test6() {
AA a1 = new AA(1, 4);
@ -106,6 +111,7 @@ public class OtherTest {
});
}
@Test
public void test7() {
int a = 0x0A;
@ -136,6 +142,7 @@ public class OtherTest {
System.out.println(split1);
}
@Test
public void test10() {
List<StuVO> list1 = new ArrayList<>();
@ -182,6 +189,7 @@ public class OtherTest {
System.out.println(x.get(i).getName() + " " + x.get(i).getScore());
}
}
@Test
public void test11() {
System.out.println(DateUtil.today());
@ -243,6 +251,22 @@ public class OtherTest {
System.out.println(!token1.startsWith(WebConstant.HEADER_KEY_TOKEN_PREFIX));
}
@Test
public void test14() {
// String a = "123as99d";
// String r = "[0-9]";
// String[] split = a.split(r);
// for (int i = 0; i < split.length; i++) {
// System.out.println(split[i]);
// }
String a="asss123min";
String regEx="[0-9]";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(a);
System.out.println( m.replaceAll("").trim());
}
}

Loading…
Cancel
Save