송용우 5 månader sedan
förälder
incheckning
c547a04473
6 ändrade filer med 24 tillägg och 1362 borttagningar
  1. 1 1
      .env
  2. 1 1
      .env.development
  3. 0 29
      layouts/designdb.vue
  4. 0 29
      layouts/designdefault.vue
  5. 22 2
      pages/index.vue
  6. 0 1300
      pages/view/login/index.vue

+ 1 - 1
.env

@@ -1,6 +1,6 @@
 #import.meta.env로 호출 가능
 VITE_APP_BASE_URL="/"
-VITE_APP_API_URL="https://eventinter.mycafe24.com"
+VITE_APP_API_URL="https://shopdeli.mycafe24.com"
 VITE_APP_API_PORT=8080
 VITE_APP_DEBUG_LEVEL=trace
 VITE_APP_MODE=prod

+ 1 - 1
.env.development

@@ -1,6 +1,6 @@
 #import.meta.env로 호출 가능
 VITE_APP_BASE_URL="/"
-VITE_APP_API_URL="https://eventinter.mycafe24.com"
+VITE_APP_API_URL="https://shopdeli.mycafe24.com"
 VITE_APP_API_PORT=8080
 VITE_APP_DEBUG_LEVEL=trace
 VITE_APP_MODE=development

+ 0 - 29
layouts/designdb.vue

@@ -1,29 +0,0 @@
-<template>
-  <v-app class="mode-wrap" :class="[isDarkmode ? 'darkmode' : '']">
-    <div class="container">
-      <dBheader></dBheader>
-      <div class="content footer--none">
-        <NuxtPage />
-      </div>
-      <!-- <footerLayout></footerLayout> -->
-    </div>
-  </v-app>
-</template>
-
-<script setup>
-  import dBheader from '../components/design/dBheader'
-  // import footerLayout from '../components/design/footer'
-  let isDarkmode = ref(false)
-
-  const mode = (e) => {
-    isDarkmode = !(e.value);
-    if(isDarkmode){
-      document.querySelector(".mode-wrap").classList.add("darkmode");
-    }else{
-      document.querySelector(".mode-wrap").classList.remove("darkmode");
-    }
-  }
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 0 - 29
layouts/designdefault.vue

@@ -1,29 +0,0 @@
-<template>
-  <v-app class="mode-wrap" :class="[isDarkmode ? 'darkmode' : '']">
-    <div class="container">
-      <headerLayout @click:mode-chg="mode"></headerLayout>
-      <div class="content">
-        <NuxtPage />
-      </div>
-      <footerLayout></footerLayout>
-    </div>
-  </v-app>
-</template>
-
-<script setup>
-  import headerLayout from '../components/design/header'
-  import footerLayout from '../components/design/footer'
-  let isDarkmode = ref(false)
-
-  const mode = (e) => {
-    isDarkmode = !(e.value);
-    if(isDarkmode){
-      document.querySelector(".mode-wrap").classList.add("darkmode");
-    }else{
-      document.querySelector(".mode-wrap").classList.remove("darkmode");
-    }
-  }
-</script>
-
-<style lang="scss" scoped>
-</style>

+ 22 - 2
pages/index.vue

@@ -72,6 +72,9 @@
             >로그인</v-btn
           >
         </div>
+        <div class="short--login--wrap">
+          <v-btn @click="onGoogleLogin">구글 로그인</v-btn>
+        </div>
       </div>
     </div>
 
@@ -92,8 +95,8 @@
   //import PrivacyPop from "@/components/login/privacyPop.vue";
   //import AgrNPop from "@/components/terms/agreeNListPop.vue";
   import apiUrl from "@/composables/useApi";
-import QRCode from "qrcode";
-import { useI18n } from "vue-i18n";
+  import QRCode from "qrcode";
+  import { useI18n } from "vue-i18n";
 
   /************************
    *    layout setting
@@ -795,6 +798,23 @@ import { useI18n } from "vue-i18n";
     };
     $eventBus.emit("OPEN_CONFIRM_POP_UP", param);
   };
+
+  // 구글 로그인 버튼 클릭 시 호출
+  function onGoogleLogin() {
+    const clientId =
+      "373780605211-diojebh7mug45urv9rnqdil6n0b1ogge.apps.googleusercontent.com"; // 실제 클라이언트 ID로 교체
+    const redirectUri = "https://shopdeli.mycafe24.com/auth/callback"; // 실제 리디렉션 URI로 교체
+    const scope = "openid email profile";
+    const responseType = "token"; // 또는 'code' (백엔드 연동 시)
+    const state = Math.random().toString(36).substring(2);
+
+    const googleAuthUrl = `https://accounts.google.com/o/oauth2/v2/auth?client_id=${clientId}&redirect_uri=${encodeURIComponent(
+      redirectUri
+    )}&response_type=${responseType}&scope=${encodeURIComponent(scope)}&state=${state}`;
+
+    window.location.href = googleAuthUrl;
+  }
+
   /**
    * @API
    * 최종 로그인 버튼 클릭 시 API

+ 0 - 1300
pages/view/login/index.vue

@@ -1,1300 +0,0 @@
-<template>
-  <div class="login-wrap">
-    <!-- header -->
-    <div class="login--header">
-      <div class="login--header--l">
-        <div class="logo">
-          <!-- prettier-ignore  -->
-          룰렛
-        </div>
-      </div>
-      <div class="login--header--r"></div>
-    </div>
-    <!-- login -->
-    <div class="login-box">
-      <div class="login-l">
-        <div class="login-l-center">
-          <span class="logo">
-            <!-- prettier-ignore  -->
-            룰렛
-          </span>
-          <p>We Make Scalable Mobility Life</p>
-        </div>
-      </div>
-      <div class="login-r">
-        <div class="tit-login">
-          <strong>로그인</strong>
-        </div>
-        <div class="login-input-wrap">
-          <div
-            class="txt-field-box"
-            :class="!loginForm.validCheck.input.userId ? 'error' : ''"
-          >
-            <v-text-field
-              v-model="loginForm.userId"
-              placeholder="아이디를 입력해주세요"
-              class="custom-input"
-              @keyup.enter="loginAction(loginForm.userId, loginForm.passwd)"
-              @input="setInputField('main_userId')"
-            ></v-text-field>
-            <i class="ico"></i>
-          </div>
-          <div
-            class="txt-field-box"
-            :class="!loginForm.validCheck.input.passwd ? 'error' : ''"
-          >
-            <v-text-field
-              v-model="loginForm.passwd"
-              :type="visible ? 'text' : 'password'"
-              placeholder="비밀번호를 입력해주세요"
-              class="custom-input"
-              id="password"
-              @keyup.enter="loginAction(loginForm.userId, loginForm.passwd)"
-              @input="setInputField('main_passwd')"
-            ></v-text-field>
-            <i
-              class="ico-eye"
-              @click.stop="toggleVisibility"
-              :class="visible ? 'eye-on' : 'eye-off'"
-            ></i>
-            <i class="ico"></i>
-          </div>
-          <!-- <p class="error-txt" v-if="!loginForm.validCheck.inputErrorCheck">
-            {{ loginForm.validCheck.passwd }}
-          </p> -->
-        </div>
-
-        <div class="login-btn-wrap">
-          <v-btn
-            class="custom-btn btn-blue"
-            @keyup.enter="loginAction(loginForm.userId, loginForm.passwd)"
-            @click="loginAction(loginForm.userId, loginForm.passwd)"
-            >로그인</v-btn
-          >
-        </div>
-      </div>
-    </div>
-
-    <!-- footer -->
-    <div class="login-footer">
-      <div class="login--footer--l">
-        <p>COPYRIGHT@2018 룰렛 INC. ALL RIGHTS RESERVED.</p>
-        <p>마포구 합정동&nbsp; |&nbsp;TEL&nbsp;02-1234-5678</p>
-      </div>
-    </div>
-  </div>
-</template>
-
-<script setup>
-  /************************
-   *    import
-   ************************/
-  import PrivacyPop from "@/components/login/privacyPop.vue";
-  import AgrNPop from "@/components/terms/agreeNListPop.vue";
-  import apiUrl from "@/composables/useApi";
-  import QRCode from "qrcode";
-  import { useI18n } from "vue-i18n";
-
-  /************************
-   *    layout setting
-   ************************/
-  definePageMeta({
-    layout: "loginlayout",
-  });
-
-  /************************
-   *    plugins inject
-   ************************/
-  const { $dayjs, $log, $eventBus, $toast, $userAgent } = useNuxtApp();
-
-  const useStore = useDetailStore();
-  /************************
-   *    data & created
-   ************************/
-  // 현재 입력 중인 필드를 설정하는 함수
-  const setInputField = (name) => {
-    fnValidCheck(name);
-  };
-  const pageId = "login";
-  const i18n = useI18n();
-  // 다국어
-  let listObj = ref({
-    langTypeList: {},
-  });
-  // 로그인 정보
-  const loginForm = ref({
-    userId: "",
-    passwd: "",
-    otpNum: "",
-    username: "",
-    authType: "GOOGLE",
-    userAgent: "",
-    validCheck: {
-      input: {
-        userId: true,
-        passwd: true,
-      },
-      otp: {
-        otpNum: true,
-      },
-      inputErrorCheck: true,
-      inputValidTxt: "",
-      otpValidTxt: "",
-      loginValidCheck: false,
-      btnTxt: "",
-      btnTxtType: "",
-    },
-  });
-  // 구글 OTP 1차 팝업
-  const authPop1 = ref({
-    popYn: false,
-    certifyYN: false,
-    userId: "",
-    passwd: "",
-    otpNum: "",
-    validOtpKey: true,
-    validOtpTxt: "",
-    btnTxt: "",
-    btnTxtType: "",
-    applyBtn: false,
-    succOtpYn: false,
-    businessName: "",
-    agreeChk1: false,
-    agreeChk2: false,
-    validCheck: {
-      userId: true,
-      passwd: true,
-    },
-    validTxt: "",
-    errorCheck: false,
-  });
-  // 구글 OTP 2차 팝업
-  const authPop2 = ref({
-    popYn: false,
-    otpNum: "",
-    validOtpKey: true,
-    validOtpTxt: "",
-    errorCheck: false,
-  });
-  // 아이디 찾기
-  const findId = ref({
-    popYn: false,
-    //tenantName: '',
-    email: "",
-    otpNum: "",
-    validCheck: {
-      input: {
-        //tenantName: true,
-        email: true,
-      },
-      otp: {
-        otpNum: true,
-      },
-      inputErrorCheck: true,
-      inputValidTxt: "",
-      otpValidTxt: "",
-      findIdValidCheck: false,
-    },
-    btnTxt: "",
-  });
-  // 비밀번호 초기화
-  const resetPw = ref({
-    popYn: false,
-    userId: "",
-    email: "",
-    otpNum: "",
-    validCheck: {
-      input: {
-        userId: true,
-        email: true,
-      },
-      otp: {
-        otpNum: true,
-      },
-      inputErrorCheck: true,
-      inputValidTxt: "",
-      otpValidTxt: "",
-      resetPwValidCheck: false,
-    },
-    btnTxt: "",
-  });
-  // 초기 패스워드 변경
-  const initPw = ref({
-    popYn: false,
-    passwd: "",
-    passwd2: "",
-    validCheck: {
-      passwd: true,
-      passwd2: true,
-    },
-    passwdCheck: false,
-    errorTxt: "",
-  });
-
-  const selectPlaceholder = ref("");
-  const initAuthPop1 = ref({});
-  const initAuthPop2 = ref({});
-  const initFindId = ref({});
-  const initResetPw = ref({});
-  const initInitPw = ref({});
-  const googleOtpQrCode = ref("");
-  const googleOtpSecretKey = ref("");
-  const loginInfo = ref({});
-  const checkbox = ref(false);
-  const langType = ref("");
-  const toggleVisibility = () => {
-    visible.value = !visible.value;
-  };
-  const visible = ref(false);
-  const isAgrNPop = ref(false);
-  const isShowAgrNPop = ref(false);
-  let saveId = localStorage.getItem("saveId");
-  if (saveId) {
-    checkbox.value = true;
-    loginForm.value.userId = saveId;
-  }
-
-  // 개인정보처리방침 이용약관 팝업
-  const privacyPop = ref(false);
-  const privacyDetail = ref({
-    kr: {
-      title: "",
-      contents: "",
-    },
-    en: {
-      title: "",
-      contents: "",
-    },
-  });
-  const systemInfo = ref({
-    mode: "",
-  });
-
-  const loginAction = (__ID, __PASS) => {
-    let _req = {
-      id: __ID,
-      password: __PASS,
-    };
-
-    useAxios()
-      .post("/roulette/login", _req)
-      .then((res) => {
-        if (res.data) {
-          useAuthStore().setAccessToken(res.data.accessToken);
-          useAuthStore().setRefreshToken(res.data.refreshToken);
-          localStorage.setItem("tempAccess", __ID);
-          useUtil.setPageMove("/view/event/evtList");
-          useStore.menuInfo.menuIndex = "0";
-          useStore.menuInfo.menuId = "menu02";
-          useStore.menuInfo.pageRtName = "이벤트 관리";
-          useStore.menuInfo.pageStatus = null;
-        }
-      })
-      .catch((error) => {
-        console.log(error.status);
-        if (error.status) {
-          fnLoginSet("아이디 또는 패스워드가 잘못됐습니다. 관리자에게 문의바랍니다.");
-        }
-
-        $log.debug("[login][fnIdPwCheck][error]");
-      })
-      .finally(() => {
-        $log.debug("[login][fnIdPwCheck][finished]");
-      });
-  };
-
-  // onMounted
-  onMounted(() => {
-    loginForm.value.userAgent = $userAgent;
-    if (loginForm.value.authType === "GOOGLE") {
-      selectPlaceholder.value = i18n.t("login.googleOTPNum");
-    } else if (loginForm.value.authType === "EMAIL") {
-      selectPlaceholder.value = i18n.t("login.emailAuthNum");
-    } else {
-      selectPlaceholder.value = i18n.t("login.smsAuthNum");
-    }
-
-    let saveId = localStorage.getItem("saveId");
-    if (saveId) {
-      checkbox.value = true;
-      loginForm.value.username = saveId;
-    }
-  });
-
-  watchEffect(() => {
-    // 감시하고자 하는 데이터를 해당 블럭내에서 사용하면 호출된다.
-    // getLang.value를 감시하는 상태
-    fnGetEnumCode(useLangStore().getLang);
-  });
-
-  $eventBus.off("SET_SUCCESS_POPUP");
-  $eventBus.on("SET_SUCCESS_POPUP", () => {
-    // 안내 팝업 확인 클릭 팝업 초기화처리
-    fnOtpPopClose("findId");
-    fnOtpPopClose("resetPw");
-  });
-
-  $eventBus.off("PASSWD_CHANGE");
-  $eventBus.on("PASSWD_CHANGE", () => {
-    fnPasswdChange();
-  });
-
-  $eventBus.off("INIT_PASSWORD");
-  $eventBus.on("INIT_PASSWORD", () => {
-    initPw.value.popYn = true;
-  });
-
-  $eventBus.off("SET_LOGIN");
-  $eventBus.on("SET_LOGIN", () => {
-    fnLogin();
-  });
-  /************************
-   *    Methods
-   ************************/
-  // created
-  loginForm.value.btnTxtType = "S";
-  authPop1.value.btnTxtType = "S";
-  loginForm.value.btnTxt = i18n.t("login.authNumSend");
-  authPop1.value.btnTxt = i18n.t("common.sendAuthNumber");
-  findId.value.btnTxt = i18n.t("common.sendAuthNumber");
-  resetPw.value.btnTxt = i18n.t("common.sendAuthNumber");
-
-  initAuthPop1.value = _cloneDeep(authPop1.value);
-  initAuthPop2.value = _cloneDeep(authPop2.value);
-  initFindId.value = _cloneDeep(findId.value);
-  initResetPw.value = _cloneDeep(resetPw.value);
-  initInitPw.value = _cloneDeep(initPw.value);
-
-  /**
-   * @SCRIPT
-   * 다국어 기능 | 한글 영문 변경 이벤트
-   */
-  function fnLangChange() {
-    useLangStore().setLang(langType.value);
-  }
-
-  function fnGetEnumCode(lang) {
-    lang = useUtil.nvl(lang, "kr");
-    langType.value = lang;
-    let objEnum = useEnumCode.getEnumCode(lang);
-    listObj.value.langTypeList = objEnum.langType;
-    i18n.locale.value = lang;
-  }
-
-  /**
-   * @SCRIPT
-   * 라디오버튼 변경 이벤트 (버튼별 문구)
-   */
-  function fnChangeAuth() {
-    if (loginForm.value.authType === "GOOGLE") {
-      selectPlaceholder.value = i18n.t("login.googleOTPNum");
-    } else if (loginForm.value.authType === "EMAIL") {
-      selectPlaceholder.value = i18n.t("login.emailAuthNum");
-    } else {
-      selectPlaceholder.value = i18n.t("login.smsAuthNum");
-    }
-    loginForm.value.btnTxt = i18n.t("login.authNumSend");
-    loginForm.value.btnTxtType = "S";
-
-    if (!loginForm.value.validCheck.otp.otpNum) {
-      fnValidCheck("main_otpNum");
-    }
-  }
-
-  /**
-   * @SCRIPT
-   * 구글OTP 인증 버튼 클릭 이벤트
-   * @param {*} type
-   */
-  function fnAuthCheck(type) {
-    let issuer = ""; // 회사명
-    let account = ""; // 아이디
-    let otpUrl = ""; // 큐알코드 생성 URL
-    let _req = {
-      username: authPop1.value.userId,
-      password: btoa(authPop1.value.passwd),
-      mfaType: "SMS",
-      otpNum: authPop1.value.otpNum,
-    };
-
-    if (type === "optApply1") {
-      fnValidCheck("createOtp_userId");
-      fnValidCheck("createOtp_passwd");
-      if (authPop1.value.errorCheck) {
-        fnAuth("POPUP");
-      }
-    } else if (type === "optApply2") {
-      //OTP 인증 팝업2
-      useAxios()
-        .post(apiUrl.googleSecretKey, _req)
-        .then((res) => {
-          googleOtpSecretKey.value = res.data.data.secretKey;
-          // 시크릿 키를 이용한 큐알코드 생성
-          issuer = "[P5G]" + authPop1.value.businessName;
-          account = authPop1.value.userId;
-          otpUrl =
-            "otpauth://totp/" +
-            encodeURIComponent(issuer + ":" + account).replace(/\+/g, "%20") +
-            "?secret=" +
-            encodeURIComponent(googleOtpSecretKey.value).replace(/\+/g, "%20") +
-            "&issuer=" +
-            encodeURIComponent(issuer).replace(/\+/g, "%20");
-          fnCreateQrCode(otpUrl);
-
-          $toast.success("인증처리가 완료되었습니다.");
-          authPop1.value.applyBtn = false;
-          authPop1.value.agreeChk1 = true;
-          authPop1.value.succOtpYn = true;
-          $log.debug("[login][fnAuthCheck][success]");
-        })
-        .catch((error) => {
-          $log.debug("[login][fnAuthCheck][error]");
-          let errorData = error.response.data;
-          errorData.type = "fnAuthCheck";
-          fnLoginFail(errorData);
-        })
-        .finally(() => {
-          $log.debug("[login][fnAuthCheck][finished]");
-        });
-    } else if (type === "optApply2Yn") {
-      authPop1.value.popYn = false;
-      authPop2.value.popYn = true;
-    } else if (type === "findId") {
-      //fnValidCheck('findId_tenantName')
-      fnValidCheck("findId_email");
-      if (findId.value.validCheck.inputErrorCheck) {
-        fnIdPwCheck(type);
-      }
-    } else if (type === "resetPw") {
-      fnValidCheck("resetPw_userId");
-      fnValidCheck("resetPw_email");
-      if (resetPw.value.validCheck.inputErrorCheck) {
-        fnIdPwCheck(type);
-      }
-    } else if (type === "createOtp_otpNum") {
-      // 구글OTP등록화면에서 인증번호 받기
-      fnAuthSend(authPop1.value.btnTxtType, "createOtp_otpNum");
-    } else {
-      fnValidCheck("main_userId");
-      fnValidCheck("main_passwd");
-      if (loginForm.value.validCheck.inputErrorCheck) {
-        fnAuth(type);
-      }
-    }
-  }
-
-  /**
-   * @SCRIPT
-   * 큐알코드 생성
-   * @param {*} otpUrl
-   */
-  async function fnCreateQrCode(otpUrl) {
-    googleOtpQrCode.value = await QRCode.toDataURL(otpUrl);
-  }
-
-  /**
-   * @SCRIPT
-   * 로그인 실패관련 토스트 & confirm 처리
-   */
-  function fnLoginFail(dataObj) {
-    let errorMessage = "";
-    let type = dataObj.type;
-    if (dataObj.code === "2001" || dataObj.code === "2002") {
-      let valieTxt = "";
-      if (!useUtil.isNull(dataObj.reason)) {
-        if (dataObj.reason < "4") {
-          valieTxt += i18n.t("login.valid.isNullPw");
-        } else {
-          // 4회 이상 비밀번호 실패
-          fnLoginFailConfirm(dataObj);
-        }
-      } else {
-        valieTxt += i18n.t("login.valid.isNullId");
-      }
-      console.log("비밀번호 초기화 팝업:::" + resetPw.value.popYn);
-      console.log("아이디찾기 팝업:::" + findId.value.popYn);
-      console.log("OTP생성 팝업:::" + authPop1.value.popYn);
-      if (resetPw.value.popYn) {
-        resetPw.value.validCheck.inputErrorCheck = false;
-        resetPw.value.validCheck.inputValidTxt = valieTxt;
-      } else if (findId.value.popYn) {
-        findId.value.validCheck.inputErrorCheck = false;
-        findId.value.validCheck.inputValidTxt = valieTxt;
-      } else if (authPop1.value.popYn) {
-        authPop1.value.errorCheck = false;
-        authPop1.value.validTxt = valieTxt;
-      } else {
-        loginForm.value.validCheck.inputErrorCheck = false;
-        loginForm.value.validCheck.inputValidTxt = valieTxt;
-      }
-    } else if (dataObj.code === "2003") {
-      let otpTxt = "";
-      if (loginForm.value.authType === "GOOGLE") {
-        otpTxt += i18n.t("login.valid.isNullOtp");
-      } else if (loginForm.value.authType === "EMAIL") {
-        otpTxt += i18n.t("login.valid.isNullEmail");
-      } else {
-        otpTxt += i18n.t("login.valid.isNullSms");
-      }
-      if (resetPw.value.popYn) {
-        resetPw.value.validCheck.otp.otpNum = false;
-        resetPw.value.validCheck.otpValidTxt = i18n.t("login.valid.isNullEmail");
-      } else if (findId.value.popYn) {
-        findId.value.validCheck.otp.otpNum = false;
-        findId.value.validCheck.otpValidTxt = i18n.t("login.valid.isNullEmail");
-      } else if (authPop1.value.popYn) {
-        authPop1.value.validOtpKey = false;
-        authPop1.value.validOtpTxt = i18n.t("login.valid.isNullSms");
-      } else {
-        loginForm.value.validCheck.otp.otpNum = false;
-        loginForm.value.validCheck.otpValidTxt = otpTxt;
-      }
-    } else if (
-      dataObj.code === "2004" ||
-      dataObj.code === "2005" ||
-      dataObj.code === "2006" ||
-      dataObj.code === "2007" ||
-      dataObj.code === "2010"
-    ) {
-      // 2004: 접속허용IP아님 , 2005: 사업자 접속불가 상태, 2006: 사업자 계약 만료, 2007: 접속 계정 수 초과, 2010: 계정 잠김 (비밀번호 틀림 N 회) 5회 이상 비밀번호 실패
-      fnLoginFailConfirm(dataObj);
-    }
-    if (!useUtil.isNull(errorMessage)) {
-      // 토스트 함수 (success, info, error, warn, dark)
-      if (type === "findId" || type === "resetPw")
-        errorMessage += i18n.t("login.failMessage.2001");
-      else errorMessage += i18n.t("login.valid.isNull");
-      nextTick().then(() => {
-        $toast.error(errorMessage);
-      });
-    }
-  }
-
-  /**
-   * @SCRIPT
-   * 로그인 실패관련 토스트 & confirm 처리
-   */
-  function fnLoginFailConfirm(dataObj) {
-    let confirmMessage = "";
-    if (dataObj.code === "2002") confirmMessage = i18n.t("login.failMessage.2002");
-    else if (dataObj.code === "2004") confirmMessage = i18n.t("login.failMessage.2004");
-    else if (dataObj.code === "2005") confirmMessage = i18n.t("login.failMessage.2005");
-    else if (dataObj.code === "2006") confirmMessage = i18n.t("login.failMessage.2006");
-    else if (dataObj.code === "2007") confirmMessage = i18n.t("login.failMessage.2007");
-    else if (dataObj.code === "2010") confirmMessage = i18n.t("login.failMessage.2010");
-
-    let param = {
-      id: pageId,
-      title: i18n.t("common.popTitle"),
-      content: confirmMessage,
-      yes: {
-        text: i18n.t("common.confirm"),
-        isProc: true,
-        event: "",
-        param: {},
-      },
-    };
-    $eventBus.emit("OPEN_CONFIRM_POP_UP", param);
-  }
-
-  /**
-   * @SCRIPT
-   * 아이디 저장 체크 이벤트
-   */
-  function fnSaveId() {
-    if (checkbox.value) {
-      // 체크 시 저장
-      localStorage.setItem("saveId", loginForm.value.userId);
-    } else {
-      // 미체크 시 삭제
-      localStorage.removeItem("saveId");
-    }
-  }
-
-  /**
-   * @API
-   * 아이디 찾기에서 사업자명 & 이메일 주소 체크 API
-   * 비밀번호 초기화에서 사용자계정 & 이메일 주소 체크 API
-   */
-  function fnIdPwCheck(type) {
-    let _req = {};
-    if (type === "findId") {
-      //_req.tenantName = findId.value.tenantName,
-      _req.email = findId.value.email;
-    } else {
-      (_req.accountId = resetPw.value.userId), (_req.email = resetPw.value.email);
-    }
-
-    useAxios()
-      .post(apiUrl.findCheck, _req)
-      .then((res) => {
-        if (type === "findId") {
-          findId.value.btnTxt = i18n.t("common.sendReAuthNumber");
-        } else {
-          resetPw.value.btnTxt = i18n.t("common.sendReAuthNumber");
-        }
-
-        $toast.success(i18n.t("login.sendEmail"));
-        $log.debug("[login][fnIdPwCheck][success]");
-      })
-      .catch((error) => {
-        let errorData = error.response.data;
-        errorData.type = type;
-        fnLoginFail(errorData);
-        $log.debug("[login][fnIdPwCheck][error]");
-      })
-      .finally(() => {
-        $log.debug("[login][fnIdPwCheck][finished]");
-      });
-  }
-
-  /**
-   * @API
-   * 가입된 아이디 비밀번호 체크 API
-   */
-  function fnAuth(type) {
-    let _req = {};
-
-    if (type === "POPUP") {
-      _req.username = authPop1.value.userId;
-      _req.password = btoa(authPop1.value.passwd);
-    } else {
-      _req.username = loginForm.value.userId;
-      _req.password = btoa(loginForm.value.passwd);
-    }
-    // 아이디&비밀번호 validation체크 정상일 경우 아이디 비밀번호를 체크 하는 API를 진행한다.
-    useAxios()
-      .post(apiUrl.idPwCheck, _req)
-      .then((res) => {
-        if (type === "GOOGLE") {
-          fnLogin();
-        } else if (type === "POPUP") {
-          // if(useUtil.isNull(res.data.data.tenantName)) {
-          //   authPop1.value.businessName = ''
-          // } else {
-          //   authPop1.value.businessName = res.data.data.tenantName
-          // }
-
-          // 아이디 비밀번호 입력 영역 비활성화
-          authPop1.value.certifyYN = true;
-          //authPop1.value.agreeChk1 = true
-        } else {
-          // 아이디&비밀번호가 존재하여 이메일 발송을 진행합니다.
-          fnAuthSend(loginForm.value.btnTxtType, "loginForm");
-        }
-        $log.debug("[login][fnAuth][success]");
-      })
-      .catch((error) => {
-        let errorData = error.response.data;
-        errorData.type = type;
-        fnLoginFail(errorData);
-        $log.debug("[login][fnAuth][error]");
-      })
-      .finally(() => {
-        $log.debug("[login][fnAuth][finished]");
-      });
-  }
-
-  /**
-   * @API
-   * 가입된 아이디 비밀번호 체크가 정상 일 경우 인증번호 발송
-   * 이메일(EMAIL) & 문자(SMS)
-   */
-  function fnAuthSend(type, form) {
-    let _req = {};
-    if (form === "loginForm") {
-      (_req.username = loginForm.value.userId),
-        (_req.password = btoa(loginForm.value.passwd)),
-        (_req.mfaType = loginForm.value.authType);
-    } else {
-      (_req.username = authPop1.value.userId),
-        (_req.password = btoa(authPop1.value.passwd)),
-        (_req.mfaType = "SMS");
-    }
-    useAxios()
-      .post(apiUrl.otpSend, _req)
-      .then((res) => {
-        if (form === "loginForm") {
-          loginForm.value.btnTxt = i18n.t("login.authNumReSend");
-          loginForm.value.btnTxtType = "R";
-        } else {
-          authPop1.value.btnTxt = i18n.t("login.authNumReSend");
-          authPop1.value.btnTxtType = "R";
-        }
-
-        if (type === "S") {
-          if (form === "loginForm") {
-            if (loginForm.value.authType === "EMAIL") {
-              $toast.success(i18n.t("login.sendEmail"));
-            } else {
-              $toast.success(i18n.t("login.sendSms"));
-            }
-          } else {
-            $toast.success(i18n.t("login.sendSms"));
-          }
-        } else {
-          if (form === "loginForm") {
-            if (loginForm.value.authType === "EMAIL") {
-              $toast.success(i18n.t("login.sendReEmail"));
-            } else {
-              $toast.success(i18n.t("login.sendReSms"));
-            }
-          } else {
-            $toast.success(i18n.t("login.sendReSms"));
-          }
-        }
-        $log.debug("[login][fnAuthSend][success]");
-      })
-      .catch((error) => {
-        $log.debug("[login][fnAuthSend][error]");
-        // 에러 메시지 체크 팝업으로 변경
-        let param = {
-          id: pageId,
-          title: i18n.t("common.popTitle"),
-          content: i18n.t("login.sendFail"),
-          yes: {
-            text: i18n.t("common.confirm"),
-            isProc: true,
-            event: "",
-            param: {},
-          },
-        };
-        $eventBus.emit("OPEN_CONFIRM_POP_UP", param);
-        // let errorMessage = i18n.t('login.sendFail')
-        // errorMessage += error.response.data.message
-        // $toast.error(errorMessage)
-      })
-      .finally(() => {
-        $log.debug("[login][fnAuthSend][finished]");
-      });
-  }
-
-  const fnLoginSet = (__MSG) => {
-    let param = {
-      id: pageId,
-      title: "로그인",
-      content: __MSG,
-      yes: {
-        text: "확인",
-        isProc: true,
-        event: "FN_LOGIN",
-        param: "",
-      },
-      no: {
-        text: "취소",
-        isProc: false,
-      },
-    };
-    $eventBus.emit("OPEN_CONFIRM_POP_UP", param);
-  };
-  /**
-   * @API
-   * 최종 로그인 버튼 클릭 시 API
-   */
-  function fnLogin(__USERID, __USERPASS) {
-    // 파라미터 전달 값 [아이디, 비밀번호, otpNum, 브라우저정보]
-    //userId: loginForm.value.userId,
-    // let _req = {
-    //   username: loginForm.value.userId,
-    //   password: btoa(loginForm.value.passwd),
-    // };
-
-    localStorage.setItem("tempAccess", __USERID);
-
-    if (__USERID == "admin" && __USERPASS == "1234") {
-      useUtil.setPageMove("/view/media/newsList");
-    } else {
-      fnLoginSet("비밀번호가 맞지 않습니다. 확인해주세요.");
-    }
-    // useAxios()
-    //   .post(apiUrl.otpCheck, _req)
-    //   .then((res) => {
-    //     loginInfo.value = res.data.data;
-    //     useAuthStore().setAccessToken(loginInfo.value.accessToken);
-    //     useAuthStore().setRefreshToken(loginInfo.value.refreshToken);
-
-    //     // OTP key체크 성공 후 개인정보에 대한 API를 호출 한다.
-    //     fnServiceModeCheck();
-    //     $log.debug("[login][fnLogin][success]");
-    //   })
-    //   .catch((error) => {
-    //     $log.debug("[login][fnLogin][error]");
-    //     let errorData = error.response.data;
-    //     errorData.type = "fnLogin";
-    //     fnLoginFail(errorData);
-    //   })
-    //   .finally(() => {
-    //     $log.debug("[login][fnLogin][finished]");
-    //   });
-  }
-
-  /**
-   * @API
-   * 최종 로그인 전 점검공지에 대한 정보를 가져온다.
-   */
-  function fnServiceModeCheck() {
-    useAxios()
-      .get(useApi.getServiceMode)
-      .then((res) => {
-        $log.debug("[login][fnServiceModeCheck][success]");
-        let data = res.data.data;
-        systemInfo.value.mode = data.mode;
-        fnMyInfo();
-      })
-      .catch((error) => {
-        $log.debug("[login][fnServiceModeCheck][error]");
-        useErrorHandler().fnSetCommErrorHandle(error);
-      })
-      .finally(() => {
-        $log.debug("[login][fnServiceModeCheck][finished]");
-      });
-  }
-  /**
-   * @API
-   * 최종 로그인 버튼 클릭 후 성공 시 토큰값을 통해 개인정보 API 호출
-   */
-  function fnMyInfo() {
-    useAxios()
-      .get(apiUrl.myInfo)
-      .then((res) => {
-        let dataObj = {};
-        dataObj = res.data.data;
-        dataObj.accessToken = useAuthStore().getAccessToken;
-        dataObj.refreshToken = useAuthStore().getRefreshToken;
-        useAuthStore().setServiceMode(systemInfo.value.mode);
-
-        useAuthStore().setAuth(dataObj);
-        // 아이디 저장 여부 체크
-        fnSaveId();
-        let accountValue = useAuthStore().getAccountRole.charAt(0).toUpperCase();
-        // 첫화면 redirect_page URL로 설정
-        // 초기 비밀번호 사용
-        if (useAuthStore().getFirstLoginYn === "Y") {
-          // 최초로그인
-          initPw.value.popYn = true;
-        } else if (useAuthStore().getPwExpiredYN === "Y") {
-          // 비밀번호 3개월 만료
-          let param = {
-            id: pageId,
-            title: i18n.t("common.popTitle"),
-            content: i18n.t("login.failMessage.2009"),
-            yes: {
-              text: i18n.t("common.confirm"),
-              isProc: true,
-              event: "INIT_PASSWORD", // 확인 클릭 시 비밀번호 변경 팝업 활성화
-              param: {},
-            },
-            no: {
-              text: i18n.t("common.skip"),
-              isProc: true,
-              event: "SET_LOGIN", // 건너뛰기 클릭 시 로그인 처리
-              param: {},
-            },
-          };
-          $eventBus.emit("OPEN_CONFIRM_POP_UP", param);
-        } else if (useAuthStore().getTermsArgYN === "N") {
-          // 필수약관동의여부
-          isShowAgrNPop.value = true;
-          nextTick().then(() => {
-            isAgrNPop.value = true;
-          });
-        } else {
-          if (systemInfo.value.mode === "INACTIVE") {
-            // 점검모드일 경우 점검모드 페이지로 이동
-            if (accountValue === "S") {
-              useUtil.setPageMove("/view/home/dashboard");
-            } else {
-              useUtil.setPageMove("/view/home/serviceMode");
-            }
-          } else {
-            if (accountValue === "A" || accountValue === "S") {
-              useUtil.setPageMove("/view/home/dashboard");
-            } else {
-              useUtil.setPageMove("/view/home/tenantDashboard");
-            }
-          }
-        }
-        $log.debug("[login][fnMyInfo][success]");
-      })
-      .catch((error) => {
-        $log.debug("[login][fnMyInfo][error]");
-        useErrorHandler().fnSetCommErrorHandle(error);
-      })
-      .finally(() => {
-        $log.debug("[login][fnMyInfo][finished]");
-      });
-  }
-
-  /**
-   * @API
-   * 최초 비밀번호 변경 API 호출
-   */
-  function fnPasswdChange() {
-    let _req = {
-      newPassword: btoa(initPw.value.passwd2),
-    };
-
-    useAxios()
-      .post(apiUrl.myInfoUpdate, _req)
-      .then((res) => {
-        localStorage.removeItem("authStore");
-        // 세션 초기화 및 로그인 화면 이동
-        useUtil.setPageMove("/");
-        $log.debug("[login][fnPasswdChange][success]");
-      })
-      .catch((error) => {
-        $log.debug("[login][fnPasswdChange][error]");
-        let errorData = error.response.data;
-        errorData.type = "fnPasswdChange";
-        fnLoginFail(errorData);
-      })
-      .finally(() => {
-        $log.debug("[login][fnPasswdChange][finished]");
-      });
-  }
-
-  /**
-   * @API
-   * 로그인 FOOTER 약관 조회 API
-   */
-  function fnPrivacy(type) {
-    let _req = {
-      termsType: useUtil.nvl(type, null),
-    };
-    useAxios()
-      .get(apiUrl.loginTerms, { params: _req })
-      .then((res) => {
-        let dataObj = res.data.data;
-        privacyDetail.value.kr.title = dataObj.termsTitle;
-        privacyDetail.value.kr.contents = dataObj.termsCont;
-
-        privacyDetail.value.en.title = dataObj.termsTitleEn;
-        privacyDetail.value.en.contents = dataObj.termsContEn;
-        privacyPop.value = true;
-      })
-      .catch((error) => {
-        $log.debug("[login][fnPrivacy][error]");
-        useErrorHandler().fnSetCommErrorHandle(error, fnPrivacy);
-      })
-      .finally(() => {
-        $log.debug("[login][fnPrivacy][finished]");
-      });
-  }
-  /**
-   * @SCRIPT
-   * 아이디 & 비밀번호 & otp 값의 유효성 검사 체크 및 로그인 버튼 활성화 이벤트
-   */
-  function fnValidCheck(input) {
-    if (_includes(input, "main_")) {
-      let commonValidCheck = {
-        inputCheck: false,
-        otpCheck: false,
-      };
-      if (input === "main_userId") {
-        if (
-          useUtil.isNull(loginForm.value.userId) ||
-          !/^[a-zA-Z0-9._-]{1,20}$/.test(loginForm.value.userId)
-        ) {
-          loginForm.value.validCheck.input.userId = false;
-          loginForm.value.validCheck.inputValidTxt = i18n.t("login.valid.isNull");
-        } else {
-          loginForm.value.validCheck.input.userId = true;
-          if (!useUtil.isNull(loginForm.value.passwd)) {
-            fnValidCheck("main_passwd");
-          }
-        }
-      } else if (input === "main_passwd") {
-        if (
-          useUtil.isNull(loginForm.value.passwd) ||
-          !/^(?=.*[a-zA-Z])(?=.*[!@#$%^*+=-])(?=.*[0-9]).{8,30}$/i.test(
-            loginForm.value.passwd
-          )
-        ) {
-          //if(useUtil.isNull(loginForm.value.passwd)) {
-          loginForm.value.validCheck.input.passwd = false;
-          loginForm.value.validCheck.inputValidTxt = i18n.t("login.valid.isNull");
-        } else {
-          loginForm.value.validCheck.input.passwd = true;
-        }
-      } else if (input === "main_otpNum") {
-        loginForm.value.otpNum = useValid.p5gNumCheck(loginForm.value.otpNum, "otp");
-
-        if (
-          useUtil.isNull(loginForm.value.otpNum) ||
-          loginForm.value.otpNum.length <= 5
-        ) {
-          loginForm.value.validCheck.otp.otpNum = false;
-          if (loginForm.value.authType === "GOOGLE") {
-            loginForm.value.validCheck.otpValidTxt = i18n.t("login.valid.isNullOtp");
-          } else if (loginForm.value.authType === "EMAIL") {
-            loginForm.value.validCheck.otpValidTxt = i18n.t("login.valid.isNullEmail");
-          } else {
-            loginForm.value.validCheck.otpValidTxt = i18n.t("login.valid.isNullSms");
-          }
-        } else {
-          loginForm.value.validCheck.otp.otpNum = true;
-        }
-      }
-      loginForm.value.validCheck.inputErrorCheck = _every(
-        loginForm.value.validCheck.input,
-        (value) => value === true
-      );
-      // 전체 항목에 대한 validation이 정상일 경우 login버튼 활성화
-      if (
-        !useUtil.isNull(loginForm.value.userId) &&
-        !useUtil.isNull(loginForm.value.passwd) &&
-        !useUtil.isNull(loginForm.value.otpNum)
-      ) {
-        commonValidCheck.inputCheck = _every(
-          loginForm.value.validCheck.input,
-          (value) => value === true
-        );
-        commonValidCheck.otpCheck = _every(
-          loginForm.value.validCheck.otp,
-          (value) => value === true
-        );
-      }
-      loginForm.value.validCheck.loginValidCheck = _every(
-        commonValidCheck,
-        (value) => value === true
-      );
-    } else if (_includes(input, "createOtp_")) {
-      if (input === "createOtp_userId") {
-        if (
-          useUtil.isNull(authPop1.value.userId) ||
-          !/^[a-zA-Z0-9._-]{1,20}$/.test(authPop1.value.userId)
-        ) {
-          authPop1.value.validCheck.userId = false;
-          authPop1.value.validTxt = i18n.t("login.valid.isNull");
-        } else {
-          authPop1.value.validCheck.userId = true;
-          if (!useUtil.isNull(authPop1.value.passwd)) {
-            fnValidCheck("createOtp_passwd");
-          }
-        }
-      } else if (input === "createOtp_passwd") {
-        if (
-          useUtil.isNull(authPop1.value.passwd) ||
-          !/^(?=.*[a-zA-Z])(?=.*[!@#$%^*+=-])(?=.*[0-9]).{8,30}$/i.test(
-            authPop1.value.passwd
-          )
-        ) {
-          //if(useUtil.isNull(authPop1.value.passwd)) {
-          authPop1.value.validCheck.passwd = false;
-          authPop1.value.validTxt = i18n.t("login.valid.isNull");
-        } else {
-          authPop1.value.validCheck.passwd = true;
-        }
-      } else if (input === "createOtp_otpNum1") {
-        authPop1.value.otpNum = useValid.p5gNumCheck(authPop1.value.otpNum, "otp");
-        if (useUtil.isNull(authPop1.value.otpNum) || authPop1.value.otpNum.length <= 5) {
-          authPop1.value.validOtpKey = false;
-          authPop1.value.errorCheck = false;
-          authPop1.value.validOtpTxt = i18n.t("login.valid.isNullSms");
-        } else {
-          authPop1.value.validOtpKey = true;
-          authPop1.value.errorCheck = true;
-          authPop1.value.applyBtn = true;
-        }
-      } else if (input === "createOtp_otpNum") {
-        authPop2.value.otpNum = useValid.p5gNumCheck(authPop2.value.otpNum, "otp");
-
-        if (useUtil.isNull(authPop2.value.otpNum) || authPop2.value.otpNum.length <= 5) {
-          authPop2.value.validOtpKey = false;
-          authPop2.value.errorCheck = false;
-          if (loginForm.value.authType === "GOOGLE") {
-            authPop2.value.validOtpTxt = i18n.t("login.valid.isNullOtp");
-          } else if (loginForm.value.authType === "EMAIL") {
-            authPop2.value.validOtpTxt = i18n.t("login.valid.isNullEmail");
-          } else {
-            authPop2.value.validOtpTxt = i18n.t("login.valid.isNullSms");
-          }
-        } else {
-          authPop2.value.validOtpKey = true;
-          authPop2.value.errorCheck = true;
-        }
-      }
-      authPop1.value.errorCheck = _every(
-        authPop1.value.validCheck,
-        (value) => value === true
-      );
-    } else if (_includes(input, "findId_")) {
-      let validAllCheck = {
-        inputCheck: false,
-        otpCheck: false,
-      };
-      // if(input === 'findId_tenantName') {
-      //   if(useUtil.isNull(findId.value.tenantName)) {
-      //     findId.value.validCheck.input.tenantName = false
-      //     findId.value.validCheck.inputValidTxt = i18n.t('login.findId.valid.isNullTenantName')
-      //   } else {
-      //     findId.value.validCheck.input.tenantName = true
-      //     if(!useUtil.isNull(findId.value.email)) {
-      //       fnValidCheck('findId_email')
-      //     }
-      //   }
-      // } else
-      if (input === "findId_email") {
-        if (useUtil.isNull(findId.value.email)) {
-          findId.value.validCheck.input.email = false;
-          findId.value.validCheck.inputValidTxt = i18n.t(
-            "login.findId.valid.isNullEmail"
-          );
-        } else if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(findId.value.email)) {
-          findId.value.validCheck.input.email = false;
-          findId.value.validCheck.inputValidTxt = i18n.t(
-            "login.findId.valid.isTypeEmail"
-          );
-        } else {
-          findId.value.validCheck.input.email = true;
-        }
-      } else if (input === "findId_otpNum") {
-        findId.value.otpNum = useValid.p5gNumCheck(findId.value.otpNum, "otp");
-
-        if (useUtil.isNull(findId.value.otpNum) || findId.value.otpNum.length <= 5) {
-          findId.value.validCheck.otp.otpNum = false;
-          findId.value.validCheck.otpValidTxt = i18n.t("login.findId.valid.isNullOtp");
-        } else {
-          findId.value.validCheck.otp.otpNum = true;
-        }
-      }
-      // tenantName & email validation check
-      findId.value.validCheck.inputErrorCheck = _every(
-        findId.value.validCheck.input,
-        (value) => value === true
-      );
-      //!useUtil.isNull(findId.value.tenantName) &&
-      if (!useUtil.isNull(findId.value.email) && !useUtil.isNull(findId.value.otpNum)) {
-        validAllCheck.inputCheck = findId.value.validCheck.inputErrorCheck;
-        validAllCheck.otpCheck = findId.value.validCheck.otp.otpNum;
-      }
-      findId.value.validCheck.findIdValidCheck = _every(
-        validAllCheck,
-        (value) => value === true
-      );
-    } else if (_includes(input, "resetPw_")) {
-      let validAllCheck = {
-        inputCheck: false,
-        otpCheck: false,
-      };
-
-      if (input === "resetPw_userId") {
-        if (useUtil.isNull(resetPw.value.userId)) {
-          resetPw.value.validCheck.input.userId = false;
-          resetPw.value.validCheck.inputValidTxt = i18n.t(
-            "login.resetPasswd.valid.isNullUserId"
-          );
-        } else {
-          resetPw.value.validCheck.input.userId = true;
-          if (!useUtil.isNull(resetPw.value.email)) {
-            fnValidCheck("resetPw_email");
-          }
-        }
-      } else if (input === "resetPw_email") {
-        if (useUtil.isNull(resetPw.value.email)) {
-          resetPw.value.validCheck.input.email = false;
-          resetPw.value.validCheck.inputValidTxt = i18n.t(
-            "login.resetPasswd.valid.isNullEmail"
-          );
-        } else if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(resetPw.value.email)) {
-          resetPw.value.validCheck.input.email = false;
-          resetPw.value.validCheck.inputValidTxt = i18n.t(
-            "login.resetPasswd.valid.isTypeEmail"
-          );
-        } else {
-          resetPw.value.validCheck.input.email = true;
-        }
-      } else if (input === "resetPw_otpNum") {
-        resetPw.value.otpNum = useValid.p5gNumCheck(resetPw.value.otpNum, "otp");
-
-        if (useUtil.isNull(resetPw.value.otpNum) || resetPw.value.otpNum.length <= 5) {
-          resetPw.value.validCheck.otp.otpNum = false;
-          resetPw.value.validCheck.otpValidTxt = i18n.t(
-            "login.resetPasswd.valid.isNullOtp"
-          );
-        } else {
-          resetPw.value.validCheck.otp.otpNum = true;
-        }
-      }
-      // tenantName & email validation check
-      resetPw.value.validCheck.inputErrorCheck = _every(
-        resetPw.value.validCheck.input,
-        (value) => value === true
-      );
-
-      if (
-        !useUtil.isNull(resetPw.value.userId) &&
-        !useUtil.isNull(resetPw.value.email) &&
-        !useUtil.isNull(resetPw.value.otpNum)
-      ) {
-        validAllCheck.inputCheck = resetPw.value.validCheck.inputErrorCheck;
-        validAllCheck.otpCheck = resetPw.value.validCheck.otp.otpNum;
-      }
-      resetPw.value.validCheck.resetPwValidCheck = _every(
-        validAllCheck,
-        (value) => value === true
-      );
-    } else {
-      if (input === "initPw_passwd") {
-        let digits1 = useAuthStore().getAuth.phoneNumber.replace(/\D/g, "");
-        let digits2 = initPw.value.passwd.replace(/\D/g, "");
-        let lastEightDigits1 = digits1.slice(-8);
-        let lastEightDigits2 = digits2.slice(-8);
-
-        if (useUtil.isNull(initPw.value.passwd)) {
-          initPw.value.validCheck.passwd = false;
-          initPw.value.errorTxt = i18n.t("login.valid.isNullNewPassword");
-        } else if (_includes(initPw.value.passwd, useAuthStore().getAuth.accountId)) {
-          // 아이디는 비밀번호로 사용할 수 없습니다.
-          initPw.value.validCheck.passwd = false;
-          initPw.value.errorTxt = i18n.t(
-            "common.header.myInfoUpdateModal.valid.includeId"
-          );
-        } else if (lastEightDigits1 === lastEightDigits2) {
-          // 연락처와 유사한 비밀번호는 사용할 수 없습니다.
-          initPw.value.validCheck.passwd = false;
-          initPw.value.errorTxt = i18n.t(
-            "common.header.myInfoUpdateModal.valid.includePhone"
-          );
-        } else if (/(.)\1{2,}/.test(initPw.value.passwd)) {
-          // 3자리 이상 연속 숫자, 문자는 사용 불가합니다.
-          initPw.value.validCheck.passwd = false;
-          initPw.value.errorTxt = i18n.t(
-            "common.header.myInfoUpdateModal.valid.continuousUse"
-          );
-        } else if (
-          !/^(?=.*[a-zA-Z])(?=.*[!@#$%^*+=-])(?=.*[0-9]).{8,30}$/i.test(
-            initPw.value.passwd
-          )
-        ) {
-          // 비밀번호는 문자,숫자,특수문자 조합 8~30자리로입력
-          initPw.value.validCheck.passwd = false;
-          initPw.value.errorTxt = i18n.t(
-            "common.header.myInfoUpdateModal.valid.validPassword"
-          );
-        } else {
-          initPw.value.validCheck.passwd = true;
-          if (!useUtil.isNull(initPw.value.passwd2)) {
-            fnValidCheck("initPw_passwd2");
-          }
-        }
-      } else {
-        if (initPw.value.passwd != initPw.value.passwd2) {
-          // 신규비밀번호가 일치 하지 않습니다.
-          initPw.value.validCheck.passwd2 = false;
-          initPw.value.errorTxt = i18n.t(
-            "common.header.myInfoUpdateModal.valid.missmatchPassword"
-          );
-        } else {
-          initPw.value.validCheck.passwd2 = true;
-        }
-      }
-      if (!useUtil.isNull(initPw.value.passwd) && !useUtil.isNull(initPw.value.passwd2)) {
-        initPw.value.passwdCheck = _every(
-          initPw.value.validCheck,
-          (value) => value === true
-        );
-      }
-    }
-  }
-</script>