提交 ed464ba7 作者: 毛细亚

更新代码

上级 9659028d
......@@ -3,11 +3,12 @@
<div class="date-picker-container">
<el-date-picker
v-model="value1"
:options="options"
:disabled="disabled"
:style="{'width': width || '100%'}"
type="datetimerange"
format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd HH:mm:ss"
:type="type?'datetimerange':'daterange'"
:format="type?'yyyy-MM-dd HH:mm:ss':'yyyy-MM-dd'"
:value-format="type?'yyyy-MM-dd HH:mm:ss':'yyyy-MM-dd'"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
......@@ -23,80 +24,38 @@
export default {
name: 'SelectDate',
// noClearable 默认 clearable : true 特殊的关闭
props: [ 'width', 'defaultValue', 'type', 'noClearable', 'disabled'],
props: [ 'width', 'defaultValue', 'type', 'noClearable', 'disabled', 'options'],
data() {
return {
value1: []
}
},
computed: {
},
watch: {
defaultValue: {
handler(newVal) {
console.log('defaultValue 变化:', newVal)
if (newVal && Array.isArray(newVal) && newVal.length === 2) {
this.setDateValues(newVal[0], newVal[1])
} else if (newVal && newVal.start_date !== undefined && newVal.end_date !== undefined) {
this.setDateValues(newVal.start_date, newVal.end_date)
this.setDateValues(newVal)
} else {
this.setDateValues('', '')
this.value1 = []
}
},
immediate: 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: {
// 安全设置日期值的方法
setDateValues(startDate, endDate) {
// 设置日期值
setDateValues(dateArray) {
this.$nextTick(() => {
if (startDate && endDate) {
this.value1 = [startDate, endDate]
} else {
this.value1 = []
}
// 强制更新组件
this.value1 = dateArray
this.$forceUpdate()
})
},
// 处理日期范围变化
handleDateChange(value) {
console.log('日期范围变化:', value)
this.value1 = value || []
this.emitResult()
},
// 发出结果事件
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()
this.$emit('result', this.value1)
}
}
}
......
......@@ -24,6 +24,7 @@ label {
.el-form-item__label {
font-weight: bold !important;
line-height: 32px;
padding: 0 0px 0 0 !important;
}
html {
......
......@@ -28,7 +28,7 @@
<script>
import Clipboard from 'clipboard'
import { getSendingCodeList } from '@/api/works'
import { debounce,copyText } from '@/utils/index'
import { debounce,copyText,sendChatMessage } from '@/utils/index'
import { mapState } from 'vuex'
export default {
name: 'WxGift',
......@@ -79,7 +79,9 @@ import Clipboard from 'clipboard'
}
}, 500),
handleCopy(code) {
console.log(code, 'code')
copyText('giftCodeText', this)
sendChatMessage(code, 'text')
// const clipboard = new Clipboard('.')
// clipboard.on('success', e => {
// this.$message.success('复制成功')
......
......@@ -45,45 +45,12 @@
</div>
<div v-else-if="answer.msgtype == 'image'" class="answerText rowFlex">
<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 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>
</template>
......@@ -92,7 +59,7 @@
// procedure_group, procedureList, procedureSort, procedureGroupSort, skillQuote,
import { groupList, libraryIndex, logClickTime } from '@/api/skill'
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'
export default {
components: {
......@@ -207,8 +174,6 @@ export default {
},
// 发送语音的时候 先编辑再发送
sendMessageEdit(item, id) {
console.log(item, id, '----------')
// 复制内容到粘贴板
if (item && item.text && item.text.content) {
copyToClipboard(
......@@ -217,16 +182,12 @@ export default {
(message) => this.$message.error(message)
)
}
this.sendChatMessage(item.text.content || '', 'text')
// this.logClickTime(id)
// this.skillQuote(id, 1)
},
async logClickTime(id) {
console.log(id, 'id')
const res = await logClickTime({ _id: id })
if (res.status_code === 1) {
console.log(res.msg)
}
sendMessageImage(item){
console.log(item, 'item')
this.sendChatMessage(item.image.picurl || '', 'image')
},
contentSearch() {
this.pageInfo = {
......@@ -305,7 +266,10 @@ export default {
setTimeout(() => {
this.isResize = false
}, 2000)
}
},
sendChatMessage(content, type){
sendChatMessage(content, type)
},
}
}
</script>
......
......@@ -36,21 +36,25 @@
</div>
</div>
<div class="filterList">
<div>
订单号:
<el-input v-model="inputValue" placeholder="请输入订单号/交易单号" class="filterListInput" prefix-icon="el-icon-search" style="margin-left: 13px; width: 70%" clearable @change="searchInput"></el-input>
</div>
<div>
支付方式:
<el-form class="filterList" label-position="top">
<el-form-item label="订单号:">
<el-input v-model="inputValue" placeholder="请输入订单号/交易单号" prefix-icon="el-icon-search" style="width: 70%" clearable @change="searchInput"></el-input>
</el-form-item>
<el-form-item label="支付方式:">
<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-select>
</div>
</el-form-item>
<el-form-item label="下单时间:">
<selectDate :width="'69%'" :defaultValue="searchDate" @result="dateResult"/>
<div class="rowFlex columnCenter" style="margin-top: 10px">
角色名称:
<searchSelect style="margin-left: 4px; width: 70%" placeholder="请输入角色名称" @result="selectResult" />
</div>
</el-form-item>
<el-form-item label="角色名称:" >
<searchSelect style="width: 70%" placeholder="请输入角色名称" @result="selectResult" />
</el-form-item>
</el-form>
</div>
</div>
<!-- 退款记录的搜做 -->
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论