manage-client 1.60.10-7 → 1.60.10-9

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,148 +1,148 @@
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 fuwu = 'http://218.26.7.167:8300', bendi = 'http://218.26.7.167:8300'
14
- var proxyTable = {
15
- '/rs/logic/exportfile': {
16
- target: bendi
17
- },
18
- '/files': {
19
- target: bendi
20
- },
21
- // 查找资源服务数据
22
- '/rs/search': {
23
- target: fuwu
24
- },
25
- // 查找资源服务数据
26
- '/rs/logic/getLogin': {
27
- target: fuwu
28
- },
29
- // 查找资源服务数据
30
- '/rs/logic/getInitData': {
31
- target: fuwu
32
- },
33
- // 用户登录服务地址
34
- '/rs/user': {
35
- target: fuwu
36
- },
37
- '/rs/path/getParams': {
38
- target: fuwu
39
- },
40
- '/rs/data': {
41
- target: bendi
42
- },
43
- '/rs/license': {
44
- target: bendi
45
- },
46
- '/rs/db': {
47
- target: bendi
48
- },
49
- '/excel': {
50
- target: bendi
51
- },
52
- '/rs/config': {
53
- target: bendi
54
- },
55
- '/rs/sql/getLicenseById': {
56
- target: bendi
57
- },
58
- '/rs/report': {
59
- target: bendi
60
- },
61
- '/rs/vue': {
62
- target: fuwu
63
- },
64
- '/rs': {
65
- target: bendi
66
- }
67
- }
68
-
69
- var devMiddleware = require('webpack-dev-middleware')(compiler, {
70
- publicPath: config.output.publicPath,
71
- stats: {
72
- colors: true,
73
- chunks: false
74
- }
75
- })
76
-
77
- var hotMiddleware = require('webpack-hot-middleware')(compiler)
78
- // force page reload when html-webpack-plugin template changes
79
- compiler.plugin('compilation', function (compilation) {
80
- compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
81
- hotMiddleware.publish({ action: 'reload' })
82
- cb()
83
- })
84
- })
85
-
86
- // proxy api requests
87
- Object.keys(proxyTable).forEach(function (context) {
88
- var options = proxyTable[context]
89
- if (typeof options === 'string') {
90
- options = { target: options }
91
- }
92
- app.use(proxyMiddleware(context, options))
93
- })
94
-
95
- // handle fallback for HTML5 history API
96
- app.use(require('connect-history-api-fallback')())
97
-
98
- // serve webpack bundle output
99
- app.use(devMiddleware)
100
-
101
- // enable hot-reload and state-preserving
102
- // compilation error display
103
- app.use(hotMiddleware)
104
-
105
- // serve pure static assets
106
- app.use('/static', express.static('./static'))
107
-
108
- // app.all('/rs/*', function (req, res) {
109
- // proxy.web(req, res, {
110
- // target: 'http://127.0.0.1:8081/reports'
111
- // })
112
- // })
113
-
114
- // app.all('/rs/*', function (req, res) {
115
- // proxy.web(req, res, {
116
- // target: 'http://127.0.0.1:8081/ldap'
117
- // })
118
- // })
119
- // app.all('/excel/*', function (req, res) {
120
- // proxy.web(req, res, {
121
- // target: 'http://127.0.0.1:8081/charge'
122
- // })
123
- // })
124
-
125
- // app.all('/rs/*', function (req, res) {
126
- // proxy.web(req, res, {
127
- // target: 'http://127.0.0.1:82/charge'
128
- // })
129
- // })
130
-
131
- // app.all('/*', function (req, res) {
132
- // proxy.web(req, res, {
133
- // target: 'http://127.0.0.1:82'
134
- // })
135
- // })
136
- // app.all('/rs/user', function (req, res) {
137
- // proxy.web(req, res, {
138
- // target: 'http://127.0.0.1:82'
139
- // })
140
- // })
141
-
142
- module.exports = app.listen(8085, function (err) {
143
- if (err) {
144
- console.log(err)
145
- return
146
- }
147
- console.log('Listening at http://localhost:8085')
148
- })
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 fuwu = 'http://sangfor.8d394835cb84b8f3a4d536a7f2074b47.com:8301/', bendi = 'http://sangfor.8d394835cb84b8f3a4d536a7f2074b47.com:8301/'
14
+ var proxyTable = {
15
+ '/rs/logic/exportfile': {
16
+ target: bendi
17
+ },
18
+ '/files': {
19
+ target: bendi
20
+ },
21
+ // 查找资源服务数据
22
+ '/rs/search': {
23
+ target: fuwu
24
+ },
25
+ // 查找资源服务数据
26
+ '/rs/logic/getLogin': {
27
+ target: fuwu
28
+ },
29
+ // 查找资源服务数据
30
+ '/rs/logic/getInitData': {
31
+ target: fuwu
32
+ },
33
+ // 用户登录服务地址
34
+ '/rs/user': {
35
+ target: fuwu
36
+ },
37
+ '/rs/path/getParams': {
38
+ target: fuwu
39
+ },
40
+ '/rs/data': {
41
+ target: bendi
42
+ },
43
+ '/rs/license': {
44
+ target: bendi
45
+ },
46
+ '/rs/db': {
47
+ target: bendi
48
+ },
49
+ '/excel': {
50
+ target: bendi
51
+ },
52
+ '/rs/config': {
53
+ target: bendi
54
+ },
55
+ '/rs/sql/getLicenseById': {
56
+ target: bendi
57
+ },
58
+ '/rs/report': {
59
+ target: bendi
60
+ },
61
+ '/rs/vue': {
62
+ target: fuwu
63
+ },
64
+ '/rs': {
65
+ target: bendi
66
+ }
67
+ }
68
+
69
+ var devMiddleware = require('webpack-dev-middleware')(compiler, {
70
+ publicPath: config.output.publicPath,
71
+ stats: {
72
+ colors: true,
73
+ chunks: false
74
+ }
75
+ })
76
+
77
+ var hotMiddleware = require('webpack-hot-middleware')(compiler)
78
+ // force page reload when html-webpack-plugin template changes
79
+ compiler.plugin('compilation', function (compilation) {
80
+ compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
81
+ hotMiddleware.publish({ action: 'reload' })
82
+ cb()
83
+ })
84
+ })
85
+
86
+ // proxy api requests
87
+ Object.keys(proxyTable).forEach(function (context) {
88
+ var options = proxyTable[context]
89
+ if (typeof options === 'string') {
90
+ options = { target: options }
91
+ }
92
+ app.use(proxyMiddleware(context, options))
93
+ })
94
+
95
+ // handle fallback for HTML5 history API
96
+ app.use(require('connect-history-api-fallback')())
97
+
98
+ // serve webpack bundle output
99
+ app.use(devMiddleware)
100
+
101
+ // enable hot-reload and state-preserving
102
+ // compilation error display
103
+ app.use(hotMiddleware)
104
+
105
+ // serve pure static assets
106
+ app.use('/static', express.static('./static'))
107
+
108
+ // app.all('/rs/*', function (req, res) {
109
+ // proxy.web(req, res, {
110
+ // target: 'http://127.0.0.1:8081/reports'
111
+ // })
112
+ // })
113
+
114
+ // app.all('/rs/*', function (req, res) {
115
+ // proxy.web(req, res, {
116
+ // target: 'http://127.0.0.1:8081/ldap'
117
+ // })
118
+ // })
119
+ // app.all('/excel/*', function (req, res) {
120
+ // proxy.web(req, res, {
121
+ // target: 'http://127.0.0.1:8081/charge'
122
+ // })
123
+ // })
124
+
125
+ // app.all('/rs/*', function (req, res) {
126
+ // proxy.web(req, res, {
127
+ // target: 'http://127.0.0.1:82/charge'
128
+ // })
129
+ // })
130
+
131
+ // app.all('/*', function (req, res) {
132
+ // proxy.web(req, res, {
133
+ // target: 'http://127.0.0.1:82'
134
+ // })
135
+ // })
136
+ // app.all('/rs/user', function (req, res) {
137
+ // proxy.web(req, res, {
138
+ // target: 'http://127.0.0.1:82'
139
+ // })
140
+ // })
141
+
142
+ module.exports = app.listen(8085, function (err) {
143
+ if (err) {
144
+ console.log(err)
145
+ return
146
+ }
147
+ console.log('Listening at http://localhost:8085')
148
+ })
package/package.json CHANGED
@@ -1,99 +1,99 @@
1
- {
2
- "name": "manage-client",
3
- "version": "1.60.10-7",
4
- "description": "经营管控模块前台组件",
5
- "main": "src/index.js",
6
- "directories": {
7
- "test": "test"
8
- },
9
- "dependencies": {},
10
- "devDependencies": {
11
- "babel-core": "^6.0.0",
12
- "babel-loader": "^6.0.0",
13
- "babel-plugin-transform-runtime": "^6.0.0",
14
- "babel-preset-es2015": "^6.0.0",
15
- "babel-preset-stage-2": "^6.0.0",
16
- "chai": "^3.5.0",
17
- "co": "^4.6.0",
18
- "connect-history-api-fallback": "^1.1.0",
19
- "cross-env": "^1.0.7",
20
- "cross-spawn": "^2.1.5",
21
- "css-loader": "^0.23.0",
22
- "echarts": "^4.1.0",
23
- "eslint": "^2.0.0",
24
- "eslint-config-standard": "^5.1.0",
25
- "eslint-friendly-formatter": "^1.2.2",
26
- "eslint-loader": "^1.3.0",
27
- "eslint-plugin-html": "^1.3.0",
28
- "eslint-plugin-promise": "^1.0.8",
29
- "eslint-plugin-standard": "^1.3.2",
30
- "eslint-plugin-vue": "^0.1.1",
31
- "eventsource-polyfill": "^0.9.6",
32
- "express": "^4.13.3",
33
- "extract-text-webpack-plugin": "^1.0.1",
34
- "file-loader": "^0.8.4",
35
- "function-bind": "^1.0.2",
36
- "html-webpack-plugin": "^2.8.1",
37
- "http-proxy-middleware": "^0.11.0",
38
- "inject-loader": "^2.0.1",
39
- "isparta-loader": "^2.0.0",
40
- "jasmine-core": "^2.4.1",
41
- "jquery": "^3.3.1",
42
- "json-loader": "^0.5.4",
43
- "karma": "^1.4.1",
44
- "karma-chrome-launcher": "^2.2.0",
45
- "karma-coverage": "^1.1.1",
46
- "karma-mocha": "^1.3.0",
47
- "karma-sinon-chai": "^1.3.1",
48
- "karma-sourcemap-loader": "^0.3.7",
49
- "karma-spec-reporter": "0.0.31",
50
- "karma-webpack": "^2.0.2",
51
- "less": "^2.7.3",
52
- "manage-client": "1.0.4",
53
- "mkdirp": "^0.5.1",
54
- "mocha": "^3.2.0",
55
- "ncp": "^2.0.0",
56
- "rimraf": "^2.5.0",
57
- "sale-clients": "0.0.6",
58
- "selenium-server": "2.52.0",
59
- "sinon": "^2.1.0",
60
- "sinon-chai": "^2.8.0",
61
- "style": "0.0.3",
62
- "style-loader": "^0.20.3",
63
- "system-clients": "^1.6.21",
64
- "url-loader": "^0.5.7",
65
- "vue-client": "^1.20.3",
66
- "vue-hot-reload-api": "^1.2.0",
67
- "vue-html-loader": "^1.0.0",
68
- "vue-loader": "8.2.1",
69
- "vue-resource": "^1.5.0",
70
- "vue-router": "^0.7.13",
71
- "vue-strap": "^1.0.9",
72
- "vue-style-loader": "^1.0.0",
73
- "vue-validator": "2.1.7",
74
- "webpack": "1.12.2",
75
- "webpack-bundle-analyzer": "^2.8.3",
76
- "webpack-dev-middleware": "^1.4.0",
77
- "webpack-hot-middleware": "^2.6.0",
78
- "webpack-merge": "^0.8.3"
79
- },
80
- "scripts": {
81
- "unit": "karma start test/unit/karma.conf.js --single-run",
82
- "example": "node build/example-server.js",
83
- "dev": "node build/dev-server.js",
84
- "lint": "eslint src/**.js test/e2e/**.js test/unit/specs/** build/**.js",
85
- "build": "rimraf dist && mkdirp dist && ncp static dist/static && cross-env NODE_ENV=production webpack --progress --hide-modules --config build/webpack.prod.conf.js",
86
- "build:dll": "webpack --config build/webpack.dll.conf.js ",
87
- "e2e": "node test/e2e/runner.js",
88
- "release": "bash build/release.sh"
89
- },
90
- "repository": {
91
- "type": "git",
92
- "url": "https://gitee.com/aote/management_modules.git"
93
- },
94
- "keywords": [
95
- "manage"
96
- ],
97
- "author": "liuxudong",
98
- "license": "ISC"
99
- }
1
+ {
2
+ "name": "manage-client",
3
+ "version": "1.60.10-9",
4
+ "description": "经营管控模块前台组件",
5
+ "main": "src/index.js",
6
+ "directories": {
7
+ "test": "test"
8
+ },
9
+ "dependencies": {},
10
+ "devDependencies": {
11
+ "babel-core": "^6.0.0",
12
+ "babel-loader": "^6.0.0",
13
+ "babel-plugin-transform-runtime": "^6.0.0",
14
+ "babel-preset-es2015": "^6.0.0",
15
+ "babel-preset-stage-2": "^6.0.0",
16
+ "chai": "^3.5.0",
17
+ "co": "^4.6.0",
18
+ "connect-history-api-fallback": "^1.1.0",
19
+ "cross-env": "^1.0.7",
20
+ "cross-spawn": "^2.1.5",
21
+ "css-loader": "^0.23.0",
22
+ "echarts": "^4.1.0",
23
+ "eslint": "^2.0.0",
24
+ "eslint-config-standard": "^5.1.0",
25
+ "eslint-friendly-formatter": "^1.2.2",
26
+ "eslint-loader": "^1.3.0",
27
+ "eslint-plugin-html": "^1.3.0",
28
+ "eslint-plugin-promise": "^1.0.8",
29
+ "eslint-plugin-standard": "^1.3.2",
30
+ "eslint-plugin-vue": "^0.1.1",
31
+ "eventsource-polyfill": "^0.9.6",
32
+ "express": "^4.13.3",
33
+ "extract-text-webpack-plugin": "^1.0.1",
34
+ "file-loader": "^0.8.4",
35
+ "function-bind": "^1.0.2",
36
+ "html-webpack-plugin": "^2.8.1",
37
+ "http-proxy-middleware": "^0.11.0",
38
+ "inject-loader": "^2.0.1",
39
+ "isparta-loader": "^2.0.0",
40
+ "jasmine-core": "^2.4.1",
41
+ "jquery": "^3.3.1",
42
+ "json-loader": "^0.5.4",
43
+ "karma": "^1.4.1",
44
+ "karma-chrome-launcher": "^2.2.0",
45
+ "karma-coverage": "^1.1.1",
46
+ "karma-mocha": "^1.3.0",
47
+ "karma-sinon-chai": "^1.3.1",
48
+ "karma-sourcemap-loader": "^0.3.7",
49
+ "karma-spec-reporter": "0.0.31",
50
+ "karma-webpack": "^2.0.2",
51
+ "less": "^2.7.3",
52
+ "manage-client": "1.0.4",
53
+ "mkdirp": "^0.5.1",
54
+ "mocha": "^3.2.0",
55
+ "ncp": "^2.0.0",
56
+ "rimraf": "^2.5.0",
57
+ "sale-clients": "0.0.6",
58
+ "selenium-server": "2.52.0",
59
+ "sinon": "^2.1.0",
60
+ "sinon-chai": "^2.8.0",
61
+ "style": "0.0.3",
62
+ "style-loader": "^0.20.3",
63
+ "system-clients": "1.6.25-taiyuan",
64
+ "url-loader": "^0.5.7",
65
+ "vue-client": "1.20.20",
66
+ "vue-hot-reload-api": "^1.2.0",
67
+ "vue-html-loader": "^1.0.0",
68
+ "vue-loader": "8.2.1",
69
+ "vue-resource": "^1.5.0",
70
+ "vue-router": "^0.7.13",
71
+ "vue-strap": "^1.0.9",
72
+ "vue-style-loader": "^1.0.0",
73
+ "vue-validator": "2.1.7",
74
+ "webpack": "1.12.2",
75
+ "webpack-bundle-analyzer": "^2.8.3",
76
+ "webpack-dev-middleware": "^1.4.0",
77
+ "webpack-hot-middleware": "^2.6.0",
78
+ "webpack-merge": "^0.8.3"
79
+ },
80
+ "scripts": {
81
+ "unit": "karma start test/unit/karma.conf.js --single-run",
82
+ "example": "node build/example-server.js",
83
+ "dev": "node build/dev-server.js",
84
+ "lint": "eslint src/**.js test/e2e/**.js test/unit/specs/** build/**.js",
85
+ "build": "rimraf dist && mkdirp dist && ncp static dist/static && cross-env NODE_ENV=production webpack --progress --hide-modules --config build/webpack.prod.conf.js",
86
+ "build:dll": "webpack --config build/webpack.dll.conf.js ",
87
+ "e2e": "node test/e2e/runner.js",
88
+ "release": "bash build/release.sh"
89
+ },
90
+ "repository": {
91
+ "type": "git",
92
+ "url": "https://gitee.com/aote/management_modules.git"
93
+ },
94
+ "keywords": [
95
+ "manage"
96
+ ],
97
+ "author": "liuxudong",
98
+ "license": "ISC"
99
+ }
@@ -1,226 +1,226 @@
1
- <template>
2
- <div id='app' >
3
- <criteria-paged :model="model" :pager='false' v-ref:paged>
4
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
5
- <div novalidate class="form-inline auto " partial >
6
- <p class="bg-info text-center" style="padding: 8px;">操作员结账报表</p>
7
- <div class="flex-row auto" style="justify-content: space-between">
8
- <div class="form-group" v-if="!$parent.$parent.data.f_files_path">
9
- <label for="startDate">开始日期:</label>
10
- <datepicker id="startDate" placeholder="开始日期"
11
- v-model="model.startDate"
12
- :value.sync="model.startDate"
13
- :disabled-days-of-Week="[]"
14
- :format="'yyyy-MM-dd 00:00:00'"
15
- :show-reset-button="reset">
16
- </datepicker>
17
- <label for="endDate">结束日期:</label>
18
- <datepicker id="endDate" placeholder="结束日期"
19
- v-model="model.endDate"
20
- :value.sync="model.endDate"
21
- :disabled-days-of-Week="[]"
22
- :format="'yyyy-MM-dd 23:59:59'"
23
- :show-reset-button="reset">
24
- </datepicker>
25
-
26
- <label for="endDate" class="control-label">组织机构</label>
27
- <right-tree :userid.sync='$parent.$parent.userid' :source.sync='$parent.$parent.source' @re-res="$parent.$parent.getRes"></right-tree>
28
-
29
-
30
- <button class="btn btn-primary width-100" @click="search()">查询</button>
31
- <button class="btn btn-success width-100" @click="$parent.$parent.confirmReport()">保存报表</button>
32
- </div>
33
- <span></span>
34
- <div class="form-group">
35
- <report-print id='bussummary' top='1cm' left='2cm' width='100%' height='100%'></report-print>
36
- <report-excel id='bussummary' ></report-excel>
37
- </div>
38
- </div>
39
- </div>
40
- </criteria>
41
- <div partial='list' v-el:handcollect id='bussummary'>
42
- <table class='tableprint' style="margin: 0px auto" v-if="!$parent.data.f_files_path">
43
- <thead>
44
- <tr>
45
- <th colspan='8' style="font-weight: normal; text-align: left;">
46
- <h3 style="text-align: center">操作员结账报表</h3>
47
- </th>
48
- </tr>
49
- <tr>
50
- <th colspan='8' style="font-weight: normal; text-align: center;">
51
- 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
52
- 结束时间:{{ model.model.endDate }}&nbsp;&nbsp;&nbsp;
53
- </th>
54
- </tr>
55
- <tr>
56
- <th colspan='8' style="font-weight: normal; text-align: center;">
57
- 营业网点:{{model.model.outlets}}&nbsp;&nbsp;&nbsp;
58
- 操作员:{{model.model.operator[0]}}
59
- </th>
60
- </tr>
61
- </thead>
62
- <tr>
63
- <td colspan='8'>
64
- {{{ model.data.substring(26,model.data.length-8) }}}
65
- </td>
66
- </tr>
67
- <tfoot>
68
- <tr style="text-align: left">
69
- <th colspan='3'>财务审核:</th>
70
- <th colspan='3'>收款审核:</th>
71
- <th colspan='2'>收款员:</th>
72
- </tr>
73
- </tfoot>
74
- </table>
75
- {{{ $parent.reportStr }}}
76
- </div>
77
- <!-- <div partial='list' v-el:handcollect v-if="data.f_files_path">
78
-
79
- </div> -->
80
- </criteria-paged>
81
-
82
- <modal :show.sync="show" v-ref:modal small backdrop="false">
83
- <header slot="modal-header" class="modal-header">
84
- <h4 class="modal-title">输入文件名称</h4>
85
- </header>
86
- <article slot="modal-body" class="modal-body">
87
- <div class="form-group">
88
- <input type="text" class="form-control" v-model="filename" placeholder='保存的文件名'>
89
- </div>
90
- </article>
91
- <footer slot="modal-footer" class="modal-footer">
92
- <button v-show="show" type="button" class="btn btn-default" @click='close'>取消</button>
93
- <button v-show="show" type="button" class="btn btn-success" @click='confirm(filename)'>确认</button>
94
- </footer>
95
- </modal>
96
-
97
- </div>
98
- </template>
99
-
100
- <script>
101
- import { DataModel } from 'vue-client'
102
- import * as Util from '../../Util'
103
- import AppData from '../../stores/AppData'
104
- import co from 'co'
105
-
106
- // let outletGen = function * (self) {
107
- // let http = new HttpResetClass()
108
- // let outlets = yield http.load('POST', '/rs/search', {source: 'tool.getChildrenOfResName($青白江博能燃气$)', userid: ''}, {resolveMsg: null, rejectMsg: null})
109
- // outlets.data.forEach((item, next) => {
110
- // let temp = {}
111
- // temp.label = item.name
112
- // temp.value = item.name
113
- // self.outlets.push(temp)
114
- // })
115
- // self.outlets = [{label: '全部', value: ''}, ...self.outlets]
116
- // }
117
- // let operatorGen = function * (self, val) {
118
- // if (val[0] === '') {
119
- // self.operator = [{label: '全部', value: ''}]
120
- // // self.$refs.paged.$refs.criteria.model.operator[0] = ''
121
- // // console.log('11111114444444', self.$refs.paged.$refs.criteria)
122
- // } else {
123
- // let operators = yield self.$resetpost('/rs/search', {source: `tool.getChildrenOfResName($${val}$)`, userid: ''}, {resolveMsg: null, rejectMsg: null})
124
- // operators.data.forEach((item, next) => {
125
- // let temp = {}
126
- // temp.label = item.name
127
- // temp.value = item.name
128
- // self.operator.push(temp)
129
- // })
130
- // self.operator = [{label: '全部', value: ''}, ...self.operator]
131
- // }
132
- // self.$set('$refs.paged.$refs.criteria.model.operator[0]', '')
133
- // }
134
-
135
- let saveFile = function * (self) {
136
- // 线验证文件是否重名
137
- let count = yield self.$resetpost('rs/sql/manageSingleTable',
138
- {data: {tablename: 't_report_record', condition: `f_files_name = '${self.filename}'`}},
139
- {resolveMsg: null, rejectMsg: null})
140
- if (count.data.length > 0) {
141
- self.$showAlert('无法保存,文件名重名', 'warning', 3000)
142
- return
143
- }
144
- let saveBack = yield self.$resetpost('rs/logic/saveReport', {f_files_content: self.$refs.paged.$els.handcollect.innerHTML,
145
- f_files_name: self.filename, f_files_type: self.data.f_report_type, f_component_name: 'bus-summary',
146
- f_operator: Util.f.name, f_query_month: `${self.model.model.startDate}-${self.model.model.endDate}`,
147
- f_outlets: Util.f.f_parentname})
148
-
149
- if (saveBack.data.status === 'succeed') {
150
- self.show = false
151
- self.filename = ''
152
- // 后台保存完成,通知刷新
153
- self.$dispatch('save-success', self.filename)
154
- }
155
- }
156
-
157
-
158
- export default {
159
- title: '操作员结账报表',
160
- props: ['data'],
161
- data () {
162
- return {
163
- model: new DataModel('rs/report/bussummary', {startDate: 'this.model.startDate', endDate: 'this.model.endDate',
164
- filialeCodeStr: 'this.model.filialeCodeStr', filiale: 'this.model.filiale'}),
165
- reportStr: null,
166
- show: false,
167
- outlets: [],
168
- operator: [],
169
- filename: '',
170
- filialeNameStr: this.$login.f.orgpathnames,
171
- filialeCodeStr: this.$login.f.orgpathstr,
172
- userid: this.$login.f.id,
173
- source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() != $role$))`
174
- }
175
- },
176
- ready () {
177
- this.$refs.paged.$refs.criteria.model.startDate = Util.toStandardDateString() + ' 00:00:00'
178
- this.$refs.paged.$refs.criteria.model.endDate = Util.toStandardDateString() + ' 23:59:59'
179
- },
180
- methods: {
181
- selfSearch (args) {
182
- this.$refs.paged.$refs.criteria.model.filialeCodeStr = this.filialeCodeStr
183
- this.$refs.paged.search(args)
184
- },
185
- getRes (obj) {
186
- console.log(obj, '组织')
187
- this.filialeNameStr = obj.res
188
- this.filialeCodeStr = obj.resids
189
- },
190
- // 根据文件路径获取储存的报表内容
191
- getFileContent (path) {
192
- this.$resetpost('rs/logic/getReportFileContent', {f_files_path: path}, {resolveMsg: null, rejectMsg: null}).then((res) => {
193
- this.reportStr = res.data.filecontent
194
- this.model.state = '正确'
195
- })
196
- },
197
- confirm () {
198
- if (!this.filename || this.filename === '') {
199
- this.$showAlert('无法保存,文件名不能为空', 'warning', 3000)
200
- }
201
- let saveGen = saveFile(this)
202
- co(saveGen)
203
- },
204
- close () {
205
- this.show = false
206
- },
207
- // 将报表保存成文件
208
- confirmReport () {
209
- this.show = true
210
- this.filename = this.data.f_report_name + Util.toStandardDateString()
211
- }
212
- },
213
- watch: {
214
- 'data' (val) {
215
- if (val.f_files_path) {
216
- this.getFileContent(val.f_files_path)
217
- } else {
218
- this.reportStr = null
219
- }
220
- }
221
- },
222
- computed: {
223
-
224
- }
225
- }
226
- </script>
1
+ <template>
2
+ <div id='app' >
3
+ <criteria-paged :model="model" :pager='false' v-ref:paged>
4
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
5
+ <div novalidate class="form-inline auto " partial >
6
+ <p class="bg-info text-center" style="padding: 8px;">操作员结账报表</p>
7
+ <div class="flex-row auto" style="justify-content: space-between">
8
+ <div class="form-group" v-if="!$parent.$parent.data.f_files_path">
9
+ <label for="startDate">开始日期:</label>
10
+ <datepicker id="startDate" placeholder="开始日期"
11
+ v-model="model.startDate"
12
+ :value.sync="model.startDate"
13
+ :disabled-days-of-Week="[]"
14
+ :format="'yyyy-MM-dd 00:00:00'"
15
+ :show-reset-button="reset">
16
+ </datepicker>
17
+ <label for="endDate">结束日期:</label>
18
+ <datepicker id="endDate" placeholder="结束日期"
19
+ v-model="model.endDate"
20
+ :value.sync="model.endDate"
21
+ :disabled-days-of-Week="[]"
22
+ :format="'yyyy-MM-dd 23:59:59'"
23
+ :show-reset-button="reset">
24
+ </datepicker>
25
+
26
+ <label for="endDate" class="control-label">组织机构</label>
27
+ <right-tree :userid.sync='$parent.$parent.userid' :source.sync='$parent.$parent.source' @re-res="$parent.$parent.getRes"></right-tree>
28
+
29
+
30
+ <button class="btn btn-primary width-100" @click="search()">查询</button>
31
+ <button class="btn btn-success width-100" @click="$parent.$parent.confirmReport()">保存报表</button>
32
+ </div>
33
+ <span></span>
34
+ <div class="form-group">
35
+ <report-print id='bussummary' top='1cm' left='2cm' width='100%' height='100%'></report-print>
36
+ <report-excel id='bussummary' ></report-excel>
37
+ </div>
38
+ </div>
39
+ </div>
40
+ </criteria>
41
+ <div partial='list' v-el:handcollect id='bussummary'>
42
+ <table class='tableprint' style="margin: 0px auto" v-if="!$parent.data.f_files_path">
43
+ <thead>
44
+ <tr>
45
+ <th colspan='8' style="font-weight: normal; text-align: left;">
46
+ <h3 style="text-align: center">操作员结账报表</h3>
47
+ </th>
48
+ </tr>
49
+ <tr>
50
+ <th colspan='8' style="font-weight: normal; text-align: center;">
51
+ 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
52
+ 结束时间:{{ model.model.endDate }}&nbsp;&nbsp;&nbsp;
53
+ </th>
54
+ </tr>
55
+ <tr>
56
+ <th colspan='8' style="font-weight: normal; text-align: center;">
57
+ 营业网点:{{model.model.outlets}}&nbsp;&nbsp;&nbsp;
58
+ 操作员:{{model.model.operator[0]}}
59
+ </th>
60
+ </tr>
61
+ </thead>
62
+ <tr>
63
+ <td colspan='8'>
64
+ {{{ model.data.substring(26,model.data.length-8) }}}
65
+ </td>
66
+ </tr>
67
+ <tfoot>
68
+ <tr style="text-align: left">
69
+ <th colspan='3'>财务审核:</th>
70
+ <th colspan='3'>收款审核:</th>
71
+ <th colspan='2'>收款员:</th>
72
+ </tr>
73
+ </tfoot>
74
+ </table>
75
+ {{{ $parent.reportStr }}}
76
+ </div>
77
+ <!-- <div partial='list' v-el:handcollect v-if="data.f_files_path">
78
+
79
+ </div> -->
80
+ </criteria-paged>
81
+
82
+ <modal :show.sync="show" v-ref:modal small backdrop="false">
83
+ <header slot="modal-header" class="modal-header">
84
+ <h4 class="modal-title">输入文件名称</h4>
85
+ </header>
86
+ <article slot="modal-body" class="modal-body">
87
+ <div class="form-group">
88
+ <input type="text" class="form-control" v-model="filename" placeholder='保存的文件名'>
89
+ </div>
90
+ </article>
91
+ <footer slot="modal-footer" class="modal-footer">
92
+ <button v-show="show" type="button" class="btn btn-default" @click='close'>取消</button>
93
+ <button v-show="show" type="button" class="btn btn-success" @click='confirm(filename)'>确认</button>
94
+ </footer>
95
+ </modal>
96
+
97
+ </div>
98
+ </template>
99
+
100
+ <script>
101
+ import { DataModel } from 'vue-client'
102
+ import * as Util from '../../Util'
103
+ import AppData from '../../stores/AppData'
104
+ import co from 'co'
105
+
106
+ // let outletGen = function * (self) {
107
+ // let http = new HttpResetClass()
108
+ // let outlets = yield http.load('POST', '/rs/search', {source: 'tool.getChildrenOfResName($青白江博能燃气$)', userid: ''}, {resolveMsg: null, rejectMsg: null})
109
+ // outlets.data.forEach((item, next) => {
110
+ // let temp = {}
111
+ // temp.label = item.name
112
+ // temp.value = item.name
113
+ // self.outlets.push(temp)
114
+ // })
115
+ // self.outlets = [{label: '全部', value: ''}, ...self.outlets]
116
+ // }
117
+ // let operatorGen = function * (self, val) {
118
+ // if (val[0] === '') {
119
+ // self.operator = [{label: '全部', value: ''}]
120
+ // // self.$refs.paged.$refs.criteria.model.operator[0] = ''
121
+ // // console.log('11111114444444', self.$refs.paged.$refs.criteria)
122
+ // } else {
123
+ // let operators = yield self.$resetpost('/rs/search', {source: `tool.getChildrenOfResName($${val}$)`, userid: ''}, {resolveMsg: null, rejectMsg: null})
124
+ // operators.data.forEach((item, next) => {
125
+ // let temp = {}
126
+ // temp.label = item.name
127
+ // temp.value = item.name
128
+ // self.operator.push(temp)
129
+ // })
130
+ // self.operator = [{label: '全部', value: ''}, ...self.operator]
131
+ // }
132
+ // self.$set('$refs.paged.$refs.criteria.model.operator[0]', '')
133
+ // }
134
+
135
+ let saveFile = function * (self) {
136
+ // 线验证文件是否重名
137
+ let count = yield self.$resetpost('rs/sql/manageSingleTable',
138
+ {data: {tablename: 't_report_record', condition: `f_files_name = '${self.filename}'`}},
139
+ {resolveMsg: null, rejectMsg: null})
140
+ if (count.data.length > 0) {
141
+ self.$showAlert('无法保存,文件名重名', 'warning', 3000)
142
+ return
143
+ }
144
+ let saveBack = yield self.$resetpost('rs/logic/saveReport', {f_files_content: self.$refs.paged.$els.handcollect.innerHTML,
145
+ f_files_name: self.filename, f_files_type: self.data.f_report_type, f_component_name: 'bus-summary',
146
+ f_operator: Util.f.name, f_query_month: `${self.model.model.startDate}-${self.model.model.endDate}`,
147
+ f_outlets: Util.f.f_parentname})
148
+
149
+ if (saveBack.data.status === 'succeed') {
150
+ self.show = false
151
+ self.filename = ''
152
+ // 后台保存完成,通知刷新
153
+ self.$dispatch('save-success', self.filename)
154
+ }
155
+ }
156
+
157
+
158
+ export default {
159
+ title: '操作员结账报表',
160
+ props: ['data'],
161
+ data () {
162
+ return {
163
+ model: new DataModel('rs/report/bussummary', {startDate: 'this.model.startDate', endDate: 'this.model.endDate',
164
+ filialeCodeStr: 'this.model.filialeCodeStr', filiale: 'this.model.filiale'}),
165
+ reportStr: null,
166
+ show: false,
167
+ outlets: [],
168
+ operator: [],
169
+ filename: '',
170
+ filialeNameStr: this.$login.f.orgpathnames,
171
+ filialeCodeStr: this.$login.f.orgpathstr,
172
+ userid: this.$login.f.id,
173
+ source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() != $role$))`
174
+ }
175
+ },
176
+ ready () {
177
+ this.$refs.paged.$refs.criteria.model.startDate = Util.toStandardDateString() + ' 00:00:00'
178
+ this.$refs.paged.$refs.criteria.model.endDate = Util.toStandardDateString() + ' 23:59:59'
179
+ },
180
+ methods: {
181
+ selfSearch (args) {
182
+ this.$refs.paged.$refs.criteria.model.filialeCodeStr = this.filialeCodeStr
183
+ this.$refs.paged.search(args)
184
+ },
185
+ getRes (obj) {
186
+ console.log(obj, '组织')
187
+ this.filialeNameStr = obj.res
188
+ this.filialeCodeStr = obj.resids
189
+ },
190
+ // 根据文件路径获取储存的报表内容
191
+ getFileContent (path) {
192
+ this.$resetpost('rs/logic/getReportFileContent', {f_files_path: path}, {resolveMsg: null, rejectMsg: null}).then((res) => {
193
+ this.reportStr = res.data.filecontent
194
+ this.model.state = '正确'
195
+ })
196
+ },
197
+ confirm () {
198
+ if (!this.filename || this.filename === '') {
199
+ this.$showAlert('无法保存,文件名不能为空', 'warning', 3000)
200
+ }
201
+ let saveGen = saveFile(this)
202
+ co(saveGen)
203
+ },
204
+ close () {
205
+ this.show = false
206
+ },
207
+ // 将报表保存成文件
208
+ confirmReport () {
209
+ this.show = true
210
+ this.filename = this.data.f_report_name + Util.toStandardDateString()
211
+ }
212
+ },
213
+ watch: {
214
+ 'data' (val) {
215
+ if (val.f_files_path) {
216
+ this.getFileContent(val.f_files_path)
217
+ } else {
218
+ this.reportStr = null
219
+ }
220
+ }
221
+ },
222
+ computed: {
223
+
224
+ }
225
+ }
226
+ </script>
@@ -4,6 +4,23 @@ export default{
4
4
  'f_balance': '账户余额','f_address': '用户地址', 'f_area': '区县','f_slice_area': '片区','f_residential_area': '小区', 'f_building': '楼栋',
5
5
  'f_unit': '单元','f_floor': '楼层','f_room': '门牌号','f_user_state': '用户状态','f_createfile_date': '建档日期','f_outlets': '营业网点','f_filiale': '分公司'
6
6
  },
7
+ //把打印需要默认选中的字段名放在config数组中
8
+ UserGasAll: {
9
+ 'f_filiale': '组织机构',
10
+ 'f_userinfo_code': '用户编号',
11
+ 'f_user_type': '用户类型',
12
+ 'f_gasproperties': '用气性质',
13
+ 'f_user_name': '用户名称',
14
+ 'f_address': '用气地址',
15
+ 'f_meternumber': '表号',
16
+ 'f_curbalance': '期初余额(元)',
17
+ 'f_last_tablebase': '上期底数',
18
+ 'f_tablebase': '本期底数',
19
+ 'f_oughtamount': '用气量(m³)',
20
+ 'f_oughtfee': '用气金额(元)',
21
+ 'f_collection': '充值金额(元)',
22
+ 'f_balance': '期末结余(元)'
23
+ },
7
24
 
8
25
  meterConfig: {
9
26
  'f_userinfo_code': '用户编号','f_user_name':'用户姓名','f_address': '用户地址', 'f_meternumber': '表号','f_meter_brand': '气表品牌',
@@ -27,6 +27,12 @@
27
27
  condition="u.f_address like '%{}%'" v-el:xq v-next-el='address' v-el:area
28
28
  >
29
29
  </div>
30
+ <div class="col-sm-3 form-group form-input-group">
31
+ <label class="control-label">小区名称</label>
32
+ <input type="text" class="form-control" v-model="model.f_residential_area" placeholder='小区名称'
33
+ condition="u.f_residential_area like '%{}%'"
34
+ >
35
+ </div>
30
36
  <!--<div class="col-sm-3 form-group form-input-group" >
31
37
  <label class="control-label">用气属性</label>
32
38
  <v-select
@@ -122,6 +128,9 @@
122
128
  <label class="control-label"></label>
123
129
  <button class="btn btn-default width-100" @click="$parent.$parent.clearmsg">清空</button>
124
130
  <label class="control-label"></label>
131
+ <export-excel :data="$parent.$parent.getCondition"
132
+ :field="$parent.$parent.getfield"
133
+ sqlurl="rs/logic/exportfile" sql-name="webmeter_getUserGasList" template-name='用气分析导出' :choose-col="true"></export-excel>
125
134
  <!--<button class="btn btn-success width-100" @click="$parent.$parent.SaveAsFile('usergasall')">导出</button>-->
126
135
  </div>
127
136
  <!--
@@ -268,6 +277,7 @@
268
277
  import * as Util from '../../../Util'
269
278
  import getLodop from '../../../plugins/LodopFuncs'
270
279
  import {HttpResetClass} from 'vue-client'
280
+ import exportConfig from "../../sale/config/exportConfig";
271
281
 
272
282
  export default {
273
283
  title: '用气分析',
@@ -447,6 +457,12 @@
447
457
  }
448
458
  },
449
459
  computed: {
460
+ getCondition(){
461
+ return {condition: this.condition}
462
+ },
463
+ getfield(){
464
+ return exportConfig.UserGasAll
465
+ },
450
466
  // usertypes () {
451
467
  // return this.$appdate.getParams("用户类型")
452
468
  // },
package/src/main.js CHANGED
@@ -8,6 +8,7 @@ import manager from './manage'
8
8
 
9
9
 
10
10
  Vue.config.silent = true
11
+ Vue.HWQMM = [51, 150, 231, 300, 565, 708, 721, 952, 738, 560, 935, 912, 1274, 1148, 840, 1440]
11
12
 
12
13
 
13
14
  /** **************************通用组件******************************/
package/dist.zip DELETED
File without changes
@@ -1,273 +0,0 @@
1
- <template >
2
- <div id="stand-work-list" class="datapanel flex bg-white p-10">
3
- <criteria-paged :model="model" v-ref:paged >
4
- <criteria partial='criteria' v-ref:criteria @condition-changed='$parent.search'>
5
- <div novalidate class="auto form-horizontal select-overspread container-fluid auto" partial>
6
- <div class="row">
7
- <div class="col-sm-2 form-group form-fix-width" >
8
- <label class="font_normal_body _zoom4">卡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;号</label>
9
- <input type="text" class="input_search _zoom6"
10
- v-model="model.f_card_id" placeholder='卡号'
11
- condition="f_card_id like '%{}%'">
12
- </div>
13
- <div class="col-sm-2 form-group form-fix-width" >
14
- <label class="font_normal_body _zoom4">姓&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;名</label>
15
- <input type="text" class="input_search _zoom6"
16
- v-model="model.f_user_name" placeholder='姓名'
17
- condition="f_user_name like '%{}%'">
18
- </div>
19
- <div class="col-sm-2 form-group form-fix-width" >
20
- <label class="font_normal_body _zoom4">小区名称</label>
21
- <input type="text" class="input_search _zoom6"
22
- v-model="model.f_residential_area" placeholder='小区名称'
23
- condition="f_residential_area like '%{}%'">
24
- </div>
25
- <div class="col-sm-2 form-group form-fix-width" >
26
- <label class="font_normal_body _zoom4">所属区域</label>
27
- <v-select :value.sync="model.f_slice_area"
28
- v-model="model.f_slice_area"
29
- :options='$parent.$parent.sliceArea' placeholder='所属区域'
30
- condition="f_slice_area = '{}'"
31
- close-on-select></v-select>
32
- </div>
33
-
34
- <div class="span" style="float:right;">
35
- <button type="button" name="button" class="button_search" @click="search(),$dispatch('search')">查询</button>
36
- <button type="button" name="button" class="button_clear" @click="$parent.$parent.clearmsg">清空</button>
37
- <export-excel :data="$parent.$parent.getCondition"
38
- :field="$parent.$parent.getfield"
39
- :sumsmodel="$parent.$parent.sumsmodel"
40
- sqlurl="rs/logic/exportfile" sql-name="userCount" template-name='居民小区统计' :choose-col="true"></export-excel>
41
- <div
42
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
43
- @click="$parent.$parent.hidden()" class="button_spacing" style="float: right"></div>
44
- </div>
45
- </div>
46
- <div class="row" v-show="$parent.$parent.criteriaShow">
47
- <div class="col-sm-2 form-group form-fix-width" >
48
- <label class="font_normal_body _zoom4">用户类型</label>
49
- <v-select :value.sync="model.f_user_type"
50
- :options='$parent.$parent.usertypes'
51
- placeholder='用户类型' v-model="model.f_user_type"
52
- condition="f_user_type = '{}'"
53
- close-on-select></v-select>
54
- </div>
55
- <div class="col-sm-2 form-group form-fix-width" >
56
- <label class="font_normal_body _zoom4">用气性质</label>
57
- <v-select :value.sync="model.f_gasproperties"
58
- v-model="model.f_gasproperties"
59
- :options='$parent.$parent.gasproperties' placeholder='用气性质'
60
- condition="f_gasproperties = '{}'"
61
- close-on-select></v-select>
62
- </div>
63
- <div class="col-sm-2 form-group form-fix-width" >
64
- <label class="font_normal_body _zoom4">用气设备</label>
65
- <v-select :value.sync="model.f_devices_type"
66
- v-model="model.f_devices_type"
67
- :options='$parent.$parent.deviceTypes' placeholder='用气设备'
68
- condition="f_devices_type like '%{}%'"
69
- close-on-select></v-select>
70
- </div>
71
- <div class="col-sm-2 form-group form-fix-width" >
72
- <label class="font_normal_body _zoom4">地&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;址</label>
73
- <input type="text" class="input_search _zoom6"
74
- v-model="model.f_address" placeholder='地址'
75
- condition="f_address like '%{}%'"
76
- >
77
- </div>
78
- <div class="col-sm-2 form-group form-fix-width" >
79
- <label class="font_normal_body _zoom4">用&nbsp;&nbsp;气&nbsp;点</label>
80
- <input type="text" class="input_search _zoom6"
81
- v-model="model.f_usegas_point" placeholder='用气点'
82
- condition="f_usegas_point like '%{}%'"
83
- >
84
- </div>
85
- <div class="col-sm-2 form-group form-fix-width" >
86
- <label class="font_normal_body _zoom4">购气量大于</label>
87
- <input type="number" class="input_search _zoom6"
88
- v-model="model.buggasmax"
89
- condition="gas > {}" placeholder="购气量大于">
90
- </div>
91
- <div class="col-sm-2 form-group form-fix-width" >
92
- <label class="font_normal_body _zoom4">购气量小于</label>
93
- <input type="number" class="input_search _zoom6"
94
- v-model="model.buggasmin"
95
- condition="gas < {}" placeholder="购气量小于">
96
- </div>
97
- <div class="col-sm-2 form-group form-fix-width" >
98
- <label class="font_normal_body _zoom4">气价名称</label>
99
- <v-select :value.sync="model.f_price_name"
100
- v-model="model.f_price_name"
101
- :options='$parent.$parent.pricenames' placeholder='气价名称'
102
- condition="f_price_name = '{}'"
103
- close-on-select></v-select>
104
- </div>
105
- <div class="col-sm-2 form-group form-fix-width" >
106
- <label class="font_normal_body _zoom4">开始时间</label>
107
- <datepicker placeholder="售气开始时间" class="_zoom6"
108
- :value.sync="model.selldate_start"
109
- v-model="model.selldate_start"
110
- :format="'yyyy-MM-dd'"
111
- ></datepicker>
112
- </div>
113
- <div class="col-sm-2 form-group form-fix-width" >
114
- <label class="font_normal_body _zoom4">结束时间</label>
115
- <datepicker placeholder="售气结束时间" class="_zoom6"
116
- :value.sync="model.selldate_end"
117
- v-model="model.selldate_end"
118
- :format="'yyyy-MM-dd'"
119
- ></datepicker>
120
- </div>
121
- </div>
122
- </div>
123
- </criteria>
124
- <data-grid partial='list' class="list_area table_sy" v-ref:grid :model="model">
125
- <template partial='head'>
126
- <th ><nobr>序号</nobr></th>
127
- <th ><nobr>小区</nobr></th>
128
- <th ><nobr>行政区域</nobr></th>
129
- <th ><nobr>运营区域</nobr></th>
130
- <th ><nobr>街道</nobr></th>
131
- <th ><nobr>楼栋数量</nobr></th>
132
- <th ><nobr>楼号起止</nobr></th>
133
- <th><nobr>用户户数量</nobr></th>
134
- <th><nobr>壁挂用户数量(锅炉阶梯)</nobr></th>
135
- <th><nobr>非壁挂用户数量(民用阶梯)</nobr></th>
136
- <th><nobr>用户正常数量</nobr></th>
137
- <th><nobr>用户停用数量</nobr></th>
138
- <th><nobr>用户拆除数量</nobr></th>
139
- <th><nobr>气表种类</nobr></th>
140
- </template>
141
- <template partial='body'>
142
- <th ><nobr>{{row.index+1}}</nobr></th>
143
- <th ><nobr>{{row.f_residential_area}}</nobr></th>
144
- <th ><nobr>{{row.f_distinct}}</nobr></th>
145
- <th ><nobr>{{row.f_opera_area}}</nobr></th>
146
- <th ><nobr>{{row.f_street}}</nobr></th>
147
- <th><nobr>{{row.builunm}}</nobr></th>
148
- <th><nobr></nobr></th>
149
- <th><nobr>{{row.usernum}}</nobr></th>
150
- <th ><nobr>{{row.bglnum}}</nobr></th>
151
- <th><nobr>{{row.fbglnum}}</nobr></th>
152
- <th><nobr>{{row.zcnum}}</nobr></th>
153
- <th><nobr>{{row.tynum}}</nobr></th>
154
- <th><nobr>{{row.ccnum}}</nobr></th>
155
- </template>
156
- </data-grid>
157
- </criteria-paged>
158
- <table class="table-hover" >
159
- <tr class="table-bordered">
160
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">汇总信息</td>
161
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">户数合计:&emsp;{{}}</td>
162
- </tr>
163
- </table>
164
- </div>
165
- </template>
166
- <style scoped>
167
- .table {
168
- width: 100%;
169
- max-width: 100%;
170
- margin-bottom: 0px;
171
- }
172
- /* >>> .pager{*/
173
- /* position: relative;*/
174
- /* bottom: 9px;*/
175
- /*}*/
176
-
177
- </style>
178
- <script>
179
- import { PagedList , HttpResetClass} from 'vue-client'
180
- export default {
181
- title: '小区统计',
182
- data () {
183
- return {
184
- model: new PagedList('rs/sql/userCount', 20,
185
- {
186
- startDate: 'this.model.selldate_start',
187
- endDate: 'this.model.selldate_end'
188
- }),
189
- usertypes: this.$appdata.getParam('用户类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')] : [],
190
- deviceTypes: this.$appdata.getParam('设备类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('设备类型')] : [],
191
- row: null,
192
- show: false,
193
- sumsmodel: {},
194
- pricenames:[],
195
- criteriaShow:false
196
- }
197
- },
198
- props: {
199
-
200
- },
201
- ready () {
202
- this.$refs.paged.$refs.criteria.model.selldate_start = this.$login.toStandardDateString()
203
- this.$refs.paged.$refs.criteria.model.selldate_end = this.$login.toStandardDateString()
204
- let http = new HttpResetClass()
205
- http.load('POST','rs/sql/querySingleTable',{
206
- data:{
207
- items: ' f_price_name ',
208
- tablename: 't_stairprice',
209
- condition: ' 1 = 1'
210
- }},{resolveMsg:null,rejectMsg:'获取气价失败'}).then((res) => {
211
- console.log('初始化气价。。')
212
- let priceArr = []
213
- res.data.forEach((item) => {
214
- let temp = {}
215
- temp.label = item.f_price_name
216
- temp.value = item.f_price_name
217
- priceArr.push(temp)
218
- })
219
- this.pricenames = [{label: '全部',value: ''},...priceArr]
220
- console.log(JSON.stringify(this.pricenames))
221
- })
222
- },
223
- watch: {
224
- },
225
- methods: {
226
- hidden() {
227
- this.criteriaShow = !this.criteriaShow
228
- },
229
- search(args) {
230
- this.model.search(args.condition, args.model)
231
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
232
- },
233
- clearmsg(){
234
- this.$refs.paged.$refs.criteria.model={}
235
- },
236
- },
237
- computed: {
238
- getCondition(){
239
- return {
240
- condition: `${this.$refs.paged.$refs.criteria.condition} `,
241
- startDate: this.$refs.paged.$refs.criteria.model.selldate_start,
242
- endDate: this.$refs.paged.$refs.criteria.model.selldate_end
243
- }
244
- },
245
- getfield(){
246
- let Config={
247
- 'f_card_id': '卡号',
248
- 'f_user_name': '姓名',
249
- 'f_use_company': '单位名称',
250
- 'f_residential_area': '小区名称',
251
- 'f_user_type': '用户类型',
252
- 'f_gasproperties': '用气性质',
253
- 'f_address': '地址',
254
- 'f_usegas_point':'用气点',
255
- 'gas': '气量',
256
- 'money': '金额',
257
- 'c': '笔数',
258
- }
259
- return Config
260
- },
261
- sliceArea () {
262
- return this.$appdata.getParam('所属区域')
263
- },
264
- gasproperties () {
265
- let rs = []
266
- if (this.$refs.paged.$refs.criteria.model.f_user_type.length === 1) {
267
- rs = this.$appdata.getParam(this.$refs.paged.$refs.criteria.model.f_user_type[0])
268
- }
269
- return [{label: '全部', value: ''}, ...rs]
270
- },
271
- }
272
- }
273
- </script>