sale-client-xianyang 3.3.443 → 3.3.445
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 +153 -153
- package/package.json +109 -109
- package/src/components/FilesManage/UserDeviceInfoTest.vue +15 -1
- package/src/components/WechatManage/OrderCenter/orderApplyDispose.vue +236 -236
- package/src/components/revenue/comprehen/ComprehenOperation/OverCharge/OverUseCharge.vue +42 -22
- package/src/components/revenue/comprehen/ComprehenOperation/SendBook/BookBill.vue +2 -2
package/build/dev-server.js
CHANGED
|
@@ -1,153 +1,153 @@
|
|
|
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 server = 'http://
|
|
10
|
-
var local = 'http://
|
|
11
|
-
var proxyTable = {
|
|
12
|
-
'/rs/file': {
|
|
13
|
-
target: server
|
|
14
|
-
},
|
|
15
|
-
'/rs/sql/
|
|
16
|
-
target: server
|
|
17
|
-
},
|
|
18
|
-
'/rs/logic/address_updateuseraddress': {
|
|
19
|
-
target: server
|
|
20
|
-
},
|
|
21
|
-
'/rs/sql/address_singleTableOrderBy': {
|
|
22
|
-
target: server
|
|
23
|
-
},
|
|
24
|
-
'/rs/logic/changeMeter': {
|
|
25
|
-
target:
|
|
26
|
-
},
|
|
27
|
-
'/pos': {
|
|
28
|
-
target: server
|
|
29
|
-
},
|
|
30
|
-
'/kgwx': {
|
|
31
|
-
target: server
|
|
32
|
-
},
|
|
33
|
-
'/wx': {
|
|
34
|
-
target: server
|
|
35
|
-
},
|
|
36
|
-
'/alipay/': {
|
|
37
|
-
target: server
|
|
38
|
-
},
|
|
39
|
-
// 查找资源服务数据
|
|
40
|
-
'/rs/search': {
|
|
41
|
-
target: server
|
|
42
|
-
},
|
|
43
|
-
// 查找资源服务数据
|
|
44
|
-
'/rs/logic/getLogin': {
|
|
45
|
-
target: server
|
|
46
|
-
},
|
|
47
|
-
// 查找资源服务数据
|
|
48
|
-
'/rs/logic/getInitData': {
|
|
49
|
-
target: server
|
|
50
|
-
},
|
|
51
|
-
'/rs/logic/getSaleInitData': {
|
|
52
|
-
target: server
|
|
53
|
-
},
|
|
54
|
-
// 用户登录服务地址
|
|
55
|
-
'/rs/user': {
|
|
56
|
-
target: server
|
|
57
|
-
},
|
|
58
|
-
'/rs/path': {
|
|
59
|
-
target: server
|
|
60
|
-
},
|
|
61
|
-
'/rs/data': {
|
|
62
|
-
target: server
|
|
63
|
-
},
|
|
64
|
-
'/rs/license': {
|
|
65
|
-
target: server
|
|
66
|
-
},
|
|
67
|
-
'/rs/db': {
|
|
68
|
-
target: server
|
|
69
|
-
},
|
|
70
|
-
'/excel': {
|
|
71
|
-
target: server
|
|
72
|
-
},
|
|
73
|
-
'/rs/config': {
|
|
74
|
-
target: server
|
|
75
|
-
},
|
|
76
|
-
'/rs/report': {
|
|
77
|
-
target: server
|
|
78
|
-
},
|
|
79
|
-
'/rs/vue': {
|
|
80
|
-
target: server
|
|
81
|
-
},
|
|
82
|
-
'/rs/logic': {
|
|
83
|
-
target:
|
|
84
|
-
},
|
|
85
|
-
'/rs/entity': {
|
|
86
|
-
target:
|
|
87
|
-
},
|
|
88
|
-
'/rs/sql': {
|
|
89
|
-
target:
|
|
90
|
-
},
|
|
91
|
-
'/webmeter': {
|
|
92
|
-
target: server
|
|
93
|
-
},
|
|
94
|
-
'/rs': {
|
|
95
|
-
target: server
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
var devMiddleware = require('webpack-dev-middleware')(compiler, {
|
|
100
|
-
publicPath: config.output.publicPath,
|
|
101
|
-
stats: {
|
|
102
|
-
colors: true,
|
|
103
|
-
chunks: false
|
|
104
|
-
}
|
|
105
|
-
})
|
|
106
|
-
|
|
107
|
-
var hotMiddleware = require('webpack-hot-middleware')(compiler)
|
|
108
|
-
// force page reload when html-webpack-plugin template changes
|
|
109
|
-
compiler.plugin('compilation', function (compilation) {
|
|
110
|
-
compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
|
|
111
|
-
hotMiddleware.publish({action: 'reload'})
|
|
112
|
-
cb()
|
|
113
|
-
})
|
|
114
|
-
})
|
|
115
|
-
|
|
116
|
-
// proxy api requests
|
|
117
|
-
Object.keys(proxyTable).forEach(function (context) {
|
|
118
|
-
var options = proxyTable[context]
|
|
119
|
-
if (typeof options === 'string') {
|
|
120
|
-
options = {target: options}
|
|
121
|
-
}
|
|
122
|
-
app.use(proxyMiddleware(context, options))
|
|
123
|
-
})
|
|
124
|
-
|
|
125
|
-
// handle fallback for HTML5 history API
|
|
126
|
-
app.use(require('connect-history-api-fallback')())
|
|
127
|
-
// app.use(function (req, res, next) {
|
|
128
|
-
// res.header('Access-Control-Allow-Origin', '*')
|
|
129
|
-
// res.header('Access-Control-Allow-Headers', 'X-Requested-With')
|
|
130
|
-
// res.header('Access-Control-Allow-Methods', 'PUT, POST, GET,DELETE, OPTIONS')
|
|
131
|
-
// res.header('X-Powered-By', '3,2,1')
|
|
132
|
-
// res.header('Access-Control-Allow-Credentials', 'true')
|
|
133
|
-
// res.header('Content-Type', 'application/json;charset=utf-8')
|
|
134
|
-
// next()
|
|
135
|
-
// })
|
|
136
|
-
|
|
137
|
-
// serve webpack bundle output
|
|
138
|
-
app.use(devMiddleware)
|
|
139
|
-
|
|
140
|
-
// enable hot-reload and state-preserving
|
|
141
|
-
// compilation error display
|
|
142
|
-
app.use(hotMiddleware)
|
|
143
|
-
|
|
144
|
-
// serve pure static assets
|
|
145
|
-
app.use('/static', express.static('./static'))
|
|
146
|
-
|
|
147
|
-
module.exports = app.listen(8084, function (err) {
|
|
148
|
-
if (err) {
|
|
149
|
-
console.log(err)
|
|
150
|
-
return
|
|
151
|
-
}
|
|
152
|
-
console.log('Listening at http://localhost:8084')
|
|
153
|
-
})
|
|
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 server = 'http://192.168.153.129:8300'
|
|
10
|
+
var local = 'http://127.0.0.1:8080'
|
|
11
|
+
var proxyTable = {
|
|
12
|
+
'/rs/file': {
|
|
13
|
+
target: server
|
|
14
|
+
},
|
|
15
|
+
'/rs/sql/iot_getNewMeterBrandAndModel': {
|
|
16
|
+
target: server
|
|
17
|
+
},
|
|
18
|
+
'/rs/logic/address_updateuseraddress': {
|
|
19
|
+
target: server
|
|
20
|
+
},
|
|
21
|
+
'/rs/sql/address_singleTableOrderBy': {
|
|
22
|
+
target: server
|
|
23
|
+
},
|
|
24
|
+
'/rs/logic/changeMeter': {
|
|
25
|
+
target: server
|
|
26
|
+
},
|
|
27
|
+
'/pos': {
|
|
28
|
+
target: server
|
|
29
|
+
},
|
|
30
|
+
'/kgwx': {
|
|
31
|
+
target: server
|
|
32
|
+
},
|
|
33
|
+
'/wx': {
|
|
34
|
+
target: server
|
|
35
|
+
},
|
|
36
|
+
'/alipay/': {
|
|
37
|
+
target: server
|
|
38
|
+
},
|
|
39
|
+
// 查找资源服务数据
|
|
40
|
+
'/rs/search': {
|
|
41
|
+
target: server
|
|
42
|
+
},
|
|
43
|
+
// 查找资源服务数据
|
|
44
|
+
'/rs/logic/getLogin': {
|
|
45
|
+
target: server
|
|
46
|
+
},
|
|
47
|
+
// 查找资源服务数据
|
|
48
|
+
'/rs/logic/getInitData': {
|
|
49
|
+
target: server
|
|
50
|
+
},
|
|
51
|
+
'/rs/logic/getSaleInitData': {
|
|
52
|
+
target: server
|
|
53
|
+
},
|
|
54
|
+
// 用户登录服务地址
|
|
55
|
+
'/rs/user': {
|
|
56
|
+
target: server
|
|
57
|
+
},
|
|
58
|
+
'/rs/path': {
|
|
59
|
+
target: server
|
|
60
|
+
},
|
|
61
|
+
'/rs/data': {
|
|
62
|
+
target: server
|
|
63
|
+
},
|
|
64
|
+
'/rs/license': {
|
|
65
|
+
target: server
|
|
66
|
+
},
|
|
67
|
+
'/rs/db': {
|
|
68
|
+
target: server
|
|
69
|
+
},
|
|
70
|
+
'/excel': {
|
|
71
|
+
target: server
|
|
72
|
+
},
|
|
73
|
+
'/rs/config': {
|
|
74
|
+
target: server
|
|
75
|
+
},
|
|
76
|
+
'/rs/report': {
|
|
77
|
+
target: server
|
|
78
|
+
},
|
|
79
|
+
'/rs/vue': {
|
|
80
|
+
target: server
|
|
81
|
+
},
|
|
82
|
+
'/rs/logic': {
|
|
83
|
+
target: server
|
|
84
|
+
},
|
|
85
|
+
'/rs/entity': {
|
|
86
|
+
target: server
|
|
87
|
+
},
|
|
88
|
+
'/rs/sql': {
|
|
89
|
+
target: server
|
|
90
|
+
},
|
|
91
|
+
'/webmeter': {
|
|
92
|
+
target: server
|
|
93
|
+
},
|
|
94
|
+
'/rs': {
|
|
95
|
+
target: server
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
var devMiddleware = require('webpack-dev-middleware')(compiler, {
|
|
100
|
+
publicPath: config.output.publicPath,
|
|
101
|
+
stats: {
|
|
102
|
+
colors: true,
|
|
103
|
+
chunks: false
|
|
104
|
+
}
|
|
105
|
+
})
|
|
106
|
+
|
|
107
|
+
var hotMiddleware = require('webpack-hot-middleware')(compiler)
|
|
108
|
+
// force page reload when html-webpack-plugin template changes
|
|
109
|
+
compiler.plugin('compilation', function (compilation) {
|
|
110
|
+
compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
|
|
111
|
+
hotMiddleware.publish({action: 'reload'})
|
|
112
|
+
cb()
|
|
113
|
+
})
|
|
114
|
+
})
|
|
115
|
+
|
|
116
|
+
// proxy api requests
|
|
117
|
+
Object.keys(proxyTable).forEach(function (context) {
|
|
118
|
+
var options = proxyTable[context]
|
|
119
|
+
if (typeof options === 'string') {
|
|
120
|
+
options = {target: options}
|
|
121
|
+
}
|
|
122
|
+
app.use(proxyMiddleware(context, options))
|
|
123
|
+
})
|
|
124
|
+
|
|
125
|
+
// handle fallback for HTML5 history API
|
|
126
|
+
app.use(require('connect-history-api-fallback')())
|
|
127
|
+
// app.use(function (req, res, next) {
|
|
128
|
+
// res.header('Access-Control-Allow-Origin', '*')
|
|
129
|
+
// res.header('Access-Control-Allow-Headers', 'X-Requested-With')
|
|
130
|
+
// res.header('Access-Control-Allow-Methods', 'PUT, POST, GET,DELETE, OPTIONS')
|
|
131
|
+
// res.header('X-Powered-By', '3,2,1')
|
|
132
|
+
// res.header('Access-Control-Allow-Credentials', 'true')
|
|
133
|
+
// res.header('Content-Type', 'application/json;charset=utf-8')
|
|
134
|
+
// next()
|
|
135
|
+
// })
|
|
136
|
+
|
|
137
|
+
// serve webpack bundle output
|
|
138
|
+
app.use(devMiddleware)
|
|
139
|
+
|
|
140
|
+
// enable hot-reload and state-preserving
|
|
141
|
+
// compilation error display
|
|
142
|
+
app.use(hotMiddleware)
|
|
143
|
+
|
|
144
|
+
// serve pure static assets
|
|
145
|
+
app.use('/static', express.static('./static'))
|
|
146
|
+
|
|
147
|
+
module.exports = app.listen(8084, function (err) {
|
|
148
|
+
if (err) {
|
|
149
|
+
console.log(err)
|
|
150
|
+
return
|
|
151
|
+
}
|
|
152
|
+
console.log('Listening at http://localhost:8084')
|
|
153
|
+
})
|
package/package.json
CHANGED
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "sale-client-xianyang",
|
|
3
|
-
"version": "3.3.
|
|
4
|
-
"description": "费模块前台组件",
|
|
5
|
-
"main": "src/index.js",
|
|
6
|
-
"scripts": {
|
|
7
|
-
"example": "node build/example-server.js",
|
|
8
|
-
"dev": "node build/dev-server.js",
|
|
9
|
-
"lint": "eslint src/**.js test/e2e/**.js test/unit/specs/** build/**.js",
|
|
10
|
-
"unit": "karma start test/unit/karma.conf.js",
|
|
11
|
-
"build": "rimraf dist && mkdirp dist && ncp static dist/mergeUser && cross-env NODE_ENV=production webpack --progress --hide-modules --config build/webpack.prod.conf.js",
|
|
12
|
-
"e2e": "node test/e2e/runner.js",
|
|
13
|
-
"release": "bash build/release.sh"
|
|
14
|
-
},
|
|
15
|
-
"repository": {
|
|
16
|
-
"type": "git",
|
|
17
|
-
"url": "https://gitee.com/aote/product.git"
|
|
18
|
-
},
|
|
19
|
-
"dependencies": {
|
|
20
|
-
"examples": "^0.1.0",
|
|
21
|
-
"less-loader": "^2.2.3",
|
|
22
|
-
"vue": "^1.0.17",
|
|
23
|
-
"js-file-download": "^0.4.12"
|
|
24
|
-
},
|
|
25
|
-
"devDependencies": {
|
|
26
|
-
"crypto-js": "^3.1.9-1",
|
|
27
|
-
"jsencrypt": "3.0.0-rc.1",
|
|
28
|
-
"address-client-xianyang": "3.0.34",
|
|
29
|
-
"babel-core": "^6.0.0",
|
|
30
|
-
"babel-loader": "^6.0.0",
|
|
31
|
-
"babel-plugin-transform-runtime": "^6.0.0",
|
|
32
|
-
"babel-preset-es2015": "^6.0.0",
|
|
33
|
-
"babel-preset-stage-2": "^6.0.0",
|
|
34
|
-
"chai": "^3.5.0",
|
|
35
|
-
"co": "^4.6.0",
|
|
36
|
-
"connect-history-api-fallback": "^1.1.0",
|
|
37
|
-
"cross-env": "^1.0.7",
|
|
38
|
-
"cross-spawn": "^2.1.5",
|
|
39
|
-
"css-loader": "^0.23.0",
|
|
40
|
-
"echarts": "^4.1.0",
|
|
41
|
-
"eslint": "^3.19.0",
|
|
42
|
-
"eslint-config-standard": "^10.2.1",
|
|
43
|
-
"eslint-friendly-formatter": "^3.0.0",
|
|
44
|
-
"eslint-loader": "^1.7.1",
|
|
45
|
-
"eslint-plugin-html": "^3.0.0",
|
|
46
|
-
"eslint-plugin-import": "^2.7.0",
|
|
47
|
-
"eslint-plugin-node": "^5.2.0",
|
|
48
|
-
"eslint-plugin-promise": "^3.4.0",
|
|
49
|
-
"eslint-plugin-standard": "^3.0.1",
|
|
50
|
-
"eventsource-polyfill": "^0.9.6",
|
|
51
|
-
"express": "^4.13.3",
|
|
52
|
-
"extract-text-webpack-plugin": "^1.0.1",
|
|
53
|
-
"file-loader": "^0.8.4",
|
|
54
|
-
"function-bind": "^1.0.2",
|
|
55
|
-
"html-webpack-plugin": "^2.8.1",
|
|
56
|
-
"http-proxy-middleware": "^0.11.0",
|
|
57
|
-
"inject-loader": "^2.0.1",
|
|
58
|
-
"isparta-loader": "^2.0.0",
|
|
59
|
-
"jasmine-core": "^2.4.1",
|
|
60
|
-
"jquery": "^3.3.1",
|
|
61
|
-
"json-loader": "^0.5.4",
|
|
62
|
-
"karma": "^1.4.1",
|
|
63
|
-
"karma-chrome-launcher": "^2.2.0",
|
|
64
|
-
"karma-coverage": "^1.1.1",
|
|
65
|
-
"karma-mocha": "^1.3.0",
|
|
66
|
-
"karma-sinon-chai": "^1.3.1",
|
|
67
|
-
"karma-sourcemap-loader": "^0.3.7",
|
|
68
|
-
"karma-spec-reporter": "0.0.31",
|
|
69
|
-
"karma-webpack": "^2.0.2",
|
|
70
|
-
"ldap-clients": "3.0.19-xy",
|
|
71
|
-
"less": "^2.7.3",
|
|
72
|
-
"mkdirp": "^0.5.1",
|
|
73
|
-
"mocha": "^3.2.0",
|
|
74
|
-
"ncp": "^2.0.0",
|
|
75
|
-
"nightwatch": "^0.8.18",
|
|
76
|
-
"rimraf": "^2.5.0",
|
|
77
|
-
"selenium-server": "2.52.0",
|
|
78
|
-
"sinon": "^2.1.0",
|
|
79
|
-
"sinon-chai": "^2.8.0",
|
|
80
|
-
"style": "0.0.3",
|
|
81
|
-
"style-loader": "^0.20.3",
|
|
82
|
-
"system-clients": "3.1.90-xianyang",
|
|
83
|
-
"url-loader": "^0.5.7",
|
|
84
|
-
"vue-client": "1.22.46-xy",
|
|
85
|
-
"vue-hot-reload-api": "^1.2.0",
|
|
86
|
-
"vue-html-loader": "^1.0.0",
|
|
87
|
-
"vue-loader": "^8.2.1",
|
|
88
|
-
"vue-resource": "^1.5.0",
|
|
89
|
-
"vue-router": "^0.7.13",
|
|
90
|
-
"vue-strap": "^1.0.9",
|
|
91
|
-
"vue-style-loader": "^1.0.0",
|
|
92
|
-
"vue-validator": "2.1.7",
|
|
93
|
-
"webpack": "^1.12.2",
|
|
94
|
-
"webpack-dev-middleware": "^1.4.0",
|
|
95
|
-
"webpack-hot-middleware": "^2.6.0",
|
|
96
|
-
"webpack-merge": "^0.8.3",
|
|
97
|
-
"weixin-js-sdk": "^1.2.0",
|
|
98
|
-
"axios": "0.15.3"
|
|
99
|
-
},
|
|
100
|
-
"keywords": [
|
|
101
|
-
"selling-clients"
|
|
102
|
-
],
|
|
103
|
-
"author": "张桥",
|
|
104
|
-
"license": "ISC",
|
|
105
|
-
"directories": {
|
|
106
|
-
"example": "examples",
|
|
107
|
-
"test": "test"
|
|
108
|
-
}
|
|
109
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "sale-client-xianyang",
|
|
3
|
+
"version": "3.3.445",
|
|
4
|
+
"description": "费模块前台组件",
|
|
5
|
+
"main": "src/index.js",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"example": "node build/example-server.js",
|
|
8
|
+
"dev": "node build/dev-server.js",
|
|
9
|
+
"lint": "eslint src/**.js test/e2e/**.js test/unit/specs/** build/**.js",
|
|
10
|
+
"unit": "karma start test/unit/karma.conf.js",
|
|
11
|
+
"build": "rimraf dist && mkdirp dist && ncp static dist/mergeUser && cross-env NODE_ENV=production webpack --progress --hide-modules --config build/webpack.prod.conf.js",
|
|
12
|
+
"e2e": "node test/e2e/runner.js",
|
|
13
|
+
"release": "bash build/release.sh"
|
|
14
|
+
},
|
|
15
|
+
"repository": {
|
|
16
|
+
"type": "git",
|
|
17
|
+
"url": "https://gitee.com/aote/product.git"
|
|
18
|
+
},
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"examples": "^0.1.0",
|
|
21
|
+
"less-loader": "^2.2.3",
|
|
22
|
+
"vue": "^1.0.17",
|
|
23
|
+
"js-file-download": "^0.4.12"
|
|
24
|
+
},
|
|
25
|
+
"devDependencies": {
|
|
26
|
+
"crypto-js": "^3.1.9-1",
|
|
27
|
+
"jsencrypt": "3.0.0-rc.1",
|
|
28
|
+
"address-client-xianyang": "3.0.34",
|
|
29
|
+
"babel-core": "^6.0.0",
|
|
30
|
+
"babel-loader": "^6.0.0",
|
|
31
|
+
"babel-plugin-transform-runtime": "^6.0.0",
|
|
32
|
+
"babel-preset-es2015": "^6.0.0",
|
|
33
|
+
"babel-preset-stage-2": "^6.0.0",
|
|
34
|
+
"chai": "^3.5.0",
|
|
35
|
+
"co": "^4.6.0",
|
|
36
|
+
"connect-history-api-fallback": "^1.1.0",
|
|
37
|
+
"cross-env": "^1.0.7",
|
|
38
|
+
"cross-spawn": "^2.1.5",
|
|
39
|
+
"css-loader": "^0.23.0",
|
|
40
|
+
"echarts": "^4.1.0",
|
|
41
|
+
"eslint": "^3.19.0",
|
|
42
|
+
"eslint-config-standard": "^10.2.1",
|
|
43
|
+
"eslint-friendly-formatter": "^3.0.0",
|
|
44
|
+
"eslint-loader": "^1.7.1",
|
|
45
|
+
"eslint-plugin-html": "^3.0.0",
|
|
46
|
+
"eslint-plugin-import": "^2.7.0",
|
|
47
|
+
"eslint-plugin-node": "^5.2.0",
|
|
48
|
+
"eslint-plugin-promise": "^3.4.0",
|
|
49
|
+
"eslint-plugin-standard": "^3.0.1",
|
|
50
|
+
"eventsource-polyfill": "^0.9.6",
|
|
51
|
+
"express": "^4.13.3",
|
|
52
|
+
"extract-text-webpack-plugin": "^1.0.1",
|
|
53
|
+
"file-loader": "^0.8.4",
|
|
54
|
+
"function-bind": "^1.0.2",
|
|
55
|
+
"html-webpack-plugin": "^2.8.1",
|
|
56
|
+
"http-proxy-middleware": "^0.11.0",
|
|
57
|
+
"inject-loader": "^2.0.1",
|
|
58
|
+
"isparta-loader": "^2.0.0",
|
|
59
|
+
"jasmine-core": "^2.4.1",
|
|
60
|
+
"jquery": "^3.3.1",
|
|
61
|
+
"json-loader": "^0.5.4",
|
|
62
|
+
"karma": "^1.4.1",
|
|
63
|
+
"karma-chrome-launcher": "^2.2.0",
|
|
64
|
+
"karma-coverage": "^1.1.1",
|
|
65
|
+
"karma-mocha": "^1.3.0",
|
|
66
|
+
"karma-sinon-chai": "^1.3.1",
|
|
67
|
+
"karma-sourcemap-loader": "^0.3.7",
|
|
68
|
+
"karma-spec-reporter": "0.0.31",
|
|
69
|
+
"karma-webpack": "^2.0.2",
|
|
70
|
+
"ldap-clients": "3.0.19-xy",
|
|
71
|
+
"less": "^2.7.3",
|
|
72
|
+
"mkdirp": "^0.5.1",
|
|
73
|
+
"mocha": "^3.2.0",
|
|
74
|
+
"ncp": "^2.0.0",
|
|
75
|
+
"nightwatch": "^0.8.18",
|
|
76
|
+
"rimraf": "^2.5.0",
|
|
77
|
+
"selenium-server": "2.52.0",
|
|
78
|
+
"sinon": "^2.1.0",
|
|
79
|
+
"sinon-chai": "^2.8.0",
|
|
80
|
+
"style": "0.0.3",
|
|
81
|
+
"style-loader": "^0.20.3",
|
|
82
|
+
"system-clients": "3.1.90-xianyang",
|
|
83
|
+
"url-loader": "^0.5.7",
|
|
84
|
+
"vue-client": "1.22.46-xy",
|
|
85
|
+
"vue-hot-reload-api": "^1.2.0",
|
|
86
|
+
"vue-html-loader": "^1.0.0",
|
|
87
|
+
"vue-loader": "^8.2.1",
|
|
88
|
+
"vue-resource": "^1.5.0",
|
|
89
|
+
"vue-router": "^0.7.13",
|
|
90
|
+
"vue-strap": "^1.0.9",
|
|
91
|
+
"vue-style-loader": "^1.0.0",
|
|
92
|
+
"vue-validator": "2.1.7",
|
|
93
|
+
"webpack": "^1.12.2",
|
|
94
|
+
"webpack-dev-middleware": "^1.4.0",
|
|
95
|
+
"webpack-hot-middleware": "^2.6.0",
|
|
96
|
+
"webpack-merge": "^0.8.3",
|
|
97
|
+
"weixin-js-sdk": "^1.2.0",
|
|
98
|
+
"axios": "0.15.3"
|
|
99
|
+
},
|
|
100
|
+
"keywords": [
|
|
101
|
+
"selling-clients"
|
|
102
|
+
],
|
|
103
|
+
"author": "张桥",
|
|
104
|
+
"license": "ISC",
|
|
105
|
+
"directories": {
|
|
106
|
+
"example": "examples",
|
|
107
|
+
"test": "test"
|
|
108
|
+
}
|
|
109
|
+
}
|
|
@@ -131,7 +131,21 @@ export default {
|
|
|
131
131
|
this.show_devices = !this.show_devices
|
|
132
132
|
},
|
|
133
133
|
deleteDevice (index, row) {
|
|
134
|
-
|
|
134
|
+
if (row.id) {
|
|
135
|
+
this.$showMessage('此操作无法还原,是否确定要删除此设备?', ['confirm', 'cancel']).then((res) => {
|
|
136
|
+
if (res === 'confirm') {
|
|
137
|
+
let sql = `delete from t_devices where id = ${row.id}`
|
|
138
|
+
this.$resetpost('/rs/logic/runSQL', {data: {sql: sql}}, {
|
|
139
|
+
resolveMsg: `成功删除此设备`,
|
|
140
|
+
rejectMsg: '删除设备失败'
|
|
141
|
+
}).then((res) => {
|
|
142
|
+
this.devicesinfo.splice(index, 1)
|
|
143
|
+
})
|
|
144
|
+
}
|
|
145
|
+
})
|
|
146
|
+
} else {
|
|
147
|
+
this.devicesinfo.splice(index, 1)
|
|
148
|
+
}
|
|
135
149
|
},
|
|
136
150
|
addDevice () {
|
|
137
151
|
console.log('设备信息', this.devicesinfo)
|
|
@@ -1,236 +1,236 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="auto" id="orderApplyDispose">
|
|
3
|
-
<validator name='v'>
|
|
4
|
-
<form novalidate class="form-horizontal select-overspread">
|
|
5
|
-
<ul class="nav nav-tabs">
|
|
6
|
-
<li class="active"><a href="#" style="font-size: large">报装信息</a></li>
|
|
7
|
-
</ul>
|
|
8
|
-
<div class="form-group" style="margin-top: 10px">
|
|
9
|
-
<label class="col-sm-2 control-label">报装类型</label>
|
|
10
|
-
<div class="col-sm-4">
|
|
11
|
-
<input class="form-control" type="text" v-model="row.f_type" placeholder="报装类型" disabled>
|
|
12
|
-
</div>
|
|
13
|
-
<label class="col-sm-2 control-label">报装单位</label>
|
|
14
|
-
<div class="col-sm-4">
|
|
15
|
-
<input class="form-control" type="text" v-model="row.f_unit" placeholder="报装单位" disabled>
|
|
16
|
-
</div>
|
|
17
|
-
</div>
|
|
18
|
-
<div class="form-group" style="margin-top: 10px">
|
|
19
|
-
<label class="col-sm-2 control-label">联系电话</label>
|
|
20
|
-
<div class="col-sm-4">
|
|
21
|
-
<input class="form-control" type="text" v-model="row.f_phone" placeholder="联系电话" disabled>
|
|
22
|
-
</div>
|
|
23
|
-
<label class="col-sm-2 control-label">联系人员</label>
|
|
24
|
-
<div class="col-sm-4">
|
|
25
|
-
<input class="form-control" type="text" v-model="row.f_user_name" placeholder="联系人员" disabled>
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
28
|
-
<div class="form-group" style="margin-top: 10px">
|
|
29
|
-
<label class="col-sm-2 control-label">地址</label>
|
|
30
|
-
<div class="col-sm-10">
|
|
31
|
-
<textarea class="form-control" readonly v-el:useraddress
|
|
32
|
-
cols="2" disabled style="resize: none"
|
|
33
|
-
v-model="row.f_address">
|
|
34
|
-
</textarea>
|
|
35
|
-
</div>
|
|
36
|
-
</div>
|
|
37
|
-
<div class="form-group" style="margin-top: 10px">
|
|
38
|
-
<label class="col-sm-2 control-label">情况说明</label>
|
|
39
|
-
<div class="col-sm-10">
|
|
40
|
-
<textarea class="form-control" readonly v-el:useraddress
|
|
41
|
-
cols="2" disabled style="resize: none"
|
|
42
|
-
v-model="row.f_orderremark">
|
|
43
|
-
</textarea>
|
|
44
|
-
</div>
|
|
45
|
-
</div>
|
|
46
|
-
<div v-if="idImgList.length >0" class="form-group" style="margin-top: 10px">
|
|
47
|
-
<label class="col-sm-2 control-label">营业执照</label>
|
|
48
|
-
<div v-for="row in idImgList" class="col-sm-3">
|
|
49
|
-
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
50
|
-
</div>
|
|
51
|
-
</div>
|
|
52
|
-
<div v-if="docImgList.length >0" class="form-group" style="margin-top: 10px">
|
|
53
|
-
<label class="col-sm-2 control-label">申请表</label>
|
|
54
|
-
<div v-for="row in docImgList" class="col-sm-3">
|
|
55
|
-
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
56
|
-
</div>
|
|
57
|
-
</div>
|
|
58
|
-
</form>
|
|
59
|
-
</validator>
|
|
60
|
-
<step :active="index" :items="items"></step>
|
|
61
|
-
|
|
62
|
-
<button class="button_search" @click="cancel()">取消
|
|
63
|
-
</button>
|
|
64
|
-
<data-grid :model="msg_data" class="table_sy" partial='list' v-ref:grid style="margin-top:2rem" v-show="msg_data.rows.length > 0">
|
|
65
|
-
<template partial='head'>
|
|
66
|
-
<th>
|
|
67
|
-
<nobr>操作日志</nobr>
|
|
68
|
-
</th>
|
|
69
|
-
</template>
|
|
70
|
-
<template partial='body'>
|
|
71
|
-
<td style="text-align:center;white-space: nowrap;">{{ row.msg }}</td>
|
|
72
|
-
</template>
|
|
73
|
-
</data-grid>
|
|
74
|
-
</div>
|
|
75
|
-
</template>
|
|
76
|
-
<script>
|
|
77
|
-
|
|
78
|
-
import Step from '../../Step'
|
|
79
|
-
|
|
80
|
-
export default {
|
|
81
|
-
data () {
|
|
82
|
-
return {
|
|
83
|
-
show: false,
|
|
84
|
-
f_operator: this.$login.f.name,
|
|
85
|
-
// 所有地址
|
|
86
|
-
address: [],
|
|
87
|
-
placeholder: '',
|
|
88
|
-
msg_data:{rows:[]},
|
|
89
|
-
items:
|
|
90
|
-
[{f_apply_type: '踏勘现场', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
91
|
-
{f_apply_type: '方案设计', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
92
|
-
{f_apply_type: '合同签订', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
93
|
-
{f_apply_type: '财务到账', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
94
|
-
{f_apply_type: '组织施工', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
95
|
-
{f_apply_type: '验收通气', f_apply_state: '', f_apply_msg: '', id: ''}
|
|
96
|
-
],
|
|
97
|
-
index: 0,
|
|
98
|
-
idImgList: [],
|
|
99
|
-
docImgList: []
|
|
100
|
-
}
|
|
101
|
-
},
|
|
102
|
-
components: {Step},
|
|
103
|
-
props: {
|
|
104
|
-
row: {
|
|
105
|
-
type: Object
|
|
106
|
-
},
|
|
107
|
-
title: {
|
|
108
|
-
type: String
|
|
109
|
-
}
|
|
110
|
-
},
|
|
111
|
-
async ready () {
|
|
112
|
-
},
|
|
113
|
-
methods: {
|
|
114
|
-
cancel () {
|
|
115
|
-
this.$dispatch('refresh')
|
|
116
|
-
},
|
|
117
|
-
// 根据id查询报装进度
|
|
118
|
-
async init (val) {
|
|
119
|
-
if (val.f_imageurl) {
|
|
120
|
-
try {
|
|
121
|
-
let f_imageurl = JSON.parse(val.f_imageurl)
|
|
122
|
-
this.idImgList = f_imageurl.f_idimglist || []
|
|
123
|
-
this.docImgList = f_imageurl.f_docimglist || []
|
|
124
|
-
} catch (e) {
|
|
125
|
-
this.idImgList = []
|
|
126
|
-
this.docImgList = []
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
let msg_data = {rows: []}
|
|
130
|
-
console.log('==========', JSON.stringify(val))
|
|
131
|
-
let data = await this.$SqlService.singleTable('t_apply_info', `f_order_id = ${val.id} order by f_apply_date`)
|
|
132
|
-
for (const datum of data.data) {
|
|
133
|
-
msg_data.rows.push({msg: `${datum.f_person} ${datum.f_apply_date} 于 ${datum.f_apply_type} ${datum.f_apply_state}`,id:datum.id})
|
|
134
|
-
}
|
|
135
|
-
this.items = this.items.map((h, i) => {
|
|
136
|
-
h.f_order_id = val.id
|
|
137
|
-
if (data.data[i]) {
|
|
138
|
-
h.f_apply_state = data.data[i].f_apply_state
|
|
139
|
-
h.f_apply_msg = data.data[i].f_apply_msg
|
|
140
|
-
h.id = data.data[i].id
|
|
141
|
-
} else {
|
|
142
|
-
h.f_apply_state = '未通过'
|
|
143
|
-
h.f_apply_msg = ''
|
|
144
|
-
h.id = undefined
|
|
145
|
-
}
|
|
146
|
-
return h
|
|
147
|
-
}
|
|
148
|
-
)
|
|
149
|
-
if (data.data.length>0 && data.data[data.data.length - 1]['f_apply_state']==='未通过') {
|
|
150
|
-
this.index = data.data.length - 1
|
|
151
|
-
}else {
|
|
152
|
-
this.index = val.f_apply_type === '验收通气' ? -1 : data.data.length
|
|
153
|
-
}
|
|
154
|
-
if (this.items[2]['f_apply_state'] === '项目取消') {
|
|
155
|
-
this.items[3]['f_apply_state'] = '项目取消'
|
|
156
|
-
this.items[3]['f_apply_msg'] = ''
|
|
157
|
-
this.items[4]['f_apply_state'] = '项目取消'
|
|
158
|
-
this.items[4]['f_apply_msg'] = ''
|
|
159
|
-
this.items[5]['f_apply_state'] = '项目取消'
|
|
160
|
-
this.items[5]['f_apply_msg'] = ''
|
|
161
|
-
}
|
|
162
|
-
console.log(JSON.stringify(this.items))
|
|
163
|
-
msg_data.rows = msg_data.rows.sort((a,b)=> - b.id - a.id )
|
|
164
|
-
this.msg_data = msg_data
|
|
165
|
-
},
|
|
166
|
-
// 获取所有地址
|
|
167
|
-
async getAreas () {
|
|
168
|
-
|
|
169
|
-
},
|
|
170
|
-
showModal () {
|
|
171
|
-
this.show = true
|
|
172
|
-
},
|
|
173
|
-
close () {
|
|
174
|
-
this.show = false
|
|
175
|
-
},
|
|
176
|
-
async confirm () {
|
|
177
|
-
|
|
178
|
-
}
|
|
179
|
-
},
|
|
180
|
-
watch: {
|
|
181
|
-
'row' (val) {
|
|
182
|
-
if (!!val) {
|
|
183
|
-
this.init(val)
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
},
|
|
187
|
-
computed: {},
|
|
188
|
-
events: {
|
|
189
|
-
'nextindex' (index, row) {
|
|
190
|
-
console.log(JSON.stringify(row), JSON.stringify(this.row))
|
|
191
|
-
if (!!!row.id) {
|
|
192
|
-
this.row.f_apply_type = row.f_apply_type
|
|
193
|
-
this.row.f_apply_state = row.f_apply_state
|
|
194
|
-
this.row.f_person = row.f_person
|
|
195
|
-
this.row.f_apply_date = row.f_apply_date
|
|
196
|
-
this.row.f_apply_msg = row.f_apply_msg
|
|
197
|
-
}
|
|
198
|
-
if (row.f_apply_type === this.row.f_apply_type) {
|
|
199
|
-
this.row.f_apply_msg = row.f_apply_msg
|
|
200
|
-
this.row.f_apply_date = row.f_apply_date
|
|
201
|
-
}
|
|
202
|
-
if (row.f_apply_state === '未通过') {
|
|
203
|
-
this.index = index
|
|
204
|
-
return true
|
|
205
|
-
}else {
|
|
206
|
-
this.index = index + 1
|
|
207
|
-
return true
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
</script>
|
|
213
|
-
<style lang="less">
|
|
214
|
-
#orderApplyDispose {
|
|
215
|
-
.modal-header {
|
|
216
|
-
border: none;
|
|
217
|
-
|
|
218
|
-
.close {
|
|
219
|
-
position: absolute;
|
|
220
|
-
top: 7px;
|
|
221
|
-
right: 10px;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
overflow: scroll;
|
|
226
|
-
|
|
227
|
-
.modal-body {
|
|
228
|
-
padding-bottom: 0px;
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
.modal-footer {
|
|
232
|
-
padding: 10px 15px;
|
|
233
|
-
border: none;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto" id="orderApplyDispose">
|
|
3
|
+
<validator name='v'>
|
|
4
|
+
<form novalidate class="form-horizontal select-overspread">
|
|
5
|
+
<ul class="nav nav-tabs">
|
|
6
|
+
<li class="active"><a href="#" style="font-size: large">报装信息</a></li>
|
|
7
|
+
</ul>
|
|
8
|
+
<div class="form-group" style="margin-top: 10px">
|
|
9
|
+
<label class="col-sm-2 control-label">报装类型</label>
|
|
10
|
+
<div class="col-sm-4">
|
|
11
|
+
<input class="form-control" type="text" v-model="row.f_type" placeholder="报装类型" disabled>
|
|
12
|
+
</div>
|
|
13
|
+
<label class="col-sm-2 control-label">报装单位</label>
|
|
14
|
+
<div class="col-sm-4">
|
|
15
|
+
<input class="form-control" type="text" v-model="row.f_unit" placeholder="报装单位" disabled>
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="form-group" style="margin-top: 10px">
|
|
19
|
+
<label class="col-sm-2 control-label">联系电话</label>
|
|
20
|
+
<div class="col-sm-4">
|
|
21
|
+
<input class="form-control" type="text" v-model="row.f_phone" placeholder="联系电话" disabled>
|
|
22
|
+
</div>
|
|
23
|
+
<label class="col-sm-2 control-label">联系人员</label>
|
|
24
|
+
<div class="col-sm-4">
|
|
25
|
+
<input class="form-control" type="text" v-model="row.f_user_name" placeholder="联系人员" disabled>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="form-group" style="margin-top: 10px">
|
|
29
|
+
<label class="col-sm-2 control-label">地址</label>
|
|
30
|
+
<div class="col-sm-10">
|
|
31
|
+
<textarea class="form-control" readonly v-el:useraddress
|
|
32
|
+
cols="2" disabled style="resize: none"
|
|
33
|
+
v-model="row.f_address">
|
|
34
|
+
</textarea>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
<div class="form-group" style="margin-top: 10px">
|
|
38
|
+
<label class="col-sm-2 control-label">情况说明</label>
|
|
39
|
+
<div class="col-sm-10">
|
|
40
|
+
<textarea class="form-control" readonly v-el:useraddress
|
|
41
|
+
cols="2" disabled style="resize: none"
|
|
42
|
+
v-model="row.f_orderremark">
|
|
43
|
+
</textarea>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
<div v-if="idImgList.length >0" class="form-group" style="margin-top: 10px">
|
|
47
|
+
<label class="col-sm-2 control-label">营业执照</label>
|
|
48
|
+
<div v-for="row in idImgList" class="col-sm-3">
|
|
49
|
+
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
50
|
+
</div>
|
|
51
|
+
</div>
|
|
52
|
+
<div v-if="docImgList.length >0" class="form-group" style="margin-top: 10px">
|
|
53
|
+
<label class="col-sm-2 control-label">申请表</label>
|
|
54
|
+
<div v-for="row in docImgList" class="col-sm-3">
|
|
55
|
+
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
</form>
|
|
59
|
+
</validator>
|
|
60
|
+
<step :active="index" :items="items"></step>
|
|
61
|
+
|
|
62
|
+
<button class="button_search" @click="cancel()">取消
|
|
63
|
+
</button>
|
|
64
|
+
<data-grid :model="msg_data" class="table_sy" partial='list' v-ref:grid style="margin-top:2rem" v-show="msg_data.rows.length > 0">
|
|
65
|
+
<template partial='head'>
|
|
66
|
+
<th>
|
|
67
|
+
<nobr>操作日志</nobr>
|
|
68
|
+
</th>
|
|
69
|
+
</template>
|
|
70
|
+
<template partial='body'>
|
|
71
|
+
<td style="text-align:center;white-space: nowrap;">{{ row.msg }}</td>
|
|
72
|
+
</template>
|
|
73
|
+
</data-grid>
|
|
74
|
+
</div>
|
|
75
|
+
</template>
|
|
76
|
+
<script>
|
|
77
|
+
|
|
78
|
+
import Step from '../../Step'
|
|
79
|
+
|
|
80
|
+
export default {
|
|
81
|
+
data () {
|
|
82
|
+
return {
|
|
83
|
+
show: false,
|
|
84
|
+
f_operator: this.$login.f.name,
|
|
85
|
+
// 所有地址
|
|
86
|
+
address: [],
|
|
87
|
+
placeholder: '',
|
|
88
|
+
msg_data:{rows:[]},
|
|
89
|
+
items:
|
|
90
|
+
[{f_apply_type: '踏勘现场', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
91
|
+
{f_apply_type: '方案设计', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
92
|
+
{f_apply_type: '合同签订', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
93
|
+
{f_apply_type: '财务到账', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
94
|
+
{f_apply_type: '组织施工', f_apply_state: '', f_apply_msg: '', id: ''},
|
|
95
|
+
{f_apply_type: '验收通气', f_apply_state: '', f_apply_msg: '', id: ''}
|
|
96
|
+
],
|
|
97
|
+
index: 0,
|
|
98
|
+
idImgList: [],
|
|
99
|
+
docImgList: []
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
components: {Step},
|
|
103
|
+
props: {
|
|
104
|
+
row: {
|
|
105
|
+
type: Object
|
|
106
|
+
},
|
|
107
|
+
title: {
|
|
108
|
+
type: String
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
async ready () {
|
|
112
|
+
},
|
|
113
|
+
methods: {
|
|
114
|
+
cancel () {
|
|
115
|
+
this.$dispatch('refresh')
|
|
116
|
+
},
|
|
117
|
+
// 根据id查询报装进度
|
|
118
|
+
async init (val) {
|
|
119
|
+
if (val.f_imageurl) {
|
|
120
|
+
try {
|
|
121
|
+
let f_imageurl = JSON.parse(val.f_imageurl)
|
|
122
|
+
this.idImgList = f_imageurl.f_idimglist || []
|
|
123
|
+
this.docImgList = f_imageurl.f_docimglist || []
|
|
124
|
+
} catch (e) {
|
|
125
|
+
this.idImgList = []
|
|
126
|
+
this.docImgList = []
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
let msg_data = {rows: []}
|
|
130
|
+
console.log('==========', JSON.stringify(val))
|
|
131
|
+
let data = await this.$SqlService.singleTable('t_apply_info', `f_order_id = ${val.id} order by f_apply_date`)
|
|
132
|
+
for (const datum of data.data) {
|
|
133
|
+
msg_data.rows.push({msg: `${datum.f_person} ${datum.f_apply_date} 于 ${datum.f_apply_type} ${datum.f_apply_state}`,id:datum.id})
|
|
134
|
+
}
|
|
135
|
+
this.items = this.items.map((h, i) => {
|
|
136
|
+
h.f_order_id = val.id
|
|
137
|
+
if (data.data[i]) {
|
|
138
|
+
h.f_apply_state = data.data[i].f_apply_state
|
|
139
|
+
h.f_apply_msg = data.data[i].f_apply_msg
|
|
140
|
+
h.id = data.data[i].id
|
|
141
|
+
} else {
|
|
142
|
+
h.f_apply_state = '未通过'
|
|
143
|
+
h.f_apply_msg = ''
|
|
144
|
+
h.id = undefined
|
|
145
|
+
}
|
|
146
|
+
return h
|
|
147
|
+
}
|
|
148
|
+
)
|
|
149
|
+
if (data.data.length>0 && data.data[data.data.length - 1]['f_apply_state']==='未通过') {
|
|
150
|
+
this.index = data.data.length - 1
|
|
151
|
+
}else {
|
|
152
|
+
this.index = val.f_apply_type === '验收通气' ? -1 : data.data.length
|
|
153
|
+
}
|
|
154
|
+
if (this.items[2]['f_apply_state'] === '项目取消') {
|
|
155
|
+
this.items[3]['f_apply_state'] = '项目取消'
|
|
156
|
+
this.items[3]['f_apply_msg'] = ''
|
|
157
|
+
this.items[4]['f_apply_state'] = '项目取消'
|
|
158
|
+
this.items[4]['f_apply_msg'] = ''
|
|
159
|
+
this.items[5]['f_apply_state'] = '项目取消'
|
|
160
|
+
this.items[5]['f_apply_msg'] = ''
|
|
161
|
+
}
|
|
162
|
+
console.log(JSON.stringify(this.items))
|
|
163
|
+
msg_data.rows = msg_data.rows.sort((a,b)=> - b.id - a.id )
|
|
164
|
+
this.msg_data = msg_data
|
|
165
|
+
},
|
|
166
|
+
// 获取所有地址
|
|
167
|
+
async getAreas () {
|
|
168
|
+
|
|
169
|
+
},
|
|
170
|
+
showModal () {
|
|
171
|
+
this.show = true
|
|
172
|
+
},
|
|
173
|
+
close () {
|
|
174
|
+
this.show = false
|
|
175
|
+
},
|
|
176
|
+
async confirm () {
|
|
177
|
+
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
watch: {
|
|
181
|
+
'row' (val) {
|
|
182
|
+
if (!!val) {
|
|
183
|
+
this.init(val)
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
computed: {},
|
|
188
|
+
events: {
|
|
189
|
+
'nextindex' (index, row) {
|
|
190
|
+
console.log(JSON.stringify(row), JSON.stringify(this.row))
|
|
191
|
+
if (!!!row.id) {
|
|
192
|
+
this.row.f_apply_type = row.f_apply_type
|
|
193
|
+
this.row.f_apply_state = row.f_apply_state
|
|
194
|
+
this.row.f_person = row.f_person
|
|
195
|
+
this.row.f_apply_date = row.f_apply_date
|
|
196
|
+
this.row.f_apply_msg = row.f_apply_msg
|
|
197
|
+
}
|
|
198
|
+
if (row.f_apply_type === this.row.f_apply_type) {
|
|
199
|
+
this.row.f_apply_msg = row.f_apply_msg
|
|
200
|
+
this.row.f_apply_date = row.f_apply_date
|
|
201
|
+
}
|
|
202
|
+
if (row.f_apply_state === '未通过') {
|
|
203
|
+
this.index = index
|
|
204
|
+
return true
|
|
205
|
+
}else {
|
|
206
|
+
this.index = index + 1
|
|
207
|
+
return true
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
</script>
|
|
213
|
+
<style lang="less">
|
|
214
|
+
#orderApplyDispose {
|
|
215
|
+
.modal-header {
|
|
216
|
+
border: none;
|
|
217
|
+
|
|
218
|
+
.close {
|
|
219
|
+
position: absolute;
|
|
220
|
+
top: 7px;
|
|
221
|
+
right: 10px;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
overflow: scroll;
|
|
226
|
+
|
|
227
|
+
.modal-body {
|
|
228
|
+
padding-bottom: 0px;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
.modal-footer {
|
|
232
|
+
padding: 10px 15px;
|
|
233
|
+
border: none;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
</style>
|
|
@@ -109,7 +109,9 @@
|
|
|
109
109
|
</div>
|
|
110
110
|
</form>
|
|
111
111
|
<validate-bill v-if="hasValidateBill" :data="model" @validate-bill="validateBill"></validate-bill>
|
|
112
|
-
<print-bill :show="print" :bill-config='config' :bill-data='billData' v-on:toggle="
|
|
112
|
+
<print-bill :show="print" :bill-config='config' :bill-data='billData' v-on:toggle="printok" :data='row' @printok="printok" v-ref:printbill></print-bill>
|
|
113
|
+
<book-bill :show="bookprint" :url="'rs/report/book_detail_bill'" :data='bookData' @toggle="close"
|
|
114
|
+
@printok="printok2" v-ref:bookbill></book-bill>
|
|
113
115
|
<div style="text-align:right;margin-top:30px;margin-right:50px;">
|
|
114
116
|
<button class="button_search" @click="confirm()" :disabled='!$v.valid || validateOk'>确认</button>
|
|
115
117
|
<button class="button_clear" @click="clean()" >取消</button>
|
|
@@ -125,8 +127,8 @@
|
|
|
125
127
|
*超用收费组件
|
|
126
128
|
*/
|
|
127
129
|
|
|
128
|
-
let getOverUseGen = async function(self) {
|
|
129
|
-
await self.$getConfig(self,'OverUseCharge')
|
|
130
|
+
let getOverUseGen = async function (self) {
|
|
131
|
+
await self.$getConfig(self, 'OverUseCharge')
|
|
130
132
|
console.log('超用config...', self.config)
|
|
131
133
|
self.model.f_print = self.config.printType instanceof Array ? self.config.printType : [self.config.printType]
|
|
132
134
|
self.model.f_payment = [self.config.payment]
|
|
@@ -170,14 +172,13 @@ let overChargeGen = async function (self) {
|
|
|
170
172
|
if (!ss.result) return
|
|
171
173
|
|
|
172
174
|
let res = await self.$ChangeMeterService.overCharge(self.model, self.row)
|
|
173
|
-
console.log('超用收费返回id', res.data.id
|
|
175
|
+
console.log('超用收费返回id', res.data.id)
|
|
174
176
|
if (self.model.f_payment[0].indexOf('&') !== -1) {
|
|
175
177
|
self.sellinggasId = res.data.id
|
|
176
178
|
// 付款成功更新收费记录订单号
|
|
177
179
|
await self.$refs.paymentcode.updateSellinggas(self.sellinggasId)
|
|
178
180
|
}
|
|
179
181
|
if (self.config.hasPrint) {
|
|
180
|
-
|
|
181
182
|
if (self.model.f_print.indexOf('普通收据') !== -1) {
|
|
182
183
|
if (self.config.hasBillManage) {
|
|
183
184
|
// 启用发票管理,获取票据管理中的票号并存储记录
|
|
@@ -209,9 +210,9 @@ export default {
|
|
|
209
210
|
data () {
|
|
210
211
|
return {
|
|
211
212
|
config: {
|
|
212
|
-
showupload:false,
|
|
213
|
-
hasPrint
|
|
214
|
-
hasBillManage
|
|
213
|
+
showupload: false, // 默认不显示附件
|
|
214
|
+
hasPrint: false, // 默认打票
|
|
215
|
+
hasBillManage: false, // 默认不启用发票管理
|
|
215
216
|
billType: '燃气费', // 票据类型(燃气费,其他费用,调用的发票代码不同)
|
|
216
217
|
printType: '普通收据', // 收据/电子票/专用发票/国税发票
|
|
217
218
|
payment: '现金缴费'
|
|
@@ -229,11 +230,11 @@ export default {
|
|
|
229
230
|
timer: null,
|
|
230
231
|
// 收费成功id
|
|
231
232
|
sellinggasId: null,
|
|
232
|
-
Change:{
|
|
233
|
-
|
|
234
|
-
paid:'',
|
|
235
|
-
|
|
236
|
-
change:''
|
|
233
|
+
Change: {
|
|
234
|
+
// 实收
|
|
235
|
+
paid: '',
|
|
236
|
+
// 找零
|
|
237
|
+
change: ''
|
|
237
238
|
},
|
|
238
239
|
model: {
|
|
239
240
|
f_pregas: '0',
|
|
@@ -242,7 +243,7 @@ export default {
|
|
|
242
243
|
f_totalcost: 0,
|
|
243
244
|
f_collection: 0,
|
|
244
245
|
f_balance: '',
|
|
245
|
-
f_is_add:'是',
|
|
246
|
+
f_is_add: '是',
|
|
246
247
|
f_curbalance: '',
|
|
247
248
|
f_payment: '现金缴费',
|
|
248
249
|
f_print: [],
|
|
@@ -266,9 +267,10 @@ export default {
|
|
|
266
267
|
bill: ''
|
|
267
268
|
},
|
|
268
269
|
print: false,
|
|
269
|
-
|
|
270
|
+
bookprint: false,
|
|
271
|
+
bookData: {},
|
|
270
272
|
mulPrint: false,
|
|
271
|
-
istotals:[{label:'是',value:'是'},{label:'否',value:'否'}]
|
|
273
|
+
istotals: [{label: '是', value: '是'}, {label: '否', value: '否'}]
|
|
272
274
|
}
|
|
273
275
|
},
|
|
274
276
|
props: ['row'],
|
|
@@ -292,7 +294,25 @@ export default {
|
|
|
292
294
|
this.clean()
|
|
293
295
|
},
|
|
294
296
|
printok () {
|
|
295
|
-
|
|
297
|
+
this.bookData = {
|
|
298
|
+
f_userinfo_id: this.row.f_userinfo_id,
|
|
299
|
+
f_book_no: this.row.f_book_no,
|
|
300
|
+
f_zzhh: this.row.f_zzhh ? this.row.f_zzhh : '',
|
|
301
|
+
content: {
|
|
302
|
+
f_operate_date: `'${this.$login.toStandardDateString()}'`,
|
|
303
|
+
f_zy: `'超用收费'`,
|
|
304
|
+
jfzs: `''`,
|
|
305
|
+
f_jfql: `'${this.model.f_pregas}'`,
|
|
306
|
+
f_jfje: `'${this.model.f_preamount}'`,
|
|
307
|
+
f_ljql: `'${this.row.f_collection_type == '按气量' ? (this.row.f_total_gas - 0) + (this.model.f_pregas - 0) : ''}'`,
|
|
308
|
+
f_operator: `'${this.$login.f.name}'`
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
this.print = false
|
|
312
|
+
this.bookprint = true
|
|
313
|
+
},
|
|
314
|
+
printok2 () {
|
|
315
|
+
// 折子打完,判断是否还有其他票据进行请求
|
|
296
316
|
for (let i = 0; i < this.model.f_print.length; i++) {
|
|
297
317
|
if (this.model.f_print[i] === '电子普票') {
|
|
298
318
|
this.$CommonService.openEticket(this.row.id, '超用收费')
|
|
@@ -304,7 +324,7 @@ export default {
|
|
|
304
324
|
this.validateOk = !val.isOk
|
|
305
325
|
this.billData.bill = val.bill
|
|
306
326
|
},
|
|
307
|
-
calPreamount (){
|
|
327
|
+
calPreamount () {
|
|
308
328
|
this.model.f_preamount = (this.model.f_pregas - 0) * (this.model.f_price - 0)
|
|
309
329
|
this.model.f_totalcost = this.model.f_balance > this.model.f_preamount ? 0 : (this.model.f_preamount - 0) - (this.model.f_balance - 0)
|
|
310
330
|
this.model.f_collection = this.model.f_totalcost - 0
|
|
@@ -332,13 +352,13 @@ export default {
|
|
|
332
352
|
'model.f_price' (newVal, oldVal) {
|
|
333
353
|
this.oldprice = oldVal
|
|
334
354
|
this.calPreamount()
|
|
335
|
-
}
|
|
355
|
+
}
|
|
336
356
|
},
|
|
337
357
|
computed: {
|
|
338
|
-
paytype() {
|
|
339
|
-
return this.row.f_filialeid === '1767'?this.$appdata.getParam('付款方式').filter(item=>item.label!=='&扫码'):this.$appdata.getParam('付款方式')
|
|
358
|
+
paytype () {
|
|
359
|
+
return this.row.f_filialeid === '1767' ? this.$appdata.getParam('付款方式').filter(item => item.label !== '&扫码') : this.$appdata.getParam('付款方式')
|
|
340
360
|
},
|
|
341
|
-
printstyle() {
|
|
361
|
+
printstyle () {
|
|
342
362
|
return this.$appdata.getParam('打印格式')
|
|
343
363
|
},
|
|
344
364
|
'f_curbalance' () {
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<article slot="modal-body" class="modal-body">
|
|
8
8
|
<validator name='v'>
|
|
9
9
|
<form class="form-horizontal select-overspread">
|
|
10
|
-
<div class="row" style="display: flex;justify-content: center;" id='
|
|
10
|
+
<div class="row" style="display: flex;justify-content: center;" id='book-bill' v-if="bill.data">
|
|
11
11
|
{{{bill.data}}}
|
|
12
12
|
</div>
|
|
13
13
|
</form>
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
</article>
|
|
16
16
|
<footer slot="modal-footer" class="modal-footer">
|
|
17
17
|
<button type="button" class="btn btn-success" @click='print()'>打印</button>
|
|
18
|
-
<report-print id='
|
|
18
|
+
<report-print id='book-bill' :top='top' left='0mm' width='90%' height='80%' :notrepeat="false" :showbtn="false" v-ref:reportprint></report-print>
|
|
19
19
|
<button type="button" class="btn btn-default" @click='cancel()'>取消</button>
|
|
20
20
|
</footer>
|
|
21
21
|
</modal>
|