safecheck-client 3.0.34-74 → 3.0.34-76
Sign up to get free protection for your applications and to get access to all the features.
- package/package.json +1 -1
- package/src/components/pc/SafeVisitInfo.vue +261 -0
- package/src/components/rongcheng/CheckSearchUser.vue +933 -932
- package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1041 -972
- package/src/main.js +33 -33
- package/src/safecheck.js +898 -895
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "safecheck-client",
|
3
3
|
"//": "主分支版本别乱升,测试包的版本直接发包(建议使用1.XX.XX-XXX格式作为测试包,不要频繁升级第三位版本号),别提交版本号。切了分支切记把主分支版本升了,保证主分支始终是最高版本!!!!!",
|
4
|
-
"version": "3.0.34-
|
4
|
+
"version": "3.0.34-76",
|
5
5
|
"description": "安检模块 前端组件",
|
6
6
|
"author": "丁新 <417755458@qq.com>",
|
7
7
|
"license": "ISC",
|
@@ -0,0 +1,261 @@
|
|
1
|
+
<template xmlns="http://www.w3.org/1999/html">
|
2
|
+
<div class="auto select-overspread form-horizontal auto">
|
3
|
+
<div class="row workOrderInfo" >
|
4
|
+
<div class="row">
|
5
|
+
<blockquote class="bg-info">
|
6
|
+
回访
|
7
|
+
</blockquote>
|
8
|
+
</div>
|
9
|
+
<div class="row roee">
|
10
|
+
<div class="col-sm-6 form-group form-input-group" >
|
11
|
+
<label class="font_normal_body" style="width: 25%">回 访 员</label>
|
12
|
+
<input type="text" class="form-control" v-model="model.f_visitman" placeholder='回访员' >
|
13
|
+
</div>
|
14
|
+
<div class="col-sm-6 form-group form-input-group" >
|
15
|
+
<label class="font_normal_body" style="width: 25%">回访时间</label>
|
16
|
+
<datepicker placeholder="回访时间"
|
17
|
+
:value.sync="model.f_visitdate"
|
18
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
19
|
+
></datepicker>
|
20
|
+
</div>
|
21
|
+
<!-- <div class="col-sm-6 form-group form-input-group">-->
|
22
|
+
<!-- <label class="font_normal_body" style="width: 25%">质量满意度</label>-->
|
23
|
+
<!-- <v-select :value.sync="model.f_qualitycore"-->
|
24
|
+
<!-- :value-single="true"-->
|
25
|
+
<!-- :options='qualitycase'-->
|
26
|
+
<!-- placeholder='质量满意情况'-->
|
27
|
+
<!-- close-on-select>-->
|
28
|
+
<!-- </v-select>-->
|
29
|
+
<!-- </div>-->
|
30
|
+
<!-- <div class="col-sm-6 form-group form-input-group">-->
|
31
|
+
<!-- <label class=" font_normal_body" style="width: 25%">服务满意度</label>-->
|
32
|
+
<!-- <v-select :value.sync="model.f_servicescore"-->
|
33
|
+
<!-- v-model="model.f_servicescore"-->
|
34
|
+
<!-- :value-single="true"-->
|
35
|
+
<!-- :options='servicecase'-->
|
36
|
+
<!-- placeholder='服务态度满意情况'-->
|
37
|
+
<!-- close-on-select>-->
|
38
|
+
<!-- </v-select>-->
|
39
|
+
<!-- </div>-->
|
40
|
+
<!-- <div class="col-sm-6 form-group form-input-group">-->
|
41
|
+
<!-- <label class="font_normal_body" style="width: 25%">联系电话</label>-->
|
42
|
+
<!-- <input type="text" v-model='model.f_phone' class="form-control"/>-->
|
43
|
+
<!-- <button class="button_search button_spacing" @click="callout(model.f_phone)">呼出</button>-->
|
44
|
+
<!-- </div>-->
|
45
|
+
<div class="col-sm-6 form-group form-input-group">
|
46
|
+
<label class="font_normal_body" style="width: 25%">地址</label>
|
47
|
+
<input type="text" :value='row.f_address' class="form-control" disabled/>
|
48
|
+
</div>
|
49
|
+
<div class="col-sm-12 form-input-group">
|
50
|
+
<label class="font_normal_body" style="width: 12.5%">客户意见</label>
|
51
|
+
<textarea name="name" rows="3" v-model="model.f_remarks" class="form-control ver-textarea"
|
52
|
+
style="width: 80%"></textarea>
|
53
|
+
</div>
|
54
|
+
<div class="col-sm-12 form-input-group" style="margin-top: 6px">
|
55
|
+
<label class="font_normal_body" style="width: 12.5%">备注</label>
|
56
|
+
<textarea name="name" rows="4" v-model="model.f_bz" class="form-control ver-textarea"
|
57
|
+
style="width: 80%"></textarea>
|
58
|
+
</div>
|
59
|
+
<div class="row button-range form-group form-input-group">
|
60
|
+
<button type="button" name="button"
|
61
|
+
class="button_search button_spacing" @click="saveVisit">提交</button>
|
62
|
+
<button type="button" name="button" style="background-color: #5ac0d9;border-radius: 4px;"
|
63
|
+
class="button_spacing button_search" @click="clearVisit">取消</button>
|
64
|
+
</div>
|
65
|
+
</div>
|
66
|
+
</div>
|
67
|
+
<modal :show.sync="showcalloutResult" width="50%" backdrop="false">
|
68
|
+
<header slot="modal-header" class="modal-header">
|
69
|
+
<center><h4 class="modal-title ">{{showTitle}}结果</h4></center>
|
70
|
+
</header>
|
71
|
+
<article slot="modal-body" class="modal-body" style="height: 100px;padding-top: 15px!important;">
|
72
|
+
<div v-show="!calloutResult"><label>正在{{ showTitle }},请稍后。。。。。。</label></div>
|
73
|
+
<div v-show="calloutResult">
|
74
|
+
<div class="row auto" v-show="calloutResult.area">
|
75
|
+
<label>真实归属地:</label><span>{{calloutResult.area}}</span>
|
76
|
+
</div>
|
77
|
+
<div class="row auto" v-show="calloutResult.calloutNo">
|
78
|
+
<label>真实呼出号码:</label><span>{{calloutResult.calloutNo}}</span>
|
79
|
+
</div>
|
80
|
+
<div class="row auto" v-show="calloutResult.err">
|
81
|
+
<label>其他信息:</label><span>{{calloutResult.err}}</span>
|
82
|
+
</div>
|
83
|
+
</div>
|
84
|
+
</article>
|
85
|
+
<footer slot="modal-footer" class="modal-footer">
|
86
|
+
<button type="button" class="btn btn-success" @click='calloutConfirm()'>确认</button>
|
87
|
+
</footer>
|
88
|
+
</modal>
|
89
|
+
</div>
|
90
|
+
</template>
|
91
|
+
|
92
|
+
<script>
|
93
|
+
import { HttpResetClass } from 'vue-client'
|
94
|
+
import * as Util from '../Util'
|
95
|
+
import wxcon from '../../stores/wxconfig'
|
96
|
+
export default {
|
97
|
+
title: '回访单',
|
98
|
+
props: {
|
99
|
+
contextxianshi:null,
|
100
|
+
row:Object,
|
101
|
+
phone:'',
|
102
|
+
idwavfile:'',
|
103
|
+
outltime:'',
|
104
|
+
showcalloutResult:false,
|
105
|
+
calloutResult:null,
|
106
|
+
showTitle:'呼出',
|
107
|
+
userip:'000.000.000.000'
|
108
|
+
|
109
|
+
},
|
110
|
+
data () {
|
111
|
+
return {
|
112
|
+
|
113
|
+
model:{
|
114
|
+
f_again_revisit: '是',
|
115
|
+
f_visitman:'',
|
116
|
+
f_visitdate:this.getNowFormatDate(),
|
117
|
+
f_qualitycore:'满意',
|
118
|
+
f_servicescore:'满意',
|
119
|
+
f_phone:'',
|
120
|
+
f_remarks:'',
|
121
|
+
f_type:'回访',
|
122
|
+
f_record_sound:'',
|
123
|
+
f_bz:''
|
124
|
+
},
|
125
|
+
idwavfile:'',
|
126
|
+
loginUser: this.$login.f,
|
127
|
+
aChannel:0,
|
128
|
+
aModule:1,
|
129
|
+
qualitycase: this.$appdata.getParam('质量满意情况'),
|
130
|
+
servicecase: this.$appdata.getParam('服务态度满意情况')
|
131
|
+
}
|
132
|
+
},
|
133
|
+
methods: {
|
134
|
+
calloutConfirm(){
|
135
|
+
this.calloutResult=null
|
136
|
+
this.showcalloutResult=false
|
137
|
+
},
|
138
|
+
//获取当前时间
|
139
|
+
getNowFormatDate() {
|
140
|
+
var date = new Date();
|
141
|
+
var seperator1 = "-";
|
142
|
+
var seperator2 = ":";
|
143
|
+
var month = date.getMonth() + 1;
|
144
|
+
var strDate = date.getDate();
|
145
|
+
var hour = date.getHours();
|
146
|
+
var min = date.getMinutes();
|
147
|
+
var second = date.getSeconds();
|
148
|
+
if (month >= 1 && month <= 9) {
|
149
|
+
month = "0" + month;
|
150
|
+
}
|
151
|
+
if (strDate >= 0 && strDate <= 9) {
|
152
|
+
strDate = "0" + strDate;
|
153
|
+
}
|
154
|
+
if (hour >= 0 && hour <= 9) {
|
155
|
+
hour = "0" + hour;
|
156
|
+
}
|
157
|
+
if (min >= 0 && min <= 9) {
|
158
|
+
min = "0" + min;
|
159
|
+
}
|
160
|
+
if (second >= 0 && second <= 9) {
|
161
|
+
second = "0" + second;
|
162
|
+
}
|
163
|
+
var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
|
164
|
+
+ " " + hour + seperator2 + min
|
165
|
+
+ seperator2 + second;
|
166
|
+
return currentdate;
|
167
|
+
},
|
168
|
+
// 提交
|
169
|
+
saveVisit () {
|
170
|
+
let sql = `update t_devices_items set f_is_visit = '是',f_visitdate='${this.model.f_visitdate}',f_visitman='${this.model.f_visitman}',f_remarks='${this.model.f_remarks}',f_bz='${this.model.f_bz}',f_qualitycore='${this.model.f_qualitycore}',f_servicescore='${this.model.f_servicescore}' where id = '${this.row.f_defect_id}' `
|
171
|
+
let http = new HttpResetClass()
|
172
|
+
http.load('POST', 'rs/logic/runSQL', {data: {sql: sql}},
|
173
|
+
{resolveMsg: null, rejectMsg: null}).then(resp=>{
|
174
|
+
this.$showMessage('提交完成')
|
175
|
+
this.$emit('visitback','nodo')
|
176
|
+
}).catch(error=>{
|
177
|
+
this.$showMessage('提交失败')
|
178
|
+
})
|
179
|
+
},
|
180
|
+
// 取消
|
181
|
+
clearVisit () {
|
182
|
+
this.$emit('show-obj',{})
|
183
|
+
},
|
184
|
+
callout(telnum){
|
185
|
+
if(telnum){
|
186
|
+
let http = new HttpResetClass()
|
187
|
+
try{
|
188
|
+
http.load('POST', wxcon.voiceUrl, {
|
189
|
+
aId: this.$login.f.id,
|
190
|
+
aChannel: this.aChannel,
|
191
|
+
aModule: this.aModule,
|
192
|
+
aBzType:"callout",
|
193
|
+
bzExtra: telnum,
|
194
|
+
bzId: telnum,
|
195
|
+
aName: this.$login.f.name,
|
196
|
+
RoleId:this.$login.f.rolesnames,
|
197
|
+
sendTime:Util.toStandardTimeString()
|
198
|
+
}, {resolveMsg: null, rejectMsg: null}).then((req) => {
|
199
|
+
this.calloutResult = req.data.calloutResult
|
200
|
+
if (req.data.desc === '呼出失败') {
|
201
|
+
this.$showAlert(`呼出${telnum}失败`, 'danger', 0)
|
202
|
+
}else{
|
203
|
+
this.showcalloutResult=true
|
204
|
+
this.showTitle='呼出'
|
205
|
+
// 返回录音ID 存在回访数据里
|
206
|
+
this.model.f_record_sound = req.data.RecordsID
|
207
|
+
}
|
208
|
+
})
|
209
|
+
}catch(e){
|
210
|
+
this.$showAlert(`${e.data},呼出失败`, 'danger', 0)
|
211
|
+
this.callContent = '呼出失败'
|
212
|
+
}
|
213
|
+
}else{
|
214
|
+
this.$showAlert(`无电话号码`, 'danger', 0)
|
215
|
+
this.callContent = '呼出失败'
|
216
|
+
}
|
217
|
+
},
|
218
|
+
},
|
219
|
+
watch: {
|
220
|
+
'phone'(val){
|
221
|
+
this.model.f_phone = val
|
222
|
+
}
|
223
|
+
},
|
224
|
+
ready(){
|
225
|
+
let sql = 'tel_singleTable_OrderBy'
|
226
|
+
let condition = {
|
227
|
+
items: 'tongdao,mokuai',
|
228
|
+
tablename: 'T_IPTONGDAO',
|
229
|
+
condition: `loginip = '${this.userip}'`,
|
230
|
+
orderitem: 'id'
|
231
|
+
}
|
232
|
+
//tag
|
233
|
+
let http = new HttpResetClass()
|
234
|
+
http.load('POST', `rs/logic/tel_getOneData`, {data: {sql: sql, params: condition}}, {resolveMsg: null, rejectMsg: null}).then((req) => {
|
235
|
+
this.aChannel = parseInt(req.data.tongdao)
|
236
|
+
this.aModule = parseInt(req.data.mokuai)
|
237
|
+
})
|
238
|
+
this.model.f_visitman = this.$login.f.name
|
239
|
+
this.model.f_phone = this.phone
|
240
|
+
this.model.f_bz = this.row ? this.row.f_remarks:''
|
241
|
+
}
|
242
|
+
}
|
243
|
+
</script>
|
244
|
+
<style scoped lang="less">
|
245
|
+
.workOrderInfo{
|
246
|
+
.roee {
|
247
|
+
div {
|
248
|
+
margin-top: 10px;
|
249
|
+
padding-right: 3px;
|
250
|
+
}
|
251
|
+
label {
|
252
|
+
display: inline-block;
|
253
|
+
height: 100%;
|
254
|
+
min-width: 100px;
|
255
|
+
text-align: justify;
|
256
|
+
text-align-last: justify;
|
257
|
+
}
|
258
|
+
}
|
259
|
+
}
|
260
|
+
</style>
|
261
|
+
|