manage-client 4.0.82 → 4.0.83

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.
Binary file
@@ -19,9 +19,9 @@ var qtx = 'http://36.103.222.144:6300/'
19
19
  // var bendi = 'http://203.57.101.233:9001/'
20
20
  // var bendi = 'http://121.36.106.17:8400/'
21
21
  // var fuwu = 'http://203.57.101.233:9001'
22
- var bendi = 'http://203.57.101.233:9001/'
22
+ var bendi = 'http://192.168.50.67:31467/'
23
23
  // var bendi = 'http://119.187.112.234:8400/'
24
- var wode = 'http://203.57.101.233:9001/'
24
+ var wode = 'http://192.168.50.67:31467/'
25
25
  // 192.168.
26
26
  // var str = 'http://127.0.0.1:8080/manage', str2 = 'http://192.168.50.199:8300'
27
27
  // var str = 'http://192.168.10.233:8300', str2 = 'http://192.168.10.14:8300'
@@ -33,15 +33,26 @@ var proxyTable = {
33
33
  target: 'http://203.57.101.233:9001/'
34
34
 
35
35
  },
36
- '/api/af-revenue/sql/compreQuery': {
36
+ '/api/af-revenue/report': {
37
37
  pathRewrite: {
38
- '^/api/af-revenue': '/'
38
+ '/api/af-revenue/report': '/report'
39
+ },
40
+ target: 'http://127.0.0.1:9026/'
41
+ },
42
+ '/api/af-revenue/sql': {
43
+ pathRewrite: {
44
+ '/api/af-revenue/sql': '/sql'
45
+ },
46
+ target: 'http://127.0.0.1:9026/'
47
+ },
48
+ '/api/af-revenue/logic': {
49
+ pathRewrite: {
50
+ '/api/af-revenue/logic': '/logic'
39
51
  },
40
52
  target: 'http://127.0.0.1:9026/'
41
53
  },
42
54
  '/api': {
43
- target: 'http://192.168.50.67:31567/'
44
-
55
+ target: 'http://192.168.50.67:31467/'
45
56
  },
46
57
  '/rs/sql/chargeQuery_by_gasproperties': {
47
58
  target: 'http://localhost:8084/'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "manage-client",
3
- "version": "4.0.82",
3
+ "version": "4.0.83",
4
4
  "description": "经营管控模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -0,0 +1,178 @@
1
+ <template>
2
+ <div class="basic-main" style="height: 98%">
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-horizontal select-overspread container-fluid auto" partial >
6
+ <div class="row">
7
+ <div class="col-sm-2" >
8
+ <label class="font_normal_body" for="startDate">开始日期:</label>
9
+ <datepicker id="startDate" placeholder="开始日期" style="width: 60%"
10
+ v-model="model.startDate"
11
+ :value.sync="model.startDate"
12
+ :disabled-days-of-Week="[]"
13
+ :format="'yyyy-MM-dd HH:mm:ss'"
14
+ :show-reset-button="reset">
15
+ </datepicker>
16
+ </div>
17
+ <div class="col-sm-2" >
18
+ <label class="font_normal_body" for="endDate">结束日期:</label>
19
+ <datepicker id="endDate" placeholder="结束日期" style="width: 60%"
20
+ v-model="model.endDate"
21
+ :value.sync="model.endDate"
22
+ :disabled-days-of-Week="[]"
23
+ :format="'yyyy-MM-dd HH:mm:ss'"
24
+ :show-reset-button="reset">
25
+ </datepicker>
26
+ </div>
27
+ <div class="col-sm-2">
28
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;公司&nbsp;&nbsp;&nbsp; </label>
29
+ <right-tree @re-res="$parent.$parent.getRes"></right-tree>
30
+ </div>
31
+ <div class="col-sm-2">
32
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;部门&nbsp;&nbsp;&nbsp; </label>
33
+ <res-select restype='department'
34
+ is-mul="false"
35
+ @res-select="$parent.$parent.getdep"
36
+ :parentresid="$parent.$parent.depresid"
37
+ :initresid='$parent.$parent.depid'>
38
+ </res-select>
39
+
40
+ </div>
41
+ <div class="col-sm-2">
42
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;人员&nbsp;&nbsp;&nbsp; </label>
43
+ <res-select restype='user'
44
+ is-mul="false"
45
+ @res-select="$parent.$parent.getuser"
46
+ :parentresid="$parent.$parent.userresid"
47
+ :initresid='$parent.$parent.operatorid'>
48
+ </res-select>
49
+ </div>
50
+ </div>
51
+ <div class="span" style = "float:right;">
52
+ <button class="button_search" @click="$parent.$parent.searchData()">查询</button>
53
+ <report-print id='gasprice' top='1cm' left='0' width='100%' height='100%' :preview="true"></report-print>
54
+ <report-excel id='gasprice'></report-excel>
55
+ </div>
56
+ </div>
57
+ </criteria>
58
+ <div partial='list' v-el:handcollect id='gasprice' style="overflow-y: scroll">
59
+ <table class='tableprint' style="margin: 0px auto">
60
+ <thead>
61
+ <tr>
62
+ <th :colspan='$parent.spans' style="font-weight: normal; text-align: left;">
63
+ <h3 style="text-align: center">收款日报表</h3>
64
+ </th>
65
+ </tr>
66
+ <tr>
67
+ <th :colspan='$parent.spans' style="font-weight: normal; text-align: center;">
68
+ 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
69
+ 结束时间:{{ model.model.endDate }}&nbsp;&nbsp;
70
+ 打印时间:{{{$parent.printTime}}}
71
+ </th>
72
+ </tr>
73
+ <tr>
74
+ <th :colspan='$parent.spans' style="font-weight: normal; text-align: center;">
75
+ <div>
76
+ <span v-show="$parent.orgname.trim()!=''">公司:{{$parent.orgname}}</span>
77
+ <span v-show="$parent.depname.trim()!=''"> 部门:{{$parent.depname}}</span>
78
+ <span v-show="$parent.operatorname.trim()!=''">人员:{{$parent.operatorname}}</span>
79
+ </div>
80
+ </th>
81
+ </tr>
82
+ </thead>
83
+ <tr>
84
+ <td :colspan='$parent.spans' class="noborder">
85
+ {{{ model.data.substring(26,model.data.length-8) }}}
86
+ </td>
87
+ </tr>
88
+ <tfoot>
89
+ <tr style="text-align: left">
90
+ <th :colspan='Math.floor($parent.spans/3)'>财务审核:</th>
91
+ <th :colspan='Math.floor($parent.spans/3)'>收款审核:</th>
92
+ <th :colspan='Math.floor($parent.spans/3)'>收款员:</th>
93
+ </tr>
94
+ </tfoot>
95
+ </table>
96
+ </div>
97
+ </criteria-paged>
98
+ </div>
99
+ </template>
100
+
101
+ <script>
102
+ import { DataModel } from 'vue-client'
103
+ import co from 'co'
104
+ export default {
105
+ title: '收款日报表',
106
+ props: ['data'],
107
+ data () {
108
+ return {
109
+ printTime: this.$login.toStandardTimeString(),
110
+ depresid: [],
111
+ userresid: [],
112
+ f_orgid: this.$login.f.orgid,
113
+ f_depid: this.$login.f.depids,
114
+ f_operatorid: this.$login.f.id,
115
+ operatorid: [],
116
+ depid: [],
117
+ orgname: '',
118
+ depname: '',
119
+ operatorname: '',
120
+ orgCondtionStr: '1=1',
121
+ model: new DataModel('api/af-revenue/report/sy_bussummary', {startDate: 'this.model.startDate', endDate: 'this.model.endDate',
122
+ f_orgid: 'this.model.f_orgid'}),
123
+ reportStr: null,
124
+ spans: 0
125
+ }
126
+ },
127
+ ready () {
128
+ this.$refs.paged.$refs.criteria.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
129
+ this.$refs.paged.$refs.criteria.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
130
+ },
131
+ methods: {
132
+ searchData () {
133
+ this.$refs.paged.$refs.criteria.search()
134
+ },
135
+ selfSearch (args) {
136
+ this.printTime = this.$login.toStandardTimeString()
137
+ let orgcondition = '1=1'
138
+ if (this.f_orgid && this.f_orgid[0]) {
139
+ orgcondition += ` and f_orgid in ('${this.f_orgid}')`
140
+ }
141
+ if (this.f_depid && this.f_depid[0]) {
142
+ orgcondition += ` and f_depid in ('${this.f_depid}')`
143
+ }
144
+ if(this.f_operatorid && this.f_operatorid[0]) {
145
+ orgcondition += ` and f_operatorid in ('${this.f_operatorid}')`
146
+ }
147
+ this.$refs.paged.$refs.criteria.model.f_orgid = orgcondition
148
+ this.$refs.paged.search(args)
149
+ },
150
+ getRes (obj) {
151
+ this.orgname = obj.res[0]
152
+ this.depresid = obj.resids
153
+ this.f_orgid = obj.resids
154
+ },
155
+ getdep (obj, val) {
156
+ this.depname = val[0]
157
+ this.userresid = obj
158
+ this.f_depid = obj
159
+ },
160
+ getuser ( obj, val) {
161
+ this.operatorname = val[0]
162
+ this.f_operatorid = obj
163
+ }
164
+ },
165
+ watch: {
166
+ 'model.data' (val) {
167
+ this.spans = val.split('</tr>').map(item => item.split('</td>').length-1).reduce((x, y) => x > y ? x : y)
168
+ }
169
+ },
170
+ computed: {
171
+ }
172
+ }
173
+ </script>
174
+ <style scoped>
175
+ .noborder{
176
+ border: none;
177
+ }
178
+ </style>
@@ -0,0 +1,249 @@
1
+ <template>
2
+ <div class="basic-main" style="height: 100%">
3
+ <criteria-paged :model="model" :pager='false' v-ref:paged>
4
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
5
+ <p class="bg-info text-center" style="padding: 8px;">月售气量汇总表</p>
6
+ <div class="form-group" v-if="!$parent.$parent.data.f_files_path"></div>
7
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial >
8
+ <div class="row">
9
+ <div class="col-sm-2 form-group" >
10
+ <label class="font_normal_body" for="startDate">开始日期:</label>
11
+ <datepicker id="startDate" placeholder="开始日期" style="width: 60%"
12
+ v-model="model.startDate"
13
+ :value.sync="model.startDate"
14
+ :disabled-days-of-Week="[]"
15
+ :format="'yyyy-MM-dd HH:mm:ss'"
16
+ :show-reset-button="reset">
17
+ </datepicker>
18
+ </div>
19
+ <div class="col-sm-2 form-group" >
20
+ <label class="font_normal_body" for="endDate">结束日期:</label>
21
+ <datepicker id="endDate" placeholder="结束日期" style="width: 60%"
22
+ v-model="model.endDate"
23
+ :value.sync="model.endDate"
24
+ :disabled-days-of-Week="[]"
25
+ :format="'yyyy-MM-dd HH:mm:ss'"
26
+ :show-reset-button="reset">
27
+ </datepicker>
28
+ </div>
29
+ <res-select-group :initres="$parent.$parent.initres" :show-component=['company','department','operator'] :cascade =true @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
30
+ <div class="col-sm-2 form-group">
31
+ <label class="font_normal_body">收费状态</label>
32
+ <v-select :value.sync="$parent.$parent.f_state"
33
+ v-model="$parent.$parent.f_state"
34
+ :options='$parent.$parent.charge_state' placeholder='请选择'
35
+ condition="f_state in {}"
36
+ close-on-select></v-select>
37
+ </div>
38
+ <div style = "float:right;">
39
+ <button class="button_search" @click="$parent.$parent.searchData()">查询</button>
40
+ <report-print id='gasprice' top='3cm' left='0' width='100%' height='100%' :preview="true"></report-print>
41
+ <report-excel id='gasprice'></report-excel>
42
+ </div>
43
+ </div>
44
+ <!--<div class="span" style = "float:right;">-->
45
+
46
+ <!--</div>-->
47
+ </div>
48
+ </criteria>
49
+ <div partial='list' v-el:handcollect id='gasprice' style="overflow-y: scroll">
50
+ <table class='tableprint' style="margin: 0px auto" v-if="!$parent.data.f_files_path">
51
+ <thead>
52
+ <tr>
53
+ <th colspan='{{$parent.spans}}' style="font-weight: bold; text-align: left;">
54
+ <h3 style="text-align: center">月售气量汇总表</h3>
55
+ </th>
56
+ </tr>
57
+ <tr>
58
+ <th colspan='{{$parent.spans}}' style="font-weight: normal; text-align: center;">
59
+ 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
60
+ 结束时间:{{ model.model.endDate }}&nbsp;&nbsp;
61
+ </th>
62
+ </tr>
63
+ <tr>
64
+ <th colspan='{{$parent.spans}}' style="font-weight: normal; text-align: center;">
65
+ 打印时间:{{{$parent.printTime}}}
66
+ </th>
67
+ </tr>
68
+ <tr>
69
+ <th colspan='{{$parent.spans}}' style="font-weight: normal; text-align: center;">
70
+ <div>
71
+ <span v-show="$parent.orgname.trim()!=''">公司:{{$parent.orgname}}</span>
72
+ <span v-show="$parent.depname.trim()!=''"> 部门:{{$parent.depname}}</span>
73
+ </div>
74
+ </th>
75
+ </tr>
76
+ </thead>
77
+ <tr>
78
+ <td style="font-weight: normal;" id="test">
79
+ {{{ model.data.substring(26,model.data.length-8) }}}
80
+ </td>
81
+ </tr>
82
+ <tfoot>
83
+ <tr style="text-align: left">
84
+ <th colspan='{{$parent.spans}}' style="font-weight: normal; text-align: left;">
85
+ 收款人:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
86
+ 审核人:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
87
+ 经手人:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
88
+ </th>
89
+ </tr>
90
+ </tfoot>
91
+ </table>
92
+ {{{ $parent.reportStr}}}
93
+ </div>
94
+ </criteria-paged>
95
+ <modal :show.sync="show" v-ref:modal small backdrop="false">
96
+ <header slot="modal-header" class="modal-header">
97
+ <h4 class="modal-title">输入文件名称</h4>
98
+ </header>
99
+ <article slot="modal-body" class="modal-body">
100
+ <div class="form-group">
101
+ <input type="text" class="form-control" v-model="filename" placeholder='保存的文件名'>
102
+ </div>
103
+ </article>
104
+ <footer slot="modal-footer" class="modal-footer">
105
+ <button v-show="show" type="button" class="btn btn-default" @click='close'>取消</button>
106
+ <button v-show="show" type="button" class="btn btn-success" @click='confirm(filename)'>确认</button>
107
+ </footer>
108
+ </modal>
109
+ </div>
110
+ </template>
111
+
112
+ <script>
113
+ import { DataModel } from 'vue-client'
114
+ import co from 'co'
115
+ let saveFile = function * (self) {
116
+ // 线验证文件是否重名
117
+ let count = yield self.$resetpost('api/af-revenue/sql/manageSingleTable',
118
+ {data: {tablename: 't_report_record', condition: `f_files_name = '${self.filename}'`}},
119
+ {resolveMsg: null, rejectMsg: null})
120
+ if (count.data.length > 0) {
121
+ self.$showAlert('无法保存,文件名重名', 'warning', 3000)
122
+ return
123
+ }
124
+ let saveBack = yield self.$resetpost('api/af-revenue/logic/saveReport', {f_files_content: self.$refs.paged.$els.handcollect.innerHTML,
125
+ f_files_name: self.filename, f_files_type: self.data.f_report_type, f_component_name: 'manage-bus-summary',
126
+ f_operator: this.$login.f.name, f_query_month: `${self.model.model.startDate}-${self.model.model.endDate}`,
127
+ f_outlets: this.$login.f.depname})
128
+ if (saveBack.data.status === 'succeed') {
129
+ self.show = false
130
+ self.filename = ''
131
+ // 后台保存完成,通知刷新
132
+ self.$dispatch('save-success', self.filename)
133
+ }
134
+ }
135
+ export default {
136
+ title: '月售气量汇总表',
137
+ props: ['data'],
138
+ data () {
139
+ return {
140
+ printTime: this.$login.toStandardTimeString(),
141
+ depresid: [],
142
+ userresid: [],
143
+ initres: {
144
+ org:[this.$login.f.orgid],
145
+ dep:[],
146
+ user:[]
147
+ },
148
+ f_orgid: this.$login.f.orgid,
149
+ f_depid: this.$login.f.depids,
150
+ f_operatorid: this.$login.f.id,
151
+ operatorid: [],
152
+ depid: [],
153
+ orgname: '',
154
+ depname: '',
155
+ f_state:['有效'],
156
+ operatorname: '',
157
+ orgCondtionStr: '1=1',
158
+ model: new DataModel('api/af-revenue/report/sy_manage_month_sellgas', {startDate: 'this.model.startDate', endDate: 'this.model.endDate',
159
+ f_orgid: 'this.model.f_orgid'}),
160
+ reportStr: null,
161
+ show: false,
162
+ spans: ''
163
+ }
164
+ },
165
+ ready () {
166
+ this.$refs.paged.$refs.criteria.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
167
+ this.$refs.paged.$refs.criteria.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
168
+ // this.$refs.paged.$refs.criteria.search()
169
+ },
170
+ methods: {
171
+ searchData () {
172
+ this.$refs.paged.$refs.criteria.search()
173
+ },
174
+ selfSearch (args) {
175
+ this.printTime = this.$login.toStandardTimeString()
176
+ let orgstr = this.orgCondtionStr
177
+ args.condition = `${args.condition} ` + orgstr
178
+ this.$refs.paged.$refs.criteria.model.f_orgid = this.orgCondtionStr + (this.f_state && this.f_state != '' ? " and f_state='" + this.f_state + "' " : '')
179
+ this.$refs.paged.search(args)
180
+ },
181
+ getRes (condition, obj) {
182
+ this.orgCondtionStr = condition
183
+ this.orgname = obj.orgnames[0]
184
+ this.depname = obj.depnames[0]
185
+ },
186
+ // getdep (obj, val) {
187
+ // // this.depname = val[0]
188
+ // this.userresid = obj
189
+ // this.f_depid = obj
190
+ // },
191
+ // getuser ( obj, val) {
192
+ // this.operatorname = val[0]
193
+ // this.f_operatorid = obj
194
+ // },
195
+
196
+ // 根据文件路径获取储存的报表内容
197
+ getFileContent (path) {
198
+ this.$resetpost('api/af-revenue/logic/getReportFileContent', {f_files_path: path}, {resolveMsg: null, rejectMsg: null}).then((res) => {
199
+ this.reportStr = res.data.filecontent
200
+ this.model.state = '正确'
201
+ })
202
+ },
203
+ confirm () {
204
+ if (!this.filename || this.filename === '') {
205
+ this.$showAlert('无法保存,文件名不能为空', 'warning', 3000)
206
+ }
207
+ let saveGen = saveFile(this)
208
+ co(saveGen)
209
+ },
210
+ close () {
211
+ this.show = false
212
+ },
213
+ // 将报表保存成文件
214
+ confirmReport () {
215
+ this.show = true
216
+ this.filename = this.data.f_report_name + this.$login.toStandardDateString()
217
+ }
218
+ },
219
+ watch: {
220
+ 'data' (val) {
221
+ if (val.f_files_path) {
222
+ this.getFileContent(val.f_files_path)
223
+ } else {
224
+ this.reportStr = null
225
+ }
226
+ },
227
+ 'model.data' (val) {
228
+ let tab = document.getElementById('test').children[0]
229
+ var tds = tab.getElementsByTagName('td')
230
+ var num = 0
231
+ for (let td of tds) {
232
+ let span = td.getAttribute('colspan')
233
+ num = num + ((span ? span : 1) - 0)
234
+ }
235
+ this.spans = num
236
+ }
237
+ },
238
+ computed: {
239
+ charge_state() {
240
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('收费状态')]
241
+ }
242
+ }
243
+ }
244
+ </script>
245
+ <style scoped>
246
+ .noborder{
247
+ border: none;
248
+ }
249
+ </style>
@@ -514,7 +514,7 @@
514
514
  :value-single="true"
515
515
  v-model="$parent.$parent.f_hasseal"
516
516
  :options='$parent.$parent.hasseal'
517
- condition="f_hasseal='{}'
517
+ condition="f_hasseal='{}'"
518
518
  close-on-select>
519
519
  </v-select>
520
520
  </div>
@@ -854,6 +854,14 @@ export default function () {
854
854
  Vue.component('sy-kf-summary', (resolve) => {
855
855
  require(['./components/SellReport/siyang/SYKFSummary'], resolve)
856
856
  })
857
+ // 报表展示组件(收款日报表)
858
+ Vue.component('sy-bon-summary', (resolve) => {
859
+ require(['./components/SellReport/siyang/SYBonSummary'], resolve)
860
+ })
861
+ // 报表展示组件(月用气量汇总表)
862
+ Vue.component('sy-manage-month-gas', (resolve) => {
863
+ require(['./components/SellReport/siyang/SYManageMonthGas'], resolve)
864
+ })
857
865
  // 泗阳售气收费报表
858
866
  Vue.component('sy-gas-sale-fee', (resolve) => {
859
867
  require(['./components/SellReport/siyang/SYGasSaleFee'], resolve)