ocpview-plus 1.1.3 → 1.1.4
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/README.md +3 -0
- package/dist/ocpviewplus.min.esm.js +253 -94
- package/dist/ocpviewplus.min.js +3 -3
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/components/datebox/DateBoxV1.vue +22 -0
- package/src/components/datebox/index.js +5 -3
- package/src/components/masterplate/leftlistrightdetails.vue +178 -71
- package/src/components/masterplate/listbtntoolbar.vue +31 -12
- package/src/components/upload/billimport.vue +6 -21
- package/src/index.js +3 -2
package/package.json
CHANGED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<script>
|
|
2
|
+
import datebox from "./datebox.vue";
|
|
3
|
+
export default {
|
|
4
|
+
name: "DateBoxV1",
|
|
5
|
+
extends: datebox,
|
|
6
|
+
methods: {},
|
|
7
|
+
mounted() {
|
|
8
|
+
const shortcuts = this.$utils.get(this.myConfig, "shortcuts", [
|
|
9
|
+
{
|
|
10
|
+
text: "今天",
|
|
11
|
+
value() {
|
|
12
|
+
return new Date();
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
]);
|
|
16
|
+
this.options.shortcuts = shortcuts;
|
|
17
|
+
},
|
|
18
|
+
// beforeUnmount() {
|
|
19
|
+
// // console.log("我销毁了");
|
|
20
|
+
// },
|
|
21
|
+
};
|
|
22
|
+
</script>
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
import DateBox from
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
// import DateBox from "./datebox.vue";
|
|
2
|
+
import DateBox from "./DateBoxV1.vue";
|
|
3
|
+
import DateRangeBox from "./daterangebox.vue";
|
|
4
|
+
import DateBoxV1 from "./DateBoxV1.vue";
|
|
5
|
+
export { DateBox, DateRangeBox, DateBoxV1 };
|
|
@@ -1,56 +1,66 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
<div :style="'background:#fff;overflow: hidden;height:' + clientHeight +'px'">
|
|
3
|
+
<div ref="head">
|
|
4
|
+
<Card :padding="0" style="padding-top:14px;padding-left:16px;padding-right:16px;border-radius:0px;"
|
|
5
|
+
:bordered="false" dis-hover>
|
|
6
|
+
<ListBtnToolbar ref="menutoolbar" :config="menuToolbar" :moduleMethod="moduleMethod"
|
|
7
|
+
@doAction="doAction"/>
|
|
8
|
+
<Divider style="margin-top:16px;margin-bottom:0px;"/>
|
|
9
|
+
</Card>
|
|
10
|
+
</div>
|
|
11
|
+
<div class="efuture-demo-split" :style="'height:' + clientHeight2 +'px'">
|
|
12
|
+
<Split v-model="myConfig.splitNum">
|
|
13
|
+
<template #left>
|
|
14
|
+
<div class="efuture-demo-split-pane" style="padding:14px 16px;">
|
|
15
|
+
<Card :padding="0" :bordered="false" dis-hover>
|
|
16
|
+
<p style="margin-bottom:10px;">
|
|
17
|
+
<span class="efuture-title-verticalline"/> <span
|
|
18
|
+
style="font-size: 14px;font-weight:bold" v-text="myConfig.gridtitle"/>
|
|
19
|
+
</p>
|
|
20
|
+
<div ref="para">
|
|
21
|
+
<Input :placeholder="searchPlaceholder" v-model="searchValue" search
|
|
22
|
+
style="width: 98%;margin-top:10xp;margin-bottom:10px" @on-search="search"
|
|
23
|
+
@on-enter="search"/>
|
|
24
|
+
</div>
|
|
25
|
+
<SimpleViewGrid
|
|
26
|
+
ref="grid"
|
|
27
|
+
:config="myConfig.gridConfig"
|
|
28
|
+
:dictData="dictData"
|
|
29
|
+
@rowclick="gridClick"
|
|
30
|
+
/>
|
|
31
|
+
</Card>
|
|
32
|
+
</div>
|
|
33
|
+
</template>
|
|
34
|
+
<template #right>
|
|
35
|
+
<div class="efuture-demo-split-pane" style="padding:14px 0px;">
|
|
36
|
+
<Card :padding="0" :bordered="false" dis-hover>
|
|
37
|
+
<BillDetailForm ref="form" :config="myConfig.detailConfig" :dictData="dictData"/>
|
|
38
|
+
</Card>
|
|
39
|
+
</div>
|
|
40
|
+
</template>
|
|
41
|
+
</Split>
|
|
42
|
+
</div>
|
|
43
|
+
<Modal title="操作日志" v-model="showBilloperlog" :width="logcurrentWidth" :footer-hide="true">
|
|
44
|
+
<BillOperLog ref="billoperlog" :config="billOperLogConfig"/>
|
|
45
|
+
</Modal>
|
|
8
46
|
</div>
|
|
9
|
-
<div class="efuture-demo-split" :style="'height:' + clientHeight2 +'px'">
|
|
10
|
-
<Split v-model="myConfig.splitNum">
|
|
11
|
-
<template #left>
|
|
12
|
-
<div class="efuture-demo-split-pane" style="padding:14px 16px;">
|
|
13
|
-
<Card :padding="0" :bordered="false" dis-hover >
|
|
14
|
-
<p style="margin-bottom:10px;">
|
|
15
|
-
<span class="efuture-title-verticalline"/> <span style="font-size: 14px;font-weight:bold" v-text="myConfig.gridtitle" />
|
|
16
|
-
</p>
|
|
17
|
-
<div ref="para">
|
|
18
|
-
<Input :placeholder="searchPlaceholder" v-model="searchValue" search style="width: 98%;margin-top:10xp;margin-bottom:10px" @on-search="search" @on-enter="search"/>
|
|
19
|
-
</div>
|
|
20
|
-
<SimpleViewGrid
|
|
21
|
-
ref="grid"
|
|
22
|
-
:config="myConfig.gridConfig"
|
|
23
|
-
:dictData="dictData"
|
|
24
|
-
@rowclick="gridClick"
|
|
25
|
-
/>
|
|
26
|
-
</Card>
|
|
27
|
-
</div>
|
|
28
|
-
</template>
|
|
29
|
-
<template #right>
|
|
30
|
-
<div class="efuture-demo-split-pane" style="padding:14px 0px;">
|
|
31
|
-
<Card :padding="0" :bordered="false" dis-hover >
|
|
32
|
-
<BillDetailForm ref="form" :config="myConfig.detailConfig" :dictData="dictData" />
|
|
33
|
-
</Card>
|
|
34
|
-
</div>
|
|
35
|
-
</template>
|
|
36
|
-
</Split>
|
|
37
|
-
</div>
|
|
38
|
-
</div>
|
|
39
47
|
</template>
|
|
40
48
|
|
|
41
49
|
<script>
|
|
42
50
|
import ListBtnToolbar from './listbtntoolbar.vue';
|
|
43
51
|
import BillDetailForm from '@/components/masterplate/billdetailform.vue';
|
|
44
52
|
import elementResizeDetectorMaker from 'element-resize-detector';
|
|
53
|
+
import BillOperLog from './operlog.vue';
|
|
54
|
+
|
|
45
55
|
export default {
|
|
46
56
|
name: 'mleftlistrightdetails',
|
|
47
|
-
components: { ListBtnToolbar,BillDetailForm
|
|
57
|
+
components: {BillOperLog, ListBtnToolbar, BillDetailForm},
|
|
48
58
|
data() {
|
|
49
59
|
return {
|
|
50
60
|
myConfig: {
|
|
51
61
|
billKey: 'ph_key',
|
|
52
|
-
gridtitle:'列表',
|
|
53
|
-
splitNum:0.33,
|
|
62
|
+
gridtitle: '列表',
|
|
63
|
+
splitNum: 0.33,
|
|
54
64
|
resources: '',
|
|
55
65
|
className: '',
|
|
56
66
|
gridConfig: {},
|
|
@@ -58,13 +68,20 @@ export default {
|
|
|
58
68
|
adjustHeight: 160,
|
|
59
69
|
quickQueryConfig: {}
|
|
60
70
|
},
|
|
61
|
-
searchPlaceholder:'请输入',
|
|
71
|
+
searchPlaceholder: '请输入',
|
|
62
72
|
menuToolbar: {
|
|
63
73
|
enablePermissions: true
|
|
64
74
|
},
|
|
65
75
|
ph_key: '',
|
|
66
|
-
searchValue:'',
|
|
67
|
-
headHeight:63,
|
|
76
|
+
searchValue: '',
|
|
77
|
+
headHeight: 63,
|
|
78
|
+
showBilloperlog:false,
|
|
79
|
+
billOperLogConfig:{
|
|
80
|
+
showOperLog:false,
|
|
81
|
+
operLogKey:'billno'
|
|
82
|
+
},
|
|
83
|
+
logName:[],
|
|
84
|
+
logData:null,
|
|
68
85
|
};
|
|
69
86
|
},
|
|
70
87
|
props: {
|
|
@@ -84,12 +101,15 @@ export default {
|
|
|
84
101
|
}
|
|
85
102
|
},
|
|
86
103
|
computed: {
|
|
87
|
-
clientHeight
|
|
104
|
+
clientHeight() {
|
|
88
105
|
return this.$Store.state.app.clientHeight;
|
|
89
106
|
},
|
|
90
107
|
clientHeight2() {
|
|
91
108
|
return this.$Store.state.app.clientHeight - this.headHeight;
|
|
92
|
-
}
|
|
109
|
+
},
|
|
110
|
+
logcurrentWidth () {
|
|
111
|
+
return this.$Store.state.app.clientWidth * 0.8;
|
|
112
|
+
},
|
|
93
113
|
},
|
|
94
114
|
created() {
|
|
95
115
|
this.myConfig = Object.assign({}, this.myConfig, this.config);
|
|
@@ -101,7 +121,7 @@ export default {
|
|
|
101
121
|
this.myConfig.gridConfig.height = 1;
|
|
102
122
|
this.myConfig.gridConfig.adjustHeight = 0;
|
|
103
123
|
this.myConfig.gridConfig.pageShowElevator = false;
|
|
104
|
-
this.myConfig.gridConfig.pageSize="small";
|
|
124
|
+
this.myConfig.gridConfig.pageSize = "small";
|
|
105
125
|
this.myConfig.gridConfig.showBorder = true;
|
|
106
126
|
this.myConfig.gridConfig.showStripe = true;
|
|
107
127
|
this.myConfig.gridConfig.generalOrientation = true;
|
|
@@ -109,8 +129,8 @@ export default {
|
|
|
109
129
|
this.myConfig.gridtitle = this.myConfig.gridConfig.title;
|
|
110
130
|
}
|
|
111
131
|
|
|
112
|
-
if (
|
|
113
|
-
|
|
132
|
+
if (this.myConfig.gridConfig.multiSelect === undefined) {
|
|
133
|
+
this.myConfig.gridConfig.multiSelect = false;
|
|
114
134
|
}
|
|
115
135
|
let searchPlaceholder = '';
|
|
116
136
|
this.myConfig.gridConfig.items.forEach(el => {
|
|
@@ -124,14 +144,23 @@ export default {
|
|
|
124
144
|
}
|
|
125
145
|
});
|
|
126
146
|
if (searchPlaceholder) {
|
|
127
|
-
searchPlaceholder = searchPlaceholder.substring(0,searchPlaceholder.length - 1);
|
|
147
|
+
searchPlaceholder = searchPlaceholder.substring(0, searchPlaceholder.length - 1);
|
|
128
148
|
this.searchPlaceholder = this.searchPlaceholder + searchPlaceholder;
|
|
129
149
|
}
|
|
130
|
-
|
|
150
|
+
|
|
131
151
|
// 处理按钮
|
|
132
152
|
if (this.myConfig.menuToolbar && this.myConfig.menuToolbar.items) {
|
|
133
|
-
this.menuToolbar = this.$Method.copy(this.myConfig.menuToolbar);
|
|
134
|
-
}
|
|
153
|
+
this.menuToolbar = this.$Method.copy(this.myConfig.menuToolbar);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
if (this.myConfig.billOperLogConfig) {
|
|
157
|
+
this.billOperLogConfig = Object.assign({},this.billOperLogConfig, this.myConfig.billOperLogConfig);
|
|
158
|
+
if (this.billOperLogConfig.showOperLog) {
|
|
159
|
+
this.menuToolbar.billoperlog = true;
|
|
160
|
+
this.setLogName();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
135
164
|
this.myConfig.detailConfig.modetype = '2';
|
|
136
165
|
this.myConfig.detailConfig.billKey = this.myConfig.billKey;
|
|
137
166
|
this.myConfig.detailConfig.showAnchorLink = false;
|
|
@@ -140,6 +169,73 @@ export default {
|
|
|
140
169
|
this.myConfig.detailConfig.resources = this.myConfig.resources;
|
|
141
170
|
},
|
|
142
171
|
methods: {
|
|
172
|
+
setLogName() {
|
|
173
|
+
this.logName.push({code:this.myConfig.detailConfig.response,name:'主表'});
|
|
174
|
+
this.myConfig.detailConfig.formsConfig.items.forEach(el => {
|
|
175
|
+
this.initLogName(el.items,this.myConfig.detailConfig.response,el.title)
|
|
176
|
+
});
|
|
177
|
+
if (this.myConfig.detailConfig.billDetailConfig !== undefined && this.myConfig.detailConfig.billDetailConfig.items) {
|
|
178
|
+
this.myConfig.detailConfig.billDetailConfig.items.forEach(el => {
|
|
179
|
+
if (el.type === 'EditGridCard') {
|
|
180
|
+
this.logName.push({code:el.name,name:el.title,isdetail:'1'});
|
|
181
|
+
this.initLogName(el.items,el.name,el.title,{isdetail:'1'});
|
|
182
|
+
} else if (el.type === 'DetailsBox') {
|
|
183
|
+
this.logName.push({code:el.name,name:el.title,isdetail:'1'});
|
|
184
|
+
this.initLogName(el.formConfig.items,el.name,el.title,{isdetail:'1'});
|
|
185
|
+
this.logName.push({code:el.gridName, name:el.gridConfig.title,isdetail:'2',headtitle:el.title,uniqueKeys:el.uniqueKeys});
|
|
186
|
+
this.initLogName(el.gridConfig.items,el.gridName,el.gridConfig.title,{headtitle:el.title,uniqueKeys:el.uniqueKeys,isdetail:'2'});
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
this.billOperLogConfig.logName = this.$Method.copy(this.logName);
|
|
191
|
+
},
|
|
192
|
+
initLogName(list,headname,headtitle,pro) {
|
|
193
|
+
if (!pro) {
|
|
194
|
+
pro = {};
|
|
195
|
+
}
|
|
196
|
+
list.forEach(el => {
|
|
197
|
+
if (el.name) {
|
|
198
|
+
let obj = {};
|
|
199
|
+
obj.title = headtitle;
|
|
200
|
+
obj.code = headname+'.' + el.name;
|
|
201
|
+
obj.name = el.label;
|
|
202
|
+
Object.assign(obj,pro);
|
|
203
|
+
this.logName.push(obj);
|
|
204
|
+
}
|
|
205
|
+
if (el.textName) {
|
|
206
|
+
let obj = {};
|
|
207
|
+
obj.title = headtitle;
|
|
208
|
+
obj.code = headname +'.' + el.textName;
|
|
209
|
+
obj.name = el.label;
|
|
210
|
+
Object.assign(obj,pro);
|
|
211
|
+
this.logName.push(obj);
|
|
212
|
+
}
|
|
213
|
+
if (el.sname) {
|
|
214
|
+
let obj = {};
|
|
215
|
+
obj.title = el.headtitle;
|
|
216
|
+
obj.code = headname +'.' + el.sname;
|
|
217
|
+
obj.name = el.label;
|
|
218
|
+
Object.assign(obj,pro);
|
|
219
|
+
this.logName.push(obj);
|
|
220
|
+
}
|
|
221
|
+
if (el.ename) {
|
|
222
|
+
let obj = {};
|
|
223
|
+
obj.title = el.headtitle;
|
|
224
|
+
obj.code = headname + '.' + el.ename;
|
|
225
|
+
obj.name = el.label;
|
|
226
|
+
Object.assign(obj,pro);
|
|
227
|
+
this.logName.push(obj);
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
},
|
|
231
|
+
openBilloperlog() {
|
|
232
|
+
if (this.logData != null) {
|
|
233
|
+
this.$refs.billoperlog.setData(this.logData[this.billOperLogConfig.operLogKey],this.logData);
|
|
234
|
+
this.showBilloperlog = true;
|
|
235
|
+
} else {
|
|
236
|
+
this.alert('未产生日志');
|
|
237
|
+
}
|
|
238
|
+
},
|
|
143
239
|
search() {
|
|
144
240
|
this.$refs.form.clearData();
|
|
145
241
|
this.$refs.grid.clearSearchBeforeSearchParam();
|
|
@@ -151,10 +247,10 @@ export default {
|
|
|
151
247
|
if (this.searchValue) {
|
|
152
248
|
para['$or'] = [];
|
|
153
249
|
this.myConfig.gridConfig.items.forEach(el => {
|
|
154
|
-
if(el.condition) {
|
|
250
|
+
if (el.condition) {
|
|
155
251
|
let obj = {};
|
|
156
|
-
obj[el.name] = {'LIKE':'%' + this.searchValue + '%'};
|
|
157
|
-
|
|
252
|
+
obj[el.name] = {'LIKE': '%' + this.searchValue + '%'};
|
|
253
|
+
para['$or'].push(obj);
|
|
158
254
|
}
|
|
159
255
|
})
|
|
160
256
|
}
|
|
@@ -216,8 +312,8 @@ export default {
|
|
|
216
312
|
if (data.ph_key) {
|
|
217
313
|
let data = self.$refs.grid.getData();
|
|
218
314
|
let culIndex = data.findIndex(
|
|
219
|
-
|
|
220
|
-
|
|
315
|
+
el => el[self.myConfig.billKey] === self.ph_key
|
|
316
|
+
);
|
|
221
317
|
if (culIndex > -1) {
|
|
222
318
|
self.$refs.grid.clearCurrentRow();
|
|
223
319
|
self.$nextTick(() => {
|
|
@@ -246,6 +342,7 @@ export default {
|
|
|
246
342
|
initForm(para) {
|
|
247
343
|
this.$refs.form.clearData();
|
|
248
344
|
let data = this.getFormData(para);
|
|
345
|
+
this.logData = this.$Method.copy(data);
|
|
249
346
|
if (this.$parent.setBillData) {
|
|
250
347
|
data = this.$parent.setBillData(data);
|
|
251
348
|
}
|
|
@@ -268,13 +365,13 @@ export default {
|
|
|
268
365
|
para.ph_key = this.ph_key;
|
|
269
366
|
}
|
|
270
367
|
self.synchroPost(
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
368
|
+
self.myConfig.resources,
|
|
369
|
+
self.myConfig.classPrefix + '.get',
|
|
370
|
+
{ph_key: para.ph_key},
|
|
371
|
+
function (data) {
|
|
372
|
+
result = data[self.config.response];
|
|
373
|
+
}
|
|
374
|
+
);
|
|
278
375
|
return result;
|
|
279
376
|
},
|
|
280
377
|
doAction(obj) {
|
|
@@ -282,10 +379,11 @@ export default {
|
|
|
282
379
|
const methodBefore = method + 'Before';
|
|
283
380
|
const methodAfter = method + 'After';
|
|
284
381
|
if (
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
382
|
+
obj.name === 'addData' ||
|
|
383
|
+
obj.name === 'editData' ||
|
|
384
|
+
obj.name === 'openBilloperlog' ||
|
|
385
|
+
obj.name === 'searchData'
|
|
386
|
+
) {
|
|
289
387
|
let flag = true;
|
|
290
388
|
if (this.$parent[methodBefore]) {
|
|
291
389
|
flag = this.$parent[methodBefore](obj);
|
|
@@ -312,12 +410,21 @@ export default {
|
|
|
312
410
|
this.checkData(temp);
|
|
313
411
|
}
|
|
314
412
|
|
|
413
|
+
// '打开日志'
|
|
414
|
+
if (obj.name === 'openBilloperlog') {
|
|
415
|
+
if (this.$parent.openBilloperlog) {
|
|
416
|
+
this.$parent.openBilloperlog();
|
|
417
|
+
} else {
|
|
418
|
+
this.openBilloperlog();
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
|
|
315
422
|
if (this.$parent[methodAfter]) {
|
|
316
423
|
this.$parent[methodAfter]();
|
|
317
424
|
}
|
|
318
425
|
}
|
|
319
426
|
} else {
|
|
320
|
-
let flag =
|
|
427
|
+
let flag = true;
|
|
321
428
|
if (this.$parent[methodBefore]) {
|
|
322
429
|
flag = this.$parent[methodBefore](obj);
|
|
323
430
|
}
|
|
@@ -338,7 +445,7 @@ export default {
|
|
|
338
445
|
let data = this.$refs.form.getChangeData();
|
|
339
446
|
if (data.flag === 'U') {
|
|
340
447
|
obj.editFlag = true;
|
|
341
|
-
}
|
|
448
|
+
}
|
|
342
449
|
obj.para = [];
|
|
343
450
|
obj.para.push(data);
|
|
344
451
|
}
|
|
@@ -437,7 +544,7 @@ export default {
|
|
|
437
544
|
}
|
|
438
545
|
}
|
|
439
546
|
},
|
|
440
|
-
setOutsideHeight
|
|
547
|
+
setOutsideHeight() {
|
|
441
548
|
let height = this.$refs.head.offsetHeight + this.$refs.para.offsetHeight + 80;
|
|
442
549
|
this.$refs.grid.setOutsideHeight(height);
|
|
443
550
|
let height2 = this.$refs.head.offsetHeight;
|
|
@@ -446,7 +553,7 @@ export default {
|
|
|
446
553
|
getChangeData() {
|
|
447
554
|
return this.$refs.form.getChangeData();
|
|
448
555
|
},
|
|
449
|
-
setDetailVisible(name,value) {
|
|
556
|
+
setDetailVisible(name, value) {
|
|
450
557
|
this.$refs.form.setVisible(name, value);
|
|
451
558
|
}
|
|
452
559
|
},
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<Row type="flex" :gutter="0" justify="start" align="middle">
|
|
2
|
+
<Row type="flex" :gutter="0" justify="start" align="middle">
|
|
3
3
|
<Col span="18">
|
|
4
|
-
<Row v-if="!notpowerFlag" type="flex" :gutter="0" justify="start" align="middle">
|
|
4
|
+
<Row v-if="!notpowerFlag" type="flex" :gutter="0" justify="start" align="middle">
|
|
5
5
|
<Col v-if="addDataBtnFlag">
|
|
6
|
-
<Button :custom-icon="mainButtonCustomIcon" :icon="mainButtonIcon" type="primary" class="mainBtn" :disabled="!!addReadOnly" @click="addData" >{{myConfig.mainButtonText}}</Button>
|
|
6
|
+
<Button :custom-icon="mainButtonCustomIcon" :icon="mainButtonIcon" type="primary" class="mainBtn" :disabled="!!addReadOnly" @click="addData" >{{myConfig.mainButtonText}}</Button>
|
|
7
7
|
</Col>
|
|
8
8
|
<Col v-if="addDataBtnFlag">
|
|
9
9
|
<Divider type="vertical" class="dividercommon"/>
|
|
@@ -28,12 +28,23 @@
|
|
|
28
28
|
</Dropdown>
|
|
29
29
|
</Col>
|
|
30
30
|
</Row>
|
|
31
|
-
<Row v-else type="flex" :gutter="0" justify="start" align="middle">
|
|
31
|
+
<Row v-else type="flex" :gutter="0" justify="start" align="middle">
|
|
32
32
|
<Icon custom="iconfont icon-custom-tishi" size="20" color="#F3B352"/> <span style="margin-left: 12px;font-size:18px;color:#F3B352;font-weight:bold">注意:当前页面您没有操作权限</span>
|
|
33
|
-
</Row>
|
|
33
|
+
</Row>
|
|
34
34
|
</Col>
|
|
35
35
|
<Col span="6">
|
|
36
|
-
<
|
|
36
|
+
<Row type="flex" :gutter="0" justify="end" align="middle">
|
|
37
|
+
<Col v-if="billoperlog">
|
|
38
|
+
<Button customIcon="iconfont icon-custom-baopidan" @click="openBilloperlog">操作日志</Button>
|
|
39
|
+
</Col>
|
|
40
|
+
<Col v-if="billoperlog">
|
|
41
|
+
<Divider type="vertical" class="dividercommon"/>
|
|
42
|
+
</Col>
|
|
43
|
+
<Col>
|
|
44
|
+
<PromptMessages modetype="2" style="height:100%"/>
|
|
45
|
+
</Col>
|
|
46
|
+
</Row>
|
|
47
|
+
|
|
37
48
|
</Col>
|
|
38
49
|
</Row>
|
|
39
50
|
</template>
|
|
@@ -65,7 +76,8 @@ export default {
|
|
|
65
76
|
moreFlag:false,
|
|
66
77
|
btnItems:[],
|
|
67
78
|
ignoreModule:['downTemplate'],
|
|
68
|
-
notpowerFlag:true
|
|
79
|
+
notpowerFlag:true,
|
|
80
|
+
billoperlog:false,
|
|
69
81
|
};
|
|
70
82
|
},
|
|
71
83
|
props:{
|
|
@@ -76,7 +88,7 @@ export default {
|
|
|
76
88
|
moduleMethod:{
|
|
77
89
|
type:Array,
|
|
78
90
|
default: () => {
|
|
79
|
-
return [];
|
|
91
|
+
return [];
|
|
80
92
|
}
|
|
81
93
|
},
|
|
82
94
|
},
|
|
@@ -122,7 +134,7 @@ export default {
|
|
|
122
134
|
this.mainButtonIcon = el.icon;
|
|
123
135
|
this.mainButtonCustomIcon = null;
|
|
124
136
|
}
|
|
125
|
-
|
|
137
|
+
|
|
126
138
|
}
|
|
127
139
|
});
|
|
128
140
|
}
|
|
@@ -144,7 +156,7 @@ export default {
|
|
|
144
156
|
}
|
|
145
157
|
let btnItems = [];
|
|
146
158
|
this.moduleMethod.forEach(el =>{
|
|
147
|
-
let tmp = this.btnItems.find(el2 => el.name === el2.name);
|
|
159
|
+
let tmp = this.btnItems.find(el2 => el.name === el2.name);
|
|
148
160
|
if (tmp) {
|
|
149
161
|
btnItems.push(tmp);
|
|
150
162
|
}
|
|
@@ -178,12 +190,19 @@ export default {
|
|
|
178
190
|
if (this.btnItems.length > this.myConfig.showNum){
|
|
179
191
|
this.moreFlag = true;
|
|
180
192
|
}
|
|
193
|
+
|
|
194
|
+
if (this.myConfig.billoperlog) {
|
|
195
|
+
this.billoperlog = true;
|
|
196
|
+
}
|
|
181
197
|
},
|
|
182
198
|
action(name) {
|
|
183
199
|
let obj = {};
|
|
184
200
|
obj.name = name;
|
|
185
201
|
this.$emit('doAction', obj);
|
|
186
202
|
},
|
|
203
|
+
openBilloperlog() {
|
|
204
|
+
this.doBtn('openBilloperlog');
|
|
205
|
+
},
|
|
187
206
|
|
|
188
207
|
setAllReadOnly (value) {
|
|
189
208
|
let btn = this.$Method.copy(this.btnItems);
|
|
@@ -200,14 +219,14 @@ export default {
|
|
|
200
219
|
this.addReadOnly = value;
|
|
201
220
|
} else {
|
|
202
221
|
this.doCommonPro(el,'readOnly', value);
|
|
203
|
-
}
|
|
222
|
+
}
|
|
204
223
|
});
|
|
205
224
|
} else {
|
|
206
225
|
if (obj === this.myConfig.mainButton) {
|
|
207
226
|
this.addReadOnly = value;
|
|
208
227
|
} else {
|
|
209
228
|
this.doCommonPro(obj,'readOnly', value);
|
|
210
|
-
}
|
|
229
|
+
}
|
|
211
230
|
}
|
|
212
231
|
}
|
|
213
232
|
},
|
|
@@ -46,12 +46,12 @@
|
|
|
46
46
|
<template #content>
|
|
47
47
|
<div>{{filename}}</div>
|
|
48
48
|
</template>
|
|
49
|
-
</Poptip>
|
|
49
|
+
</Poptip>
|
|
50
50
|
</Col>
|
|
51
51
|
<Col>
|
|
52
52
|
<Upload ref="upload"
|
|
53
53
|
:before-upload="handleUpload"
|
|
54
|
-
accept=".xlsx,.xls"
|
|
54
|
+
accept=".xlsx,.xls"
|
|
55
55
|
:format="myConfig.fileType"
|
|
56
56
|
:on-format-error="handleFormatError"
|
|
57
57
|
:on-success="handleSuccess"
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
</RadioGroup>
|
|
78
78
|
</Modal>
|
|
79
79
|
</template>
|
|
80
|
-
|
|
80
|
+
|
|
81
81
|
</div>
|
|
82
82
|
</template>
|
|
83
83
|
<script>
|
|
@@ -168,22 +168,7 @@
|
|
|
168
168
|
} else {
|
|
169
169
|
let temp = this.url +'¶m=' +encodeURI(JSON.stringify(param));
|
|
170
170
|
window.open(temp,'_self');
|
|
171
|
-
}
|
|
172
|
-
},
|
|
173
|
-
setExportDownUrl(url,param) {
|
|
174
|
-
/*if (url) {
|
|
175
|
-
url = url.replace('rest', 'exportTemplate');
|
|
176
|
-
}*/
|
|
177
|
-
let self = this;
|
|
178
|
-
this.url = this.getResturl(url,null,{},self);
|
|
179
|
-
if (this.myConfig.typeData.length > 1) {
|
|
180
|
-
this.param = param;
|
|
181
|
-
this.type = this.myConfig.typeData[0].code;
|
|
182
|
-
this.showUpload = true;
|
|
183
|
-
} else {
|
|
184
|
-
let temp = this.url +'¶m=' +encodeURI(JSON.stringify(param));
|
|
185
|
-
window.open(temp,'_self');
|
|
186
|
-
}
|
|
171
|
+
}
|
|
187
172
|
},
|
|
188
173
|
handleUpload (file) {
|
|
189
174
|
if (!this.checkFormat(file)) {
|
|
@@ -229,7 +214,7 @@
|
|
|
229
214
|
this.$emit('importSuccess',res);
|
|
230
215
|
}
|
|
231
216
|
this.loading = false;
|
|
232
|
-
|
|
217
|
+
|
|
233
218
|
},
|
|
234
219
|
downTemplate() {
|
|
235
220
|
if (this.type) {
|
|
@@ -240,7 +225,7 @@
|
|
|
240
225
|
window.open(temp,'_self');
|
|
241
226
|
this.showUpload = false;
|
|
242
227
|
}
|
|
243
|
-
|
|
228
|
+
|
|
244
229
|
}
|
|
245
230
|
}
|
|
246
231
|
}
|
package/src/index.js
CHANGED
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import TextBox from './components/textbox';
|
|
21
21
|
import RichTextBox from './components/richtextbox';
|
|
22
22
|
import { NumberBox, NumberRangeBox,NumberBoxV1 } from './components/numberbox';
|
|
23
|
-
import { DateBox, DateRangeBox } from './components/datebox';
|
|
23
|
+
import { DateBox, DateRangeBox,DateBoxV1 } from './components/datebox';
|
|
24
24
|
import TimePicBox from './components/timebox';
|
|
25
25
|
import PopTextBox from './components/poptextbox';
|
|
26
26
|
import { ControlBox, ControlBase} from './components/base';
|
|
@@ -175,7 +175,8 @@ const components = {
|
|
|
175
175
|
wRichTextBox,
|
|
176
176
|
mBillListDetails,
|
|
177
177
|
NumberBoxV1,
|
|
178
|
-
mListDetailsV2
|
|
178
|
+
mListDetailsV2,
|
|
179
|
+
DateBoxV1
|
|
179
180
|
};
|
|
180
181
|
|
|
181
182
|
const iview = {
|