cloud-web-corejs 1.0.54-dev.646 → 1.0.54-dev.648

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,7 +1,7 @@
1
1
  {
2
2
  "name": "cloud-web-corejs",
3
3
  "private": false,
4
- "version": "1.0.54-dev.646",
4
+ "version": "1.0.54-dev.648",
5
5
  "scripts": {
6
6
  "dev": "vue-cli-service serve",
7
7
  "lint": "eslint --ext .js,.vue src",
@@ -140,78 +140,82 @@
140
140
  </el-dialog>
141
141
 
142
142
  <el-dialog
143
- :title="i18nt('配置编辑')"
144
- v-if="showDateConfigDialog"
145
- :visible.sync="showDateConfigDialog"
143
+ v-for="dlg in widgetPropertyDialogs"
144
+ :key="dlg.id"
145
+ :title="dlg.title || i18nt('配置编辑')"
146
+ :visible.sync="dlg.visible"
146
147
  :modal="false"
147
148
  :show-close="!0"
148
149
  custom-class="dialog-style list-dialog"
149
150
  :close-on-click-modal="!1"
150
151
  :close-on-press-escape="!1"
151
152
  :destroy-on-close="!0"
153
+ append-to-body
152
154
  v-el-drag-dialog
153
155
  v-el-dialog-center
156
+ :before-close="(done) => handleWidgetPropertyDialogBeforeClose(dlg, done)"
157
+ @mousedown.native="setActivePropertyDialog(dlg.id)"
154
158
  >
155
159
  <div class="cont" style="height: auto;max-height: 500px;">
156
160
  <el-scrollbar class="setting-scrollbar">
157
- <el-form :model="columnSelectedWidget.options" size="mini" label-position="left" label-width="120px" class="setting-form"
161
+ <el-form :model="dlg.columnSelectedWidget.options" size="mini" label-position="left" label-width="120px" class="setting-form"
158
162
  @submit.native.prevent>
159
- <el-collapse v-model="widgetActiveCollapseName1s" class="setting-collapse">
160
- <el-collapse-item name="1" v-if="showCollapse1(commonProps)"
163
+ <el-collapse v-model="dlg.widgetActiveCollapseName1s" class="setting-collapse">
164
+ <el-collapse-item name="1" v-if="showCollapseForDialog(dlg, commonProps)"
161
165
  :title="i18nt('designer.setting.commonSetting')">
162
166
  <template v-for="(editorName, propName) in commonProps">
163
167
  <component
164
- v-if="hasPropEditor1(propName, editorName)"
165
- :is="getPropEditor1(propName, editorName)"
168
+ v-if="hasPropEditorForDialog(dlg, propName, editorName)"
169
+ :is="getPropEditorForDialog(dlg, propName, editorName)"
166
170
  :designer="designer"
167
- :selected-widget="columnSelectedWidget"
168
- :option-model="columnSelectedWidget.options"
169
- :tableColumns="tableColumns"
170
- :key="propName"
171
+ :selected-widget="dlg.columnSelectedWidget"
172
+ :option-model="dlg.columnSelectedWidget.options"
173
+ :tableColumns="dlg.tableColumns"
174
+ :key="dlg.id + '-common-' + propName"
171
175
  ></component>
172
176
  </template>
173
177
  </el-collapse-item>
174
178
 
175
- <el-collapse-item name="2" v-if="showCollapse1(advProps)"
179
+ <el-collapse-item name="2" v-if="showCollapseForDialog(dlg, advProps)"
176
180
  :title="i18nt('designer.setting.advancedSetting')">
177
181
  <template v-for="(editorName, propName) in advProps">
178
182
  <component
179
- v-if="hasPropEditor1(propName, editorName)"
180
- :is="getPropEditor1(propName, editorName)"
183
+ v-if="hasPropEditorForDialog(dlg, propName, editorName)"
184
+ :is="getPropEditorForDialog(dlg, propName, editorName)"
181
185
  :designer="designer"
182
- :selected-widget="columnSelectedWidget"
183
- :option-model="columnSelectedWidget.options"
184
- :tableColumns="tableColumns"
185
- :key="propName"
186
+ :selected-widget="dlg.columnSelectedWidget"
187
+ :option-model="dlg.columnSelectedWidget.options"
188
+ :tableColumns="dlg.tableColumns"
189
+ :key="dlg.id + '-adv-' + propName"
186
190
  ></component>
187
191
  </template>
188
192
  </el-collapse-item>
189
- <el-collapse-item name="4" v-if="showCollapse1(wfProps)"
193
+ <el-collapse-item name="4" v-if="showCollapseForDialog(dlg, wfProps)"
190
194
  :title="i18nt('流程属性')">
191
195
  <template v-for="(editorName, propName) in wfProps">
192
196
  <component
193
- v-if="hasPropEditor1(propName, editorName)"
194
- :is="getPropEditor1(propName, editorName)"
197
+ v-if="hasPropEditorForDialog(dlg, propName, editorName)"
198
+ :is="getPropEditorForDialog(dlg, propName, editorName)"
195
199
  :designer="designer"
196
- :selected-widget="columnSelectedWidget"
197
- :option-model="columnSelectedWidget.options"
198
- :tableColumns="tableColumns"
199
- :key="propName"
200
+ :selected-widget="dlg.columnSelectedWidget"
201
+ :option-model="dlg.columnSelectedWidget.options"
202
+ :tableColumns="dlg.tableColumns"
203
+ :key="dlg.id + '-wf-' + propName"
200
204
  ></component>
201
205
  </template>
202
206
  </el-collapse-item>
203
207
 
204
- <el-collapse-item name="3" v-if="showEventCollapse1() && showCollapse1(eventProps)"
208
+ <el-collapse-item name="3" v-if="showEventCollapse1() && showCollapseForDialog(dlg, eventProps)"
205
209
  :title="i18nt('designer.setting.eventSetting')">
206
210
  <template v-for="(editorName, propName) in eventProps">
207
211
  <component
208
- v-if="hasPropEditor1(propName, editorName)"
209
- :is="getPropEditor1(propName, editorName)"
212
+ v-if="hasPropEditorForDialog(dlg, propName, editorName)"
213
+ :is="getPropEditorForDialog(dlg, propName, editorName)"
210
214
  :designer="designer"
211
- :selected-widget="columnSelectedWidget"
212
- :option-model="columnSelectedWidget.options"
213
- :tableColumns="tableColumns"
214
- :key="propName"
215
+ :selected-widget="dlg.columnSelectedWidget"
216
+ :option-model="dlg.columnSelectedWidget.options"
217
+ :tableColumns="dlg.tableColumns"
218
+ :key="dlg.id + '-event-' + propName"
215
219
  ></component>
216
220
  </template>
217
221
  </el-collapse-item>
@@ -220,10 +224,10 @@
220
224
  </el-scrollbar>
221
225
  </div>
222
226
  <div class="dialog-footer" slot="footer">
223
- <el-button @click="showDateConfigDialog = !1" class="button-sty" icon="el-icon-close">
227
+ <el-button @click="closeWidgetPropertyDialog(dlg.id)" class="button-sty" icon="el-icon-close">
224
228
  {{ i18nt('designer.hint.cancel') }}
225
229
  </el-button>
226
- <el-button type="primary" class="button-sty" @click="confirmWidgetPropertyDialog">
230
+ <el-button type="primary" class="button-sty" @click="confirmWidgetPropertyDialog(dlg)">
227
231
  {{ i18nt('designer.hint.confirm') }}
228
232
  </el-button>
229
233
  </div>
@@ -236,6 +240,7 @@ import PropertyEditors from './property-editor/index';
236
240
  import FormSetting from './form-setting';
237
241
  import dataSourceSetting from './dataSource-setting';
238
242
  import indexMixin from './indexMixin';
243
+ import widgetPropertyDialogMixin from './widgetPropertyDialogMixin';
239
244
 
240
245
  export default {
241
246
  name: 'SettingPanel',
@@ -244,7 +249,7 @@ export default {
244
249
  dataSourceSetting,
245
250
  ...PropertyEditors
246
251
  },
247
- mixins: [indexMixin],
252
+ mixins: [indexMixin, widgetPropertyDialogMixin],
248
253
  };
249
254
  </script>
250
255
 
@@ -136,10 +136,7 @@
136
136
  <el-divider class="custom-divider-margin-top">编辑表格设置</el-divider>
137
137
  </el-form-item>
138
138
  <el-form-item :label="i18nt('编辑表格')">
139
- <el-switch
140
- v-model="optionModel.isEditTable"
141
- @change="onIsEditTableChange"
142
- ></el-switch>
139
+ <el-switch v-model="optionModel.isEditTable"></el-switch>
143
140
  </el-form-item>
144
141
  <el-form-item :label="i18nt('树表格')">
145
142
  <el-switch v-model="optionModel.isTreeTable"></el-switch>
@@ -150,88 +147,6 @@
150
147
  <el-form-item :label="i18nt('排序脚本编码')" v-if="optionModel.isEditTable">
151
148
  <el-input v-model="optionModel.sortScriptCode"></el-input>
152
149
  </el-form-item>
153
- <template v-if="optionModel.isEditTable">
154
- <el-form-item
155
- label-width="0"
156
- v-if="!optionModel.rowAddAuthName || !optionModel.rowEditAuthName"
157
- >
158
- <el-button
159
- type="text"
160
- icon="el-icon-refresh-right"
161
- class="add-option"
162
- @click="createRandomRowAuthNames"
163
- >
164
- 随机生成权限名称
165
- </el-button>
166
- </el-form-item>
167
- <el-form-item label="行新增权限名称">
168
- <el-input
169
- v-model="optionModel.rowAddAuthName"
170
- placeholder="留空则不校验权限"
171
- clearable
172
- ></el-input>
173
- </el-form-item>
174
- <el-form-item label="行新增权限编码" v-if="rowAddAuthCode">
175
- <div style="word-break: break-all">
176
- <el-tooltip effect="light" content="复制">
177
- <a
178
- class="a-link"
179
- style="color: unset"
180
- @click="copyAuthCode(rowAddAuthCode, $event)"
181
- >
182
- <span
183
- ><i class="el-icon-copy-document" style="margin-right: 2px"></i
184
- >{{ rowAddAuthCode }}</span
185
- >
186
- </a>
187
- </el-tooltip>
188
- </div>
189
- </el-form-item>
190
- <el-form-item label="行编辑权限名称">
191
- <el-input
192
- v-model="optionModel.rowEditAuthName"
193
- placeholder="留空则不校验权限"
194
- clearable
195
- ></el-input>
196
- </el-form-item>
197
- <el-form-item label="行编辑权限编码" v-if="rowEditAuthCode">
198
- <div style="word-break: break-all">
199
- <el-tooltip effect="light" content="复制">
200
- <a
201
- class="a-link"
202
- style="color: unset"
203
- @click="copyAuthCode(rowEditAuthCode, $event)"
204
- >
205
- <span
206
- ><i class="el-icon-copy-document" style="margin-right: 2px"></i
207
- >{{ rowEditAuthCode }}</span
208
- >
209
- </a>
210
- </el-tooltip>
211
- </div>
212
- </el-form-item>
213
- <el-form-item label="行新增显示条件" label-width="150px">
214
- <a
215
- href="javascript:void(0);"
216
- class="a-link link-oneLind"
217
- @click="editEventHandler('rowAddShow', rowShowParams)"
218
- >
219
- <span>{{ optionModel.rowAddShow ? "已维护" : "" }}</span>
220
- <i class="el-icon-edit"></i>
221
- </a>
222
- </el-form-item>
223
- <el-form-item label="行编辑显示条件" label-width="150px">
224
- <a
225
- href="javascript:void(0);"
226
- class="a-link link-oneLind"
227
- @click="editEventHandler('rowEditShow', rowShowParams)"
228
- >
229
- <span>{{ optionModel.rowEditShow ? "已维护" : "" }}</span>
230
- <i class="el-icon-edit"></i>
231
- </a>
232
- </el-form-item>
233
- </template>
234
-
235
150
  <el-form-item label-width="0">
236
151
  <el-divider class="custom-divider-margin-top">明细导出设置</el-divider>
237
152
  </el-form-item>
@@ -428,7 +343,6 @@ import eventMixin from "../../../../../../components/xform/form-designer/setting
428
343
  import setttingConfig from "@/settings";
429
344
 
430
345
  import exportItemColumnsDialog from "./exportItemColumns-dialog.vue";
431
- import Clipboard from "clipboard";
432
346
 
433
347
  export default {
434
348
  name: "data-table-editor",
@@ -638,7 +552,6 @@ export default {
638
552
  },
639
553
  defaultCheckedKeys: [],
640
554
  tableConfigParams: ["dataId", "formCode"],
641
- rowShowParams: ["row", "rowIndex"],
642
555
  showExportItemColumnsDialog: false,
643
556
  };
644
557
  },
@@ -667,12 +580,6 @@ export default {
667
580
  this.optionModel.isNotShowQueryButton = !val;
668
581
  },
669
582
  },
670
- rowAddAuthCode() {
671
- return this.getRowAuthCode(this.getRowAddAuthName());
672
- },
673
- rowEditAuthCode() {
674
- return this.getRowAuthCode(this.getRowEditAuthName());
675
- },
676
583
  },
677
584
  created: function () {
678
585
  // this.reportTemplate = this.getReportTemplate();
@@ -774,9 +681,9 @@ export default {
774
681
  handleShowButtonsColumnChange: function (e) {
775
682
  if (e) {
776
683
  var t = this.designer.formWidget.getSelectedWidgetRef();
777
- t &&
778
- t.refreshLayout &&
779
- this.$nextTick(function () {
684
+ t
685
+ && t.refreshLayout
686
+ && this.$nextTick(function () {
780
687
  t.refreshLayout();
781
688
  });
782
689
  }
@@ -789,8 +696,8 @@ export default {
789
696
  this.optionModel.operationButtons.map(function (n, o) {
790
697
  n.name === e && o !== t && (i = !0);
791
698
  }),
792
- i &&
793
- (this.$message.error(
699
+ i
700
+ && (this.$message.error(
794
701
  this.i18nt("designer.setting.operationButtonDuplicatedNameError")
795
702
  ),
796
703
  (this.optionModel.operationButtons[t].name = this.oldButtonName));
@@ -831,9 +738,9 @@ export default {
831
738
  },
832
739
  refreshTableLayout: function () {
833
740
  var e = this.designer.formWidget.getSelectedWidgetRef();
834
- e &&
835
- e.refreshLayout &&
836
- this.$nextTick(function () {
741
+ e
742
+ && e.refreshLayout
743
+ && this.$nextTick(function () {
837
744
  e.refreshLayout();
838
745
  });
839
746
  },
@@ -891,9 +798,9 @@ export default {
891
798
  columnSelectedWidget.id = idVal;
892
799
  columnSelectedWidget.options.name = idVal;
893
800
  if (
894
- !isChange &&
895
- row.columnOption &&
896
- Object.keys(row.columnOption).length
801
+ !isChange
802
+ && row.columnOption
803
+ && Object.keys(row.columnOption).length
897
804
  ) {
898
805
  row.columnOption.required = row.required || false;
899
806
  columnSelectedWidget.options = row.columnOption;
@@ -1009,8 +916,8 @@ export default {
1009
916
  this.treeData.forEach((item1) => {
1010
917
  item1.children.forEach((item2) => {
1011
918
  if (
1012
- fields.includes(item2.name) &&
1013
- !defaultCheckedKeys.includes(item2.name)
919
+ fields.includes(item2.name)
920
+ && !defaultCheckedKeys.includes(item2.name)
1014
921
  ) {
1015
922
  defaultCheckedKeys.push(item2.name);
1016
923
  }
@@ -1054,10 +961,10 @@ export default {
1054
961
  this.showTableConfigDialog = true;
1055
962
  },
1056
963
  downloadExcel() {
1057
- let defaultUrl =
1058
- "http://file.sc.5mall.com/download/repo1/b/mk1/2024/12/13/b2aea548-a9a8-4dca-bba7-8d9c6134ebe3.xlsx";
1059
- let xformImportTemplateFile =
1060
- setttingConfig.xformImportTemplateFile || defaultUrl;
964
+ let defaultUrl
965
+ = "http://file.sc.5mall.com/download/repo1/b/mk1/2024/12/13/b2aea548-a9a8-4dca-bba7-8d9c6134ebe3.xlsx";
966
+ let xformImportTemplateFile
967
+ = setttingConfig.xformImportTemplateFile || defaultUrl;
1061
968
  if (!xformImportTemplateFile) return;
1062
969
  this.$commonFileUtil.downloadFile(
1063
970
  xformImportTemplateFile,
@@ -1073,73 +980,6 @@ export default {
1073
980
  openExportItemColumnsDialog() {
1074
981
  this.showExportItemColumnsDialog = true;
1075
982
  },
1076
- getRowAddAuthName() {
1077
- return this.optionModel.rowAddAuthName ?? this.optionModel.treeRowAddName;
1078
- },
1079
- getRowEditAuthName() {
1080
- return (
1081
- this.optionModel.rowEditAuthName ?? this.optionModel.treeRowEditName
1082
- );
1083
- },
1084
- getRowAuthCode(authName) {
1085
- if (!authName || !this.reportTemplate?.formCode) {
1086
- return "";
1087
- }
1088
- return this.reportTemplate.formCode + ":" + authName;
1089
- },
1090
- createRowAuthName(type) {
1091
- return `row${type}` + generateId();
1092
- },
1093
- onIsEditTableChange(enabled) {
1094
- if (!enabled) {
1095
- return;
1096
- }
1097
- if (!this.getRowAddAuthName()) {
1098
- this.createRandomRowAddAuthName();
1099
- }
1100
- if (!this.getRowEditAuthName()) {
1101
- this.createRandomRowEditAuthName();
1102
- }
1103
- },
1104
- createRandomRowAddAuthName() {
1105
- this.$set(
1106
- this.optionModel,
1107
- "rowAddAuthName",
1108
- this.createRowAuthName("Add")
1109
- );
1110
- },
1111
- createRandomRowEditAuthName() {
1112
- this.$set(
1113
- this.optionModel,
1114
- "rowEditAuthName",
1115
- this.createRowAuthName("Edit")
1116
- );
1117
- },
1118
- createRandomRowAuthNames() {
1119
- // this.createRandomRowAddAuthName();
1120
- // this.createRandomRowEditAuthName();
1121
- if (!this.getRowAddAuthName()) {
1122
- this.createRandomRowAddAuthName();
1123
- }
1124
- if (!this.getRowEditAuthName()) {
1125
- this.createRandomRowEditAuthName();
1126
- }
1127
- this.$message.success("生成成功");
1128
- },
1129
- copyAuthCode(content, clickEvent) {
1130
- const clipboard = new Clipboard(clickEvent.target, {
1131
- text: () => content,
1132
- });
1133
- clipboard.on("success", () => {
1134
- this.$message.success("复制成功");
1135
- clipboard.destroy();
1136
- });
1137
- clipboard.on("error", () => {
1138
- this.$message.error("复制失败");
1139
- clipboard.destroy();
1140
- });
1141
- clipboard.onClick(clickEvent);
1142
- },
1143
983
  },
1144
984
  };
1145
985
  </script>