centaline-data-driven 1.4.13 → 1.4.14
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 +1 -1
- package/src/SearchList.vue +4 -4
- package/src/centaline/css/max.css +3 -0
- package/src/centaline/dynamicT/src/dynamicT.vue +61 -4
- package/src/centaline/loader/src/ctl/Base.js +9 -0
- package/src/centaline/loader/src/ctl/Sos.js +0 -6
- package/src/centaline/loader/src/ctl/T.js +24 -0
- package/wwwroot/static/centaline/centaline-data-driven.js +2 -2
- package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
- package/centaline-data-driven-1.4.12.tgz +0 -0
package/package.json
CHANGED
package/src/SearchList.vue
CHANGED
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
:searchStatsApi="'/ProfileWorklistList/getListStats'">
|
|
12
12
|
</ct-searchlist> -->
|
|
13
13
|
|
|
14
|
-
<ct-searchlist
|
|
14
|
+
<!-- <ct-searchlist
|
|
15
15
|
:searchConditionApi="'/api/distribution/distributionList/getLayoutOfSearch'"
|
|
16
16
|
:searchDataApi="'/api/distribution/distributionList'">
|
|
17
|
-
</ct-searchlist>
|
|
17
|
+
</ct-searchlist> -->
|
|
18
18
|
|
|
19
19
|
<!-- <ct-searchlist
|
|
20
20
|
:searchCategoryApi="'/PropertyPublishList/getLayoutOfSearchCategory'"
|
|
@@ -22,11 +22,11 @@
|
|
|
22
22
|
:searchDataApi="'/PropertyPublishList/getListOfSearchModelForRET'">
|
|
23
23
|
</ct-searchlist> -->
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
<ct-searchlist :searchConditionApi="'/PropertyRETList/getLayoutOfSearch'"
|
|
26
26
|
:searchDataApi="'/PropertyRETList/getListOfSearchModel'"
|
|
27
27
|
:searchCategoryApi="'/PropertyRETList/getLayoutOfSearchCategory'"
|
|
28
28
|
:searchStatsApi="'/PropertyRETList/getListStats'">
|
|
29
|
-
</ct-searchlist>
|
|
29
|
+
</ct-searchlist>
|
|
30
30
|
|
|
31
31
|
<!-- <ct-searchlist :searchConditionApi="'/PropertyOFIList/getLayoutOfSearch'"
|
|
32
32
|
:searchDataApi="'/PropertyOFIList/getListOfSearchModel'"
|
|
@@ -202,6 +202,9 @@
|
|
|
202
202
|
.cover-list-item .el-checkbox__input.is-checked + .el-checkbox__label,.cover-list-item .el-checkbox__input.is-checked .el-checkbox__inner{
|
|
203
203
|
color: #409eff;
|
|
204
204
|
}
|
|
205
|
+
.ct-inputNumber input.el-range-input {
|
|
206
|
+
color: #409eff!important;
|
|
207
|
+
}
|
|
205
208
|
.cover-list-item .el-checkbox__input.is-checked .el-checkbox__inner{
|
|
206
209
|
background-color:#409eff;
|
|
207
210
|
border-color: #409eff;
|
|
@@ -7,10 +7,32 @@
|
|
|
7
7
|
<div v-if="model.showLabel && model.label" class="el-input-group__prepend field-label-div max-input-group" :class="[model.labelClass]">
|
|
8
8
|
<span>{{model.label}}</span>
|
|
9
9
|
</div>
|
|
10
|
+
|
|
10
11
|
<div ref="highlights" v-if="model.forbiddenWords" class="backdrop" :style="{width:forbiddenWordsWidth+'px',height:forbiddenWordsHeight+'px',left:forbiddenWordsLeft+'px',top:forbiddenWordsTop+'px'}">
|
|
11
12
|
<div class="highlights" v-html="forbiddenWordsValue"></div>
|
|
12
13
|
</div>
|
|
13
|
-
|
|
14
|
+
|
|
15
|
+
<el-popover v-if="model.autoFill && model.paramName" placement="bottom-start" v-model="showDrop" :trigger="'manual'" class="autoFill">
|
|
16
|
+
<div>
|
|
17
|
+
<ctSelectOptionVertical :model="model" @click="selectOption($event)"></ctSelectOptionVertical>
|
|
18
|
+
</div>
|
|
19
|
+
<el-input slot="reference" ref="input" :title="model.lock?model.value:''" :type="model.inputType" v-model="model.value" v-bind="model.attrs"
|
|
20
|
+
@input="inputHandler($event);showDropHandle();isShowClear();applyHighlights()" @change="changeHandler($event)"
|
|
21
|
+
class="ct-flex-div-input max-input" :class="[model.showLabel?'showLabel':'',!valid?'inputError':'',model.forbiddenWords?'inputHighlights':'']"
|
|
22
|
+
:disabled="model.lock" :rows="model.rows" :resize="model.forbiddenWords?'none':'vertical'"
|
|
23
|
+
:readonly="model.readonly" :show-password="model.isPassword" autocomplete="on" :maxlength="model.max" :show-word-limit="model.showWordLimit"
|
|
24
|
+
@keyup.enter.native="search()" style="z-index: 3;background-color: transparent;">
|
|
25
|
+
<span slot="suffix" v-if="model.unitName" class="ct-unitname" :class="showClear?'unitName-20':'unitName-0'">{{model.unitName}}</span>
|
|
26
|
+
|
|
27
|
+
<span slot="suffix" class="el-input__suffix el-input--mini is-show-Span" v-if="!model.isPassword&&showClear" :class="model.unitName?'ct-right-10':'ct-right-0'">
|
|
28
|
+
<span class="el-input__suffix-inner ct-close">
|
|
29
|
+
<i class="el-select__caret el-input__icon el-icon-circle-close is-show-close" @click="clearClickHandle($event)"></i>
|
|
30
|
+
</span>
|
|
31
|
+
</span>
|
|
32
|
+
</el-input>
|
|
33
|
+
</el-popover>
|
|
34
|
+
|
|
35
|
+
<el-input v-else ref="input" :title="model.lock?model.value:''" :type="model.inputType" v-model="model.value" v-bind="model.attrs" @input="inputHandler($event);isShowClear();applyHighlights()" @change="changeHandler($event)"
|
|
14
36
|
class="ct-flex-div-input max-input" :class="[model.showLabel?'showLabel':'',!valid?'inputError':'',model.forbiddenWords?'inputHighlights':'']"
|
|
15
37
|
:disabled="model.lock" :rows="model.rows" :resize="model.forbiddenWords?'none':'vertical'"
|
|
16
38
|
:readonly="model.readonly" :show-password="model.isPassword" autocomplete="on" :maxlength="model.max" :show-word-limit="model.showWordLimit"
|
|
@@ -22,10 +44,10 @@
|
|
|
22
44
|
<i class="el-select__caret el-input__icon el-icon-circle-close is-show-close" @click="clearClickHandle($event)"></i>
|
|
23
45
|
</span>
|
|
24
46
|
</span>
|
|
25
|
-
</el-input>
|
|
47
|
+
</el-input>
|
|
26
48
|
<span v-if="this.minText" :style="{left: minTextLeft+'px'}" style="color: #909399;background: #FFF;position: absolute;font-size: 12px;bottom: 5px;z-index: 3;">{{this.minText}}</span>
|
|
27
49
|
<span v-if="model.sufLabel" class="spanMessage ct-flex-div-span">{{model.sufLabel}}</span>
|
|
28
|
-
<ctQuickInputSos v-if="!model.lock && model.paramName" class="ct-flex-div-span" :pn="model.paramName" :action="api" :flagNew="true" @click="quickSelect"></ctQuickInputSos>
|
|
50
|
+
<ctQuickInputSos v-if="!model.lock && model.paramName && !model.autoFill" class="ct-flex-div-span" :pn="model.paramName" :action="api" :flagNew="true" @click="quickSelect"></ctQuickInputSos>
|
|
29
51
|
|
|
30
52
|
<div v-if="model.moreActionRouter && !model.lock">
|
|
31
53
|
<img v-if="model.moreActionRouter.imgUrl" class="ct-tablecurrencyImg ct-tablecurrencyItem"
|
|
@@ -46,14 +68,17 @@
|
|
|
46
68
|
<script>
|
|
47
69
|
import dynamicElement from '../../mixins/dynamicElement';
|
|
48
70
|
import ctQuickInputSos from '../../quickInputSos/src/quickInput'
|
|
71
|
+
import ctSelectOptionVertical from '../../selectOption/src/selectOptionVertical'
|
|
49
72
|
export default {
|
|
50
73
|
name: 'ct-text',
|
|
51
74
|
mixins: [dynamicElement],
|
|
52
75
|
components: {
|
|
53
76
|
'ctQuickInputSos': ctQuickInputSos,
|
|
77
|
+
'ctSelectOptionVertical': ctSelectOptionVertical
|
|
54
78
|
},
|
|
55
79
|
props: {
|
|
56
|
-
vmodel: Object
|
|
80
|
+
vmodel: Object,
|
|
81
|
+
api: String,
|
|
57
82
|
},
|
|
58
83
|
data() {
|
|
59
84
|
return {
|
|
@@ -65,6 +90,8 @@
|
|
|
65
90
|
forbiddenWordsHeight:0,
|
|
66
91
|
forbiddenWordsLeft:0,
|
|
67
92
|
forbiddenWordsTop:0,
|
|
93
|
+
showDrop:false,
|
|
94
|
+
searchText:'',
|
|
68
95
|
}
|
|
69
96
|
},
|
|
70
97
|
created() {
|
|
@@ -103,11 +130,38 @@
|
|
|
103
130
|
mouseOutHandle: function () {
|
|
104
131
|
this.$set(this, 'showClear', false);
|
|
105
132
|
},
|
|
133
|
+
showDropHandle:function(){
|
|
134
|
+
var self = this;
|
|
135
|
+
if (this.model.value === undefined || this.model.value === null || this.model.value === '') {
|
|
136
|
+
this.showDrop=false;
|
|
137
|
+
}
|
|
138
|
+
else{
|
|
139
|
+
if (this.model.value !== this.searchText) {
|
|
140
|
+
setTimeout(function () {
|
|
141
|
+
self.searchText=self.model.value;
|
|
142
|
+
self.model.getOptions(self.api, self.model.value,function(){
|
|
143
|
+
if(self.model.options && self.model.options.length>0){
|
|
144
|
+
self.showDrop=true;
|
|
145
|
+
}
|
|
146
|
+
else{
|
|
147
|
+
self.showDrop=false;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
}, self.model.searchTick);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
},
|
|
154
|
+
selectOption(value) {
|
|
155
|
+
this.showDrop=false;
|
|
156
|
+
this.model.value = value;
|
|
157
|
+
this.search();
|
|
158
|
+
},
|
|
106
159
|
clearClickHandle: function (event) {
|
|
107
160
|
this.model.value = '';
|
|
108
161
|
this.inputHandler(this.model.value);
|
|
109
162
|
this.changeHandler(this.model.value);
|
|
110
163
|
this.isShowClear();
|
|
164
|
+
this.showDropHandle();
|
|
111
165
|
event.stopPropagation();
|
|
112
166
|
},
|
|
113
167
|
isShowClear() {
|
|
@@ -228,4 +282,7 @@
|
|
|
228
282
|
padding: 5px 15px 5px 15px;
|
|
229
283
|
line-height: 1.5;
|
|
230
284
|
}
|
|
285
|
+
.autoFill{
|
|
286
|
+
width: 100%;
|
|
287
|
+
}
|
|
231
288
|
</style>
|
|
@@ -307,6 +307,15 @@ const Base = function (source) {
|
|
|
307
307
|
get joinChar() {
|
|
308
308
|
return source.joinChar;
|
|
309
309
|
},
|
|
310
|
+
get autoFill() {
|
|
311
|
+
return source.autoFill;
|
|
312
|
+
},
|
|
313
|
+
get searchTick() {
|
|
314
|
+
return parseInt(source.searchTick) || 250;
|
|
315
|
+
},
|
|
316
|
+
set searchTick(v) {
|
|
317
|
+
source.searchTick = v;
|
|
318
|
+
},
|
|
310
319
|
};
|
|
311
320
|
|
|
312
321
|
return rtn;
|
|
@@ -79,12 +79,6 @@ const Sos = function (source, moreActionRouter) {
|
|
|
79
79
|
set clearable(v) {
|
|
80
80
|
source.clear = v;
|
|
81
81
|
},
|
|
82
|
-
get searchTick() {
|
|
83
|
-
return parseInt(source.searchTick) || 250;
|
|
84
|
-
},
|
|
85
|
-
set searchTick(v) {
|
|
86
|
-
source.searchTick = v;
|
|
87
|
-
},
|
|
88
82
|
getOptions(paramsAction,key) {
|
|
89
83
|
var self = this;
|
|
90
84
|
var apiAddrs = paramsAction || this.api;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import base from '../../index';
|
|
2
2
|
import Base from './Base';
|
|
3
3
|
import valid from '../../../validate/index';
|
|
4
|
+
import common from '../../../common';
|
|
5
|
+
import Vue from 'vue';
|
|
4
6
|
const T = function (source, inputType, readonly, isPassword,moreActionRouter) {
|
|
5
7
|
var rtn = {
|
|
6
8
|
optionAttrs: {
|
|
@@ -62,6 +64,28 @@ const T = function (source, inputType, readonly, isPassword,moreActionRouter) {
|
|
|
62
64
|
return false;
|
|
63
65
|
},
|
|
64
66
|
moreActionRouter: moreActionRouter,//更多高级查询
|
|
67
|
+
options: [{ code: source.code1, name: source.code1 }],
|
|
68
|
+
getOptions(paramsAction,key,back) {
|
|
69
|
+
var self = this;
|
|
70
|
+
var apiAddrs = paramsAction || this.api;
|
|
71
|
+
var params = {
|
|
72
|
+
action: apiAddrs,
|
|
73
|
+
para: {
|
|
74
|
+
paramName: self.paramName,
|
|
75
|
+
parentValue: rtn.getFormParentFieldPara(),
|
|
76
|
+
key: key,
|
|
77
|
+
extraData: rtn.getFormRefFieldPara()
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
Vue.prototype.$api.postHandler(common.globalUri(), params).then((response) => {
|
|
81
|
+
if (response.rtnCode === 200) {
|
|
82
|
+
self.options = response.content;
|
|
83
|
+
if(back){
|
|
84
|
+
back();
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
},
|
|
65
89
|
};
|
|
66
90
|
rtn = base.copy(Base(source), rtn);
|
|
67
91
|
rtn = base.copy(rtn, valid.Init(rtn));
|