centaline-data-driven 1.1.57 → 1.1.61

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.
Files changed (30) hide show
  1. package/.vs/Centaline.Front_End.DataDriven/DesignTimeBuild/.dtbcache +0 -0
  2. package/.vs/Centaline.Front_End.DataDriven/v16/Server/sqlite3/db.lock +0 -0
  3. package/.vs/Centaline.Front_End.DataDriven/v16/Server/sqlite3/storage.ide +0 -0
  4. package/build/centaline/webpack.centaline.conf.js +1 -1
  5. package/obj/Centaline.Front_End.DataDriven.csproj.nuget.dgspec.json +73 -0
  6. package/obj/Centaline.Front_End.DataDriven.csproj.nuget.g.props +29 -0
  7. package/obj/Centaline.Front_End.DataDriven.csproj.nuget.g.targets +15 -0
  8. package/obj/Debug/netcoreapp2.1/Centaline.Front_End.DataDriven.AssemblyInfo.cs +23 -0
  9. package/obj/Debug/netcoreapp2.1/Centaline.Front_End.DataDriven.RazorAssemblyInfo.cs +20 -0
  10. package/obj/project.assets.json +11907 -0
  11. package/package.json +1 -1
  12. package/src/Detail.vue +3 -0
  13. package/src/Edit.vue +2 -36
  14. package/src/Form.vue +21 -6
  15. package/src/SearchList.vue +2 -1
  16. package/src/SearchTree.vue +2 -6
  17. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +95 -44
  18. package/src/centaline/dynamicForm/src/dynamicForm.vue +6 -2
  19. package/src/centaline/dynamicHyperLink/index.js +1 -1
  20. package/src/centaline/dynamicPlaceHolder/index.js +1 -1
  21. package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +22 -9
  22. package/src/centaline/dynamicSearchList/src/dynamicTableStatistics.vue +11 -11
  23. package/src/centaline/loader/src/ctl/Base.js +9 -0
  24. package/src/centaline/loader/src/ctl/Detail.js +57 -4
  25. package/src/centaline/loader/src/ctl/PlaceHolder.js +2 -2
  26. package/src/centaline/loader/src/ctl/SearchTable.js +19 -1
  27. package/src/centaline/loader/src/ctl/lib/Enum.js +18 -1
  28. package/src/main.js +12 -4
  29. package/wwwroot/static/centaline/centaline-data-driven.js +1 -1
  30. package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "centaline-data-driven",
3
- "version": "1.1.57",
3
+ "version": "1.1.61",
4
4
  "description": "ccai",
5
5
  "author": "hjc <3226136347@qq.com>",
6
6
  "private": false,
package/src/Detail.vue CHANGED
@@ -1,5 +1,8 @@
1
1
  <template>
2
+ <div id="appDetail" style="height:100%;position: fixed;">
2
3
  <ct-Detail :api="'PropertyRET/readDetailForBrowse'" :apiParam="apiParam" :pageType="'PropertyDetailRET'"></ct-Detail>
4
+ <ct-dialog-list></ct-dialog-list>
5
+ </div>
3
6
  </template>
4
7
 
5
8
  <script>
package/src/Edit.vue CHANGED
@@ -1,7 +1,6 @@
1
1
  <template>
2
2
  <div id="app">
3
- <!-- <formListTable></formListTable> -->
4
- <el-button @click="copyField">test</el-button>
3
+ <formListTable></formListTable>
5
4
  </div>
6
5
 
7
6
  </template>
@@ -22,40 +21,7 @@
22
21
  TestEdit() {
23
22
  this.$api.post('http://10.88.22.52:2828//api/values/edit', { content: this.template }, (data) => {
24
23
  });
25
- },
26
- copyField()
27
- {
28
- debugger;
29
- var self = this;
30
- var dialogOption = {
31
- title: "复制控件",
32
- content: [
33
- {
34
- component: "ct-form",
35
- attrs: {
36
- showTitle: false,
37
- api: "/forminfo/readTargetDetail",
38
- apiParam: {
39
- formId: "1ae27876-a938-4ea5-aeab-fb2a7b067a2f",
40
- actionType: 3,
41
- },
42
- width: "1300px",
43
- height: "650px",
44
- },
45
- on: {
46
- submit(ev) {
47
- self.$common.closeDialog(dialogOption.dialog);
48
- },
49
- closeDialog() {
50
-
51
- },
52
- },
53
- },
54
- ],
55
- };
56
- self.$common.openDialog(dialogOption);
57
-
58
- },
24
+ }
59
25
  },
60
26
  created() {
61
27
  //this.$api.get('http://10.88.22.52:2828//api/values/test', null, (data) => {
package/src/Form.vue CHANGED
@@ -1,24 +1,39 @@
1
1
  <template>
2
2
  <div id="app-form" class="data-driven" style="width:100%;height:100%;overflow:auto">
3
- <ct-form :api="'/property/readDetail'" :apiParam="apiParam"></ct-form>
3
+ <!-- <ct-form :api="'/api/third-dept-tran/transaction/detail'" :apiParam="apiParam"></ct-form> -->
4
4
  <!-- <ct-form :source="formdata.content" :apiParam="apiParam"></ct-form> -->
5
5
  <!--:api="'FormSample/formdata'"-->
6
6
  <!--<ct-form :source="formdata.content"></ct-form>-->
7
7
  <!--<ct-form :api="'/api/form/formdata/contractDetail'" :apiParam="apiParam"></ct-form>-->
8
8
  <!--<ct-form :api="'api/Form/formdata'"></ct-form>-->
9
+ <!-- <ct-form :api="'/forminfo/readDetail'" :apiParam="apiParam"></ct-form> -->
10
+ <!-- <ct-form :api="'PropertyKey/getLayoutOfNew'" :apiParam="apiParam"></ct-form> -->
11
+ <ct-form :api="'Worklist/getLayoutOfAudit'" :apiParam="apiParam"></ct-form>
12
+ <!-- <ct-form :api="'/api/distribution/transaction/add'" :apiParam="apiParam"></ct-form> -->
9
13
  <ct-dialog-list></ct-dialog-list>
10
14
  </div>
11
15
  </template>
12
16
 
13
17
  <script>
14
18
  export default {
15
- name: 'App',
19
+ name: 'DataDrivenForm',
16
20
  data() {
17
21
  return {
18
- apiParam: {
19
- actionType: 2,
20
- jsonData: {searchFields: {fields: []}}
21
- } ,
22
+ // apiParam: {originalTraId: "1481454808274235394", actionType: 3, pageTitle: "成交报告", pageOnly: true} ,
23
+ // apiParam: {headerParam: {}, urlParam: {contractID: "06cad32e-4d0d-4b6f-bd24-16a28629a550", actionType: "0"}}
24
+ // apiParam: {SN: "13557_132", UserID: "wuhan3"},
25
+ // apiParam: {actionType: 3,formId: "2c12649f-09c5-4aa9-8011-b6d1c7b56a41"} ,
26
+ // apiParam: {chanceID: "1", actionType: 2} ,
27
+ apiParam: {worklistID: "1491261975253094400", actionType: 2}
28
+ // apiParam: {
29
+ // actionType: 2,
30
+ // agentId: "1450283160825425922",
31
+ // estateId: "B6E6B3D8-FDF2-4AF8-91E6-B348D637E993",
32
+ // pageOnly: true,
33
+ // pageStyle: 2,
34
+ // propertyId: "14102015-0736-9265-205A-451687BF7062",
35
+ // relProId: "1475708315466829833",
36
+ // }
22
37
  }
23
38
  },
24
39
  methods: {
@@ -1,7 +1,8 @@
1
1
  <template>
2
2
  <div id="app-search" style="height:100%;position: fixed;">
3
3
  <!-- <ct-searchlist :searchConditionApi="'/api/third-dept-tran/tran-list/layout'" :searchDataApi="'/api/third-dept-tran/tran-list'"></ct-searchlist> -->
4
- <ct-searchlist :searchConditionApi="'/system/menulist/getLayoutOfSearch'" :searchDataApi="'/system/menulist/getList'"></ct-searchlist>
4
+ <ct-searchlist :searchConditionApi="'/PropertyRETList/getLayoutOfSearch'" :searchDataApi="'/PropertyRETList/getListOfSearchModel'" :searchCategoryApi="'/PropertyRETList/getLayoutOfSearchCategory'"></ct-searchlist>
5
+ <!-- <ct-searchlist :searchConditionApi="'/WorklistList/getLayoutOfSearch'" :searchDataApi="'/WorklistList/getListOfSearchModel'" :searchCategoryApi="'/WorklistList/getLayoutOfSearchCategory'"></ct-searchlist> -->
5
6
  <!--<ct-searchlist :searchConditionApi="'/api/invoice-info/search-condition'" :searchDataApi="'/api/invoice-info/list'" :searchDataStatisticsApi="'api/ContractList/GetLayoutOfStatisticsTool'" :apiParam="para"></ct-searchlist>-->
6
7
  <ct-dialog-list></ct-dialog-list>
7
8
  </div>
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div id="app-Tree" style="height:100%;position: fixed;width:100%">
3
3
  <ct-treelist :flagsearch="true" :apiParam="apiParam"
4
- :searchConditionApi="'/SystemParameterCatalogList/getListOfSearchModel'"
4
+ :searchConditionApi="'/SystemParameterCatalogList/getLayoutOfSearch'"
5
5
  :searchDataApi="'/SystemParameterCatalogList/getListOfSearchModel'" @loaded="loaded"></ct-treelist>
6
6
  <ct-dialog-list></ct-dialog-list>
7
7
  </div>
@@ -14,11 +14,7 @@
14
14
  data() {
15
15
  return {
16
16
  isShowSearchlist: false,
17
- apiParam: {
18
- flagSearch: true,
19
- searchFields: {},
20
- pageAttribute: {pageIndex: 1}
21
- }
17
+ apiParam: {}
22
18
  }
23
19
  },
24
20
  methods: {
@@ -1,7 +1,7 @@
1
1
  <template>
2
- <div class="main" v-if="model!==null">
2
+ <div ref="main" class="main" v-if="model!==null">
3
3
  <div class="details-content">
4
- <div class="details-head base-box mb10">
4
+ <div ref="header" class="details-head base-box mb10">
5
5
  <div class="head-type">{{model.fields1Dic.Trade.value}}</div>
6
6
  <div class="head-info">
7
7
  <div class="title">
@@ -52,8 +52,7 @@
52
52
  </div>
53
53
  </div>
54
54
  </div>
55
-
56
- <div class="details-mid y-auto" style="height:570px">
55
+ <div ref="detail" class="details-mid y-auto" :style="{'height':model.detailHeight?model.detailHeight+'px':'780px'}">
57
56
  <div class="mid-l">
58
57
  <!-- 图片内容部分 -->
59
58
  <div class="hous-info base-box">
@@ -112,7 +111,7 @@
112
111
  <div class="row-i"><span>{{model.fields1Dic.PriceLine.label}}</span><div>{{model.fields1Dic.PriceLine.value}}{{model.fields1Dic.PriceLine.unitName}}</div></div></div>
113
112
  <div class="info-row">
114
113
  <div class="row-i">
115
- <span >{{model.fields1Dic.AssessPrice.label}}</span><span>{{model.fields1Dic.AssessPrice.value}} </span><span>{{model.fields1Dic.AssessPrice.unitName}}</span>
114
+ <span >{{model.fields1Dic.MarketRateOfReturn.label}}</span><span>{{model.fields1Dic.MarketRateOfReturn.value}} </span><span>{{model.fields1Dic.MarketRateOfReturn.unitName}}</span>
116
115
  </div>
117
116
  <div class="row-i"><span>{{model.fields1Dic.EstimatePriceRent.label}}</span><div>{{model.fields1Dic.EstimatePriceRent.value}}<span>{{model.fields1Dic.EstimatePriceRent.unitName}}</span></div></div>
118
117
  <div class="row-i"><span>{{model.fields1Dic.EstimatePriceRentUnit.label}}</span><span>{{model.fields1Dic.EstimatePriceRentUnit.value}}</span><span>{{model.fields1Dic.EstimatePriceRentUnit.unitName}}</span></div>
@@ -127,39 +126,9 @@
127
126
  </div>
128
127
  </div>
129
128
  </div>
130
- <div class="info-conten-b" v-show="allInfo">
131
- <div class="info-row mb20">
132
- <div class="row-i"><span>建筑用途:</span><span>写字楼</span></div>
133
- <div class="row-i"><span>产权:</span><span>公司</span></div>
134
- <div class="row-i"><span>产权状况:</span><span>拍卖</span></div>
135
- <div class="row-i"><span>现状:</span><span>空房</span></div>
136
- <div class="row-i"><span>付费:</span><span>各付各税</span></div>
137
- <div class="row-i"><span>佣金:</span><span>600元</span></div>
138
- </div>
139
- </div>
140
- <div class="info-conten-b" v-show="allInfo">
129
+ <div v-for="(col, index) in collapse" :key="index" class="info-conten-b" v-show="allInfo">
141
130
  <div class="info-row mb20">
142
- <div class="row-i"><span>可以分割:</span><span>是</span></div>
143
- <div class="row-i"><span>看楼方式:</span><span>提前预约</span></div>
144
- <div class="row-i"><span>装修:</span><span>豪装</span></div>
145
- <div class="row-i"><span>租赁期:</span><span>半年</span></div>
146
- <div class="row-i"><span>付款方式:</span><span>一次性全款</span></div>
147
- <div class="row-i"><span>可否注册公司:</span><span>是</span></div>
148
- </div>
149
- </div>
150
- <div class="info-conten-b" v-show="allInfo">
151
- <div class="info-row mb20">
152
- <div class="row-i"><span>按揭银行:</span><span>中国农行</span></div>
153
- <div class="row-i"><span>欠款额度:</span><span>0.00万</span></div>
154
- <div class="row-i"><span>管理费:</span><span></span></div>
155
- <div class="row-i"><span>使用年限:</span><span>3年</span></div>
156
- <div class="row-i"><span>来源:</span><span></span></div>
157
- <div class="row-i"><span> </span><span> </span></div>
158
- </div>
159
- </div>
160
- <div class="info-conten-b" v-show="allInfo">
161
- <div class="info-row mb20">
162
- <div class="row-i"><span>房源描述:</span><span></span></div>
131
+ <div v-for="(c, i) in col" :key="i" :class="c.singleLine===true?'row-i100':'row-i'"><span>{{c.label}}</span><span>{{c.value}}</span></div>
163
132
  </div>
164
133
  </div>
165
134
  <div class="open-mero" @click="allInfo=!allInfo">{{allInfo?'收起全部':'查看全部'}}
@@ -211,7 +180,16 @@
211
180
  </div>
212
181
  <div class="tablist-info base-box">
213
182
  <div class="details-tabs-box">
214
- <el-tabs v-model="follow">
183
+ <el-menu :default-active="model.activeIndex" class="el-menu-demo el-menu-detail" mode="horizontal" @select="handleSelect">
184
+ <el-menu-item v-for="(col, index) in model.tags1" :key="col.appID" :index="index.toString()">
185
+ {{col.appName}}
186
+ </el-menu-item>
187
+ </el-menu>
188
+ <ct-searchlist v-if="model.searchConditionApiTags1" :key="model.searchlistKey"
189
+ :apiParam="model.paramDataTags1"
190
+ :searchConditionApi="model.searchConditionApiTags1"
191
+ :searchDataApi="model.searchDataApiTags1"></ct-searchlist>
192
+ <!-- <el-tabs v-model="follow">
215
193
  <el-tab-pane label="跟进" name="first">
216
194
  <el-form
217
195
  class="follow-search-bar"
@@ -228,7 +206,7 @@
228
206
  :value="item.value"
229
207
  >
230
208
  </el-option>
231
- </el-select> -->
209
+ </el-select>
232
210
  <el-input
233
211
  class="w300 mr10"
234
212
  placeholder="请输入"
@@ -281,7 +259,7 @@
281
259
  <el-tab-pane label="合并盘" name="">合并盘</el-tab-pane>
282
260
  <el-tab-pane label="佐证" name="">佐证</el-tab-pane>
283
261
  <el-tab-pane label="销控表" name="">销控表</el-tab-pane>
284
- </el-tabs>
262
+ </el-tabs> -->
285
263
  </div>
286
264
  </div>
287
265
  <div class="contribute-info base-box">
@@ -317,8 +295,8 @@
317
295
  <!-- 右侧委托信息 -->
318
296
  <div class="mid-r">
319
297
  <div class="take-info base-box">
320
- <div>该房源共<span class="red-text">2</span>位客户看房</div>
321
- <div>最近7天带看<span class="red-text">22</span>次,总带看<span class="red-text">33</span>次。</div>
298
+ <div>该房源共<span class="red-text">{{model.fields1Dic.LookCustomerCount.value}}</span>位客户看房</div>
299
+ <div>最近7天带看<span class="red-text">{{model.fields1Dic.CustomerLookCount7.value}}</span>次,总带看<span class="red-text">{{model.fields1Dic.CustomerLookCountAll.value}}</span>次。</div>
322
300
  </div>
323
301
  <div class="staff-info base-box">
324
302
  <el-tabs v-model="opening " @tab-click="handleClick">
@@ -501,9 +479,13 @@
501
479
 
502
480
  <script>
503
481
  import dynamicElement from '../../mixins/dynamicElement';
482
+ import dynamicSearchList from '../../dynamicSearchList/src/dynamicSearchList.vue';
504
483
  export default {
505
484
  name: 'ct-PropertyDetailRET',
506
485
  mixins: [dynamicElement],
486
+ components: {
487
+ 'ct-searchlist': dynamicSearchList,
488
+ },
507
489
  props: {
508
490
  vmodel: Object,
509
491
  api: String,
@@ -601,7 +583,7 @@
601
583
  },
602
584
  mounted() {
603
585
  var self = this;
604
- this.$nextTick(function () {
586
+ this.$nextTick(function () {
605
587
  if (self.vmodel) {
606
588
  self.load(self.vmodel);
607
589
  }
@@ -613,9 +595,57 @@
613
595
  }
614
596
  });
615
597
  },
598
+ activated() {
599
+ this.$nextTick(() => {
600
+ this.setDetailHeight();
601
+ })
602
+ },
616
603
  methods: {
617
604
  load(data) {
618
- this.model = data;
605
+ this.model = data;
606
+ this.loadFields();
607
+ this.setDetailHeight();
608
+ },
609
+ loadFields() {
610
+ var self = this;
611
+ self.collapse=[];
612
+ var collapseItemArr = [];
613
+ var col=0;
614
+ var colCount=4;
615
+ self.model.fields2Dic.forEach((v, index) => {
616
+ if(v.type===13){
617
+ collapseItemArr = [];
618
+ col=0;
619
+ }
620
+ else if(v.singleLine){
621
+ if(collapseItemArr.length>0){
622
+ self.collapse.push(collapseItemArr);
623
+ collapseItemArr = [];
624
+ }
625
+ collapseItemArr.push(v);
626
+ self.collapse.push(collapseItemArr);
627
+ collapseItemArr = [];
628
+ col=0;
629
+ }
630
+ else if(v.spanCols){
631
+ collapseItemArr.push(v);
632
+ col=col+v.spanCols;
633
+ if(col===colCount || index===self.model.fields2Dic.length-1){
634
+ self.collapse.push(collapseItemArr);
635
+ collapseItemArr = [];
636
+ col=0;
637
+ }
638
+ }
639
+ else{
640
+ collapseItemArr.push(v);
641
+ col=col+1;
642
+ if(col===colCount || index===self.model.fields2Dic.length-1){
643
+ self.collapse.push(collapseItemArr);
644
+ collapseItemArr = [];
645
+ col=0;
646
+ }
647
+ }
648
+ });
619
649
  },
620
650
  lookOwner() {
621
651
  this.codeOwner = true
@@ -625,8 +655,26 @@
625
655
  },
626
656
  handleClick(tab, event) {
627
657
  console.log(tab, event);
658
+ },
659
+ setDetailHeight() {
660
+ this.$nextTick(() => {
661
+ if (this.$refs.detail && this.$refs.main) {
662
+ var h1 = this.$refs.main.offsetHeight | 0;
663
+ var h3 = this.$refs.detail.offsetTop | 0;
664
+ let detailHeight = h1 - h3 - 65;
665
+ this.model.detailHeight = detailHeight < 40 ? 350 : detailHeight;
666
+ }
667
+ });
668
+ },
669
+ handleSelect(key, keyPath) {
670
+ if(this.model.tags1 && this.model.tags1[key]){
671
+ this.model.searchlistKey=this.model.searchlistKey+1;
672
+ this.model.searchConditionApiTags1=this.model.tags1[key].searchConditionApiUrl||'';
673
+ this.model.searchDataApiTags1=this.model.tags1[key].searchDataApiUrl||'';
674
+ this.model.paramDataTags1=this.model.tags1[key].paramData||'';
628
675
  }
629
676
  },
677
+ }
630
678
  }
631
679
  </script>
632
680
  <style lang="scss" scoped>
@@ -912,6 +960,9 @@
912
960
  .row-i{
913
961
  width: 25%;
914
962
  }
963
+ .row-i100{
964
+ width: 100%;
965
+ }
915
966
  }
916
967
  .open-mero{
917
968
  text-align: center;
@@ -33,7 +33,7 @@
33
33
  </el-tabs>
34
34
  <!--分组-->
35
35
  <el-collapse v-else v-model="collapseActiveNames" @change="collapseHandleChange">
36
- <el-collapse-item v-for="(item, index) in collapse" v-if="item.show !== false" :key="index" :title="item.label" :name="index" :disabled="item.lock">
36
+ <el-collapse-item v-for="(item, index) in collapse" v-if="item.show !== false" :key="index" :title="item.label" :name="index" :disabled="item.lock" :class="item.lock?'ct-collapse-item-title':''">
37
37
  <template slot="title">
38
38
  <i class="sign"></i>
39
39
  {{item.label}}
@@ -557,8 +557,12 @@
557
557
  }
558
558
  }
559
559
  </script>
560
- <style scoped>
560
+ <style>
561
561
  .el-collapse{
562
562
  border-top: none;
563
563
  }
564
+ .ct-collapse-item-title .el-collapse-item__header
565
+ {
566
+ color:#303133 !important;
567
+ }
564
568
  </style>
@@ -8,4 +8,4 @@ if (typeof window !== 'undefined' && window.Vue) {
8
8
  window.Vue.use(dynamicHyperLink);
9
9
  }
10
10
 
11
- export default dynamicHyperLink
11
+ export default dynamicHyperLink
@@ -8,4 +8,4 @@ if (typeof window !== 'undefined' && window.Vue) {
8
8
  window.Vue.use(dynamicPlaceHolder);
9
9
  }
10
10
 
11
- export default dynamicPlaceHolder
11
+ export default dynamicPlaceHolder
@@ -22,18 +22,19 @@
22
22
  <!--表头-->
23
23
  <thead ref="tableHead">
24
24
  <tr class="ct-tr" ref="headTr" v-for="(columns,columnsIndex) in model.columnsArr">
25
- <th v-if="model.isMulti && columnsIndex === 0" ref="headLeftThs" class="ct-td left-fixation-th checkbox-td">
25
+ <th v-if="model.isMulti && columnsIndex === 0" ref="headLeftThs" class="ct-td left-fixation-th checkbox-td" :class="[model.tdClass]">
26
26
  <input type="checkbox" @click="selectAll($event)" v-model="model.selectAll" class="checkbox-td-1" />
27
27
  </th>
28
28
  <th :ref="column.fixed?(column.fixed==='left'?'headLeftThs':'headRightThs'):'headThs'" v-for="(column,colIndex) in columns"
29
29
  v-if="column.show" class="ct-td ct-searchtable-th"
30
30
  :rowspan="column.rowspan"
31
31
  :colspan="column.colspan"
32
- :class="[colHasWidth[colIndex],column.sortAction,
32
+ :class="[colHasWidth[colIndex],column.sortAction,model.tdClass,
33
33
  colIndex === leftShadow?'shadowLeft':null,
34
34
  colIndex === rightShadow?'shadowRight':null,
35
35
  column.fixed === 'left'?'left-fixation-th':null,
36
36
  column.fixed === 'right'?'right-fixation-th':null,
37
+ column.width === undefined?'ct-table-auto':null,
37
38
  typeof column.fixed === 'undefined'?'right-no-fixation-th':null]"
38
39
  @mousemove="thMouseMoveHandle($event)" @mousedown="thMouseDownHandle($event,colIndex)"
39
40
  v-bind="column.attrs">
@@ -67,7 +68,7 @@
67
68
  :ref="'rows.'+rowindex" @click="rowClickHandle($event,rowindex)"
68
69
  class="ct-tr"
69
70
  :style="row.$style">
70
- <td v-if="model.isMulti" class="ct-td tdFiexd left-fixation checkbox-td" align="center">
71
+ <td v-if="model.isMulti" class="ct-td tdFiexd left-fixation checkbox-td" :class="[model.tdClass]" align="center">
71
72
  <input v-if="!model.rightMulti || row[model.rightMulti] == 1" type="checkbox" v-model="row.$select" @change="selectOne($event)" class="checkbox-td-1" />
72
73
  </td>
73
74
  <td :ref="column.fixed?(column.fixed==='left'?'headLeftTds':'headRightTds'):null"
@@ -75,10 +76,11 @@
75
76
  v-if="tdShow(column, row)"
76
77
  :rowspan="tdRowspan(column, row)"
77
78
  class="ct-td"
78
- :class="[colHasWidth[colIndex],
79
+ :class="[colHasWidth[colIndex],model.tdClass,
79
80
  colIndex === leftShadow?'shadowLeft':null,
80
81
  colIndex === rightShadow?'shadowRight':null,
81
82
  column.fixed === 'left'?'left-fixation':null,
83
+ column.width === undefined?'ct-table-auto':null,
82
84
  column.fixed === 'right'?'right-fixation':null]"
83
85
  v-bind="column.attrs">
84
86
  <!--操作列-->
@@ -107,8 +109,6 @@
107
109
  </td>
108
110
  </tr>
109
111
 
110
-
111
-
112
112
  <!--适配滚动条-->
113
113
  <tr v-else v-bind:style="{ height: row.$heigth + 'px' }"></tr>
114
114
  </tbody>
@@ -169,7 +169,6 @@
169
169
  },
170
170
  activated() {
171
171
  this.$nextTick(() => {
172
- // this.calculatingRowHeight();
173
172
  this.setTableHeight();
174
173
  })
175
174
  },
@@ -881,6 +880,7 @@
881
880
 
882
881
  .ct-searchtable .ct-table {
883
882
  min-width: 100%;
883
+ border-collapse: collapse;
884
884
  }
885
885
 
886
886
  .ct-searchtable .ct-table th {
@@ -889,14 +889,27 @@
889
889
  }
890
890
 
891
891
  .ct-searchtable .ct-tr > .ct-td {
892
- /*border: 1px solid #e7e8eb;*/
892
+ /*border: 1px solid #e7e8eb;
893
893
  border-bottom: 1px solid #e7e8eb;
894
- /*border-right: 1px solid #e7e8eb;
894
+ border-right: 1px solid #e7e8eb;
895
895
  border-left: 1px solid #e7e8eb;*/
896
896
  padding: 2px 20px;
897
897
  cursor: default;
898
898
  background-color: #ffffff;
899
899
  }
900
+ .ct-searchtable .ct-tr > .ct-td1 {
901
+ border-right: 1px solid #e7e8eb;
902
+ border-left: 1px solid #e7e8eb;
903
+ }
904
+ .ct-searchtable .ct-tr:last-child > .ct-td1 {
905
+ border-bottom: 1px solid #e7e8eb;
906
+ }
907
+ .ct-searchtable .ct-tr > .ct-td2 {
908
+ border-bottom: 1px solid #e7e8eb;
909
+ }
910
+ .ct-searchtable .ct-tr > .ct-td3 {
911
+ border: 1px solid #e7e8eb;
912
+ }
900
913
 
901
914
  .shadowLeft {
902
915
  border-right: 1px solid #e7e8eb;
@@ -16,17 +16,17 @@
16
16
  data() {
17
17
  return {
18
18
  activeName: '1',
19
- editableTabs: [
20
- { name: '1', title: '用户管理' },
21
- { name: '2', title: '配置管理' },
22
- { name: '3', title: '角色管理' },
23
- { name: '4', title: '定时任务补偿' },
24
- { name: '5', title: '定时任务补偿2' },
25
- { name: '6', title: '定时任务补偿3' },
26
- { name: '7', title: '定时任务补偿4' },
27
- { name: '8', title: '定时任务补偿5' },
28
- { name: '9', title: '定时任务补偿6' },
29
- { name: '10', title: '定时任务补偿7' }
19
+ editableTabs: [
20
+ { name: '1', title: '用户管理' },
21
+ { name: '2', title: '配置管理' },
22
+ { name: '3', title: '角色管理' },
23
+ { name: '4', title: '定时任务补偿' },
24
+ { name: '5', title: '定时任务补偿2' },
25
+ { name: '6', title: '定时任务补偿3' },
26
+ { name: '7', title: '定时任务补偿4' },
27
+ { name: '8', title: '定时任务补偿5' },
28
+ { name: '9', title: '定时任务补偿6' },
29
+ { name: '10', title: '定时任务补偿7' }
30
30
  ],
31
31
  }
32
32
  },
@@ -254,6 +254,15 @@ const Base = function (source) {
254
254
  get autoSearch() {
255
255
  return source.autoSearch==undefined? false:source.autoSearch;
256
256
  },
257
+ get spanCols() {
258
+ return source.spanCols;
259
+ },
260
+ get rows() {
261
+ return source.rows;
262
+ },
263
+ get singleLine() {
264
+ return source.singleLine;
265
+ },
257
266
  };
258
267
 
259
268
  return rtn;