fstarter 2.10.47 → 2.10.50
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 +1 -1
- package/src/plugins/assets/callNative.js +3 -1
- package/src/plugins/components/BSUpload2.vue +15 -5
- package/src/plugins/components/BSVerCode.vue +93 -96
- package/src/plugins/platform/isp_phone.js +5 -1
- package/src/plugins/services/faceTx.js +61 -0
- package/src/plugins/services/getTxFaceResult.js +83 -0
- package/src/plugins/services/index.js +4 -0
- package/src/views/auth.vue +28 -21
- package/src/views/auth3.vue +15 -6
- package/src/views/page.vue +4 -1
- package/README.md +0 -18
- package/fstarter.iml +0 -9
package/package.json
CHANGED
|
@@ -473,7 +473,9 @@ function callShell(fnModel, param, cbparam, vnode = null) {
|
|
|
473
473
|
}
|
|
474
474
|
const requestJson = JSON.stringify(jsonObj)
|
|
475
475
|
console.log('壳调用json:' + requestJson, ua)
|
|
476
|
-
|
|
476
|
+
if (vnode != null) {
|
|
477
|
+
window.shellCaller = vnode
|
|
478
|
+
}
|
|
477
479
|
if (ua.iPad || ua.iPhone) {
|
|
478
480
|
if (window.navigator.userAgent.indexOf('app_ios_wk') != -1) {
|
|
479
481
|
window.webkit.messageHandlers.JSonString.postMessage(requestJson)
|
|
@@ -18,14 +18,15 @@
|
|
|
18
18
|
<van-image :src="model.bgImage"/>
|
|
19
19
|
</van-uploader>
|
|
20
20
|
|
|
21
|
-
<
|
|
22
|
-
v-
|
|
23
|
-
|
|
21
|
+
<div
|
|
22
|
+
v-show="showCooper"
|
|
23
|
+
class="pop"
|
|
24
24
|
closeable
|
|
25
25
|
:overlay="false"
|
|
26
26
|
:style="{
|
|
27
27
|
width: '100%',
|
|
28
|
-
height: '100%'
|
|
28
|
+
height: '100%',
|
|
29
|
+
zIndex: '999'
|
|
29
30
|
}"
|
|
30
31
|
@click-close-icon="cancel"
|
|
31
32
|
>
|
|
@@ -71,7 +72,7 @@
|
|
|
71
72
|
</van-button>
|
|
72
73
|
</div>
|
|
73
74
|
</div>
|
|
74
|
-
</
|
|
75
|
+
</div>
|
|
75
76
|
</div>
|
|
76
77
|
</template>
|
|
77
78
|
|
|
@@ -372,6 +373,15 @@
|
|
|
372
373
|
width: 50%;
|
|
373
374
|
}
|
|
374
375
|
}
|
|
376
|
+
.pop {
|
|
377
|
+
position: fixed;
|
|
378
|
+
top: 50%;
|
|
379
|
+
left:0;
|
|
380
|
+
transform: translate3d(0,-50%,0);
|
|
381
|
+
max-height: 100%;
|
|
382
|
+
overflow-y: auto;
|
|
383
|
+
background-color: #fff;
|
|
384
|
+
}
|
|
375
385
|
</style>
|
|
376
386
|
<style scoped>
|
|
377
387
|
/* .cropper-container >>> .van-button--info{
|
|
@@ -7,125 +7,122 @@
|
|
|
7
7
|
slot="button"
|
|
8
8
|
@blur="blur"
|
|
9
9
|
:class="ctlClass"
|
|
10
|
-
:readonly="!sent"
|
|
11
10
|
:clearable="model.clearable"
|
|
12
11
|
:error-message="model.hiddenValidate ? '': model.validateResult.message"
|
|
13
12
|
>
|
|
14
|
-
<van-button slot="button" @click="sendVerCode" :disabled="modelData.disabled">{{model.sendButtonLabel}}
|
|
13
|
+
<van-button slot="button" @click="sendVerCode" :disabled="modelData.disabled">{{ model.sendButtonLabel }}
|
|
14
|
+
</van-button>
|
|
15
15
|
</van-field>
|
|
16
16
|
|
|
17
17
|
</template>
|
|
18
18
|
|
|
19
19
|
<script>
|
|
20
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
|
-
this.$emit('send-verCode',function(){
|
|
61
|
-
self.sent = true
|
|
62
|
-
self.model.expiredTime = self.modelData.expiredTime
|
|
63
|
-
|
|
64
|
-
var source = Rx.Observable.timer(0, 1000)
|
|
65
|
-
|
|
66
|
-
source = source.pipe(take(self.modelData.expiredTime)).pipe(filter(num => self.sent));
|
|
67
|
-
|
|
68
|
-
source.subscribe({
|
|
69
|
-
next: function(value) {
|
|
70
|
-
|
|
71
|
-
self.model.expiredTime = self.model.expiredTime - 1
|
|
72
|
-
self.model.sendButtonLabel = self.modelData.expiredLabel.format(self.model.expiredTime)
|
|
73
|
-
},
|
|
74
|
-
complete: function() {
|
|
75
|
-
|
|
76
|
-
self.model.sendButtonLabel = self.modelData.sendButtonLabel
|
|
77
|
-
self.sent = false
|
|
78
|
-
self.model.value = ''
|
|
79
|
-
},
|
|
80
|
-
error: function(error) {
|
|
81
|
-
console.log('Throw Error: ' + error)
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
},this.fullName)
|
|
21
|
+
import Rx from 'rxjs';
|
|
22
|
+
import {filter, take} from 'rxjs/operators';
|
|
23
|
+
import base2 from './base2.js'
|
|
24
|
+
|
|
25
|
+
export default {
|
|
26
|
+
name: "bs-vercode",
|
|
27
|
+
mixins: [base2],
|
|
28
|
+
props: {},
|
|
29
|
+
data() {
|
|
30
|
+
return {
|
|
31
|
+
validateCtl: true,
|
|
32
|
+
sent: false
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
mounted() {
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
},
|
|
39
|
+
methods: {
|
|
40
|
+
createDefaultModel() {
|
|
41
|
+
return {
|
|
42
|
+
type: 'BSVerCode',
|
|
43
|
+
value: '',
|
|
44
|
+
placeholder: 'lang.ctl.BSVerCode.placeholder',
|
|
45
|
+
sendButtonLabel: 'lang.ctl.BSVerCode.sendButtonLabel',
|
|
46
|
+
expiredTime: 60,
|
|
47
|
+
expiredLabel: '{0}s'
|
|
48
|
+
};
|
|
49
|
+
},
|
|
50
|
+
sendVerCode() {
|
|
51
|
+
if (this.sent) {
|
|
52
|
+
return
|
|
53
|
+
}
|
|
54
|
+
let self = this
|
|
55
|
+
this.$emit('send-verCode', function () {
|
|
56
|
+
self.sent = true
|
|
57
|
+
self.model.expiredTime = self.modelData.expiredTime
|
|
58
|
+
|
|
59
|
+
var source = Rx.Observable.timer(0, 1000)
|
|
86
60
|
|
|
61
|
+
source = source.pipe(take(self.modelData.expiredTime)).pipe(filter(num => self.sent));
|
|
62
|
+
|
|
63
|
+
source.subscribe({
|
|
64
|
+
next: function (value) {
|
|
65
|
+
|
|
66
|
+
self.model.expiredTime = self.model.expiredTime - 1
|
|
67
|
+
self.model.sendButtonLabel = self.modelData.expiredLabel.format(self.model.expiredTime)
|
|
87
68
|
},
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
this.model.value = this.modelData.value
|
|
94
|
-
this.model.placeholder = this.modelData.placeholder
|
|
95
|
-
this.model.sendButtonLabel= this.modelData.sendButtonLabel
|
|
96
|
-
this.model.expiredTime = this.modelData.expiredTime
|
|
97
|
-
this.model.expiredLabel = this.modelData.expiredLabel
|
|
98
|
-
|
|
69
|
+
complete: function () {
|
|
70
|
+
|
|
71
|
+
self.model.sendButtonLabel = self.modelData.sendButtonLabel
|
|
72
|
+
self.sent = false
|
|
73
|
+
// self.model.value = ''
|
|
99
74
|
},
|
|
100
|
-
|
|
75
|
+
error: function (error) {
|
|
76
|
+
console.log('Throw Error: ' + error)
|
|
77
|
+
self.sent = false
|
|
78
|
+
}
|
|
79
|
+
});
|
|
101
80
|
|
|
102
|
-
|
|
103
|
-
this.model.validateToken++
|
|
81
|
+
}, this.fullName)
|
|
104
82
|
|
|
105
|
-
this.$emit('blur',function(){
|
|
106
83
|
|
|
107
|
-
|
|
84
|
+
},
|
|
85
|
+
reset() {
|
|
108
86
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
87
|
+
this.sent = false
|
|
88
|
+
this.model.label = this.modelData.label
|
|
89
|
+
this.model.disabled = this.modelData.disabled
|
|
90
|
+
this.model.value = this.modelData.value
|
|
91
|
+
this.model.placeholder = this.modelData.placeholder
|
|
92
|
+
this.model.sendButtonLabel = this.modelData.sendButtonLabel
|
|
93
|
+
this.model.expiredTime = this.modelData.expiredTime
|
|
94
|
+
this.model.expiredLabel = this.modelData.expiredLabel
|
|
114
95
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
96
|
+
},
|
|
97
|
+
blur() {
|
|
98
|
+
|
|
99
|
+
if (!this.model.readonly)
|
|
100
|
+
this.model.validateToken++
|
|
101
|
+
|
|
102
|
+
this.$emit('blur', function () {
|
|
103
|
+
|
|
104
|
+
}, this.fullName)
|
|
120
105
|
|
|
121
106
|
}
|
|
107
|
+
},
|
|
108
|
+
watch: {
|
|
109
|
+
'model.value': {
|
|
110
|
+
handler(val, oldval) {
|
|
111
|
+
|
|
112
|
+
this.setEventString(this.fullName, this.sname, 'value', val, oldval)
|
|
113
|
+
},
|
|
114
|
+
deep: false
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
}
|
|
122
119
|
|
|
123
120
|
</script>
|
|
124
121
|
|
|
125
122
|
<style scoped>
|
|
126
123
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
124
|
+
.BSVerCode_disabled {
|
|
125
|
+
color: #999999;
|
|
126
|
+
}
|
|
130
127
|
|
|
131
128
|
</style>
|
|
@@ -28,7 +28,11 @@ platform = {
|
|
|
28
28
|
|
|
29
29
|
const requestJson = JSON.stringify(jsonObj)
|
|
30
30
|
console.log('requestJson', requestJson)
|
|
31
|
-
|
|
31
|
+
//如果vnode没有赋值,则默认为null,说明业务层不需要vnode来处理回调事件
|
|
32
|
+
//所以避免冲掉正在进行的需要vnode回调事件的业务逻辑,增加一个为null的判断
|
|
33
|
+
if (vnode != null) {
|
|
34
|
+
window.shellCaller = vnode
|
|
35
|
+
}
|
|
32
36
|
// window.webkit.messageHandlers.JSonString.postMessage(requestJson)
|
|
33
37
|
// return
|
|
34
38
|
if (ua.iPad || ua.iPhone) {
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import http from '../assets/http.js'
|
|
2
|
+
import ak from '../assets/ak.js'
|
|
3
|
+
import config from '../assets/config.js'
|
|
4
|
+
import {ua} from "../assets/ua";
|
|
5
|
+
|
|
6
|
+
var faceTx = {
|
|
7
|
+
|
|
8
|
+
getData(params){
|
|
9
|
+
let nonce = radomKey()
|
|
10
|
+
return {
|
|
11
|
+
'idcard_name': params.idcard_name,
|
|
12
|
+
'idcard_number': params.idcard_number,
|
|
13
|
+
'comparison_type': '1',
|
|
14
|
+
'nonce': nonce
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
|
|
18
|
+
invoke(params){
|
|
19
|
+
|
|
20
|
+
if(ua.isIspPhone){
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
}else if(ua.microMsg){
|
|
24
|
+
debugger
|
|
25
|
+
let apiUrl = config.file.baseURL + '/file/v1/hasl/fileAdmin/fileAdmin/getTXFaceDomain'
|
|
26
|
+
// if(faceType == 'wy'){
|
|
27
|
+
// apiUrl = config.file.baseURL + '/file/v1/hasl/fileAdmin/fileAdmin/getTXFaceDomain'
|
|
28
|
+
// }else{
|
|
29
|
+
// apiUrl = config.file.baseURL + '/file/v1/hasl/fileAdmin/fileAdmin/getFaceTokenNew'
|
|
30
|
+
// }
|
|
31
|
+
|
|
32
|
+
return http.post(apiUrl,params,true,true).then((data)=>{
|
|
33
|
+
const objstr = JSON.stringify(Object.assign(params, data))
|
|
34
|
+
debugger
|
|
35
|
+
localStorage.setItem('faceAbout', objstr)
|
|
36
|
+
let cbUrl = ak.http.concatParams(params.cbUrl ? params.cbUrl : window.location.href,'facetoken=1')
|
|
37
|
+
const url = `https://${data.optimalDomain}/api/web/login?webankAppId=TIDA55eC&version=1.0.0&nonce=${params.nonce}&orderNo=${data.orderNo}&h5faceId=${data.h5faceId}&url=${encodeURIComponent(cbUrl)}&from=browser&userId=${data.userId}&sign=${data.sign}&redirectType=1&resultType=1`
|
|
38
|
+
window.location.href = url
|
|
39
|
+
return Promise.resolve(data)
|
|
40
|
+
|
|
41
|
+
})
|
|
42
|
+
|
|
43
|
+
}else{
|
|
44
|
+
Promise.reject()
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
}
|
|
50
|
+
function radomKey(length = 32, needChars = true) {
|
|
51
|
+
let chars = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
|
|
52
|
+
let num = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
|
|
53
|
+
let final = needChars ? chars : num
|
|
54
|
+
let nums = ''
|
|
55
|
+
for (var i = 0; i < length; i++) {
|
|
56
|
+
const id = parseInt(Math.random() * 61)
|
|
57
|
+
nums += final[id]
|
|
58
|
+
}
|
|
59
|
+
return nums
|
|
60
|
+
}
|
|
61
|
+
export default faceTx;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import http from '../assets/http.js'
|
|
2
|
+
import ak from '../assets/ak.js'
|
|
3
|
+
import config from '../assets/config.js'
|
|
4
|
+
import {ua} from "../assets/ua";
|
|
5
|
+
import service from "../service"
|
|
6
|
+
|
|
7
|
+
var getTxFaceResult = {
|
|
8
|
+
|
|
9
|
+
need(){
|
|
10
|
+
|
|
11
|
+
let token = ak.http.getQueryString('facetoken')
|
|
12
|
+
if(ak.utils.isEmpty(token)){
|
|
13
|
+
localStorage.removeItem('faceAbout')
|
|
14
|
+
return false
|
|
15
|
+
} else {
|
|
16
|
+
return true
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
},
|
|
20
|
+
getData(){
|
|
21
|
+
|
|
22
|
+
let obj = JSON.parse(localStorage.getItem('faceAbout'))
|
|
23
|
+
|
|
24
|
+
localStorage.removeItem('faceAbout')
|
|
25
|
+
return {
|
|
26
|
+
biz_no: obj.bizSeqNo,
|
|
27
|
+
userId: obj.userId,
|
|
28
|
+
orderNo: obj.orderNo,
|
|
29
|
+
nonce: obj.nonce,
|
|
30
|
+
expired: '-1000',
|
|
31
|
+
buz: 'POLICY_FILE',
|
|
32
|
+
domain: 'POLICY',
|
|
33
|
+
buzId: radomNum(16),
|
|
34
|
+
fileName: radomNum(16)
|
|
35
|
+
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
|
|
39
|
+
invoke(params){
|
|
40
|
+
// let faceType = params.faceType
|
|
41
|
+
// delete params.faceType
|
|
42
|
+
|
|
43
|
+
if(ua.isIspPhone){
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
}else if(ua.microMsg){
|
|
47
|
+
let apiUrl = config.file.baseURL + '/file/v1/hasl/fileAdmin/fileAdmin/getTXFaceCompareResult'
|
|
48
|
+
return http.post(apiUrl,params,true,true).then((data)=>{
|
|
49
|
+
let res = data.result
|
|
50
|
+
let resData = {
|
|
51
|
+
confidence: res.similarity,
|
|
52
|
+
imageFile: res.faceFileId,
|
|
53
|
+
success: true
|
|
54
|
+
}
|
|
55
|
+
service.saveInitService('getTxFaceResult',resData)
|
|
56
|
+
let reUrl = ak.http.deleteParams(window.location.href,'facetoken')
|
|
57
|
+
window.location.href = reUrl
|
|
58
|
+
return Promise.resolve(resData)
|
|
59
|
+
}).catch(err => {
|
|
60
|
+
let reUrl = ak.http.deleteParams(window.location.href,'facetoken')
|
|
61
|
+
reUrl = ak.http.deleteParams(reUrl,'orderNo')
|
|
62
|
+
reUrl = ak.http.deleteParams(reUrl,'signature')
|
|
63
|
+
reUrl = ak.http.deleteParams(reUrl,'h5faceId')
|
|
64
|
+
reUrl = ak.http.deleteParams(reUrl,'code')
|
|
65
|
+
window.location.href = reUrl
|
|
66
|
+
return Promise.reject(err)
|
|
67
|
+
})
|
|
68
|
+
|
|
69
|
+
}else{
|
|
70
|
+
Promise.reject()
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
}
|
|
76
|
+
function radomNum(n) {
|
|
77
|
+
var rnd = ''
|
|
78
|
+
for (var i = 0; i < n; i++) {
|
|
79
|
+
rnd += Math.floor(Math.random() * 10)
|
|
80
|
+
}
|
|
81
|
+
return rnd
|
|
82
|
+
}
|
|
83
|
+
export default getTxFaceResult;
|
|
@@ -14,6 +14,8 @@ import jumpView from './jumpView'
|
|
|
14
14
|
import statusBarHeight from './statusBarHeight'
|
|
15
15
|
import goSetPage from './goSetPage'
|
|
16
16
|
import faceInApp from './faceInApp'
|
|
17
|
+
import faceTx from './faceTx'
|
|
18
|
+
import getTxFaceResult from './getTxFaceResult'
|
|
17
19
|
|
|
18
20
|
|
|
19
21
|
var services = services || {}
|
|
@@ -34,4 +36,6 @@ services['jumpView'] = jumpView
|
|
|
34
36
|
services['goSetPage'] = goSetPage
|
|
35
37
|
services['statusBarHeight'] = statusBarHeight
|
|
36
38
|
services['faceInApp'] = faceInApp
|
|
39
|
+
services['faceTx'] = faceTx
|
|
40
|
+
services['getTxFaceResult'] = getTxFaceResult
|
|
37
41
|
export default services;
|
package/src/views/auth.vue
CHANGED
|
@@ -84,6 +84,7 @@
|
|
|
84
84
|
return {
|
|
85
85
|
vname:'auth',
|
|
86
86
|
needProcessEvent:true,
|
|
87
|
+
needLoadData: true,
|
|
87
88
|
submodel:{
|
|
88
89
|
data: {
|
|
89
90
|
required:true, // 必填
|
|
@@ -190,10 +191,10 @@
|
|
|
190
191
|
methods: {
|
|
191
192
|
face() {
|
|
192
193
|
const a = {
|
|
193
|
-
|
|
194
|
-
|
|
194
|
+
idcard_number: '152531199103160179',
|
|
195
|
+
idcard_name: '胡玉泽'
|
|
195
196
|
}
|
|
196
|
-
this.$service.callService('
|
|
197
|
+
this.$service.callService('faceTx', a)
|
|
197
198
|
},
|
|
198
199
|
gosetPage() {
|
|
199
200
|
this.$service.callService('goSetPage')
|
|
@@ -280,20 +281,22 @@
|
|
|
280
281
|
|
|
281
282
|
},
|
|
282
283
|
loadData(res){
|
|
283
|
-
|
|
284
|
+
if (res.serviceId === 'getTxFaceResult') {
|
|
285
|
+
console.log(res)
|
|
286
|
+
}
|
|
284
287
|
if(res.serviceId == 'getAuthInfo'){
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
// this.selector('#sex').set('items',[{value:"dddd",key:"21"},{value:"ffff",key:"01"}])
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
288
|
+
// console.log('aaaaaaa')
|
|
289
|
+
// console.log(this.selector('>page').ctls)
|
|
290
|
+
// let data = res.data
|
|
291
|
+
// this.selector('#auth').selector('')
|
|
292
|
+
// this.selector('#name').selector('#name').setValue(data.name)
|
|
293
|
+
// this.selector('#bank').setValue(data.bank)
|
|
294
|
+
// this.selector('#sex').setValue('1')
|
|
295
|
+
// // this.selector('#sex').set('items',[{value:"dddd",key:"21"},{value:"ffff",key:"01"}])
|
|
296
|
+
|
|
297
|
+
// this.selector('#cardno').setValue(data.cardno)
|
|
298
|
+
|
|
299
|
+
// console.log(this.regedit)
|
|
297
300
|
}
|
|
298
301
|
|
|
299
302
|
|
|
@@ -304,11 +307,15 @@
|
|
|
304
307
|
};
|
|
305
308
|
},
|
|
306
309
|
sendVerCode(resolve){
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
310
|
+
debugger
|
|
311
|
+
setTimeout(function() {
|
|
312
|
+
resolve()
|
|
313
|
+
}, 1000)
|
|
314
|
+
|
|
315
|
+
// this.$service.callService('sendVerCode').then((data)=>{
|
|
316
|
+
// resolve()
|
|
317
|
+
// }
|
|
318
|
+
// )
|
|
312
319
|
|
|
313
320
|
},
|
|
314
321
|
authWatchHandle(){
|
package/src/views/auth3.vue
CHANGED
|
@@ -8,21 +8,22 @@
|
|
|
8
8
|
cname="upload"
|
|
9
9
|
@done="done"
|
|
10
10
|
@delete="deleteFn"
|
|
11
|
+
ref="a"
|
|
11
12
|
>
|
|
12
13
|
</bs-upload2>
|
|
13
|
-
<bs-upload2
|
|
14
|
+
<!-- <bs-upload2
|
|
14
15
|
id="abv"
|
|
15
16
|
:mod="submodel.upload2"
|
|
16
17
|
cname="upload"
|
|
17
18
|
@done="done"
|
|
18
19
|
@delete="deleteFn"
|
|
19
20
|
>
|
|
20
|
-
</bs-upload2>
|
|
21
|
+
</bs-upload2> -->
|
|
21
22
|
<bs-upload
|
|
22
23
|
id="abv"
|
|
23
24
|
:mod="submodel.upload2"
|
|
24
25
|
cname="upload2"
|
|
25
|
-
@done="
|
|
26
|
+
@done="done1"
|
|
26
27
|
@delete="deleteFn"
|
|
27
28
|
>
|
|
28
29
|
</bs-upload>
|
|
@@ -74,10 +75,10 @@
|
|
|
74
75
|
// actions: 'ocr_bc', // 银行卡
|
|
75
76
|
},
|
|
76
77
|
upload2:{
|
|
77
|
-
|
|
78
|
+
uploadType: 'IdCard_Front', //身份证正面
|
|
78
79
|
// uploadType: 'IdCard_Back' //身份证反面
|
|
79
|
-
uploadType: '
|
|
80
|
-
buzId: '
|
|
80
|
+
// uploadType: 'ocr_id0', // 银行卡
|
|
81
|
+
buzId: '2321123123' // 前端自生成uuid
|
|
81
82
|
},
|
|
82
83
|
viewer:{
|
|
83
84
|
value:'https://testfile.ihasl.com/file/v1/hasl/fileAdmin/fileAdmin/get/4cba0c329a994356aa7f4e958c88373b.pdf'
|
|
@@ -113,12 +114,20 @@
|
|
|
113
114
|
},
|
|
114
115
|
done() {
|
|
115
116
|
const a = this.selector('#upload').get('data')
|
|
117
|
+
console.log()
|
|
118
|
+
this.bb = `${a.fileId}.${a.ext}`
|
|
119
|
+
|
|
120
|
+
},
|
|
121
|
+
done1() {
|
|
122
|
+
const a = this.selector('#upload2').get('data')
|
|
123
|
+
console.log(a)
|
|
116
124
|
this.bb = `${a.fileId}.${a.ext}`
|
|
117
125
|
},
|
|
118
126
|
a(){
|
|
119
127
|
// this.$service.callService('face',{fileUrl: this.bb}).then(()=>{
|
|
120
128
|
// localStorage.setItem('face.flag',true)
|
|
121
129
|
// })
|
|
130
|
+
console.log(this.$refs.a.fileList = [])
|
|
122
131
|
},
|
|
123
132
|
loadData(data) {
|
|
124
133
|
if(data.serviceId == 'getFaceResult'){
|
package/src/views/page.vue
CHANGED
|
@@ -62,10 +62,13 @@
|
|
|
62
62
|
menu:[]
|
|
63
63
|
}
|
|
64
64
|
},
|
|
65
|
+
created() {
|
|
66
|
+
//把基础参数的获取从mounted提前到created中,避免业务代码大量的请求基础参数导致的一些问题
|
|
67
|
+
this.$service.callServices(['hideToolBar','getToken','getSystemData'])
|
|
68
|
+
},
|
|
65
69
|
mounted() {
|
|
66
70
|
|
|
67
71
|
weixin.hideWxMenu()
|
|
68
|
-
this.$service.callServices(['hideToolBar','getToken','getSystemData'])
|
|
69
72
|
|
|
70
73
|
},
|
|
71
74
|
computed: {
|
package/README.md
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# fstarter
|
|
2
|
-
|
|
3
|
-
> A Vue.js project
|
|
4
|
-
|
|
5
|
-
## Build Setup
|
|
6
|
-
|
|
7
|
-
``` bash
|
|
8
|
-
# install dependencies
|
|
9
|
-
npm install
|
|
10
|
-
|
|
11
|
-
# serve with hot reload at localhost:8080
|
|
12
|
-
npm run dev
|
|
13
|
-
|
|
14
|
-
# build for production with minification
|
|
15
|
-
npm run build
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
For detailed explanation on how things work, consult the [docs for vue-loader](http://vuejs.github.io/vue-loader).
|
package/fstarter.iml
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<module type="WEB_MODULE" version="4">
|
|
3
|
-
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
|
4
|
-
<exclude-output />
|
|
5
|
-
<content url="file://$MODULE_DIR$" />
|
|
6
|
-
<orderEntry type="inheritedJdk" />
|
|
7
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
|
8
|
-
</component>
|
|
9
|
-
</module>
|