Advertisement
Hanif_Amrullah

kadarluarsaTanggal

Mar 18th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.95 KB | None | 0 0
  1. // Method ini berfungsi  Untuk mengecek tanggal dari sistem apakah sudah melebihi atau belum tanggal batas(ex: data datetime dari database)
  2.  
  3. // ini methodnya
  4. private boolean cekKadarluarsa(String batasWaktu, int y, int m, int d) {
  5.         // 2018.03.18 09:45:26
  6.         boolean result = false;
  7.         SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
  8.         sdf.setTimeZone(TimeZone.getTimeZone("Asia/Jakarta"));
  9.         SimpleDateFormat sdfLocal = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
  10.         try {
  11.             String currentTime = sdf.format(new Date());
  12.             // data tanggal batas
  13.             Integer nowY = Integer.valueOf(currentTime.substring(0,4));
  14.             Integer nowM = Integer.valueOf(currentTime.substring(5,7));
  15.             Integer nowD = Integer.valueOf(currentTime.substring(8,10));
  16.             Integer nowH = Integer.valueOf(currentTime.substring(11,13));
  17.             Integer nowm = Integer.valueOf(currentTime.substring(14,16));
  18.             Integer nowS = Integer.valueOf(currentTime.substring(17));
  19.             // data tanggal sekarang dari sistem
  20.             Integer expY = Integer.valueOf(batasWaktu.substring(0,4));
  21.             Integer expM = Integer.valueOf(batasWaktu.substring(5,7));
  22.             Integer expD = Integer.valueOf(batasWaktu.substring(8,10));
  23.             Integer expH = Integer.valueOf(batasWaktu.substring(11,13));
  24.             Integer expm = Integer.valueOf(batasWaktu.substring(14,16));
  25.             Integer expS = Integer.valueOf(batasWaktu.substring(17));
  26.  
  27.             // ini buat pengaturan kadarluarsa saat itu juga, atau satu hari/satu bulan/satu tahun setelahnya
  28.             expY = expY + y; // misal int y = 1,, maka akan kadarluarsa setahun setelahnya
  29.             expM = expM + m;
  30.             expD = expD + d;
  31.  
  32.  
  33.             if(nowY >= expY){
  34.                 if(nowM >= expM){
  35.                     if(nowD >= expD){
  36.                         if(nowH >= expH){
  37.                             if(nowm >= expm){
  38.                                 if(nowS > expS){
  39.                                     result = true;
  40.                                 }else if(nowm > expm){
  41.                                     result = true;
  42.                                 }
  43.                             }else if(nowH > expH){
  44.                                 result = true;
  45.                             }
  46.                         }else if(nowD > expD){
  47.                             result = true;
  48.                         }
  49.                     }else if(nowM > expM) {
  50.                         result = true;
  51.                     }
  52.                 }else if(nowY > expY){
  53.                     result = true;
  54.                 }
  55.             }
  56.             Log.d("DateTime", "onCreate: " + currentTime);
  57.             Log.d("DateTime", "onCreate: " + sdfLocal.parse(currentTime));
  58.         } catch (Exception e) {
  59.             e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
  60.         }
  61.         return result;
  62.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement