centaline-data-driven 1.2.42 → 1.2.45

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": "centaline-data-driven",
3
- "version": "1.2.42",
3
+ "version": "1.2.45",
4
4
  "description": "ccai",
5
5
  "author": "hjc <3226136347@qq.com>",
6
6
  "private": false,
@@ -1,9 +1,11 @@
1
1
  <template>
2
- <div id="app-search" style="height:100%;position: fixed;">
2
+ <div id="app-search" style="width:100%;height:100%;position: fixed;">
3
3
  <!-- <ct-searchlist :searchConditionApi="'/api/third-dept-tran/transaction-workflow/getLayoutOfSearch'" :searchDataApi="'/api/third-dept-tran/transaction-workflow/list'"></ct-searchlist> -->
4
4
 
5
5
  <!-- <ct-searchlist :searchConditionApi="'/PropertyRETList/getLayoutOfSearch'" :searchDataApi="'/PropertyRETList/getListOfSearchModel'" :searchCategoryApi="'/PropertyRETList/getLayoutOfSearchCategory'"></ct-searchlist> -->
6
- <!-- <ct-searchlist :searchConditionApi="'/PropertyPublishLogList/getLayoutOfSearch'" :searchDataApi="'/PropertyPublishLogList/getListOfSearchModel'"></ct-searchlist> -->
6
+
7
+ <!-- <ct-searchlist :searchConditionApi="'/cache/getLayoutOfSearchForCache'"
8
+ :searchDataApi="'/cache/getListOfSearchModelForCache'"></ct-searchlist> -->
7
9
 
8
10
  <ct-searchlist :searchConditionApi="'/PropertyRETList/getLayoutOfSearch'"
9
11
  :searchDataApi="'/PropertyRETList/getListOfSearchModel'"
@@ -205,7 +205,6 @@ const common = {
205
205
  * @desc 打开弹窗
206
206
  */
207
207
  openDialog(vmodel) {
208
-
209
208
  //this.dialogList.List.push(vmodel);
210
209
  this.dialogList.addDialog(vmodel);
211
210
  },
@@ -216,7 +215,6 @@ const common = {
216
215
  * @desc 关闭指定弹窗
217
216
  */
218
217
  closeDialog(vmodel) {
219
-
220
218
  if (vmodel) {
221
219
  if (vmodel.name === 'ct-comfirm' || vmodel.$options.name === 'ctDialog' || vmodel.$options.name === 'ct-dialog') {
222
220
  //vmodel.dialogTableVisible = false;
@@ -95,6 +95,9 @@ html {
95
95
  .ct-close{
96
96
  cursor: pointer;
97
97
  }
98
+ .cursor{
99
+ cursor: pointer !important;
100
+ }
98
101
  .ct-so .ct-close > .el-select__caret.is-show-close:hover, .ct-tags .ct-close > .el-select__caret.is-show-close:hover {
99
102
  color: #909399;
100
103
  }
@@ -795,3 +798,6 @@ html {
795
798
  .el-radio__input.is-checked + .el-radio__label {
796
799
  color: #409eff;
797
800
  }
801
+ .el-input-group{
802
+ line-height: 26px;
803
+ }
@@ -208,7 +208,7 @@
208
208
  }
209
209
  .ct-Seg.ct-Seg-mini .ct-radios, .ct-Seg.ct-Seg-mini .ct-radios .el-radio__label {
210
210
  min-height: initial;
211
- line-height: initial;
211
+ line-height: 26px;
212
212
  }
213
213
  .el-input-group__append, .el-input-group__prepend {
214
214
  color: #666;
@@ -45,7 +45,7 @@
45
45
  document.addEventListener("touchmove", mo, false);//禁止页面滑动
46
46
  }
47
47
  },
48
- deleteDialog(model) {
48
+ deleteDialog(model) {
49
49
  model.dialogTableVisible = false;
50
50
  //改成删除
51
51
  let index = this.List.findIndex(v => {
@@ -27,7 +27,7 @@
27
27
  :class="model.lock ? 'ct-is-disabled' : ''" :disabled="model.lock" @keyup.enter="search()"/>
28
28
  </div>
29
29
  <span class="el-input__suffix el-input--mini" v-if="showClear.input2">
30
- <span class="el-input__suffix-inner ct-close" style="display: flex;">
30
+ <span class="el-input__suffix-inner ct-close">
31
31
  <i class="el-select__caret el-input__icon el-icon-circle-close is-show-close" @click="clearClickHandle($event,'input2')"></i>
32
32
  </span>
33
33
  </span>
@@ -1,19 +1,28 @@
1
1
  <template>
2
- <div class="ct-search-list" :style="searchListStyle" :class="{'domDisabled':pageDisabled}">
3
- <div slot="header" class="clearfix" v-if="typeof title !== 'undefined' && showTitle">
4
- <span style="font-weight:bold">{{title}}</span>
5
- </div>
6
- <ct-searchcategory v-if="searchCategoryApi" ref="category" :api="searchCategoryApi" @loadedCategory="categoryLoaded"
7
- @changeCategory="categorychange" ></ct-searchcategory>
2
+ <div ref="main" style="width: 100%;height: 100%;display: flex;" :class="{'domDisabled':pageDisabled}">
3
+ <div class="ct-search-list" :style="{'height': pageHeight? pageHeight:'100%','width':searchWidth?searchWidth+'px':'100%'}" >
4
+ <div slot="header" class="clearfix" v-if="typeof title !== 'undefined' && showTitle">
5
+ <span style="font-weight:bold">{{title}}</span>
6
+ </div>
7
+ <ct-searchcategory v-if="searchCategoryApi" ref="category" :api="searchCategoryApi" @loadedCategory="categoryLoaded"
8
+ @changeCategory="categorychange" ></ct-searchcategory>
8
9
 
9
- <ct-searchscreen ref="screen" :api="searchConditionApi" :key="reloadKeyScreen"
10
- @loaded="screenLoaded" :screenPara="screenPara"
11
- :categoryLoaded="loaded.categoryLoaded" @search="search()"
12
- @showTitle="showTitleScreenHandler"></ct-searchscreen>
10
+ <ct-searchscreen ref="screen" :api="searchConditionApi" :key="reloadKeyScreen"
11
+ @loaded="screenLoaded" :screenPara="screenPara"
12
+ :categoryLoaded="loaded.categoryLoaded" @search="search()"
13
+ @showTitle="showTitleScreenHandler"></ct-searchscreen>
13
14
 
14
- <ct-searchtable ref="table" :api="searchDataApi" :searchStatsApi="searchStatsApi" :from="from"
15
- @toolbarClick="toolbarClickHandler" @refreshParent="refreshParentHandler" :key="reloadKeyTable" @searchComplate="searchComplate()"
16
- @showTitle="showTitleHandler"></ct-searchtable>
15
+ <ct-searchtable ref="table" :api="searchDataApi" :searchStatsApi="searchStatsApi" :from="from" @loaded="tableLoaded"
16
+ @toolbarClick="toolbarClickHandler" @refreshParent="refreshParentHandler" :key="reloadKeyTable" @searchComplate="searchComplate()"
17
+ @showTitle="showTitleHandler"></ct-searchtable>
18
+ </div>
19
+ <div v-if="flagSideBar"
20
+ :style="{'height': pageHeight? pageHeight:'100%','width':sideBarWidth+'px',right:this.sideBarRight+'px'}"
21
+ class="sidebar">
22
+ <div>1111111111111111111111111111111111</div>
23
+ <ct-SearchSideMenu :sideBarMenuRight="sideBarMenuRight" :sideBarSide="sideBarSide"
24
+ @sideMenuClickHandler="sideMenuClickHandler"></ct-SearchSideMenu>
25
+ </div>
17
26
  </div>
18
27
  </template>
19
28
  <script>
@@ -21,6 +30,7 @@
21
30
  import dynamicSearchCategory from './dynamicSearchCategory.vue';
22
31
  import dynamicSearchScreen from './dynamicSearchScreen.vue';
23
32
  import dynamicSearchTable from './dynamicSearchTable.vue';
33
+ import dynamicSearchSideMenu from './dynamicSearchSideMenu.vue';
24
34
  import progress from '../../progress/src/progress.vue';
25
35
  export default {
26
36
  name: 'ct-searchlist',
@@ -29,7 +39,8 @@
29
39
  'ct-searchscreen': dynamicSearchScreen,
30
40
  'ct-searchtable': dynamicSearchTable,
31
41
  'ct-progress': progress,
32
- 'ct-searchcategory': dynamicSearchCategory
42
+ 'ct-searchcategory': dynamicSearchCategory,
43
+ 'ct-SearchSideMenu': dynamicSearchSideMenu
33
44
  },
34
45
  props: {
35
46
  vmodel: Object,
@@ -55,12 +66,6 @@
55
66
  }
56
67
  },
57
68
  computed: {
58
- searchListStyle: function() {
59
- if (this.pageHeight) {
60
- return { 'height': this.pageHeight };
61
- }
62
- return {};
63
- },
64
69
  },
65
70
  data() {
66
71
  return {
@@ -77,6 +82,14 @@
77
82
  reloadKeyTable:'t0',
78
83
  isReload:false,
79
84
  pageDisabled:false,
85
+
86
+ flagSideBar:false,
87
+ flagDefaultDisplaySideBar:false,
88
+ sideBarWidth:0,
89
+ searchWidth:0,
90
+ sideBarRight:0,
91
+ sideBarMenuRight:0,
92
+ sideBarSide:'',
80
93
  }
81
94
  },
82
95
  methods: {
@@ -108,7 +121,24 @@
108
121
 
109
122
  this.$refs.table.loadStats();
110
123
  },
111
- searchComplate() {
124
+ tableLoaded(table) {
125
+ if(table.model.listData.length>0){
126
+ this.flagSideBar=table.model.flagSideBar;
127
+ this.flagDefaultDisplaySideBar=table.model.flagDefaultDisplaySideBar;
128
+ this.sideBarWidth=table.model.sideBarWidth;
129
+ if(this.flagSideBar){
130
+ this.searchWidth=this.$refs.main.clientWidth-this.sideBarWidth;
131
+ this.sideBarMenuRight=this.sideBarWidth-2;
132
+ }
133
+ if(this.flagDefaultDisplaySideBar){
134
+ this.sideBarSide='right';
135
+ }
136
+ else{
137
+ this.sideBarSide='left';
138
+ }
139
+ }
140
+ },
141
+ searchComplate(table) {
112
142
  this.pageDisabled=false;
113
143
  },
114
144
  toolbarClickHandler(field, submitData) {
@@ -137,6 +167,36 @@
137
167
  this.showTitle=this.$refs.screen.model.flagShowTitle;
138
168
  }
139
169
  },
170
+ sideMenuClickHandler(v) {
171
+ if(v=='right'){
172
+ this.sideBarSide ='left';
173
+ this.sideBarRight=-this.sideBarWidth;
174
+ this.searchWidth=0;
175
+ this.sideBarMenuRight=0;
176
+ }
177
+ else if(v=='left'){
178
+ this.sideBarSide ='right';
179
+ this.sideBarRight=0;
180
+ this.searchWidth=this.$refs.main.clientWidth-this.sideBarWidth;
181
+ this.sideBarMenuRight=this.sideBarWidth-2;
182
+ }
183
+ },
140
184
  }
141
185
  }
142
186
  </script>
187
+ <style lang="scss" scoped>
188
+ .sidebar {
189
+ z-index: 1000;
190
+ top: -1px;
191
+ bottom: -1px;
192
+ padding: 0px;
193
+ width: auto;
194
+ background-color: #fff;
195
+ -webkit-background-clip: padding-box;
196
+ background-clip: padding-box;
197
+ border: 1px solid #ccc;
198
+ border: 1px solid rgba(0, 0, 0, .15);
199
+ -webkit-box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
200
+ box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
201
+ }
202
+ </style>
@@ -0,0 +1,59 @@
1
+ <template>
2
+ <div class="searchSideMenu toggler" :style="{right:sideBarMenuRight+'px'}" @click="clickHandler()" >
3
+ <span class="el-icon-arrow-right" v-show="side=='right'"></span>
4
+ <span class="el-icon-arrow-left" v-show="side=='left'"></span>
5
+ </div>
6
+ </template>
7
+ <script>
8
+ export default {
9
+ name: 'ct-SearchSideMenu',
10
+ props: {
11
+ sideBarMenuRight: Number,
12
+ sideBarSide: String,
13
+ },
14
+ data() {
15
+ return {
16
+ side:'right',
17
+ }
18
+ },
19
+ created() {
20
+ if(this.sideBarSide){
21
+ this.side = this.sideBarSide;
22
+ }
23
+ },
24
+ methods: {
25
+ clickHandler() {
26
+ let v=this.side;
27
+ if(v=='right')this.side ='left';
28
+ if(v=='left')this.side ='right';
29
+ this.$emit('sideMenuClickHandler',v);
30
+ },
31
+ }
32
+ }
33
+ </script>
34
+ <style lang="scss" scoped>
35
+ .toggler {
36
+ -webkit-background-clip: padding-box;
37
+ background-clip: padding-box;
38
+ border: 1px solid rgba(0, 0, 0, .15);
39
+ width: 15px;
40
+ height: 48px;
41
+ position: absolute;
42
+ top: 45%;
43
+ cursor: pointer;
44
+ background-color: #fff;
45
+ }
46
+ .toggler >span{
47
+ margin-top: 15px;
48
+ }
49
+ .sidebar > .toggler {
50
+ -webkit-border-top-left-radius: 4px;
51
+ -webkit-border-bottom-left-radius: 4px;
52
+ -moz-border-radius-topleft: 4px;
53
+ -moz-border-radius-bottomleft: 4px;
54
+ border-top-left-radius: 4px;
55
+ border-bottom-left-radius: 4px;
56
+ -webkit-box-shadow: -1px 0px 8px rgb(0 0 0 / 18%);
57
+ box-shadow: -1px 0px 8px rgb(0 0 0 / 18%);
58
+ }
59
+ </style>
@@ -80,6 +80,7 @@
80
80
  :rowspan="tdRowspan(column, row)"
81
81
  class="ct-td"
82
82
  :class="[colHasWidth[colIndex],model.tdClass,
83
+ column.router?'cursor':null,
83
84
  colIndex === leftShadow?'shadowLeft':null,
84
85
  colIndex === rightShadow?'shadowRight':null,
85
86
  column.fixed === 'left'?'left-fixation':null,
@@ -234,7 +235,7 @@
234
235
  this.model.scripts.formData = this.model.formData;
235
236
  this.model.scripts.formData.formTable = this.model;
236
237
 
237
- self.$emit('loaded');
238
+ self.$emit('loaded',self);
238
239
  self.$emit('showTitle');
239
240
  if (this.tempSearchModel !== null) {
240
241
  self.model.searchModel = this.tempSearchModel;
@@ -374,8 +375,7 @@
374
375
  self.tableLoading = false;
375
376
  self.rowColorChange();
376
377
  }
377
- self.$emit('searchComplate');
378
-
378
+ self.$emit('searchComplate',self);
379
379
  }
380
380
  self.tableLoading = true;
381
381
 
@@ -955,17 +955,14 @@
955
955
  outline: 0;
956
956
  border-top: 1px solid #fff;
957
957
  }
958
-
959
958
  .ct-searchtable .ct-table {
960
959
  min-width: 100%;
961
960
  border-collapse: collapse;
962
961
  }
963
-
964
962
  .ct-searchtable .ct-table th {
965
963
  background-color: #f4f7fa !important;
966
964
  border-top: 1px solid #ebeef5;
967
965
  }
968
-
969
966
  .ct-searchtable .ct-tr > .ct-td {
970
967
  /*border: 1px solid #e7e8eb;
971
968
  border-bottom: 1px solid #e7e8eb;
@@ -975,69 +972,53 @@
975
972
  cursor: default;
976
973
  background-color: #ffffff;
977
974
  }
978
-
979
975
  .ct-searchtable .ct-tr > .ct-td1 {
980
976
  border-right: 1px solid #e7e8eb;
981
977
  border-left: 1px solid #e7e8eb;
982
978
  }
983
-
984
979
  .ct-searchtable .ct-tr:last-child > .ct-td1 {
985
980
  border-bottom: 1px solid #e7e8eb;
986
981
  }
987
-
988
982
  .ct-searchtable .ct-tr > .ct-td2 {
989
983
  border-bottom: 1px solid #e7e8eb;
990
984
  }
991
-
992
985
  .ct-searchtable .ct-tr > .ct-td3 {
993
986
  border: 1px solid #e7e8eb;
994
987
  }
995
-
996
988
  .shadowLeft {
997
989
  border-right: 1px solid #e7e8eb;
998
990
  box-shadow: 2px 0 3px -1px rgba(0,0,0,0.1);
999
991
  }
1000
-
1001
992
  .shadowRight {
1002
993
  box-shadow: -2px 0 3px -1px rgba(0,0,0,0.1);
1003
994
  }
1004
-
1005
995
  .ct-searchtable body:last-child > .ct-td {
1006
996
  border-bottom: 0px;
1007
997
  }
1008
-
1009
998
  .ct-searchtable .ct-tr > .ct-td.nowidth {
1010
999
  white-space: nowrap;
1011
1000
  }
1012
- /*.ct-searchtable tbody .ct-tr:hover .ct-td {
1013
- background-color: #ebeef5 !important;
1014
- }*/
1015
-
1016
1001
  .ct-table {
1017
1002
  color: #606266;
1018
1003
  font-size: 18px;
1019
1004
  line-height: 40px;
1020
1005
  min-height: 40px;
1021
1006
  }
1022
-
1023
1007
  .ct-table-mini {
1024
1008
  font-size: 12px;
1025
1009
  line-height: 26px;
1026
1010
  min-height: 28px;
1027
1011
  }
1028
-
1029
1012
  .ct-table-small {
1030
1013
  font-size: 14px;
1031
1014
  line-height: 32px;
1032
1015
  min-height: 32px;
1033
1016
  }
1034
-
1035
1017
  .ct-table-medium {
1036
1018
  font-size: 16px;
1037
1019
  line-height: 36px;
1038
1020
  min-height: 36px;
1039
1021
  }
1040
-
1041
1022
  .ct-table .ct-td > .caret-wrapper {
1042
1023
  display: inline-flex;
1043
1024
  flex-direction: column;
@@ -1049,7 +1030,6 @@
1049
1030
  overflow: initial;
1050
1031
  position: relative;
1051
1032
  }
1052
-
1053
1033
  .ct-table .ct-td > .caret-wrapper > .sort-caret {
1054
1034
  width: 0;
1055
1035
  height: 0;
@@ -1057,36 +1037,28 @@
1057
1037
  position: absolute;
1058
1038
  left: 7px;
1059
1039
  }
1060
-
1061
1040
  .ct-table .ct-td > .caret-wrapper > .sort-caret.ascending {
1062
1041
  border-bottom-color: #c0c4cc;
1063
1042
  top: 5px;
1064
1043
  }
1065
-
1066
1044
  .ct-table .ct-td > .caret-wrapper > .sort-caret.descending {
1067
1045
  border-top-color: #c0c4cc;
1068
1046
  bottom: 7px;
1069
1047
  }
1070
-
1071
1048
  .ct-table .ct-td.select {
1072
1049
  background-color: #ecf5ff !important;
1073
1050
  }
1074
-
1075
1051
  .ct-table .ct-tr:hover .ct-td.select {
1076
1052
  background-color: #ecf5ff !important;
1077
1053
  }
1078
-
1079
1054
  .ct-table .ct-td.asc > .caret-wrapper > .sort-caret.ascending {
1080
1055
  border-bottom-color: #409eff;
1081
1056
  top: 5px;
1082
1057
  }
1083
-
1084
1058
  .ct-table .ct-td.desc > .caret-wrapper > .sort-caret.descending {
1085
1059
  border-top-color: #409eff;
1086
1060
  bottom: 7px;
1087
1061
  }
1088
-
1089
-
1090
1062
  .ct-table .cell {
1091
1063
  /*white-space: nowrap;*/
1092
1064
  text-overflow: ellipsis;
@@ -1094,7 +1066,6 @@
1094
1066
  overflow: hidden;
1095
1067
  /*padding-right: 10px;*/
1096
1068
  }
1097
-
1098
1069
  /*强制换行 todo 可去掉改成强制不换行*/
1099
1070
  .ct-table .cell {
1100
1071
  /* 这两个在技术上是一样的, 为了兼容了浏览器两个都加上 */
@@ -1111,53 +1082,35 @@
1111
1082
  -webkit-hyphens: auto;
1112
1083
  hyphens: auto;
1113
1084
  }
1114
-
1115
1085
  .ct-table .lineFeedCell {
1116
1086
  min-width: 40px;
1117
- /*padding-right: 10px;*/
1118
1087
  }
1119
-
1120
- /*.ct-table .cell.ct-tooltip:hover {
1121
- text-overflow: inherit;
1122
- overflow: visible;
1123
- }*/
1124
-
1125
1088
  .ct-table .left-fixation {
1126
1089
  position: sticky;
1127
1090
  }
1128
-
1129
1091
  .ct-table .right-fixation {
1130
1092
  position: sticky;
1131
1093
  }
1132
-
1133
1094
  .ct-table .left-fixation-th {
1134
1095
  position: sticky;
1135
1096
  top: 0px;
1136
1097
  z-index: 99;
1137
1098
  }
1138
-
1139
1099
  .ct-table .right-fixation-th {
1140
1100
  position: sticky;
1141
1101
  top: 0px;
1142
1102
  z-index: 99;
1143
1103
  }
1144
-
1145
1104
  .ct-table .right-no-fixation-th {
1146
1105
  position: sticky;
1147
1106
  top: 0px;
1148
1107
  z-index: 50;
1149
1108
  }
1150
-
1151
- .ct-table .ct-searchtable-th {
1152
- /*text-align: center*/
1153
- }
1154
-
1155
1109
  .ct-table .checkbox-td {
1156
1110
  min-width: 20px;
1157
1111
  width: 20px;
1158
1112
  left: 0px;
1159
1113
  }
1160
-
1161
1114
  .ct-table .checkbox-td .checkbox-td-1 {
1162
1115
  vertical-align: inherit;
1163
1116
  }
@@ -1174,6 +1127,7 @@
1174
1127
  float: none;
1175
1128
  display: block;
1176
1129
  width: -webkit-fill-available;
1130
+ cursor: pointer;
1177
1131
  }
1178
1132
  .div_allinline .Stats-popover {
1179
1133
  float: right;
@@ -843,6 +843,15 @@ const SearchTable = function (data, callBack, searchModel, flagSearch, defaultSe
843
843
  get rowMenuDisplayCount() {
844
844
  return source.content.rowMenuDisplayCount && source.content.rowMenuDisplayCount>0?source.content.rowMenuDisplayCount : 4;
845
845
  },
846
+ get flagSideBar() {
847
+ return source.content.flagSideBar || false;
848
+ },
849
+ get flagDefaultDisplaySideBar() {
850
+ return source.content.flagDefaultDisplaySideBar || false;
851
+ },
852
+ get sideBarWidth() {
853
+ return source.content.sideBarWidth || 360;
854
+ },
846
855
  };
847
856
  if (rtn.template) {
848
857
  var tempLoader = template.loader(rtn.template).default;
@@ -1,7 +1,7 @@
1
1
  <template>
2
- <div :class="isOperationalColumn?'subdiv_allinline':''" v-if="isShowLabel">
3
- <img v-if="router.imgUrl && isShowImg" class="ct-tablecurrencyImg ct-tablecurrencyItem" :src="router.imgUrl" :title="router.label" @click="clickHandler($event);" />
4
- <a v-else href="javascript:void(0);" class="ct-tablecurrencyItem" @click="clickHandler($event)">
2
+ <div :class="isOperationalColumn?'subdiv_allinline':''" v-if="isShowLabel" @click="clickHandler($event)">
3
+ <img v-if="router.imgUrl && isShowImg" class="ct-tablecurrencyImg ct-tablecurrencyItem" :src="router.imgUrl" :title="router.label" />
4
+ <a v-else href="javascript:void(0);" class="ct-tablecurrencyItem" >
5
5
  {{label}}
6
6
  </a>
7
7
  </div>
@@ -63,5 +63,4 @@
63
63
  width: 24px;
64
64
  margin-top: 2px;
65
65
  }
66
-
67
66
  </style>