提交修改
This commit is contained in:
parent
894fc29901
commit
c969b218bc
@ -1,10 +1,12 @@
|
||||
package com.lz.common.utils;
|
||||
|
||||
import javafx.scene.input.TouchEvent;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.NumberFormat;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
|
||||
/**
|
||||
@ -441,4 +443,14 @@ public class NumberUtil {
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static boolean isNumeric(String str){
|
||||
Pattern pattern = Pattern.compile("[0-9]*");
|
||||
return pattern.matcher(str).matches();
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println(isNumeric("123a"));
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,8 +4,10 @@ package com.lz.common.utils;
|
||||
import com.lz.common.cli.CliToken;
|
||||
import com.lz.common.cli.CliTokens;
|
||||
import com.lz.modules.app.utils.t.Tuple;
|
||||
import com.lz.modules.flow.model.TaskDto;
|
||||
import org.junit.Test;
|
||||
|
||||
import javax.print.attribute.standard.MediaSize;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
@ -18,7 +20,7 @@ public class TaskCommand {
|
||||
public static final String task = "task";
|
||||
public static final String record = "record";
|
||||
|
||||
public static List<String> commandCommands = new ArrayList<String>(Arrays.asList(new String[]{"add","update","list"}));
|
||||
public static List<String> commandCommands = new ArrayList<String>(Arrays.asList(new String[]{"add", "update", "list"}));
|
||||
|
||||
public static List<String> optTargets = new ArrayList<String>(Arrays.asList(new String[]{"task", "record"}));
|
||||
|
||||
@ -32,15 +34,84 @@ public class TaskCommand {
|
||||
return new Tuple(488, "命令的第二个参数必需是 task or record");
|
||||
}
|
||||
if (task.equals(tokens[1])) { //表示对 task 增删改查
|
||||
if (tokens[0].equals(list)) { //task list
|
||||
return new Tuple(1);
|
||||
}
|
||||
if (tokens[0].equals(add)) {
|
||||
//task add 1 -nrm "内容" 30 "哈哈"
|
||||
//task add 1 "内容" 30 "哈哈"
|
||||
//task add 1 "内容" 30
|
||||
//task add 1 "内容"
|
||||
//task add 1 -n "内容"
|
||||
if(tokens.length < 4 ){
|
||||
return new Tuple(488, "task add 参数不对,如 task add 1 \"今天任务\"");
|
||||
}
|
||||
if(!NumberUtil.isNumeric(tokens[2])){
|
||||
return new Tuple(488, "命令的第三个参数必需是数字");
|
||||
}
|
||||
TaskDto taskDto = new TaskDto();
|
||||
taskDto.setId(NumberUtil.objToLong(tokens[2]));
|
||||
int i = 3;
|
||||
while (i < tokens.length) {
|
||||
String notKnow = tokens[i];
|
||||
if(notKnow.startsWith("-")){
|
||||
notKnow = notKnow.substring(1);
|
||||
if (StringUtil.isEmpty(notKnow)) {
|
||||
return new Tuple(488, "task add 的-参数后面必需是 n或r或m。");
|
||||
}
|
||||
char chars[] = notKnow.toCharArray();
|
||||
if (i + chars.length > tokens.length) {
|
||||
return new Tuple(488, "参数个数不对");
|
||||
}
|
||||
for (char c : chars) {
|
||||
i++;
|
||||
String know = tokens[i];
|
||||
if (c == 'n') {
|
||||
taskDto.setName(know);
|
||||
} else if (c == 'r') {
|
||||
if(!NumberUtil.isNumeric(know)){
|
||||
return new Tuple(488, "r 参数必需是一个正整数");
|
||||
}
|
||||
taskDto.setRate(NumberUtil.objToIntDefault(know,0));
|
||||
}else if ( c == 'm'){
|
||||
taskDto.setMark(know);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
if(StringUtil.isBlank(taskDto.getName())){
|
||||
taskDto.setName(notKnow);
|
||||
}else if(taskDto.getRate() !=null){
|
||||
if(!NumberUtil.isNumeric(notKnow)){
|
||||
return new Tuple(488, "进度必需是一个正整数");
|
||||
}
|
||||
taskDto.setRate(NumberUtil.objToIntDefault( notKnow,0));
|
||||
}else if(StringUtil.isEmpty(taskDto.getMark())){
|
||||
taskDto.setMark(notKnow);
|
||||
}
|
||||
}
|
||||
i ++;
|
||||
}
|
||||
return new Tuple(2,taskDto);
|
||||
} else if (tokens[0].equals(update)) { //task update
|
||||
|
||||
} else if (record.equals(tokens[1])) { //表示对 list 增删改查
|
||||
return new Tuple(3);
|
||||
}
|
||||
} else if (record.equals(tokens[1])) { //表示对 record 增删改查
|
||||
if (tokens[0].equals(list)) { //record list
|
||||
return new Tuple(4);
|
||||
}
|
||||
|
||||
if (tokens[0].equals(add)) { //record add
|
||||
return new Tuple(5);
|
||||
} else if (tokens[0].equals(update)) { //record update
|
||||
return new Tuple(6);
|
||||
}
|
||||
}
|
||||
return new Tuple();
|
||||
}
|
||||
|
||||
|
||||
public static String [] getTokens(String command) {
|
||||
public static String[] getTokens(String command) {
|
||||
List<String> tokenList = new ArrayList<>();
|
||||
List<CliToken> tokens = CliTokens.tokenize(command);
|
||||
for (int i = 0; i < tokens.size(); i++) {
|
||||
@ -56,5 +127,9 @@ public class TaskCommand {
|
||||
for (int i = 0; i < tokens.size(); i++) {
|
||||
System.out.println(tokens.get(i).value());
|
||||
}
|
||||
System.out.println("======================");
|
||||
String dd = "-d";
|
||||
dd = dd.substring(1);
|
||||
System.out.println(dd);
|
||||
}
|
||||
}
|
||||
|
||||
11
src/main/java/com/lz/modules/flow/model/TaskDto.java
Normal file
11
src/main/java/com/lz/modules/flow/model/TaskDto.java
Normal file
@ -0,0 +1,11 @@
|
||||
package com.lz.modules.flow.model;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class TaskDto {
|
||||
private Long id ;
|
||||
private String name;
|
||||
private Integer rate ;
|
||||
private String mark;
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user