manage-client 3.1.43 → 3.1.47

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.
Files changed (96) hide show
  1. package/build/dev-server.js +182 -174
  2. package/package.json +1 -1
  3. package/src/App.vue +29 -28
  4. package/src/components/BasisEcharts/BarChart.vue +247 -247
  5. package/src/components/BasisEcharts/RingChart.vue +196 -196
  6. package/src/components/SellReport/BusinessClassify.vue +317 -317
  7. package/src/components/SellReport/ChargePrick.vue +284 -284
  8. package/src/components/SellReport/DepartmentPrick.vue +288 -288
  9. package/src/components/SellReport/FinanceSellType.vue +254 -254
  10. package/src/components/SellReport/GasBaozhuangFee.vue +237 -237
  11. package/src/components/SellReport/GasMoneyReport.vue +254 -0
  12. package/src/components/SellReport/GasPrice.vue +244 -244
  13. package/src/components/SellReport/ManageBusSummary.vue +242 -242
  14. package/src/components/SellReport/ManageHandInputtor.vue +281 -281
  15. package/src/components/SellReport/ManageOtherCharge.vue +250 -250
  16. package/src/components/SellReport/ManageSellType.vue +284 -284
  17. package/src/components/SellReport/ManageUserCount.vue +347 -347
  18. package/src/components/SellReport/MarketMonth.vue +297 -297
  19. package/src/components/SellReport/SaleMonthReport.vue +227 -227
  20. package/src/components/SellReport/SellDepReport.vue +251 -0
  21. package/src/components/SellReport/SellingTable.vue +220 -220
  22. package/src/components/SellReport/UserClassify.vue +271 -271
  23. package/src/components/SellReport/UserSellingGas.vue +251 -251
  24. package/src/components/daping/CallCenter.vue +366 -366
  25. package/src/components/daping/DataManagement.vue +537 -537
  26. package/src/components/daping/GMap.vue +636 -636
  27. package/src/components/daping/ManageMain.vue +270 -270
  28. package/src/components/daping/NetWork.vue +238 -238
  29. package/src/components/daping/RedactDaPing.vue +468 -468
  30. package/src/components/daping/Ring.vue +212 -212
  31. package/src/components/daping/SafeCheck.vue +446 -446
  32. package/src/components/daping/SafeCheckRing.vue +166 -166
  33. package/src/components/daping/SafecheckBarChart.vue +233 -233
  34. package/src/components/daping/WuHaiMap.vue +418 -418
  35. package/src/components/qinhua/BarChart.vue +256 -256
  36. package/src/components/qinhua/Pie.vue +132 -132
  37. package/src/components/qinhua/SellEcharts.vue +115 -115
  38. package/src/components/qinhua/qinHuaMap.vue +414 -414
  39. package/src/components/sale/businessquery/AccountQuery/ExpectGasList.vue +500 -496
  40. package/src/components/sale/businessquery/CollectManage.vue +135 -135
  41. package/src/components/sale/businessquery/FMYGasQuery.vue +713 -713
  42. package/src/components/sale/businessquery/MonthGasQuery.vue +467 -467
  43. package/src/components/sale/businessquery/OtherChargeQuery.vue +619 -619
  44. package/src/components/sale/businessquery/ProceedsOper.vue +377 -377
  45. package/src/components/sale/businessquery/YingShouMingXi.vue +525 -525
  46. package/src/components/sale/config/exportConfig.js +1 -1
  47. package/src/components/statistical/StatisticalAnalysis.vue +247 -247
  48. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +633 -633
  49. package/src/components/webmeter/DrillData/LostContactEcharts.vue +177 -177
  50. package/src/components/webmeter/DrillData/UserGasAll.vue +597 -597
  51. package/src/components/webmeter/DrillData/UserGasEcharts.vue +220 -210
  52. package/src/components/webmeter/DrillData/UserGasEform.vue +227 -227
  53. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
  54. package/src/components/webmeter/newwebmeter/NewException/NewContactEcharts.vue +171 -171
  55. package/src/components/webmeter/newwebmeter/NewException/NewEchartsAll.vue +111 -111
  56. package/src/components/webmeter/newwebmeter/NewException/NewExceptionEcharsTotal.vue +288 -275
  57. package/src/components/webmeter/newwebmeter/NewException/NewGasEcharts.vue +209 -209
  58. package/src/components/webmeter/newwebmeter/NewException/NewHandplanEcharts.vue +213 -213
  59. package/src/components/webmeter/newwebmeter/NewException/NewInstructEcharts.vue +240 -240
  60. package/src/components/webmeter/newwebmeter/NewException/TotalExceptionByMeter.vue +607 -607
  61. package/src/components/webmeter/newwebmeter/UserGasEchartsList.vue +283 -218
  62. package/src/components/webmeter/newwebmeter/UserGasList.vue +438 -438
  63. package/src/components/webmeter/newwebmeter/UserInstructEchartsList.vue +242 -242
  64. package/src/components/webmeter/newwebmeter/UserInstructList.vue +332 -332
  65. package/src/components/webmeter/newwebmeter/signAnalysisEcharts.vue +266 -266
  66. package/src/components/webmeter/newwebmeter/signAnalysisEform.vue +175 -175
  67. package/src/components/webmeter/newwebmeter/signAnalysisListMain.vue +387 -387
  68. package/src/components/webmeter/reportdata/ReportDataQuery.vue +25 -53
  69. package/src/filiale/alashan/SellingTable.vue +234 -234
  70. package/src/filiale/alashan/reportManage.js +10 -10
  71. package/src/filiale/jingwei/ChargeQuery.vue +6 -0
  72. package/src/filiale/jingwei/RecordInfoQuery.vue +13 -2
  73. package/src/filiale/jingzhou/ChargeQuery.vue +1243 -1243
  74. package/src/filiale/jingzhou/config/exportConfig.js +861 -861
  75. package/src/filiale/meihekou/UserGasEform.vue +267 -267
  76. package/src/filiale/meihekou/sale.js +26 -26
  77. package/src/filiale/rongcheng/exportConfig.js +257 -257
  78. package/src/filiale/rongchuang/SellingTable.vue +250 -250
  79. package/src/filiale/rongchuang/reportManage.js +11 -11
  80. package/src/filiale/shaoguan/ChargeQuery.vue +5 -0
  81. package/src/filiale/shaoguan/OtherChargeQuery.vue +6 -0
  82. package/src/filiale/shaoguan/config/exportConfig.js +433 -433
  83. package/src/filiale/tongchuan/ChargeQuery.vue +1252 -0
  84. package/src/filiale/tongchuan/ManageBusSummary.vue +302 -302
  85. package/src/filiale/tongchuan/sale.js +2 -1
  86. package/src/main.js +66 -66
  87. package/src/newmanage.js +525 -525
  88. package/src/reportManage.js +470 -462
  89. package/static/wuhai.json +1610 -1610
  90. package/.gradle/5.2.1/executionHistory/executionHistory.bin +0 -0
  91. package/.gradle/5.2.1/executionHistory/executionHistory.lock +0 -0
  92. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  93. package/.gradle/5.2.1/fileHashes/fileHashes.bin +0 -0
  94. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  95. package/.gradle/5.2.1/gc.properties +0 -0
  96. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
@@ -52,27 +52,18 @@
52
52
  placeholder='气表品牌'
53
53
  :value.sync="model.f_meter_brand"
54
54
  v-model="model.f_meter_brand"
55
- :options='$parent.$parent.WarningType'
56
- @change="$parent.$parent.getMeterType"
55
+ :options='$parent.$parent.meterbrands'
57
56
  close-on-select
58
57
  condition="f_meter_brand='{}'">
59
58
  </v-select>
60
59
  </div>
61
60
  <div class="col-sm-2 form-group" >
62
61
  <label class="font_normal_body">气表型号</label>
63
- <v-select v-if="$parent.$parent.styles"
64
- placeholder='气表型号'
65
- :value.sync="model.f_meter_style"
66
- v-model="model.f_meter_style"
67
- :options='$parent.$parent.Warningstyle'
68
- close-on-select
69
- condition="f_meter_style='{}'">
70
- </v-select>
71
- <v-select v-if="!$parent.$parent.styles"
62
+ <v-select
72
63
  placeholder='气表型号'
73
64
  :value.sync="model.f_meter_style"
74
65
  v-model="model.f_meter_style"
75
- :options='$parent.$parent.Warningstyles'
66
+ :options='$parent.$parent.metertypes'
76
67
  close-on-select
77
68
  condition="f_meter_style='{}'">
78
69
  </v-select>
@@ -132,6 +123,8 @@
132
123
  import plugin from 'system-clients/src/plugins/GetLoginInfoService'
133
124
 
134
125
  let readySomething = async function (self) {
126
+ await self.$MagLoadParams.loadParam()
127
+ self.initParams()
135
128
  // self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
136
129
  }
137
130
  export default {
@@ -158,7 +151,7 @@
158
151
  orgCondtionStr: " and f_filialeid in (" + this.$login.f.orgid+")",
159
152
  resshow:['company'],
160
153
  org:[this.$login.f.orgid],
161
-
154
+ meterbrands:[]
162
155
  }
163
156
  },
164
157
  created () {
@@ -176,49 +169,25 @@
176
169
  },
177
170
  ready() {
178
171
  this.$refs.paged.$refs.cri.search()
179
- this.getMeterTypeAndBrand('f_meter_brand', '1=1')
172
+ readySomething(this).then(() => {
173
+ this.$emit('ready')
174
+ }).catch((error) => {
175
+ this.$emit('error', error)
176
+ })
180
177
  },
181
178
  methods: {
182
- getMeterType() {
183
- this.Warningstyle = [{label: '全部', value: ''}]
184
- this.styles = false
185
- let f_meter_brand = this.$refs.paged.$refs.cri.model.f_meter_brand
186
- this.getMeterTypeAndBrand('f_meter_style', `f_meter_brand='${f_meter_brand}'`)
187
- },
188
- getMeterTypeAndBrand(groupname, condition) {
189
- condition = `${condition} and ui.f_orgid like '${this.$login.f.orgid}%'`
190
- let self = this
191
- let load = new HttpResetClass()
192
- load.load('POST', 'rs/sql/getMeterStyleAndBrand1', {
193
- data: {
194
- condition: condition,
195
- groupname: groupname
196
- }
197
- }, {warnMsg: null, resolveMsg: null}).then((res) => {
198
- let dr = {label: '', value: ''}
199
- let i = 0
200
- for (i = 0; i < res.data.length; i++) {
201
- dr = {label: '', value: ''}
202
- if (groupname == 'f_meter_brand') {
203
- dr.label = res.data[i].f_meter_brand
204
- dr.value = res.data[i].f_meter_brand
205
- //气表品牌
206
- self.WarningType[i + 1] = dr
207
- console.log('气表品牌~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
208
- console.log(dr)
209
- console.log( self.WarningType)
210
- } else if (groupname == 'f_meter_style') {
211
- dr.label = res.data[i].f_meter_style
212
- dr.value = res.data[i].f_meter_style
213
- //气表类型
214
- self.Warningstyle[i + 1] = dr
215
- }
216
- }
217
- if (self.Warningstyle.length > 1) {
218
- self.showMeterStyle()
219
- }
179
+ initParams() {
180
+ // 初始化气表品牌
181
+ let brandArr = []
182
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
183
+ let temp = {}
184
+ temp.label = item.label
185
+ temp.value = item.value.f_meter_brand
186
+ brandArr.push(temp)
220
187
  })
221
-
188
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
189
+ //初始化气表价格
190
+ this.prices = this.$MagGetSaleParam.getPrices();
222
191
  },
223
192
  showMeterStyle() {
224
193
  this.styles = true
@@ -272,6 +241,9 @@
272
241
  watch: {
273
242
  },
274
243
  computed: {
244
+ metertypes() {
245
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('气表类型')]
246
+ },
275
247
  }
276
248
  }
277
249
  </script>
@@ -1,234 +1,234 @@
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
- <div class="col-sm-2 form-group">
30
- <label class="font_normal_body" title="参数:付款方式查询">付款方式</label>
31
- <v-select :value.sync="model.f_payment" multiple
32
- v-model="model.f_payment"
33
- :options='$parent.$parent.payment' placeholder='请选择'
34
- condition="f_payment in {}"
35
- close-on-select></v-select>
36
- </div>
37
- <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:res_select></res-select-group>
38
- </div>
39
- <div class="span" style = "float:right;">
40
- <button class="button_search" @click="$parent.$parent.searchData()">查询</button>
41
- <report-print id='gasprice' top='3cm' left='0' width='100%' height='100%' :preview="true"></report-print>
42
- <report-excel id='gasprice'></report-excel>
43
- </div>
44
- </div>
45
- </criteria>
46
- <div partial='list' v-el:handcollect id='gasprice' style="overflow-y: scroll">
47
- <table class='tableprint' style="margin: 0px auto" v-if="!$parent.data.f_files_path">
48
- <thead>
49
- <tr>
50
- <th colspan='6' style="font-weight: normal; text-align: left;">
51
- <h3 style="text-align: center">财务统计报表</h3>
52
- </th>
53
- </tr>
54
- <tr>
55
- <th colspan='6' style="font-weight: normal; text-align: center;">
56
- 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
57
- 结束时间:{{ model.model.endDate }}<br>
58
- 打印时间:{{$parent.printTime}}
59
- </th>
60
- </tr>
61
- <tr>
62
- <th colspan='6' style="font-weight: normal; text-align: center;">
63
- <span style="font-weight: normal;" v-show="$refs.criteria.$refs.res_select.obj.orgnames[0]">公司:{{$parent.orgname}}</span>
64
- <span v-show="$refs.criteria.$refs.res_select.obj.depnames[0]"> 部门:{{$parent.depname}}</span>
65
- <span style="font-weight: normal" v-show="$refs.criteria.$refs.res_select.obj.operatornames[0]">人员:{{$parent.operatorname}}</span>
66
- </th>
67
- </tr>
68
- </thead>
69
- <tr>
70
- <td colspan='6'>
71
- {{{ model.data.substring(26,model.data.length-8) }}}
72
- </td>
73
- </tr>
74
- <tfoot>
75
- <tr style="text-align: left">
76
- <th colspan='2'>财务审核:</th>
77
- <th colspan='2'>收款审核:</th>
78
- <th colspan='2'>收款员:</th>
79
- </tr>
80
- </tfoot>
81
- </table>
82
- {{{ $parent.reportStr}}}
83
- </div>
84
- </criteria-paged>
85
- <modal :show.sync="show" v-ref:modal small backdrop="false">
86
- <header slot="modal-header" class="modal-header">
87
- <h4 class="modal-title">输入文件名称</h4>
88
- </header>
89
- <article slot="modal-body" class="modal-body">
90
- <div class="form-group">
91
- <input type="text" class="form-control" v-model="filename" placeholder='保存的文件名'>
92
- </div>
93
- </article>
94
- <footer slot="modal-footer" class="modal-footer">
95
- <button v-show="show" type="button" class="btn btn-default" @click='close'>取消</button>
96
- <button v-show="show" type="button" class="btn btn-success" @click='confirm(filename)'>确认</button>
97
- </footer>
98
- </modal>
99
- </div>
100
- </template>
101
-
102
- <script>
103
- import { DataModel } from 'vue-client'
104
- import co from 'co'
105
- let saveFile = function * (self) {
106
- // 线验证文件是否重名
107
- let count = yield self.$resetpost('rs/sql/manageSingleTable',
108
- {data: {tablename: 't_report_record', condition: `f_files_name = '${self.filename}'`}},
109
- {resolveMsg: null, rejectMsg: null})
110
- if (count.data.length > 0) {
111
- self.$showAlert('无法保存,文件名重名', 'warning', 3000)
112
- return
113
- }
114
- let saveBack = yield self.$resetpost('rs/logic/saveReport', {f_files_content: self.$refs.paged.$els.handcollect.innerHTML,
115
- f_files_name: self.filename, f_files_type: self.data.f_report_type, f_component_name: 'manage-bus-summary',
116
- f_operator: this.$login.f.name, f_query_month: `${self.model.model.startDate}-${self.model.model.endDate}`,
117
- f_outlets: this.$login.f.depname})
118
- if (saveBack.data.status === 'succeed') {
119
- self.show = false
120
- self.filename = ''
121
- // 后台保存完成,通知刷新
122
- self.$dispatch('save-success', self.filename)
123
- }
124
- }
125
- export default {
126
- title: '财务统计报表',
127
- props: ['data'],
128
- data () {
129
- return {
130
- printTime: this.$login.toStandardTimeString(),
131
- depresid: [],
132
- userresid: [],
133
- f_orgid: this.$login.f.orgid,
134
- f_depid: this.$login.f.depids,
135
- f_operatorid: this.$login.f.id,
136
- operatorid: [],
137
- depid: [],
138
- orgname: '',
139
- depname: '',
140
- operatorname: '',
141
- orgCondtionStr: '1=1',
142
- model: new DataModel('rs/report/sellingTable', {startDate: 'this.model.startDate', endDate: 'this.model.endDate',
143
- f_orgid: 'this.model.f_orgid'}),
144
- reportStr: null,
145
- show: false,
146
- initres: {
147
- org: [this.$login.f.orgid],
148
- dep: [],
149
- user: []
150
- }
151
- }
152
- },
153
- ready () {
154
- this.$refs.paged.$refs.criteria.$refs.res_select.sliceareashow = false
155
- this.$refs.paged.$refs.criteria.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
156
- this.$refs.paged.$refs.criteria.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
157
- // this.$refs.paged.$refs.criteria.search()
158
- console.log(this.$login.f)
159
- },
160
- methods: {
161
- searchData () {
162
- this.$refs.paged.$refs.criteria.search()
163
- },
164
- selfSearch (args) {
165
- this.printTime = this.$login.toStandardTimeString()
166
- console.log('xxxxxxxxxxx',this.orgCondtionStr)
167
- let orgstr = '1=1 '
168
- if(this.orgCondtionStr){
169
- orgstr+=this.orgCondtionStr
170
- }
171
- this.$refs.paged.$refs.criteria.model.f_orgid = orgstr
172
- this.$refs.paged.search(args)
173
- },
174
- // 根据文件路径获取储存的报表内容
175
- getFileContent (path) {
176
- this.$resetpost('rs/logic/getReportFileContent', {f_files_path: path}, {resolveMsg: null, rejectMsg: null}).then((res) => {
177
- this.reportStr = res.data.filecontent
178
- this.model.state = '正确'
179
- })
180
- },
181
- confirm () {
182
- if (!this.filename || this.filename === '') {
183
- this.$showAlert('无法保存,文件名不能为空', 'warning', 3000)
184
- }
185
- let saveGen = saveFile(this)
186
- co(saveGen)
187
- },
188
- close () {
189
- this.show = false
190
- },
191
- // 将报表保存成文件
192
- confirmReport () {
193
- this.show = true
194
- this.filename = this.data.f_report_name + this.$login.toStandardDateString()
195
- },
196
- async getRes (condition, obj) {
197
- this.orgCondtionStr = condition
198
- if(obj.orgnames.length>0){
199
- this.orgname = obj.orgnames.toString();
200
- }
201
- if(obj.depnames.length>0){
202
- this.depname = obj.depnames.toString();
203
- }
204
- if(obj.operatornames.length>0){
205
- let users = await this.$resetpost('rs/sql/manageSingleTable',
206
- {data: {tablename: 't_user', condition: ` id in( ${obj.operatornames.toString()})`}},
207
- {resolveMsg: null, rejectMsg: null});
208
- if(users.data){
209
- this.operatorname = users.data.map(x => x.name).toString();
210
- }
211
- }
212
- }
213
- },
214
- watch: {
215
- 'data' (val) {
216
- if (val.f_files_path) {
217
- this.getFileContent(val.f_files_path)
218
- } else {
219
- this.reportStr = null
220
- }
221
- }
222
- },
223
- computed: {
224
- payment() {
225
- return [...this.$appdata.getParam('付款方式查询')]
226
- }
227
- }
228
- }
229
- </script>
230
- <style scoped>
231
- .noborder{
232
- border: none;
233
- }
234
- </style>
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
+ <div class="col-sm-2 form-group">
30
+ <label class="font_normal_body" title="参数:付款方式查询">付款方式</label>
31
+ <v-select :value.sync="model.f_payment" multiple
32
+ v-model="model.f_payment"
33
+ :options='$parent.$parent.payment' placeholder='请选择'
34
+ condition="f_payment in {}"
35
+ close-on-select></v-select>
36
+ </div>
37
+ <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:res_select></res-select-group>
38
+ </div>
39
+ <div class="span" style = "float:right;">
40
+ <button class="button_search" @click="$parent.$parent.searchData()">查询</button>
41
+ <report-print id='gasprice' top='3cm' left='0' width='100%' height='100%' :preview="true"></report-print>
42
+ <report-excel id='gasprice'></report-excel>
43
+ </div>
44
+ </div>
45
+ </criteria>
46
+ <div partial='list' v-el:handcollect id='gasprice' style="overflow-y: scroll">
47
+ <table class='tableprint' style="margin: 0px auto" v-if="!$parent.data.f_files_path">
48
+ <thead>
49
+ <tr>
50
+ <th colspan='6' style="font-weight: normal; text-align: left;">
51
+ <h3 style="text-align: center">财务统计报表</h3>
52
+ </th>
53
+ </tr>
54
+ <tr>
55
+ <th colspan='6' style="font-weight: normal; text-align: center;">
56
+ 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
57
+ 结束时间:{{ model.model.endDate }}<br>
58
+ 打印时间:{{$parent.printTime}}
59
+ </th>
60
+ </tr>
61
+ <tr>
62
+ <th colspan='6' style="font-weight: normal; text-align: center;">
63
+ <span style="font-weight: normal;" v-show="$refs.criteria.$refs.res_select.obj.orgnames[0]">公司:{{$parent.orgname}}</span>
64
+ <span v-show="$refs.criteria.$refs.res_select.obj.depnames[0]"> 部门:{{$parent.depname}}</span>
65
+ <span style="font-weight: normal" v-show="$refs.criteria.$refs.res_select.obj.operatornames[0]">人员:{{$parent.operatorname}}</span>
66
+ </th>
67
+ </tr>
68
+ </thead>
69
+ <tr>
70
+ <td colspan='6'>
71
+ {{{ model.data.substring(26,model.data.length-8) }}}
72
+ </td>
73
+ </tr>
74
+ <tfoot>
75
+ <tr style="text-align: left">
76
+ <th colspan='2'>财务审核:</th>
77
+ <th colspan='2'>收款审核:</th>
78
+ <th colspan='2'>收款员:</th>
79
+ </tr>
80
+ </tfoot>
81
+ </table>
82
+ {{{ $parent.reportStr}}}
83
+ </div>
84
+ </criteria-paged>
85
+ <modal :show.sync="show" v-ref:modal small backdrop="false">
86
+ <header slot="modal-header" class="modal-header">
87
+ <h4 class="modal-title">输入文件名称</h4>
88
+ </header>
89
+ <article slot="modal-body" class="modal-body">
90
+ <div class="form-group">
91
+ <input type="text" class="form-control" v-model="filename" placeholder='保存的文件名'>
92
+ </div>
93
+ </article>
94
+ <footer slot="modal-footer" class="modal-footer">
95
+ <button v-show="show" type="button" class="btn btn-default" @click='close'>取消</button>
96
+ <button v-show="show" type="button" class="btn btn-success" @click='confirm(filename)'>确认</button>
97
+ </footer>
98
+ </modal>
99
+ </div>
100
+ </template>
101
+
102
+ <script>
103
+ import { DataModel } from 'vue-client'
104
+ import co from 'co'
105
+ let saveFile = function * (self) {
106
+ // 线验证文件是否重名
107
+ let count = yield self.$resetpost('rs/sql/manageSingleTable',
108
+ {data: {tablename: 't_report_record', condition: `f_files_name = '${self.filename}'`}},
109
+ {resolveMsg: null, rejectMsg: null})
110
+ if (count.data.length > 0) {
111
+ self.$showAlert('无法保存,文件名重名', 'warning', 3000)
112
+ return
113
+ }
114
+ let saveBack = yield self.$resetpost('rs/logic/saveReport', {f_files_content: self.$refs.paged.$els.handcollect.innerHTML,
115
+ f_files_name: self.filename, f_files_type: self.data.f_report_type, f_component_name: 'manage-bus-summary',
116
+ f_operator: this.$login.f.name, f_query_month: `${self.model.model.startDate}-${self.model.model.endDate}`,
117
+ f_outlets: this.$login.f.depname})
118
+ if (saveBack.data.status === 'succeed') {
119
+ self.show = false
120
+ self.filename = ''
121
+ // 后台保存完成,通知刷新
122
+ self.$dispatch('save-success', self.filename)
123
+ }
124
+ }
125
+ export default {
126
+ title: '财务统计报表',
127
+ props: ['data'],
128
+ data () {
129
+ return {
130
+ printTime: this.$login.toStandardTimeString(),
131
+ depresid: [],
132
+ userresid: [],
133
+ f_orgid: this.$login.f.orgid,
134
+ f_depid: this.$login.f.depids,
135
+ f_operatorid: this.$login.f.id,
136
+ operatorid: [],
137
+ depid: [],
138
+ orgname: '',
139
+ depname: '',
140
+ operatorname: '',
141
+ orgCondtionStr: '1=1',
142
+ model: new DataModel('rs/report/sellingTable', {startDate: 'this.model.startDate', endDate: 'this.model.endDate',
143
+ f_orgid: 'this.model.f_orgid'}),
144
+ reportStr: null,
145
+ show: false,
146
+ initres: {
147
+ org: [this.$login.f.orgid],
148
+ dep: [],
149
+ user: []
150
+ }
151
+ }
152
+ },
153
+ ready () {
154
+ this.$refs.paged.$refs.criteria.$refs.res_select.sliceareashow = false
155
+ this.$refs.paged.$refs.criteria.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
156
+ this.$refs.paged.$refs.criteria.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
157
+ // this.$refs.paged.$refs.criteria.search()
158
+ console.log(this.$login.f)
159
+ },
160
+ methods: {
161
+ searchData () {
162
+ this.$refs.paged.$refs.criteria.search()
163
+ },
164
+ selfSearch (args) {
165
+ this.printTime = this.$login.toStandardTimeString()
166
+ console.log('xxxxxxxxxxx',this.orgCondtionStr)
167
+ let orgstr = '1=1 '
168
+ if(this.orgCondtionStr){
169
+ orgstr+=this.orgCondtionStr
170
+ }
171
+ this.$refs.paged.$refs.criteria.model.f_orgid = orgstr
172
+ this.$refs.paged.search(args)
173
+ },
174
+ // 根据文件路径获取储存的报表内容
175
+ getFileContent (path) {
176
+ this.$resetpost('rs/logic/getReportFileContent', {f_files_path: path}, {resolveMsg: null, rejectMsg: null}).then((res) => {
177
+ this.reportStr = res.data.filecontent
178
+ this.model.state = '正确'
179
+ })
180
+ },
181
+ confirm () {
182
+ if (!this.filename || this.filename === '') {
183
+ this.$showAlert('无法保存,文件名不能为空', 'warning', 3000)
184
+ }
185
+ let saveGen = saveFile(this)
186
+ co(saveGen)
187
+ },
188
+ close () {
189
+ this.show = false
190
+ },
191
+ // 将报表保存成文件
192
+ confirmReport () {
193
+ this.show = true
194
+ this.filename = this.data.f_report_name + this.$login.toStandardDateString()
195
+ },
196
+ async getRes (condition, obj) {
197
+ this.orgCondtionStr = condition
198
+ if(obj.orgnames.length>0){
199
+ this.orgname = obj.orgnames.toString();
200
+ }
201
+ if(obj.depnames.length>0){
202
+ this.depname = obj.depnames.toString();
203
+ }
204
+ if(obj.operatornames.length>0){
205
+ let users = await this.$resetpost('rs/sql/manageSingleTable',
206
+ {data: {tablename: 't_user', condition: ` id in( ${obj.operatornames.toString()})`}},
207
+ {resolveMsg: null, rejectMsg: null});
208
+ if(users.data){
209
+ this.operatorname = users.data.map(x => x.name).toString();
210
+ }
211
+ }
212
+ }
213
+ },
214
+ watch: {
215
+ 'data' (val) {
216
+ if (val.f_files_path) {
217
+ this.getFileContent(val.f_files_path)
218
+ } else {
219
+ this.reportStr = null
220
+ }
221
+ }
222
+ },
223
+ computed: {
224
+ payment() {
225
+ return [...this.$appdata.getParam('付款方式查询')]
226
+ }
227
+ }
228
+ }
229
+ </script>
230
+ <style scoped>
231
+ .noborder{
232
+ border: none;
233
+ }
234
+ </style>
@@ -1,10 +1,10 @@
1
- // 分公司特殊组件页面注册
2
- let specialComp = {
3
- // 收费查询
4
- 'selling-table': (resolve) => { require(['./SellingTable'], resolve) }
5
- }
6
- exports.specialComp = specialComp
7
-
8
-
9
-
10
-
1
+ // 分公司特殊组件页面注册
2
+ let specialComp = {
3
+ // 收费查询
4
+ 'selling-table': (resolve) => { require(['./SellingTable'], resolve) }
5
+ }
6
+ exports.specialComp = specialComp
7
+
8
+
9
+
10
+
@@ -313,6 +313,9 @@
313
313
  <th>
314
314
  <nobr>客户名称</nobr>
315
315
  </th>
316
+ <th>
317
+ <nobr>客户电话</nobr>
318
+ </th>
316
319
  <th>
317
320
  <nobr>片区</nobr>
318
321
  </th>
@@ -496,6 +499,9 @@
496
499
  <td style="text-align: center;">
497
500
  <nobr>{{row.f_user_name}}</nobr>
498
501
  </td>
502
+ <td style="text-align: center;">
503
+ <nobr>{{row.f_user_phone}}</nobr>
504
+ </td>
499
505
  <td style="text-align: center;">
500
506
  <nobr>{{row.f_zones}}</nobr>
501
507
  </td>