manage-client 3.1.13-aode → 3.1.14-aode

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "manage-client",
3
- "version": "3.1.13-aode",
3
+ "version": "3.1.14-aode",
4
4
  "description": "经营管控模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -0,0 +1,50 @@
1
+ <template>
2
+ <div id="unit" class="flex-row" >
3
+ <div class="basic-main" :style="{width:width}">
4
+ <other-day-report-list @getdata="getdata" @close="close" @show="show" :style="style" v-ref:list ></other-day-report-list>
5
+ </div>
6
+ <div class="binary-right" v-if="summaryshow">
7
+ <ul class="nav nav-tabs">
8
+ <li class="active"><a href="#">数据汇总</a></li>
9
+ </ul>
10
+ <other-day-report-summary :sumsmodel="sumsmodel" v-ref:gas></other-day-report-summary>
11
+ </div>
12
+ </div>
13
+ </template>
14
+
15
+ <script>
16
+
17
+ export default {
18
+ title:'日清单(其他收费)',
19
+ name: "DayReport",
20
+ data () {
21
+ return {
22
+ width:'100%',
23
+ summaryshow:false,
24
+ style:'col-sm-2'
25
+ }
26
+ },
27
+ ready(){
28
+ },
29
+ methods:{
30
+ getdata(val){
31
+ console.log(val)
32
+ this.sumsmodel = val
33
+ },
34
+ show(){
35
+ this.width = '58%'
36
+ this.summaryshow = true
37
+ this.style='col-sm-3'
38
+ },
39
+ close(){
40
+ this.width = '100%'
41
+ this.summaryshow = false
42
+ this.style='col-sm-2'
43
+ }
44
+ }
45
+ }
46
+ </script>
47
+
48
+ <style>
49
+ </style>
50
+
@@ -0,0 +1,413 @@
1
+ <template>
2
+ <div v-if="!listpage" @keyup.enter="search">
3
+ <criteria-paged :model="model" v-ref:paged @sort="sort">
4
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
5
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
+ <div class="row">
7
+ <res-select-group :style="$parent.$parent.style" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" :mul="false" :style="$parent.$parent.style" v-ref:sel></res-select-group>
8
+ <div :class="$parent.$parent.style" >
9
+ <label for="startDate" class="font_normal_body">开始日期</label>
10
+ <datepicker placeholder="开始日期" style="width:60%"
11
+ v-model="model.f_startDate"
12
+ :value.sync="model.f_startDate"
13
+ :format="'yyyy-MM-dd HH:mm:ss'"
14
+ class="datepicker"
15
+ :show-reset-button="true"
16
+ class="select"
17
+ >
18
+ </datepicker>
19
+ </div>
20
+ <div :class="$parent.$parent.style" >
21
+ <label for="endDate" class="font_normal_body">结束日期</label>
22
+ <datepicker placeholder="结束日期" style="width:60%"
23
+ v-model="model.f_endDate"
24
+ :value.sync="model.f_endDate"
25
+ :format="'yyyy-MM-dd HH:mm:ss'"
26
+ class="datepicker"
27
+ :show-reset-button="true"
28
+ class="select"
29
+ >
30
+ </datepicker>
31
+ </div>
32
+ <div :class="$parent.$parent.style">
33
+ <label class="font_normal_body">用气性质</label>
34
+ <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
35
+ :options='$parent.$parent.useroptions' placeholder='请选择'
36
+ condition="f_gasproperties = '{}'"
37
+ close-on-select></v-select>
38
+ </div>
39
+ <div :class="$parent.$parent.style">
40
+ <label class="font_normal_body">收费类型</label>
41
+ <v-select :value.sync="model.f_type" v-model="model.f_type"
42
+ :options='$parent.$parent.operates' placeholder='请选择'
43
+ condition="f_type = '{}'"
44
+ close-on-select></v-select>
45
+ </div>
46
+ <div :class="$parent.$parent.style">
47
+ <label class="font_normal_body">操作状态</label>
48
+ <v-select :value.sync="model.f_state" v-model="model.f_state"
49
+ :options='$parent.$parent.stateoptions' placeholder='请选择'
50
+ condition="f_state = '{}'"
51
+ close-on-select></v-select>
52
+ </div>
53
+ <!-- <div :class="$parent.$parent.style">-->
54
+ <!-- <label class="font_normal_body">包含APP</label>-->
55
+ <!-- <v-select :value.sync="model.f_hasapp" v-model="model.f_hasapp"-->
56
+ <!-- :options='$parent.$parent.hasapps' placeholder='请选择'-->
57
+ <!-- condition="f_operator {} "-->
58
+ <!-- close-on-select></v-select>-->
59
+ <!-- </div>-->
60
+
61
+ <div class="button-range" style="float:right;margin-top:10px">
62
+ <button class="button_search button_spacing" @click="search()">查询</button>
63
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
64
+ <export-excel :data="$parent.$parent.getCondition" v-ref:exportexcel
65
+ :field="$parent.$parent.getfield"
66
+ :defaultselect="$parent.$parent.selectfields"
67
+ sqlurl="rs/logic/exportfile" sql-name="otherchargedayReport" template-name='日清单' :choose-col="true"
68
+ class="button_export button_spacing"></export-excel>
69
+ <other-day-report-list-print :countmodel="{sumsmodel:$parent.$parent.sumsmodel,model:$parent.$parent.model,orgname:$parent.$parent.orgname,depname:$parent.$parent.depname}"></other-day-report-list-print>
70
+ <div style="float: right" class="button_spacing" :class="{'button_shrink_left':$parent.$parent.criteriaShow,'button_shrink_right':!$parent.$parent.criteriaShow}" @click="$parent.$parent.show()"></div>
71
+ </div>
72
+
73
+ </div>
74
+ </div>
75
+ </criteria>
76
+ <data-grid :model="model" :sumsmodel="sumsmodel" partial='list' class="list_area table_sy" v-ref:grid >
77
+ <template partial='head'>
78
+ <tr>
79
+ <th><nobr>客户编号</nobr></th>
80
+ <th><nobr>客户姓名</nobr></th>
81
+ <th><nobr>客户类型</nobr></th>
82
+ <th><nobr>用气性质</nobr></th>
83
+ <th><data-order field="f_operate_date" name="操作时间"></data-order>
84
+ <!--<nobr>操作时间</nobr>-->
85
+ </th>
86
+ <th><nobr>操作状态</nobr></th>
87
+ <th><nobr>收费类型</nobr></th>
88
+ <th><nobr>型号</nobr></th>
89
+ <th><nobr>数量</nobr></th>
90
+ <th><nobr>单价</nobr></th>
91
+ <th><nobr>金额</nobr></th>
92
+ <th><nobr>付款方式</nobr></th>
93
+ <th><nobr>操作员</nobr></th>
94
+ <th><nobr>备注</nobr></th>
95
+
96
+ </tr>
97
+ </template>
98
+ <template partial='body' >
99
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}" ><nobr>
100
+ <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
101
+ </nobr> </td>
102
+ <td style="text-align: left;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_user_name}}</nobr></td>
103
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_user_type}}</nobr></td>
104
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_gasproperties}}</nobr></td>
105
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_operate_date}}</nobr></td>
106
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_state}}</nobr></td>
107
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_type}}</nobr></td>
108
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_typenumber}}</nobr></td>
109
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_number}}</nobr></td>
110
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_unitprice}}</nobr></td>
111
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_collection}}</nobr></td>
112
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_payment}}</nobr></td>
113
+ <td style="text-align: center;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_operator}}</nobr></td>
114
+ <td style="text-align: left;" :style="{background:(row.f_state=='无效'?'#ffa8c0!important;':'')}"><nobr>{{row.f_comments}}</nobr></td>
115
+ </template>
116
+ </data-grid>
117
+ </criteria-paged>
118
+ </div>
119
+ <div v-if="listpage">
120
+ <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
121
+ </div>
122
+ </template>
123
+
124
+ <script>
125
+
126
+ import { PagedList } from 'vue-client'
127
+ import exportConfig from '../../../config/exportConfig'
128
+ import OtherDayReportSummary from "./OtherDayReportSummary";
129
+ import getLodop from '../../../../../plugins/LodopFuncs'
130
+
131
+ export default {
132
+ components: {OtherDayReportSummary},
133
+ title: '日报表',
134
+ props: {
135
+ style: {
136
+ type: String,
137
+ default: 'col-sm-2 form-group'
138
+ },
139
+ },
140
+ data() {
141
+ return {
142
+ orderDefault: "'f_operate_date'",
143
+ orderFields: {
144
+ f_userinfo_code: 'no'
145
+ },
146
+ initres: {
147
+ org:[this.$login.f.orgid],
148
+ dep:[this.$login.f.depids],
149
+ user:[this.$login.f.id]
150
+ },
151
+ model: new PagedList('rs/sql/otherchargedayReport', 30, {orderitem: "'f_operate_date'"},{
152
+ f_count_othercharge:0,
153
+ f_collection_othercharge:0,
154
+ f_count_cz:0,
155
+ f_collection_cz:0,
156
+ f_sumgtwx:0,
157
+ f_sumcwsf:0,
158
+ f_sumxjjf:0,
159
+ f_sumzfb:0,
160
+ f_sumpos:0,
161
+ f_sumyhm:0,
162
+ f_sumxsqp:0,
163
+ f_sumjjbq:0
164
+ }),
165
+ listpage:false,
166
+ rowdata: {},
167
+ orgCondtionStr: '',
168
+ userTypes: [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')],
169
+ count: 0,
170
+ sumsmodel: {},
171
+ printshow: false,
172
+ all: false,
173
+ orgname: '',
174
+ depname: '',
175
+ operaname:'',
176
+ criteriaShow: false,
177
+ operates: [{label: '全部', value: ''},...this.$appdata.getParam('品名及规格')],
178
+ stateoptions:[{label: '全部', value: ''}, {label: '有效', value: "有效"},{label: '撤销', value: "撤销"},{label: '无效', value: "无效"},{label: '冲正', value: "冲正"}],
179
+ hasapps: [{label: '包含APP', value: ''}, {label: '不包含APP', value: "!= '悦生活'"}],
180
+ useroptions:[{label: ' 全部 ', value: ''},...this.$appdata.getParam('用气性质')],
181
+ selectfields:[],
182
+ pushncshow2:false,
183
+ searchCondition:{},
184
+ pushconfirmflag: false,
185
+ footershow:true,
186
+ footershow3:false,
187
+ }
188
+ },
189
+ ready() {
190
+ this.$refs.paged.$refs.cri.condition += this.orgCondtionStr
191
+ this.$refs.paged.$refs.cri.model.f_hasapp = [`!= '悦生活'`]
192
+ this.$refs.paged.$refs.cri.model.f_startDate = this.$login.toStandardDateString() +' 00:00:00'
193
+ this.$refs.paged.$refs.cri.model.f_endDate = this.$login.toStandardDateString()+' 23:59:59'
194
+ for(var item in exportConfig.dataReportConfig){
195
+ this.selectfields.push(item)
196
+ }
197
+ // this.search()
198
+ },
199
+ methods: {
200
+ //推送数据
201
+ pushncdata(){
202
+ this.$refs.pushmanage.pushncdata();
203
+ },
204
+ //关闭推送确认窗口
205
+ closeCode(){
206
+ this.$refs.pushmanage.newmodel = {};
207
+ this.$refs.pushmanage.showmone = false;
208
+ this.pushconfirmflag = false;
209
+ },
210
+ //显示交账页面
211
+ showpushconfirm(){
212
+ this.search();
213
+ if(this.searchCondition.condition!=null && this.searchCondition.condition!='' && this.searchCondition.condition.includes("f_gasproperties") || this.searchCondition.condition.includes("f_type") ){
214
+ //this.$showMessage("交账失败,本次交账未保存,只能交账一天的数据,请确认交账时间后重新交账!!");
215
+ this.$showMessage("交账失败,本次交账未保存,请取消用气性质或操作类型选项,当前时间段内只允许交账一次!!");
216
+ return;
217
+ }
218
+ if(this.searchCondition.condition!=null && this.searchCondition.condition!='' && !this.searchCondition.condition.includes("f_state")){
219
+ this.$showAlert('请选择操作状态为有效进行交账!!','warning',2000);
220
+ return;
221
+ }
222
+ this.$showMessage("请进行一次查询后进行交账,",['confirm','cancel']).then(res=>{
223
+ if(res == 'confirm'){
224
+ this.pushconfirm();
225
+ }
226
+ })
227
+ },
228
+ pushconfirm(){
229
+ this.pushconfirmflag = true;
230
+ },
231
+ showmsg(obj){
232
+ this.criteriaShow = false
233
+ this.$emit('close')
234
+ this.rowdata=obj
235
+ this.listpage=true
236
+ },
237
+ cancel() {
238
+ this.listpage = false
239
+ },
240
+ search() {
241
+ this.$refs.paged.$refs.cri.search()
242
+ },
243
+ async selfSearch(args) {
244
+ let f_orgstr = this.orgCondtionStr
245
+ if (!this.orgCondtionStr) {
246
+ f_orgstr = 'and f_orgid = ' + this.$login.f.orgid
247
+ }
248
+ args.condition = `${args.condition} ` + f_orgstr
249
+
250
+ this.model.params.startDate = this.$refs.paged.$refs.cri.model.f_startDate
251
+ this.model.params.endDate = this.$refs.paged.$refs.cri.model.f_endDate
252
+
253
+ //推送条件: 需要 选择公司,部门
254
+ if(this.depname != null && this.depname != '' ){
255
+ this.pushncshow2 = true;
256
+ }else{
257
+ this.pushncshow2= false;
258
+ }
259
+ this.searchCondition = this.getCondition;
260
+ await this.model.search(args.condition, args.model)
261
+
262
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
263
+ console.log('计算合计。', this.sumsmodel)
264
+ if (this.$refs.paged.$refs.grid.model.rows.length === 0) {
265
+ for (let key in this.sumsmodel) {
266
+ this.sumsmodel[key] = 0;
267
+ }
268
+ }
269
+ this.$dispatch('getdata', this.sumsmodel)
270
+ },
271
+ getRes(condition, obj) {
272
+ //判断最新组织和存储组织不同时,清空已经选择人员
273
+ if(obj.depnames[0] != this.depname){
274
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].selectres = []
275
+ }
276
+ this.orgCondtionStr = condition;
277
+ this.orgname = obj.orgnames[0];
278
+ this.depname = obj.depnames[0];
279
+ if(obj.operatornames.length>0){
280
+ this.operaname =obj.operatornames[0];
281
+ }else{
282
+ this.operaname='';
283
+ }
284
+ //当未选中组织时不可进行推送
285
+ if(this.depname == null || this.depname == '' ){
286
+ this.pushncshow2 = false;
287
+ }else{
288
+ this.pushncshow2 = true;
289
+ }
290
+ },
291
+ clear() {
292
+ //清空部门和人员
293
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = [];
294
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].selectres = [];
295
+ //部门和人员变为全选
296
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false;
297
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false;
298
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
299
+ this.$refs.paged.$refs.cri.model[key] = '';
300
+ })
301
+ this.$refs.paged.$refs.cri.model.f_startDate = this.$login.toStandardDateString()+' 00:00:00';
302
+ this.$refs.paged.$refs.cri.model.f_endDate = this.$login.toStandardDateString()+ ' 23:59:59';
303
+ },
304
+ close() {
305
+ this.printshow = false
306
+ },
307
+ getfield() {
308
+
309
+ return exportConfig.dataReportConfig
310
+ },
311
+ show() {
312
+ this.pushncshow2 = !this.pushncshow2;
313
+ this.criteriaShow = !this.criteriaShow
314
+ if (this.criteriaShow) {
315
+ this.$emit('show')
316
+ } else {
317
+ this.$emit('close')
318
+ }
319
+ },
320
+ /*sort(field, rule) {
321
+ console.log('sort...')
322
+
323
+ },*/
324
+ sort (field, rule) {
325
+ // 将所有排序方式设为不排序,实现相互排斥
326
+ for (let key in this.orderFields) {
327
+ if (key === field) {
328
+ this.orderFields[key] = rule
329
+ } else {
330
+ this.orderFields[key] = 'no'
331
+ }
332
+ }
333
+ // 如果新规则不排序,还原为默认排序
334
+ if (rule === 'no') {
335
+ this.model.paramSource.orderitem = `'${this.orderDefault}'`
336
+ } else {
337
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
338
+ }
339
+
340
+ this.search()
341
+ },
342
+ },
343
+ events:{
344
+ 'showtogglefooter'(){
345
+ this.footershow=true;
346
+ },
347
+ 'hiddentogglefooter'(){
348
+ this.footershow=false
349
+ },
350
+ 'confirmcolse'(){
351
+ this.pushconfirmflag = false;
352
+ },
353
+ 'openbutton'(){
354
+ this.footershow3=true;
355
+ },
356
+ 'closebutton'(){
357
+ this.footershow3=false;
358
+ }
359
+ },
360
+ computed: {
361
+ getCondition() {
362
+
363
+ return {
364
+ condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr,
365
+ startDate: this.$refs.paged.$refs.cri.model.f_startDate,
366
+ endDate: this.$refs.paged.$refs.cri.model.f_endDate,
367
+ orderitem: this.model.paramSource.orderitem.split("'")[1].split("'")[0]
368
+ }
369
+ },
370
+ getfield() {
371
+ //设置默认值
372
+
373
+ return exportConfig.dataReportConfig
374
+ },
375
+ gasproperties() {
376
+ console.log("xxx");
377
+ console.log(this.$appdata.getParam('用气性质'));
378
+ console.log(this);
379
+ let options = this.$appdata.getParam('用气性质')
380
+ let resultoptions = [];
381
+ if(options.length>0){
382
+ resultoptions.push({label: ' 全部 ', value: ''})
383
+ options.forEach((item)=>{
384
+ console.log(item)
385
+ resultoptions.push(item)
386
+ })
387
+ }
388
+ console.log(resultoptions);
389
+ return resultoptions;
390
+ //return [{label: ' 全部 ', value: ''},...this.$appdata.getParam('用气性质')]
391
+ }
392
+ },
393
+ watch:{
394
+ 'pushncshow2'(val){
395
+ if(val){
396
+ this.search();
397
+ }
398
+ }
399
+ }
400
+ }
401
+
402
+ </script>
403
+
404
+ <style scoped>
405
+
406
+ .col {
407
+ width: 300px;
408
+ overflow: hidden;
409
+ text-overflow: ellipsis;
410
+ white-space: nowrap;
411
+ }
412
+
413
+ </style>
@@ -0,0 +1,240 @@
1
+ <template>
2
+ <button class="button_export button_spacing" @click="stamp()">打印</button>
3
+ </template>
4
+
5
+ <script>
6
+ import getLodop from '../../../../../plugins/LodopFuncs'
7
+ import {PagedList} from "vue-client";
8
+
9
+ export default {
10
+ name: "DayReportListPrint",
11
+ title: '日报表打印',
12
+ props: {
13
+ countmodel:{
14
+ type:Object,
15
+ default:{}
16
+ }
17
+ },
18
+ data() {
19
+ return {
20
+ modelval: [],
21
+ fields: {},
22
+ thead: '',
23
+ tfoot: '',
24
+ model:{},
25
+ sumsmodel:{},
26
+ orgname: '',
27
+ depname: '0'
28
+ }
29
+ },
30
+ methods: {
31
+ async stamp() {
32
+ this.model = this.countmodel.model,
33
+ this.sumsmodel = this.countmodel.sumsmodel,
34
+ this.orgname = this.countmodel.orgname,
35
+ this.depname = this.countmodel.depname
36
+ // 验证,必须选择用气性质
37
+ if (this.model.model.f_gasproperties.length == 0 || this.model.model.f_gasproperties[0]=='') {
38
+ this.$showAlert('请选择用气性质条件,点击查询之后再进行打印!!', 'warning', 3000)
39
+ return
40
+ };
41
+
42
+ //默认选择要打印的列
43
+ this.modelval = [
44
+ "f_userinfo_code",
45
+ "f_user_name",
46
+ "f_operate_date",
47
+ "f_state",
48
+ "f_type",
49
+ "f_number",
50
+ "f_unitprice",
51
+ "f_collection",
52
+ "f_payment",
53
+ "f_operator",
54
+ "f_comments"
55
+ ];
56
+ this.fields = {
57
+ "f_userinfo_code": "客户编号",
58
+ "f_user_name": "客户姓名",
59
+ "f_operate_date": "充值时间",
60
+ "f_state":"操作状态",
61
+ "f_type": "收费类型",
62
+ "f_number": "数量",
63
+ "f_unitprice": "单价",
64
+ "f_collection": "实收金额",
65
+ "f_payment": "付款方式",
66
+ "f_operator": "操作员",
67
+ "f_comments": "备注"
68
+ };
69
+ this.put();
70
+ await this.print();
71
+ this.clear();
72
+ },
73
+ clear(){
74
+ this.model={};
75
+ this.sumsmodel={};
76
+ this.orgname= '';
77
+ this.depname= 0;
78
+ },
79
+ put() {
80
+ this.thead = `
81
+ <tr>
82
+ <th class="biaoti" colspan=${this.modelval.length} style="font-size: 6mm">
83
+ ${this.orgname}${this.depname ? this.depname : ''}统计报表 ${this.model.model.f_gasproperties ? this.model.model.f_gasproperties : ''}
84
+ ${this.model.model.f_type ? this.model.model.f_type : ''}
85
+ </th>
86
+ </tr>
87
+ <tr>
88
+ <th class="biaoti" colspan=${this.modelval.length}>统计日期:${this.model.model.f_startDate} ~ ${this.model.model.f_endDate}</th></tr>
89
+ <tr>
90
+ <tr>
91
+ <th class="biaoti" colspan=${this.modelval.length}>制单人:${this.$login.f.name} 打印时间: ${this.$login.toStandardTimeString()}</th></tr>
92
+ <tr style="text-align: left;font-family: 微软雅黑">
93
+ <th colspan=${this.modelval.length}>
94
+ <span>业务数量: ${this.sumsmodel.f_count_othercharge}</span>
95
+ <span>实收金额: ${this.sumsmodel.f_collection_othercharge}</span>
96
+ <span>应收金额: ${this.sumsmodel.f_collection_othercharge}</span>
97
+ <span>现金缴费: ${this.sumsmodel.f_sumxjjf}</span>
98
+ <span>柜台微信: ${this.sumsmodel.f_sumgtwx}</span>
99
+ <span>pos: ${this.sumsmodel.f_sumpos}</span>
100
+ </th>
101
+ </tr>
102
+ <tr style="text-align: left;font-family: 微软雅黑">
103
+ <th colspan=${this.modelval.length}>
104
+ <span>柜台支付宝: ${this.sumsmodel.f_sumzfb}</span>
105
+ <span>银行码收款: ${this.sumsmodel.f_sumyhm}</span>
106
+ <span>销售气票: ${this.sumsmodel.f_sumxsqp}</span>
107
+ <span>降价补气: ${this.sumsmodel.f_sumjjbq}</span>
108
+ <span></span>
109
+ <span></span>
110
+ </th>
111
+ </tr>
112
+ `
113
+ this.thead += '<tr>';
114
+ for (let key of this.modelval) {
115
+ if (this.fields[key] == '客户姓名') {
116
+ this.thead += '<th class="khxm">' + this.fields[key] + '</th>'
117
+ } else if (this.fields[key] == '备注') {
118
+ this.thead += '<th class="bz">' + this.fields[key] + '</th>'
119
+ } else if(this.fields[key] == '应收金额'){
120
+ this.thead += '<th class="bz2">' + this.fields[key] + '</th>'
121
+ } else {
122
+ this.thead += '<th class="other">' + this.fields[key] + '</th>'
123
+ }
124
+ }
125
+ this.thead += '</tr>'
126
+ },
127
+ async print() {
128
+ // 开始打印
129
+ let lodop = getLodop()
130
+ lodop.PRINT_INIT('打印')
131
+
132
+ // 是否横向打印
133
+ console.log('是否横向打印??', this.model.model.f_gasproperties[0])
134
+ let isHeng = this.model.model.f_gasproperties[0] === '民用用气' ? 1 : 2
135
+ console.log("isHeng----"+isHeng)
136
+ lodop.SET_PRINT_PAGESIZE(isHeng, 0, 0, "A4");
137
+
138
+ // 定义样式
139
+ let style;
140
+ if (isHeng == 2) {//横向打印
141
+ style = '' +
142
+ '<style>table {border-collapse: collapse;font-size:2.8mm} ' +
143
+ 'table th {border-collapse: collapse;width: 264mm;border: 0.2mm solid black} ' +
144
+ 'table td {border-collapse: collapse;text-align: center;border: 0.2mm solid black} ' +
145
+ '.biaoti {border-color: transparent} ' +
146
+ 'table span {width: 36mm;text-align: left;display:inline-block}' +
147
+ '.comments {text-overflow: ellipsis;overflow: hidden;height:5.25mm;white-space: nowrap;width:34.32mm;} ' +
148
+ '.khxm {border-top: 0;width: 44.88mm} ' +
149
+ '.bz {border-top: 0;width: 34.32mm;} ' +
150
+ '.bz2 {border-top: 0;width: 13.20mm} ' +
151
+ '.other {border-top: 0;width: 13.20mm}</style>'
152
+ } else {//竖向打印
153
+ // 定义样式
154
+ style = '<style>table {border-collapse: collapse;font-size:2.8mm}' +
155
+ 'table th {border-collapse: collapse;width: 180mm;border: 0.2mm solid black;}' +
156
+ 'table td {border-collapse: collapse;text-align: center;border: 0.2mm solid black} ' +
157
+ '.biaoti {border-color: transparent} ' +
158
+ 'table span {width: 25mm;text-align:left;display:inline-block;}' +
159
+ '.comments {width:16.6mm;text-overflow: ellipsis;overflow: hidden;height:5.25mm;white-space: nowrap;} ' +
160
+ '.khxm {border-top: 0;width: 14.4mm} ' +
161
+ '.bz {border-top: 0;width: 16.6mm;} ' +
162
+ '.bz2 {border-top: 0;width: 11.0mm} ' +
163
+ '.other {border-top: 0;width: 10.2mm}</style>'
164
+ }
165
+
166
+
167
+ let tHtml = style + '<table><thead>' + this.thead + '</thead><tbody>'
168
+ for (var i = 1; i <= this.model.totalPage; i++) {
169
+ await this.model.loadPage(i)
170
+ for (let j = 0; j < this.model.rows.length; j++) {
171
+ tHtml += '<tr>'
172
+ for (let field of this.modelval) {
173
+ if (field && this.model.rows[j]) {
174
+ if (field === 'f_comments' && this.model.rows[j][field]) {
175
+ tHtml += '<td ><div class="comments">' +
176
+ this.model.rows[j][field].substring(0, 10)
177
+ + '</div></td>'
178
+ } else {
179
+ tHtml += '<td>' + this.model.rows[j][field] + '</td>'
180
+ }
181
+ }
182
+ }
183
+ tHtml += '</tr>'
184
+ }
185
+ }
186
+ this.tfoot = `
187
+ <tr>
188
+ <td class="defaulttd" colspan='2' >
189
+ 合计
190
+ </td>
191
+ <td class="defaulttd" colspan='3' tdata="allSum" format="#,##0" align="right">
192
+ </td>
193
+ <td class="defaulttd" colspan='1' tdata="allSum" format="#,##0" align="left">
194
+ <font color="#0000FF" tindex="6">###</font>
195
+ </td>
196
+ <td class="defaulttd" colspan='1' tdata="allSum" format="#,##0.00" align="right">
197
+ <font color="#0000FF" tindex="7">###</font>
198
+ </td>
199
+ <td class="defaulttd" colspan='2' tdata="allSum" format="#,##0.00" align="left">
200
+ <font color="#0000FF" tindex="8">###</font>
201
+ </td>
202
+ <td class="defaulttd" colspan='2' tdata="allSum" format="#,##0.00" align="right">
203
+ </td>
204
+ </tr>`
205
+
206
+ // 如果有表尾,则添加表尾,如果内容翻页的话,表尾每一页都要打印
207
+ tHtml += `</tbody><tfoot>${this.tfoot}</tfoot></table>`
208
+ console.log('打印的html', tHtml)
209
+ //ADD_PRINT_TABLE(intTop,intLeft,intWidth,intHeight,strHtml)增加表格项
210
+ if (isHeng == 2) {//横向打印
211
+ lodop.ADD_PRINT_TABLE(0, 0, "264mm", 'BottomMargin:' + 30, tHtml);//增加表格项
212
+ } else {
213
+ lodop.ADD_PRINT_TABLE(0, 0, "200mm", 'BottomMargin:' + 30, tHtml);//增加表格项
214
+ }
215
+ lodop.SET_PRINT_STYLEA(0, "Horient", 2);//打印项在纸张中水平居中
216
+ // lodop.SET_PRINT_STYLEA(0,"Vorient",2);//打印项在纸张中垂直居中
217
+ // lodop.SET_PRINT_MODE('PRINT_PAGE_PERCENT', 'Full-width')
218
+
219
+ // 设置页脚
220
+ lodop.ADD_PRINT_HTM("96%", "45%", 100, 50, `<font style="margin-top:2px;" color='#0000ff' format='##'><span tdata='pageNO'>第##页</span>/<span tdata='pageCount'>共##页</span></font>`);//增加超文本项
221
+ lodop.SET_PRINT_STYLEA(0, "ItemType", 1);
222
+ lodop.SET_PRINT_STYLEA(0, "Horient", 2);
223
+
224
+ // lodop.SET_PRINT_MODE('PRINT_PAGE_PERCENT', 'Full-width')
225
+ // 设置打印方式 (横向|纵向)
226
+ lodop.SET_SHOW_MODE("LANDSCAPE_DEFROTATED", 1);
227
+ // 打印维护
228
+ // lodop.PRINT_SETUP()
229
+ // 使用打印预览是为了方便调整打印格式。例如:横向打印
230
+ lodop.PREVIEW()
231
+ },
232
+ }
233
+
234
+
235
+ }
236
+ </script>
237
+
238
+ <style scoped>
239
+
240
+ </style>
@@ -0,0 +1,67 @@
1
+ <template>
2
+ <div style="margin: 3%">
3
+ <!-- 第一行数据-->
4
+ <div class="row" style="height: 60px">
5
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >业务数量</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_count_othercharge}}</label></div>
6
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >应收金额</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_collection_othercharge}}</label></div>
7
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >实收金额</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_collection_othercharge}}</label></div>
8
+ </div>
9
+ <div class="row" style="height: 60px">
10
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >冲正人次</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_count_cz}}</label></div>
11
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >冲正金额</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_collection_cz}}</label></div>
12
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >柜台微信</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumgtwx}}</label></div>
13
+ </div>
14
+
15
+ <div class="row" style="height: 60px">
16
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >财务收款</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumcwsf}}</label></div>
17
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >现金缴费</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumxjjf}}</label></div>
18
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >柜台支付宝</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumzfb}}</label></div>
19
+ </div>
20
+ <div class="row" style="height: 60px">
21
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >pos</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumpos}}</label></div>
22
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >银行码收款</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumyhm}}</label></div>
23
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >销售气票</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumxsqp}}</label></div>
24
+ </div>
25
+ <div class="row" style="height: 60px">
26
+ <div class="col-xs-2"><label type="text" class="form-control mystylecenter font_normal_body" >降价补气</label></div><div class="col-xs-2"><label type="text" class="mystyleboder font_bold_body linelabel" >{{sumsmodel.f_sumjjbq}}</label></div>
27
+ </div>
28
+ </div>
29
+ </template>
30
+
31
+ <script>
32
+ export default {
33
+ name: "DayReportSummary",
34
+ props: {
35
+ sumsmodel: {}
36
+ },
37
+ watch: {
38
+ sumsmodel(val){
39
+ console.log(val,"====================")
40
+ }
41
+ }
42
+ }
43
+ </script>
44
+
45
+ <style scoped>
46
+ .datapanel {
47
+ color: #333;
48
+ background-color: white;
49
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px ;
50
+ padding: 10px 30px 10px 30px;
51
+ border-radius:15px;
52
+ width: 100%;
53
+ }
54
+ .mystyleboder{
55
+ border: 0px;
56
+ text-align: left;
57
+ padding-left: 3px;
58
+ }
59
+ .mystylecenter{
60
+ border: 0px;
61
+ text-align: center;
62
+ padding-left: 3px;
63
+ }
64
+ .linelabel{
65
+ line-height: 60px!important;
66
+ }
67
+ </style>
package/src/saleManage.js CHANGED
@@ -229,4 +229,10 @@ export default function () {
229
229
  // 物联网充值监控
230
230
  Vue.component('iot-recharge-audit', (resolve) => { require(['./components/webmeter/IOTArrears/iotRechargeAudit'], resolve) })
231
231
 
232
+ // 其他收费日清单
233
+ Vue.component('other-day-report',(resolve) => { require(['./components/sale/report/aode/othercharge/OtherDayReport'], resolve)})
234
+ Vue.component('other-day-report-list',(resolve) => { require(['./components/sale/report/aode/othercharge/OtherDayReportList'], resolve)})
235
+ Vue.component('other-day-report-list-print',(resolve) => { require(['./components/sale/report/aode/othercharge/OtherDayReportListPrint'], resolve)})
236
+ Vue.component('other-day-report-summary',(resolve) => { require(['./components/sale/report/aode/othercharge/OtherDayReportSummary'], resolve)})
237
+
232
238
  }