{"version":3,"sources":["components/Loading/LoadingSpinner.js","config/BankHubLog.js","assets/images/right_banner.png","pages/payment/misa/ErrorPage.js","assets/images/multi-language-UK.svg","layout/Header.js","assets/images/multi-language-VN.png","HttpOnly.js","config/BankhubUrl.js","assets/images/shb-logo.svg","assets/images/Logo-SHB-EN.png","Http.js","assets/images/ket-noi-that-bai.png","components/BounceLoading.js","layout/Footer.js","layout/MainLayout.js","pages/forgetPass/ForgetPass.js","pages/forgetPass/VerifyForm.js","pages/forgetPass/ForgetPassLayout.js","assets/images/Header.jpg","pages/prepareLetter/html-todocx.js","pages/prepareLetter/prepare-letter.js","pages/prepareLetter/form-letter.js","assets/images/shb-logo-letter.svg","pages/prepareLetter/leter-layout.js","pages/guarantes/GuarantesLayout.js","layout/BankHubLayout.js","layout/Auth.js","layout/AuthDMG.js","routes/index.js","locale/index.js","App.js","index.js","components/common/languages.js","services/api.js","config/business.js"],"names":["LoadingSpinner","defaultOptions","loop","autoplay","animationData","rendererSettings","preserveAspectRatio","className","options","height","width","style","position","top","left","transform","BankHubLog","ErrorPage","ojCallback","useEffect","setTimeout","src","errorImg","alt","onClick","urlError","failureCb","replace","window","location","Header","props","intl","useIntl","onChangeLanguage","language","Row","headerClassName","Col","xs","sm","md","lg","xl","xxl","paddingTop","paddingBottom","Navbar","expand","Container","Brand","href","Image","languages","vi","Logo_img","Logo_img_EN","Toggle","Collapse","id","Nav","Link","target","locale","en","UKImg","axios","interceptors","request","use","headers","Cookies","get","withCredentials","baseURL","process","error","Promise","reject","response","status","set","path","expires","secure","sameSite","data","code","msg","additionalInfo","document","getElementById","classList","remove","add","innerHTML","BankHubUrl","login","authorize","checkPartner","captcha","batchTranInfo","tranInfo","callBackUrl","transactionAccount","authenType","userInfo","verifyDigital","genOTP","verifyOTP","batchListTranInfo","BounceLoading","justifySelf","alignSelf","margin","injectIntl","textAlign","color","MainLayout","children","otpData","setotpData","message","forgetPass","useNavigate","useLocation","useState","show","setshow","uIntl","setloading","loading","onSubmit","e","a","validateInfo","showMessage","content","parse","formatMessage","createOTP","then","STATUS","resData","countDown","Math","floor","Date","now","otpTimeout","obj","check","verifyForm","catch","err","console","log","custId","trim","role","email","length","userName","phone","handleTextChange","name","preventDefault","_value","value","paddingLeft","Card","Body","Title","size","Form","Group","Label","fontWeight","Control","onChange","placeholder","Select","handleSelectChange","ROLE","map","item","i","name_EN","hidden","disabled","assign","rightBannerSvg","Modal","tile","otpErr","setotpErr","title","setmessage","success","setsuccess","otpTimeoutStr","padStart","state","validateInput","otp","offProgress","textDecoration","ForgetPassLayout","otpInfo","otpExpired","encryptedOTP","reqId","updateOtpData","ExportHTMLToWord","saveAs","htmlDocx","asBlob","orientation","font","serialNo","refNo","back","useSearchParams","letterData","serialNumber","time","setTime","setSaved","setData","ckeditor","createElement","defer","head","appendChild","ckeditorRender","getBankGuarenteeLetter","res","tmp","body","inputHandler","prepareData","resetTimeout","saveValue","newID","clearTimeout","onSave","letterForm","createBankGuarenteeLetter","qrCodeUrl","pdfExportComponent","React","useRef","qrCode","ReactDOMServer","level","svgToPng","v","canvas","querySelector","ctx","getContext","Canvg","fromString","start","imgUrl","toDataURL","stop","exportToWord","stringContent","wordData","header","footer","match","imageUrl","Fragment","autoClose","background","Dropdown","variant","Menu","Item","exportPdf","current","save","print","PDFExport","scale","paperSize","ref","fileName","blImageHeader","form","setForm","rel","prepareLetter","setPrepareLetter","errorSerialNo","setErrorSerialNo","errorFefNo","setErrorFefNo","setShow","setLoading","handleClose","handleInput","toUpperCase","InputGroup","Text","FormControl","maxLength","onKeyPress","event","test","key","Button","validateData","letterGuarNo","prepareGuaranteeLetterApi","countLetter","toast","onHide","centered","Footer","LetterLayout","GuarantesLayout","BankHubLayout","Auth","isError","setIsError","searchParams","undefined","Http","params","clientId","reCall","LandingPage","lazy","SignUpAccount","ViewPdf","Guarantes","MisaLogin","ConfirmPayment","ConfirmDMG","MainRoutes","fallback","marginLeft","marginTop","basename","exact","element","AuthDMG","App","localStorage","setLanguage","messages","languagePack","ReactDOM","render","setCertInformation","sdkkd","caserial","http","post","getBusinessInforByOLN","urlStr","bodyData","JSON","stringify","getItem","getServicePackageInfo","limitPackCode","getCustomerInformation","cifNo","listUsersByEmailOrUsername","listUsersByUsernames","listUsersByUsername","createInternetBankingCorpOnlineV2","companyName","listUser","caSerial","custAccts","branchCodes","user","maker","approver","approveAuth","checkerAuth","makerAuth","businessAuth","useSMSBanking","smsBiendongsodu","smsNhacNo","emailList","isModifyUser","attachment","attachmentName","sms","description","address","smsData","feeCollectingAcc","_countUserName","u","username","join","createInternetBankingCorpOnlineAssist","Error","users","chuDN","find","isChuDN","newUser","fullname","sdt","roleCode","authentype","push","splitCustAccs","split","accountFee","custAccounts","cusA","cusAccount","smsAccountFee","splitBranchs","branchCode","s","allAccount","accounts","filter","debtNoti","balanceNoti","externalData","d","month","getMonth","toString","datestring","getFullYear","getDate","reqMsgWSO2","dataWSO2","reqMsgCreateOpp","dataCreateOpp","reqMsgECM","dataECM","createFirstApproachLog","createSignupStepLog","stepName","stepRouter","tenDoanhNghiep","getCaptchaBankGuarentee","sId","getBankGuarentee","inquiryBankGuaranteeWithoutCaptcha","validateBankGuarentee","methodAuth","approve","checker","TransLevel","USER_ROLE","VIEWER","MAKER","CHECKER","APPROVER"],"mappings":"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","file":"static/js/main.7579999f.chunk.js","sourcesContent":["import React from \"react\";\r\nimport { SpinnerDiamond } from 'spinners-react';\r\nimport Lottie from 'react-lottie';\r\nimport animationData from '../../assets/images/loading.json';\r\n\r\nconst LoadingSpinner = () => {\r\n\r\n const defaultOptions = {\r\n loop: true,\r\n autoplay: true,\r\n animationData: animationData,\r\n rendererSettings: {\r\n preserveAspectRatio: \"xMidYMid slice\"\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default LoadingSpinner\r\n","const BankHubLog = {\r\n 'BH001-000001': \"Có lỗi trong quá trình tìm kiếm thông tin kết nối đối tác (Code #BH001-000001)\",\r\n 'BH001-000002': \"Có lỗi trong quá trình xác nhận mã kết nối (Code #BH001-000002)\",\r\n 'BH001-000003': \"Mã xác nhận kết nối không được công nhận (Code #BH001-000003)\",\r\n 'BH001-000004': \"Không tìm thấy người dùng hoặc chưa đăng ký kết nối cho người dùng (Code #BH001-000004)\",\r\n 'BH001-000005': \"Mã truy cập hết hiệu lực (Code #BH001-000005)\",\r\n 'BH001-000006': \"Chưa được cấp quyền kết nối đối tác (Code #BH001-000006)\",\r\n 'BH001-000008': \"Kết nối không đảm bảo an toàn (Code #BH001-000008)\",\r\n 'BH001-000024': \"Có lỗi trong quá trình truyền dữ liệu kết nối.
Vui lòng liên hệ bộ phận hỗ trợ (Code #BH001-000024)\",\r\n 'BH100-000020': \"Mã số thuế không khớp với mã số thuế của Doanh nghiệp trên phần mềm kế toán (Code #BH100-000020)\",\r\n 'BH100-000021': 'Chưa đăng ký kết nối cho mã số thuế này.
Quý khách vui lòng khởi tạo kết nối trên hệ thống Internet Banking của SHB tại menu \"Tiện ích\" (Code #BH100-000021)',\r\n 'BH100-000023': \"Thời hạn hiệu lực phiên đăng nhập đã kết thúc. Vui lòng đăng nhập lại (Code #BH100-000023)\",\r\n 'BH002-000007': \"Có lỗi trong quá trình tìm kiếm mã khóa kết nối đối tác (Code #BH002-000007)\",\r\n 'BH002-000008': \"Có lỗi trong quá trình kết nối đối tác (Code #BH002-000008)\",\r\n 'BH002-000009': \"Có lỗi liên quan đến mã hóa kết nối (Code #BH002-000009)\",\r\n 'BH002-000010': \"Có lỗi trong quá trình khởi tạo mã hóa kết nối (Code #BH002-000010)\",\r\n 'BH002-000011': \"Có lỗi trong quá trình xác nhận mã hóa đối tác (Code #BH002-000011)\",\r\n 'BH002-000012': \"Có lỗi trong quá trình giải mã kết nối (Code #BH002-000012)\",\r\n 'BH002-000013': \"Có lỗi trong quá trình mã hóa kết nối (Code #BH002-000013)\",\r\n 'BH002-000016': \"Quý khách không có quyền truy cập chức năng này.
Vui lòng liên hệ bộ phận hỗ trợ (Code #BH002-000016)\",\r\n 'BH003-000014': \"Có lỗi trong quá trình mã hóa/ giải mã dữ liệu kết nối (Code #BH003-000014)\",\r\n 'BH003-000015': \"Sai mã nguồn trong quá trình giải mã dữ liệu kết nối (Code #BH003-000015)\",\r\n 'BH100-000017': \"Thông tin đăng nhập chưa chính xác. Vui lòng thử lại (Code #BH100-000017)\",\r\n 'BH100-000018': \"User đang Hệ thống tạm khóa trong vòng 10 phút do Quý khách nhập sai thông tin đăng nhập nhiều lần.
Vui lòng quay lại sau (Code #BH100-000018)\",\r\n 'BH100-000019': \"User đang tạm thời bị khóa do Quý khách nhập sai thông tin đăng nhập nhiều lần. Vui lòng thử lại sau (Code #BH100-000019)\",\r\n 'BH100-000024': \"User không hoạt động. Vui lòng liên hệ bộ phận hỗ trợ. (Code #BH100-000024)\",\r\n 'BH001-000025': \"Thời hạn kết nối dịch vụ đã hết hiệu lực.
Vui lòng liên hệ Hotline *6688 để được hỗ trợ. (Code #BH001-000025)\",\r\n 'BH001-000026': \"Đối tác đã dừng kết nối dịch vụ.
Vui lòng liên hệ Hotline *6688 để được hỗ trợ. (Code #BH001-000026)\",\r\n 'BH004-000100': \"Khôi tìm thấy tệp tin dữ liệu kết nối (Code #BH004-000100)\",\r\n 'BH101-000201': \"Số tiền giao dịch vượt quá giới hạn cho phép.
Với hình thức chuyển tiền nhanh, hạn mức tối đa là 499,999,999 đồng/ lần (Code #BH101-000201)\",\r\n 'BH101-000202': \"Thông tin tài khoản thụ hưởng không hợp lệ. Quý khách vui lòng kiểm tra lại (Code #BH101-000202)\",\r\n 'BH101-000203': \"Lỗi link xác nhận thông tin giao dịch. Vui lòng thử lại sau (Code #BH101-000203)\",\r\n 'BH101-000204': \"Lỗi truy xuất danh sách tài khoản. Vui lòng thử lại sau (Code #BH101-000204)\",\r\n 'BH101-000205': \"Người dùng không có quyền truy vấn thông tin tài khoản hoặc tài khoản không hoạt động (Code #BH101-000205)\",\r\n 'BH101-000206': \"Số tiền giao dịch phải nhập số nguyên dương (Code #BH101-000206)\",\r\n 'BH101-000207': \"Lỗi truy xuất danh sách loại giao dịch (Code #BH101-000207)\",\r\n 'BH101-000208': \"Lỗi truy xuất hạn mức chuyển tiền của Người dùng (Code #BH101-000208)\",\r\n 'BH101-000209': \"Tổng số tiền giao dịch vượt quá hạn mức chuyển tiền đăng ký/ ngày.
Hạn mức chuyển tiền còn lại là VARIABLE_VALUE đồng (Code #BH101-000209)\",\r\n 'BH101-000210': \"Tổng số tiền giao dịch vượt quá hạn mức chuyển tiền đăng ký/ lần.
Hạn mức chuyển tiền tối đa trên lần là VARIABLE_VALUE đồng (Code #BH101-000210)\",\r\n 'BH101-000211': \"Tổng số tiền giao dịch vượt quá số dư khả dụng của tài khoản (số tiền đã bao gồm phí nếu có) (Code #BH101-000211)\",\r\n 'BH101-000212': \"Loại giao dịch không hợp lệ (Code #BH101-000212)\",\r\n 'BH101-000213': \"Có lỗi trong quá trình lưu thông tin giao dịch (Code #BH101-000213)\",\r\n 'BH101-000214': \"Lỗi nhập thông tin (Code #BH101-000214)\",\r\n 'BH101-000215': \"Không thể truy xuất danh sách tài khoản của user (Code #BH101-000215)\",\r\n 'BH101-000216': \"Tài khoản không hợp lệ hoặc không thuộc quyền user (Code #BH101-000216)\",\r\n 'BH101-000217': \"Có lỗi trong quá trình truy xuất dữ liệu sổ phụ.
Vui lòng thử lại sau (Code #BH101-000217)\",\r\n 'BH101-000218': \"Thời gian chọn xuất dữ liệu sổ phụ không hợp lệ.
Vui lòng kiểm tra lại (Code #BH101-000218)\",\r\n 'BH101-000219': \"Khoảng gian tìm kiếm vượt quá 03 tháng. Vui lòng kiểm tra lại (Code #BH101-000219)\",\r\n 'BH102-000221': \"Thông tin xác thực không hợp lệ (Code #BH102-000221)\",\r\n 'BH102-000222': \"Lỗi giao dịch không hợp lệ (Code #BH102-000222)\",\r\n 'BH103-000223': \"Không tìm thấy thông tin giao dịch (Code #BH103-000223)\",\r\n 'BH001-000224': \"Không tìm thấy thông tin giao dịch (Code #BH101-000224)\",\r\n 'BH101-000225': \"Smart OTP của username không hợp lệ (Code #BH101-000225)\",\r\n 'BH101-000226': \"Có lỗi trong quá trình sinh mã giao dịch (Code #BH101-000226)\",\r\n 'BH006-000227': \"Có lỗi trong quá trình chuyển đổi dữ liệu kết nối (Code #BH006-000227)\",\r\n 'BH101-000228': \"Xác thực không thành công do sai mã OTP.
Vui lòng thử lại (Code #BH101-000228)\",\r\n 'BH101-000229': \"Lỗi trong quá trình tạo giao dịch chờ duyệt (Code #BH101-000229)\",\r\n 'BH101-000230': \"Dịch vụ chưa được đăng ký (Code #BH101-000230)\",\r\n 'BH101-000300': \"Lỗi liên quan đến phí giao dịch (Code #BH101-000300)\",\r\n 'BH101-000231': \"Có lỗi trong quá trình truy xuất dữ liệu lịch sử giao dịch. Vui lòng thử lại sau (Code #BH101-000231)\",\r\n 'BH101-000232': \"Có lỗi trong quá trình truyền dữ liệu kết nối . Vui lòng liên hệ bộ phận hỗ trợ (Code #BH101-000232)\",\r\n 'BH101-000233': \"Không tìm thấy thông tin chi tiết giao dịch (Code #BH101-000233)\",\r\n 'BH101-000234': \"Có lỗi trong qúa trình truy xuất thông tin chi tiết giao dịch. Vui lòng thử lại sau (Code #BH101-000234)\",\r\n 'BH101-000235': \"Có lỗi trong quá trình truy xuất trạng thái giao dịch (Code #BH101-000235)\",\r\n 'BH101-000236': \"Có lỗi trong quá trình truy xuất dữ liệu danh sách chi tiết giao dịch chi lương (Code #BH101-000236)\",\r\n 'BH101-000237': \"Không thể tạo sms otp (Code #BH101-000237)\",\r\n 'BH101-000238': \"Không thể gửi sms otp (Code #BH101-000238)\",\r\n 'BH101-000239': \"Captcha không hợp lệ (Code #BH101-000239)\",\r\n 'BH101-000240': \"Không thể tạo mã captcha (Code #BH101-000240)\",\r\n 'BH101-000241': \"Không thể lưu mã captcha (Code #BH101-000241)\",\r\n 'BH101-000243': \"Thông tin đăng nhập chưa chính xác. Vui lòng thử lại (Code #BH100-000243)\",\r\n 'BH101-000301': \"Lỗi không truy xuất được phí giao dịch (Code #BH101-000301)\",\r\n 'BH101-000302': \"Lỗi không truy xuất được danh sách miễn phí giao dịch (Code #BH101-000302)\",\r\n 'BH101-000400': \"Vui lòng không để trống nội dung chuyển tiền (Code #BH101-000400)\",\r\n 'BH101-000401': \"Nội dung chuyển tiền vượt quá 200 ký tự hoặc đang chứa ký tự đặc biệt. Vui lòng thực hiện lại (Code #BH101-000401)\",\r\n 'BH101-000402': \"Chưa có thông tin đối tượng chịu phí. Vui lòng thực hiện lại (Code #BH101-000402)\",\r\n 'BH101-000403': \"Vui lòng kích hoạt Smart OTP trước khi thực hiện xác thực giao dịch (Code #BH101-000403)\",\r\n 'BH101-000404': \"Smart OTP bị mất đồng bộ, vui lòng đồng bộ lại trước khi thực hiện xác thực giao dịch (Code #BH101-000404)\",\r\n 'BH101-000406': \"Lỗi sinh mã giao dịch do Smart OTP bị khóa 24 giờ, vui lòng thực hiện lại sau (Code #BH101-000406)\",\r\n 'BH101-000405': \"Chưa đăng ký phương thức xác thực cho user.
vui lòng liên hệ bộ phận hỗ trợ của SHB (Code #BH101-000405)\",\r\n 'BH102-000500': \"Chưa cài Plugin.
Quý khách chưa cài Plugin hỗ trợ chữ ký số trên trình duyệt, quý khách vui lòng tải Plugin và cài đặt để đi tiếp.(Code #BH102-000500)\",\r\n 'BH102-000501': \"Trình duyệt chưa tương thích (Code #BH102-000501)\",\r\n 'BH102-000502': \"Quý khách chưa cắm hoặc chưa kích hoạt USB Token chữ ký số, vui lòng kiểm tra lại. (Code #BH102-000502)\",\r\n 'BH102-000503': \"Có lỗi trong quá trình kiểm tra Token chữ ký số. Vui lòng thử lại sau.(Code #BH102-000503)\",\r\n 'BH102-000504': \"Không lấy được thông tin chứng thư số.
Có lỗi khi kiểm tra chứng thư số, vui lòng liên hệ với đơn vị cung cấp.(Code #BH102-000504)\",\r\n 'BH005-999999': \"Có lỗi trong quá trình xử lý kết nối. Vui lòng thử lại sau (Code #BH005-999999)\",\r\n}\r\n\r\nexport default BankHubLog\r\n","export default __webpack_public_path__ + \"static/media/right_banner.df0dfd47.png\";","import React, {Fragment, useEffect} from \"react\";\r\nimport errorImg from \"../../../assets/images/ket-noi-that-bai.png\"\r\n\r\nconst ErrorPage = ({\r\n ojCallback\r\n}) => {\r\n\r\n const handleClose = () => {\r\n if(ojCallback) {\r\n var urlError = ojCallback.failureCb\r\n urlError = urlError.replace('%7Bcode%7D', 'CANCEL')\r\n urlError = urlError.replace('%7Bmessage%7D', 'CANCEL')\r\n window.location.replace(urlError)\r\n }\r\n\r\n }\r\n\r\n useEffect(() => {\r\n if(ojCallback) {\r\n setTimeout(() => {\r\n\r\n }, 5000)\r\n }\r\n })\r\n\r\n return (\r\n
\r\n
\r\n \"Gửi\r\n

Nằm ngoài phạm vi kết nối

\r\n
\r\n {ojCallback && }\r\n
\r\n )\r\n}\r\n\r\nexport default ErrorPage","export default __webpack_public_path__ + \"static/media/multi-language-UK.9e719d27.svg\";","import React from \"react\";\r\nimport { Row, Col, Image, Container, Navbar, Nav} from 'react-bootstrap';\r\nimport * as Icon from 'react-bootstrap-icons';\r\nimport Logo_img from \"../assets/images/shb-logo.svg\";\r\nimport Logo_img_EN from \"../assets/images/Logo-SHB-EN.png\";\r\nimport UKImg from \"../assets/images/multi-language-UK.svg\";\r\nimport VNImg from \"../assets/images/multi-language-VN.png\";\r\nimport languages from \"../components/common/languages\";\r\nimport { useIntl, FormattedMessage } from 'react-intl';\r\n\r\nconst Header = (props) => {\r\n const intl = useIntl();\r\n const { onChangeLanguage, language } = props;\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\nexport default Header;","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAC9ElEQVRIS6VWz08TURD+drdA7QIlSAKEIMgJE42c9GIEEzGKYAInDiQmXPTgn6HXeiEGL4SDJp40AoFEDop/gYkmkpDwo9BQFakgVKDbXed7262ULmvRbzPpezNvvpk3b95uNUeAAKRGnmF3+j32PnxGNrmhdEZ9HcId7TBvd6LmwRA0pfXHsQFWbwzjx+wLGIgKQYVImWh11wgbDjIi+8hiCzXXB9E8O5azFaIowM7UOyz33ckRR0SC8oME4ZNWgVonX6Oy91rO4sJLSWEzNo6lvpsIoUEM5l/JCa7hWvos9d3C5uPxnMVFfgc7U2/VgjK0lETsB+4lgxWcnZzJ7yQf4JNWrbJgPseBBERQAo6cj4Ukzjvbaq7YVruHczUPJjeihhIvkB/IQS42iZpzBx+1iJSmOTAzW57Tw1E1/j62JTTByWSwigtOGjr73M0+uO5szOiAqYTjIJCLnOTWd6fnZFqRM/0Bs7Ck+SgZEc4rusJK3AxdG8WvZOTkBdUWGq44VjKpYnqggxHR0fKqHghpsH/a0Kt0lLeFlP1g0crrYDlY7v8CO22rzD04EjjUKE0zr7XLKRQaCQZhKdpeNiLcEwHWLUjaLnipGw3szfzCYv+6nAa9i/01LeCk6EDHhYE1rA99BU4dIpBxcugbFvrXfMkPQzca6uTHdmdHQMeQlM5KSPaGkERETBEZZ9YsZTue3Aa59XDHOdmMt/disEy196qBOgOp0W2knsgFknHt/erAbiInuXWz56pM9nPqQqg6ymPerUL8cgKJhxtIPNpA/FJC6Wjz6yCCnGZPZ/BFo3O4vRwHcQtWOisFcY8sK7mHIgbKz4SwN3/g65e/aFTUdA+KKq2Mh0FHErAFPXKCY+r8yAlykZM40cuuFPi+7IjWyQnZVlxt71/hliauuDzkA1T2dqEp9lQWrKgsTgr60LcpNqq4PORL5OH/PpkTBeREUQAPJ/roy4E2vynxo38UqZHn8lacK/zbIjc0fLGUvy3Ab8ynaQPlJGCcAAAAAElFTkSuQmCC\"","import axios from 'axios';\r\nimport Cookies from \"js-cookie\";\r\nimport BankHubLog from \"./config/BankHubLog\";\r\n\r\naxios.interceptors.request.use(request => {\r\n request.headers = {\r\n 'content-type': 'application/json',\r\n 'X-XSRF-TOKEN': Cookies.get('token') || ''\r\n }\r\n\r\n request.withCredentials = true\r\n request.baseURL = request.baseURL || process.env.REACT_APP_BASE_URL;\r\n return request;\r\n}, error => {\r\n return Promise.reject(error);\r\n});\r\n\r\naxios.interceptors.response.use(\r\n response => {\r\n if(response.status === 200) {\r\n if(response.headers['x-csrf-token']) {\r\n Cookies.set('token', response.headers['x-csrf-token'], {path: '/', expires: 12000000, secure: true, sameSite: 'none'})\r\n }\r\n if(response.data && response.data.code && BankHubLog[response.data.code]) {\r\n var msg = BankHubLog[response.data.code]\r\n if(response.data.additionalInfo) {\r\n msg = msg.replace(\"VARIABLE_VALUE\", response.data.additionalInfo)\r\n }\r\n document.getElementById(\"popup-alert-bankhub\")\r\n .classList.remove(\"hide\")\r\n document.getElementById(\"popup-alert-bankhub\")\r\n .classList.add('show')\r\n document.getElementById(\"popup-alert-bankhub-text\").innerHTML = msg\r\n }\r\n }\r\n return response\r\n },\r\n error => {\r\n // if (error.response.status === 401) {\r\n // console.log('err')\r\n // }\r\n if(error.response && error.response.data && error.response.data.code) {\r\n var msg = BankHubLog[error.response.data.code]\r\n document.getElementById(\"popup-alert-bankhub\")\r\n .classList.remove(\"hide\")\r\n document.getElementById(\"popup-alert-bankhub\")\r\n .classList.add('show')\r\n document.getElementById(\"popup-alert-bankhub-text\").innerHTML = msg\r\n }\r\n return Promise.reject(error);\r\n },\r\n);\r\n\r\nexport default axios;\r\n","export const BankHubUrl = {\r\n login: '/bankhub/auth/login',\r\n authorize: '/bankhub/auth/authorize-code',\r\n checkPartner: '/bankhub/auth/check-partner',\r\n captcha: '/bankhub/auth/gen-captcha',\r\n batchTranInfo: \"/bankhub/transaction/batch-transaction-info\",\r\n tranInfo: \"/bankhub/transaction/info\",\r\n callBackUrl: \"/bankhub/transaction/callback-url\",\r\n transactionAccount: '/bankhub/transaction/account',\r\n authenType: '/bankhub/user/authen-type',\r\n userInfo: '/bankhub/user/info',\r\n verifyDigital: '/bankhub/transaction/verify/digital-signature',\r\n genOTP: '/bankhub/transaction/gen-otp',\r\n verifyOTP: '/bankhub/transaction/verify/otp',\r\n batchListTranInfo: '/bankhub/transaction/list-transaction-info'\r\n}","export default __webpack_public_path__ + \"static/media/shb-logo.c20d6d03.svg\";","export default __webpack_public_path__ + \"static/media/Logo-SHB-EN.6e0ffa70.png\";","import axios from 'axios';\r\n\r\naxios.interceptors.request.use(request => {\r\n // var ciphertext = CryptoJS.AES.encrypt(JSON.stringify('blrREmxgNZjjj3g3ejVOmw=='), process.env.REACT_APP_KEY_ENCRYP_DECRYPT).toString();\r\n // console.log(ciphertext);\r\n\r\n //var bytes = CryptoJS.AES.decrypt(process.env.REACT_APP_PASSWORD, process.env.REACT_APP_KEY_ENCRYP_DECRYPT);\r\n // var decryptedData = JSON.parse(bytes.toString(CryptoJS.enc.Utf8));\r\n\r\n request.baseURL = request.baseURL || process.env.REACT_APP_BASE_URL;\r\n // request.auth = {\r\n // username: process.env.REACT_APP_USERNAME,=\r\n // password: decryptedData\r\n // };\r\n return request;\r\n }, error => {\r\n return Promise.reject(error);\r\n});\r\n\r\naxios.interceptors.response.use(\r\n response => response,\r\n error => {\r\n // if (error.response.status === 401) {\r\n // console.log('err')\r\n // }\r\n return Promise.reject(error);\r\n },\r\n);\r\n\r\nexport default axios;\r\n","export default __webpack_public_path__ + \"static/media/ket-noi-that-bai.387c0ff4.png\";","import React from 'react';\r\n\r\nconst BounceLoading = ({ style }) => (\r\n \r\n
\r\n
\r\n
\r\n);\r\n\r\nexport default BounceLoading;\r\n","import React from \"react\";\r\nimport {Row, Col, Container} from 'react-bootstrap';\r\nimport { FormattedMessage, injectIntl } from \"react-intl\";\r\n\r\nconst Footer = (props) => {\r\n const { intl } = props;\r\n return (\r\n
\r\n \r\n \r\n \r\n  \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\nexport default injectIntl(Footer);","import React from \"react\";\r\nimport Header from \"./Header\";\r\nimport Footer from \"./Footer\";\r\n\r\nconst MainLayout = ({children, onChangeLanguage, language}) => {\r\n const headerClassName = \"site-header\";\r\n return (\r\n
\r\n
\r\n
\r\n {children}\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default MainLayout\r\n","import React, { useEffect, useState } from \"react\";\r\nimport {\r\n Card,\r\n Col,\r\n Container,\r\n Form,\r\n Image,\r\n Modal,\r\n Row,\r\n} from \"react-bootstrap\";\r\nimport { FormattedMessage, injectIntl, useIntl } from \"react-intl\";\r\nimport rightBannerSvg from \"../../assets/images/right_banner.png\";\r\nimport parse from \"html-react-parser\";\r\nimport { useNavigate, useLocation } from \"react-router\";\r\nimport { ROLE } from \"../../config/business\";\r\nimport languages from \"../../components/common/languages\";\r\nimport { createOTP } from \"../../services/api\";\r\n\r\nfunction ForgetPass(props) {\r\n const { intl, otpData, setotpData } = props;\r\n const shbLink = process.env.REACT_APP_SHB_SIGN_IN_LINK;\r\n let data = otpData.forgetPass;\r\n let message = otpData.message;\r\n \r\n\r\n const navigate = useNavigate();\r\n const location = useLocation();\r\n const [show, setshow] = useState(false);\r\n const uIntl = useIntl();\r\n\r\n const setloading = (loading) => {\r\n setotpData({...otpData, loading})\r\n }\r\n\r\n const setcheck = (check) => {\r\n setotpData({...otpData, check})\r\n }\r\n\r\n const updateOtpData = (obj)=> {\r\n setotpData({...obj})\r\n }\r\n const onSubmit = async (e) => {\r\n //call api validate & create otp\r\n if(!validateInfo()){\r\n showMessage({content: parse(intl.formatMessage({id: \"forgetPass.error\"}))})\r\n // showMessage();\r\n return;\r\n }\r\n setloading(true);\r\n createOTP(otpData.forgetPass).then(response => {\r\n setloading(false);\r\n if(response.data && response.data.content){\r\n if(response.data.content.STATUS == 'SUCCESS'){\r\n const resData = response.data && response.data.content && response.data.content.data;\r\n const countDown = Math.floor(Date.now() / 1000) + resData.otpTimeout;\r\n \r\n updateOtpData({...otpData,\r\n check: true,\r\n verifyForm: {\r\n ...resData, countDown\r\n }});\r\n // setcheck(true);\r\n }else{\r\n showMessage({content: parse(intl.formatMessage({id: \"forgetPass.error\"}))})\r\n // showMessage();\r\n }\r\n }else{\r\n showMessage({content: parse(intl.formatMessage({id: \"forgetPass.error\"}))})\r\n // showMessage();\r\n }\r\n }).catch(err => {\r\n setloading(false);\r\n showMessage({content: parse(intl.formatMessage({id: \"forgetPass.error\"}))})\r\n // showMessage();\r\n })\r\n\r\n\r\n };\r\n\r\n const onBack = () => {\r\n // navigate(\"/\")\r\n window.location.assign(shbLink);\r\n }\r\n\r\n const validateInfo = () => {\r\n console.log('otpData', otpData)\r\n if(!otpData.forgetPass.custId || !otpData.forgetPass.custId.trim()){\r\n return false\r\n }\r\n\r\n if(!otpData.forgetPass.role || !otpData.forgetPass.role.trim()){\r\n return false;\r\n }\r\n\r\n if(!otpData.forgetPass.email || !otpData.forgetPass.email.trim()){\r\n return false;\r\n }\r\n\r\n if(otpData.forgetPass.custId.length <= 1 || otpData.forgetPass.custId.length > 50){\r\n return false;\r\n }\r\n\r\n if(otpData.forgetPass.role === 'VIEWER_ALIAS'){\r\n if(!otpData.forgetPass.userName || !otpData.forgetPass.userName.trim() || otpData.forgetPass.userName.length > 250){\r\n return false;\r\n }\r\n }else if(!otpData.forgetPass.phone || !otpData.forgetPass.phone.trim()){\r\n return false;\r\n }\r\n \r\n return true;\r\n }\r\n\r\n\r\n const handleTextChange = (name, e) => {\r\n e.preventDefault();\r\n let _value = e.target.value;\r\n if(_value){\r\n _value = _value.trim();\r\n }\r\n setotpData({...otpData, forgetPass: {...otpData.forgetPass, [name]: _value}});\r\n };\r\n\r\n const handleSelectChange = (name, e) => {\r\n console.log('otpData', otpData);\r\n if(name === 'role'){\r\n setotpData({...otpData, forgetPass: {...otpData.forgetPass, [name]: e.target.value, userName: ''}})\r\n }else{\r\n setotpData({...otpData, forgetPass: {...otpData.forgetPass, [name]: e.target.value}})\r\n }\r\n };\r\n\r\n const showMessage = (msg) => {\r\n setotpData({...otpData, message: msg})\r\n setshow(true)\r\n }\r\n\r\n const closeDialog = () => {\r\n setshow(false);\r\n setotpData({...otpData, message: {tile: '', content: ''}})\r\n }\r\n\r\n useEffect(() => {\r\n setTimeout(() => {console.log(otpData)}, 2000)\r\n }, [otpData])\r\n \r\n\r\n return (\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleTextChange(\"custId\", e)}\r\n // size=\"lg\"\r\n className=\"border-dark \"\r\n placeholder={parse(\r\n intl.formatMessage({\r\n id: \"forgetPass.masodkkd_placeholder\",\r\n })\r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n {handleSelectChange(\"role\", e)}}\r\n value={otpData.forgetPass.role}\r\n >\r\n {ROLE.map((item, i) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleTextChange(\"email\", e)}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n

\r\n {message.content}\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default injectIntl(ForgetPass);\r\n","import React, { useEffect, useState } from \"react\";\r\nimport {\r\n Card,\r\n Col,\r\n Container,\r\n Form,\r\n Image,\r\n Modal,\r\n Row,\r\n} from \"react-bootstrap\";\r\nimport { FormattedMessage, injectIntl } from \"react-intl\";\r\nimport { useLocation, useNavigate } from \"react-router\";\r\nimport rightBannerSvg from \"../../assets/images/right_banner.png\";\r\nimport LoadingSpinner from \"../../components/Loading/LoadingSpinner\";\r\nimport { createOTP, verifyOTP } from \"../../services/api\";\r\nimport parse from \"html-react-parser\";\r\n\r\nfunction VerifyForm(props) {\r\n const { intl, otpData, setotpData } = props;\r\n let data = otpData.verifyForm;\r\n const [show, setshow] = useState(false);\r\n const [otpErr, setotpErr] = useState('')\r\n const shbLink = process.env.REACT_APP_SHB_SIGN_IN_LINK;\r\n\r\n const [message, setmessage] = useState({\r\n title: \"\",\r\n content: \"\"\r\n })\r\n const location = useLocation()\r\n const [success, setsuccess] = useState(false)\r\n\r\n const handleTextChange = (name, e) => {\r\n let value = e.target.value;\r\n if(value){\r\n value = value.trim();\r\n setotpErr('');\r\n }\r\n setotpData({...otpData, verifyForm: {...data, [name]: value}})\r\n }\r\n\r\n const navigate = useNavigate();\r\n\r\n //call api to verify otp and generate password, send it through email\r\n const onVerify = (e) => {\r\n if(!validateInput()){\r\n setotpErr(parse(intl.formatMessage({id: \"verifyForm.fail\"})))\r\n return;\r\n }\r\n\r\n setotpData({...otpData, loading: true})\r\n verifyOTP({...data, ...otpData.forgetPass}).then(response => {\r\n offProgress()\r\n if(response.data && response.data.content && response.data.content.STATUS === 'SUCCESS'){\r\n showMessage({title: parse(intl.formatMessage({id: \"verifyForm.success.title\"})),content: parse(intl.formatMessage({id: \"verifyForm.success\"}))})\r\n setsuccess(true);\r\n setotpErr('');\r\n // updateOtpData({...otpData, check: false});\r\n // navigate(process.env.REACT_APP_SHB_SIGN_IN_LINK)\r\n }else{\r\n setotpErr(parse(intl.formatMessage({id: \"verifyForm.fail\"})))\r\n }\r\n }).catch(err => {\r\n offProgress()\r\n setotpErr(parse(intl.formatMessage({id: \"verifyForm.fail\"})))\r\n })\r\n }\r\n\r\n const closeDialog = () => {\r\n setshow(false);\r\n if(success){\r\n window.location.assign(shbLink);\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if(data.otpTimeout){\r\n const otpTimeout = data.otpTimeout;\r\n const otpTimeoutStr = `${Math.floor(otpTimeout/60)}`.padStart(2,0) + ':' + `${otpTimeout%60}`.padStart(2,0);\r\n // setdata({...data,...location.state,...location.state.data, ...location.state.otpInfo,\r\n // otpTimeoutStr})\r\n setotpData({...otpData, verifyForm: {...otpData.verifyForm, otpTimeout, otpTimeoutStr}})\r\n }\r\n }, [location.state && location.state && !data.otpTimeout])\r\n\r\n\r\n\r\n useEffect(() => {\r\n setTimeout(() => {console.log(otpData)}, 2000)\r\n }, [otpData])\r\n\r\n\r\n useEffect(() => {\r\n // const {otpTimeout, countDown} = data\r\n // if (otpTimeout <= 0 || countDown <= 0) {\r\n // return;\r\n // }\r\n\r\n setTimeout(() => {\r\n const otpTimeout = data.countDown - Math.floor(Date.now() / 1000);\r\n let otpTimeoutStr = \"\";\r\n if(data.otpTimeoutStr === \"00:00\"){\r\n return;\r\n }\r\n if(otpTimeout <= 0){\r\n otpTimeoutStr = \"00:00\"\r\n }else{\r\n otpTimeoutStr = `${Math.floor(otpTimeout/60)}`.padStart(2,0) + ':' + `${otpTimeout%60}`.padStart(2,0);\r\n }\r\n\r\n setotpData(otpData => ({...otpData, verifyForm: {...otpData.verifyForm, otpTimeout, otpTimeoutStr}}))\r\n }, 1000);\r\n }, [otpData]);\r\n\r\n const validateInput = () => {\r\n if(!data || !data.otp || data.otp === ''){\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n const onBack = () => {\r\n setotpData({...otpData, check: false})\r\n // navigate(\"/quen-mat-khau\")\r\n }\r\n\r\n const showProgress = () => {\r\n setotpData({...otpData, loading: true});\r\n }\r\n\r\n const offProgress = () => {\r\n setotpData({...otpData, loading: false});\r\n }\r\n\r\n const showMessage = (msg) => {\r\n setmessage(msg);\r\n setshow(true);\r\n }\r\n\r\n const updateOtpData = (obj)=> {\r\n setotpData({...obj})\r\n }\r\n\r\n const resendOTP = () => {\r\n const {custId , role , email , phone, userName } = otpData.forgetPass;\r\n showProgress();\r\n setotpErr('');\r\n createOTP({custId , role , email , phone, userName }).then(response => {\r\n offProgress();\r\n if(response.data && response.data.content){\r\n if(response.data.content.STATUS == 'SUCCESS'){\r\n const resData = response.data && response.data.content && response.data.content.data;\r\n const countDown = Math.floor(Date.now() / 1000) + resData.otpTimeout;\r\n updateOtpData({...otpData, verifyForm: {...data, ...resData, countDown, otpTimeoutStr: ''}})\r\n }else{\r\n showMessage({content: parse(intl.formatMessage({id: \"forgetPass.error\"}))})\r\n }\r\n }else{\r\n showMessage({content: parse(intl.formatMessage({id: \"forgetPass.error\"}))})\r\n }\r\n }).catch(err => {\r\n offProgress();\r\n showMessage({content: parse(intl.formatMessage({id: \"forgetPass.error\"}))})\r\n })\r\n }\r\n\r\n return (\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleTextChange('otp', e)}/>\r\n

{otpErr}

\r\n
\r\n\r\n \r\n

\r\n {data.otpTimeoutStr} \r\n \r\n \r\n

\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {message && message.title &&\r\n
\r\n

{message.title}

\r\n
\r\n }\r\n
\r\n

\r\n {message.content}\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n {data.loading && }\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default injectIntl(VerifyForm);\r\n","import React, { useEffect, useState } from \"react\";\r\nimport LoadingSpinner from \"../../components/Loading/LoadingSpinner\";\r\nimport { ROLE } from \"../../config/business\";\r\nimport ForgetPass from \"./ForgetPass\";\r\nimport VerifyForm from \"./VerifyForm\";\r\n\r\nfunction ForgetPassLayout(props) {\r\n\r\n const [otpData, setotpData] = useState({\r\n forgetPass: {\r\n custId: \"\",\r\n role: ROLE[0].value,\r\n email: \"\",\r\n phone: \"\",\r\n otpInfo: {\r\n otpTimeout: 0,\r\n otpExpired: \"\",\r\n encryptedOTP: \"\"\r\n }\r\n },\r\n verifyForm: {\r\n reqId: \"\",\r\n otp: \"\",\r\n otpTimeout: 0,\r\n encryptedOTP: \"\",\r\n otpExpired: 0,\r\n otpTimeout: 0,\r\n otpTimeoutStr: \"\"\r\n },\r\n check: false,\r\n loading: false,\r\n message: {\r\n title: \"\",\r\n content: \"\"\r\n }\r\n });\r\n\r\n const updateOtpData = async (obj) => {\r\n setotpData({ \r\n ...otpData,\r\n verifyForm : {\r\n otp: obj.verifyForm.otp,\r\n otpTimeout: obj.verifyForm.otpTimeout,\r\n encryptedOTP: obj.verifyForm.encryptedOTP,\r\n otpExpired: obj.verifyForm.otpExpired\r\n }\r\n })\r\n }\r\n\r\n return
\r\n {otpData.check? : }\r\n {otpData.loading && }\r\n
;\r\n}\r\n\r\nexport default ForgetPassLayout;\r\n","export default __webpack_public_path__ + \"static/media/Header.7a1ece33.jpg\";","import htmlDocx from 'html-docx-js/dist/html-docx'\r\nimport saveAs from \"file-saver\";\r\nconst ExportHTMLToWord = (data, title) => {\r\n saveAs(htmlDocx.asBlob(data, { orientation: 'portrait ', font: 'Times New Roman' }), `${title}.docx`)\r\n}\r\n\r\nexport default ExportHTMLToWord;","import React, { useState } from \"react\";\r\nimport { Col, Container, Dropdown, Row } from \"react-bootstrap\";\r\n// import { CKEditor } from '@ckeditor/ckeditor5-react/dist/ckeditor';\r\n// import DecoupledEditor from '@ckeditor/ckeditor5-build-decoupled-document';\r\nimport './print.scss';\r\nimport { injectIntl } from \"react-intl\";\r\nimport * as ReactDOMServer from 'react-dom/server';\r\nimport { PDFExport } from \"@progress/kendo-react-pdf\";\r\nimport QRCode from \"react-qr-code\";\r\nimport { Canvg } from 'canvg';\r\nimport { Link, useNavigate, useSearchParams } from \"react-router-dom\";\r\nimport { useEffect } from \"react\";\r\nimport { getBankGuarenteeLetter, createBankGuarenteeLetter } from '../../services/api';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport blImageHeader from '../../assets/images/Header.jpg';\r\nimport ExportHTMLToWord from \"./html-todocx\";\r\nconst PrepareLetter = (props) => {\r\n const { serialNo, refNo, back } = props;\r\n let [searchParams, setSearchParams] = useSearchParams();\r\n\r\n const letterData = {\r\n serialNumber: 'BL' + serialNo,\r\n content: ''\r\n }\r\n const [time, setTime] = useState(null);\r\n const [saved, setSaved] = useState(false);\r\n\r\n const navigate = useNavigate();\r\n const [data, setData] = useState('');\r\n useEffect(() => {\r\n let ckeditor = document.createElement(\"script\");\r\n ckeditor.src = \"ckeditor4/custom.js\";\r\n ckeditor.defer = true;\r\n document.head.appendChild(ckeditor);\r\n let ckeditorRender = document.createElement(\"script\");\r\n getBankGuarenteeLetter(letterData).then(res => {\r\n if (res && res.data && res.data.content && res.data.content.content) {\r\n window.tmp = res.data.content.content;\r\n ckeditorRender = document.createElement(\"script\");\r\n ckeditorRender.innerHTML = \"CKEDITOR.instances['editor'].setData(window.tmp)\";\r\n document.body.appendChild(ckeditorRender);\r\n }\r\n });\r\n\r\n }, []);\r\n const [editor, setEditor] = useState('');\r\n const toolbar = ['fontfamily', 'fontsize', '|', \"bold\", \"italic\", \"underline\", '|', 'alignment:left', 'alignment:center', 'alignment:right', 'alignment:justify', '|',\r\n \"indent\", \"outdent\", '|', \"numberedList\", \"bulletedList\", '|', 'undo', 'redo'];\r\n const fontSizeOption = [\r\n {\r\n title: '10pt',\r\n model: '10pt'\r\n },\r\n {\r\n title: '11pt',\r\n model: '11pt'\r\n },\r\n {\r\n title: '12pt',\r\n model: '12pt'\r\n },\r\n {\r\n title: '13pt',\r\n model: '13pt'\r\n },\r\n {\r\n title: '14pt',\r\n model: '14pt'\r\n },\r\n {\r\n title: '15pt',\r\n model: '15pt'\r\n },\r\n\r\n ];\r\n const fontFamilyOption = [\r\n 'Times New Roman, Times, serif',\r\n 'Tahoma, Geneva, sans-serif',\r\n 'Arial, Helvetica, sans-serif',\r\n 'Calibri, sans-serif'\r\n ]\r\n\r\n window.inputHandler = (prepareData) => {\r\n setData(prepareData)\r\n setTime(resetTimeout(time, setTimeout(saveValue(prepareData), 1200)))\r\n }\r\n const resetTimeout = (id, newID) => {\r\n clearTimeout(id)\r\n return newID\r\n }\r\n const saveValue = (prepareData) => {\r\n setSaved(true);\r\n setTimeout(() => { setSaved(false); onSave(prepareData); }, 1500)\r\n };\r\n const onSave = (prepareData) => {\r\n if (prepareData != '') {\r\n const letterForm = {\r\n serialNumber: 'BL' + serialNo,\r\n content: prepareData\r\n }\r\n createBankGuarenteeLetter(letterForm).then(res => {\r\n console.log('saved');\r\n })\r\n }\r\n }\r\n const print = () => {\r\n let ckeditor = document.createElement(\"script\");\r\n ckeditor.innerHTML = \"var letterContent = CKEDITOR.instances['editor'].getData();\" +\r\n \"$('#print-letter .content').html(letterContent);\" +\r\n \"window.print();\";\r\n document.body.appendChild(ckeditor);\r\n }\r\n\r\n const exportPdf = () => {\r\n let ckeditor = document.createElement(\"script\");\r\n ckeditor.innerHTML = \"var letterContent = CKEDITOR.instances['editor'].getData();\" +\r\n \"$('.pdf-content').html(letterContent);\";\r\n document.body.appendChild(ckeditor);\r\n }\r\n\r\n const qrCodeUrl = process.env.REACT_APP_KHDN_BASE_URL + 'tracuubaolanh?serialNo=BL' + serialNo;\r\n const pdfExportComponent = React.useRef(null);\r\n const qrCode = ReactDOMServer.renderToString();\r\n const svgToPng = async () => {\r\n let v = null;\r\n const canvas = document.querySelector('canvas');\r\n const ctx = canvas.getContext('2d');\r\n v = await Canvg.fromString(ctx, qrCode);\r\n v.start();\r\n const imgUrl = canvas.toDataURL(\"img/png\");\r\n v.stop(); return imgUrl;\r\n };\r\n const exportToWord = async () => {\r\n // let rulerStyle = document.getElementById(\"ruler-style\");\r\n // rulerStyle = JSON.parse(rulerStyle.value);\r\n let stringContent = window.wordData();\r\n // let bodyStyle = \"margin-top:1cm;font-size:10pt;margin-left:\" + rulerStyle.left + \"cm;\" + \"margin-right:\" + (21 - rulerStyle.right) + \"cm\";\r\n var header = \"\" +\r\n \"\" + refNo + \"\";\r\n var footer = \"\";\r\n var qrSourc = '';\r\n if (!qrCode.match(/^]+xmlns=\"http\\:\\/\\/www\\.w3\\.org\\/2000\\/svg\"/)) {\r\n qrSourc = qrCode.replace(/^]+\"http\\:\\/\\/www\\.w3\\.org\\/1999\\/xlink\"/)) {\r\n qrSourc = qrCode.replace(/^Số tham chiếu: ' + refNo + '
' + stringContent + '
' +\r\n '' +\r\n '' +\r\n '' +\r\n ' ' +\r\n '' +\r\n '
' + '
BL' + serialNo + '' + '
' +\r\n '

' +\r\n '' +\r\n 'Để kiểm tra tính xác thực của Thư bảo lãnh, bên nhận bảo lãnh thực hiện:' +\r\n ' ' +\r\n '

' +\r\n 'Truy cập https://ibanking.shb.com.vn/dn/tracuubaolanh' +\r\n '  hoặc sử dụng Smartphone quét mã QR trên thư bảo lãnh này hoặc liên hệ tổng đài: *6688 / E-mail: baolanh@shb.com.vn' +\r\n '
' + footer;\r\n ExportHTMLToWord(sourceHTML, refNo);\r\n }\r\n\r\n return (\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n BL{serialNo}\r\n Số tham chiếu: {refNo}\r\n
\r\n
{data}
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n BL{serialNo}\r\n
\r\n \r\n \r\n
\r\n

\r\n \r\n Để kiểm tra tính xác thực của Thư bảo lãnh, bên nhận bảo lãnh thực hiện:\r\n \r\n

\r\n Truy cập https://ibanking.shb.com.vn/dn/tracuubaolanh\r\n   hoặc sử dụng Smartphone quét mã QR trên thư bảo lãnh này hoặc liên hệ tổng đài: *6688 / E-mail: baolanh@shb.com.vn\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n TẢI VỀ\r\n \r\n \r\n {\r\n exportPdf();\r\n if (pdfExportComponent.current) {\r\n pdfExportComponent.current.save();\r\n }\r\n }}>TẢI VỀ PDF \r\n { exportToWord() }} > TẢI VỀ WORD \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
BL{serialNo}
\r\n
Số tham chiếu: {refNo}
\r\n
\r\n
\r\n
\r\n \r\n BL{serialNo}\r\n
\r\n
\r\n

\r\n \r\n Để kiểm tra tính xác thực của Thư bảo lãnh, bên nhận bảo lãnh thực hiện:\r\n \r\n

\r\n Truy cập https://ibanking.shb.com.vn/dn/tracuubaolanh\r\n   hoặc sử dụng Smartphone quét mã QR trên thư bảo lãnh này hoặc liên hệ tổng đài: *6688 / E-mail: baolanh@shb.com.vn\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
Số tham chiếu: {refNo}
\r\n
\r\n
\r\n
\r\n \r\n BL{serialNo}\r\n
\r\n
\r\n

\r\n \r\n Để kiểm tra tính xác thực của Thư bảo lãnh, bên nhận bảo lãnh thực hiện:\r\n \r\n

\r\n Truy cập https://ibanking.shb.com.vn/dn/tracuubaolanh\r\n  hoặc sử dụng Smartphone quét mã QR trên thư bảo lãnh này hoặc liên hệ tổng đài: *6688 / E-mail: baolanh@shb.com.vn\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default injectIntl(PrepareLetter);","import React, { useState, useEffect } from \"react\";\r\nimport { Modal } from \"react-bootstrap\";\r\nimport { Col, Row, Form, InputGroup, Container, Button, FormControl } from \"react-bootstrap\";\r\nimport { prepareGuaranteeLetterApi } from '../../services/api';\r\nimport { injectIntl } from \"react-intl\";\r\nimport './style.scss';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport LoadingSpinner from \"../../components/Loading/LoadingSpinner\";\r\nimport PrepareLetter from \"./prepare-letter\";\r\n\r\nconst FormLetter = () => {\r\n const [form, setForm] = useState({\r\n serialNo: '',\r\n refNo: ''\r\n });\r\n useEffect(() => {\r\n let ckeditor = document.createElement(\"script\");\r\n ckeditor.src = \"ckeditor4/ckeditor.js\";\r\n document.head.appendChild(ckeditor);\r\n \r\n ckeditor = document.createElement(\"script\");\r\n ckeditor.src = \"ckeditor4/assets/js/jquery.min.js\";\r\n document.head.appendChild(ckeditor);\r\n \r\n ckeditor = document.createElement(\"script\");\r\n ckeditor.src = \"ckeditor4/assets/js/nouislider.min.js\";\r\n document.head.appendChild(ckeditor);\r\n\r\n ckeditor = document.createElement(\"link\");\r\n ckeditor.href = \"ckeditor4/assets/css/nouislider.css\";\r\n ckeditor.rel = \"stylesheet\";\r\n document.head.appendChild(ckeditor);\r\n\r\n\r\n\r\n document.title = \"Soạn thư bảo lãnh\";\r\n }, []);\r\n const [prepareLetter, setPrepareLetter] = useState(false);\r\n const [errorSerialNo, setErrorSerialNo] = useState('');\r\n const [errorFefNo, setErrorFefNo] = useState('');\r\n const [errorData, setErrorData] = useState(false);\r\n const [show, setShow] = useState(false);\r\n const [loading, setLoading] = useState(false);\r\n const handleClose = () => setShow(false);\r\n const back = () => {\r\n handleClose();\r\n setErrorSerialNo('');\r\n setErrorFefNo('');\r\n setPrepareLetter(false);\r\n }\r\n const handleInput = (e) => {\r\n const name = e.target.name;\r\n let value = null;\r\n if (name == 'refNo' || name == 'serialNo') {\r\n value = e.target.value.replace(/[^a-zA-Z0-9]/g, '');\r\n }\r\n setForm({ ...form, [name]: value })\r\n }\r\n const validateData = () => {\r\n setErrorSerialNo('');\r\n setErrorFefNo('');\r\n let status = true;\r\n if (form.serialNo == '') {\r\n setErrorSerialNo(\"Vui lòng nhập số phôi\");\r\n status = false;\r\n } else if (form.serialNo.length > 50 || (!/[0-9]/.test(form.serialNo))) {\r\n setErrorSerialNo(\"Vui lòng nhập đúng định dạng\");\r\n status = false;\r\n }\r\n if (form.refNo == '') {\r\n setErrorFefNo(\"Vui lòng nhập số tham chiếu\");\r\n status = false;\r\n } else if (form.refNo.length > 50 || (!/^[a-zA-Z0-9]*$/.test(form.refNo))) {\r\n setErrorFefNo(\"Vui lòng nhập đúng định dạng\");\r\n status = false;\r\n }\r\n return status;\r\n }\r\n const getBankGuarentee = () => {\r\n const status = validateData();\r\n if (status) {\r\n const data = {\r\n serialNo: 'BL' + form.serialNo,\r\n letterGuarNo: form.refNo.toUpperCase()\r\n }\r\n setLoading(true);\r\n prepareGuaranteeLetterApi(data).then(res => {\r\n if (res.status == 200 && res.data) {\r\n setLoading(false);\r\n if (res.data.content.countLetter == 0) {\r\n setShow(true);\r\n } else {\r\n setPrepareLetter(true);\r\n }\r\n } else {\r\n setLoading(false);\r\n toast.error(\"Đã có lỗi xảy ra.Xin vui lòng thử lại!\", 'Lỗi');\r\n }\r\n })\r\n }\r\n\r\n }\r\n const keepContinue = () => {\r\n if (form.serialNo != '' && form.refNo != '') {\r\n setPrepareLetter(true);\r\n }\r\n }\r\n\r\n return (\r\n \r\n {\r\n !prepareLetter ?\r\n \r\n \r\n {loading && }\r\n \r\n \r\n
\r\n
NHẬP LIỆU THÔNG TIN
\r\n \r\n Số phôi/serial number\r\n \r\n BL\r\n {\r\n if (!/[a-zA-Z0-9]/.test(event.key)) {\r\n event.preventDefault();\r\n }\r\n }} value={form.serialNo} onChange={(e) => handleInput(e)} />\r\n \r\n {errorSerialNo != 'true' ? errorSerialNo : ''}\r\n \r\n \r\n Số tham chiếu của cam kết bảo lãnh/ Reference Number\r\n {\r\n if (!/^[a-zA-Z0-9]*$/.test(event.key)) {\r\n event.preventDefault();\r\n }\r\n }}\r\n maxLength={50} onChange={(e) => handleInput(e)} />\r\n {errorFefNo != 'true' ? errorFefNo : ''}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n Thông tin bạn nhập chưa khớp trên hệ thống Core,
bạn có muốn tiếp tục hay không ?\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n : \r\n }\r\n
\r\n );\r\n}\r\nexport default injectIntl(FormLetter);","export default __webpack_public_path__ + \"static/media/shb-logo-letter.2ecb5fcc.svg\";","import React from \"react\";\r\nimport Logo_img from \"../../assets/images/shb-logo-letter.svg\";\r\nimport { Image } from \"react-bootstrap\";\r\n\r\nconst LetterLayout = ({ children }) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n {children}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default LetterLayout","import React from \"react\";\r\nimport Footer from \"../../layout/Footer\";\r\nimport Header from \"../../layout/Header\";\r\n\r\n\r\nconst GuarantesLayout = ({children, onChangeLanguage, language}) => {\r\n const headerClassName = \"site-header\";\r\n return (\r\n
\r\n
\r\n
\r\n {children}\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default GuarantesLayout\r\n","import React from \"react\";\r\n\r\n\r\nconst BankHubLayout = ({children, onChangeLanguage, language}) => {\r\n\r\n const handleClose = () => {\r\n document.getElementById(\"popup-alert-bankhub\")\r\n .classList.add(\"hide\")\r\n document.getElementById(\"popup-alert-bankhub\")\r\n .classList.remove('show')\r\n }\r\n\r\n return (\r\n
\r\n {children}\r\n
\r\n
\r\n
\r\n
\r\n
Có lỗi trong quá trình truy xuất dữ liệu sổ phụ.
Vui lòng thử lại sau (Code #BH102-000217)
\r\n \r\n
\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default BankHubLayout\r\n","import React, {Fragment, useEffect, useState} from \"react\";\r\nimport Cookies from 'js-cookie';\r\nimport {useSearchParams} from \"react-router-dom\";\r\nimport ErrorPage from \"../pages/payment/misa/ErrorPage\";\r\nimport Http from \"../HttpOnly\";\r\nimport {BankHubUrl} from \"../config/BankhubUrl\";\r\n\r\nconst Auth = ({children}) => {\r\n const [isError, setIsError] = useState(false)\r\n let [searchParams, setSearchParams] = useSearchParams();\r\n useEffect(() => {\r\n if(!Cookies.get('isLogin') || Cookies.get('isLogin') === undefined) {\r\n setIsError(true)\r\n Http.get(BankHubUrl.callBackUrl, {\r\n params: {\r\n clientId: searchParams.get(\"client_id\")\r\n },\r\n baseURL: process.env.REACT_APP_SHB_LINK\r\n }).then(reCall => {\r\n const objCallBack = reCall.data.data\r\n var urlError = objCallBack.failureCb\r\n urlError = urlError.replace('%7Bcode%7D', 'CANCEL')\r\n urlError = urlError.replace('%7Bmessage%7D', 'CANCEL')\r\n setTimeout(() => {\r\n window.location.replace(urlError)\r\n }, 5000)\r\n\r\n })\r\n }\r\n }, [])\r\n\r\n return (\r\n \r\n { isError ? : children}\r\n \r\n )\r\n}\r\n\r\nexport default Auth\r\n","import React, {Fragment, useEffect, useState} from \"react\";\r\nimport Cookies from 'js-cookie';\r\nimport {useSearchParams} from \"react-router-dom\";\r\nimport ErrorPage from \"../pages/payment/misa/ErrorPage\";\r\nimport Http from \"../HttpOnly\";\r\nimport {BankHubUrl} from \"../config/BankhubUrl\";\r\nimport BankHubLog from \"../config/BankHubLog\";\r\n\r\nconst Auth = ({children}) => {\r\n const [isError, setIsError] = useState(false)\r\n let [searchParams, setSearchParams] = useSearchParams();\r\n // useEffect(() => {\r\n // if(!Cookies.get('Authorization') || Cookies.get('Authorization') === undefined) {\r\n // window.postMessage({ type: 'eventCallBackVerifyTransaction', result: {\r\n // code: 'BH001-000005',\r\n // msg: BankHubLog['BH001-000005']\r\n // } }, process.env.REACT_APP_KHDN_DMG_URL);\r\n // setIsError(true)\r\n // }\r\n // }, [])\r\n\r\n return (\r\n \r\n { isError ? : children}\r\n \r\n )\r\n}\r\n\r\nexport default Auth\r\n","import React, { lazy, Suspense } from \"react\";\r\nimport BounceLoading from \"../components/BounceLoading\";\r\nimport { BrowserRouter, Route, Routes } from \"react-router-dom\";\r\n\r\nimport MainLayout from \"../layout/MainLayout\";\r\nimport ForgetPassLayout from \"../pages/forgetPass/ForgetPassLayout\";\r\nimport FormLetter from \"../pages/prepareLetter/form-letter\";\r\nimport LetterLayout from \"../pages/prepareLetter/leter-layout\";\r\nimport GuarantesLayout from \"../pages/guarantes/GuarantesLayout\";\r\nimport BankHubLayout from \"../layout/BankHubLayout\";\r\nimport Auth from \"../layout/Auth\";\r\nimport AuthDMG from \"../layout/AuthDMG\";\r\n\r\n\r\nconst LandingPage = lazy(() => import('../pages/landingPage/Home'))\r\nconst SignUpAccount = lazy(() => import('../pages/signup/SignupAccount'))\r\nconst ViewPdf = lazy(() => import('../pages/ViewPdf'))\r\nconst Guarantes = lazy(() => import('../pages/guarantes/index'))\r\nconst MisaLogin = lazy(() => import('../pages/signup/misa/LoginMisa'))\r\nconst ConfirmPayment = lazy(() => import('../pages/payment/misa/Confirm'))\r\nconst ConfirmDMG = lazy(() => import('../pages/payment/dmg/Confirm'))\r\nconst MainRoutes = (props) => {\r\n\r\n return (\r\n \r\n }\r\n >\r\n \r\n \r\n }\r\n />\r\n\r\n \r\n \r\n \r\n } />\r\n \r\n \r\n \r\n } />\r\n \r\n \r\n \r\n } />\r\n \r\n \r\n \r\n } />\r\n\r\n \r\n \r\n \r\n } />\r\n\r\n \r\n \r\n \r\n } />\r\n \r\n \r\n \r\n \r\n \r\n } />\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n } />\r\n \r\n \r\n \r\n )\r\n};\r\n\r\nexport default MainRoutes\r\n","import en from './en.json';\r\nimport vi from './vi.json';\r\n\r\nexport default { vi, en };\r\n","import React,{useState} from 'react';\r\nimport \"./assets/scss/app.scss\"\r\nimport MainRoutes from \"./routes\";\r\nimport languagePack from \"./locale\";\r\nimport {IntlProvider} from \"react-intl\";\r\nimport languages from './components/common/languages';\r\n\r\n\r\n\r\nconst App = () => {\r\n const [language, setLanguage] = useState(localStorage.locale === languages.en ? languages.en : languages.vi);\r\n\r\n const onChangeLanguage = (value) => {\r\n localStorage.locale = value;\r\n setLanguage(value);\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default App;\r\n","import 'react-app-polyfill/ie11';\r\nimport 'react-app-polyfill/stable';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport App from './App';\r\n\r\n\r\n\r\nReactDOM.render(\r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n\r\n","const languages = {\r\n en: \"en\",\r\n vi: \"vi\"\r\n}\r\nexport default languages;","import React from \"react\";\r\nimport http from '../Http';\r\nimport { USER_ROLE } from \"../config/business\";\r\nimport { flushSync } from \"react-dom\";\r\nimport { config } from \"process\";\r\n\r\nconst setCertInformation = (sdkkd = '', caserial = '') => {\r\n const data = {\r\n \"pram_1\": sdkkd,\r\n \"pram_2\": caserial\r\n };\r\n return http.post('ApiGatewaySetInformation', data); \r\n}\r\nconst getBusinessInforByOLN = (sdkkd = '', caserial = '') => {\r\n const data = {\r\n \"custId\": sdkkd\r\n };\r\n let urlStr = \"getCorpDetailByOLN\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caserial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\nconst getServicePackageInfo = (sdkkd = '', caserial = '') => {\r\n const data = {\r\n limitPackCode: \"VN_LIMITPKG_EGOLD50\"\r\n };\r\n let urlStr = \"getServicePackageInfo\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caserial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\nconst getCustomerInformation = (cifNo = '',sdkkd = '', caserial = '') => {\r\n const data = {\r\n \"cifNo\": cifNo\r\n };\r\n let urlStr = \"getIBInformation\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caserial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\nconst listUsersByEmailOrUsername = (userName = '',sdkkd = '', caserial = '') => {\r\n const data = {\r\n \"userName\": userName\r\n }\r\n let urlStr = \"listUsersByEmailOrUsername\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caserial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\nconst listUsersByUsernames = async (userName = '',sdkkd = '', caserial = '') => {\r\n const data = {\r\n \"userName\": userName\r\n }\r\n let urlStr = \"listUsersByUsernameV2\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caserial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\nconst listUsersByUsername = (userName = '',sdkkd = '', caserial = '') => {\r\n const data = {\r\n \"userName\": userName\r\n }\r\n let urlStr = \"listUsersByUsername\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caserial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\n\r\nconst createOTP = (data) => {\r\n let urlStr = \"reset-password/create-otp\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": \"\",\r\n \"caserial\": \"\",\r\n \"client_id\": \"\"\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\n\r\nconst verifyOTP = (data) => {\r\n let urlStr = \"reset-password/verify-otp\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": \"\",\r\n \"caserial\": \"\",\r\n \"client_id\": \"\"\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\nconst createInternetBankingCorpOnline = (cifNo, companyName, sdkkd, listUser, caSerial, \r\n custAccts, branchCodes,user, maker, approver,\r\n approveAuth, checkerAuth, makerAuth, businessAuth, \r\n useSMSBanking, smsBiendongsodu = \"\", smsNhacNo = \"\", emailList = \"\",\r\n isModifyUser, attachment, attachmentName, sms, description, address) => {\r\n maker = \"ibank_sys_maker\";\r\n user = \"ibank_sys_maker\";\r\n approver = \"ibank_system_appr\";\r\n\r\n let users = [];\r\n let chuDN = listUser.find(obj => obj.isChuDN === true);\r\n listUser.map(user => {\r\n let newUser = {\r\n \"cifNo\": cifNo,\r\n \"userName\": user.username,\r\n \"firstName\": user.fullname,\r\n \"email\": user.email,\r\n \"phone\": user.sdt,\r\n \"role\": user.roleCode,\r\n \"custUserAccts\": custAccts,\r\n \"userFuncs\": isModifyUser === true ? \"VN_MENUPKG_EBASIC\" : \"VN_MENUPKG_EGOLD\",\r\n \"userFuncNames\": isModifyUser === true ? \"Gói menu EBASIC\" :\"Gói menu EGOLD\",\r\n \"transactionRestriction\":\"0\",\r\n \"autoUpdate\":\"0\",\r\n \"authenType\": user.roleCode === USER_ROLE.APPROVER ? approveAuth \r\n : user.roleCode === USER_ROLE.CHECKER ? checkerAuth : user.roleCode === USER_ROLE.MAKER ? makerAuth : \"\" // phương thức xác thực\r\n };\r\n users.push(newUser);\r\n });\r\n let splitCustAccs = custAccts.split(',');\r\n let accountFee = \"\";\r\n if(splitCustAccs.length > 0)\r\n {\r\n accountFee = splitCustAccs[0];\r\n }\r\n let custAccounts = [];\r\n splitCustAccs.map(cusA => {\r\n let cusAccount = {\r\n \"accountNo\": cusA\r\n };\r\n custAccounts.push(cusAccount);\r\n });\r\n let smsAccountFee = sms ? sms.smsAccountFee : \"\";\r\n\r\n let splitBranchs = branchCodes.split(',');\r\n let branchCode = \"\";\r\n if(splitBranchs.length > 0)\r\n {\r\n branchCode = splitBranchs[0];\r\n }\r\n let externalData = {\r\n \"custid\": cifNo,\r\n \"bankBranch\": branchCode,\r\n \"caSerial\": caSerial,\r\n \"createDate\": Date.now(),\r\n \"creator\": maker,\r\n \"customerEmail\": chuDN ? chuDN.email : \"\", \r\n // \"serviceType\": \"IB\",\r\n // \"servicePackCode\": isModifyUser === true ? \"VN_SERVICEPKG_EBASIC\" : \"VN_SERVICEPKG_EGOLD\",\r\n // \"status\": \"1\",\r\n // \"accountFee\": accountFee,\r\n // \"maker\":maker,\r\n // \"approver\":approver,\r\n // \"custAccts\": custAccounts,\r\n \"ib\":{\r\n \"servicePackCode\": isModifyUser === true ? \"VN_SERVICEPKG_EBASIC\" : \"VN_SERVICEPKG_EGOLD\",\r\n \"servicePackName\": isModifyUser === true ? \"Gói dịch vụ eBasic\" : \"Gói dịch vụ eGold\",\r\n \"custAccts\":custAccts,\r\n \"limitPerTrans\":\"\",\r\n \"limitPerDay\":\"\",\r\n \"accountFee\":accountFee,\r\n },\r\n \"users\": users,\r\n \"sms\": useSMSBanking === true ? {\r\n \"smsAccountFee\": smsAccountFee ? smsAccountFee : accountFee,\r\n \"mobileList\": smsBiendongsodu, // sms acct bien dong so du\r\n \"smsNotify\": smsNhacNo, // sms notify nha no\r\n \"smsAcctSerPack\": smsBiendongsodu ? \"VN_SERVICEFEE_SMSSODU\" : \"\",\r\n \"smsAcctSerPackName\": smsBiendongsodu ? \"phí dịch vụ sms biến động số dư\" : \"\",\r\n \"smsNotifyAcctFee\": smsAccountFee ? smsAccountFee : accountFee,\r\n \"smsNotifySerPack\": smsNhacNo ? \"VN_SERVICEFEE_SMSNHACNO\" : \"\",\r\n \"smsNotifySerPackName\": smsNhacNo ? \"Phí dịch vụ nhắc nợ tự động\" : \"\",\r\n } : {}\r\n };\r\n\r\n let d = new Date();\r\n let month = d.getMonth()+1;\r\n if(month.toString().length === 1)\r\n {\r\n month = \"0\" + month;\r\n }\r\n let datestring = d.getFullYear() + \"\" + month + \"\" + d.getDate();\r\n\r\n const reqMsgWSO2 = \"{\\\"SystemCode\\\": \\\"ODS_SRV\\\",\\\"FunctionCode\\\": \\\"CIF_SRV_MAIN_SELL\\\",\\\"MultiRow\\\": true,\\\"parameters\\\": [{\\\"ParamName\\\": \\\"P_CIF_NO\\\",\\\"ParamInOut\\\": \\\"IN\\\",\\\"ParamType\\\": \\\"VARCHAR2\\\",\\\"ParamValue\\\":\\\"\" + cifNo + \"\\\"},{\\\"ParamName\\\": \\\"P_IDNTY_NBR\\\",\\\"ParamInOut\\\": \\\"IN\\\",\\\"ParamType\\\": \\\"VARCHAR2\\\",\\\"ParamValue\\\": \\\"XXXX\\\"},{\\\"ParamName\\\":\\\"OUT_CUR\\\",\\\"ParamInOut\\\": \\\"OUT\\\",\\\"ParamType\\\":\\\"REF CURSOR\\\",\\\"ParamValue\\\": null}]}\" ;\r\n const dataWSO2 = {\r\n \"apiUrl\":\"\",\r\n \"bearerKey\":\"\",\r\n \"reqMsg\":reqMsgWSO2\r\n }\r\n\r\n const reqMsgCreateOpp = \"{\\\"DESCRIPTION\\\":\\\"\"+ description + \"\\\",\\\"CIF_NO\\\":\\\"\"+ cifNo + \"\\\",\\\"ODS_ID\\\":\\\"\\\",\\\"PRODUCT\\\":\\\"1102001\\\",\\\"END_DATE\\\":\\\"\" + datestring + \"\\\"}\" ;\r\n const dataCreateOpp = {\r\n \"apiUrl\":\"\",\r\n \"tokenKey\":\"\",\r\n \"reqMsg\":reqMsgCreateOpp\r\n }\r\n\r\n const reqMsgECM = \"{\\\"docClass\\\": \\\"Document\\\",\\\"system\\\": \\\"ONELINK\\\",\\\"posCode\\\": \\\"110000\\\",\\\"customerCode\\\": \\\"00000000A1\\\",\\\"folderPath\\\": \\\"NHS/Ebanking DN\\\",\\\"fileName\\\": \\\"\" + attachmentName + \"\\\",\\\"fileType\\\": \\\"application/pdf\\\",\\\"content\\\": \\\"\" + attachment + \"\\\",\\\"docInfo\\\": []}\" ;\r\n const dataECM = {\r\n \"apiUrl\":\"\",\r\n \"tokenKey\":\"\",\r\n \"reqMsg\": reqMsgECM\r\n }\r\n\r\n const data = {\r\n \"tranType\":\"BU_EBANK\",\r\n \"isCreateByIbankingOnline\": \"1\",\r\n \"isModifiedEmailAccountHolder\": isModifyUser === true ? \"1\" : \"\",\r\n \"cifNo\":cifNo,\r\n \"custName\":companyName,\r\n \"taxId\":sdkkd,\r\n \"maker\":maker,\r\n \"approver\":approver,\r\n \"branchCode\":branchCode,\r\n \"externalData\": JSON.stringify(externalData),\r\n \"action\":\"ADD\",\r\n \"userName\":user,\r\n \"status\":\"APPROVED\",\r\n \"userAgent\":\"OneLink\",\r\n \"clientIp\":\"\",\r\n \"rmInformationByCifNoReq\": JSON.stringify(dataWSO2),\r\n \"createOpportunityInCRMReq\": JSON.stringify(dataCreateOpp),\r\n \"uploadDocumentToECMReq\": JSON.stringify(dataECM),\r\n \"ipAdress\": address,\r\n attachment,\r\n attachmentName\r\n };\r\n let urlStr = \"createInternetBankingCorpOnline\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caSerial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData);\r\n}\r\nconst createInternetBankingCorpOnlineV2 = async (cifNo, companyName, sdkkd, listUser, caSerial, \r\n custAccts, branchCodes,user, maker, approver,\r\n approveAuth, checkerAuth, makerAuth, businessAuth, \r\n useSMSBanking, smsBiendongsodu = \"\", smsNhacNo = \"\", emailList = \"\",\r\n isModifyUser, attachment, attachmentName, sms, description, address, smsData, feeCollectingAcc) => {\r\n \r\n let _countUserName = 0;\r\n await listUsersByUsernames(listUser.map(u => u.username).join(\";\"), sdkkd, caSerial).then(response => {\r\n _countUserName = response.data.content.length;\r\n }).catch(e => {\r\n });\r\n if(_countUserName === 0){\r\n return createInternetBankingCorpOnlineAssist(cifNo, companyName, sdkkd, listUser, caSerial, \r\n custAccts, branchCodes,user, maker, approver,\r\n approveAuth, checkerAuth, makerAuth, businessAuth, \r\n useSMSBanking, smsBiendongsodu, smsNhacNo, emailList,\r\n isModifyUser, attachment, attachmentName, sms, description, address, smsData, feeCollectingAcc);\r\n }else {\r\n throw new Error();\r\n }\r\n}\r\n\r\nconst createInternetBankingCorpOnlineAssist = (cifNo, companyName, sdkkd, listUser, caSerial, \r\n custAccts, branchCodes,user, maker, approver,\r\n approveAuth, checkerAuth, makerAuth, businessAuth, \r\n useSMSBanking, smsBiendongsodu = \"\", smsNhacNo = \"\", emailList = \"\",\r\n isModifyUser, attachment, attachmentName, sms, description, address, smsData, feeCollectingAcc) => {\r\n maker = \"ibank_sys_maker\";\r\n user = \"ibank_sys_maker\";\r\n approver = \"ibank_system_appr\";\r\n\r\n let users = [];\r\n let chuDN = listUser.find(obj => obj.isChuDN === true);\r\n listUser.map(user => {\r\n let newUser = {\r\n \"cifNo\": cifNo,\r\n \"userName\": user.username,\r\n \"firstName\": user.fullname,\r\n \"email\": user.email,\r\n \"phone\": user.sdt,\r\n \"role\": user.roleCode,\r\n \"custUserAccts\": custAccts,\r\n \"userFuncs\": isModifyUser === true ? \"VN_MENUPKG_EBASIC\" : \"VN_MENUPKG_EGOLD\",\r\n \"userFuncNames\": isModifyUser === true ? \"Gói menu EBASIC\" :\"Gói menu EGOLD\",\r\n \"transactionRestriction\":\"0\",\r\n \"autoUpdate\":\"0\",\r\n \"authenType\": user.authentype\r\n // \"authenType\": user.roleCode === USER_ROLE.APPROVER ? approveAuth \r\n // : user.roleCode === USER_ROLE.CHECKER ? checkerAuth : user.roleCode === USER_ROLE.MAKER ? makerAuth : \"\" // phương thức xác thực\r\n };\r\n users.push(newUser);\r\n });\r\n let splitCustAccs = custAccts.split(',');\r\n let accountFee = \"\";\r\n if(splitCustAccs.length > 0)\r\n {\r\n accountFee = splitCustAccs[0];\r\n }\r\n let custAccounts = [];\r\n splitCustAccs.map(cusA => {\r\n let cusAccount = {\r\n \"accountNo\": cusA\r\n };\r\n custAccounts.push(cusAccount);\r\n });\r\n let smsAccountFee = sms ? sms.smsAccountFee : \"\";\r\n\r\n let splitBranchs = branchCodes.split(',');\r\n let branchCode = \"\";\r\n if(splitBranchs.length > 0)\r\n {\r\n branchCode = splitBranchs[0];\r\n }\r\n\r\n smsData = smsData.map(s => {\r\n let allAccount = s.accounts && s.accounts.filter(a => a.value === 'ALL');\r\n if(allAccount && allAccount.length > 0){\r\n return {debtNoti: s.debtNoti, balanceNoti: s.balanceNoti, sdt: s.sdt, accounts: ['ALL']}\r\n } else {\r\n return {debtNoti: s.debtNoti, balanceNoti: s.balanceNoti, sdt: s.sdt, accounts: s.accounts.map(a => a.value)}\r\n }\r\n });\r\n let externalData = {\r\n \"custid\": cifNo,\r\n \"bankBranch\": branchCode,\r\n \"caSerial\": caSerial,\r\n \"createDate\": Date.now(),\r\n \"creator\": maker,\r\n \"customerEmail\": chuDN ? chuDN.email : \"\", \r\n // \"serviceType\": \"IB\",\r\n // \"servicePackCode\": isModifyUser === true ? \"VN_SERVICEPKG_EBASIC\" : \"VN_SERVICEPKG_EGOLD\",\r\n // \"status\": \"1\",\r\n // \"accountFee\": accountFee,\r\n // \"maker\":maker,\r\n // \"approver\":approver,\r\n // \"custAccts\": custAccounts,\r\n \"ib\":{\r\n \"servicePackCode\": isModifyUser === true ? \"VN_SERVICEPKG_EBASIC\" : \"VN_SERVICEPKG_EGOLD\",\r\n \"servicePackName\": isModifyUser === true ? \"Gói dịch vụ eBasic\" : \"Gói dịch vụ eGold\",\r\n \"custAccts\":custAccts,\r\n \"limitPerTrans\":\"\",\r\n \"limitPerDay\":\"\",\r\n \"accountFee\":accountFee,\r\n },\r\n \"users\": users,\r\n smsData: useSMSBanking ? smsData : null,\r\n feeCollectingAcc: feeCollectingAcc.value,\r\n \"sms\": useSMSBanking === true ? {\r\n \"smsAccountFee\": smsAccountFee ? smsAccountFee : accountFee,\r\n \"mobileList\": smsBiendongsodu, // sms acct bien dong so du\r\n \"smsNotify\": smsNhacNo, // sms notify nha no\r\n \"smsAcctSerPack\": smsBiendongsodu ? \"VN_SERVICEFEE_SMSSODU\" : \"\",\r\n \"smsAcctSerPackName\": smsBiendongsodu ? \"phí dịch vụ sms biến động số dư\" : \"\",\r\n \"smsNotifyAcctFee\": smsAccountFee ? smsAccountFee : accountFee,\r\n \"smsNotifySerPack\": smsNhacNo ? \"VN_SERVICEFEE_SMSNHACNO\" : \"\",\r\n \"smsNotifySerPackName\": smsNhacNo ? \"Phí dịch vụ nhắc nợ tự động\" : \"\"\r\n } : {}\r\n };\r\n\r\n let d = new Date();\r\n let month = d.getMonth()+1;\r\n if(month.toString().length === 1)\r\n {\r\n month = \"0\" + month;\r\n }\r\n let datestring = d.getFullYear() + \"\" + month + \"\" + d.getDate();\r\n\r\n const reqMsgWSO2 = \"{\\\"SystemCode\\\": \\\"ODS_SRV\\\",\\\"FunctionCode\\\": \\\"CIF_SRV_MAIN_SELL\\\",\\\"MultiRow\\\": true,\\\"parameters\\\": [{\\\"ParamName\\\": \\\"P_CIF_NO\\\",\\\"ParamInOut\\\": \\\"IN\\\",\\\"ParamType\\\": \\\"VARCHAR2\\\",\\\"ParamValue\\\":\\\"\" + cifNo + \"\\\"},{\\\"ParamName\\\": \\\"P_IDNTY_NBR\\\",\\\"ParamInOut\\\": \\\"IN\\\",\\\"ParamType\\\": \\\"VARCHAR2\\\",\\\"ParamValue\\\": \\\"XXXX\\\"},{\\\"ParamName\\\":\\\"OUT_CUR\\\",\\\"ParamInOut\\\": \\\"OUT\\\",\\\"ParamType\\\":\\\"REF CURSOR\\\",\\\"ParamValue\\\": null}]}\" ;\r\n const dataWSO2 = {\r\n \"apiUrl\":\"\",\r\n \"bearerKey\":\"\",\r\n \"reqMsg\":reqMsgWSO2\r\n }\r\n\r\n const reqMsgCreateOpp = \"{\\\"DESCRIPTION\\\":\\\"\"+ description + \"\\\",\\\"CIF_NO\\\":\\\"\"+ cifNo + \"\\\",\\\"ODS_ID\\\":\\\"\\\",\\\"PRODUCT\\\":\\\"1102001\\\",\\\"END_DATE\\\":\\\"\" + datestring + \"\\\"}\" ;\r\n const dataCreateOpp = {\r\n \"apiUrl\":\"\",\r\n \"tokenKey\":\"\",\r\n \"reqMsg\":reqMsgCreateOpp\r\n }\r\n\r\n const reqMsgECM = \"{\\\"docClass\\\": \\\"Document\\\",\\\"system\\\": \\\"ONELINK\\\",\\\"posCode\\\": \\\"110000\\\",\\\"customerCode\\\": \\\"00000000A1\\\",\\\"folderPath\\\": \\\"NHS/Ebanking DN\\\",\\\"fileName\\\": \\\"\" + attachmentName + \"\\\",\\\"fileType\\\": \\\"application/pdf\\\",\\\"content\\\": \\\"\" + attachment + \"\\\",\\\"docInfo\\\": []}\" ;\r\n const dataECM = {\r\n \"apiUrl\":\"\",\r\n \"tokenKey\":\"\",\r\n \"reqMsg\": reqMsgECM\r\n }\r\n\r\n const data = {\r\n \"tranType\":\"BU_EBANK\",\r\n \"isCreateByIbankingOnline\": \"1\",\r\n \"isModifiedEmailAccountHolder\": isModifyUser === true ? \"1\" : \"\",\r\n \"cifNo\":cifNo,\r\n \"custName\":companyName,\r\n \"taxId\":sdkkd,\r\n \"maker\":maker,\r\n \"approver\":approver,\r\n \"branchCode\":branchCode,\r\n \"externalData\": JSON.stringify(externalData),\r\n \"action\":\"ADD\",\r\n \"userName\":user,\r\n \"status\":\"APPROVED\",\r\n \"userAgent\":\"OneLink\",\r\n \"clientIp\":\"\",\r\n \"rmInformationByCifNoReq\": JSON.stringify(dataWSO2),\r\n \"createOpportunityInCRMReq\": JSON.stringify(dataCreateOpp),\r\n \"uploadDocumentToECMReq\": JSON.stringify(dataECM),\r\n \"ipAdress\": address,\r\n attachment,\r\n attachmentName\r\n };\r\n let urlStr = \"createInternetBankingCorpOnline\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caSerial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData);\r\n}\r\nconst createFirstApproachLog = () => {\r\n const data = {\r\n \"custId\": \"\",\r\n \"custName\": \"\",\r\n \"clientId\": \"L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg\",\r\n \"stepName\": \"KIEM-TRA-CKS\",\r\n \"stepRouter\": \"DN/DANG-KY-IB_0\",\r\n \"description\": \"Bắt đầu truy cập vào màn hình kiểm tra chữ ký số\",\r\n };\r\n let urlStr = \"createSignupStepLog\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n }\r\n return http.post('FirstApproach', bodyData); \r\n}\r\nconst createSignupStepLog = (sdkkd = '', caserial = '', stepName, stepRouter, tenDoanhNghiep) => {\r\n const data = {\r\n \"custId\": sdkkd,\r\n \"custName\": tenDoanhNghiep,\r\n \"clientId\": localStorage.getItem('sId'),\r\n \"stepName\": stepName,\r\n \"stepRouter\": stepRouter,\r\n \"description\": \"Đăng ký thành công internet banking online\",\r\n };\r\n let urlStr = \"createSignupStepLog\";\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"anotherUrl\": \"\",\r\n \"sdkkd\": sdkkd,\r\n \"caserial\": caserial,\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData); \r\n}\r\n\r\nconst getCaptchaBankGuarentee = (sId = '') => {\r\n const urlStr = `getCaptchaBankGuarantee`;\r\n const bodyData = {\r\n \"body\": \"\",\r\n \"url\": urlStr,\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonLogin', bodyData);\r\n}\r\n\r\nconst getBankGuarentee = (data, sId = '') => {\r\n const urlStr = `inquiryBankGuaranteeWithCaptcha`;\r\n const bodyData = {\r\n \"body\": JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonLogin', bodyData);\r\n}\r\nconst inquiryBankGuaranteeWithoutCaptcha = (data, sId = '') => {\r\n const urlStr = `inquiryBankGuaranteeWithoutCaptcha`;\r\n const bodyData = {\r\n \"body\": JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonLogin', bodyData);\r\n}\r\n\r\nconst validateBankGuarentee = (data,sId='')=> {\r\n const urlStr = `validateGuaranteeLetter`;\r\n const bodyData = {\r\n \"body\": JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonLogin', bodyData);\r\n}\r\nconst prepareGuaranteeLetterApi = (data,sId='')=> {\r\n const urlStr = `prepareGuaranteeLetter`;\r\n const bodyData = {\r\n \"body\": JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonLogin', bodyData);\r\n}\r\nconst getBankGuarenteeLetter = (data,sId='')=> {\r\n const urlStr = `getGuaranteeLetter`;\r\n const bodyData = {\r\n \"body\": JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonLogin', bodyData);\r\n}\r\nconst createBankGuarenteeLetter = (data,sId='')=> {\r\n const urlStr = `createGuaranteeLetter`;\r\n const bodyData = {\r\n \"body\": JSON.stringify(data),\r\n \"url\": urlStr,\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonLogin', bodyData);\r\n}\r\n\r\nconst getBankGuarenteeWithoutCaptcha = (data,sId = '')=> {\r\n const bodyData = {\r\n \"body\":JSON.stringify(data),\r\n \"client_id\": sId\r\n }\r\n return http.post('ApiGatewayNonAuthenNoCaptcha', bodyData); \r\n}\r\n\r\nconst getListAccountByCustomer = (data,sId = '')=> {\r\n const bodyData = {\r\n \"body\" : JSON.stringify(data),\r\n \"url\": \"getListAccountByCustomer\",\r\n \"anotherUrl\": \"\",\r\n \"client_id\": localStorage.getItem('sId')\r\n }\r\n return http.post('ApiGateway', bodyData);\r\n}\r\nexport { \r\n setCertInformation,\r\n getBusinessInforByOLN, \r\n listUsersByEmailOrUsername, \r\n listUsersByUsername,\r\n getCustomerInformation,\r\n createOTP,\r\n verifyOTP,\r\n createInternetBankingCorpOnline,\r\n createInternetBankingCorpOnlineV2,\r\n getListAccountByCustomer,\r\n createFirstApproachLog,\r\n createSignupStepLog,\r\n getCaptchaBankGuarentee,\r\n getBankGuarentee,\r\n getBankGuarenteeWithoutCaptcha,\r\n validateBankGuarentee,\r\n getBankGuarenteeLetter,\r\n createBankGuarenteeLetter,\r\n inquiryBankGuaranteeWithoutCaptcha,\r\n prepareGuaranteeLetterApi,\r\n getServicePackageInfo\r\n};","const methodAuth = {\r\n businessAuth: [\r\n {\r\n name: 'Smart OTP',\r\n name_EN: 'Smart OTP',\r\n value: 'TOKEN_OTP'\r\n },\r\n {\r\n name: 'Chữ ký số',\r\n name_EN: \"Digital signature\",\r\n value: 'PKI_OTP'\r\n },\r\n {\r\n name: 'Chữ ký số và Smart OTP',\r\n name_EN: \"Smart OTP and Digital signature\",\r\n value: 'PKI_OTP;TOKEN_OTP'\r\n }\r\n ],\r\n approve: [\r\n {\r\n name: 'Smart OTP',\r\n name_EN: 'Smart OTP',\r\n value: 'TOKEN_OTP'\r\n },\r\n {\r\n name: 'Duyệt nhanh',\r\n name_EN: 'Quick approval',\r\n value: 'PKI_OTP'\r\n }\r\n ],\r\n checker: [\r\n {\r\n name: 'Smart OTP',\r\n name_EN: 'Smart OTP',\r\n value: 'TOKEN_OTP'\r\n },\r\n {\r\n name: 'Duyệt nhanh',\r\n name_EN: 'Quick approval',\r\n value: 'PKI_OTP'\r\n }\r\n ],\r\n maker: [\r\n {\r\n name: 'Smart OTP',\r\n name_EN: 'Smart OTP',\r\n value: 'TOKEN_OTP'\r\n },\r\n {\r\n name: 'Chữ ký số',\r\n name_EN: \"Digital signature\",\r\n value: 'PKI_OTP'\r\n },\r\n {\r\n name: 'Kết hợp cả Smart OTP và chữ ký số',\r\n name_EN: \"Combination of Smart OTP and Digital signature\",\r\n value: 'PKI_OTP;TOKEN_OTP'\r\n }\r\n ],\r\n};\r\nconst TransLevel = [\r\n {\r\n value: 2,\r\n name: '2 cấp',\r\n name_EN: '2 levels'\r\n },\r\n {\r\n value: 3,\r\n name: '3 cấp',\r\n name_EN: '3 levels'\r\n } \r\n];\r\nconst USER_ROLE = {\r\n VIEWER: \"VIEWER\",\r\n MAKER: \"MAKER\",\r\n CHECKER: \"CHECKER\",\r\n APPROVER: \"APPROVER\"\r\n};\r\nconst AUTHEN_TYPE = {\r\n PKI_OTP: \"PKI_OTP\", // chữ ký số for maker, Duyệt nhanh for approver and checker\r\n TOKEN_OTP: \"TOKEN_OTP\" // Smart OTP\r\n};\r\nconst ROLE = [\r\n {\r\n name: \"Truy vấn\",\r\n value: \"VIEWER\",\r\n name_EN: \"Viewer\"\r\n },\r\n {\r\n name: \"Nhập lệnh\",\r\n value: \"MAKER\",\r\n name_EN: \"Maker\"\r\n },\r\n {\r\n name: \"Kiểm soát\",\r\n value: \"CHECKER\",\r\n name_EN: \"Checker\"\r\n },\r\n {\r\n name: \"Người duyệt\",\r\n value: \"APPROVER\",\r\n name_EN: \"Approver\"\r\n },\r\n {\r\n name: \"Truy vấn tài khoản định danh\",\r\n value: \"VIEWER_ALIAS\",\r\n name_EN: \"Alias viewer\"\r\n }\r\n]\r\nexport {methodAuth, TransLevel, USER_ROLE, AUTHEN_TYPE, ROLE}"],"sourceRoot":""}