centaline-data-driven 1.1.70 → 1.2.0

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 (43) 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/centaline.path.js +4 -1
  5. package/build/centaline/webpack.centaline.conf.js +1 -1
  6. package/obj/Centaline.Front_End.DataDriven.csproj.nuget.dgspec.json +73 -0
  7. package/obj/Centaline.Front_End.DataDriven.csproj.nuget.g.props +29 -0
  8. package/obj/Centaline.Front_End.DataDriven.csproj.nuget.g.targets +15 -0
  9. package/obj/Debug/netcoreapp2.1/Centaline.Front_End.DataDriven.AssemblyInfo.cs +23 -0
  10. package/obj/Debug/netcoreapp2.1/Centaline.Front_End.DataDriven.RazorAssemblyInfo.cs +20 -0
  11. package/obj/project.assets.json +11907 -0
  12. package/package.json +4 -2
  13. package/src/Detail.vue +1 -1
  14. package/src/Edit.vue +4 -48
  15. package/src/Form.vue +22 -7
  16. package/src/SearchList.vue +4 -2
  17. package/src/centaline/common/index.js +43 -27
  18. package/src/centaline/css/common.css +8 -0
  19. package/src/centaline/css/max.css +1 -1
  20. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +169 -39
  21. package/src/centaline/dynamicForm/src/dynamicForm.vue +0 -1
  22. package/src/centaline/dynamicHyperLink/index.js +1 -1
  23. package/src/centaline/dynamicL/src/dynamicL.vue +13 -2
  24. package/src/centaline/dynamicPhotoSelect/index.js +11 -0
  25. package/src/centaline/dynamicPhotoSelect/src/dynamicPhotoSelect.vue +237 -0
  26. package/src/centaline/dynamicPhotoSelectList/index.js +11 -0
  27. package/src/centaline/dynamicPhotoSelectList/src/dynamicPhotoSelectList.vue +171 -0
  28. package/src/centaline/dynamicPlaceHolder/index.js +1 -1
  29. package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +3 -3
  30. package/src/centaline/dynamicSensitiveEye/src/dynamicSensitiveEye.vue +1 -1
  31. package/src/centaline/dynamicViewer/index.js +11 -0
  32. package/src/centaline/dynamicViewer/src/dynamicViewer.vue +45 -0
  33. package/src/centaline/loader/src/ctl/Detail.js +58 -1
  34. package/src/centaline/loader/src/ctl/PhotoSelect.js +68 -0
  35. package/src/centaline/loader/src/ctl/PhotoSelectList.js +116 -0
  36. package/src/centaline/loader/src/ctl/PlaceHolder.js +2 -2
  37. package/src/centaline/loader/src/ctl/SearchTable.js +3 -5
  38. package/src/centaline/loader/src/ctl/lib/Enum.js +5 -1
  39. package/src/centaline/loader/src/ctl/lib/LibFunction.js +19 -0
  40. package/src/centaline/loader/src/ctl.js +2 -0
  41. package/src/main.js +12 -5
  42. package/wwwroot/static/centaline/centaline-data-driven.js +16 -1
  43. 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.70",
3
+ "version": "1.2.00",
4
4
  "description": "ccai",
5
5
  "author": "hjc <3226136347@qq.com>",
6
6
  "private": false,
@@ -18,7 +18,9 @@
18
18
  "element-ui": "^2.15.7",
19
19
  "sass": "^1.34.0",
20
20
  "save": "^2.4.0",
21
- "vue": "2.5.17"
21
+ "vue": "2.5.17",
22
+ "v-viewer": "^1.6.4",
23
+ "vuedraggable": "^2.24.3"
22
24
  },
23
25
  "peerDependencies": {
24
26
  "element-ui": "^2.15.7",
package/src/Detail.vue CHANGED
@@ -10,7 +10,7 @@
10
10
  name: 'App',
11
11
  data() {
12
12
  return {
13
- apiParam: {actionType: 1,chanceID: "1"} ,
13
+ apiParam: {actionType: 1,chanceID: "2"} ,
14
14
  }
15
15
  },
16
16
  mounted() {
package/src/Edit.vue CHANGED
@@ -1,71 +1,27 @@
1
1
  <template>
2
2
  <div id="app">
3
- <viewer :images="pics">
4
- <img v-for="src in pics" :src="src" :key="src">
5
- </viewer>
3
+ <formListTable></formListTable>
6
4
  </div>
7
5
 
8
6
  </template>
9
7
 
10
8
  <script>
11
9
  import formListTable from './centaline/dynamicForm/src/dynamicFormListTable'
12
- import Viewer from 'v-viewer'
13
- import 'viewerjs/dist/viewer.css'
14
- import Vue from 'vue'
15
- Vue.use(Viewer)
16
10
  export default {
17
11
  name: 'App',
18
12
  components: {
19
- 'formListTable': formListTable,
13
+ 'formListTable': formListTable
20
14
  },
21
15
  data() {
22
16
  return {
23
- template: "",
24
- pics:[
25
- 'https://wpimg.wallstcn.com/4c69009c-0fd4-4153-b112-6cb53d1cf943',
26
- 'https://wpimg.wallstcn.com/4c69009c-0fd4-4153-b112-6cb53d1cf943',
27
- 'https://wpimg.wallstcn.com/4c69009c-0fd4-4153-b112-6cb53d1cf943',
28
- ],
17
+ template: ""
29
18
  }
30
19
  },
31
20
  methods: {
32
21
  TestEdit() {
33
22
  this.$api.post('http://10.88.22.52:2828//api/values/edit', { content: this.template }, (data) => {
34
23
  });
35
- },
36
- copyField()
37
- {
38
- debugger;
39
- var self = this;
40
- var dialogOption = {
41
- title: "复制控件",
42
- content: [
43
- {
44
- component: "ct-form",
45
- attrs: {
46
- showTitle: false,
47
- api: "/forminfo/readTargetDetail",
48
- apiParam: {
49
- formId: "1ae27876-a938-4ea5-aeab-fb2a7b067a2f",
50
- actionType: 3,
51
- },
52
- width: "1300px",
53
- height: "650px",
54
- },
55
- on: {
56
- submit(ev) {
57
- self.$common.closeDialog(dialogOption.dialog);
58
- },
59
- closeDialog() {
60
-
61
- },
62
- },
63
- },
64
- ],
65
- };
66
- self.$common.openDialog(dialogOption);
67
-
68
- },
24
+ }
69
25
  },
70
26
  created() {
71
27
  //this.$api.get('http://10.88.22.52:2828//api/values/test', null, (data) => {
package/src/Form.vue CHANGED
@@ -1,25 +1,40 @@
1
1
  <template>
2
2
  <div id="app-form" class="data-driven" style="width:100%;height:100%;overflow:auto">
3
- <ct-form :api="'/roomtype/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/getLayoutOfMyApply'" :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: 3,
20
- roomTypeID: "2202111630507BE6C40D42A44A21B7EE",
21
- jsonData: {searchFields: {fields: []}}
22
- },
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: "1494206747714392064", actionType: 2}
28
+ apiParam: {instanceID: "1495923412655280128", actionType: 3}
29
+ // apiParam: {
30
+ // actionType: 2,
31
+ // agentId: "1450283160825425922",
32
+ // estateId: "B6E6B3D8-FDF2-4AF8-91E6-B348D637E993",
33
+ // pageOnly: true,
34
+ // pageStyle: 2,
35
+ // propertyId: "14102015-0736-9265-205A-451687BF7062",
36
+ // relProId: "1475708315466829833",
37
+ // }
23
38
  }
24
39
  },
25
40
  methods: {
@@ -2,7 +2,7 @@
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
4
 
5
- <ct-searchlist :searchConditionApi="'/estatemanage/estatlist/getLayoutOfSearch'" :searchDataApi="'/estatemanage/estatlist/getList'"></ct-searchlist>
5
+ <!-- <ct-searchlist :searchConditionApi="'/PropertyRETList/getLayoutOfSearch'" :searchDataApi="'/PropertyRETList/getListOfSearchModel'" :searchCategoryApi="'/PropertyRETList/getLayoutOfSearchCategory'"></ct-searchlist> -->
6
6
  <!-- <ct-searchlist :searchConditionApi="'/WorklistList/getLayoutOfSearch'" :searchDataApi="'/WorklistList/getListOfSearchModel'" :searchCategoryApi="'/WorklistList/getLayoutOfSearchCategory'"></ct-searchlist> -->
7
7
 
8
8
  <!-- <ct-searchlist :searchConditionApi="'/PropertyRETList/getLayoutOfSearch'"
@@ -12,6 +12,7 @@
12
12
  ></ct-searchlist> -->
13
13
 
14
14
  <!--<ct-searchlist :searchConditionApi="'/api/invoice-info/search-condition'" :searchDataApi="'/api/invoice-info/list'" :searchDataStatisticsApi="'api/ContractList/GetLayoutOfStatisticsTool'" :apiParam="para"></ct-searchlist>-->
15
+ <ct-searchlist :searchConditionApi="'/PropertyStatusList/getLayoutOfSearch'" :searchDataApi="'/PropertyStatusList/getListOfSearchModel'" :apiParam="para"></ct-searchlist>
15
16
  <ct-dialog-list></ct-dialog-list>
16
17
  </div>
17
18
  </template>
@@ -23,7 +24,8 @@
23
24
  data() {
24
25
  return {
25
26
  //para: { agentId: "1424932685198864386", estateId: "L201402181627000007233", estateName: "271医院宿舍区", pageOnly: "true", pageTitle: "销控房源列表" }
26
- para: {}
27
+ // para: {}
28
+ para: {paramKey: "PropertyStatusID", code: "002.001", name: "盘源状态", paramName: "盘源状态"}
27
29
  }
28
30
  },
29
31
  mounted() {
@@ -60,6 +60,23 @@ const common = {
60
60
  }
61
61
  return rtn;
62
62
  },
63
+ /**
64
+ * @method
65
+ * @param {Object}去重数组
66
+ * @desc 将数组去重并合并
67
+ * @returns {Object} 去重合并的对像
68
+ */
69
+ MergeArray() {
70
+ var _arr = new Array();
71
+ var _arr1 = new Array();
72
+ for (x in arguments) {
73
+ _arr1.concat(arguments[x]);
74
+ }
75
+ for (var i = 0; i < _arr1.length; i++) {
76
+ if (_arr.indexOf(array[i]) == -1) _arr.push(array[i]);
77
+ }
78
+ return _arr;
79
+ },
63
80
 
64
81
  /**
65
82
  * @method
@@ -105,7 +122,7 @@ const common = {
105
122
  else if (Object.prototype.toString.call(obj) === '[object Array]') {
106
123
  rtn = [];
107
124
  for (var keyArray in obj) {
108
- rtn.push(this.CloneCode(obj[keyArray],sourceHistory, cloneHistory));
125
+ rtn.push(this.CloneCode(obj[keyArray], sourceHistory, cloneHistory));
109
126
  }
110
127
  }
111
128
  }
@@ -188,7 +205,7 @@ const common = {
188
205
  * @desc 打开弹窗
189
206
  */
190
207
  openDialog(vmodel) {
191
-
208
+
192
209
  //this.dialogList.List.push(vmodel);
193
210
  this.dialogList.addDialog(vmodel);
194
211
  },
@@ -199,7 +216,7 @@ const common = {
199
216
  * @desc 关闭指定弹窗
200
217
  */
201
218
  closeDialog(vmodel) {
202
-
219
+
203
220
  if (vmodel) {
204
221
  if (vmodel.name === 'ct-comfirm' || vmodel.$options.name === 'ctDialog' || vmodel.$options.name === 'ct-dialog') {
205
222
  //vmodel.dialogTableVisible = false;
@@ -215,36 +232,35 @@ const common = {
215
232
  }
216
233
  },
217
234
 
218
- /**
219
- * @method
220
- * @param {Object} message 提示信息
221
- * @param {Object} title 提示框标题
222
- * @param {Object} options 参数 如confirmButtonText,cancelButtonText
223
- * @desc 确认框
224
- */
235
+ /**
236
+ * @method
237
+ * @param {Object} message 提示信息
238
+ * @param {Object} title 提示框标题
239
+ * @param {Object} options 参数 如confirmButtonText,cancelButtonText
240
+ * @desc 确认框
241
+ */
225
242
  confirm(message, title, options) {
226
243
  let self = this;
227
-
228
- return new Promise((resolve,reject) => {
244
+
245
+ return new Promise((resolve, reject) => {
229
246
  var dialogOption = {
230
247
  title: title,
231
- name:'ct-comfirm',
232
- vmodel:{},
248
+ name: 'ct-comfirm',
249
+ vmodel: {},
233
250
  content: [{
234
251
  component: 'ct-comfirm',
235
252
  attrs: {
236
- options:options,
237
- text:message,
253
+ options: options,
254
+ text: message,
238
255
  width: '400px',
239
256
  height: '95px'
240
257
  },
241
258
  on: {
242
- access(){
259
+ access() {
243
260
  self.closeDialog(dialogOption);
244
261
  resolve();
245
262
  },
246
- cancel()
247
- {
263
+ cancel() {
248
264
  self.closeDialog(dialogOption);
249
265
  reject()
250
266
  },
@@ -641,7 +657,7 @@ const common = {
641
657
  * @param {Number} oldValue 不是小数时 替换成这个数
642
658
  * @desc 字符串转数字(保留num位小数)。
643
659
  */
644
- numFloat(value, dc, oldValue){
660
+ numFloat(value, dc, oldValue) {
645
661
  //value = value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
646
662
  //value = value.replace(/^\./g, ""); //验证第一个字符是数字而不是.
647
663
  //value = value.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的.
@@ -655,8 +671,8 @@ const common = {
655
671
  if (dc == undefined || dc == "" || dc === "0") {
656
672
  reg = /^(\-)?\d*$/;
657
673
  }
658
- else{
659
- if(dc===-1)dc=12;
674
+ else {
675
+ if (dc === -1) dc = 12;
660
676
  reg = new RegExp("^(\\-)?\\d*[.]{0,1}(\\d{1," + dc + "})?$");
661
677
  }
662
678
  if (value === '' || reg.test(value)) {
@@ -677,9 +693,9 @@ const common = {
677
693
  * @param {Number} num 小数点位数
678
694
  * @desc 字符串转数字(保留num位小数)。
679
695
  */
680
- numToFloat(value, num){
681
- if (value && num && num > 0) {
682
- value =parseFloat(value).toFixed(num);
696
+ numToFloat(value, num) {
697
+ if (value && num && num > 0) {
698
+ value = parseFloat(value).toFixed(num);
683
699
  }
684
700
  return value.toString();
685
701
  },
@@ -691,8 +707,8 @@ const common = {
691
707
  * @desc 判断是否是图片格式。
692
708
  */
693
709
  isAssetTypeAnImage(ext) {
694
- return [
695
- 'png', 'jpg', 'jpeg', 'bmp', 'gif', 'webp', 'psd', 'svg', 'tiff'].
710
+ return [
711
+ 'png', 'jpg', 'jpeg', 'bmp', 'gif', 'webp', 'psd', 'svg', 'tiff'].
696
712
  indexOf(ext.toLowerCase()) !== -1;
697
713
  },
698
714
 
@@ -577,6 +577,14 @@ html {
577
577
  position: absolute;
578
578
  right: 3px;
579
579
  }
580
+ .ct-unitnameLable {
581
+ line-height: 26px;
582
+ }
583
+ .ct-lable {
584
+ height: 26px;
585
+ line-height: 26px;
586
+ padding-left: 15px;
587
+ }
580
588
 
581
589
  /* 滚动条的宽度 */
582
590
  /* ::-webkit-scrollbar {
@@ -180,7 +180,7 @@
180
180
  .ct-search-list .el-date-editor .el-range-input,.ct-search-list .el-input__inner{
181
181
  color: #409eff;
182
182
  }
183
- .ct-so .ct-input_inner,.ct-text .showLabel input{
183
+ .ct-so .ct-input_inner,.ct-text .showLabel input,.ct-text .showLabel label{
184
184
  color: #409eff!important;
185
185
  }
186
186
  .cover-list-item .el-checkbox__input.is-checked + .el-checkbox__label,.cover-list-item .el-checkbox__input.is-checked .el-checkbox__inner{
@@ -29,13 +29,13 @@
29
29
  <div class="head-but">
30
30
  <div>
31
31
  <component v-if="model.otherTradeActionRouter!==null" v-bind="model.otherTradeActionRouter" class="max-default"
32
- :is="model.otherTradeActionRouter.is" :vmodel="model.otherTradeActionRouter" :api="model.optionApi"></component>
32
+ :is="model.otherTradeActionRouter.is" :vmodel="model.otherTradeActionRouter" :api="model.optionApi" @click="fieldClickHandler(model.otherTradeActionRouter,$event)"></component>
33
33
  <component class="max-report" v-if="model.actionRouters!==null && model.actionRouters[0]!==null"
34
- :is="model.actionRouters[0].is" :vmodel="model.actionRouters[0]" :api="model.optionApi"></component>
34
+ :is="model.actionRouters[0].is" :vmodel="model.actionRouters[0]" :api="model.optionApi" @click="fieldClickHandler(model.actionRouters[0],$event)"></component>
35
35
  </div>
36
36
  <div class="mt5">
37
37
  <component class="max-report" v-if="model.actionRouters!==null && model.actionRouters[1]!==null"
38
- :is="model.actionRouters[1].is" :vmodel="model.actionRouters[1]" :api="model.optionApi"></component>
38
+ :is="model.actionRouters[1].is" :vmodel="model.actionRouters[1]" :api="model.optionApi" @click="fieldClickHandler(model.actionRouters[1],$event)"></component>
39
39
  </div>
40
40
  <div class="mt5">
41
41
  <button type="button" class="el-button el-button--info el-button--mini max-report rel"
@@ -43,12 +43,12 @@
43
43
  <img src="../../../assets/dian.png" alt="" class="report">
44
44
  <ul class="report-cont">
45
45
  <li v-for="(col, index) in model.actionRoutersMoreList" :key="index" v-if="col.show !== false">
46
- <component class="max-report" :is="col.is" :vmodel="col" :api="model.optionApi"></component>
46
+ <component class="max-report" :is="col.is" :vmodel="col" :api="model.optionApi" @click="fieldClickHandler(col,$event)"></component>
47
47
  </li>
48
48
  </ul>
49
49
  </button>
50
50
  <component v-else-if="model.actionRouters!==null && model.actionRouters[2]!==null" class="max-report"
51
- :is="model.actionRouters[2].is" :vmodel="model.actionRouters[2]" :api="model.optionApi"></component>
51
+ :is="model.actionRouters[2].is" :vmodel="model.actionRouters[2]" :api="model.optionApi" @click="fieldClickHandler(model.actionRouters[2],$event)"></component>
52
52
  </div>
53
53
  </div>
54
54
  </div>
@@ -180,11 +180,6 @@
180
180
  </div>
181
181
  <div class="tablist-info base-box">
182
182
  <div class="details-tabs-box">
183
- <!-- <el-menu :default-active="model.activeIndex1" 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
183
  <el-tabs :value="model.activeIndex1" @tab-click="handleSelect">
189
184
  <el-tab-pane v-for="(col, index) in model.tags1" :key="col.appID"
190
185
  :index="index.toString()" :name="index.toString()" :label="col.appName"></el-tab-pane>
@@ -195,35 +190,35 @@
195
190
  :searchDataApi="model.searchDataApiTags1"></ct-searchlist>
196
191
  </div>
197
192
  </div>
198
- <div class="contribute-info base-box">
199
- <div class="title-l">贡献人信息</div>
200
- <div class="contribute-list">
201
- <div class="contribute-i">
202
- <img src="" alt="图片">
203
- <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
204
- </div>
205
- <div class="contribute-i">
206
- <img src="" alt="图片">
207
- <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
208
- </div>
209
- <div class="contribute-i">
210
- <img src="" alt="图片">
211
- <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
212
- </div>
213
- <div class="contribute-i">
214
- <img src="" alt="图片">
215
- <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
216
- </div>
217
- <div class="contribute-i">
218
- <img src="" alt="图片">
219
- <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
220
- </div>
221
- <div class="contribute-i">
222
- <img src="" alt="图片">
223
- <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
224
- </div>
225
- </div>
226
- </div>
193
+ <div class="contribute-info base-box">
194
+ <div class="title-l">贡献人信息</div>
195
+ <div class="contribute-list">
196
+ <div class="contribute-i">
197
+ <img src="" alt="图片">
198
+ <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
199
+ </div>
200
+ <div class="contribute-i">
201
+ <img src="" alt="图片">
202
+ <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
203
+ </div>
204
+ <div class="contribute-i">
205
+ <img src="" alt="图片">
206
+ <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
207
+ </div>
208
+ <div class="contribute-i">
209
+ <img src="" alt="图片">
210
+ <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
211
+ </div>
212
+ <div class="contribute-i">
213
+ <img src="" alt="图片">
214
+ <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
215
+ </div>
216
+ <div class="contribute-i">
217
+ <img src="" alt="图片">
218
+ <div><div class="user-title">柳晓青(离职)</div><div class="user-but w56">收钥人</div></div>
219
+ </div>
220
+ </div>
221
+ </div>
227
222
  </div>
228
223
  <!-- 右侧委托信息 -->
229
224
  <div class="mid-r">
@@ -523,6 +518,7 @@
523
518
  load(data) {
524
519
  var self = this;
525
520
  this.model = data;
521
+ this.model.$vue = self;
526
522
  this.loadFields();
527
523
  if(this.model.tags2 && this.model.tags2[0]){
528
524
  this.model.getTags2List(0);
@@ -600,12 +596,146 @@
600
596
  },
601
597
  handleSelect(key, keyPath) {
602
598
  let i=key.index;
599
+ this.model.activeIndex1=i;
603
600
  if(this.model.tags1 && this.model.tags1[i]){
604
601
  this.model.searchlistKey=this.model.searchlistKey+1;
605
602
  this.model.searchConditionApiTags1=this.model.tags1[i].searchConditionApiUrl||'';
606
603
  this.model.searchDataApiTags1=this.model.tags1[i].searchDataApiUrl||'';
607
604
  this.model.paramDataTags1=this.model.tags1[i].paramData||'';
608
605
  }
606
+ },
607
+ fieldClickHandler(field) {
608
+ var self = this;
609
+ let submitData={};
610
+ var router = this.model.actionRouters.find((v) => {
611
+ return v.id === field.id;
612
+ });
613
+ if(router==undefined){
614
+ router = this.model.actionRoutersMoreList.find((v) => {
615
+ return v.id === field.id;
616
+ });
617
+ }
618
+ if(router==undefined){
619
+ router = this.model.otherTradeActionRouter.find((v) => {
620
+ return v.id === field.id;
621
+ });
622
+ }
623
+
624
+ if(router){
625
+ if(field.isSubmitDataFromSelf){
626
+ router.submitFormField.forEach((v) => {
627
+ submitData[v] = field.list[field.listIndex].code;
628
+ });
629
+ }
630
+ else{
631
+ router.submitFormField.forEach((v) => {
632
+ submitData[v] = self.model.fields1Dic[v].value;
633
+ });
634
+ }
635
+ }
636
+
637
+ this.routerClickHandler(router,submitData);
638
+ },
639
+ routerClickHandler(field, submitData) {
640
+ var self = this;
641
+ // this.model.scripts.$fd = field.id;
642
+ // this.model.scripts.$result = [];
643
+
644
+ var clickAcion = function (field) {
645
+ //若不是客户端方法,则直接访问接口
646
+ if (!field.isClientFuntion) {
647
+ // if (typeof field.onClick !== 'undefined') {
648
+ // verified = self.$common.excute.call(self.model.scripts, field.onClick);
649
+ // }
650
+
651
+ if (field.isOpenForm) {
652
+ var dialogOption = {
653
+ title: field.pageTitle,
654
+ pane: self.$common.getParentPane(self),
655
+ content: [{
656
+ component: 'ct-form',
657
+ attrs: {
658
+ api: field.action,
659
+ apiParam: field.getActionPara(submitData).para,
660
+ showTitle: false,
661
+ width: field.dialogWidth + 'px',
662
+ height: field.dialogHeight + 'px'
663
+ },
664
+ on: {
665
+ submit(ev) {
666
+ self.model.doAction(ev,field);
667
+ self.$common.closeDialog(dialogOption.dialog);
668
+ }
669
+ }
670
+ }]
671
+ };
672
+ self.$common.openDialog(dialogOption);
673
+ }
674
+ else if (field.isOpenList) {
675
+ var dialogOption = {
676
+ title: field.pageTitle,
677
+ pane: self.$common.getParentPane(self),
678
+ content: [{
679
+ component: 'ct-searchlist',
680
+ attrs: {
681
+ searchConditionApi: field.actionForSearchLayout,
682
+ searchDataApi: field.actionForSearch,
683
+ apiParam: submitData,
684
+ width: field.dialogWidth + 'px',
685
+ height: field.dialogHeight + 'px'
686
+ },
687
+ on: {
688
+ submit(ev) {
689
+ self.model.updateFields(ev, () => {
690
+ self.$refs.Fields.forEach((fd) => {
691
+ fd.$forceUpdate();
692
+ });
693
+ });
694
+ self.$common.closeDialog(dialogOption.dialog);
695
+ }
696
+ }
697
+ }]
698
+ };
699
+ self.$common.openDialog(dialogOption);
700
+ }
701
+ else if (field.isFormPageInTab || field.isSearchPageInTab) {// 外部框架tab页打开
702
+ submitData = field.getActionPara(submitData).para;
703
+ self.$common.getDataDrivenOpts().handler.openTab(field.action, submitData, field.pageTitle);
704
+ }
705
+ else if (field.isBrowserNewTab) {// 浏览器打开
706
+ submitData = field.getActionPara(submitData).para;
707
+ let query = self.$common.objectToQueryStr(submitData);
708
+ window.open(field.action + query, "_blank");
709
+ }
710
+ }
711
+ //执行客户端脚本
712
+ else {
713
+ submitData = field.getActionPara(submitData).para;
714
+ let title=field.pageTitle==undefined ?field.label:field.pageTitle;
715
+ submitData.actionType=field.actionType;
716
+ var fun =self.$common.getDataDrivenOpts().handler[field.action];
717
+ fun(submitData,title,self.model);
718
+ }
719
+ }
720
+
721
+ if (field.isSubmit && !self.validExcute()) {
722
+ return;
723
+ }
724
+
725
+ if (field.alert) {
726
+ self.$common.confirm(field.alertMsg, field.alertCaption, {
727
+ confirmButtonText: field.alertOKButtonText,
728
+ cancelButtonText: field.alertCancelButtonText,
729
+ //type: 'warning'
730
+ center: field.alertCenter
731
+ }).then(() => {
732
+ clickAcion(field,submitData);
733
+ }).catch(() => {
734
+ });
735
+ }
736
+ else {
737
+ clickAcion(field,submitData);
738
+ }
609
739
  },
610
740
  }
611
741
  }
@@ -374,7 +374,6 @@
374
374
  }
375
375
  //执行客户端脚本
376
376
  else {
377
- debugger
378
377
  if (!submitData) {
379
378
  submitData = {};
380
379
  var tempFormData = self.model.getFormObj();
@@ -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
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div class="field-top">
3
3
  <div class="ct-text" style="width:100%;display:flex" v-if="model !== null">
4
- <el-input v-model="model.labelValue" v-bind="model.attrs"
4
+ <!-- <el-input v-model="model.labelValue" v-bind="model.attrs"
5
5
  :class="[model.showLabel?'showLabel':'',!valid?'inputError':'','lableinput']"
6
6
  :type="model.showLabel? 'text':'textarea'"
7
7
  style="flex:1" autosize :readonly="true" autocomplete="on">
@@ -10,7 +10,18 @@
10
10
  </div>
11
11
  <span slot="suffix" v-if="model.unitName" class="ct-unitname">{{model.unitName}}</span>
12
12
  </el-input>
13
- <span v-if="model.sufLabel" style="width:auto" class="spanMessage">{{model.sufLabel}}</span>
13
+ <span v-if="model.sufLabel" style="width:auto" class="spanMessage">{{model.sufLabel}}</span> -->
14
+ <div class="el-input el-input--mini el-input-group el-input-group--prepend el-input--suffix showLabel lableinput">
15
+ <div class="el-input-group__prepend">
16
+ <div v-if="model.showLabel && model.label" slot="prepend" class="" :class="[model.labelClass]">
17
+ {{model.label}}
18
+ </div>
19
+ </div>
20
+ <label class="ct-lable">
21
+ {{model.labelValue}}
22
+ </label>
23
+ <span slot="suffix" v-if="model.unitName" class="ct-unitnameLable">{{model.unitName}}</span>
24
+ </div>
14
25
  </div>
15
26
  </div>
16
27
  </template>