sale-client-xianyang 3.3.442 → 3.3.443

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.
@@ -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://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
- })
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://172.16.16.162:8300'
10
+ var local = 'http://172.16.16.162:8300'
11
+ var proxyTable = {
12
+ '/rs/file': {
13
+ target: server
14
+ },
15
+ '/rs/sql/address_getAddress': {
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: local
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: local
84
+ },
85
+ '/rs/entity': {
86
+ target: local
87
+ },
88
+ '/rs/sql': {
89
+ target: local
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.442",
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.443",
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,230 +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 class="row" style="text-align: center">-->
47
- <!-- <div class="col-sm-4 col-sm-offset-2">-->
48
- <!-- <img-self style="margin: 0 auto" :src="row.f_imageurl"></img-self>-->
49
- <!-- <span style="font-size: 14px;margin-top: 5px; display:inline-block;-->
50
- <!-- width: 200px; word-break: normal; white-space: pre-wrap; word-wrap: break-word;">{{-->
51
- <!-- row.f_imagename-->
52
- <!-- }}</span>-->
53
- <!-- </div>-->
54
- <!-- <div class="col-sm-4">-->
55
- <!-- <a style="margin: 0 auto;display: inherit" target="_blank" :href="row.f_fileurl">-->
56
- <!-- <img src="./download.png" alt="图片加载失败" title="点击下载附件"/>-->
57
- <!-- </a>-->
58
- <!-- <span style="font-size: 14px;margin-top: 5px; display:inline-block;-->
59
- <!-- width: 200px; word-break: normal; white-space: pre-wrap; word-wrap: break-word;">{{-->
60
- <!-- row.f_filename-->
61
- <!-- }}</span>-->
62
- <!-- </div>-->
63
- <!-- </div>-->
64
- </form>
65
- </validator>
66
- <step :active="index" :items="items"></step>
67
-
68
- <button class="button_search" @click="cancel()">取消
69
- </button>
70
- <data-grid :model="msg_data" class="table_sy" partial='list' v-ref:grid style="margin-top:2rem" v-show="msg_data.rows.length > 0">
71
- <template partial='head'>
72
- <th>
73
- <nobr>操作日志</nobr>
74
- </th>
75
- </template>
76
- <template partial='body'>
77
- <td style="text-align:center;white-space: nowrap;">{{ row.msg }}</td>
78
- </template>
79
- </data-grid>
80
- </div>
81
- </template>
82
- <script>
83
-
84
- import Step from '../../Step'
85
-
86
- export default {
87
- data () {
88
- return {
89
- show: false,
90
- f_operator: this.$login.f.name,
91
- // 所有地址
92
- address: [],
93
- placeholder: '',
94
- msg_data:{rows:[]},
95
- items:
96
- [{f_apply_type: '踏勘现场', f_apply_state: '', f_apply_msg: '', id: ''},
97
- {f_apply_type: '方案设计', f_apply_state: '', f_apply_msg: '', id: ''},
98
- {f_apply_type: '合同签订', f_apply_state: '', f_apply_msg: '', id: ''},
99
- {f_apply_type: '财务到账', f_apply_state: '', f_apply_msg: '', id: ''},
100
- {f_apply_type: '组织施工', f_apply_state: '', f_apply_msg: '', id: ''},
101
- {f_apply_type: '验收通气', f_apply_state: '', f_apply_msg: '', id: ''}
102
- ],
103
- index: 0
104
- }
105
- },
106
- components: {Step},
107
- props: {
108
- row: {
109
- type: Object
110
- },
111
- title: {
112
- type: String
113
- }
114
- },
115
- async ready () {
116
- },
117
- methods: {
118
- cancel () {
119
- this.$dispatch('refresh')
120
- },
121
- // 根据id查询报装进度
122
- async init (val) {
123
- let msg_data = {rows: []}
124
- console.log('==========', JSON.stringify(val))
125
- let data = await this.$SqlService.singleTable('t_apply_info', `f_order_id = ${val.id} order by f_apply_date`)
126
- for (const datum of data.data) {
127
- msg_data.rows.push({msg: `${datum.f_person} ${datum.f_apply_date} 于 ${datum.f_apply_type} ${datum.f_apply_state}`,id:datum.id})
128
- }
129
- this.items = this.items.map((h, i) => {
130
- h.f_order_id = val.id
131
- if (data.data[i]) {
132
- h.f_apply_state = data.data[i].f_apply_state
133
- h.f_apply_msg = data.data[i].f_apply_msg
134
- h.id = data.data[i].id
135
- } else {
136
- h.f_apply_state = '未通过'
137
- h.f_apply_msg = ''
138
- h.id = undefined
139
- }
140
- return h
141
- }
142
- )
143
- if (data.data.length>0 && data.data[data.data.length - 1]['f_apply_state']==='未通过') {
144
- this.index = data.data.length - 1
145
- }else {
146
- this.index = val.f_apply_type === '验收通气' ? -1 : data.data.length
147
- }
148
- if (this.items[2]['f_apply_state'] === '项目取消') {
149
- this.items[3]['f_apply_state'] = '项目取消'
150
- this.items[3]['f_apply_msg'] = ''
151
- this.items[4]['f_apply_state'] = '项目取消'
152
- this.items[4]['f_apply_msg'] = ''
153
- this.items[5]['f_apply_state'] = '项目取消'
154
- this.items[5]['f_apply_msg'] = ''
155
- }
156
- console.log(JSON.stringify(this.items))
157
- msg_data.rows = msg_data.rows.sort((a,b)=> - b.id - a.id )
158
- this.msg_data = msg_data
159
- },
160
- // 获取所有地址
161
- async getAreas () {
162
-
163
- },
164
- showModal () {
165
- this.show = true
166
- },
167
- close () {
168
- this.show = false
169
- },
170
- async confirm () {
171
-
172
- }
173
- },
174
- watch: {
175
- 'row' (val) {
176
- if (!!val) {
177
- this.init(val)
178
- }
179
- }
180
- },
181
- computed: {},
182
- events: {
183
- 'nextindex' (index, row) {
184
- console.log(JSON.stringify(row), JSON.stringify(this.row))
185
- if (!!!row.id) {
186
- this.row.f_apply_type = row.f_apply_type
187
- this.row.f_apply_state = row.f_apply_state
188
- this.row.f_person = row.f_person
189
- this.row.f_apply_date = row.f_apply_date
190
- this.row.f_apply_msg = row.f_apply_msg
191
- }
192
- if (row.f_apply_type === this.row.f_apply_type) {
193
- this.row.f_apply_msg = row.f_apply_msg
194
- this.row.f_apply_date = row.f_apply_date
195
- }
196
- if (row.f_apply_state === '未通过') {
197
- this.index = index
198
- return true
199
- }else {
200
- this.index = index + 1
201
- return true
202
- }
203
- }
204
- }
205
- }
206
- </script>
207
- <style lang="less">
208
- #orderApplyDispose {
209
- .modal-header {
210
- border: none;
211
-
212
- .close {
213
- position: absolute;
214
- top: 7px;
215
- right: 10px;
216
- }
217
- }
218
-
219
- overflow: scroll;
220
-
221
- .modal-body {
222
- padding-bottom: 0px;
223
- }
224
-
225
- .modal-footer {
226
- padding: 10px 15px;
227
- border: none;
228
- }
229
- }
230
- </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,9 +109,7 @@
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="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>
112
+ <print-bill :show="print" :bill-config='config' :bill-data='billData' v-on:toggle="close" :data='row' @printok="printok" v-ref:printbill></print-bill>
115
113
  <div style="text-align:right;margin-top:30px;margin-right:50px;">
116
114
  <button class="button_search" @click="confirm()" :disabled='!$v.valid || validateOk'>确认</button>
117
115
  <button class="button_clear" @click="clean()" >取消</button>
@@ -127,8 +125,8 @@
127
125
  *超用收费组件
128
126
  */
129
127
 
130
- let getOverUseGen = async function (self) {
131
- await self.$getConfig(self, 'OverUseCharge')
128
+ let getOverUseGen = async function(self) {
129
+ await self.$getConfig(self,'OverUseCharge')
132
130
  console.log('超用config...', self.config)
133
131
  self.model.f_print = self.config.printType instanceof Array ? self.config.printType : [self.config.printType]
134
132
  self.model.f_payment = [self.config.payment]
@@ -172,7 +170,7 @@ let overChargeGen = async function (self) {
172
170
  if (!ss.result) return
173
171
 
174
172
  let res = await self.$ChangeMeterService.overCharge(self.model, self.row)
175
- console.log('超用收费返回id', res.data.id)
173
+ console.log('超用收费返回id', res.data.id,)
176
174
  if (self.model.f_payment[0].indexOf('&') !== -1) {
177
175
  self.sellinggasId = res.data.id
178
176
  // 付款成功更新收费记录订单号
@@ -211,9 +209,9 @@ export default {
211
209
  data () {
212
210
  return {
213
211
  config: {
214
- showupload: false, // 默认不显示附件
215
- hasPrint: false, // 默认打票
216
- hasBillManage: false, // 默认不启用发票管理
212
+ showupload:false, //默认不显示附件
213
+ hasPrint : false, //默认打票
214
+ hasBillManage :false, //默认不启用发票管理
217
215
  billType: '燃气费', // 票据类型(燃气费,其他费用,调用的发票代码不同)
218
216
  printType: '普通收据', // 收据/电子票/专用发票/国税发票
219
217
  payment: '现金缴费'
@@ -231,11 +229,11 @@ export default {
231
229
  timer: null,
232
230
  // 收费成功id
233
231
  sellinggasId: null,
234
- Change: {
235
- // 实收
236
- paid: '',
237
- // 找零
238
- change: ''
232
+ Change:{
233
+ //实收
234
+ paid:'',
235
+ //找零
236
+ change:''
239
237
  },
240
238
  model: {
241
239
  f_pregas: '0',
@@ -244,7 +242,7 @@ export default {
244
242
  f_totalcost: 0,
245
243
  f_collection: 0,
246
244
  f_balance: '',
247
- f_is_add: '是',
245
+ f_is_add:'是',
248
246
  f_curbalance: '',
249
247
  f_payment: '现金缴费',
250
248
  f_print: [],
@@ -268,10 +266,9 @@ export default {
268
266
  bill: ''
269
267
  },
270
268
  print: false,
271
- bookprint: false,
272
- bookData: {},
269
+
273
270
  mulPrint: false,
274
- istotals: [{label: '是', value: '是'}, {label: '否', value: '否'}]
271
+ istotals:[{label:'是',value:'是'},{label:'否',value:'否'}]
275
272
  }
276
273
  },
277
274
  props: ['row'],
@@ -295,25 +292,7 @@ export default {
295
292
  this.clean()
296
293
  },
297
294
  printok () {
298
- this.bookData = {
299
- f_userinfo_id: this.row.f_userinfo_id,
300
- f_book_no: this.row.f_book_no,
301
- f_zzhh: this.row.f_zzhh ? this.row.f_zzhh : '',
302
- content: {
303
- f_operate_date: `'${this.$login.toStandardDateString()}'`,
304
- f_zy: `'超用收费'`,
305
- jfzs: `''`,
306
- f_jfql: `'${this.model.f_pregas}'`,
307
- f_jfje: `'${this.model.f_preamount}'`,
308
- f_ljql: `'${this.row.f_collection_type == '按气量' ? (this.row.f_total_gas - 0) + (this.model.f_pregas - 0) : ''}'`,
309
- f_operator: `'${this.$login.f.name}'`
310
- }
311
- }
312
- this.print = false
313
- this.bookprint = true
314
- },
315
- printok2 () {
316
- // 折子打完,判断是否还有其他票据进行请求
295
+ // 收据打完,判断是否还有其他票据进行请求
317
296
  for (let i = 0; i < this.model.f_print.length; i++) {
318
297
  if (this.model.f_print[i] === '电子普票') {
319
298
  this.$CommonService.openEticket(this.row.id, '超用收费')
@@ -325,7 +304,7 @@ export default {
325
304
  this.validateOk = !val.isOk
326
305
  this.billData.bill = val.bill
327
306
  },
328
- calPreamount () {
307
+ calPreamount (){
329
308
  this.model.f_preamount = (this.model.f_pregas - 0) * (this.model.f_price - 0)
330
309
  this.model.f_totalcost = this.model.f_balance > this.model.f_preamount ? 0 : (this.model.f_preamount - 0) - (this.model.f_balance - 0)
331
310
  this.model.f_collection = this.model.f_totalcost - 0
@@ -353,13 +332,13 @@ export default {
353
332
  'model.f_price' (newVal, oldVal) {
354
333
  this.oldprice = oldVal
355
334
  this.calPreamount()
356
- }
335
+ },
357
336
  },
358
337
  computed: {
359
- paytype () {
360
- return this.row.f_filialeid === '1767' ? this.$appdata.getParam('付款方式').filter(item => item.label !== '&扫码') : this.$appdata.getParam('付款方式')
338
+ paytype() {
339
+ return this.row.f_filialeid === '1767'?this.$appdata.getParam('付款方式').filter(item=>item.label!=='&扫码'):this.$appdata.getParam('付款方式')
361
340
  },
362
- printstyle () {
341
+ printstyle() {
363
342
  return this.$appdata.getParam('打印格式')
364
343
  },
365
344
  'f_curbalance' () {