Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
company_app
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
毛细亚
company_app
Commits
ed464ba7
提交
ed464ba7
authored
6月 07, 2025
作者:
毛细亚
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
更新代码
上级
9659028d
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
45 行增加
和
115 行删除
+45
-115
selectDate.vue
src/components/selectDate.vue
+11
-52
index.scss
src/styles/index.scss
+1
-0
wxGift.vue
src/views/components/giftRecord/wxGift.vue
+3
-1
skillLibrary.vue
src/views/components/skill/skillLibrary.vue
+11
-47
orderList.vue
src/views/orderList.vue
+19
-15
没有找到文件。
src/components/selectDate.vue
浏览文件 @
ed464ba7
...
@@ -3,11 +3,12 @@
...
@@ -3,11 +3,12 @@
<div
class=
"date-picker-container"
>
<div
class=
"date-picker-container"
>
<el-date-picker
<el-date-picker
v-model=
"value1"
v-model=
"value1"
:options=
"options"
:disabled=
"disabled"
:disabled=
"disabled"
:style=
"
{'width': width || '100%'}"
:style=
"
{'width': width || '100%'}"
type="datetimerange
"
:type="type?'datetimerange':'daterange'
"
format="yyyy-MM-dd HH:mm:ss
"
:format="type?'yyyy-MM-dd HH:mm:ss':'yyyy-MM-dd'
"
value-format="yyyy-MM-dd HH:mm:ss
"
:value-format="type?'yyyy-MM-dd HH:mm:ss':'yyyy-MM-dd'
"
start-placeholder="开始日期"
start-placeholder="开始日期"
end-placeholder="结束日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
:default-time="['00:00:00', '23:59:59']"
...
@@ -23,80 +24,38 @@
...
@@ -23,80 +24,38 @@
export
default
{
export
default
{
name
:
'SelectDate'
,
name
:
'SelectDate'
,
// noClearable 默认 clearable : true 特殊的关闭
// noClearable 默认 clearable : true 特殊的关闭
props
:
[
'width'
,
'defaultValue'
,
'type'
,
'noClearable'
,
'disabled'
],
props
:
[
'width'
,
'defaultValue'
,
'type'
,
'noClearable'
,
'disabled'
,
'options'
],
data
()
{
data
()
{
return
{
return
{
value1
:
[]
value1
:
[]
}
}
},
},
computed
:
{
},
watch
:
{
watch
:
{
defaultValue
:
{
defaultValue
:
{
handler
(
newVal
)
{
handler
(
newVal
)
{
console
.
log
(
'defaultValue 变化:'
,
newVal
)
if
(
newVal
&&
Array
.
isArray
(
newVal
)
&&
newVal
.
length
===
2
)
{
if
(
newVal
&&
Array
.
isArray
(
newVal
)
&&
newVal
.
length
===
2
)
{
this
.
setDateValues
(
newVal
[
0
],
newVal
[
1
])
this
.
setDateValues
(
newVal
)
}
else
if
(
newVal
&&
newVal
.
start_date
!==
undefined
&&
newVal
.
end_date
!==
undefined
)
{
this
.
setDateValues
(
newVal
.
start_date
,
newVal
.
end_date
)
}
else
{
}
else
{
this
.
setDateValues
(
''
,
''
)
this
.
value1
=
[]
}
}
},
},
immediate
:
true
,
immediate
:
true
,
deep
:
true
deep
:
true
}
}
},
},
mounted
()
{
console
.
log
(
'组件挂载,defaultValue:'
,
this
.
defaultValue
)
// 组件挂载时处理默认值
if
(
this
.
defaultValue
&&
Array
.
isArray
(
this
.
defaultValue
)
&&
this
.
defaultValue
.
length
===
2
)
{
this
.
setDateValues
(
this
.
defaultValue
[
0
],
this
.
defaultValue
[
1
])
}
else
if
(
this
.
defaultValue
&&
this
.
defaultValue
.
start_date
!==
undefined
&&
this
.
defaultValue
.
end_date
!==
undefined
)
{
this
.
setDateValues
(
this
.
defaultValue
.
start_date
,
this
.
defaultValue
.
end_date
)
}
},
methods
:
{
methods
:
{
//
安全设置日期值的方法
//
设置日期值
setDateValues
(
startDate
,
endDate
)
{
setDateValues
(
dateArray
)
{
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
if
(
startDate
&&
endDate
)
{
this
.
value1
=
dateArray
this
.
value1
=
[
startDate
,
endDate
]
}
else
{
this
.
value1
=
[]
}
// 强制更新组件
this
.
$forceUpdate
()
this
.
$forceUpdate
()
})
})
},
},
// 处理日期范围变化
// 处理日期范围变化
handleDateChange
(
value
)
{
handleDateChange
(
value
)
{
console
.
log
(
'日期范围变化:'
,
value
)
this
.
value1
=
value
||
[]
this
.
value1
=
value
||
[]
this
.
emitResult
()
this
.
$emit
(
'result'
,
this
.
value1
)
},
// 发出结果事件
emitResult
()
{
if
(
!
this
.
value1
||
this
.
value1
.
length
!==
2
)
{
this
.
$emit
(
'result'
,
[])
return
}
const
[
startDate
,
endDate
]
=
this
.
value1
if
(
!
startDate
||
!
endDate
)
{
this
.
$message
.
warning
(
'请选择开始时间和结束时间'
)
return
false
}
console
.
log
(
'发出结果:'
,
[
startDate
,
endDate
])
this
.
$emit
(
'result'
,
[
startDate
,
endDate
])
},
// 保持原有的 selectChange 方法,用于兼容
selectChange
(
value
)
{
this
.
emitResult
()
}
}
}
}
}
}
...
...
src/styles/index.scss
浏览文件 @
ed464ba7
...
@@ -24,6 +24,7 @@ label {
...
@@ -24,6 +24,7 @@ label {
.el-form-item__label
{
.el-form-item__label
{
font-weight
:
bold
!
important
;
font-weight
:
bold
!
important
;
line-height
:
32px
;
line-height
:
32px
;
padding
:
0
0px
0
0
!
important
;
}
}
html
{
html
{
...
...
src/views/components/giftRecord/wxGift.vue
浏览文件 @
ed464ba7
...
@@ -28,7 +28,7 @@
...
@@ -28,7 +28,7 @@
<
script
>
<
script
>
import
Clipboard
from
'clipboard'
import
Clipboard
from
'clipboard'
import
{
getSendingCodeList
}
from
'@/api/works'
import
{
getSendingCodeList
}
from
'@/api/works'
import
{
debounce
,
copyText
}
from
'@/utils/index'
import
{
debounce
,
copyText
,
sendChatMessage
}
from
'@/utils/index'
import
{
mapState
}
from
'vuex'
import
{
mapState
}
from
'vuex'
export
default
{
export
default
{
name
:
'WxGift'
,
name
:
'WxGift'
,
...
@@ -79,7 +79,9 @@ import Clipboard from 'clipboard'
...
@@ -79,7 +79,9 @@ import Clipboard from 'clipboard'
}
}
},
500
),
},
500
),
handleCopy
(
code
)
{
handleCopy
(
code
)
{
console
.
log
(
code
,
'code'
)
copyText
(
'giftCodeText'
,
this
)
copyText
(
'giftCodeText'
,
this
)
sendChatMessage
(
code
,
'text'
)
// const clipboard = new Clipboard('.')
// const clipboard = new Clipboard('.')
// clipboard.on('success', e => {
// clipboard.on('success', e => {
// this.$message.success('复制成功')
// this.$message.success('复制成功')
...
...
src/views/components/skill/skillLibrary.vue
浏览文件 @
ed464ba7
...
@@ -45,45 +45,12 @@
...
@@ -45,45 +45,12 @@
</div>
</div>
<div
v-else-if=
"answer.msgtype == 'image'"
class=
"answerText rowFlex"
>
<div
v-else-if=
"answer.msgtype == 'image'"
class=
"answerText rowFlex"
>
<span
class=
"title rowFlex"
>
A
{{
answerIndex
+
1
}}
:
</span>
<span
class=
"title rowFlex"
>
A
{{
answerIndex
+
1
}}
:
</span>
<el-image
style=
"max-width: 200px"
:src=
"answer.image.picurl"
:preview-src-list=
"[answer.image.picurl]"
@
click=
"logClickTime(items._id)"
>
</el-image>
<el-image
style=
"max-width: 200px"
:src=
"answer.image.picurl"
:preview-src-list=
"[answer.image.picurl]"
>
</el-image>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!--
<div
v-else
class=
"noContent rowFlex allCenter"
>
<svg-icon
icon-class=
"noContent"
/>
</div>
-->
<!--
<el-collapse
v-model=
"collapseActive"
@
change=
"handleChange"
>
<transition-group
v-if=
"groupDataList.length > 0"
tag=
"div"
class=
"container"
>
<div
v-for=
"(items, indexs) in groupDataList"
:key=
"indexs"
:draggable=
"activeName == 'personal' ? true : false"
class=
"draggable"
@
dragstart=
"handleDragStart($event, items, indexs)"
@
dragover
.
prevent=
"handleDragOver($event, items)"
@
dragenter=
"handleDragEnter($event, items, 'item')"
@
dragend=
"handleDragEnd($event, items, 'item')"
>
<el-popover
placement=
"top"
width=
"300"
trigger=
"hover"
>
<p>
{{
items
.
title
}}
</p>
<div
slot=
"reference"
class=
"contentItemTitle allCenter"
:style=
"
{ top: items.title.length > 8 ? '5px' : '13px' }">
{{
items
.
title
}}
</div>
</el-popover>
<div
class=
"rowFlex titleFixed columnCenter"
>
<div
class=
"num"
>
{{
items
.
message
.
attachments
.
length
>
1
?
`+${items.message.attachments.length - 1
}
条`
:
''
}}
<
/div
>
<
el
-
button
class
=
"button rowFlex allCenter"
:
disabled
=
"Boolean(setIntervalTimer)"
@
click
.
stop
=
"sendMessage(items.message.attachments, items._id)"
>
发送
<
/el-button
>
<
/div
>
<
el
-
collapse
-
item
title
=
""
:
name
=
"items._id"
class
=
"contentItem"
>
<
div
v
-
for
=
"(i, j) in items.message.attachments"
:
key
=
"j"
>
<
div
>
<
div
v
-
if
=
"i.msgtype == 'text'"
class
=
"contentItemDetails rowFlex spaceBetween columnCenter"
>
<
div
class
=
"text"
>
{{
i
.
text
.
content
}}
<
/div
>
<
el
-
button
class
=
"sendButton rowFlex allCenter"
:
disabled
=
"Boolean(setIntervalTimer)"
@
click
.
stop
=
"sendMessageEdit(i, items._id)"
>
发送
<
/el-button
>
<
/div
>
<
div
v
-
if
=
"i.msgtype == 'image'"
class
=
"contentItemDetails rowFlex spaceBetween columnCenter"
>
<
el
-
image
class
=
"image"
:
src
=
"i.image.picurl"
:
preview
-
src
-
list
=
"[i.image.picurl]"
fit
=
"contain"
><
/el-image
>
<
el
-
button
class
=
"sendButton rowFlex allCenter"
:
disabled
=
"Boolean(setIntervalTimer)"
@
click
.
stop
=
"sendMessage([i], items._id)"
>
发送
<
/el-button
>
<
/div
>
<
/div
>
<
/div
>
<
/el-collapse-item
>
<
/div
>
<
/transition-group
>
<
div
v
-
else
class
=
"rowFlex rowCenter"
>
暂无话术内容
<
/div
>
<
/el-collapse> --
>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
...
@@ -92,7 +59,7 @@
...
@@ -92,7 +59,7 @@
// procedure_group, procedureList, procedureSort, procedureGroupSort, skillQuote,
// procedure_group, procedureList, procedureSort, procedureGroupSort, skillQuote,
import
{
groupList
,
libraryIndex
,
logClickTime
}
from
'@/api/skill'
import
{
groupList
,
libraryIndex
,
logClickTime
}
from
'@/api/skill'
import
{
mapState
,
mapMutations
,
mapActions
}
from
'vuex'
import
{
mapState
,
mapMutations
,
mapActions
}
from
'vuex'
import
{
throttle
,
debounce
,
copyToClipboard
}
from
'@/utils/index'
import
{
throttle
,
debounce
,
copyToClipboard
,
sendChatMessage
}
from
'@/utils/index'
import
noContent
from
'@/components/noContent.vue'
import
noContent
from
'@/components/noContent.vue'
export
default
{
export
default
{
components
:
{
components
:
{
...
@@ -207,8 +174,6 @@ export default {
...
@@ -207,8 +174,6 @@ export default {
},
},
// 发送语音的时候 先编辑再发送
// 发送语音的时候 先编辑再发送
sendMessageEdit
(
item
,
id
)
{
sendMessageEdit
(
item
,
id
)
{
console
.
log
(
item
,
id
,
'----------'
)
// 复制内容到粘贴板
// 复制内容到粘贴板
if
(
item
&&
item
.
text
&&
item
.
text
.
content
)
{
if
(
item
&&
item
.
text
&&
item
.
text
.
content
)
{
copyToClipboard
(
copyToClipboard
(
...
@@ -217,16 +182,12 @@ export default {
...
@@ -217,16 +182,12 @@ export default {
(
message
)
=>
this
.
$message
.
error
(
message
)
(
message
)
=>
this
.
$message
.
error
(
message
)
)
)
}
}
this
.
sendChatMessage
(
item
.
text
.
content
||
''
,
'text'
)
// this.logClickTime(id)
// this.skillQuote(id, 1)
},
},
async
logClickTime
(
id
)
{
sendMessageImage
(
item
){
console
.
log
(
id
,
'id'
)
console
.
log
(
item
,
'item'
)
const
res
=
await
logClickTime
({
_id
:
id
}
)
this
.
sendChatMessage
(
item
.
image
.
picurl
||
''
,
'image'
)
if
(
res
.
status_code
===
1
)
{
console
.
log
(
res
.
msg
)
}
},
},
contentSearch
()
{
contentSearch
()
{
this
.
pageInfo
=
{
this
.
pageInfo
=
{
...
@@ -305,7 +266,10 @@ export default {
...
@@ -305,7 +266,10 @@ export default {
setTimeout
(()
=>
{
setTimeout
(()
=>
{
this
.
isResize
=
false
this
.
isResize
=
false
},
2000
)
},
2000
)
}
},
sendChatMessage
(
content
,
type
){
sendChatMessage
(
content
,
type
)
},
}
}
}
}
</
script
>
</
script
>
...
...
src/views/orderList.vue
浏览文件 @
ed464ba7
...
@@ -36,21 +36,25 @@
...
@@ -36,21 +36,25 @@
</div>
</div>
</div>
</div>
<div
class=
"filterList"
>
<div
class=
"filterList"
>
<div>
<el-form
class=
"filterList"
label-position=
"top"
>
订单号:
<el-form-item
label=
"订单号:"
>
<el-input
v-model=
"inputValue"
placeholder=
"请输入订单号/交易单号"
class=
"filterListInput"
prefix-icon=
"el-icon-search"
style=
"margin-left: 13px; width: 70%"
clearable
@
change=
"searchInput"
></el-input>
<el-input
v-model=
"inputValue"
placeholder=
"请输入订单号/交易单号"
prefix-icon=
"el-icon-search"
style=
"width: 70%"
clearable
@
change=
"searchInput"
></el-input>
</div>
</el-form-item>
<div>
支付方式:
<el-form-item
label=
"支付方式:"
>
<el-select
v-model=
"pay_type"
collapse-tags
multiple
clearable
placeholder=
"请选择支付方式"
style=
"width: 70%; margin-bottom: 10px"
@
change=
"payTypeResult"
>
<el-select
v-model=
"pay_type"
collapse-tags
multiple
clearable
placeholder=
"请选择支付方式"
style=
"width: 70%; margin-bottom: 10px"
@
change=
"payTypeResult"
>
<el-option
v-for=
"item in payList"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
<el-option
v-for=
"item in payList"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
</el-select>
</el-select>
</div>
</el-form-item>
<selectDate
:width=
"'69%'"
:defaultValue=
"searchDate"
@
result=
"dateResult"
/>
<div
class=
"rowFlex columnCenter"
style=
"margin-top: 10px"
>
<el-form-item
label=
"下单时间:"
>
角色名称:
<selectDate
:width=
"'69%'"
:defaultValue=
"searchDate"
@
result=
"dateResult"
/>
<searchSelect
style=
"margin-left: 4px; width: 70%"
placeholder=
"请输入角色名称"
@
result=
"selectResult"
/>
</el-form-item>
</div>
<el-form-item
label=
"角色名称:"
>
<searchSelect
style=
"width: 70%"
placeholder=
"请输入角色名称"
@
result=
"selectResult"
/>
</el-form-item>
</el-form>
</div>
</div>
</div>
</div>
<!-- 退款记录的搜做 -->
<!-- 退款记录的搜做 -->
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论