LocalDateTime运算案例,以及参考网站
@Override@Transactional(rollbackFor = RuntimeException.class)public Result<Object> fixedTicketAutoRecovery() {boolean isLock = redisLockService.lock(Const.FIXED_TICKET, 20);try {if (isLock) {LocalDateTime nowTime = LocalDateTime.now();// 将固定码表当中数据全部进行查出,然后比较该固定码是否已经过期QueryWrapper<FixedCode> fixedCodeQueryWrapper = new QueryWrapper<>();fixedCodeQueryWrapper.eq("status", STATUS);fixedCodeQueryWrapper.le("valid_end_time", nowTime);List<FixedCode> fixedCodes = fixedCodeDao.selectList(fixedCodeQueryWrapper);// 对过期固定码进行过滤筛选处理if (!fixedCodes.isEmpty()) {for (FixedCode fixedCode : fixedCodes) {// 联查判断该商户的优惠券过期处理是不是可以进行过期回收(0:回收、1:不回收)ShopTicket shopTicketBean = shopTicketService.getById(fixedCode.getShopTicketId());// 根据商户ID进行查询出相关的过期回收属性Shop shopBean = shopService.getById(shopTicketBean.getShopId());if (shopBean.getTicketOverdueProcessingWay() == 0) {// 条件满足则该固定二维码已经过期Integer total = fixedCode.getTotal();Integer balance = fixedCode.getBalance();// 对固定码数据进行过期处理Integer updateTotal = total - balance;fixedCode.setTotal(updateTotal);fixedCode.setBalance(0);fixedCode.setStatus(1);fixedCodeDao.updateById(fixedCode);// 对商户优惠券进行处理ShopTicket shopTicket = shopTicketService.getById(fixedCode.getShopTicketId());Integer updateBalance = shopTicket.getBalance() + balance;shopTicket.setBalance(updateBalance);shopTicketService.updateById(shopTicket);}}}return Result.modifyReturn(true, "固定码过期处理成功");}return Result.error();} finally {boolean unlock = redisLockService.unlock(Const.FIXED_TICKET);if (!unlock) {ExceptionUtils.sendRequestInfo("2.0固定码优惠券自动回收解锁失败", new StringBuilder());}}
// 这一行代码是新增优化的代码
DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern(“yyyy-MM-dd HH:mm:ss”);
// 将两个参数从字符串转化为LocalDateTime类型
LocalDateTime parseStopStartDate = LocalDateTime.parse(param.getStopStartDate(), dateTimeFormatter1);
LocalDateTime parseStopEndtDate = LocalDateTime.parse(param.getStopEndDate(),dateTimeFormatter1);
Duration duration = Duration.between(parseStopStartDate, parseStopEndtDate);
long toDays = duration.toDays();
// 将到期时间往后推toDays天
LocalDateTime endTime = LocalDateTime.parse(param.getEndTime(), dateTimeFormatter1);
endTime.plusDays(toDays);
// 再将endTime转化为字符串然后存到param里面
String endTimeStr = dateTimeFormatter1.format(endTime);
param.setEndTime(endTimeStr);
LocalDateTime :算数操作参考
public class Main {public static void main(String[] args) {LocalDateTime dt = LocalDateTime.of(2019, 10, 26, 20, 30, 59);System.out.println(dt);// 加5天减3小时:LocalDateTime dt2 = dt.plusDays(5).minusHours(3);System.out.println(dt2); // 2019-10-31T17:30:59// 减1月:LocalDateTime dt3 = dt2.minusMonths(1);System.out.println(dt3); // 2019-09-30T17:30:59}
}
参考网站:
https://www.liaoxuefeng.com/wiki/1252599548343744/1303871087444002
LocalDateTime运算案例,以及参考网站相关推荐
- ui设计参考网站以及ui设计参考书籍
今天是ui设计参考网站以及ui设计参考书籍的一些总结推荐,ui设计其实不仅仅是学习一些软件那样简单,很多时候我们需要开发脑力以及想象力,看书是会打开思维,看网站是会打开想象.下面就是ui设计参考网站以 ...
- Hive(三、0)案例之视频网站指标
Hive(三.0)案例之视频网站常规指标@你宝爷 一.前期准备 1.0.打开集群&服务&客户端 #1)注释掉配置文件内容,这样就不用开启metastore服务啦vim $HIVE_HO ...
- 推荐60+ Flex开发参考网站
推荐60+ Flex开发参考网站 下面是一些好的Flex开发的网站或者Flex资源,如果你使用Flex开发,可以参考一下. 网上找的,可以参考参考!呵呵 新手入门参考: Adobe Flex 3 - ...
- Exchange Tech Issues 参考网站
Exchange Tech Issues 参考网站 Exchange Tech Issues: https://www.experts-exchange.com/ DAG部署: http://blog ...
- 五、案例-指令参考-freemarker指令、表达式
案例-指令参考描述:本人自己测试写了一遍,如有错的地方,懂freemarker的朋友望指点指点! 案例-指令参考 表达式 一. Assign 1.<#assign name1="北京& ...
- tomcat URL简写案例:模拟网站www.baidu.com的访问
tomcat URL简写案例:模拟网站 * 实际URL:http://www.baidu.com:8080/myweb/1.html * 实际位置:F:\mywebapps\myweb\1.html ...
- Android开发的参考书籍和参考网站
在学习Android开发的过程中,参考优秀和相关书籍和网站是十分必要的.在学习的过程中,手边一定要有一本参考书,在可以上网的环境中学习,随时有问题可以利用这些资源找到答案.所有的技术学习都必须与实践相 ...
- 教师很有用的参考网站
[转] 教师很有用的参考网站 作为教师,我们在备课时,常因为手头缺少相关的资料而发愁.昨天晚上,我接到了一位博友的求助,要求帮忙查找某学科相关内容的资料,好在我收集的网址较全,很快就找到了.我以前曾经 ...
- UI配色参考网站收集
UI配色参考网站: UI中国 behance 花瓣网 Flat UI color(扁平化UI配色网站) color hunt peise 渐变色网站: Uigradients https://uigr ...
最新文章
- 启动redis闪退/失败
- 查看函数说明_Axure函数使用说明
- 本周没有学习,估计用脑过度...
- 三个点在同一个半圆的概率_圆形水池中的四只小鸭子出现在同一个半圆中的概率是?...
- Java思维导图(1)
- 【MFC】黑马程序员MFC教程--基础篇
- win10 SVN图标不显示 已解决
- 干货——IT项目管理之软件测试
- STM32 GPIO模拟I2C的SHT20温湿度采样
- STM32中使用MMA7660重力加速度传感器
- Delphi键盘键值
- DA转换器原理及应用(报告)
- 古体字与简体字对照表_汉字繁体字(正体字)与简体字对照表
- win7连接惠普打印机p1108
- 跟我读论文系列之XGBoost
- 如何“避雷”(化解风险)
- puts()的功能。
- 三十三、C#中的接口
- 计算机网络协议第一章,网络协议基础知识
- Xperia Z2参数及白皮书