Advertisement
kidto1412

utility

Jun 30th, 2024
967
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // import $ from "jquery";
  2. import Crypto from './crypto'
  3. import { Notify } from 'quasar'
  4. import { Router } from './../router/index'
  5. import { useAuthStore } from 'src/store/auth'
  6. class Service {
  7.   constructor() {}
  8.  
  9.   ReadSession(key: string) {
  10.     let read: any = localStorage.getItem(key)
  11.     if (read == 'null') {
  12.       return null
  13.     } else {
  14.       let dencrypt = Crypto.dencrytion(read)
  15.       if (dencrypt == '' || dencrypt == undefined) {
  16.         return null
  17.       } else {
  18.         let JsonToData = JSON.parse(dencrypt)
  19.         // console.log(JsonToData)
  20.         return JsonToData
  21.       }
  22.     }
  23.   }
  24.  
  25.   SaveSession(key: string, value: any) {
  26.     let ToJson = JSON.stringify(value)
  27.     let encrypt = Crypto.encryption(ToJson)
  28.     //return
  29.     localStorage.setItem(key, encrypt === null || '' ? '' : encrypt)
  30.     return localStorage.getItem(key)
  31.   }
  32.  
  33.   ResponseCode(data: any) {
  34.     let result: boolean = false
  35.     switch (data.data.code) {
  36.       case '00':
  37.         result = true
  38.         break
  39.       case '98':
  40.         result = true
  41.         break
  42.       case '01':
  43.         result = false
  44.         break
  45.       case '88':
  46.         result = false
  47.         break
  48.       case '99':
  49.         result = false
  50.         break
  51.       case '70':
  52.         result = false
  53.         // setTimeout(() => {
  54.         //     AuthService.logout();
  55.         // }, 3000);
  56.         break
  57.       case 'SE':
  58.         result = false
  59.         // setTimeout(() => {
  60.         //     AuthService.logout();
  61.         // }, 3000);
  62.         break
  63.       default:
  64.         result = false
  65.         break
  66.     }
  67.     return result
  68.   }
  69.  
  70.   Errorhandling(e: any) {
  71.     window.console.log(e.response.data)
  72.     const authStore = useAuthStore()
  73.     if (e.response.data.responseCode == '99') {
  74.       window.console.log(authStore)
  75.       this.NotifyError(e.response.data.message)
  76.       // authStore.logout()
  77.       return this.PagesRouter('/')
  78.     }
  79.   }
  80.  
  81.   NotifySuccess(message: any) {
  82.     return Notify.create({
  83.       position: 'top-right',
  84.       color: 'positive',
  85.       icon: 'check_circle',
  86.       message: message,
  87.       timeout: 5000,
  88.     })
  89.   }
  90.   NotifyInfo(message: any) {
  91.     return Notify.create({
  92.       position: 'top-right',
  93.       color: 'info',
  94.       icon: 'info',
  95.       message: message,
  96.       timeout: 5000,
  97.     })
  98.   }
  99.   NotifyWarning(message: any) {
  100.     return Notify.create({
  101.       position: 'top-right',
  102.       color: 'warning',
  103.       icon: 'warning',
  104.       message: message,
  105.       timeout: 5000,
  106.     })
  107.   }
  108.   NotifyError(message: any) {
  109.     return Notify.create({
  110.       position: 'top-right',
  111.       color: 'negative',
  112.       icon: 'error',
  113.       message: message,
  114.       timeout: 5000,
  115.     })
  116.   }
  117.  
  118.   toPage(router: any, pages: any) {
  119.     return router.push(pages)
  120.   }
  121.  
  122.   PagesRouter(pages: string) {
  123.     return Router.push(pages)
  124.   }
  125.   static phoneRules() {
  126.     return (val: any) => {
  127.       const cleanedPhoneNumber = val.replace(/-/g, '')
  128.       if (cleanedPhoneNumber.length == 0) {
  129.         return 'Mobile phone number is required'
  130.       }
  131.  
  132.       if (cleanedPhoneNumber.startsWith('62')) {
  133.         if (cleanedPhoneNumber.length < 11) {
  134.           // console.log(cleanedPhoneNumber, "phone");
  135.           return 'Phone number must be at least 11 characters long'
  136.         } else {
  137.           return true
  138.         }
  139.       } else {
  140.         if (cleanedPhoneNumber.length < 10) {
  141.           return 'Phone number must be at least 10 characters long'
  142.         } else {
  143.           return true
  144.         }
  145.       }
  146.       // return true;
  147.     }
  148.   }
  149.   static convertPhoneNumber(phone: any) {
  150.     const cleanedNumber = phone.replace(/\D/g, '')
  151.     if (cleanedNumber.startsWith('62')) {
  152.       return (phone = '0' + cleanedNumber.slice(2))
  153.     } else {
  154.       return cleanedNumber
  155.     }
  156.   }
  157. }
  158.  
  159. export default new Service()
  160.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement