cloud-web-corejs 1.0.54-dev.240 → 1.0.54-dev.242

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.
@@ -12,12 +12,6 @@
12
12
  <i class="el-icon-edit"></i>
13
13
  </a>
14
14
  </el-form-item>
15
- <!-- <el-form-item :label="i18nt('仅显示明文文本')">
16
- <el-switch v-model="optionModel.showTextEnabled" @change="optionModel.showEncryptTextEnabled=false;optionModel.showLinkTextEnabled=false;"></el-switch>
17
- </el-form-item>
18
- <el-form-item :label="i18nt('仅显示密文文本')">
19
- <el-switch v-model="optionModel.showEncryptTextEnabled" @change="optionModel.showTextEnabled=false;optionModel.showLinkTextEnabled=false;"></el-switch>
20
- </el-form-item>
21
15
  <el-form-item :label="i18nt('启用特定用户显示规则设置')">
22
16
  <el-switch v-model="optionModel.userTextRuleEnabled"></el-switch>
23
17
  </el-form-item>
@@ -27,30 +21,38 @@
27
21
  <i class="el-icon-edit"></i>
28
22
  </a>
29
23
  </el-form-item>
30
- <template v-if="optionModel.showEncryptTextEnabled || optionModel.userTextRuleEnabled">
31
- <el-form-item label-width="0">
32
- <el-divider class="custom-divider-margin-top">密文显示规则</el-divider>
33
- </el-form-item>
34
- <el-form-item :label="i18nt('全部显示为*')">
35
- <el-switch v-model="optionModel.textRule1" @change="changeTextRule1"
36
- :disabled="optionModel.textRule1 && !optionModel.textRule2 && !optionModel.textRule3"></el-switch>
37
- </el-form-item>
38
- <el-form-item :label="i18nt('前面明文,其他为*')">
39
- <el-switch v-model="optionModel.textRule2" @change="changeTextRule2"></el-switch>
40
- </el-form-item>
41
- <el-form-item :label="i18nt('前面明文位数')">
42
- <base-input-number v-model="optionModel.textRule2Number" :scale="0"></base-input-number>
43
- </el-form-item>
44
- <el-form-item :label="i18nt('后面明文,其他为*')">
45
- <el-switch v-model="optionModel.textRule3" @change="changeTextRule3"></el-switch>
46
- </el-form-item>
47
- <el-form-item :label="i18nt('后面明文位数')">
48
- <base-input-number v-model="optionModel.textRule3Number" :scale="0"></base-input-number>
49
- </el-form-item>
50
- <el-form-item label-width="0">
51
- <el-divider class="custom-divider-margin-top"></el-divider>
52
- </el-form-item>
53
- </template>
24
+ <!-- <el-form-item :label="i18nt('仅显示明文文本')">
25
+ <el-switch v-model="optionModel.showTextEnabled" @change="optionModel.showEncryptTextEnabled=false;optionModel.showLinkTextEnabled=false;"></el-switch>
26
+ </el-form-item>
27
+ <el-form-item :label="i18nt('仅显示密文文本')">
28
+ <el-switch v-model="optionModel.showEncryptTextEnabled" @change="optionModel.showTextEnabled=false;optionModel.showLinkTextEnabled=false;"></el-switch>
29
+ </el-form-item>
30
+
31
+ <template v-if="optionModel.showEncryptTextEnabled || optionModel.userTextRuleEnabled">
32
+ <el-form-item label-width="0">
33
+ <el-divider class="custom-divider-margin-top">密文显示规则</el-divider>
34
+ </el-form-item>
35
+ <el-form-item :label="i18nt('全部显示为*')">
36
+ <el-switch v-model="optionModel.textRule1" @change="changeTextRule1"
37
+ :disabled="optionModel.textRule1 && !optionModel.textRule2 && !optionModel.textRule3"></el-switch>
38
+ </el-form-item>
39
+ <el-form-item :label="i18nt('前面明文,其他为*')">
40
+ <el-switch v-model="optionModel.textRule2" @change="changeTextRule2"></el-switch>
41
+ </el-form-item>
42
+ <el-form-item :label="i18nt('前面明文位数')">
43
+ <base-input-number v-model="optionModel.textRule2Number" :scale="0"></base-input-number>
44
+ </el-form-item>
45
+ <el-form-item :label="i18nt('后面明文,其他为*')">
46
+ <el-switch v-model="optionModel.textRule3" @change="changeTextRule3"></el-switch>
47
+ </el-form-item>
48
+ <el-form-item :label="i18nt('后面明文位数')">
49
+ <base-input-number v-model="optionModel.textRule3Number" :scale="0"></base-input-number>
50
+ </el-form-item>
51
+ <el-form-item label-width="0">
52
+ <el-divider class="custom-divider-margin-top"></el-divider>
53
+ </el-form-item>
54
+ </template>
55
+ -->
54
56
  <el-dialog
55
57
  v-if="dialogVisible"
56
58
  custom-class="dialog-style list-dialog"
@@ -79,48 +81,48 @@
79
81
  style="margin-bottom: 0px;"
80
82
  >
81
83
  <el-table-column type="index" width="35" fixed="left"></el-table-column>
82
- <el-table-column :label="i18nt('服务')" width="150">
83
- <template slot-scope="{row}">
84
- <el-select v-model="row.serveType" @change="changeServeType(row)">
85
- <el-option :value="1" label="正式"></el-option>
86
- <el-option :value="2" label="UAT"></el-option>
87
- <el-option :value="3" label="测试"></el-option>
88
- <el-option :value="4" label="自定义"></el-option>
89
- </el-select>
84
+ <el-table-column :label="i18nt('组织编码')" width="250">
85
+ <template slot-scope="{ row, $index }">
86
+ <el-input
87
+ class="search-input"
88
+ max="200"
89
+ v-model="row.companyCodes"
90
+ @clear="clearBdCompanyEnv(row)"
91
+ v-el-readonly
92
+ clearable
93
+ >
94
+ <i
95
+ slot="suffix"
96
+ class="el-input__icon el-icon-search"
97
+ @click="openBdCompanyEnvDialog($index)"
98
+ ></i>
99
+ </el-input>
90
100
  </template>
91
101
  </el-table-column>
92
- <el-table-column :label="i18nt('自定义服务')" width="150">
93
- <template slot-scope="{row}">
94
- <el-input v-model="row.serveName" clearable :disabled="row.serveType!==4"></el-input>
102
+ <el-table-column :label="i18nt('服务名称')" width="150">
103
+ <template slot-scope="{ row }">
104
+ {{ row.serveName }}
95
105
  </template>
96
106
  </el-table-column>
97
- <el-table-column :label="i18nt('组织编码')" width="250">
98
- <template slot-scope="{row,$index}">
99
- <el-input v-model="row.companyCodes" clearable></el-input>
107
+ <el-table-column :label="i18nt('加密公式')" width="150">
108
+ <template slot-scope="{row}">
109
+ <el-input v-model="row.encryptFormula" clearable></el-input>
100
110
  </template>
101
111
  </el-table-column>
102
- &lt;!&ndash; <el-table-column :label="i18nt('登录名')" width="150">
103
- <template slot-scope="{row}">
104
- <el-input v-model="row.loginAccounts" clearable></el-input>
105
- </template>
106
- </el-table-column>&ndash;&gt;
112
+
107
113
  <el-table-column :label="i18nt('角色编码')" width="250">
108
114
  <template slot-scope="{row}">
109
115
  <el-input v-model="row.roleCodes" clearable></el-input>
110
116
  </template>
111
117
  </el-table-column>
112
- &lt;!&ndash; <el-table-column :label="i18nt('机构编码')" width="150">
113
- <template slot-scope="{row}">
114
- <el-input v-model="row.saleOrgCodes" clearable></el-input>
115
- </template>
116
- </el-table-column>&ndash;&gt;
118
+
117
119
  <el-table-column :label="i18nt('设置')" width="150">
118
120
  <template slot-scope="{row}">
119
121
  <el-select v-model="row.type" clearable>
120
122
  <el-option :value="1" label="明文文本显示"></el-option>
121
123
  <el-option :value="2" label="密文文本显示"></el-option>
122
- <el-option :value="0" label="组件显示"></el-option>
123
- <el-option :value="3" label="超链接显示"></el-option>
124
+ <!-- <el-option :value="0" label="组件显示"></el-option>
125
+ <el-option :value="3" label="超链接显示"></el-option>-->
124
126
  </el-select>
125
127
  </template>
126
128
  </el-table-column>
@@ -152,15 +154,23 @@
152
154
  {{ i18nt('designer.hint.confirm') }}
153
155
  </el-button>
154
156
  </div>
155
- </el-dialog>-->
157
+ </el-dialog>
158
+ <bdCompanyEnvDialog
159
+ v-if="showBdCompanyEnvDialog"
160
+ :visiable.sync="showBdCompanyEnvDialog"
161
+ @confirm="confirmBdCompanyEnvDialog"
162
+ :multi="false"
163
+ />
156
164
  </div>
157
165
  </template>
158
166
 
159
167
  <script>
160
168
  import i18n from "../../../../../components/xform/utils/i18n"
169
+ import bdCompanyEnvDialog from "@base/views/bd/setting/bd_company_env/dialog";
161
170
 
162
171
  export default {
163
172
  name: "textFlag-editor",
173
+ components: {bdCompanyEnvDialog},
164
174
  mixins: [i18n],
165
175
  props: {
166
176
  designer: Object,
@@ -172,6 +182,9 @@ export default {
172
182
  return {
173
183
  dialogVisible: false,
174
184
  tableData: [],
185
+
186
+ operateIndex: 0,
187
+ showBdCompanyEnvDialog: false,
175
188
  }
176
189
  },
177
190
  methods: {
@@ -206,31 +219,83 @@ export default {
206
219
  // loginAccounts: null,
207
220
  roleCodes: null,
208
221
  // saleOrgCodes: null,
209
- companyCodes: null
222
+ companyCodes: null,
223
+ encryptFormula:null
210
224
  }
211
225
  this.tableData.push(newItem);
212
226
  },
213
227
  colSubmit() {
228
+ // 定义正则表达式
229
+ const pattern = /^(?:\d*\*\d*|-)$/;
230
+ let tableData = this.tableData;
231
+ let map = {};
232
+ for (let i = 0; i < tableData.length; i++) {
233
+ let item = tableData[i];
234
+ if (!item.serveName) {
235
+ this.$message({
236
+ type: "error",
237
+ message: "服务名称不能为空",
238
+ });
239
+ return
240
+ }
241
+ if (!item.companyCodes) {
242
+ this.$message({
243
+ type: "error",
244
+ message: "组织编码不能为空",
245
+ });
246
+ return
247
+ }
248
+ if (!item.encryptFormula) {
249
+ this.$message({
250
+ type: "error",
251
+ message: "加密公式不能为空",
252
+ });
253
+ return
254
+ }
255
+
256
+ let serveName = item.serveName;
257
+ let companyCodes = item.companyCodes;
258
+ let key = serveName + "_" + companyCodes;
259
+ if (!map[key]) {
260
+ map[key] = true;
261
+ } else {
262
+ this.$message({
263
+ type: "error",
264
+ message: "[服务+组织]不能重复",
265
+ });
266
+ return;
267
+ }
268
+ if(!pattern.test(item.encryptFormula)){
269
+ this.$message({
270
+ type: "error",
271
+ message: `第${i}行的加密公式格式错误`,
272
+ });
273
+ return;
274
+ }
275
+
276
+ }
277
+
214
278
  this.dialogVisible = !1;
215
279
  this.optionModel.userTextRuleConfig = this.tableData;
216
280
  },
217
- changeShowLinkTextEnabled(val){
218
- this.optionModel.widgetTextLinkConfig = null;''
219
- this.optionModel.showEncryptTextEnabled=false;
220
- this.optionModel.showTextEnabled=false;
221
- if(val){
281
+ changeShowLinkTextEnabled(val) {
282
+ this.optionModel.widgetTextLinkConfig = null;
283
+ ''
284
+ this.optionModel.showEncryptTextEnabled = false;
285
+ this.optionModel.showTextEnabled = false;
286
+ if (val) {
222
287
  this.initLinkWidget();
223
288
  }
224
289
  },
225
- initLinkWidget(){
290
+ initLinkWidget() {
226
291
  let widget = null
227
292
  let keyName = this.optionModel.keyName;
228
293
  let label = this.optionModel.label;
229
- if(!this.optionModel.widgetTextLinkConfig){
294
+ if (!this.optionModel.widgetTextLinkConfig) {
230
295
  widget = this.designer.copyNewFieldWidget(this.designer.getFieldWidgetByType("a-link2"));
231
- this.$set(this.optionModel,'widgetTextLinkConfig',widget)
296
+ this.$set(this.optionModel, 'widgetTextLinkConfig', widget)
232
297
  widget.options.underline = true;
233
- }else{
298
+ } else {
234
299
  widget = this.optionModel.widgetTextLinkConfig
235
300
  }
236
301
  // widget.options.label = label;
@@ -239,7 +304,7 @@ export default {
239
304
  // widget.options.isFormLabel = true
240
305
  return widget;
241
306
  },
242
- openLinkConfig(){
307
+ openLinkConfig() {
243
308
  let widget = this.initLinkWidget();
244
309
  this.openWidgetPropertyDialog({
245
310
  // row: row,
@@ -251,7 +316,25 @@ export default {
251
316
  // this.confirmFormatConfigDialog(columnOption, row);
252
317
  },
253
318
  });
254
- }
319
+ },
320
+
321
+ clearBdCompanyEnv(row) {
322
+ row.serveName = null;
323
+ row.companyCodes = null;
324
+ },
325
+ openBdCompanyEnvDialog(rowIndex) {
326
+ this.operateIndex = rowIndex;
327
+ this.showBdCompanyEnvDialog = true;
328
+ },
329
+ confirmBdCompanyEnvDialog(rows) {
330
+ if (rows.length) {
331
+ let row = rows[0];
332
+ let item = this.tableData[this.operateIndex];
333
+ item.serveName = row.bdService;
334
+ item.companyCodes = row.bdCompanyCode;
335
+ }
336
+ },
337
+
255
338
  }
256
339
  }
257
340
  </script>