sale-client 3.5.150 → 3.5.152
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 +195 -195
- package/package.json +1 -1
- package/src/components/FilesManage/UserGeneralInfoTest.vue +2 -15
- package/src/components/chargeBatch/RecordCancel.vue +35 -3
- package/src/components/common/userinfo_detail/UserInfoDetailManageNew.vue +5 -0
- package/src/components/common/userinfo_detail/iot_detail/QueryHistoryInstruct.vue +304 -0
- package/src/filiale/gehua/sale.js +1 -1
- package/src/filiale/rongcheng/business/IOTMeterCenter.vue +1 -1
- package/src/filiale/shanxian/UserDeviceInfoTest.vue +62 -13
- package/src/plugins/CancelService.js +4 -1
- package/src/plugins/ChangeMeterService.js +6 -8
package/build/dev-server.js
CHANGED
|
@@ -1,195 +1,195 @@
|
|
|
1
|
-
var express = require('express')
|
|
2
|
-
var webpack = require('webpack')
|
|
3
|
-
var config = require('./webpack.dev.conf')
|
|
4
|
-
var proxyMiddleware = require('http-proxy-middleware')
|
|
5
|
-
// var httpProxy = require('http-proxy')
|
|
6
|
-
|
|
7
|
-
var app = express()
|
|
8
|
-
var compiler = webpack(config)
|
|
9
|
-
// var proxy = httpProxy.createProxyServer()
|
|
10
|
-
|
|
11
|
-
// Define HTTP proxies to your custom API backend
|
|
12
|
-
// https://github.com/chimurai/http-proxy-middleware
|
|
13
|
-
var bendi = 'http://121.36.106.17:8400', bendi1 = 'http://121.36.106.17:8400/'
|
|
14
|
-
// 公司测试服务
|
|
15
|
-
// var fuwu = 'http://192.168.50.4:8400'
|
|
16
|
-
// var fuwu = 'http://39.99.85.14:8400'
|
|
17
|
-
var fuwu = 'http://
|
|
18
|
-
// var fuwu = 'http://47.93.217.125:8400'
|
|
19
|
-
// var fuwu = 'http://121.36.106.17:8400/'
|
|
20
|
-
// 铜川正式
|
|
21
|
-
// var fuwu = 'http://61.134.55.234:9999/'
|
|
22
|
-
// 铜川测试
|
|
23
|
-
// var fuwu = 'http://61.134.55.234:9999/'
|
|
24
|
-
// var fuwu = 'http://60.222.250.39:8300/'
|
|
25
|
-
// 韶关
|
|
26
|
-
// var fuwu = 'http://119.146.1.106:8300/'
|
|
27
|
-
// 巩义测试服务
|
|
28
|
-
// var fuwu = 'http://192.168.0.227:8400'
|
|
29
|
-
// 燎原测试服务
|
|
30
|
-
// var fuwu = 'http://121.41.19.238:8400 '
|
|
31
|
-
// var fuwu = 'http://121.41.19.238:9001/'
|
|
32
|
-
|
|
33
|
-
// var fuwu = 'http://139.214.92.34:8301/'
|
|
34
|
-
|
|
35
|
-
var proxyTable = {
|
|
36
|
-
// '/'
|
|
37
|
-
// '/rs/logic/stopBasicLivingNew':{
|
|
38
|
-
// target:'http://127.0.0.1:8080'
|
|
39
|
-
// },
|
|
40
|
-
// '/rs/logic/getBatchOperaPro':{
|
|
41
|
-
// target:'http://127.0.0.1:8080'
|
|
42
|
-
// },
|
|
43
|
-
// '/rs/sql/sale_getUser':{
|
|
44
|
-
// target:'http://127.0.0.1:8080'
|
|
45
|
-
// },
|
|
46
|
-
// '/rs/logic/getOperBtns':{
|
|
47
|
-
// target:'http://127.0.0.1:8080'
|
|
48
|
-
// },
|
|
49
|
-
// '/rs/file/uploadFile':{
|
|
50
|
-
// target:'http://127.0.0.1:8080'
|
|
51
|
-
// },
|
|
52
|
-
// '/rs/business/batchRunExcelDefault/filemanage_fileSave/newSettleFileImport':{
|
|
53
|
-
// target:'http://127.0.0.1:8080'
|
|
54
|
-
// },
|
|
55
|
-
// '/rs/business/batchRunNew/BatchmachineDownHand/machineDownHand':{
|
|
56
|
-
// target:'http:127.0.0.1:8080'
|
|
57
|
-
// },
|
|
58
|
-
// '/rs/sql/getDownPlan':{
|
|
59
|
-
// target:'http:127.0.0.1:8080'
|
|
60
|
-
// },
|
|
61
|
-
// '/rs/logic/saleExport': {
|
|
62
|
-
// target: fuwu
|
|
63
|
-
// },
|
|
64
|
-
// '/rs/logic/saleGetExportProgress': {
|
|
65
|
-
// target: fuwu
|
|
66
|
-
// },
|
|
67
|
-
// '/rs/logic/getWarningMsg': {
|
|
68
|
-
// target: 'http://localhost:8080/'
|
|
69
|
-
// },
|
|
70
|
-
'/rs/file': {
|
|
71
|
-
target: fuwu
|
|
72
|
-
},
|
|
73
|
-
'/files': {
|
|
74
|
-
target: fuwu
|
|
75
|
-
},
|
|
76
|
-
// 查找资源服务数据
|
|
77
|
-
'/rs/search': {
|
|
78
|
-
target: fuwu
|
|
79
|
-
},
|
|
80
|
-
// 查找资源服务数据
|
|
81
|
-
'/rs/logic/getLogin': {
|
|
82
|
-
target: fuwu
|
|
83
|
-
},
|
|
84
|
-
// 查找资源服务数据
|
|
85
|
-
'/rs/logic/getInitData': {
|
|
86
|
-
target: fuwu
|
|
87
|
-
},
|
|
88
|
-
'/rs/logic/getSaleInitData': {
|
|
89
|
-
target: fuwu
|
|
90
|
-
},
|
|
91
|
-
'/invoice': {
|
|
92
|
-
target: fuwu
|
|
93
|
-
},
|
|
94
|
-
// 用户登录服务地址
|
|
95
|
-
'/rs/user': {
|
|
96
|
-
target: fuwu
|
|
97
|
-
},
|
|
98
|
-
'/rs/path/getParams': {
|
|
99
|
-
target: fuwu
|
|
100
|
-
},
|
|
101
|
-
'/rs/data': {
|
|
102
|
-
target: fuwu
|
|
103
|
-
},
|
|
104
|
-
'/rs/license': {
|
|
105
|
-
target: fuwu
|
|
106
|
-
},
|
|
107
|
-
'/rs/db': {
|
|
108
|
-
target: fuwu
|
|
109
|
-
},
|
|
110
|
-
'/excel': {
|
|
111
|
-
target: fuwu
|
|
112
|
-
},
|
|
113
|
-
'/rs/config': {
|
|
114
|
-
target: fuwu
|
|
115
|
-
},
|
|
116
|
-
'/rs/sql/getLicenseById': {
|
|
117
|
-
target: fuwu
|
|
118
|
-
},
|
|
119
|
-
'/rs/sql/manage_getarealist': {
|
|
120
|
-
target: fuwu
|
|
121
|
-
},
|
|
122
|
-
'/rs/sql/manage_getstreetlist': {
|
|
123
|
-
target: fuwu
|
|
124
|
-
},
|
|
125
|
-
'/rs/report': {
|
|
126
|
-
target: 'http://121.36.106.17:8400/'
|
|
127
|
-
},
|
|
128
|
-
'/rs/vue': {
|
|
129
|
-
target: fuwu
|
|
130
|
-
},
|
|
131
|
-
'/webmeter': {
|
|
132
|
-
target: 'http://192.168.50.4:8450'
|
|
133
|
-
},
|
|
134
|
-
'/rs': {
|
|
135
|
-
// target: 'http://192.168.30.63:8081/'
|
|
136
|
-
// target: 'http://121.36.106.17:8400/'
|
|
137
|
-
target: fuwu
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
var devMiddleware = require('webpack-dev-middleware')(compiler, {
|
|
142
|
-
publicPath: config.output.publicPath,
|
|
143
|
-
stats: {
|
|
144
|
-
colors: true,
|
|
145
|
-
chunks: false
|
|
146
|
-
}
|
|
147
|
-
})
|
|
148
|
-
|
|
149
|
-
var hotMiddleware = require('webpack-hot-middleware')(compiler)
|
|
150
|
-
// force page reload when html-webpack-plugin template changes
|
|
151
|
-
compiler.plugin('compilation', function (compilation) {
|
|
152
|
-
compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
|
|
153
|
-
hotMiddleware.publish({action: 'reload'})
|
|
154
|
-
cb()
|
|
155
|
-
})
|
|
156
|
-
})
|
|
157
|
-
|
|
158
|
-
// proxy api requests
|
|
159
|
-
Object.keys(proxyTable).forEach(function (context) {
|
|
160
|
-
var options = proxyTable[context]
|
|
161
|
-
if (typeof options === 'string') {
|
|
162
|
-
options = {target: options}
|
|
163
|
-
}
|
|
164
|
-
app.use(proxyMiddleware(context, options))
|
|
165
|
-
})
|
|
166
|
-
|
|
167
|
-
// handle fallback for HTML5 history API
|
|
168
|
-
app.use(require('connect-history-api-fallback')())
|
|
169
|
-
// app.use(function (req, res, next) {
|
|
170
|
-
// res.header('Access-Control-Allow-Origin', '*')
|
|
171
|
-
// res.header('Access-Control-Allow-Headers', 'X-Requested-With')
|
|
172
|
-
// res.header('Access-Control-Allow-Methods', 'PUT, POST, GET,DELETE, OPTIONS')
|
|
173
|
-
// res.header('X-Powered-By', '3,2,1')
|
|
174
|
-
// res.header('Access-Control-Allow-Credentials', 'true')
|
|
175
|
-
// res.header('Content-Type', 'application/json;charset=utf-8')
|
|
176
|
-
// next()
|
|
177
|
-
// })
|
|
178
|
-
|
|
179
|
-
// serve webpack bundle output
|
|
180
|
-
app.use(devMiddleware)
|
|
181
|
-
|
|
182
|
-
// enable hot-reload and state-preserving
|
|
183
|
-
// compilation error display
|
|
184
|
-
app.use(hotMiddleware)
|
|
185
|
-
|
|
186
|
-
// serve pure static assets
|
|
187
|
-
app.use('/static', express.static('./static'))
|
|
188
|
-
|
|
189
|
-
module.exports = app.listen(8089, function (err) {
|
|
190
|
-
if (err) {
|
|
191
|
-
console.log(err)
|
|
192
|
-
return
|
|
193
|
-
}
|
|
194
|
-
console.log('Listening at http://localhost:8089')
|
|
195
|
-
})
|
|
1
|
+
var express = require('express')
|
|
2
|
+
var webpack = require('webpack')
|
|
3
|
+
var config = require('./webpack.dev.conf')
|
|
4
|
+
var proxyMiddleware = require('http-proxy-middleware')
|
|
5
|
+
// var httpProxy = require('http-proxy')
|
|
6
|
+
|
|
7
|
+
var app = express()
|
|
8
|
+
var compiler = webpack(config)
|
|
9
|
+
// var proxy = httpProxy.createProxyServer()
|
|
10
|
+
|
|
11
|
+
// Define HTTP proxies to your custom API backend
|
|
12
|
+
// https://github.com/chimurai/http-proxy-middleware
|
|
13
|
+
var bendi = 'http://121.36.106.17:8400', bendi1 = 'http://121.36.106.17:8400/'
|
|
14
|
+
// 公司测试服务
|
|
15
|
+
// var fuwu = 'http://192.168.50.4:8400'
|
|
16
|
+
// var fuwu = 'http://39.99.85.14:8400'
|
|
17
|
+
var fuwu = 'http://121.36.60.63:8800/'
|
|
18
|
+
// var fuwu = 'http://47.93.217.125:8400'
|
|
19
|
+
// var fuwu = 'http://121.36.106.17:8400/'
|
|
20
|
+
// 铜川正式
|
|
21
|
+
// var fuwu = 'http://61.134.55.234:9999/'
|
|
22
|
+
// 铜川测试
|
|
23
|
+
// var fuwu = 'http://61.134.55.234:9999/'
|
|
24
|
+
// var fuwu = 'http://60.222.250.39:8300/'
|
|
25
|
+
// 韶关
|
|
26
|
+
// var fuwu = 'http://119.146.1.106:8300/'
|
|
27
|
+
// 巩义测试服务
|
|
28
|
+
// var fuwu = 'http://192.168.0.227:8400'
|
|
29
|
+
// 燎原测试服务
|
|
30
|
+
// var fuwu = 'http://121.41.19.238:8400 '
|
|
31
|
+
// var fuwu = 'http://121.41.19.238:9001/'
|
|
32
|
+
|
|
33
|
+
// var fuwu = 'http://139.214.92.34:8301/'
|
|
34
|
+
|
|
35
|
+
var proxyTable = {
|
|
36
|
+
// '/'
|
|
37
|
+
// '/rs/logic/stopBasicLivingNew':{
|
|
38
|
+
// target:'http://127.0.0.1:8080'
|
|
39
|
+
// },
|
|
40
|
+
// '/rs/logic/getBatchOperaPro':{
|
|
41
|
+
// target:'http://127.0.0.1:8080'
|
|
42
|
+
// },
|
|
43
|
+
// '/rs/sql/sale_getUser':{
|
|
44
|
+
// target:'http://127.0.0.1:8080'
|
|
45
|
+
// },
|
|
46
|
+
// '/rs/logic/getOperBtns':{
|
|
47
|
+
// target:'http://127.0.0.1:8080'
|
|
48
|
+
// },
|
|
49
|
+
// '/rs/file/uploadFile':{
|
|
50
|
+
// target:'http://127.0.0.1:8080'
|
|
51
|
+
// },
|
|
52
|
+
// '/rs/business/batchRunExcelDefault/filemanage_fileSave/newSettleFileImport':{
|
|
53
|
+
// target:'http://127.0.0.1:8080'
|
|
54
|
+
// },
|
|
55
|
+
// '/rs/business/batchRunNew/BatchmachineDownHand/machineDownHand':{
|
|
56
|
+
// target:'http:127.0.0.1:8080'
|
|
57
|
+
// },
|
|
58
|
+
// '/rs/sql/getDownPlan':{
|
|
59
|
+
// target:'http:127.0.0.1:8080'
|
|
60
|
+
// },
|
|
61
|
+
// '/rs/logic/saleExport': {
|
|
62
|
+
// target: fuwu
|
|
63
|
+
// },
|
|
64
|
+
// '/rs/logic/saleGetExportProgress': {
|
|
65
|
+
// target: fuwu
|
|
66
|
+
// },
|
|
67
|
+
// '/rs/logic/getWarningMsg': {
|
|
68
|
+
// target: 'http://localhost:8080/'
|
|
69
|
+
// },
|
|
70
|
+
'/rs/file': {
|
|
71
|
+
target: fuwu
|
|
72
|
+
},
|
|
73
|
+
'/files': {
|
|
74
|
+
target: fuwu
|
|
75
|
+
},
|
|
76
|
+
// 查找资源服务数据
|
|
77
|
+
'/rs/search': {
|
|
78
|
+
target: fuwu
|
|
79
|
+
},
|
|
80
|
+
// 查找资源服务数据
|
|
81
|
+
'/rs/logic/getLogin': {
|
|
82
|
+
target: fuwu
|
|
83
|
+
},
|
|
84
|
+
// 查找资源服务数据
|
|
85
|
+
'/rs/logic/getInitData': {
|
|
86
|
+
target: fuwu
|
|
87
|
+
},
|
|
88
|
+
'/rs/logic/getSaleInitData': {
|
|
89
|
+
target: fuwu
|
|
90
|
+
},
|
|
91
|
+
'/invoice': {
|
|
92
|
+
target: fuwu
|
|
93
|
+
},
|
|
94
|
+
// 用户登录服务地址
|
|
95
|
+
'/rs/user': {
|
|
96
|
+
target: fuwu
|
|
97
|
+
},
|
|
98
|
+
'/rs/path/getParams': {
|
|
99
|
+
target: fuwu
|
|
100
|
+
},
|
|
101
|
+
'/rs/data': {
|
|
102
|
+
target: fuwu
|
|
103
|
+
},
|
|
104
|
+
'/rs/license': {
|
|
105
|
+
target: fuwu
|
|
106
|
+
},
|
|
107
|
+
'/rs/db': {
|
|
108
|
+
target: fuwu
|
|
109
|
+
},
|
|
110
|
+
'/excel': {
|
|
111
|
+
target: fuwu
|
|
112
|
+
},
|
|
113
|
+
'/rs/config': {
|
|
114
|
+
target: fuwu
|
|
115
|
+
},
|
|
116
|
+
'/rs/sql/getLicenseById': {
|
|
117
|
+
target: fuwu
|
|
118
|
+
},
|
|
119
|
+
'/rs/sql/manage_getarealist': {
|
|
120
|
+
target: fuwu
|
|
121
|
+
},
|
|
122
|
+
'/rs/sql/manage_getstreetlist': {
|
|
123
|
+
target: fuwu
|
|
124
|
+
},
|
|
125
|
+
'/rs/report': {
|
|
126
|
+
target: 'http://121.36.106.17:8400/'
|
|
127
|
+
},
|
|
128
|
+
'/rs/vue': {
|
|
129
|
+
target: fuwu
|
|
130
|
+
},
|
|
131
|
+
'/webmeter': {
|
|
132
|
+
target: 'http://192.168.50.4:8450'
|
|
133
|
+
},
|
|
134
|
+
'/rs': {
|
|
135
|
+
// target: 'http://192.168.30.63:8081/'
|
|
136
|
+
// target: 'http://121.36.106.17:8400/'
|
|
137
|
+
target: fuwu
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
var devMiddleware = require('webpack-dev-middleware')(compiler, {
|
|
142
|
+
publicPath: config.output.publicPath,
|
|
143
|
+
stats: {
|
|
144
|
+
colors: true,
|
|
145
|
+
chunks: false
|
|
146
|
+
}
|
|
147
|
+
})
|
|
148
|
+
|
|
149
|
+
var hotMiddleware = require('webpack-hot-middleware')(compiler)
|
|
150
|
+
// force page reload when html-webpack-plugin template changes
|
|
151
|
+
compiler.plugin('compilation', function (compilation) {
|
|
152
|
+
compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
|
|
153
|
+
hotMiddleware.publish({action: 'reload'})
|
|
154
|
+
cb()
|
|
155
|
+
})
|
|
156
|
+
})
|
|
157
|
+
|
|
158
|
+
// proxy api requests
|
|
159
|
+
Object.keys(proxyTable).forEach(function (context) {
|
|
160
|
+
var options = proxyTable[context]
|
|
161
|
+
if (typeof options === 'string') {
|
|
162
|
+
options = {target: options}
|
|
163
|
+
}
|
|
164
|
+
app.use(proxyMiddleware(context, options))
|
|
165
|
+
})
|
|
166
|
+
|
|
167
|
+
// handle fallback for HTML5 history API
|
|
168
|
+
app.use(require('connect-history-api-fallback')())
|
|
169
|
+
// app.use(function (req, res, next) {
|
|
170
|
+
// res.header('Access-Control-Allow-Origin', '*')
|
|
171
|
+
// res.header('Access-Control-Allow-Headers', 'X-Requested-With')
|
|
172
|
+
// res.header('Access-Control-Allow-Methods', 'PUT, POST, GET,DELETE, OPTIONS')
|
|
173
|
+
// res.header('X-Powered-By', '3,2,1')
|
|
174
|
+
// res.header('Access-Control-Allow-Credentials', 'true')
|
|
175
|
+
// res.header('Content-Type', 'application/json;charset=utf-8')
|
|
176
|
+
// next()
|
|
177
|
+
// })
|
|
178
|
+
|
|
179
|
+
// serve webpack bundle output
|
|
180
|
+
app.use(devMiddleware)
|
|
181
|
+
|
|
182
|
+
// enable hot-reload and state-preserving
|
|
183
|
+
// compilation error display
|
|
184
|
+
app.use(hotMiddleware)
|
|
185
|
+
|
|
186
|
+
// serve pure static assets
|
|
187
|
+
app.use('/static', express.static('./static'))
|
|
188
|
+
|
|
189
|
+
module.exports = app.listen(8089, function (err) {
|
|
190
|
+
if (err) {
|
|
191
|
+
console.log(err)
|
|
192
|
+
return
|
|
193
|
+
}
|
|
194
|
+
console.log('Listening at http://localhost:8089')
|
|
195
|
+
})
|
package/package.json
CHANGED
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
<footer slot="modal-footer" class="modal-footer">
|
|
59
59
|
</footer>
|
|
60
60
|
</modal>
|
|
61
|
-
<high-meter
|
|
61
|
+
<high-meter :show.sync="highmetershow" v-if="highmetershow" @photo-finish="newPhoto" v-on:confirminfo="confirmIdCard"></high-meter>
|
|
62
62
|
|
|
63
63
|
<modal :show.sync="filechangeDetailsShow" v-ref:filechangeDetailsShow backdrop="false" class="filechangeDetailsShow">
|
|
64
64
|
<header slot="modal-header" class="modal-header" style="text-align: center">
|
|
@@ -333,28 +333,15 @@ export default {
|
|
|
333
333
|
if (!this.filechangeDetailsShow) this.confirmation()
|
|
334
334
|
},
|
|
335
335
|
confirmation () {
|
|
336
|
-
// 权限判断, 没有修改权限,只可以修改电话
|
|
337
|
-
// if (this.filechangeDetailsShow && this.filechangeDetails.rows.find(value => value.f_field_name != '用户电话')) {
|
|
338
|
-
// if (!this.$login.r.find(value => value == '档案信息查询修改')) {
|
|
339
|
-
// this.$showMessage('当前登陆用户没有档案信息查询修改权限, 只能修改用户电话!')
|
|
340
|
-
// return
|
|
341
|
-
// }
|
|
342
|
-
// }
|
|
343
336
|
if (this.fileSaveData.reason && this.fileSaveData.reason !== '其他') {
|
|
344
337
|
this.fileSaveData.modifyReason = this.fileSaveData.reason
|
|
345
338
|
}
|
|
346
|
-
|
|
347
|
-
//console.log('this.filechangeDetails.rows:-----',this.filechangeDetails.rows)
|
|
348
|
-
for (let i = 0;i< this.filechangeDetails.rows.length;i++) {
|
|
349
|
-
//console.log('循环查看row里面的值---------->',this.filechangeDetails.rows[i])
|
|
350
|
-
//console.log('循环查看修改项---------->',this.filechangeDetails.rows[i].f_field_name)
|
|
339
|
+
for (let i = 0; i < this.filechangeDetails.rows.length; i++) {
|
|
351
340
|
if (this.filechangeDetails.rows[i].f_field_name === '通气日期') {
|
|
352
|
-
//console.log('----------有通气日期就进来------------')
|
|
353
341
|
let name = this.$login.f.name
|
|
354
342
|
let nameId = this.$login.f.id
|
|
355
343
|
let parentname = this.$login.f.deps
|
|
356
344
|
let parentnameId = this.$login.f.depids
|
|
357
|
-
console.log('验证进来了--------------->', name, parentname)
|
|
358
345
|
this.fileSaveData.userinfo.f_operator = name
|
|
359
346
|
this.fileSaveData.userinfo.f_operatorid = nameId
|
|
360
347
|
this.fileSaveData.userinfo.f_depname = parentname
|
|
@@ -53,11 +53,24 @@
|
|
|
53
53
|
</template>
|
|
54
54
|
|
|
55
55
|
<script>
|
|
56
|
+
import {HttpResetClass} from "vue-client";
|
|
57
|
+
|
|
56
58
|
let postGen = async function (self, name) {
|
|
57
59
|
let url = 'rs/logic/' + name
|
|
58
|
-
|
|
60
|
+
let res
|
|
59
61
|
// 获取冲正后的记录
|
|
60
|
-
|
|
62
|
+
if (name == 'batchPaymentCancel') {
|
|
63
|
+
// 批量的使用进度条模式
|
|
64
|
+
self.model.uuid = self.$login.guid()
|
|
65
|
+
try {
|
|
66
|
+
await self.$CancelService.cancel(url, self.model, self.data, true)
|
|
67
|
+
} catch (e) {}
|
|
68
|
+
self.$showMessage(`正在批量处理中, 请耐心等待...`, [])
|
|
69
|
+
self.getProgress()
|
|
70
|
+
return
|
|
71
|
+
} else {
|
|
72
|
+
res = await self.$CancelService.cancel(url, self.model, self.data)
|
|
73
|
+
}
|
|
61
74
|
console.log('冲正后的记录。。', res, self.model)
|
|
62
75
|
|
|
63
76
|
// 判断需不需要判断冲正发票(发票管理)
|
|
@@ -180,13 +193,32 @@
|
|
|
180
193
|
},
|
|
181
194
|
// 启用发票管理需要对票号进行验证
|
|
182
195
|
hasValidateBill: false,
|
|
183
|
-
validateOk: false
|
|
196
|
+
validateOk: false,
|
|
197
|
+
// 请求对象(批量导入,查询进度使用)
|
|
198
|
+
HttpReset: new HttpResetClass(),
|
|
199
|
+
timer: null
|
|
184
200
|
}
|
|
185
201
|
},
|
|
186
202
|
ready () {
|
|
187
203
|
readyGen(this)
|
|
188
204
|
},
|
|
189
205
|
methods: {
|
|
206
|
+
getProgress () {
|
|
207
|
+
// 启动定时器定时查询处理结果
|
|
208
|
+
this.timer = setInterval(async () => {
|
|
209
|
+
let res = await this.HttpReset.load('POST', 'rs/logic/getBatchOperaPro', {data: {uuid: this.model.uuid}}, {resolveMsg: null, rejectMsg: null})
|
|
210
|
+
if (res.data.msg || res.data.error) {
|
|
211
|
+
clearInterval(this.timer)
|
|
212
|
+
this.$closeMessage()
|
|
213
|
+
if (res.data.error) {
|
|
214
|
+
this.$showAlert(`${res.data.error}`, 'danger')
|
|
215
|
+
return
|
|
216
|
+
}
|
|
217
|
+
await this.$showMessage(res.data.msg)
|
|
218
|
+
this.$dispatch('cancel-success')
|
|
219
|
+
}
|
|
220
|
+
}, 5000)
|
|
221
|
+
},
|
|
190
222
|
confirm () {
|
|
191
223
|
// 整理数据
|
|
192
224
|
let name = this.sortdata()
|
|
@@ -51,6 +51,9 @@
|
|
|
51
51
|
<saletab header="指令查看" v-if="row.f_meter_type.includes('物联网表')&&permission('指令查看')">
|
|
52
52
|
<query-instruct :row="row" v-if="show == '指令查看'" @deal-msg="dealMsg"></query-instruct>
|
|
53
53
|
</saletab>
|
|
54
|
+
<saletab header="历史指令查看" v-if="row.f_meter_type.includes('物联网表')&&permission('历史指令查看')">
|
|
55
|
+
<query-history-instruct :row="row" v-if="show == '历史指令查看'" @deal-msg="dealMsg"></query-history-instruct>
|
|
56
|
+
</saletab>
|
|
54
57
|
<saletab header="异常报警" v-if="row.f_meter_type.includes('物联网表')&&permission('异常报警')">
|
|
55
58
|
<watch-warning :row="row" v-if="show == '异常报警'" @deal-msg="dealMsg"></watch-warning>
|
|
56
59
|
</saletab>
|
|
@@ -91,6 +94,7 @@
|
|
|
91
94
|
import MachineRecordQuery from './ic_detail/MachineRecordQuery'
|
|
92
95
|
// 导入物联网相关查询
|
|
93
96
|
import QueryInstruct from './iot_detail/QueryInstruct'
|
|
97
|
+
import QueryHistoryInstruct from './iot_detail/QueryHistoryInstruct'
|
|
94
98
|
import WatchCollection from './iot_detail/WatchCollection'
|
|
95
99
|
import WatchWarning from './iot_detail/WatchWarning'
|
|
96
100
|
import PriceChangeQueryUser from './ic_detail/PriceChangeQueryUser'
|
|
@@ -117,6 +121,7 @@ export default {
|
|
|
117
121
|
WatchWarning,
|
|
118
122
|
WatchCollection,
|
|
119
123
|
QueryInstruct,
|
|
124
|
+
QueryHistoryInstruct,
|
|
120
125
|
ChangeRecord,
|
|
121
126
|
CardHandRecord,
|
|
122
127
|
MeterParam,
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div @keyup.enter="search" class="span">
|
|
3
|
+
<criteria-paged :model="model" class="list_area table_sy" v-ref:paged>
|
|
4
|
+
<criteria @condition-changed='$parent.search' partial='criteria' v-ref:criteria>
|
|
5
|
+
<div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
|
|
6
|
+
<div class="row">
|
|
7
|
+
|
|
8
|
+
<div class="col-sm-2 form-group">
|
|
9
|
+
<label class="font_normal_body">指令类型</label>
|
|
10
|
+
<v-select :options='$parent.$parent.instructType' :value.sync="model.f_instruct_type"
|
|
11
|
+
close-on-select
|
|
12
|
+
condition="f_instruct_type='{}'"
|
|
13
|
+
placeholder='指令类型'
|
|
14
|
+
style="width: 60%"
|
|
15
|
+
v-model="model.f_instruct_type"></v-select>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="col-sm-2 form-group">
|
|
18
|
+
<label class="font_normal_body">指令状态</label>
|
|
19
|
+
<v-select :options='$parent.$parent.instructState' :value.sync="model.f_instruct_state"
|
|
20
|
+
close-on-select
|
|
21
|
+
condition="f_instruct_state='{}'"
|
|
22
|
+
placeholder='指令状态'
|
|
23
|
+
style="width: 60%"
|
|
24
|
+
v-model="model.f_instruct_state"
|
|
25
|
+
></v-select>
|
|
26
|
+
</div>
|
|
27
|
+
|
|
28
|
+
<div class="col-sm-2 form-group">
|
|
29
|
+
<label class="font_normal_body">开始时间</label>
|
|
30
|
+
<datepicker :format="'yyyy-MM-dd HH:mm:ss'"
|
|
31
|
+
:value.sync="model.f_start_date"
|
|
32
|
+
class="datepicker"
|
|
33
|
+
condition="f_instruct_date > '{}'"
|
|
34
|
+
placeholder="起始时间"
|
|
35
|
+
style="width: 60%"
|
|
36
|
+
v-model="model.f_start_date"
|
|
37
|
+
></datepicker>
|
|
38
|
+
</div>
|
|
39
|
+
<div class="col-sm-2 form-group">
|
|
40
|
+
<label class="font_normal_body">结束时间</label>
|
|
41
|
+
<datepicker :format="'yyyy-MM-dd HH:mm:ss'"
|
|
42
|
+
:value.sync="model.f_end_date"
|
|
43
|
+
class="datepicker"
|
|
44
|
+
condition="f_instruct_date < '{}'"
|
|
45
|
+
placeholder="结束时间"
|
|
46
|
+
style="width: 60%"
|
|
47
|
+
v-model="model.f_end_date"
|
|
48
|
+
></datepicker>
|
|
49
|
+
</div>
|
|
50
|
+
<div style="float: right">
|
|
51
|
+
<button @click="search()" class="button_search" v-el:cba>查询</button>
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
|
|
55
|
+
</div>
|
|
56
|
+
</criteria>
|
|
57
|
+
<data-grid :model="model" class="list_area table_sy" partial='list' v-ref:grid>
|
|
58
|
+
<template partial='head'>
|
|
59
|
+
<tr>
|
|
60
|
+
<th style="text-align:center;">
|
|
61
|
+
<nobr>指令类型</nobr>
|
|
62
|
+
</th>
|
|
63
|
+
<th style="text-align:center;">
|
|
64
|
+
<nobr>指令内容</nobr>
|
|
65
|
+
</th>
|
|
66
|
+
<th style="text-align:center;">
|
|
67
|
+
<nobr>指令状态</nobr>
|
|
68
|
+
</th>
|
|
69
|
+
<th style="text-align:center;">
|
|
70
|
+
<nobr>指令生成时间</nobr>
|
|
71
|
+
</th>
|
|
72
|
+
<th style="text-align:center;">
|
|
73
|
+
<nobr>指令发送时间</nobr>
|
|
74
|
+
</th>
|
|
75
|
+
<th style="text-align:center;">
|
|
76
|
+
<nobr>指令上表时间</nobr>
|
|
77
|
+
</th>
|
|
78
|
+
<th style="text-align:center;">
|
|
79
|
+
<nobr>操作人</nobr>
|
|
80
|
+
</th>
|
|
81
|
+
<th style="text-align:center;">
|
|
82
|
+
<nobr>操作时间(记录)</nobr>
|
|
83
|
+
</th>
|
|
84
|
+
<th style="text-align:center;">
|
|
85
|
+
<nobr>操作类型</nobr>
|
|
86
|
+
</th>
|
|
87
|
+
<!-- 查这里-->
|
|
88
|
+
<th style="text-align:center;">
|
|
89
|
+
<nobr>操作状态</nobr>
|
|
90
|
+
</th>
|
|
91
|
+
<th style="text-align:center;">
|
|
92
|
+
<nobr>操作人(记录)</nobr>
|
|
93
|
+
</th>
|
|
94
|
+
<th style="text-align:center;">
|
|
95
|
+
<nobr>操作内容</nobr>
|
|
96
|
+
</th>
|
|
97
|
+
<th style="text-align:center;">
|
|
98
|
+
<nobr>操作/指令状态</nobr>
|
|
99
|
+
</th>
|
|
100
|
+
<!--<th style="text-align:center;"><nobr>发送原因</nobr></th>
|
|
101
|
+
<th style="text-align:center;"><nobr>取消原因</nobr></th>-->
|
|
102
|
+
<th style="text-align:center;">
|
|
103
|
+
<nobr>备注信息</nobr>
|
|
104
|
+
</th>
|
|
105
|
+
</tr>
|
|
106
|
+
</template>
|
|
107
|
+
<template partial='body'>
|
|
108
|
+
<tr>
|
|
109
|
+
<td style="text-align:center;">
|
|
110
|
+
<nobr>{{row.f_instruct_type}}</nobr>
|
|
111
|
+
</td>
|
|
112
|
+
<td style="text-align:center;">
|
|
113
|
+
<nobr>{{row.f_instruct_title}}</nobr>
|
|
114
|
+
</td>
|
|
115
|
+
<td style="text-align:center;">
|
|
116
|
+
<nobr>{{row.f_instruct_state}}</nobr>
|
|
117
|
+
</td>
|
|
118
|
+
<td style="text-align:center;">
|
|
119
|
+
<nobr>{{row.f_instruct_date}}</nobr>
|
|
120
|
+
</td>
|
|
121
|
+
<td style="text-align:center;">
|
|
122
|
+
<nobr>{{row.f_send_date}}</nobr>
|
|
123
|
+
</td>
|
|
124
|
+
<td style="text-align:center;">
|
|
125
|
+
<nobr>{{row.f_callback_date}}</nobr>
|
|
126
|
+
</td>
|
|
127
|
+
<td style="text-align:center;">
|
|
128
|
+
<nobr>{{row.f_inputtor}}</nobr>
|
|
129
|
+
</td>
|
|
130
|
+
<td style="text-align:center;">
|
|
131
|
+
<nobr>{{row.f_operate_date}}</nobr>
|
|
132
|
+
</td>
|
|
133
|
+
<td style="text-align:center;">
|
|
134
|
+
<nobr>{{row.f_type}}</nobr>
|
|
135
|
+
</td>
|
|
136
|
+
<!-- 这里-->
|
|
137
|
+
<td style="text-align:center;">
|
|
138
|
+
<nobr>{{$parent.$parent.$parent.stateFlow(row)}}</nobr>
|
|
139
|
+
<!-- <nobr>{{row.f_state}}</nobr>-->
|
|
140
|
+
</td>
|
|
141
|
+
<td style="text-align:center;">
|
|
142
|
+
<nobr>{{row.f_operator}}</nobr>
|
|
143
|
+
</td>
|
|
144
|
+
<td style="text-align:center;">
|
|
145
|
+
<nobr>{{row.f_operator_data}}</nobr>
|
|
146
|
+
</td>
|
|
147
|
+
<td style="text-align:center;" v-if="row.f_instruct_state === '待发送' && row.f_instruct_state !== '取消发送'">
|
|
148
|
+
<nobr>
|
|
149
|
+
{{row.f_instruct_state}}
|
|
150
|
+
</nobr>
|
|
151
|
+
</td>
|
|
152
|
+
<td style="text-align:center;" v-if="row.f_instruct_state !== '待发送' && row.f_instruct_state !== '取消发送'">
|
|
153
|
+
<nobr>
|
|
154
|
+
{{row.f_receive_state}}
|
|
155
|
+
</nobr>
|
|
156
|
+
</td>
|
|
157
|
+
<td style="text-align:center;" v-if="row.f_instruct_state === '取消发送'">
|
|
158
|
+
<nobr>
|
|
159
|
+
<span title="操作人:{{row.f_cancel_inputtor}},操作原因:{{row.f_comments}}">已取消</span>
|
|
160
|
+
</nobr>
|
|
161
|
+
</td>
|
|
162
|
+
<!-- <td style="text-align:center;"><nobr>{{row.f_info}}</nobr></td>
|
|
163
|
+
<td style="text-align:center;"><nobr>{{row.f_comments}}</nobr></td>-->
|
|
164
|
+
<td style="text-align:center;">
|
|
165
|
+
<nobr><span >{{row.f_info}}</span></nobr>
|
|
166
|
+
</td>
|
|
167
|
+
</tr>
|
|
168
|
+
</template>
|
|
169
|
+
</data-grid>
|
|
170
|
+
</criteria-paged>
|
|
171
|
+
<modal :show.sync="handcental" backdrop="false" v-ref:modal>
|
|
172
|
+
<header class="modal-header" slot="modal-header">
|
|
173
|
+
<h4 class="modal-title">取消发送</h4>
|
|
174
|
+
</header>
|
|
175
|
+
<article class="modal-body" slot="modal-body">
|
|
176
|
+
<div class="form-group">
|
|
177
|
+
<label class="font_normal_body" >取消发送原因</label>
|
|
178
|
+
<textarea class="form-control" placeholder="请填写取消发送原因" rows="3" v-model="cancelreason"></textarea>
|
|
179
|
+
</div>
|
|
180
|
+
</article>
|
|
181
|
+
<footer class="modal-footer" slot="modal-footer">
|
|
182
|
+
<button @click='close' class="btn btn-default" type="button" v-show="handcental">取消</button>
|
|
183
|
+
<button @click='confirmcenta()' class="button_search" type="button" v-show="handcental">确认</button>
|
|
184
|
+
</footer>
|
|
185
|
+
</modal>
|
|
186
|
+
</div>
|
|
187
|
+
|
|
188
|
+
</template>
|
|
189
|
+
<script>
|
|
190
|
+
import {PagedList} from 'vue-client'
|
|
191
|
+
|
|
192
|
+
export default {
|
|
193
|
+
title: '历史指令查看',
|
|
194
|
+
name: 'QueryHistorylnstruct',
|
|
195
|
+
props: {
|
|
196
|
+
row: {},
|
|
197
|
+
tablename: {
|
|
198
|
+
type: String,
|
|
199
|
+
default: 't_instruct'
|
|
200
|
+
},
|
|
201
|
+
orderitem: {
|
|
202
|
+
type: String,
|
|
203
|
+
default: 'f_instruct_date desc'
|
|
204
|
+
},
|
|
205
|
+
items: {
|
|
206
|
+
type: String,
|
|
207
|
+
default: '*'
|
|
208
|
+
}
|
|
209
|
+
},
|
|
210
|
+
data () {
|
|
211
|
+
return {
|
|
212
|
+
handcental: false,
|
|
213
|
+
cancelreason: '',
|
|
214
|
+
cancelid: '',
|
|
215
|
+
f_userfiles_id: '',
|
|
216
|
+
model: new PagedList('rs/sql/insturctDetailHistoryQuery', 30),
|
|
217
|
+
row: null,
|
|
218
|
+
searchshow: false,
|
|
219
|
+
show: false
|
|
220
|
+
}
|
|
221
|
+
},
|
|
222
|
+
|
|
223
|
+
ready () {
|
|
224
|
+
this.$refs.paged.$refs.criteria.search()
|
|
225
|
+
},
|
|
226
|
+
watch: {
|
|
227
|
+
'row' (val) {
|
|
228
|
+
this.f_userfiles_id = val.f_userfiles_id
|
|
229
|
+
if (this.row != null) {
|
|
230
|
+
this.$refs.paged.$refs.criteria.search()
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
},
|
|
234
|
+
methods: {
|
|
235
|
+
stateFlow: function (row) {
|
|
236
|
+
console.log(row)
|
|
237
|
+
let state = ""
|
|
238
|
+
if (row.f_instruct_type.includes("阀门控制")) {
|
|
239
|
+
let content = JSON.parse(row.f_instruct_content)
|
|
240
|
+
if (content.isOpen !== null) {
|
|
241
|
+
if (content.isOpen === 1) {
|
|
242
|
+
state = "开阀"
|
|
243
|
+
} else if (content.isOpen === 0) {
|
|
244
|
+
state = "关阀"
|
|
245
|
+
} else {
|
|
246
|
+
state = row.f_state
|
|
247
|
+
}
|
|
248
|
+
return state
|
|
249
|
+
}
|
|
250
|
+
} else {
|
|
251
|
+
return row.f_state
|
|
252
|
+
}
|
|
253
|
+
},
|
|
254
|
+
clickshow () {
|
|
255
|
+
this.searchshow = !this.searchshow
|
|
256
|
+
},
|
|
257
|
+
backSend (megrow) {
|
|
258
|
+
if (megrow.f_inputtor != '系统必需') {
|
|
259
|
+
this.handcental = true
|
|
260
|
+
this.cancelid = megrow.id
|
|
261
|
+
} else {
|
|
262
|
+
this.$showAlert('该指令为系统必需状态,无法取消发送。', 'warning', 3000)
|
|
263
|
+
}
|
|
264
|
+
},
|
|
265
|
+
confirmcenta () {
|
|
266
|
+
let send = {
|
|
267
|
+
id: this.cancelid, // 当前记录ID
|
|
268
|
+
f_cancel_inputtor_id: this.$login.f.id, // 撤销人id
|
|
269
|
+
f_cancel_inputtor: this.$login.f.name, // 撤销人姓名
|
|
270
|
+
f_instruct_state: '取消发送',
|
|
271
|
+
f_comments: this.cancelreason
|
|
272
|
+
}
|
|
273
|
+
let param = {
|
|
274
|
+
tablename: 't_instruct',
|
|
275
|
+
basedata: send
|
|
276
|
+
}
|
|
277
|
+
this.$resetpost('rs/logic/iot_saveTable', param).then(() => {
|
|
278
|
+
// this.params.rows.splice(index, 1)
|
|
279
|
+
console.log('更新成功!')
|
|
280
|
+
})
|
|
281
|
+
this.handcental = false
|
|
282
|
+
this.$refs.paged.$refs.criteria.search()
|
|
283
|
+
},
|
|
284
|
+
search (arg) {
|
|
285
|
+
arg.condition = `${arg.condition} and f_userfiles_id='${this.row.f_userfiles_id}'`
|
|
286
|
+
this.model.search(arg.condition, arg.model)
|
|
287
|
+
}
|
|
288
|
+
},
|
|
289
|
+
computed: {
|
|
290
|
+
instructType () {
|
|
291
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('指令类型')]
|
|
292
|
+
},
|
|
293
|
+
instructState () {
|
|
294
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('指令状态')]
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
</script>
|
|
299
|
+
<style>
|
|
300
|
+
.form-input-group label {
|
|
301
|
+
text-align: right;
|
|
302
|
+
width: auto;
|
|
303
|
+
}
|
|
304
|
+
</style>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
const Vue = require("vue");
|
|
4
4
|
let specialComp = {
|
|
5
5
|
// 高拍仪
|
|
6
|
-
'high-meter
|
|
6
|
+
'high-meter': (resolve) => { require(['./HighMeterIdCard'], resolve) },
|
|
7
7
|
// 物联网表收费
|
|
8
8
|
'iot-meter-center': (resolve) => { require(['./IOTMeterCenter'], resolve) },
|
|
9
9
|
// MISPOS支付
|
|
@@ -404,7 +404,7 @@
|
|
|
404
404
|
config: {
|
|
405
405
|
priceCalculation: false, // 划气量控制
|
|
406
406
|
showupload: true, // 默认不显示附件上传组件
|
|
407
|
-
hasPrint:
|
|
407
|
+
hasPrint: true, // 默认打票
|
|
408
408
|
hasBillManage: false, // 默认不启用发票管理
|
|
409
409
|
billType: '燃气费', // 票据类型(燃气费,其他费用,调用的发票代码不同)
|
|
410
410
|
printType: '普通收据', // 收据/电子票/专用发票/国税发票
|
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
18
18
|
<label class="font_normal_body">设备类型</label>
|
|
19
19
|
<v-select :value.sync="row.f_devices_type" v-model="row.f_devices_type"
|
|
20
|
-
:options='devicetypes' placeholder='设备类型' :value-single="true"
|
|
20
|
+
:options='row.devicetypes' placeholder='设备类型' :value-single="true"
|
|
21
|
+
@change="deviceTypeChange($index, row)"
|
|
21
22
|
close-on-select></v-select>
|
|
22
23
|
</div>
|
|
23
24
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
@@ -27,7 +28,7 @@
|
|
|
27
28
|
</div>
|
|
28
29
|
</div>
|
|
29
30
|
<div class="row auto" style="margin-left: 10px;">
|
|
30
|
-
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[!row.f_brand && (row.f_devices_type == '
|
|
31
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[!row.f_brand && (row.f_devices_type == '燃气壁挂炉' || row.f_devices_type == '燃气热水器') ? 'has-error' : '']">
|
|
31
32
|
<label class="font_normal_body">设备品牌</label>
|
|
32
33
|
<v-select :value.sync="row.f_brand" v-model="row.f_brand"
|
|
33
34
|
:options='devicebrands' placeholder='设备品牌' :value-single="true"
|
|
@@ -39,6 +40,21 @@
|
|
|
39
40
|
placeholder='设备型号' :id="$index+'devicesmodel'">
|
|
40
41
|
</div>
|
|
41
42
|
</div>
|
|
43
|
+
<div class="row auto" style="margin-top: 10px;margin-left: 10px;">
|
|
44
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;" v-if="row.f_devices_type.indexOf('燃气报警装置') !== -1">
|
|
45
|
+
<label class="font_normal_body">转接头型号</label>
|
|
46
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_conn_model"
|
|
47
|
+
placeholder='转接头型号' :id="$index+'f_conn_model'">
|
|
48
|
+
</div>
|
|
49
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
50
|
+
<label class="font_normal_body">备案日期</label>
|
|
51
|
+
<datepicker placeholder="备案日期" style="width: 60%"
|
|
52
|
+
v-model="row.f_filing_date"
|
|
53
|
+
:value.sync="row.f_filing_date"
|
|
54
|
+
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
55
|
+
</datepicker>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
42
58
|
<div class="row auto" style="margin-left: 10px;">
|
|
43
59
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
44
60
|
<label class="font_normal_body">施工单位</label>
|
|
@@ -55,7 +71,7 @@
|
|
|
55
71
|
</div>
|
|
56
72
|
</div>
|
|
57
73
|
<div class="row auto" style="margin-left: 10px;">
|
|
58
|
-
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[row.f_devices_type == '
|
|
74
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[row.f_devices_type == '燃气壁挂炉' && (row.f_input_person == '' || row.f_input_person == null) ? 'has-error' : '']">
|
|
59
75
|
<label class="font_normal_body">安装人 </label>
|
|
60
76
|
<!-- <input type="text" class="input_search" style="width:60%" v-model="row.f_input_person"-->
|
|
61
77
|
<!-- placeholder='安装人'>-->
|
|
@@ -63,12 +79,12 @@
|
|
|
63
79
|
:options='installperson' placeholder='安装人' :value-single="true"
|
|
64
80
|
close-on-select></v-select>
|
|
65
81
|
</div>
|
|
66
|
-
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[row.f_devices_type == '
|
|
82
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[row.f_devices_type == '燃气壁挂炉' && row.f_input_date == '' ? 'has-error' : '']">
|
|
67
83
|
<label class="font_normal_body">安装日期</label>
|
|
68
84
|
<datepicker placeholder="安装日期" style="width: 60%"
|
|
69
85
|
v-model="row.f_input_date"
|
|
70
86
|
:value.sync="row.f_input_date"
|
|
71
|
-
:format="'yyyy-MM-dd'">
|
|
87
|
+
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
72
88
|
</datepicker>
|
|
73
89
|
</div>
|
|
74
90
|
</div>
|
|
@@ -79,7 +95,7 @@
|
|
|
79
95
|
v-model="row.f_make_date"
|
|
80
96
|
:value.sync="row.f_make_date"
|
|
81
97
|
:onchange="expireDate($index)"
|
|
82
|
-
:format="'yyyy-MM-dd'">
|
|
98
|
+
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
83
99
|
</datepicker>
|
|
84
100
|
</div>
|
|
85
101
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
@@ -110,7 +126,7 @@
|
|
|
110
126
|
:options='userdevicestate' placeholder='设备状态' :value-single="true"
|
|
111
127
|
close-on-select></v-select>
|
|
112
128
|
</div>
|
|
113
|
-
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[row.f_devices_type == '
|
|
129
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[row.f_devices_type == '燃气壁挂炉' && row.watchpurchase == '' ? 'has-error' : '']">
|
|
114
130
|
<label class="font_normal_body">购买方式</label>
|
|
115
131
|
<v-select :value.sync="row.watchpurchase" v-model="row.watchpurchase"
|
|
116
132
|
:options='WatchPurchases' placeholder='购买方式' :value-single="true"
|
|
@@ -137,7 +153,7 @@
|
|
|
137
153
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
138
154
|
<label class="font_normal_body">管道类型</label>
|
|
139
155
|
<v-select :value.sync="row.f_pipe_type" v-model="row.f_pipe_type"
|
|
140
|
-
:options='pipetypes' placeholder='管道类型' :value-single="true"
|
|
156
|
+
:options='row.pipetypes' placeholder='管道类型' :value-single="true"
|
|
141
157
|
close-on-select></v-select>
|
|
142
158
|
</div>
|
|
143
159
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
@@ -145,7 +161,7 @@
|
|
|
145
161
|
<datepicker placeholder="连接管安装日期" style="width: 60%"
|
|
146
162
|
v-model="row.f_pipeinstall_date"
|
|
147
163
|
:value.sync="row.f_pipeinstall_date"
|
|
148
|
-
:format="'yyyy-MM-dd'">
|
|
164
|
+
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
149
165
|
</datepicker>
|
|
150
166
|
</div>
|
|
151
167
|
</div>
|
|
@@ -155,7 +171,7 @@
|
|
|
155
171
|
<datepicker placeholder="连接管到期日期" style="width: 60%"
|
|
156
172
|
v-model="row.f_pipeexpire_date"
|
|
157
173
|
:value.sync="row.f_pipeexpire_date"
|
|
158
|
-
:format="'yyyy-MM-dd'">
|
|
174
|
+
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
159
175
|
</datepicker>
|
|
160
176
|
</div>
|
|
161
177
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
@@ -165,6 +181,14 @@
|
|
|
165
181
|
placeholder='米数'>
|
|
166
182
|
</div>
|
|
167
183
|
</div>
|
|
184
|
+
<div class="row auto" style="margin-left: 10px;">
|
|
185
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
186
|
+
<label class="font_normal_body">材质</label>
|
|
187
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_pipe_material"
|
|
188
|
+
:value.sync="row.f_pipe_material"
|
|
189
|
+
placeholder='材质'>
|
|
190
|
+
</div>
|
|
191
|
+
</div>
|
|
168
192
|
</form>
|
|
169
193
|
<img :src="imgdelete" alt="图片加载失败" class="img-rounded"
|
|
170
194
|
style="width: 60px;padding: 20px;margin-left: -15px;cursor: pointer;"
|
|
@@ -252,7 +276,8 @@ export default {
|
|
|
252
276
|
imgadd: '../../../images/mainicon/adddevice.png',
|
|
253
277
|
devicetypes: this.$appdata.getParam('设备类型'),
|
|
254
278
|
devicebrands: this.$appdata.getParam('设备品牌'),
|
|
255
|
-
pipetypes:
|
|
279
|
+
pipetypes:[],
|
|
280
|
+
pipetypeparams: this.$appdata.getParam('管道类型'),
|
|
256
281
|
WatchPurchases: this.$appdata.getParam('购买方式'),
|
|
257
282
|
installperson: this.$appdata.getParam('安装人'),
|
|
258
283
|
installtype: this.$appdata.getParam('安装方式'),
|
|
@@ -280,6 +305,25 @@ export default {
|
|
|
280
305
|
computed: {
|
|
281
306
|
},
|
|
282
307
|
methods: {
|
|
308
|
+
deviceTypeChange(index, row){
|
|
309
|
+
row.pipetypes = []
|
|
310
|
+
this.devicesinfo[index].f_pipe_type = ''
|
|
311
|
+
if (this.devicesinfo[index].f_devices_type !== '' && this.devicesinfo[index].f_devices_type !== null) {
|
|
312
|
+
if (row.f_devices_type === '燃气计量装置'){
|
|
313
|
+
row.pipetypes.push(
|
|
314
|
+
{label: '燃气连接管', value: '燃气连接管'}
|
|
315
|
+
)
|
|
316
|
+
}
|
|
317
|
+
for (let item of this.pipetypeparams) {
|
|
318
|
+
if (item.label.indexOf(row.f_devices_type) !== -1){
|
|
319
|
+
row.pipetypes.push(
|
|
320
|
+
item
|
|
321
|
+
)
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
console.log("筛选之后",row.pipetypes)
|
|
325
|
+
}
|
|
326
|
+
},
|
|
283
327
|
showTableBtn () {
|
|
284
328
|
this.showTable = !this.showTable
|
|
285
329
|
console.log('表具信息',this.devicesinfo)
|
|
@@ -292,8 +336,11 @@ export default {
|
|
|
292
336
|
var year = (b.getFullYear() - 0) + (this.devicesinfo[index].f_service_life - 0)
|
|
293
337
|
var month = (b.getMonth() - 0) + 1
|
|
294
338
|
var day = b.getDate()
|
|
339
|
+
let hh = b.getHours()
|
|
340
|
+
let mm = b.getMinutes()
|
|
341
|
+
let ss = b.getSeconds()
|
|
295
342
|
// this.$set(this.devicesinfo, index, {f_expire_date: year + '-' + (month < 10 ? '0' + month : month) + '-' + (day < 10 ? '0' + day : day)})
|
|
296
|
-
this.devicesinfo[index].f_expire_date = year + '-' + (month < 10 ? '0' + month : month) + '-' + (day < 10 ? '0' + day : day)
|
|
343
|
+
this.devicesinfo[index].f_expire_date = year + '-' + (month < 10 ? '0' + month : month) + '-' + (day < 10 ? '0' + day : day) + ' '+ (hh < 10 ? '0'+hh : hh)+ ':' + (mm < 10 ? '0'+ mm : mm)+ ':' + (ss < 10 ? '0'+ss : ss)
|
|
297
344
|
this.devicesinfoShow = false
|
|
298
345
|
this.$nextTick(() => {
|
|
299
346
|
this.devicesinfoShow = true
|
|
@@ -320,7 +367,9 @@ export default {
|
|
|
320
367
|
f_devices_type: '家用灶具',
|
|
321
368
|
f_input_person: this.f_input_person,
|
|
322
369
|
f_userinfodevices_state: '正常',
|
|
323
|
-
f_input_date: this.$login.toStandardTimeString()
|
|
370
|
+
f_input_date: this.$login.toStandardTimeString(),
|
|
371
|
+
devicetypes: this.$appdata.getParam('设备类型'),
|
|
372
|
+
pipetypes:[]
|
|
324
373
|
})
|
|
325
374
|
},
|
|
326
375
|
closeModal () {
|
|
@@ -282,11 +282,14 @@ let CancelService = {
|
|
|
282
282
|
},
|
|
283
283
|
|
|
284
284
|
// 撤销操作
|
|
285
|
-
async cancel (url, model, data) {
|
|
285
|
+
async cancel (url, model, data, batch) {
|
|
286
286
|
if (data.type === '机表收费' || data.type === '物联网收费') {
|
|
287
287
|
return iotchargeCancel(model, data)
|
|
288
288
|
} else {
|
|
289
289
|
data.f_user_id = `${data.f_user_id}`
|
|
290
|
+
if (batch) {
|
|
291
|
+
return Vue.resetpost(url, {data: {model: model, recordData: data, f: Vue.$login.f}}, {resolveMsg: null, rejectMsg: null}, 1000)
|
|
292
|
+
}
|
|
290
293
|
return Vue.resetpost(url, {data: {model: model, recordData: data, f: Vue.$login.f}}, {resolveMsg: '撤销成功', rejectMsg: '撤销失败'})
|
|
291
294
|
}
|
|
292
295
|
}
|
|
@@ -669,7 +669,6 @@ let ChangeMeterService = {
|
|
|
669
669
|
}
|
|
670
670
|
if (row.f_meter_brand.includes('数码表')) {
|
|
671
671
|
data.f_userinfo_id = {
|
|
672
|
-
f_userfiles_id: row.f_userfiles_id,
|
|
673
672
|
f_userinfo_id: row.f_userinfo_id,
|
|
674
673
|
version: row.userinfo_version,
|
|
675
674
|
f_balance: model.f_curbalance
|
|
@@ -677,7 +676,6 @@ let ChangeMeterService = {
|
|
|
677
676
|
} else if (row.f_meter_type === '机表') {
|
|
678
677
|
// delete data.chargeprice
|
|
679
678
|
data.f_userinfo_id = {
|
|
680
|
-
f_userfiles_id: row.f_userfiles_id,
|
|
681
679
|
f_userinfo_id: row.f_userinfo_id,
|
|
682
680
|
version: row.userinfo_version,
|
|
683
681
|
f_balance: model.f_curbalance
|
|
@@ -690,7 +688,6 @@ let ChangeMeterService = {
|
|
|
690
688
|
version: row.userinfo_version,
|
|
691
689
|
f_balance: model.f_curbalance,
|
|
692
690
|
userfiles: {
|
|
693
|
-
f_userfiles_id: row.f_userfiles_id,
|
|
694
691
|
f_user_id: row.f_user_id,
|
|
695
692
|
f_userfiles_id: row.f_userfiles_id,
|
|
696
693
|
version: row.version,
|
|
@@ -707,7 +704,6 @@ let ChangeMeterService = {
|
|
|
707
704
|
version: row.userinfo_version,
|
|
708
705
|
f_balance: model.f_curbalance,
|
|
709
706
|
userfiles: {
|
|
710
|
-
f_userfiles_id: row.f_userfiles_id,
|
|
711
707
|
f_user_id: row.f_user_id,
|
|
712
708
|
f_userfiles_id: row.f_userfiles_id,
|
|
713
709
|
version: row.version,
|
|
@@ -718,7 +714,7 @@ let ChangeMeterService = {
|
|
|
718
714
|
}
|
|
719
715
|
} else if (row.f_meter_type === '物联网表') {
|
|
720
716
|
// Vue.showAlert('此功能尚未开放,请联系开发人员', 'warning', 3000)
|
|
721
|
-
if (row.
|
|
717
|
+
if (row.f_collection_type === '按气量') {
|
|
722
718
|
data.f_tablebase = model.f_pregas
|
|
723
719
|
data.f_last_tablebase = row.f_meter_base
|
|
724
720
|
data.f_userinfo_id = {
|
|
@@ -727,13 +723,15 @@ let ChangeMeterService = {
|
|
|
727
723
|
f_balance: 0,
|
|
728
724
|
userfiles: {
|
|
729
725
|
f_user_id: model.f_user_id,
|
|
730
|
-
|
|
726
|
+
f_userfiles_id: row.f_userfiles_id,
|
|
727
|
+
f_total_gas: model.addtotal[0]==='是'?(row.f_total_gas - 0) + (model.f_pregas - 0):(row.f_total_gas - 0),
|
|
728
|
+
f_total_fee: model.addtotal[0]==='是'?(row.f_total_fee - 0) + (model.f_preamount - 0):(row.f_total_fee - 0),
|
|
731
729
|
f_balance_gas: parseFloat(row.f_balance_gas) + parseFloat(model.f_pregas),
|
|
732
730
|
// f_meter_base: parseFloat(model.f_pregas) + parseFloat(row.f_meter_base),
|
|
733
731
|
version: row.version
|
|
734
732
|
}
|
|
735
733
|
}
|
|
736
|
-
} if (row.
|
|
734
|
+
} if (row.f_collection_type === '按金额') {
|
|
737
735
|
data.f_tablebase = model.f_pregas
|
|
738
736
|
data.f_last_tablebase = row.f_meter_base
|
|
739
737
|
data.f_userinfo_id = {
|
|
@@ -743,7 +741,7 @@ let ChangeMeterService = {
|
|
|
743
741
|
userfiles: {
|
|
744
742
|
f_userfiles_id: row.f_userfiles_id,
|
|
745
743
|
f_user_id: model.f_user_id,
|
|
746
|
-
f_total_fee: model.addtotal[0]==='是'
|
|
744
|
+
f_total_fee: model.addtotal[0]==='是'?(row.f_total_fee - 0) + (model.f_preamount - 0):(row.f_total_fee - 0),
|
|
747
745
|
// f_meter_base: parseFloat(model.f_pregas) + parseFloat(row.f_meter_base),
|
|
748
746
|
version: row.version
|
|
749
747
|
}
|