Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
standalone-anyremote
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
qlintonger xeno
standalone-anyremote
Commits
75c7b95c
Commit
75c7b95c
authored
Apr 30, 2024
by
pangchong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 优化
parent
970292ee
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
17 additions
and
21 deletions
+17
-21
src/constants/common/user.ts
+0
-6
src/views/layout/gHeader.vue
+3
-4
src/views/remote/contacts/contactsList.vue
+10
-8
src/views/remote/contacts/contactsListChoose.vue
+3
-1
src/views/remote/contacts/multiCallModel.vue
+1
-2
No files found.
src/constants/common/user.ts
View file @
75c7b95c
export
const
CallState
=
{
callIn
:
'callIn'
,
callOut
:
'callout'
,
calling
:
'calling'
,
idle
:
'idle'
}
export
const
videoGroup
=
{
export
const
videoGroup
=
{
0
:
'专家'
,
0
:
'专家'
,
1
:
'维修人'
1
:
'维修人'
...
...
src/views/layout/gHeader.vue
View file @
75c7b95c
...
@@ -4,13 +4,13 @@
...
@@ -4,13 +4,13 @@
<a-space
size=
"large"
>
<a-space
size=
"large"
>
<a-button
type=
"outline"
shape=
"circle"
><global-icon
icon=
"question-circle"
:size=
"14"
></global-icon></a-button>
<a-button
type=
"outline"
shape=
"circle"
><global-icon
icon=
"question-circle"
:size=
"14"
></global-icon></a-button>
<a-button
type=
"outline"
shape=
"circle"
><global-icon
icon=
"safe"
:size=
"14"
></global-icon></a-button>
<a-button
type=
"outline"
shape=
"circle"
><global-icon
icon=
"safe"
:size=
"14"
></global-icon></a-button>
<a-dropdown
@
select=
"handleLanguage"
>
<
!--
<
a-dropdown
@
select=
"handleLanguage"
>
<a-button
type=
"outline"
shape=
"circle"
><global-icon
icon=
"language"
:size=
"14"
></global-icon></a-button>
<a-button
type=
"outline"
shape=
"circle"
><global-icon
icon=
"language"
:size=
"14"
></global-icon></a-button>
<template
#
content
>
<template
#
content
>
<a-doption
:value=
"
{ value: 'zh-CN' }">中文
</a-doption>
<a-doption
:value=
"
{ value: 'zh-CN' }">中文
</a-doption>
<a-doption
:value=
"
{ value: 'en-US' }">Englishs
</a-doption>
<a-doption
:value=
"
{ value: 'en-US' }">Englishs
</a-doption>
</
template
>
</
template
>
</a-dropdown>
</a-dropdown>
-->
<a-button
type=
"outline"
shape=
"circle"
v-if=
"activedTheme == 'dark'"
@
click=
"activedTheme = 'light'"
><global-icon
icon=
"moon"
:size=
"14"
></global-icon></a-button>
<a-button
type=
"outline"
shape=
"circle"
v-if=
"activedTheme == 'dark'"
@
click=
"activedTheme = 'light'"
><global-icon
icon=
"moon"
:size=
"14"
></global-icon></a-button>
<a-button
type=
"outline"
shape=
"circle"
v-else
@
click=
"activedTheme = 'dark'"
><global-icon
icon=
"sun"
:size=
"14"
></global-icon></a-button>
<a-button
type=
"outline"
shape=
"circle"
v-else
@
click=
"activedTheme = 'dark'"
><global-icon
icon=
"sun"
:size=
"14"
></global-icon></a-button>
<a-dropdown
@
popup-visible-change=
"handleDown"
>
<a-dropdown
@
popup-visible-change=
"handleDown"
>
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
<global-avatar
:avatar-size=
"32"
:icon-size=
"16"
></global-avatar>
<global-avatar
:avatar-size=
"32"
:icon-size=
"16"
></global-avatar>
<div
class=
"mx-2"
>
<div
class=
"mx-2"
>
<p
class=
"mb-1 inline-block text-theme-text1"
>
{{ userStore.user_info.username }}
</p>
<p
class=
"mb-1 inline-block text-theme-text1"
>
{{ userStore.user_info.username }}
</p>
<p
class=
"text-theme-text3"
>
{{
videoGroup[userStore.user_info.videoGroup]
}}
</p>
<p
class=
"text-theme-text3"
>
{{
userStore.user_info.nickname
}}
</p>
</div>
</div>
<global-icon
:icon=
"idDown ? 'up-circle' : 'down-circle'"
:size=
"14"
></global-icon>
<global-icon
:icon=
"idDown ? 'up-circle' : 'down-circle'"
:size=
"14"
></global-icon>
</div>
</div>
...
@@ -35,7 +35,6 @@ import logo from '@/assets/images/header/logo.png'
...
@@ -35,7 +35,6 @@ import logo from '@/assets/images/header/logo.png'
import
useLocale
from
'@/hooks/locale'
import
useLocale
from
'@/hooks/locale'
import
{
activedTheme
}
from
'../../../project.ui.config'
import
{
activedTheme
}
from
'../../../project.ui.config'
import
useUserStore
from
'@/store/user'
import
useUserStore
from
'@/store/user'
import
{
videoGroup
}
from
'@/constants/common/user'
const
{
changeLocale
}
=
useLocale
()
const
{
changeLocale
}
=
useLocale
()
//切换语言
//切换语言
...
...
src/views/remote/contacts/contactsList.vue
View file @
75c7b95c
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
<global-icon
icon=
"camera"
:size=
"14"
class=
"mr-2"
v-if=
"item.hasCamera == 1"
></global-icon>
<global-icon
icon=
"camera"
:size=
"14"
class=
"mr-2"
v-if=
"item.hasCamera == 1"
></global-icon>
<global-icon
icon=
"mic"
:size=
"14"
v-if=
"item.hasMike == 1"
></global-icon>
<global-icon
icon=
"mic"
:size=
"14"
v-if=
"item.hasMike == 1"
></global-icon>
</div>
</div>
<div
class=
"flex-auto text-right"
>
<div
class=
"flex-auto text-right"
v-if=
"userStore.user_info.id !== item.id"
>
<a-button
type=
"primary"
shape=
"circle"
@
click
.
stop=
"sendCallRequest(item.id)"
:disabled=
"!(item.callState == CallState.idle && item.hasCamera == 1 && item.hasMike == 1)"
>
<a-button
type=
"primary"
shape=
"circle"
@
click
.
stop=
"sendCallRequest(item.id)"
:disabled=
"!(item.callState == CallState.idle && item.hasCamera == 1 && item.hasMike == 1)"
>
<global-icon
icon=
"phone"
:size=
"14"
color=
"var(--color-bg-white)"
></global-icon>
<global-icon
icon=
"phone"
:size=
"14"
color=
"var(--color-bg-white)"
></global-icon>
</a-button>
</a-button>
...
@@ -20,15 +20,17 @@
...
@@ -20,15 +20,17 @@
import
useContactsStore
from
'@/store/contacts/index'
import
useContactsStore
from
'@/store/contacts/index'
import
{
ContactsItemDto
}
from
'@/store/contacts/types'
import
{
ContactsItemDto
}
from
'@/store/contacts/types'
import
{
storeToRefs
}
from
'pinia'
import
{
storeToRefs
}
from
'pinia'
import
{
CallState
}
from
"AnyR/constants/chatChannelRelated"
;
import
{
CallState
}
from
'AnyR/constants/chatChannelRelated'
import
{
useAnyR
}
from
"AnyR/index"
;
import
{
useAnyR
}
from
'AnyR/index'
import
useUserStore
from
'@/store/user'
const
AnyR
=
useAnyR
();
const
userStore
=
useUserStore
()
const
AnyR
=
useAnyR
()
const
sendCallRequest
=
function
(
id
:
any
)
{
const
sendCallRequest
=
function
(
id
:
any
)
{
if
(
AnyR
.
agora
)
{
if
(
AnyR
.
agora
)
{
AnyR
.
agora
.
sendCallRequest
(
id
);
AnyR
.
agora
.
sendCallRequest
(
id
)
}
}
}
}
interface
Props
{
interface
Props
{
...
@@ -38,7 +40,7 @@ const ps = withDefaults(defineProps<Props>(), {
...
@@ -38,7 +40,7 @@ const ps = withDefaults(defineProps<Props>(), {
data
:
()
=>
[]
data
:
()
=>
[]
})
})
//拨打视频
//拨打视频
const
{
changeWait
,
setChooseUser
}
=
useContactsStore
()
const
{
setChooseUser
}
=
useContactsStore
()
//当前联系人
//当前联系人
const
{
chooseContactsItem
}
=
storeToRefs
(
useContactsStore
())
const
{
chooseContactsItem
}
=
storeToRefs
(
useContactsStore
())
//点击联系人
//点击联系人
...
...
src/views/remote/contacts/contactsListChoose.vue
View file @
75c7b95c
<
template
>
<
template
>
<a-checkbox-group
v-model=
"checkbox"
class=
"w-full"
>
<a-checkbox-group
v-model=
"checkbox"
class=
"w-full"
>
<template
v-for=
"(item, index) in data"
:key=
"item.id"
>
<template
v-for=
"(item, index) in data"
:key=
"item.id"
>
<div
class=
"item flex items-center px-4 py-3 rounded cursor-pointer"
>
<div
class=
"item flex items-center px-4 py-3 rounded cursor-pointer"
v-if=
"userStore.user_info.id !== item.id"
>
<global-avatar></global-avatar>
<global-avatar></global-avatar>
<div
class=
"ml-[9px] inline-block"
>
{{
item
.
nickname
}}
</div>
<div
class=
"ml-[9px] inline-block"
>
{{
item
.
nickname
}}
</div>
<div
class=
"flex-auto text-right"
>
<div
class=
"flex-auto text-right"
>
...
@@ -14,7 +14,9 @@
...
@@ -14,7 +14,9 @@
<
script
setup
lang=
"ts"
>
<
script
setup
lang=
"ts"
>
import
{
ContactsItemDto
}
from
'@/store/contacts/types'
import
{
ContactsItemDto
}
from
'@/store/contacts/types'
import
useUserStore
from
'@/store/user'
const
userStore
=
useUserStore
()
interface
Props
{
interface
Props
{
data
?:
Array
<
ContactsItemDto
>
data
?:
Array
<
ContactsItemDto
>
}
}
...
...
src/views/remote/contacts/multiCallModel.vue
View file @
75c7b95c
...
@@ -46,8 +46,6 @@ const getUserListGroup = computed(() => {
...
@@ -46,8 +46,6 @@ const getUserListGroup = computed(() => {
return
result
return
result
},
{})
},
{})
})
})
//拨打视频
const
{
changeWait
}
=
useContactsStore
()
defineExpose
({
defineExpose
({
open
open
})
})
...
@@ -55,6 +53,7 @@ defineExpose({
...
@@ -55,6 +53,7 @@ defineExpose({
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
scoped
>
:deep
(
.arco-collapse-item-content
)
{
:deep
(
.arco-collapse-item-content
)
{
padding
:
0
;
padding
:
0
;
display
:
none
;
.arco-collapse-item-content-box
{
.arco-collapse-item-content-box
{
padding
:
0
;
padding
:
0
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment