apply-clients 3.5.6-2 → 3.5.6-21
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/build/dev-server.js +4 -4
- package/package.json +1 -1
- package/src/filiale/dingcheng/android/AppInstallationDetails.vue +477 -478
- package/src/filiale/dingcheng/pc/InstallationDetails.vue +607 -608
- package/src/filiale/fugou/android/AppDevicesManagement.vue +516 -521
- package/src/filiale/fugou/android/AppInstallationDetails.vue +541 -542
- package/src/filiale/fugou/pc/ServiceControl.vue +9 -0
- package/src/filiale/gongyi/pc/chargeManagement.vue +765 -765
- package/src/filiale/jinhuang/pc/Applybatchdispatch.vue +770 -0
- package/src/filiale/jinhuang/pc/ContractList.vue +222 -220
- package/src/filiale/jinhuang/pc/ServiceControl.vue +2016 -2016
- package/src/filiale/jinhuang/pc/SupervisoryList.vue +478 -459
- package/src/filiale/jinhuang/pc.js +2 -1
- package/src/filiale/shexian/android/AppServiceControl.vue +18 -1
- package/src/filiale/yangchunboneng/android/AppChargeManagement.vue +1 -1
- package/src/filiale/yangchunboneng/android/AppInstallationMaterial.vue +1 -1
- package/src/filiale/yangchunboneng/android/AppOtherChargeList.vue +281 -0
- package/src/filiale/yangchunboneng/android/AppServiceControl.vue +4 -0
- package/src/filiale/yangchunboneng/android.js +2 -1
- package/src/filiale/yangchunboneng/pc/ExplorationSelect.vue +622 -612
- package/src/filiale/yangchunboneng/pc/InstallInfoSelect.vue +400 -365
- package/src/filiale/yangchunboneng/pc/ServiceControl.vue +4 -0
- package/src/filiale/yangchunboneng/pc/SupervisoryList.vue +30 -3
- package/src/filiale/yangchunboneng/pc/chargeManagement.vue +9 -6
- package/src/main.js +1 -1
|
@@ -1,220 +1,222 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="flex-row">
|
|
3
|
-
<div class="basic-main">
|
|
4
|
-
<criteria-paged :model="model" v-ref:cp>
|
|
5
|
-
<criteria partial='criteria' @condition-changed='$parent.searchCondition' v-ref:cri>
|
|
6
|
-
<div class="form-horizontal select-overspread container-fluid auto" partial>
|
|
7
|
-
<div class="row">
|
|
8
|
-
<div class="form-group col-sm-3">
|
|
9
|
-
<label class="font_normal_body">组织机构:</label>
|
|
10
|
-
<res-select
|
|
11
|
-
restype='organization'
|
|
12
|
-
:initresid='$parent.$parent.curorgid'
|
|
13
|
-
@res-select="$parent.$parent.getorg"
|
|
14
|
-
is-mul="false"
|
|
15
|
-
></res-select>
|
|
16
|
-
</div>
|
|
17
|
-
<div class="form-group col-sm-3">
|
|
18
|
-
<label class="font_normal_body">工程编号:</label>
|
|
19
|
-
<input type="text" style="width: 60%" class="input_search" placeholder='工程编号' v-model="model.f_apply_num"
|
|
20
|
-
v-on:keyup.enter="$parent.$parent.search()"
|
|
21
|
-
condition="f_apply_num = '{}'">
|
|
22
|
-
</div>
|
|
23
|
-
<div class="form-group col-sm-3">
|
|
24
|
-
<label class="font_normal_body">签订状态:</label>
|
|
25
|
-
<v-select
|
|
26
|
-
v-model="model.f_signature_state"
|
|
27
|
-
condition=" f_signature_state ='{}'"
|
|
28
|
-
:value.sync="model.f_signature_state"
|
|
29
|
-
:options='$parent.$parent.Status'
|
|
30
|
-
class="select select_list"
|
|
31
|
-
:value-single="true"
|
|
32
|
-
close-on-select ></v-select>
|
|
33
|
-
</div>
|
|
34
|
-
<div class="form-group col-sm-3 button-range">
|
|
35
|
-
<button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
|
|
36
|
-
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
37
|
-
<div
|
|
38
|
-
:class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
|
|
39
|
-
@click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
|
|
40
|
-
class="button_spacing"
|
|
41
|
-
style="float: right">
|
|
42
|
-
</div>
|
|
43
|
-
</div>
|
|
44
|
-
</div>
|
|
45
|
-
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
46
|
-
</div>
|
|
47
|
-
</div>
|
|
48
|
-
</criteria>
|
|
49
|
-
<data-grid :model="model" partial='list' v-ref:grid style="overflow: auto" class="list_area table_sy">
|
|
50
|
-
<template partial='head'>
|
|
51
|
-
<tr>
|
|
52
|
-
<th>序号</th>
|
|
53
|
-
<th>工程编号</th>
|
|
54
|
-
<th>工程名称</th>
|
|
55
|
-
<th>合同名称</th>
|
|
56
|
-
<th>签订状态</th>
|
|
57
|
-
<th>操作</th>
|
|
58
|
-
</tr>
|
|
59
|
-
</template>
|
|
60
|
-
<template partial='body'>
|
|
61
|
-
<tr>
|
|
62
|
-
<td style="text-align: center;">
|
|
63
|
-
<nobr><font>{{$index+1}}</font></nobr>
|
|
64
|
-
</td>
|
|
65
|
-
<td style="text-align: center;" >
|
|
66
|
-
<nobr><font>{{row.f_apply_num}}</font></nobr>
|
|
67
|
-
</td>
|
|
68
|
-
<td style="text-align: center;" >
|
|
69
|
-
<nobr><font>{{row.f_entry_name}}</font></nobr>
|
|
70
|
-
</td>
|
|
71
|
-
<td style="text-align: center;" >
|
|
72
|
-
<nobr><font>{{row.f_contract_name}}</font></nobr>
|
|
73
|
-
</td>
|
|
74
|
-
<td style="text-align: center;" >
|
|
75
|
-
<nobr><font>{{row.f_signature_state}}</font></nobr>
|
|
76
|
-
</td>
|
|
77
|
-
<td style="text-align: center;" >
|
|
78
|
-
<button v-if="row.f_signature_state!=='已签订'" type="button" name="button" class="btn btn-link"
|
|
79
|
-
@click.stop="$parent.$parent.$parent.Signed(row)">签字
|
|
80
|
-
</button>
|
|
81
|
-
</td>
|
|
82
|
-
</tr>
|
|
83
|
-
</template>
|
|
84
|
-
</data-grid>
|
|
85
|
-
</criteria-paged>
|
|
86
|
-
</div>
|
|
87
|
-
</div>
|
|
88
|
-
</template>
|
|
89
|
-
<script>
|
|
90
|
-
import {HttpResetClass, PagedList} from 'vue-client'
|
|
91
|
-
import QXClient from '../../../components/QXClient'
|
|
92
|
-
import { urlToBase64 } from '../../../components/SignTools'
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
{label: '
|
|
105
|
-
{label: '
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
let
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
this.
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
this.
|
|
198
|
-
this.
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex-row">
|
|
3
|
+
<div class="basic-main">
|
|
4
|
+
<criteria-paged :model="model" v-ref:cp>
|
|
5
|
+
<criteria partial='criteria' @condition-changed='$parent.searchCondition' v-ref:cri>
|
|
6
|
+
<div class="form-horizontal select-overspread container-fluid auto" partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<div class="form-group col-sm-3">
|
|
9
|
+
<label class="font_normal_body">组织机构:</label>
|
|
10
|
+
<res-select
|
|
11
|
+
restype='organization'
|
|
12
|
+
:initresid='$parent.$parent.curorgid'
|
|
13
|
+
@res-select="$parent.$parent.getorg"
|
|
14
|
+
is-mul="false"
|
|
15
|
+
></res-select>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="form-group col-sm-3">
|
|
18
|
+
<label class="font_normal_body">工程编号:</label>
|
|
19
|
+
<input type="text" style="width: 60%" class="input_search" placeholder='工程编号' v-model="model.f_apply_num"
|
|
20
|
+
v-on:keyup.enter="$parent.$parent.search()"
|
|
21
|
+
condition="f_apply_num = '{}'">
|
|
22
|
+
</div>
|
|
23
|
+
<div class="form-group col-sm-3">
|
|
24
|
+
<label class="font_normal_body">签订状态:</label>
|
|
25
|
+
<v-select
|
|
26
|
+
v-model="model.f_signature_state"
|
|
27
|
+
condition=" f_signature_state ='{}'"
|
|
28
|
+
:value.sync="model.f_signature_state"
|
|
29
|
+
:options='$parent.$parent.Status'
|
|
30
|
+
class="select select_list"
|
|
31
|
+
:value-single="true"
|
|
32
|
+
close-on-select ></v-select>
|
|
33
|
+
</div>
|
|
34
|
+
<div class="form-group col-sm-3 button-range">
|
|
35
|
+
<button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
|
|
36
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
37
|
+
<div
|
|
38
|
+
:class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
|
|
39
|
+
@click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
|
|
40
|
+
class="button_spacing"
|
|
41
|
+
style="float: right">
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
</criteria>
|
|
49
|
+
<data-grid :model="model" partial='list' v-ref:grid style="overflow: auto" class="list_area table_sy">
|
|
50
|
+
<template partial='head'>
|
|
51
|
+
<tr>
|
|
52
|
+
<th>序号</th>
|
|
53
|
+
<th>工程编号</th>
|
|
54
|
+
<th>工程名称</th>
|
|
55
|
+
<th>合同名称</th>
|
|
56
|
+
<th>签订状态</th>
|
|
57
|
+
<th>操作</th>
|
|
58
|
+
</tr>
|
|
59
|
+
</template>
|
|
60
|
+
<template partial='body'>
|
|
61
|
+
<tr>
|
|
62
|
+
<td style="text-align: center;">
|
|
63
|
+
<nobr><font>{{$index+1}}</font></nobr>
|
|
64
|
+
</td>
|
|
65
|
+
<td style="text-align: center;" >
|
|
66
|
+
<nobr><font>{{row.f_apply_num}}</font></nobr>
|
|
67
|
+
</td>
|
|
68
|
+
<td style="text-align: center;" >
|
|
69
|
+
<nobr><font>{{row.f_entry_name}}</font></nobr>
|
|
70
|
+
</td>
|
|
71
|
+
<td style="text-align: center;" >
|
|
72
|
+
<nobr><font>{{row.f_contract_name}}</font></nobr>
|
|
73
|
+
</td>
|
|
74
|
+
<td style="text-align: center;" >
|
|
75
|
+
<nobr><font>{{row.f_signature_state}}</font></nobr>
|
|
76
|
+
</td>
|
|
77
|
+
<td style="text-align: center;" >
|
|
78
|
+
<button v-if="row.f_signature_state!=='已签订'" type="button" name="button" class="btn btn-link"
|
|
79
|
+
@click.stop="$parent.$parent.$parent.Signed(row)">签字
|
|
80
|
+
</button>
|
|
81
|
+
</td>
|
|
82
|
+
</tr>
|
|
83
|
+
</template>
|
|
84
|
+
</data-grid>
|
|
85
|
+
</criteria-paged>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</template>
|
|
89
|
+
<script>
|
|
90
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
91
|
+
import QXClient from '../../../components/QXClient'
|
|
92
|
+
import { urlToBase64 } from '../../../components/SignTools'
|
|
93
|
+
export default {
|
|
94
|
+
title: '合同列表',
|
|
95
|
+
data () {
|
|
96
|
+
return {
|
|
97
|
+
model: new PagedList('rs/sql/getContractList', 30),
|
|
98
|
+
curorgid: [this.$login.f.orgid],
|
|
99
|
+
curdepid: [],
|
|
100
|
+
curuserid: [],
|
|
101
|
+
contractname: [{ label: '全部', value: ''},...this.$appdata.getParam('报建签订合同')],
|
|
102
|
+
Status: [
|
|
103
|
+
{label: '全部', value: ''},
|
|
104
|
+
{label: '已签订', value: '已签订'},
|
|
105
|
+
{label: '待签订', value: '待签订'}
|
|
106
|
+
],
|
|
107
|
+
criteriaShow: false,
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
ready () {
|
|
111
|
+
this.search()
|
|
112
|
+
},
|
|
113
|
+
methods: {
|
|
114
|
+
Signed (record) {
|
|
115
|
+
this.$showMessage(`是否选择当前合同进行签字`, ['confirm']).then( (res) => {
|
|
116
|
+
if (res === 'confirm') {
|
|
117
|
+
if (record.f_contract_url) {
|
|
118
|
+
const base64Data =urlToBase64(record.f_signature_url)
|
|
119
|
+
QXClient.openPDFSign({
|
|
120
|
+
data: {
|
|
121
|
+
pdfdata: base64Data
|
|
122
|
+
},
|
|
123
|
+
successCallback: (response) => {
|
|
124
|
+
console.log('>>> 签名结果:', JSON.stringify(response))
|
|
125
|
+
if (response.image) {
|
|
126
|
+
new HttpResetClass().load('POST', `/api/af-revenue/logic/contractSignature`, {
|
|
127
|
+
image: response.image,
|
|
128
|
+
...record
|
|
129
|
+
}, {
|
|
130
|
+
resolveMsg: null,
|
|
131
|
+
rejectMsg: null
|
|
132
|
+
}).then( async res2 => {
|
|
133
|
+
console.log('PDF 签名成功:', res2)
|
|
134
|
+
if (res2.f_signature_url) {
|
|
135
|
+
//修改t_files文件
|
|
136
|
+
let http = new HttpResetClass()
|
|
137
|
+
let sql = `update t_files set f_downloadpath= '${res2.f_signature_url}' , f_realpath= '${res2.f_signature_path}' where f_process_id= '${row.f_process_id}' and fusetype='${row.f_contract_signature_id}'`
|
|
138
|
+
let res = await http.load('POST', `rs/logic/runSQL`, {data: {sql: sql}}, {
|
|
139
|
+
resolveMsg: null,
|
|
140
|
+
rejectMsg: '修改文件失败!!!'
|
|
141
|
+
})
|
|
142
|
+
} else {
|
|
143
|
+
console.error('未找到合同URL,无法打开预览')
|
|
144
|
+
|
|
145
|
+
}
|
|
146
|
+
})
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
errorCallback: (error) => {
|
|
150
|
+
this.$showMessage('签字失败')
|
|
151
|
+
}
|
|
152
|
+
})
|
|
153
|
+
} else {
|
|
154
|
+
this.$showMessage("未找到该合同文件")
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
})
|
|
158
|
+
},
|
|
159
|
+
clear () {
|
|
160
|
+
Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
|
|
161
|
+
this.$refs.cp.$refs.cri.model[key] = ''
|
|
162
|
+
})
|
|
163
|
+
this.curdepid = []
|
|
164
|
+
this.curuserid = []
|
|
165
|
+
},
|
|
166
|
+
searchCondition (args) {
|
|
167
|
+
args.condition = args.condition + ` and tcs.f_orgid in (${this.curorgid})`
|
|
168
|
+
if( args.model.f_contract_name==='' || args.model.f_contract_name==null){
|
|
169
|
+
args.condition = args.condition + ` and tcs.f_contract_name in ${this.getname}`
|
|
170
|
+
}
|
|
171
|
+
this.model.search(args.condition, args.model)
|
|
172
|
+
},
|
|
173
|
+
// 查询
|
|
174
|
+
search () {
|
|
175
|
+
this.$refs.cp.$refs.cri.search()
|
|
176
|
+
},
|
|
177
|
+
|
|
178
|
+
getuser (val) {
|
|
179
|
+
if (val.length <= 0) {
|
|
180
|
+
return
|
|
181
|
+
}
|
|
182
|
+
this.curuserid = val
|
|
183
|
+
this.search()
|
|
184
|
+
},
|
|
185
|
+
getdep (val) {
|
|
186
|
+
if (val.length <= 0) {
|
|
187
|
+
return
|
|
188
|
+
}
|
|
189
|
+
this.curdepid = val
|
|
190
|
+
this.curuserid = []
|
|
191
|
+
this.search()
|
|
192
|
+
},
|
|
193
|
+
getorg (val) {
|
|
194
|
+
if (val.length <= 0) {
|
|
195
|
+
return
|
|
196
|
+
}
|
|
197
|
+
this.curorgid = val
|
|
198
|
+
this.curdepid = []
|
|
199
|
+
this.curuserid = []
|
|
200
|
+
this.search()
|
|
201
|
+
},
|
|
202
|
+
|
|
203
|
+
},
|
|
204
|
+
computed: {
|
|
205
|
+
getname () {
|
|
206
|
+
let list = this.$appdata.getParam('报建签订合同')
|
|
207
|
+
return `(${list.map(item => `'${item.value}'`).toString()})`
|
|
208
|
+
},
|
|
209
|
+
getCondition () {
|
|
210
|
+
return {
|
|
211
|
+
condition: this.model.condition
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
</script>
|
|
217
|
+
|
|
218
|
+
<style scoped>
|
|
219
|
+
</style>
|
|
220
|
+
|
|
221
|
+
<style scoped>
|
|
222
|
+
</style>
|