Commit 50f8bbfb authored by Zhang Xiaojie's avatar Zhang Xiaojie

Merge branch 'dev' of gitlab.33.cn:chenqikuai/fns_front_2 into dev

parents aea996db 4cc48de1
...@@ -18,13 +18,13 @@ import { getMasterIdFromDisplayMsg, getTargetIdFromDisplayMsg } from "./utils/ch ...@@ -18,13 +18,13 @@ import { getMasterIdFromDisplayMsg, getTargetIdFromDisplayMsg } from "./utils/ch
import isChattingWith from "./utils/isChattingWith"; import isChattingWith from "./utils/isChattingWith";
import { ChatMessageTypes } from "@/types/chatMessageTypes" import { ChatMessageTypes } from "@/types/chatMessageTypes"
import { chatCardTimeStamp } from "./store/chatCardStore"; import { chatCardTimeStamp } from "./store/chatCardStore";
import { getVisitorId } from "./utils/visitorId";
import { getUserMsg } from "./utils/userMsg"; import { getUserMsg } from "./utils/userMsg";
import { chatLoginActionMark, eLoginType } from "./store/chatStore"; import { chatLoginActionMark, eLoginType } from "./store/chatStore";
import { Toast } from "vant"; import { Toast } from "vant";
import router from "./router"; import router from "./router";
import { useRoute } from "vue-router"; import { useRoute } from "vue-router";
import Bridge from '@/utils/jsBridge2' import Bridge from '@/utils/jsBridge2'
import { chatAuthCheck } from "./utils/authCheck";
export default defineComponent({ export default defineComponent({
...@@ -69,7 +69,7 @@ export default defineComponent({ ...@@ -69,7 +69,7 @@ export default defineComponent({
watch(chatLoginActionMark, (newMark) => { watch(chatLoginActionMark, (newMark) => {
if (newMark === eLoginType.login) { if (newMark === eLoginType.login) {
connect(); chatAuthCheck(connect)
} else if (newMark === eLoginType.logout) { } else if (newMark === eLoginType.logout) {
connectionState.connection?.disconnect(); connectionState.connection?.disconnect();
} }
...@@ -100,13 +100,13 @@ export default defineComponent({ ...@@ -100,13 +100,13 @@ export default defineComponent({
onMounted(() => { onMounted(() => {
if (getUserMsg()) { if (getUserMsg()) {
connect(); chatAuthCheck(connect)
} }
}) })
watch(() => connectionState.error, () => { watch(() => connectionState.error, () => {
if (connectionState.error) { if (connectionState.error) {
connect(); chatAuthCheck(connect);
} }
}) })
......
import { eRole } from '@/types/roleType'
import { chatAuthCheck } from '@/utils/authCheck'
import { getUserMsg } from '@/utils/userMsg' import { getUserMsg } from '@/utils/userMsg'
import { Toast } from 'vant'
import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router' import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'
const routes: Array<RouteRecordRaw> = [ const routes: Array<RouteRecordRaw> = [
...@@ -36,7 +39,7 @@ const routes: Array<RouteRecordRaw> = [ ...@@ -36,7 +39,7 @@ const routes: Array<RouteRecordRaw> = [
path: '/chatList', path: '/chatList',
name: 'ChatList', name: 'ChatList',
meta: { meta: {
needAuth: true needAuth: true,
}, },
component: () => component: () =>
import( import(
...@@ -233,7 +236,21 @@ router.beforeEach((to, from, next) => { ...@@ -233,7 +236,21 @@ router.beforeEach((to, from, next) => {
const userMsg = getUserMsg() const userMsg = getUserMsg()
if (to.meta.needAuth) { if (to.meta.needAuth) {
if (!!userMsg) { if (!!userMsg) {
if (userMsg.role === eRole.user) next()
else if (userMsg.role === eRole.staff) {
if (to.name === 'ChatList') {
chatAuthCheck(
() => {
next() next()
},
() => {
Toast('由于您现在是不在岗状态所以无法进入聊天!')
},
)
}else{
next();
}
}
} else { } else {
next({ name: 'Login' }) next({ name: 'Login' })
} }
......
import baseAxios from '../index'
export function getStaffOnDutyStatus() {
return baseAxios<boolean>({
url: '/staff/on_duty',
method: 'get',
})
}
import router from '@/router' import router from '@/router'
import { getStaffOnDutyStatus } from '@/service/StaffService'
import { eRole } from '@/types/roleType'
import { getUserMsg } from './userMsg' import { getUserMsg } from './userMsg'
export function authCheck(cb: Function) { export function authCheck(cb: Function) {
...@@ -9,3 +11,18 @@ export function authCheck(cb: Function) { ...@@ -9,3 +11,18 @@ export function authCheck(cb: Function) {
}) })
} }
} }
export async function chatAuthCheck(cb: Function, cb2?: Function) {
const msg = getUserMsg()
if (msg?.role === eRole.user) return true
else if (msg?.role === eRole.staff) {
const ret = await getStaffOnDutyStatus()
if (ret.code === 200 && ret.data) {
cb()
} else {
cb2 && cb2()
}
} else {
cb2 && cb2()
}
}
<template> <template>
<div class="px-5"> <div class="px-5">
<pwd-setting <pwd-setting
:phone="Phone()" :phone="$route.query.phone"
:sendSmsFunc="sendSmsFunc" :sendSmsFunc="sendSmsFunc"
:setPwdFunc="setPwdFunc" :setPwdFunc="setPwdFunc"
/> />
...@@ -17,14 +17,14 @@ export default defineComponent({ ...@@ -17,14 +17,14 @@ export default defineComponent({
inject: ["sendSmsFunc", "setPwdFunc"], inject: ["sendSmsFunc", "setPwdFunc"],
created(){ created(){
console.log(this.$route.query.phone,'router'); console.log(this.$route.query.phone,'router');
this.Phone() // this.Phone()
}, },
methods: { methods: {
Phone(){ // Phone(){
const phone =getUserMsg()?.userInfo.phone+'' // const phone =getUserMsg()?.userInfo.phone+''
console.log(phone,'phone'); // console.log(phone,'phone');
return phone // return phone
} // }
}, },
}); });
</script> </script>
...@@ -173,7 +173,8 @@ export default defineComponent({ ...@@ -173,7 +173,8 @@ export default defineComponent({
return; return;
} }
} else { } else {
const ret = await getMsgFromAddress([target])
const ret = await getMsgFromAddress([route.query.targetId as string])
callPhone.value = ret[0].phone; callPhone.value = ret[0].phone;
} }
showCall.value = true; showCall.value = true;
......
...@@ -16,7 +16,11 @@ ...@@ -16,7 +16,11 @@
class="overflow-ellipsis overflow-hidden" class="overflow-ellipsis overflow-hidden"
v-for="item in list" v-for="item in list"
:key="item.uuid" :key="item.uuid"
>{{ item.content }}</van-swipe-item> >
<div @click="$router.push({path: '/msgDetail', query: {info: JSON.stringify(item)}})">
{{ item.content }}
</div>
</van-swipe-item>
</van-swipe> </van-swipe>
</van-notice-bar> </van-notice-bar>
</template> </template>
...@@ -31,7 +35,16 @@ export default defineComponent({ ...@@ -31,7 +35,16 @@ export default defineComponent({
"van-swipe": Swipe, "van-swipe": Swipe,
"van-swipe-item": SwipeItem, "van-swipe-item": SwipeItem,
}, },
props: ['list'] props: ['list'],
setup() {
const goPage = () => {
console.log(1111)
}
return {
goPage
}
}
}); });
</script> </script>
<style> <style>
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
class="mt-3 shadow-sm" class="mt-3 shadow-sm"
/> />
</Skeleton> </Skeleton>
<Skeleton :row="3" :loading="result.loading" class="mt-5"> <Skeleton :row="3" :loading="result.loading" class="mt-12">
<div class="overflow-scroll -mt-8 pb-5"> <div class="overflow-scroll -mt-8 pb-5">
<p class="mt-12 mb-3 text-base font-semibold text-gray-800">附近的网点</p> <p class="mt-12 mb-3 text-base font-semibold text-gray-800">附近的网点</p>
<branch <branch
...@@ -43,13 +43,13 @@ ...@@ -43,13 +43,13 @@
<!-- <branch :isOpen="false" class="mt-3 shadow-sm"/> --> <!-- <branch :isOpen="false" class="mt-3 shadow-sm"/> -->
</div> </div>
</Skeleton> </Skeleton>
</div>
<!-- 附近网点 --> <!-- 附近网点 -->
<Skeleton :row="3" :loading="result.loading" class="-mt-20 mb-10"></Skeleton> <Skeleton :row="3" :loading="result.loading" class="mt-5 mb-10"></Skeleton>
<Skeleton :row="3" :loading="result.loading" class="mt-10"></Skeleton> <Skeleton :row="3" :loading="result.loading" class="mt-10"></Skeleton>
<Skeleton :row="3" :loading="result.loading" class="mt-10"></Skeleton> <Skeleton :row="3" :loading="result.loading" class="mt-10"></Skeleton>
</div> </div>
</div>
</template> </template>
<script lang="ts"> <script lang="ts">
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<nav-bar title="消息" :style="{ 'background-color':'#F7F7FA'}"/> <nav-bar title="消息" :style="{ 'background-color':'#F7F7FA'}"/>
<p class=" text-gray-800 text-sm font-semibold mt-7">{{ info.title }}</p> <p class=" text-gray-800 text-sm font-semibold mt-7">{{ info.title }}</p>
<p class=" text-gray-400 text-xs mt-3">{{ $format(info.created_at, 'YYYY-MM-DD HH:mm:ss') }}</p> <p class=" text-gray-400 text-xs mt-3">{{ $format(info.created_at, 'YYYY-MM-DD HH:mm:ss') }}</p>
<p class=" text-gray-800 text-sm text-justify mx-5 mt-6">{{ info.content }}</p> <p class=" text-gray-800 text-sm text-justify mx-5 mt-6 overflow-hidden break-all">{{ info.content }}</p>
</div> </div>
</template> </template>
......
...@@ -76,7 +76,10 @@ export default defineComponent({ ...@@ -76,7 +76,10 @@ export default defineComponent({
methods:{ methods:{
pushRouter(){ pushRouter(){
this.$router.push({ this.$router.push({
name: 'PwdSetting' name: 'PwdSetting',
query: {
phone: this.getPhone
}
}) })
}, },
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment