MyUtil.java 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. package com.chuanghai.smartschool.tuitionpayment.utils;
  2. import java.time.LocalDate;
  3. import java.time.LocalDateTime;
  4. import java.time.format.DateTimeFormatter;
  5. /**
  6. * @Author: codingliang
  7. * @Description: 自定义工具类
  8. * @Date: 2021-08-20 10:36
  9. * @Version: V1.0
  10. **/
  11. public class MyUtil {
  12. /**
  13. * 计算学生年级
  14. *
  15. * @param grade 入学年份
  16. * @return 年级,如当前是2021年,学生入学年份是2021,则返回 1
  17. */
  18. public static Integer calcStudentGrade(Integer grade) {
  19. LocalDate now = LocalDate.now();
  20. int currentYear = now.getYear();
  21. int currentMonth = now.getMonthValue();
  22. int currentGrade = currentYear - grade;
  23. if (currentGrade < 0) {
  24. return 1;
  25. } else {
  26. if (currentMonth < 7) {
  27. return currentYear - grade;
  28. } else {
  29. return currentYear - grade + 1;
  30. }
  31. }
  32. }
  33. /**
  34. * 将建行拼接的时间转换成localDateTime时间
  35. *
  36. * @param orderDate
  37. * @return
  38. */
  39. public LocalDateTime changeTime(String orderDate) {
  40. StringBuilder sb = new StringBuilder(orderDate);//构造一个StringBuilder对象
  41. sb.insert(4, "-");//在指定的位置1,插入指定的字符串
  42. sb.insert(7, "-");//在指定的位置1,插入指定的字符串
  43. sb.insert(10, " ");//在指定的位置1,插入指定的字符串
  44. sb.insert(13, ":");//在指定的位置1,插入指定的字符串
  45. sb.insert(16, ":");//在指定的位置1,插入指定的字符串
  46. orderDate = sb.toString();
  47. LocalDateTime dateTime = LocalDateTime.parse(orderDate, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
  48. return dateTime;
  49. }
  50. public static void main(String[] args) {
  51. LocalDateTime localDateTime = new MyUtil().changeTime("20220708091308");
  52. }
  53. }