doway-coms 2.11.87 → 2.11.89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -348,6 +348,7 @@
|
|
|
348
348
|
:allowAutoClear="scope.column.params.allowAutoClear"
|
|
349
349
|
@preSearch="(searchInfo,repeatRowInfo,row,api) => preSearch(searchInfo, scope,null,api)"
|
|
350
350
|
@selectChanged="(selectedRowInfo)=>pulldownSelectChanged(scope,selectedRowInfo)"
|
|
351
|
+
@inputBlurEvent="()=>pulldownInputBlurEvent(scope)"
|
|
351
352
|
@confirmMultiSelect="
|
|
352
353
|
(pulldownView, selectRows) =>
|
|
353
354
|
pulldownMultiSelect(scope, pulldownView, selectRows)
|
|
@@ -3107,6 +3108,9 @@ export default {
|
|
|
3107
3108
|
scope['pulldownSelectedRow'] = selectedRowInfo
|
|
3108
3109
|
this.cellValueChange(scope)
|
|
3109
3110
|
},
|
|
3111
|
+
pulldownInputBlurEvent(scope){
|
|
3112
|
+
this.$emit('inputBlurEvent', scope,this.dataName)
|
|
3113
|
+
},
|
|
3110
3114
|
cellValueChange(scope, e) {
|
|
3111
3115
|
console.debug(scope.column.field + 'value change')
|
|
3112
3116
|
if (
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
3
|
<vxe-modal
|
|
4
|
+
show-footer
|
|
4
5
|
ref="printModal"
|
|
5
6
|
show-zoom
|
|
6
7
|
append-to-body
|
|
@@ -17,6 +18,7 @@
|
|
|
17
18
|
wrap-class-name="full-modal"
|
|
18
19
|
@cancel="closeModal"
|
|
19
20
|
>
|
|
21
|
+
<template #default>
|
|
20
22
|
<iframe
|
|
21
23
|
name="printFrame"
|
|
22
24
|
id="printFrame"
|
|
@@ -28,15 +30,28 @@
|
|
|
28
30
|
:src="url"
|
|
29
31
|
>
|
|
30
32
|
</iframe>
|
|
33
|
+
</template>
|
|
34
|
+
<template #footer>
|
|
35
|
+
<div v-if="sendEmailInfo.show===true" class="email-controls">
|
|
36
|
+
<Checkbox v-model="sendEmailInfo.self">抄送自己</Checkbox>
|
|
37
|
+
<Input v-model="sendEmailInfo.to" class="email-input"/>
|
|
38
|
+
<Button :loading="sendEmailInfo.loading" type="primary" @click="sendEmail">发送电子邮件</Button>
|
|
39
|
+
</div>
|
|
40
|
+
</template>
|
|
31
41
|
</vxe-modal>
|
|
32
42
|
</div>
|
|
33
43
|
</template>
|
|
34
44
|
<script>
|
|
35
45
|
import {Modal as VxeModal} from 'vxe-table'
|
|
46
|
+
import { Checkbox,Input,Button } from 'ant-design-vue'
|
|
47
|
+
import request from '../../utils/request'
|
|
36
48
|
export default {
|
|
37
49
|
name: 'BasePrintPreview',
|
|
38
50
|
components:{
|
|
39
|
-
VxeModal
|
|
51
|
+
VxeModal,
|
|
52
|
+
Checkbox,
|
|
53
|
+
Input,
|
|
54
|
+
Button
|
|
40
55
|
},
|
|
41
56
|
props: {},
|
|
42
57
|
data() {
|
|
@@ -46,6 +61,14 @@ export default {
|
|
|
46
61
|
postData: '',
|
|
47
62
|
requestToken: '',
|
|
48
63
|
tempData: '',
|
|
64
|
+
sendEmailInfo:{
|
|
65
|
+
show:false,
|
|
66
|
+
to:null,
|
|
67
|
+
self:false,
|
|
68
|
+
cacheKey:null,
|
|
69
|
+
sendEmailUrl:null,
|
|
70
|
+
loading:false
|
|
71
|
+
}
|
|
49
72
|
}
|
|
50
73
|
},
|
|
51
74
|
methods: {
|
|
@@ -69,14 +92,37 @@ export default {
|
|
|
69
92
|
document.body.removeChild(formExport)
|
|
70
93
|
})
|
|
71
94
|
},
|
|
95
|
+
async sendEmail(){
|
|
96
|
+
this.sendEmailInfo.loading = true
|
|
72
97
|
|
|
73
|
-
|
|
98
|
+
try{
|
|
99
|
+
await request({
|
|
100
|
+
url: this.sendEmailInfo.sendEmailUrl,
|
|
101
|
+
method: 'post',
|
|
102
|
+
data: {to:this.sendEmailInfo.to,self:this.sendEmailInfo.self,cacheKey:this.sendEmailInfo.cacheKey}
|
|
103
|
+
})
|
|
104
|
+
this.$antsuccess('发送成功')
|
|
105
|
+
}finally{
|
|
106
|
+
this.sendEmailInfo.loading = false
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
showPreview(url, data, isReplace, method, modalInfo,contentInfo) {
|
|
74
110
|
// modalInfo = {type: '', info: {}}
|
|
75
111
|
this.$refs.printModal.maximize()
|
|
76
112
|
this.isShow = true
|
|
77
113
|
if (!modalInfo) {
|
|
78
114
|
modalInfo = null
|
|
79
115
|
}
|
|
116
|
+
|
|
117
|
+
if(contentInfo){
|
|
118
|
+
//构造是否发送电子邮件信息
|
|
119
|
+
this.sendEmailInfo.show = contentInfo.sendEmail
|
|
120
|
+
this.sendEmailInfo.to = contentInfo.emailTo
|
|
121
|
+
this.sendEmailInfo.self = contentInfo.emailSelf
|
|
122
|
+
this.sendEmailInfo.cacheKey = contentInfo.cacheKey
|
|
123
|
+
this.sendEmailInfo.sendEmailUrl = contentInfo.sendEmailUrl
|
|
124
|
+
}
|
|
125
|
+
|
|
80
126
|
if (method == 'post') {
|
|
81
127
|
this.isShow = true
|
|
82
128
|
this.$nextTick(() => {
|
|
@@ -121,6 +167,9 @@ export default {
|
|
|
121
167
|
} else { // 其它
|
|
122
168
|
this.url = url + '?token=' + this.$store.getters.token + '&ids=' + ids
|
|
123
169
|
}
|
|
170
|
+
if(this.sendEmailInfo.cacheKey){
|
|
171
|
+
this.url = this.url + '&cacheKey=' + this.sendEmailInfo.cacheKey
|
|
172
|
+
}
|
|
124
173
|
}
|
|
125
174
|
},
|
|
126
175
|
closeModal() {
|
|
@@ -147,4 +196,19 @@ export default {
|
|
|
147
196
|
flex: 1;
|
|
148
197
|
}
|
|
149
198
|
}
|
|
199
|
+
.email-controls {
|
|
200
|
+
right: 20px;
|
|
201
|
+
bottom: 20px;
|
|
202
|
+
display: flex;
|
|
203
|
+
align-items: center;
|
|
204
|
+
gap: 10px;
|
|
205
|
+
background: white;
|
|
206
|
+
padding: 10px;
|
|
207
|
+
border-radius: 4px;
|
|
208
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.email-input {
|
|
212
|
+
width: 200px;
|
|
213
|
+
}
|
|
150
214
|
</style>
|