1. Controller接收Date类型的数据

核心使用@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") 来将传递过来的时间字符串转化为Date类型

@RestController
@RequestMapping("res")
public class BaseFlowController extends BaseController { private static final Logger log = LoggerFactory.getLogger(BaseFlowController.class); @Resource
protected FamaOrderMapper orderMapper; @Resource
private FamaUserMapper userMapper; @GetMapping("/query-all")
@ApiException(QUERY_FLOW_FAILED)
public Result query(@RequestParam(value = "beginTime", required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date start,
@RequestParam(value = "endTime", required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date end,
@RequestParam(value = "processInstanceId", required = false) Integer processInstanceId,
@RequestParam(value = "state", required = false) ApproveStatus state,
@RequestParam(value = "applyType", required = false) ApplyType applyType) {
Map<String, Object> data = Maps.newHashMap();
try {
LoginContext context = LoginContext.getLoginContext();
String user = context == null ? "xxxxxx" : context.getPin();
QueryWrapper<FamaUser> queryWrapper = Wrappers.query();
queryWrapper.eq("erp",user);
queryWrapper.eq("role_type", RoleType.SYS_ADMIN);
FamaUser admin = userMapper.selectOne(queryWrapper);
if (Optional.ofNullable(admin).isPresent()) {
user = "";
}
List<FamaOrder> orders = orderMapper.selectByParam(user, start, end, applyType, processInstanceId, state);
List<QueryResult> queryResults = ModuleHelper.mapAll(orders, QueryResult.class);
queryResults.sort((o1, o2) -> o2.getCreateTime().compareTo(o1.getCreateTime()));
data.put(Constants.DATA_LIST, queryResults);
data.put(Constants.STATUS, SUCCESS);
data.put(Constants.MSG, SUCCESS.getMsg());
} catch (Exception e) {
log.warn("create xbp order failed", e);
data.put(Constants.STATUS, QUERY_FLOW_FAILED);
data.put(Constants.MSG, QUERY_FLOW_FAILED.getMsg());
}
return returnDataList(data);
}
}

2.Controller 接收枚举类型数据

EnvType env,直接进行映射,不需要再别的操作

@GetMapping(value = "/query-details-instance-types-cost-times")
public Result queryDetailsInstanceTypesCostTimes(
@RequestParam("env") EnvType env,
@RequestParam("instanceId") String instanceId,
@RequestParam("regionId") String regionId) {
Map<String, Object> data;
try {
RdsContext context = RdsContext.builder().setEnvType(env).setRegionId(regionId).setInstanceId(instanceId).build();
RdsRegionGetter getter = RdsRegionGetter.newInstance(context);
data = getter.queryDetailsInstanceTypesCostTimes();
} catch (Exception e) {
logger.error("query-details-instance-types", e);
data = Maps.newHashMap();
}
return returnDataList(data);
}

Spring的controller接受Date类型数据,接受枚举类型数据的更多相关文章

  1. 2基本类型数组和枚举类型——重拾Java

    2.1 标识符和关键字 2.1.1标识符 标识符:用来标志类名.变量名.方法名.类型名.数组名.文件名的有效字符序列称为标识符.简单地说,标识符就是一个名字. Java关于标识符的语法规则 标识符由字 ...

  2. Go 自定义类型来实现枚举类型限制

    今天使用iota 发现一个问题.定义别名类型的时候 调用函数报错.废话不多说,我们看一段示例(关于iota的用法这里就不介绍了,手册介绍滴比较详细): package main import &quo ...

  3. DELPHI中枚举类型数据的介绍和使用方法

    在看delphi程序的时候看到aa=(a,b,c,d);这样的东西,还以为是数组,同事说是函数,呵呵,当然这两个都不屑一击,原来这样式子是在声明并付值一个枚举类型的数据.下边写下来DELPHI中枚举类 ...

  4. C#语言基础——结构体和枚举类型

    结构体和枚举类型 一.结构体(struct) 结构类型是用户自己定义的一种类型,它是由其他类型组合而成的,可包含构造函数.常数.字段.方法.属性.索引器.运算符.事件和嵌套类型的值类型.结构在几个重要 ...

  5. Delphi的枚举类型

    参考:http://blog.csdn.net/kissdeath/article/details/2060573 Delphi程序不仅可以用于数值处理,还更广泛的用于处理非数值的数据.例如:性别.月 ...

  6. 【转】掌握java枚举类型(enum type)

    原文网址:http://iaiai.iteye.com/blog/1843553 1   背景 在java语言中还没有引入枚举类型之前,表示枚举类型的常用模式是声明一组具有int常量.之前我们通常利用 ...

  7. Java的枚举类型使用方法详解

    1.背景在java语言中还没有引入枚举类型之前,表示枚举类型的常用模式是声明一组具有int常量.之前我们通常利用public final static 方法定义的代码如下,分别用1 表示春天,2表示夏 ...

  8. 0521Day03命名规范 Data函数 可变长参数 枚举类型

    [重点] 命名规范 枚举类型 Date函数 可变长参数 pirnt,println 命名规范 1. 驼峰命名法:main,username,setUsername 用于变量.方法的命名 2. Pasc ...

  9. golang枚举类型 - iota用法拾遗

    在c#.java等高级语言中,经常会用到枚举类型来表示状态等.在golang中并没有枚举类型,如何实现枚举呢?首先从枚举的概念入手. 1.枚举类型定义 从百度百科查询解释如下:http://baike ...

  10. java 枚举类型知识点记录

    在日常开发中,我们常用接口装常量或者在类里面写静态常量,java1.5以后加入了枚举类型enum.枚举类型是由一组固定的常量组成的类型.枚举本质是int值.因为枚举类型没有可以访问的构造器,所以枚举类 ...

随机推荐

  1. POJ 3301 三分(最小覆盖正方形)

    题意:      给你n个点,让你找一个最小的正方形去覆盖所有点.思路:       想一下,如果题目中规定正方形必须和x轴平行,那么我们是不是直接找到最大的x差和最大的y差取最大就行了,但是这个题目 ...

  2. POJ2406 KMP前缀周期

    题意:       给你一个字符串,长度小于1百万,问你他最多可以拆成集合相同字符串,例如abcabcabc 可以拆成3个abc,所以输出3. 思路:       这个是比较常规的next应用,首先假 ...

  3. WideCharToMultiByte 与 MultiByteToWideChar

    先看看这篇关于Windows编码的文章:http://blog.csdn.net/shyboy_nwpu/article/details/4431668 再看看这篇关于两个函数参数和用法的说明:htt ...

  4. 【maven和jdk】报错:系统找不到指定的文件

    创建一个maven项目出错 问题描述 在idea.log出现如下错误(系统找不到指定的文件,但是不知道指定文件是什么) com.intellij.execution.process.ProcessNo ...

  5. 用scanf_s判断输入数据是否合法

    用scanf_s判断输入数据是否合法 对用户输入的整数进行求和.当用户输入任意字符时,结束程序并打印结果. A. 用户可以输入整数和浮点数 B. 用户可以在同一行输入多个数字,数字之间可以是任意一个分 ...

  6. c++学习的一些忠告(转载)

    c++学习的一些忠告 1.把C++当成一门新的语言学习(和C没啥关系!真的.): 2.看<Thinking In C++>,不要看<C++变成死相>: 3.看<The C ...

  7. pass在if中

    pass在if中是停止if成立后的操作. 如 num=1 while num<=100: if num==50: pass        #当作先占位 elif num>=60 and n ...

  8. [bug] SSM项目:Cannot load driver class: com.mysql.jdbc.Driver

    检查pom文件,mysql包部分为: <dependency> <groupId>mysql</groupId> <artifactId>mysql-c ...

  9. [bug] PyCharm远程Spark集群:Java gateway process exited before sending its port number

    原因 无法连接到集群上的java 解决 方法一: 在右上角Edit Configurations中,添加一条环境变量JAVA_HOME,值为远程机器上的java安装路径 方法二: 直接在代码里写上JA ...

  10. CentOS7启动SSH服务报:Job for ssh.service failed because the control process exited with error code

    CentOS7启动SSH服务报:Job for ssh.service failed because the control process exited with error code....... ...