diff --git a/package.json b/package.json index 1e5a11b..3cc8e97 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,11 @@ "scripts": { "dev": "vite", "build": "vite build", + "build:hot": "vite build", "build:sta": "vite build --mode stage", - "preview": "vite preview" + "preview": "vite preview", + "postbuild:sta" : "scp -r ./dist/* root@207.148.89.145:/www/wwwroot/utel.zltest.com.tw/public/home", + "postbuild:hot" : "scp -r ./dist/* root@167.179.106.36:/www/wwwroot/pro.utel.vip/app/public/home" }, "dependencies": { "@line/liff": "^2.22.4", diff --git a/src/router/index.js b/src/router/index.js index a63ff10..91aba77 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,7 +1,5 @@ import { createRouter, createWebHistory } from "vue-router"; -import store from "@/store"; - import NProgress from "nprogress"; import "nprogress/nprogress.css"; @@ -146,7 +144,9 @@ router.beforeEach((to, from, next) => { if (to.path !== "/" && to.path !== "/login" && to.path !== "/actlogin" && to.path !== "/register") { if (!sessionStorage.getItem("token")) { + console.log('to',to); sessionStorage.setItem("redirect", to.fullPath); + sessionStorage.setItem("refer", to.query.cardid); return next("/actlogin"); } diff --git a/src/utils/card/card0.js b/src/utils/card/card0.js index b253175..ac50976 100644 --- a/src/utils/card/card0.js +++ b/src/utils/card/card0.js @@ -349,7 +349,7 @@ function genCard(vcard) { "action": { "type": "uri", "label": "action", - "uri": "${import.meta.env.VITE_APP_BASE_URL}/home/address?act=add&cardid=${vcard.user_id}" + "uri": "https://liff.line.me/${import.meta.env.VITE_APP_LINE_LIFF_ID}/address?act=add&cardid=${vcard.user_id}" } } ], diff --git a/src/utils/card/card1.js b/src/utils/card/card1.js index 90f9e0c..fa02d04 100644 --- a/src/utils/card/card1.js +++ b/src/utils/card/card1.js @@ -315,7 +315,7 @@ function genCard(vcard) { "action": { "type": "uri", "label": "收藏名片", - "uri": "${import.meta.env.VITE_APP_BASE_URL}/home/address?act=add&cardid=${vcard.user_id}" + "uri": "https://liff.line.me/${import.meta.env.VITE_APP_LINE_LIFF_ID}/address?act=add&cardid=${vcard.user_id}" }, "color": "#c73f6d", "height": "sm", diff --git a/src/utils/card/card2.js b/src/utils/card/card2.js index b49975d..fd35ed3 100644 --- a/src/utils/card/card2.js +++ b/src/utils/card/card2.js @@ -305,7 +305,7 @@ function genCard(vcard) { "action": { "type": "uri", "label": "收藏名片", - "uri": "${import.meta.env.VITE_APP_BASE_URL}/home/address?act=add&cardid=${vcard.user_id}" + "uri": "https://liff.line.me/${import.meta.env.VITE_APP_LINE_LIFF_ID}/address?act=add&cardid=${vcard.user_id}" }, "color": "#464757", "height": "sm", diff --git a/src/utils/card/card3.js b/src/utils/card/card3.js index aca150b..4200cce 100644 --- a/src/utils/card/card3.js +++ b/src/utils/card/card3.js @@ -234,7 +234,7 @@ function genCard(vcard) { "action": { "type": "uri", "label": "action", - "uri": "${import.meta.env.VITE_APP_BASE_URL}/home/address?act=add&cardid=${vcard.user_id}" + "uri": "https://liff.line.me/${import.meta.env.VITE_APP_LINE_LIFF_ID}/address?act=add&cardid=${vcard.user_id}" } } ] diff --git a/src/views/Address/index.vue b/src/views/Address/index.vue index f0f1728..b5f4e3e 100644 --- a/src/views/Address/index.vue +++ b/src/views/Address/index.vue @@ -26,13 +26,10 @@ const selectOpt2 = ref([{ text: '重要', value: '重要' }, { text: '普通', v const addressList = ref([]); -onBeforeMount(async () => { +onMounted(async () => { if (route.query.act === 'add') { let res = await addUserFavi({ uf_user_id: route.query.cardid }); } -}); - -onMounted(async () => { initData(); getCateList(); }); diff --git a/src/views/Home/index.vue b/src/views/Home/index.vue index 005ac51..b96314a 100644 --- a/src/views/Home/index.vue +++ b/src/views/Home/index.vue @@ -30,6 +30,29 @@ const imageUrl = ref(import.meta.env.VITE_APP_BASE_URL); const is_due = ref(false); +async function handleBindCard(uid, verify) { + //詢問是否綁定 + showConfirmDialog({ + title: "卡片綁定", + message: "確認是否綁定這張卡片", + confirmButtonText: "確認", + cancelButtonText: "取消", + }) + .then(async () => { + //確認綁定 + let bindRes = await bindCard({ + uid, + verify, + }); + if (bindRes.code === 200) { + showSuccessToast("綁定成功"); + } else { + showFailToast("綁定失敗"); + } + }) + .catch(() => { }); +} + onBeforeMount(async () => { const liff = window.liff; try { @@ -49,33 +72,16 @@ onBeforeMount(async () => { if (loginRes.code === 200) { if (route.query.act === "openright") { - showToast("您已經是本站會員"); + if (route.query.verify) { + handleBindCard(loginRes.data.uid,route.query.verify); + } } sessionStorage.setItem("token", loginRes.data.token); sessionStorage.setItem("uid", loginRes.data.uid); } else if (loginRes.code === 202) { // 未綁定卡片 if (route.query.act === "openright") { if (route.query.verify) { - //詢問是否綁定 - showConfirmDialog({ - title: "卡片綁定", - message: "確認是否綁定這張卡片", - confirmButtonText: "確認", - cancelButtonText: "取消", - }) - .then(async () => { - //確認綁定 - let bindRes = await bindCard({ - uid: loginRes.data.uid, - verify: route.query.verify, - }); - if (bindRes.code === 200) { - showSuccessToast("綁定成功"); - } else { - showToast.fail("綁定失敗"); - } - }) - .catch(() => { }); + handleBindCard(loginRes.data.uid,route.query.verify); } } @@ -93,7 +99,7 @@ onBeforeMount(async () => { }); return; - }else if(route.query.user_id){ //綁定lineid + } else if (route.query.user_id) { //綁定lineid //詢問是否綁定 showConfirmDialog({ title: "會員綁定", @@ -198,7 +204,7 @@ const onUpdateValue = (newValue) => { cancelButtonText: "取消", }).then(() => { let res = userStore.setSendWithAd(newValue) - console.log('aaa',userInfo.value.is_send_ad) + console.log('aaa', userInfo.value.is_send_ad) }).catch(() => { // on cancel @@ -258,17 +264,20 @@ const doCopyUid = () => { }; const doShare = () => { - toClipboard(`https://liff.line.me/${import.meta.env.VITE_APP_LINE_LIFF_ID}/?aid=${userInfo.value.user_id}`) + toClipboard(`https://liff.line.me/${import.meta.env.VITE_APP_LINE_LIFF_ID}/?aid=${userInfo.value.agent_code}`) showToast("已放入剪貼簿"); }; const bindTggo = () => { + let url; if (userInfo.value.uniqid) { - let url = `https://www.tggo.com.tw/u.cgi?&mnm=mybinding&ncode=${userInfo.value.uniqid}&name=${userInfo.value.real_name}&openExternalBrowser=1`; - window.open(url, "_blank"); - return; + url = `https://www.tggo.com.tw/u.cgi?&mnm=mybinding&ncode=${userInfo.value.uniqid}&name=${userInfo.value.real_name}&openExternalBrowser=1`; + } else { + url = `https://www.tggo.com.tw/u.cgi?user=1111&from=portal&openExternalBrowser=1`; } - showToast('您的帳號尚未綁定感應卡'); + window.open(url, "_blank"); + return; + // showToast('您的帳號尚未綁定感應卡'); }; const handleLogout = () => { diff --git a/src/views/Member/index.vue b/src/views/Member/index.vue index 10be76c..5621fa2 100644 --- a/src/views/Member/index.vue +++ b/src/views/Member/index.vue @@ -52,7 +52,7 @@ const tabItemObj = ref([ const beforeChange = (index) => { return new Promise((resolve) => { if (index === 1) { - if (form.value.level === 0) { + if (form.value.level === 0 && form.value.status !== 2) { showConfirmDialog({ title: '會員資格開通提醒', message: '本功能為標準型以上之付費功能,是否前往立即開通?', @@ -709,19 +709,23 @@ const handleChangeTplSubmit = async () => { - -
檔案裁切上傳
-
+ +
+
檔案裁切上傳
- - 裁切確認 - +
+ + 取消 + + + 裁切確認 + +
-
@@ -834,4 +838,29 @@ const handleChangeTplSubmit = async () => { } } } + +.cropper-section { + margin: 0 auto; + position: fixed; + text-align: center; + top: 50px; + height: 350px; + width: 100%; + max-width: 500px; + background: hsl(0, 0%, 87%); + z-index: 8888; + + .crop-area { + margin: 5 auto; + width: 100%; + // height: 330px; + } + + .crop-btn { + text-align: center; + display: flex; + justify-content: space-between; + } +} + \ No newline at end of file diff --git a/src/views/Register/index.vue b/src/views/Register/index.vue index 6e6e607..f93ca21 100644 --- a/src/views/Register/index.vue +++ b/src/views/Register/index.vue @@ -21,7 +21,7 @@ const route = useRoute(); const form = ref({ verify: route.query.verify || null, user_id: route.query.user_id || null, - aid: route.query.aid || undefined, + aid: route.query.aid || null, }); const title = ref("註冊成為會員"); @@ -130,10 +130,9 @@ const onSubmit = async () => { line_name: profile.displayName, line_picture: profile.pictureUrl, token: id_token, + refer: sessionStorage.getItem("refer") || null, ...form.value, }); - - console.log("regRes.code",regRes) if (regRes.code === 500) { if (liff.isLoggedIn()) { @@ -145,7 +144,10 @@ const onSubmit = async () => { showToast("註冊成功"); sessionStorage.setItem("token", regRes.data.token); sessionStorage.setItem("uid", regRes.data.uid); - return router.push("/"); + let redirect = sessionStorage.getItem("redirect") || "/"; + sessionStorage.removeItem("redirect"); + sessionStorage.removeItem("refer"); + return router.push(redirect); } else { showToast("註冊失敗"); return; diff --git a/src/views/Register/index.vue.bak b/src/views/Register/index.vue.bak deleted file mode 100644 index 8bb3519..0000000 --- a/src/views/Register/index.vue.bak +++ /dev/null @@ -1,344 +0,0 @@ - - - - -