centaline-data-driven-v3 0.0.46 → 0.0.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.
- package/dist/centaline-data-driven-v3.umd.js +64 -64
- package/package.json +1 -1
- package/src/assets/commonWeb.css +26 -10
- package/src/components/app/CheckBoxList.vue +15 -7
- package/src/components/app/PhotoSelectList.vue +1 -7
- package/src/components/app/SearchList/SearchStats.vue +16 -0
- package/src/components/app/SearchList/SearchTable.vue +14 -3
- package/src/components/app/SearchList.vue +5 -4
- package/src/components/app/ViewerFile.vue +1 -0
- package/src/components/app/searchScreen.vue +29 -12
- package/src/components/web/CheckBoxList.vue +13 -5
- package/src/components/web/PhotoSelect.vue +4 -3
- package/src/components/web/PhotoSelectList.vue +1 -7
- package/src/components/web/SearchList/SearchStats.vue +1 -1
- package/src/components/web/other/PopupSearchListTable.vue +10 -7
- package/src/loader/src/SearchScreen.js +23 -22
- package/src/loader/src/SearchTable.js +7 -1
- package/src/main.js +1 -1
package/package.json
CHANGED
package/src/assets/commonWeb.css
CHANGED
|
@@ -80,7 +80,7 @@ body {
|
|
|
80
80
|
line-height: normal;
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
.ct-form-tip{
|
|
83
|
+
.ct-form-tip {
|
|
84
84
|
background-color: #ffe7cc;
|
|
85
85
|
border-color: #ffe7cc;
|
|
86
86
|
border-radius: 5px;
|
|
@@ -114,6 +114,7 @@ body {
|
|
|
114
114
|
line-height: 26px;
|
|
115
115
|
color: var(--centalineGray);
|
|
116
116
|
}
|
|
117
|
+
|
|
117
118
|
.sufLabel2 {
|
|
118
119
|
margin-left: 20px;
|
|
119
120
|
font-size: 12px;
|
|
@@ -146,7 +147,8 @@ body {
|
|
|
146
147
|
margin: auto;
|
|
147
148
|
box-shadow: 0 2px 20px 0 rgb(0 0 0 / 10%);
|
|
148
149
|
}
|
|
149
|
-
|
|
150
|
+
|
|
151
|
+
.unitName {
|
|
150
152
|
font-size: 12px;
|
|
151
153
|
line-height: 26px;
|
|
152
154
|
}
|
|
@@ -418,6 +420,7 @@ body {
|
|
|
418
420
|
cursor: pointer;
|
|
419
421
|
color: #2E58E6;
|
|
420
422
|
}
|
|
423
|
+
|
|
421
424
|
.ct-tablecurrencyImg {
|
|
422
425
|
width: 24px;
|
|
423
426
|
margin-top: 2px;
|
|
@@ -777,6 +780,11 @@ body {
|
|
|
777
780
|
margin-right: 15px;
|
|
778
781
|
}
|
|
779
782
|
|
|
783
|
+
.ct-Radio .el-checkbox .el-checkbox__label {
|
|
784
|
+
display: flex;
|
|
785
|
+
align-items: center;
|
|
786
|
+
}
|
|
787
|
+
|
|
780
788
|
#ct-TreeList .el-main {
|
|
781
789
|
padding: 0 0 0 10px;
|
|
782
790
|
}
|
|
@@ -799,9 +807,11 @@ body {
|
|
|
799
807
|
.viewerMenu .el-sub-menu__title .el-sub-menu__icon-arrow {
|
|
800
808
|
display: inline-block;
|
|
801
809
|
}
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
810
|
+
|
|
811
|
+
.handle {
|
|
812
|
+
cursor: move;
|
|
813
|
+
user-select: none;
|
|
814
|
+
/* 禁止文本选择 */
|
|
805
815
|
}
|
|
806
816
|
|
|
807
817
|
|
|
@@ -1035,7 +1045,8 @@ body {
|
|
|
1035
1045
|
width: 14px;
|
|
1036
1046
|
height: 14px;
|
|
1037
1047
|
}
|
|
1038
|
-
|
|
1048
|
+
|
|
1049
|
+
.ct-Radio .el-radio.el-radio--small .el-radio__label {
|
|
1039
1050
|
height: 24px;
|
|
1040
1051
|
line-height: 24px;
|
|
1041
1052
|
}
|
|
@@ -1053,21 +1064,26 @@ body {
|
|
|
1053
1064
|
border-color: #EE6B6B;
|
|
1054
1065
|
color: #EE6B6B;
|
|
1055
1066
|
}
|
|
1056
|
-
|
|
1067
|
+
|
|
1068
|
+
.el-tag--small {
|
|
1057
1069
|
height: auto;
|
|
1058
1070
|
line-height: 16px;
|
|
1059
1071
|
padding: 3px 9px;
|
|
1060
1072
|
}
|
|
1061
|
-
|
|
1073
|
+
|
|
1074
|
+
.el-checkbox.el-checkbox--small {
|
|
1062
1075
|
height: auto;
|
|
1063
1076
|
padding: 5px 0;
|
|
1064
1077
|
}
|
|
1065
|
-
|
|
1078
|
+
|
|
1079
|
+
.ct-photoSelectList .el-checkbox.el-checkbox--small .el-checkbox__inner {
|
|
1066
1080
|
width: 15px;
|
|
1067
1081
|
height: 15px;
|
|
1068
1082
|
border: 1px solid #ed745f;
|
|
1069
1083
|
}
|
|
1070
|
-
|
|
1084
|
+
|
|
1085
|
+
.ct-photoSelectList .el-checkbox__input.is-checked .el-checkbox__inner {
|
|
1071
1086
|
background-color: #ed745f;
|
|
1072
1087
|
}
|
|
1088
|
+
|
|
1073
1089
|
/*elementPlus样式重置结束*/
|
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<ct-field :vmodel="model">
|
|
3
3
|
<template #Control>
|
|
4
|
-
<van-checkbox-group v-model="model.value" direction="horizontal" @change="change"
|
|
5
|
-
:
|
|
6
|
-
<
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
<van-checkbox-group v-model="model.value" direction="horizontal" @change="change" :disabled="model.locked"
|
|
5
|
+
:max="parseInt(model.maxValue1 || 999)">
|
|
6
|
+
<template v-for="item in model.selectItems1" :key="item.code">
|
|
7
|
+
<van-checkbox shape="square" :name="item.code" :style="{ width: model.width1 + 'px' }"
|
|
8
|
+
style="white-space: normal;">
|
|
9
|
+
<span v-html="item.name"></span>
|
|
10
|
+
</van-checkbox>
|
|
11
|
+
<van-popover v-if="item.toolTip">
|
|
12
|
+
<div v-html="item.toolTip" style="font-size: 14px;padding: 10px;"></div>
|
|
13
|
+
<template #reference>
|
|
14
|
+
<van-icon name="info" size="20" style="top: 5px;" />
|
|
15
|
+
</template>
|
|
16
|
+
</van-popover>
|
|
17
|
+
</template>
|
|
10
18
|
</van-checkbox-group>
|
|
11
19
|
</template>
|
|
12
20
|
</ct-field>
|
|
@@ -14,7 +22,7 @@
|
|
|
14
22
|
<script lang="ts" setup>
|
|
15
23
|
import { initData, changeHandler } from '../../utils/mixins';
|
|
16
24
|
import CheckBoxList from '../../loader/src/CheckBoxList';
|
|
17
|
-
const emit = defineEmits(['click', 'change','search'])
|
|
25
|
+
const emit = defineEmits(['click', 'change', 'search'])
|
|
18
26
|
const props = defineProps({
|
|
19
27
|
parameterAction: String,
|
|
20
28
|
vmodel: Object,
|
|
@@ -205,13 +205,7 @@ function allchoose() {
|
|
|
205
205
|
function handleClick() {
|
|
206
206
|
if (chooseList.value && chooseList.value.length > 0) {
|
|
207
207
|
emit('handlePhoto', chooseList.value);
|
|
208
|
-
}
|
|
209
|
-
ElMessage({
|
|
210
|
-
message: "请选择至少一张图片",
|
|
211
|
-
type: 'warning',
|
|
212
|
-
showClose: true,
|
|
213
|
-
});
|
|
214
|
-
}
|
|
208
|
+
}
|
|
215
209
|
}
|
|
216
210
|
function rolRouterCellClickHandler(routerKey, rowindex, sourceIndex) {
|
|
217
211
|
if (routerKey == 'photoPreview') {
|
|
@@ -21,9 +21,14 @@ const props = defineProps({
|
|
|
21
21
|
Boolean,
|
|
22
22
|
default: false,
|
|
23
23
|
},
|
|
24
|
+
apiParam: {
|
|
25
|
+
type: Object,
|
|
26
|
+
default: () => { }
|
|
27
|
+
},
|
|
24
28
|
})
|
|
25
29
|
const model = ref(null)
|
|
26
30
|
const selectStats = ref("")
|
|
31
|
+
const fieldName1 = ref("")
|
|
27
32
|
const tableStatistics = ref()
|
|
28
33
|
function searchStatsComplate() {
|
|
29
34
|
nextTick(function () {
|
|
@@ -40,6 +45,17 @@ function searchStatsComplate() {
|
|
|
40
45
|
}
|
|
41
46
|
function load(data) {
|
|
42
47
|
model.value = data;
|
|
48
|
+
data.source.content.forEach((item) => {
|
|
49
|
+
fieldName1.value = item.fieldName1;
|
|
50
|
+
});
|
|
51
|
+
if (selectStats.value == '') {
|
|
52
|
+
var i = data.source.content.findIndex((v) => {
|
|
53
|
+
return v.code1 == props.apiParam[fieldName1.value];
|
|
54
|
+
});
|
|
55
|
+
if (i > -1) {
|
|
56
|
+
selectStats.value = i
|
|
57
|
+
}
|
|
58
|
+
}
|
|
43
59
|
emit("setTableHeight");
|
|
44
60
|
}
|
|
45
61
|
function handleClick(ev) {
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="ct-searchtableAPP" ref="refSearchTable" v-if="model">
|
|
3
3
|
<SearchStats ref="refTableStats" v-if="model && searchStatsApi" :api="searchStatsApi"
|
|
4
|
-
@searchStats="clickSearchStats" :searchModel="model.searchModel" @setTableHeight="setTableHeight"
|
|
4
|
+
@searchStats="clickSearchStats" :searchModel="model.searchModel" @setTableHeight="setTableHeight"
|
|
5
|
+
:apiParam="apiParam">
|
|
5
6
|
</SearchStats>
|
|
6
7
|
<div class="ct-table-tip ct-table-tip-mini" style="display: block;" ref="refListHeader"
|
|
7
8
|
v-if="model && model.listHeader" v-html="model.listHeader">
|
|
@@ -16,7 +17,7 @@
|
|
|
16
17
|
<van-radio-group v-model="checkeds" ref="refCheckboxGroup">
|
|
17
18
|
<div class="ct-list" v-for="(row, rowindex) in model.listData" :key="rowindex">
|
|
18
19
|
<van-radio @click="selectRow(row)" icon-size="16px" checked-color="#EE6B6B"
|
|
19
|
-
:name="rowindex" :disabled="row
|
|
20
|
+
:name="rowindex" :disabled="!flagSelect(row)"> </van-radio>
|
|
20
21
|
<ct-layout :vmodel="row" :cellLayout="model.cellLayout" :rowindex="rowindex"
|
|
21
22
|
:key="itemKey" @rolRouterclick="rolRouterCellClickHandler"
|
|
22
23
|
:actionRouter="model.actionRouter"
|
|
@@ -30,7 +31,7 @@
|
|
|
30
31
|
<div class="ct-list" v-for="(row, rowindex) in model.listData" :key="rowindex">
|
|
31
32
|
<van-checkbox v-if="isoperate || flagPopupSearchlist" shape="square"
|
|
32
33
|
checked-color="#EE6B6B" icon-size="14px" :name="rowindex" @click="selectRow(row)"
|
|
33
|
-
:disabled="row
|
|
34
|
+
:disabled="!flagSelect(row)"></van-checkbox>
|
|
34
35
|
<ct-layout :vmodel="row" :cellLayout="model.cellLayout" :rowindex="rowindex"
|
|
35
36
|
:key="itemKey" @rolRouterclick="rolRouterCellClickHandler"
|
|
36
37
|
:actionRouter="model.actionRouter"
|
|
@@ -90,6 +91,10 @@ const props = defineProps({
|
|
|
90
91
|
api: String,
|
|
91
92
|
searchStatsApi: String,
|
|
92
93
|
flagAppMode: Boolean,
|
|
94
|
+
apiParam: {
|
|
95
|
+
type: Object,
|
|
96
|
+
default: () => { }
|
|
97
|
+
},
|
|
93
98
|
flagFocus: {
|
|
94
99
|
Boolean,
|
|
95
100
|
default: true,
|
|
@@ -461,6 +466,12 @@ function confirmClickHandler() {
|
|
|
461
466
|
emit('submit', rtnData);
|
|
462
467
|
}
|
|
463
468
|
}
|
|
469
|
+
function flagSelect(row) {
|
|
470
|
+
if (!model.value.rightCheckBoxColumn || common.getDataOfUpperLower(row, model.value.rightCheckBoxColumn) == 1) {
|
|
471
|
+
return true;
|
|
472
|
+
}
|
|
473
|
+
return false;
|
|
474
|
+
}
|
|
464
475
|
defineExpose({
|
|
465
476
|
model,
|
|
466
477
|
searchComplate,
|
|
@@ -10,7 +10,8 @@
|
|
|
10
10
|
@showTitle="showTitleScreenHandler" @sort="loadsort"></ct-searchscreen>
|
|
11
11
|
<searchTable ref="refTable" :api="searchDataApi" :searchStatsApi="searchStatsApi"
|
|
12
12
|
:flagPopupSearchlist="flagPopupSearchlist" :singleSelectio="singleSelectio" :flagTabbar="flagTabbar"
|
|
13
|
-
@scrollHandle="scrollHandle" v-on:submit="popupSearchListConfirm"
|
|
13
|
+
:apiParam="apiParam" @scrollHandle="scrollHandle" v-on:submit="popupSearchListConfirm"
|
|
14
|
+
@loaded="tableLoaded"></searchTable>
|
|
14
15
|
</div>
|
|
15
16
|
</template>
|
|
16
17
|
<script lang="ts" setup>
|
|
@@ -111,17 +112,17 @@ function tableLoaded() {
|
|
|
111
112
|
var router = refTable.value.model.buttons.find((v) => {
|
|
112
113
|
return v.key === 'sort';
|
|
113
114
|
});
|
|
114
|
-
if(router&&refScreen.value){
|
|
115
|
+
if (router && refScreen.value) {
|
|
115
116
|
refScreen.value.getsortfield(router);
|
|
116
117
|
}
|
|
117
118
|
emit('loaded', refTable.value.model);
|
|
118
119
|
}
|
|
119
|
-
function loadsort(ev){
|
|
120
|
+
function loadsort(ev) {
|
|
120
121
|
if (refTable.value.model) {
|
|
121
122
|
refTable.value.model.sortString = ev.code;
|
|
122
123
|
refTable.value.getPage(1);
|
|
123
124
|
}
|
|
124
|
-
|
|
125
|
+
|
|
125
126
|
}
|
|
126
127
|
function showTitleScreenHandler() {
|
|
127
128
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
style=" width: 100%;">
|
|
7
7
|
<van-dropdown-item v-for="(field, index) in screendata" :key="index" ref="Refitem"
|
|
8
8
|
:title-class="field.searchValue || field.searchValue1 ? 'title color-EE6B6B' : 'title'"
|
|
9
|
-
@open="open(field)" @close="close(field)">
|
|
9
|
+
@open="open(field)" @close="close(field)" :disabled="field.locked">
|
|
10
10
|
<template #title>
|
|
11
11
|
<span v-if="field.searchValue || field.searchValue1">{{ getLableShow(field) }}</span>
|
|
12
12
|
<span v-else>{{ field.controlLabel }}</span>
|
|
@@ -16,31 +16,31 @@
|
|
|
16
16
|
<div style="padding: 5px 16px; display: flex;" v-if="field.is != 'ct-combobox'">
|
|
17
17
|
<van-button color="#ECECEC" block @click="field.reset()"
|
|
18
18
|
style="color:333333;margin-right: 10px;">
|
|
19
|
-
重置
|
|
19
|
+
{{ getBtnLabel(Enum.ControlType.ButtonReset, '重置') }}
|
|
20
20
|
</van-button>
|
|
21
21
|
<van-button color="#FF5252" block @click="clickHandler(field)">
|
|
22
|
-
确定
|
|
22
|
+
{{ getBtnLabel(Enum.ControlType.ButtonSearch, '确定') }}
|
|
23
23
|
</van-button>
|
|
24
24
|
</div>
|
|
25
25
|
</van-dropdown-item>
|
|
26
26
|
<van-dropdown-item v-if="ismore" key="4" title="更多" ref="RefitemMore" title-class="title"
|
|
27
27
|
class="screen-more" @open="openMore" @close="closeMore">
|
|
28
28
|
<template v-for="(field, index) in model.screen" :key="index">
|
|
29
|
-
<component :is="field.is" :vmodel="field" ref="Fields"
|
|
29
|
+
<component v-if="field.show !== false" :is="field.is" :vmodel="field" ref="Fields"
|
|
30
30
|
:parameterAction="model.parameterAction" />
|
|
31
31
|
</template>
|
|
32
32
|
<template v-for="(field, index) in model.highScreen" :key="index">
|
|
33
|
-
<component :is="field.is" :vmodel="field" ref="Fields"
|
|
33
|
+
<component v-if="field.show !== false" :is="field.is" :vmodel="field" ref="Fields"
|
|
34
34
|
:parameterAction="model.parameterAction" />
|
|
35
35
|
</template>
|
|
36
36
|
<van-sticky position="bottom">
|
|
37
37
|
<div style="padding: 5px 16px; display: flex;background-color: #ffffff;">
|
|
38
38
|
<van-button color="#ECECEC" block @click="reset"
|
|
39
39
|
style="color:333333;margin-right: 10px;">
|
|
40
|
-
重置
|
|
40
|
+
{{ getBtnLabel(Enum.ControlType.ButtonReset, '重置') }}
|
|
41
41
|
</van-button>
|
|
42
42
|
<van-button color="#FF5252" block @click="clickHandlerMore()">
|
|
43
|
-
确定
|
|
43
|
+
{{ getBtnLabel(Enum.ControlType.ButtonSearch, '确定') }}
|
|
44
44
|
</van-button>
|
|
45
45
|
</div>
|
|
46
46
|
</van-sticky>
|
|
@@ -157,7 +157,9 @@ function failLoad() {
|
|
|
157
157
|
//无任何筛选条件时,不显示该div
|
|
158
158
|
function setScreenShow() {
|
|
159
159
|
let showField = model.value.screen.find((v) => {
|
|
160
|
-
return v.show !== false
|
|
160
|
+
return v.show !== false &&
|
|
161
|
+
v.controlType !== Enum.ControlType.LineFeed &&
|
|
162
|
+
v.controlType !== Enum.ControlType.IndependentGroup;
|
|
161
163
|
});
|
|
162
164
|
if (!showField) {
|
|
163
165
|
showField = model.value.btnScreen.find((v) => {
|
|
@@ -172,8 +174,9 @@ function setscreendata() {
|
|
|
172
174
|
screendata.value = [];
|
|
173
175
|
var screens = model.value.screen.filter((v, i) => {
|
|
174
176
|
return (
|
|
175
|
-
v.show
|
|
176
|
-
v.
|
|
177
|
+
v.show !== false &&
|
|
178
|
+
v.controlType !== Enum.ControlType.IndependentGroup &&
|
|
179
|
+
v.controlType !== Enum.ControlType.LineFeed
|
|
177
180
|
);
|
|
178
181
|
});
|
|
179
182
|
if (screens.length > 4) {
|
|
@@ -280,10 +283,14 @@ function closeMore() {
|
|
|
280
283
|
function setsearchdata() {
|
|
281
284
|
searchdata.value = [];
|
|
282
285
|
var screens = model.value.screen.filter((v) => {
|
|
283
|
-
return v.show === true &&
|
|
286
|
+
return v.show === true &&
|
|
287
|
+
v.controlType != Enum.ControlType.IndependentGroup &&
|
|
288
|
+
v.controlType !== Enum.ControlType.LineFeed;
|
|
284
289
|
});
|
|
285
290
|
var highScreen = model.value.highScreen.filter((v) => {
|
|
286
|
-
return v.show === true &&
|
|
291
|
+
return v.show === true &&
|
|
292
|
+
v.controlType != Enum.ControlType.IndependentGroup &&
|
|
293
|
+
v.controlType !== Enum.ControlType.LineFeed;
|
|
287
294
|
});
|
|
288
295
|
screens = [...screens, ...highScreen];
|
|
289
296
|
screens.forEach((v) => {
|
|
@@ -337,6 +344,16 @@ function selectsort(ev) {
|
|
|
337
344
|
}
|
|
338
345
|
emit("sort", ev);
|
|
339
346
|
}
|
|
347
|
+
function getBtnLabel(controlType, controlLabel) {
|
|
348
|
+
let rtn = controlLabel;
|
|
349
|
+
let field = model.value.btnScreen.find((v) => {
|
|
350
|
+
return v.controlType === controlType;
|
|
351
|
+
});
|
|
352
|
+
if (field) {
|
|
353
|
+
rtn = field.controlLabel
|
|
354
|
+
}
|
|
355
|
+
return rtn;
|
|
356
|
+
}
|
|
340
357
|
function getLableShow(field) {
|
|
341
358
|
let labelShow = field.searchName;
|
|
342
359
|
if (!labelShow) {
|
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<ct-field :vmodel="model">
|
|
3
3
|
<template #Control>
|
|
4
|
-
<div class="ct-Radio fieldControl"
|
|
5
|
-
|
|
4
|
+
<div class="ct-Radio fieldControl"
|
|
5
|
+
:class="[model.value !== '' && model.value.length > 0 && !model.locked ? 'hasValue' : '']">
|
|
6
|
+
<el-checkbox-group v-model="model.value" @change="change" :max="parseInt(model.maxValue1 || 999)"
|
|
7
|
+
style="display: inline-block;">
|
|
6
8
|
<el-checkbox v-bind="model.attrs" v-for="(item, index) in model.selectItems1" :key="index"
|
|
7
|
-
:label="item.code" :disabled="model.locked" :style="{ width: model.width1 + 'px' }"
|
|
9
|
+
:label="item.code" :disabled="model.locked" :style="{ width: model.width1 + 'px' }"
|
|
10
|
+
style="white-space: normal;">
|
|
8
11
|
<span v-html="item.name" style="line-height: 16px;"></span>
|
|
12
|
+
<el-icon :size="18" v-if="item.toolTip" style="margin-left: 5px;">
|
|
13
|
+
<el-tooltip raw-content :content="item.toolTip" placement="top" effect="light">
|
|
14
|
+
<WarningFilled />
|
|
15
|
+
</el-tooltip>
|
|
16
|
+
</el-icon>
|
|
9
17
|
</el-checkbox>
|
|
10
18
|
<el-icon @click="clearClickHandle" class="el-range__close-icon" style="margin-left: 10px;">
|
|
11
19
|
<CircleClose />
|
|
@@ -18,7 +26,7 @@
|
|
|
18
26
|
<script lang="ts" setup>
|
|
19
27
|
import { initData, changeHandler } from '../../utils/mixins';
|
|
20
28
|
import CheckBoxList from '../../loader/src/CheckBoxList';
|
|
21
|
-
const emit = defineEmits(['click', 'change','search'])
|
|
29
|
+
const emit = defineEmits(['click', 'change', 'search'])
|
|
22
30
|
const props = defineProps({
|
|
23
31
|
parameterAction: String,
|
|
24
32
|
vmodel: Object,
|
|
@@ -33,7 +41,7 @@ function change() {
|
|
|
33
41
|
}
|
|
34
42
|
function clearClickHandle() {
|
|
35
43
|
model.value.reset()
|
|
36
|
-
|
|
44
|
+
change()
|
|
37
45
|
}
|
|
38
46
|
defineExpose({
|
|
39
47
|
model
|
|
@@ -6,9 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
<li class="el-upload-list__item is-success" v-bind:key="index">
|
|
8
8
|
<div class="cover-list-item">
|
|
9
|
-
<
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
<div @click.stop="viewerfile(model.fileList, index)">
|
|
10
|
+
<el-image fit="fill" :src="element.thumbnailUrl" style="width: 100px; height: 100px">
|
|
11
|
+
</el-image>
|
|
12
|
+
</div>
|
|
12
13
|
<span class="cover-list-item-play" v-if="element.videoPlayIconUrl">
|
|
13
14
|
<div class="swiper-i" @click.stop="viewerfile(model.fileList, index)">
|
|
14
15
|
<img :src="element.videoPlayIconUrl" class="hous-icon" />
|
|
@@ -211,13 +211,7 @@ function allchoose() {
|
|
|
211
211
|
function handleClick() {
|
|
212
212
|
if (chooseList.value && chooseList.value.length > 0) {
|
|
213
213
|
emit('handlePhoto', chooseList.value);
|
|
214
|
-
}
|
|
215
|
-
ElMessage({
|
|
216
|
-
message: "请选择至少一张图片",
|
|
217
|
-
type: 'warning',
|
|
218
|
-
showClose: true,
|
|
219
|
-
});
|
|
220
|
-
}
|
|
214
|
+
}
|
|
221
215
|
}
|
|
222
216
|
function rolRouterCellClickHandler(routerKey, rowindex, sourceIndex) {
|
|
223
217
|
if (routerKey == 'photoPreview') {
|
|
@@ -160,7 +160,7 @@ function load(data) {
|
|
|
160
160
|
});
|
|
161
161
|
if (selectStats.value == '') {
|
|
162
162
|
var m = data.source.content.find((v) => {
|
|
163
|
-
return v.code1
|
|
163
|
+
return v.code1 == props.apiParam[fieldName1.value];
|
|
164
164
|
});
|
|
165
165
|
if (m) {
|
|
166
166
|
selectStats.value = m.key
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
<template v-else>
|
|
11
11
|
<el-table-column width="50" fixed="left">
|
|
12
12
|
<template #default="scope">
|
|
13
|
-
<el-radio v-model="model.selectIndex" :disabled="!scope.row
|
|
13
|
+
<el-radio v-model="model.selectIndex" :disabled="!flagSelect(scope.row)"
|
|
14
14
|
:label="scope.$index"> </el-radio>
|
|
15
15
|
</template>
|
|
16
16
|
</el-table-column>
|
|
@@ -111,7 +111,7 @@ function loadFields() {
|
|
|
111
111
|
|
|
112
112
|
}
|
|
113
113
|
function selectable(row) {
|
|
114
|
-
if (row
|
|
114
|
+
if (flagSelect(row) === false) {
|
|
115
115
|
return false;
|
|
116
116
|
}
|
|
117
117
|
return true;
|
|
@@ -136,13 +136,13 @@ function handleSelectionChange(val) {
|
|
|
136
136
|
}
|
|
137
137
|
//当单选项发生变化时会触发该事件
|
|
138
138
|
function handleCurrentChange(val) {
|
|
139
|
-
if (val && val
|
|
139
|
+
if (val && flagSelect(val) === false) {
|
|
140
140
|
return;
|
|
141
141
|
}
|
|
142
142
|
currentRow.value = val;
|
|
143
143
|
}
|
|
144
144
|
function handleCellClick(row) {
|
|
145
|
-
if (row
|
|
145
|
+
if (flagSelect(row) === false) {
|
|
146
146
|
return;
|
|
147
147
|
}
|
|
148
148
|
model.value.selectIndex = row.tableIndex;
|
|
@@ -211,13 +211,16 @@ function confirmClickHandler() {
|
|
|
211
211
|
emit('submit', multipleSelection.value);
|
|
212
212
|
}
|
|
213
213
|
}
|
|
214
|
+
function flagSelect(row){
|
|
215
|
+
if(!model.value.rightCheckBoxColumn || common.getDataOfUpperLower(row, model.value.rightCheckBoxColumn) == 1){
|
|
216
|
+
return true;
|
|
217
|
+
}
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
214
220
|
//重置列宽(自适应列宽)
|
|
215
221
|
function resetTabelWidth() {
|
|
216
222
|
model.value.columns.forEach((c) => {
|
|
217
223
|
tableData.value.forEach((t) => {
|
|
218
|
-
if (t.flagSelect !== false) {
|
|
219
|
-
t.flagSelect = true;
|
|
220
|
-
}
|
|
221
224
|
var colStr = t[c.id];//动态获取每列的属性值
|
|
222
225
|
c.maxLen = c.maxLen ? c.maxLen : common.strCharLen(c.name);
|
|
223
226
|
c.maxLen = c.maxLen > common.strCharLen(colStr) ? c.maxLen : common.strCharLen(colStr);
|
|
@@ -56,7 +56,7 @@ function loadSearchScreenModel(source, prevParam) {
|
|
|
56
56
|
continue;
|
|
57
57
|
}
|
|
58
58
|
if ((source.fields[key].controlType === Enum.ControlType.DateRange
|
|
59
|
-
|| source.fields[key].controlType===Enum.ControlType.Location
|
|
59
|
+
|| source.fields[key].controlType === Enum.ControlType.Location
|
|
60
60
|
|| source.fields[key].controlType === Enum.ControlType.DateTimeRange)
|
|
61
61
|
&& source.fields[key].code2 == undefined) {
|
|
62
62
|
source.fields[key].code2 = '';
|
|
@@ -76,7 +76,8 @@ function loadSearchScreenModel(source, prevParam) {
|
|
|
76
76
|
return v.controlType === Enum.ControlType.ButtonSearch;
|
|
77
77
|
});
|
|
78
78
|
var screens = rtn.sourceFieldsArr.filter((v, i) => {
|
|
79
|
-
return (advIndex === -1 || i < advIndex) && v.controlType !== Enum.ControlType.From
|
|
79
|
+
return (advIndex === -1 || i < advIndex) && v.controlType !== Enum.ControlType.From
|
|
80
|
+
|| v.controlType == Enum.ControlType.Hidden;
|
|
80
81
|
});
|
|
81
82
|
|
|
82
83
|
rtnscreens = this.initScreen(screens);
|
|
@@ -221,34 +222,34 @@ function loadSearchScreenModel(source, prevParam) {
|
|
|
221
222
|
});
|
|
222
223
|
return rtn;
|
|
223
224
|
},
|
|
224
|
-
get searchDataOfHide() {
|
|
225
|
+
get searchDataOfHide() {
|
|
225
226
|
var rtn = {
|
|
226
|
-
|
|
227
|
+
fields: []
|
|
227
228
|
};
|
|
228
229
|
this.screen.forEach((v) => {
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
230
|
+
if (v.controlType === Enum.ControlType.Hidden) {
|
|
231
|
+
var tempObj = common.deepClone(v.searchObj);
|
|
232
|
+
if ((tempObj.searchValue1 && tempObj.searchValue1 !== '') || (tempObj.searchValue2 && tempObj.searchValue2 !== '')) {
|
|
233
|
+
if (isHandle(v.controlType)) {
|
|
234
|
+
tempObj.searchValue1 = getNewSearchValue(tempObj);
|
|
235
|
+
}
|
|
236
|
+
rtn.fields.push(tempObj);
|
|
237
|
+
}
|
|
236
238
|
}
|
|
237
|
-
}
|
|
238
239
|
});
|
|
239
240
|
this.highScreen.forEach((v) => {
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
241
|
+
if (v.controlType === Enum.ControlType.Hidden) {
|
|
242
|
+
var tempObj = common.deepClone(v.searchObj);
|
|
243
|
+
if ((tempObj.searchValue1 && tempObj.searchValue1 !== '') || (tempObj.searchValue2 && tempObj.searchValue2 !== '')) {
|
|
244
|
+
if (isHandle(v.controlType)) {
|
|
245
|
+
tempObj.searchValue1 = getNewSearchValue(tempObj);
|
|
246
|
+
}
|
|
247
|
+
rtn.fields.push(tempObj);
|
|
248
|
+
}
|
|
247
249
|
}
|
|
248
|
-
}
|
|
249
250
|
});
|
|
250
251
|
return rtn;
|
|
251
|
-
|
|
252
|
+
},
|
|
252
253
|
//绑定联动参数组件
|
|
253
254
|
getRefFieldPara(refFieldNameArr) {
|
|
254
255
|
let submitData = {};
|
|
@@ -397,7 +398,7 @@ function hiddenHandle(item, model) {
|
|
|
397
398
|
}
|
|
398
399
|
}
|
|
399
400
|
}
|
|
400
|
-
function getAction(api,
|
|
401
|
+
function getAction(api, callback) {
|
|
401
402
|
request.postHandler(common.globalUri(), {
|
|
402
403
|
action: api
|
|
403
404
|
})
|
|
@@ -196,7 +196,13 @@ function loadSearchTableModel(source, searchModel, defaultSearchData, action, se
|
|
|
196
196
|
if (this.$vue && this.$vue.searchStrat && this.$vue.searchEnd) {
|
|
197
197
|
let searchTotal = this.$vue.searchEnd - this.$vue.searchStrat;
|
|
198
198
|
if (searchTotal > 0) {
|
|
199
|
-
|
|
199
|
+
if (data.indexOf('总耗时') > -1 || data.indexOf('總耗時') > -1) {
|
|
200
|
+
data = data + " " + searchTotal + " 毫秒";
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
data = data + " 总耗时 " + searchTotal + " 毫秒";
|
|
204
|
+
}
|
|
205
|
+
|
|
200
206
|
}
|
|
201
207
|
}
|
|
202
208
|
return data;
|
package/src/main.js
CHANGED
|
@@ -63,7 +63,7 @@ app.use(centaline, {
|
|
|
63
63
|
//authObject: '{token:"aplus eyJhbGciOiJIUzI1NiIsInppcCI6IkRFRiJ9.eNrEjjsOwjAQBe-ydVay1xvvOl3sJA2HiPIxElSIJBIIcXdAQEfPFK-YZt4Nlm2EChqtDafOYWqpRG6kxLoTxZhUTSRxHLUPH_DHfOmt5SDWt1gHScieHapNiol94q5pXYoNFJAvJ6isGHWmNMYVcBjWtyCr_iW2JZ93-fqPc8f18MwGIqFRCIO1GXmWGYd9npCZJ6N5JjYZ7g8AAAD__w.HgtNKtHWooj8c9Hy_vB8CfKq-qOeHMp0irnW0DfXtHo"}',
|
|
64
64
|
//oldToken: 'd92d4a3b-2274-42e8-96f0-100ffb579b6e',
|
|
65
65
|
//authObject: '{token:"1647-1802885825978044416",platform:"WEB"}',
|
|
66
|
-
authObject: '{EmpID:"
|
|
66
|
+
authObject: '{EmpID:"Token_7b4fbffd-3089-4925-87ed-bb85c501f81a",MachineCode:"7a216b39-84af-43bb-842b-07604ac37a10",SSO_Token:"SSOToken_7b4fbffd-3089-4925-87ed-bb85c501f81a",Platform:"IOS"}',
|
|
67
67
|
};
|
|
68
68
|
},
|
|
69
69
|
// 请求完成事件,可判断是否登录过期执行响应操作
|