centaline-data-driven 1.1.23 → 1.1.24
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/.vs/Centaline.Front_End.DataDriven/DesignTimeBuild/.dtbcache +0 -0
- package/.vs/Centaline.Front_End.DataDriven/v16/Server/sqlite3/db.lock +0 -0
- package/.vs/Centaline.Front_End.DataDriven/v16/Server/sqlite3/storage.ide +0 -0
- package/build/centaline/centaline.path.js +2 -0
- package/build/centaline/webpack.centaline.conf.js +5 -3
- package/build/utils.js +2 -1
- package/config/dev.env.js +5 -2
- package/obj/Centaline.Front_End.DataDriven.csproj.nuget.dgspec.json +73 -0
- package/obj/Centaline.Front_End.DataDriven.csproj.nuget.g.props +29 -0
- package/obj/Centaline.Front_End.DataDriven.csproj.nuget.g.targets +15 -0
- package/obj/Debug/netcoreapp2.1/Centaline.Front_End.DataDriven.AssemblyInfo.cs +23 -0
- package/obj/Debug/netcoreapp2.1/Centaline.Front_End.DataDriven.RazorAssemblyInfo.cs +20 -0
- package/obj/project.assets.json +11907 -0
- package/package.json +7 -5
- package/src/Detail.vue +28 -0
- package/src/Edit.vue +23 -130
- package/src/Form.vue +4 -5
- package/src/SearchList.vue +5 -4
- package/src/SearchTree.vue +55 -0
- package/src/assets/Mvr.png +0 -0
- package/src/assets/VR.png +0 -0
- package/src/assets/collection.png +0 -0
- package/src/assets/dian.png +0 -0
- package/src/assets/ewm.png +0 -0
- package/src/assets/image.png +0 -0
- package/src/assets/location.png +0 -0
- package/src/assets/max-fold.png +0 -0
- package/src/assets/max-open.png +0 -0
- package/src/assets/mero.png +0 -0
- package/src/assets/node-collapse.png +0 -0
- package/src/assets/node-expand.png +0 -0
- package/src/assets/video.png +0 -0
- package/src/assets//350/256/241/347/256/227/345/231/250.png +0 -0
- package/src/centaline/comfirm/src/comfirm.vue +2 -2
- package/src/centaline/css/common.css +33 -32
- package/src/centaline/css/max.css +145 -0
- package/src/centaline/dynamicBtn/src/dynamicBtn.vue +35 -4
- package/src/centaline/dynamicCheckbox/src/dynamicCheckbox.vue +1 -1
- package/src/centaline/dynamicDetail/index.js +11 -0
- package/src/centaline/dynamicDetail/src/dynamicDetail.vue +39 -0
- package/src/centaline/dynamicDetail/src/dynamicPropertyDetailOFI.vue +1283 -0
- package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +29 -0
- package/src/centaline/dynamicForm/src/dynamicForm.vue +25 -9
- package/src/centaline/dynamicForm/src/dynamicFormList.vue +2 -2
- package/src/centaline/dynamicForm/src/dynamicFormListTable.vue +27 -6
- package/src/centaline/dynamicHyperLink/index.js +1 -1
- package/src/centaline/dynamicPlaceHolder/index.js +1 -1
- package/src/centaline/dynamicSearchList/src/dynamicSearchList.vue +27 -6
- package/src/centaline/dynamicSearchList/src/dynamicSearchScreen.vue +10 -1
- package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +55 -33
- package/src/centaline/dynamicSearchList/src/dynamicTableStatistics.vue +41 -0
- package/src/centaline/dynamicSearchList/src/dynamicTableToolbar.vue +7 -4
- package/src/centaline/dynamicT/src/dynamicT.vue +18 -23
- package/src/centaline/dynamicTimeSelect/src/dynamicTimeSelect.vue +37 -3
- package/src/centaline/dynamicTree/index.js +11 -0
- package/src/centaline/dynamicTree/src/dynamicSearchTree.vue +66 -0
- package/src/centaline/dynamicTree/src/dynamicTree.vue +213 -0
- package/src/centaline/dynamicTree/src/dynamicTreeList.vue +65 -0
- package/src/centaline/loader/index.js +1 -2
- package/src/centaline/loader/src/ctl/Base.js +31 -2
- package/src/centaline/loader/src/ctl/Button.js +18 -1
- package/src/centaline/loader/src/ctl/ComboBoxWithTextBox.js +0 -8
- package/src/centaline/loader/src/ctl/Form.js +40 -7
- package/src/centaline/loader/src/ctl/FormList.js +6 -1
- package/src/centaline/loader/src/ctl/HyperLink.js +1 -1
- package/src/centaline/loader/src/ctl/Mo.js +1 -9
- package/src/centaline/loader/src/ctl/PlaceHolder.js +2 -2
- package/src/centaline/loader/src/ctl/Router.js +58 -1
- package/src/centaline/loader/src/ctl/SearchScreen.js +34 -2
- package/src/centaline/loader/src/ctl/SearchTable.js +25 -10
- package/src/centaline/loader/src/ctl/So.js +1 -9
- package/src/centaline/loader/src/ctl/Sos.js +2 -11
- package/src/centaline/loader/src/ctl/Tags.js +1 -9
- package/src/centaline/loader/src/ctl/TimeSelect.js +34 -7
- package/src/centaline/loader/src/ctl/Tree.js +154 -0
- package/src/centaline/loader/src/ctl/lib/Enum.js +12 -2
- package/src/centaline/loader/src/ctl/lib/LibFunction.js +8 -0
- package/src/centaline/loader/src/ctl.js +1 -0
- package/src/centaline/templateControls/src/dynamicTableCurrency.vue +13 -9
- package/src/main.js +3 -4
- package/src/router/index.js +11 -0
- package/wwwroot/static/centaline/centaline-data-driven.js +1 -7
- package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import common from '../../../common';
|
|
2
|
+
import Router from './Router';
|
|
3
|
+
import Vue from 'vue';
|
|
4
|
+
import Enum from './lib/Enum';
|
|
5
|
+
const tree = function (source, callBack, searchModel, defaultSearchData, resolve) {
|
|
6
|
+
var init = function (source) {
|
|
7
|
+
var rtn = {
|
|
8
|
+
searchModel: searchModel,
|
|
9
|
+
tableHeight: 350,
|
|
10
|
+
defaultSearchData: defaultSearchData,
|
|
11
|
+
modeltree: resolve,
|
|
12
|
+
$vue: null,
|
|
13
|
+
get source() {
|
|
14
|
+
return source;
|
|
15
|
+
},
|
|
16
|
+
set source(v) {
|
|
17
|
+
source = v;
|
|
18
|
+
}, get modeltree() {
|
|
19
|
+
var treedata = [];
|
|
20
|
+
source.content.rows.forEach(v => {
|
|
21
|
+
v.getLayoutOfSearch = rtn.rowRouterKey("getLayoutOfSearch");
|
|
22
|
+
v.getList = rtn.rowRouterKey("getList");
|
|
23
|
+
treedata.push(v);
|
|
24
|
+
});
|
|
25
|
+
return treedata;
|
|
26
|
+
}, _rowSelectRouter: null,
|
|
27
|
+
get rowSelectRouter() {
|
|
28
|
+
if (rtn._rowSelectRouter !== null) {
|
|
29
|
+
return rtn._rowSelectRouter;
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
rtn._rowSelectRouter = [];
|
|
33
|
+
if (source.content.rowSelectRouter) {
|
|
34
|
+
var router = Router(source.content.rowSelectRouter);
|
|
35
|
+
rtn._rowSelectRouter = router;
|
|
36
|
+
}
|
|
37
|
+
return rtn._rowSelectRouter;
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
_actionRouter: null,
|
|
41
|
+
get actionRouter() {
|
|
42
|
+
if (rtn._actionRouter !== null) {
|
|
43
|
+
return rtn._actionRouter;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
rtn._actionRouter = [];
|
|
47
|
+
if (source.content.actionRouters) {
|
|
48
|
+
source.content.actionRouters.forEach((v) => {
|
|
49
|
+
var router = Router(v);
|
|
50
|
+
//router.is = "ct-btn";
|
|
51
|
+
//router.attrs = { size: "mini" }
|
|
52
|
+
rtn._actionRouter.push(router);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return rtn._actionRouter;
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
_rowRouter: null,
|
|
59
|
+
get rowRouter() {
|
|
60
|
+
if (rtn._rowRouter !== null) {
|
|
61
|
+
return rtn._rowRouter;
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
rtn._rowRouter = [];
|
|
65
|
+
if (rtn.actionRouter) {
|
|
66
|
+
rtn.actionRouter.forEach((v) => {
|
|
67
|
+
if (v.show) {
|
|
68
|
+
rtn._rowRouter.push(v);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
return rtn._rowRouter;
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
rowRouterKey(key) {
|
|
76
|
+
var obj = { action: "" };
|
|
77
|
+
if (rtn.rowRouter) {
|
|
78
|
+
var rowRouter = rtn.rowRouter;
|
|
79
|
+
for (var i = 0; i < rowRouter.length; i++) {
|
|
80
|
+
if (rowRouter[i].id == key) {
|
|
81
|
+
obj = rowRouter[i];
|
|
82
|
+
break;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return obj;
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
searchData(fieldName1, _parentID, operation, searchDataType) {
|
|
89
|
+
var rtn = {
|
|
90
|
+
fields: []
|
|
91
|
+
};
|
|
92
|
+
rtn.fields.push({
|
|
93
|
+
"fieldName1": fieldName1,
|
|
94
|
+
"groupName": fieldName1,
|
|
95
|
+
"operation": operation || 0,
|
|
96
|
+
"searchDataType": searchDataType || 3,
|
|
97
|
+
"searchValue1": _parentID
|
|
98
|
+
});
|
|
99
|
+
return rtn;
|
|
100
|
+
},
|
|
101
|
+
getCurrentRowApiData(api, searchModel, callback) {
|
|
102
|
+
var self = this;
|
|
103
|
+
var para = searchModel ? searchModel : {};
|
|
104
|
+
|
|
105
|
+
Vue.prototype.$api.postHandler(common.globalUri(), {
|
|
106
|
+
action: api,
|
|
107
|
+
para: {
|
|
108
|
+
paramDataQuery: para
|
|
109
|
+
}
|
|
110
|
+
})
|
|
111
|
+
.then(function (response) {
|
|
112
|
+
if (response.rtnCode === Enum.ReturnCode.Successful) {
|
|
113
|
+
if (typeof callback !== 'undefined') {
|
|
114
|
+
callback(response.content);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
})
|
|
118
|
+
.catch((error) => {
|
|
119
|
+
console.error(error);
|
|
120
|
+
if (typeof callback !== 'undefined') {
|
|
121
|
+
callback();
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
},
|
|
125
|
+
};
|
|
126
|
+
return rtn;
|
|
127
|
+
};
|
|
128
|
+
if (typeof source === 'string') {
|
|
129
|
+
var apiData = searchModel ? searchModel.searchData : {};
|
|
130
|
+
Vue.prototype.$api.postHandler(common.globalUri(),
|
|
131
|
+
{
|
|
132
|
+
action: source,
|
|
133
|
+
para:
|
|
134
|
+
{
|
|
135
|
+
searchFields: apiData,
|
|
136
|
+
pageAttribute: { pageIndex: 1 },
|
|
137
|
+
flagSearch: true
|
|
138
|
+
}
|
|
139
|
+
}).then(
|
|
140
|
+
function (response) {
|
|
141
|
+
if (response.rtnCode === Enum.ReturnCode.Successful) {
|
|
142
|
+
var rtn = init(response);
|
|
143
|
+
if (callBack) {
|
|
144
|
+
callBack(rtn, resolve);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
);
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
return init(source);
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
export default tree;
|
|
@@ -205,7 +205,12 @@ const Enum = {
|
|
|
205
205
|
/// <summary>
|
|
206
206
|
/// 占位控件
|
|
207
207
|
/// </summary>
|
|
208
|
-
PlaceHolder : 40
|
|
208
|
+
PlaceHolder : 40,
|
|
209
|
+
|
|
210
|
+
/// <summary>
|
|
211
|
+
/// 敏感数据小眼睛控件
|
|
212
|
+
/// </summary>
|
|
213
|
+
SensitiveEye : 41,
|
|
209
214
|
},
|
|
210
215
|
|
|
211
216
|
//返回状态码
|
|
@@ -432,7 +437,12 @@ const Enum = {
|
|
|
432
437
|
/// <summary>
|
|
433
438
|
/// 链接
|
|
434
439
|
/// </summary>
|
|
435
|
-
HyperLink : 2
|
|
440
|
+
HyperLink : 2,
|
|
441
|
+
|
|
442
|
+
/// <summary>
|
|
443
|
+
/// 下拉
|
|
444
|
+
/// </summary>
|
|
445
|
+
Dropdown : 3
|
|
436
446
|
},
|
|
437
447
|
|
|
438
448
|
PageStyle:
|
|
@@ -32,6 +32,7 @@ const LibFunction = {
|
|
|
32
32
|
install(Vue) {
|
|
33
33
|
},
|
|
34
34
|
GetControl(field, source, showLabel, isList) {
|
|
35
|
+
|
|
35
36
|
let item;
|
|
36
37
|
field.isList = isList;
|
|
37
38
|
if (typeof field.required === 'undefined') {
|
|
@@ -213,21 +214,28 @@ const LibFunction = {
|
|
|
213
214
|
moreActionRouter = LibFunction.getRouter(source.actionRouters, field.fieldName1);
|
|
214
215
|
item = Button(field, moreActionRouter);
|
|
215
216
|
item.is = 'ct-btn';
|
|
217
|
+
// item.attrs.class=item.attrs.class+' max-btn-gray ';
|
|
216
218
|
break;
|
|
217
219
|
case Enum.ControlType.ButtonSearch://查询按钮
|
|
218
220
|
item = Button(field);
|
|
219
221
|
item.is = 'ct-btn';
|
|
220
222
|
item.action = 'search';
|
|
223
|
+
item.attrs.class=item.attrs.class+' max-search-btn ';
|
|
221
224
|
break;
|
|
222
225
|
case Enum.ControlType.ButtonAdvancedSearch://高级查询按钮
|
|
223
226
|
item = Button(field);
|
|
224
227
|
item.is = 'ct-btn';
|
|
225
228
|
item.action = 'showHigh';
|
|
229
|
+
item.attrs.class=item.attrs.class+' max-search-btn ';
|
|
230
|
+
item.icon='max-open';
|
|
226
231
|
break;
|
|
227
232
|
case Enum.ControlType.ButtonReset://重置查询按钮
|
|
228
233
|
item = Button(field);
|
|
229
234
|
item.is = 'ct-btn';
|
|
230
235
|
item.action = 'reset';
|
|
236
|
+
item.bgColor='#519DA6';
|
|
237
|
+
item.borderColor='#519DA6';
|
|
238
|
+
item.attrs.class=item.attrs.class+' max-reset-btn ';
|
|
231
239
|
break;
|
|
232
240
|
case Enum.ControlType.File://文件
|
|
233
241
|
var router = source.actionRouters.find((v1) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div
|
|
2
|
+
<div :class="isOperationalColumn?'subdiv_allinline':''" v-if="isShowLabel">
|
|
3
3
|
<img v-if="router.imgUrl" class="ct-tablecurrencyImg ct-tablecurrencyItem" :src="router.imgUrl" :title="router.label" @click="clickHandler($event);" />
|
|
4
|
-
<a v-else href="javascript:void(0);" class="ct-
|
|
4
|
+
<a v-else href="javascript:void(0);" class="ct-tablecurrencyItem" @click="clickHandler($event)">
|
|
5
5
|
{{label}}
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
|
@@ -22,6 +22,14 @@
|
|
|
22
22
|
computed: {
|
|
23
23
|
label: function () {
|
|
24
24
|
return (typeof this.colValue === "undefined" || this.colValue === '') ? this.router.label : this.colValue
|
|
25
|
+
},
|
|
26
|
+
isShowLabel:function()
|
|
27
|
+
{
|
|
28
|
+
if(this.label||this.router.imgUrl)
|
|
29
|
+
{
|
|
30
|
+
return true
|
|
31
|
+
}
|
|
32
|
+
return false;
|
|
25
33
|
}
|
|
26
34
|
},
|
|
27
35
|
data() {
|
|
@@ -36,14 +44,10 @@
|
|
|
36
44
|
}
|
|
37
45
|
</script>
|
|
38
46
|
<style>
|
|
39
|
-
.ct-tablecurrencyA {
|
|
40
|
-
text-decoration: none;
|
|
41
|
-
padding-left: 2px;
|
|
42
|
-
padding-right: 2px;
|
|
43
|
-
}
|
|
44
47
|
.ct-tablecurrencyItem {
|
|
45
|
-
|
|
46
|
-
padding-
|
|
48
|
+
text-decoration: none;
|
|
49
|
+
padding-left: 0px;
|
|
50
|
+
padding-right: 4px;
|
|
47
51
|
cursor: pointer;
|
|
48
52
|
}
|
|
49
53
|
.ct-tablecurrencyImg {
|
package/src/main.js
CHANGED
|
@@ -12,7 +12,7 @@ Vue.use(ElementUI, { size: 'mini'});
|
|
|
12
12
|
// 关闭生产模式下给出的提示
|
|
13
13
|
Vue.config.productionTip = false;
|
|
14
14
|
Vue.use(centaline, {
|
|
15
|
-
baseUrl:
|
|
15
|
+
baseUrl: process.env.BASE_API,
|
|
16
16
|
zindex: 999,
|
|
17
17
|
showRequestErrorMessage: true,
|
|
18
18
|
handler: {
|
|
@@ -27,9 +27,8 @@ Vue.use(centaline, {
|
|
|
27
27
|
// 获取请求头
|
|
28
28
|
getRequestHeaders: function () {
|
|
29
29
|
return {
|
|
30
|
-
oldToken: '
|
|
31
|
-
estateId: '
|
|
32
|
-
Authorization:'Bearer eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjQyMjVlZDY0LWE3M2YtNGM5Mi1iMDM5LWY1OTU0Y2UwM2UyNCJ9.x4Q_nTNVya5n-KnOCTkGSWcgaGA0zIEA5B72sxrm3JUQ-IEnouBEavIF2-KKbzYu-VZZtHd35KT_spPUrpZ2rA'
|
|
30
|
+
oldToken: 'faefb8a4-f885-4f49-a0fc-dc6c0943bf4a',
|
|
31
|
+
estateId: '20210729104021C49F04B55C50F6AF58',
|
|
33
32
|
};
|
|
34
33
|
},
|
|
35
34
|
// 请求完成事件,可判断是否登录过期执行响应操作
|
package/src/router/index.js
CHANGED
|
@@ -4,6 +4,8 @@ import Edit from '@/Edit'
|
|
|
4
4
|
import Search from '@/SearchList'
|
|
5
5
|
import Form from '@/Form'
|
|
6
6
|
import Tabs from '@/Tabs'
|
|
7
|
+
import Detail from '@/Detail'
|
|
8
|
+
import Tree from '@/SearchTree'
|
|
7
9
|
|
|
8
10
|
Vue.use(Router)
|
|
9
11
|
|
|
@@ -28,6 +30,15 @@ export default new Router({
|
|
|
28
30
|
path: '/Tabs',
|
|
29
31
|
name: 'Tabs',
|
|
30
32
|
component: Tabs
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
path: '/Detail',
|
|
36
|
+
name: 'Detail',
|
|
37
|
+
component: Detail
|
|
38
|
+
}, {
|
|
39
|
+
path: '/SearchTree',
|
|
40
|
+
name: 'Tree',
|
|
41
|
+
component: Tree
|
|
31
42
|
}
|
|
32
43
|
]
|
|
33
44
|
})
|