member.vue
3.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<template>
<el-row>
<el-col :lg="18" :sm="24">
<div class="wPanel">
<img class="forWei poimg" src="@/assets/h5/cx@2x.png">
<h2>团体会员查询</h2>
<el-form ref="queryRef" :model="queryParams" :rules="rules" label-width="120">
<el-form-item label="团体会员编号" prop="queryCode">
<el-input
v-model="queryParams.queryCode"
placeholder="请输入团体会员编号"
size="large"
clearable
prefix-icon="Postcard"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="图形验证码" prop="code">
<captcha ref="codeRef" v-model="queryParams.code" v-model:uuid="queryParams.uuid" :auto-load="false" @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item>
<el-button class="search-btn" round type="default" plain @click="handleQuery">
<el-icon class="el-icon--left"><Search /></el-icon>查询
</el-button>
</el-form-item>
</el-form>
</div>
<el-divider class="forPc" />
<div class="wPanel mt20">
<img class="forWei poimg" src="@/assets/h5/jg@2x.png">
<h2>团体会员查询结果</h2>
<el-form label-width="120">
<el-form-item label="会员名称">
<el-input v-model="resultForm.name" readonly />
</el-form-item>
<el-form-item label="会员编号">
<el-input v-model="resultForm.code" readonly />
</el-form-item>
<el-form-item label="有效期开始">
<el-input v-model="resultForm.startTime" readonly />
</el-form-item>
<el-form-item label="有效期结束">
<el-input v-model="resultForm.endTime" readonly />
</el-form-item>
</el-form>
</div>
</el-col>
</el-row>
</template>
<script setup>
import { getCurrentInstance, reactive } from '@vue/runtime-core'
import { toRefs } from 'vue'
import Captcha from '@/views/login/components/captcha'
import * as authentic from '@/apiPc/authentic'
const { proxy } = getCurrentInstance()
const data = reactive({
queryParams: {
type: '1',
queryCode: undefined,
code: undefined,
uuid: undefined
},
rules: {
queryCode: [{ required: true, trigger: 'blur', message: '请输入团体会员编号' }],
code: [{ required: true, trigger: 'blur', message: '请输入图形验证码' }]
},
resultForm: {}
})
const { queryParams, rules, resultForm } = toRefs(data)
function handleQuery() {
proxy.$refs['queryRef'].validate((valid) => {
if (valid) {
resultForm.value = {}
authentic.accurateQuery(queryParams.value).then(res => {
if (res.data) {
resultForm.value = res.data
} else {
proxy.$modal.msgError('没有查询到相应的数据')
}
}).finally(getCode)
}
})
}
function getCode() {
proxy.$refs['codeRef'].getCode()
}
function init() {
getCode()
}
defineExpose({
init
})
</script>
<style scoped lang="scss">
h2{color:var(--el-color-primary);font-size: 18px;text-align: center;margin:0 0 30px;}
:deep(.el-input__wrapper){background: #FBFCFD;}
.forWei {
display: none;
}
@media (max-width: 500px) {
h2{ color: #000; }
.forWei {display: block;}
.forPc{display: none}
.wPanel{position: relative;}
.poimg{width: 110px;position: absolute;right: 10px;top:0;}
.search-btn{background: var(--el-color-primary);color: #fff;border: none;
display: block;width: calc(100vw - 260px);}
}
</style>