woodao-pc-ui 0.0.62 → 0.0.64

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": "woodao-pc-ui",
3
- "version": "0.0.62",
3
+ "version": "0.0.64",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve",
@@ -161259,7 +161259,7 @@ function useEcharts(dom, theme) {
161259
161259
  return instance;
161260
161260
  }
161261
161261
  ;// ./package.json
161262
- var package_namespaceObject = {"rE":"0.0.62"};
161262
+ var package_namespaceObject = {"rE":"0.0.64"};
161263
161263
  ;// ./src/setting/index.ts
161264
161264
 
161265
161265
  const primaryColors = (/* unused pure expression or super */ null && (["#409eff", "#13C2C2", "#F5222D", "#722ED1", "#f7acbc", "#ef5b9c", "#bd6758", "#f47920", "#2e3a1f", "#b2d235", "#121a2a", "#6a6da9", "#867892", "#fcaf17", "#76becc", "#1b315e", "#b4532a", "#008792"]));
@@ -174137,9 +174137,9 @@ const BaseFormItem_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseF
174137
174137
  const BaseForm_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseFormvue_type_script_lang_ts, [['render',BaseFormvue_type_template_id_ad37d90c_scoped_true_ts_true_render],['__scopeId',"data-v-ad37d90c"]])
174138
174138
 
174139
174139
  /* harmony default export */ var BaseForm = (BaseForm_exports_);
174140
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=template&id=02a812c0&scoped=true
174140
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=template&id=131dc298&scoped=true
174141
174141
 
174142
- function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache, $props, $setup, $data, $options) {
174142
+ function BaseGridvue_type_template_id_131dc298_scoped_true_render(_ctx, _cache, $props, $setup, $data, $options) {
174143
174143
  const _component_el_input = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-input");
174144
174144
  const _component_el_date_picker = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-date-picker");
174145
174145
  const _component_el_option = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-option");
@@ -174166,8 +174166,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174166
174166
  class: "custom-input my-input",
174167
174167
  modelValue: row[column.field],
174168
174168
  "onUpdate:modelValue": $event => row[column.field] = $event,
174169
- placeholder: ""
174170
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174169
+ placeholder: "",
174170
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174171
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174171
174172
  number_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174172
174173
  row,
174173
174174
  column
@@ -174176,8 +174177,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174176
174177
  class: "custom-input my-input",
174177
174178
  modelValue: row[column.field],
174178
174179
  "onUpdate:modelValue": $event => row[column.field] = $event,
174179
- placeholder: ""
174180
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174180
+ placeholder: "",
174181
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174182
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174181
174183
  date_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174182
174184
  row,
174183
174185
  column
@@ -174193,8 +174195,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174193
174195
  "onUpdate:modelValue": $event => row[column.field] = $event,
174194
174196
  type: "date",
174195
174197
  "range-separator": "-",
174196
- placeholder: ''
174197
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174198
+ placeholder: '',
174199
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174200
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174198
174201
  month_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174199
174202
  row,
174200
174203
  column
@@ -174210,14 +174213,15 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174210
174213
  "onUpdate:modelValue": $event => row[column.field] = $event,
174211
174214
  type: "month",
174212
174215
  "range-separator": "-",
174213
- placeholder: ''
174214
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174216
+ placeholder: '',
174217
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174218
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174215
174219
  year_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174216
174220
  row,
174217
174221
  column
174218
174222
  }) => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_el_date_picker, {
174219
- "value-format": "YYYY-MM",
174220
- format: "YYYY-MM",
174223
+ "value-format": "YYYY",
174224
+ format: "YYYY",
174221
174225
  style: {
174222
174226
  "width": "130px"
174223
174227
  },
@@ -174227,8 +174231,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174227
174231
  "onUpdate:modelValue": $event => row[column.field] = $event,
174228
174232
  type: "year",
174229
174233
  "range-separator": "-",
174230
- placeholder: ''
174231
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174234
+ placeholder: '',
174235
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174236
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174232
174237
  selectOfSysObjectDef_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174233
174238
  row,
174234
174239
  column
@@ -174240,6 +174245,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174240
174245
  filterable: true,
174241
174246
  clearable: true,
174242
174247
  disabled: false,
174248
+ onChange: $event => _ctx.handleSelectChange(row, column.field, $event),
174243
174249
  style: {
174244
174250
  "width": "100%"
174245
174251
  },
@@ -174253,7 +174259,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174253
174259
  }, null, 8, ["value", "label"]);
174254
174260
  }), 128))]),
174255
174261
  _: 2
174256
- }, 1032, ["modelValue", "onUpdate:modelValue"])]),
174262
+ }, 1032, ["modelValue", "onUpdate:modelValue", "onChange"])]),
174257
174263
  sysCodingDrop_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174258
174264
  row,
174259
174265
  column
@@ -174263,8 +174269,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174263
174269
  filterable: row.filterable === true,
174264
174270
  bindValue: row[column.field],
174265
174271
  bindLabel: column.title,
174266
- isVxeMode: true
174267
- }, null, 8, ["sysCode", "item", "filterable", "bindValue", "bindLabel"])]),
174272
+ isVxeMode: true,
174273
+ onSelectChange: $event => _ctx.handleSelectChange(row, column.field, $event)
174274
+ }, null, 8, ["sysCode", "item", "filterable", "bindValue", "bindLabel", "onSelectChange"])]),
174268
174275
  selectByParentCode_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174269
174276
  row,
174270
174277
  column
@@ -174275,8 +174282,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174275
174282
  filterable: _ctx.item.filterable === true,
174276
174283
  bindValue: row[column.field],
174277
174284
  bindLabel: column.title,
174278
- isVxeMode: true
174279
- }, null, 8, ["dictCode", "keyCodeOfParent", "item", "filterable", "bindValue", "bindLabel"])]),
174285
+ isVxeMode: true,
174286
+ onSelectChange: $event => _ctx.handleSelectChange(row, column.field, $event)
174287
+ }, null, 8, ["dictCode", "keyCodeOfParent", "item", "filterable", "bindValue", "bindLabel", "onSelectChange"])]),
174280
174288
  selPeople_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174281
174289
  row,
174282
174290
  column
@@ -174297,7 +174305,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174297
174305
  };
174298
174306
  })]), 1040, ["onPageChange", "onCellClick", "onCheckboxChange", "onCurrentChange", "onCellMouseenter", "onCellMouseleave", "onCellDblclick"]);
174299
174307
  }
174300
- ;// ./src/package/Grid/BaseGrid.vue?vue&type=template&id=02a812c0&scoped=true
174308
+ ;// ./src/package/Grid/BaseGrid.vue?vue&type=template&id=131dc298&scoped=true
174301
174309
 
174302
174310
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=script&lang=js
174303
174311
 
@@ -174341,10 +174349,12 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174341
174349
  validator: value => ['view', 'edit'].includes(value)
174342
174350
  }
174343
174351
  },
174344
- emits: ['page-change', 'cell-click', 'checkbox-change', 'current-change', 'cell-mouseenter', 'cell-mouseleave', 'cell-dblclick'],
174352
+ emits: ['page-change', 'cell-click', 'checkbox-change', 'current-change', 'cell-mouseenter', 'cell-mouseleave', 'cell-dblclick', 'batch-edit'],
174345
174353
  setup(props, context) {
174346
174354
  const xGrid = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(null);
174347
174355
  let lastClickedRow = null;
174356
+ // 存储初始值,用于比较是否有变化
174357
+ const initialValues = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(new Map());
174348
174358
 
174349
174359
  // 单元格点击事件:根据模式决定是否取消其他行勾选
174350
174360
  async function handleCellClick({
@@ -174392,10 +174402,15 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174392
174402
  await $grid.setCheckboxRow(row, true);
174393
174403
  await $grid.setCurrentRow(row);
174394
174404
  } else if (props.tableMode === 'edit') {
174395
- // 编辑模式:点击行时切换当前行的勾选状态,不取消其他行的勾选(多选效果)
174396
- const isChecked = await $grid.isCheckboxRowByRow(row);
174397
- await $grid.setCheckboxRow(row, !isChecked);
174405
+ // 编辑模式:点击行时只设置当前行,不切换勾选状态(保持多选效果)
174398
174406
  await $grid.setCurrentRow(row);
174407
+
174408
+ // 如果当前行未勾选,则勾选它(确保当前行被勾选)
174409
+ const checkboxRecords = await $grid.getCheckboxRecords();
174410
+ const isChecked = checkboxRecords.some(record => record && record.id === row.id);
174411
+ if (!isChecked) {
174412
+ await $grid.setCheckboxRow(row, true);
174413
+ }
174399
174414
  }
174400
174415
  const rows = await $grid.getCheckboxRecords();
174401
174416
  // 过滤掉 undefined 和 null 值,避免 toString() 错误
@@ -174437,6 +174452,90 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174437
174452
  await $grid.setCurrentRow(lastClickedRow);
174438
174453
  }
174439
174454
  }
174455
+
174456
+ // 处理输入框失去焦点事件
174457
+ function handleInputBlur(row, field, event) {
174458
+ // 只在编辑模式下处理批量编辑
174459
+ if (props.tableMode !== 'edit') {
174460
+ return;
174461
+ }
174462
+ const newValue = event.target ? event.target.value : event;
174463
+ const rowId = row.id;
174464
+ const fieldKey = `${rowId}_${field}`;
174465
+
174466
+ // 获取初始值
174467
+ const initialValue = initialValues.value.get(fieldKey);
174468
+
174469
+ // 检查值是否真的发生了变化
174470
+ if (initialValue !== undefined && initialValue === newValue) {
174471
+ // 值没有变化,不执行批量编辑
174472
+ return;
174473
+ }
174474
+
174475
+ // 获取所有选中的行
174476
+ const selectedRows = xGrid.value?.getCheckboxRecords() || [];
174477
+
174478
+ // 如果没有选中行或只有当前行,不执行批量编辑
174479
+ if (selectedRows.length <= 1) {
174480
+ return;
174481
+ }
174482
+
174483
+ // 检查当前行是否在选中行中
174484
+ const isCurrentRowSelected = selectedRows.some(selectedRow => selectedRow.id === rowId);
174485
+ if (!isCurrentRowSelected) {
174486
+ return;
174487
+ }
174488
+
174489
+ // 执行批量编辑
174490
+ context.emit('batch-edit', {
174491
+ currentRow: row,
174492
+ field: field,
174493
+ newValue: newValue,
174494
+ selectedRows: selectedRows
174495
+ });
174496
+ }
174497
+
174498
+ // 处理选择器变化事件
174499
+ function handleSelectChange(row, field, value) {
174500
+ // 只在编辑模式下处理批量编辑
174501
+ if (props.tableMode !== 'edit') {
174502
+ return;
174503
+ }
174504
+ const rowId = row.id;
174505
+
174506
+ // 获取所有选中的行
174507
+ const selectedRows = xGrid.value?.getCheckboxRecords() || [];
174508
+
174509
+ // 如果没有选中行或只有当前行,不执行批量编辑
174510
+ if (selectedRows.length <= 1) {
174511
+ return;
174512
+ }
174513
+
174514
+ // 检查当前行是否在选中行中
174515
+ const isCurrentRowSelected = selectedRows.some(selectedRow => selectedRow.id === rowId);
174516
+ if (!isCurrentRowSelected) {
174517
+ return;
174518
+ }
174519
+
174520
+ // 执行批量编辑
174521
+ context.emit('batch-edit', {
174522
+ currentRow: row,
174523
+ field: field,
174524
+ newValue: value,
174525
+ selectedRows: selectedRows
174526
+ });
174527
+ }
174528
+
174529
+ // 监听单元格进入编辑状态,记录初始值
174530
+ function handleCellEditStart({
174531
+ row,
174532
+ column
174533
+ }) {
174534
+ if (props.tableMode === 'edit') {
174535
+ const fieldKey = `${row.id}_${column.field}`;
174536
+ initialValues.value.set(fieldKey, row[column.field]);
174537
+ }
174538
+ }
174440
174539
  function handlePageChange(...args) {
174441
174540
  context.emit('page-change', ...args);
174442
174541
  }
@@ -174480,32 +174579,11 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174480
174579
  let arr = JSON.parse(storageUtils/* default */.A.getSessionItem("selSysObjectData"));
174481
174580
  if (arr && arr.length > 0) {
174482
174581
  selSysObjectData.value = arr;
174483
- console_browserify_default().log(selSysObjectData.value, 'selSysObjectData11111');
174582
+ console.log(selSysObjectData.value, 'selSysObjectData11111');
174484
174583
  return false;
174485
174584
  }
174486
- /* let params = {
174487
- };
174488
- let page = false;
174489
- let queryCommand = new QueryCommand({
174490
- url: SysConfigUtils.niftyUrl + "/pub/sys_object_def/list_for_select",
174491
- });
174492
- //执行查询操作
174493
- queryCommand.executeQuery({
174494
- params,
174495
- successFun: (backData) => {
174496
- backData.forEach((item, index) => {
174497
- item.label = item.objDes
174498
- item.value = item.objName
174499
- })
174500
- selSysObjectData.value = backData
174501
- StorageUtils.addSessionItem("selSysObjectData", JSON.stringify(backData));
174502
- },
174503
- errorFun: (backData) => {
174504
- },
174505
- });*/
174506
174585
  };
174507
174586
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
174508
-
174509
174587
  //编辑模式下 获取数据
174510
174588
  // if (){
174511
174589
  // getSysListForSelect()
@@ -174525,6 +174603,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174525
174603
  handleMouseEnter,
174526
174604
  handleMouseLeave,
174527
174605
  handleDBLClick,
174606
+ handleInputBlur,
174607
+ handleSelectChange,
174608
+ handleCellEditStart,
174528
174609
  getCheckboxRecords,
174529
174610
  getSelectedRows,
174530
174611
  getSelectedRow
@@ -174533,10 +174614,10 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174533
174614
  }));
174534
174615
  ;// ./src/package/Grid/BaseGrid.vue?vue&type=script&lang=js
174535
174616
 
174536
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=02a812c0&scoped=true&lang=css
174617
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=131dc298&scoped=true&lang=css
174537
174618
  // extracted by mini-css-extract-plugin
174538
174619
 
174539
- ;// ./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=02a812c0&scoped=true&lang=css
174620
+ ;// ./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=131dc298&scoped=true&lang=css
174540
174621
 
174541
174622
  ;// ./src/package/Grid/BaseGrid.vue
174542
174623
 
@@ -174546,7 +174627,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174546
174627
  ;
174547
174628
 
174548
174629
 
174549
- const BaseGrid_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseGridvue_type_script_lang_js, [['render',BaseGridvue_type_template_id_02a812c0_scoped_true_render],['__scopeId',"data-v-02a812c0"]])
174630
+ const BaseGrid_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseGridvue_type_script_lang_js, [['render',BaseGridvue_type_template_id_131dc298_scoped_true_render],['__scopeId',"data-v-131dc298"]])
174550
174631
 
174551
174632
  /* harmony default export */ var BaseGrid = (BaseGrid_exports_);
174552
174633
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/GoVxeGrid.vue?vue&type=template&id=5ae8129d&scoped=true
@@ -161259,7 +161259,7 @@ function useEcharts(dom, theme) {
161259
161259
  return instance;
161260
161260
  }
161261
161261
  ;// ./package.json
161262
- var package_namespaceObject = {"rE":"0.0.62"};
161262
+ var package_namespaceObject = {"rE":"0.0.64"};
161263
161263
  ;// ./src/setting/index.ts
161264
161264
 
161265
161265
  const primaryColors = (/* unused pure expression or super */ null && (["#409eff", "#13C2C2", "#F5222D", "#722ED1", "#f7acbc", "#ef5b9c", "#bd6758", "#f47920", "#2e3a1f", "#b2d235", "#121a2a", "#6a6da9", "#867892", "#fcaf17", "#76becc", "#1b315e", "#b4532a", "#008792"]));
@@ -174137,9 +174137,9 @@ const BaseFormItem_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseF
174137
174137
  const BaseForm_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseFormvue_type_script_lang_ts, [['render',BaseFormvue_type_template_id_ad37d90c_scoped_true_ts_true_render],['__scopeId',"data-v-ad37d90c"]])
174138
174138
 
174139
174139
  /* harmony default export */ var BaseForm = (BaseForm_exports_);
174140
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-84.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=template&id=02a812c0&scoped=true
174140
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-84.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=template&id=131dc298&scoped=true
174141
174141
 
174142
- function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache, $props, $setup, $data, $options) {
174142
+ function BaseGridvue_type_template_id_131dc298_scoped_true_render(_ctx, _cache, $props, $setup, $data, $options) {
174143
174143
  const _component_el_input = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-input");
174144
174144
  const _component_el_date_picker = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-date-picker");
174145
174145
  const _component_el_option = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-option");
@@ -174166,8 +174166,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174166
174166
  class: "custom-input my-input",
174167
174167
  modelValue: row[column.field],
174168
174168
  "onUpdate:modelValue": $event => row[column.field] = $event,
174169
- placeholder: ""
174170
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174169
+ placeholder: "",
174170
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174171
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174171
174172
  number_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174172
174173
  row,
174173
174174
  column
@@ -174176,8 +174177,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174176
174177
  class: "custom-input my-input",
174177
174178
  modelValue: row[column.field],
174178
174179
  "onUpdate:modelValue": $event => row[column.field] = $event,
174179
- placeholder: ""
174180
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174180
+ placeholder: "",
174181
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174182
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174181
174183
  date_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174182
174184
  row,
174183
174185
  column
@@ -174193,8 +174195,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174193
174195
  "onUpdate:modelValue": $event => row[column.field] = $event,
174194
174196
  type: "date",
174195
174197
  "range-separator": "-",
174196
- placeholder: ''
174197
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174198
+ placeholder: '',
174199
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174200
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174198
174201
  month_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174199
174202
  row,
174200
174203
  column
@@ -174210,14 +174213,15 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174210
174213
  "onUpdate:modelValue": $event => row[column.field] = $event,
174211
174214
  type: "month",
174212
174215
  "range-separator": "-",
174213
- placeholder: ''
174214
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174216
+ placeholder: '',
174217
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174218
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174215
174219
  year_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174216
174220
  row,
174217
174221
  column
174218
174222
  }) => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_el_date_picker, {
174219
- "value-format": "YYYY-MM",
174220
- format: "YYYY-MM",
174223
+ "value-format": "YYYY",
174224
+ format: "YYYY",
174221
174225
  style: {
174222
174226
  "width": "130px"
174223
174227
  },
@@ -174227,8 +174231,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174227
174231
  "onUpdate:modelValue": $event => row[column.field] = $event,
174228
174232
  type: "year",
174229
174233
  "range-separator": "-",
174230
- placeholder: ''
174231
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174234
+ placeholder: '',
174235
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174236
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174232
174237
  selectOfSysObjectDef_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174233
174238
  row,
174234
174239
  column
@@ -174240,6 +174245,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174240
174245
  filterable: true,
174241
174246
  clearable: true,
174242
174247
  disabled: false,
174248
+ onChange: $event => _ctx.handleSelectChange(row, column.field, $event),
174243
174249
  style: {
174244
174250
  "width": "100%"
174245
174251
  },
@@ -174253,7 +174259,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174253
174259
  }, null, 8, ["value", "label"]);
174254
174260
  }), 128))]),
174255
174261
  _: 2
174256
- }, 1032, ["modelValue", "onUpdate:modelValue"])]),
174262
+ }, 1032, ["modelValue", "onUpdate:modelValue", "onChange"])]),
174257
174263
  sysCodingDrop_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174258
174264
  row,
174259
174265
  column
@@ -174263,8 +174269,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174263
174269
  filterable: row.filterable === true,
174264
174270
  bindValue: row[column.field],
174265
174271
  bindLabel: column.title,
174266
- isVxeMode: true
174267
- }, null, 8, ["sysCode", "item", "filterable", "bindValue", "bindLabel"])]),
174272
+ isVxeMode: true,
174273
+ onSelectChange: $event => _ctx.handleSelectChange(row, column.field, $event)
174274
+ }, null, 8, ["sysCode", "item", "filterable", "bindValue", "bindLabel", "onSelectChange"])]),
174268
174275
  selectByParentCode_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174269
174276
  row,
174270
174277
  column
@@ -174275,8 +174282,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174275
174282
  filterable: _ctx.item.filterable === true,
174276
174283
  bindValue: row[column.field],
174277
174284
  bindLabel: column.title,
174278
- isVxeMode: true
174279
- }, null, 8, ["dictCode", "keyCodeOfParent", "item", "filterable", "bindValue", "bindLabel"])]),
174285
+ isVxeMode: true,
174286
+ onSelectChange: $event => _ctx.handleSelectChange(row, column.field, $event)
174287
+ }, null, 8, ["dictCode", "keyCodeOfParent", "item", "filterable", "bindValue", "bindLabel", "onSelectChange"])]),
174280
174288
  selPeople_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174281
174289
  row,
174282
174290
  column
@@ -174297,7 +174305,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174297
174305
  };
174298
174306
  })]), 1040, ["onPageChange", "onCellClick", "onCheckboxChange", "onCurrentChange", "onCellMouseenter", "onCellMouseleave", "onCellDblclick"]);
174299
174307
  }
174300
- ;// ./src/package/Grid/BaseGrid.vue?vue&type=template&id=02a812c0&scoped=true
174308
+ ;// ./src/package/Grid/BaseGrid.vue?vue&type=template&id=131dc298&scoped=true
174301
174309
 
174302
174310
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-84.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=script&lang=js
174303
174311
 
@@ -174341,10 +174349,12 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174341
174349
  validator: value => ['view', 'edit'].includes(value)
174342
174350
  }
174343
174351
  },
174344
- emits: ['page-change', 'cell-click', 'checkbox-change', 'current-change', 'cell-mouseenter', 'cell-mouseleave', 'cell-dblclick'],
174352
+ emits: ['page-change', 'cell-click', 'checkbox-change', 'current-change', 'cell-mouseenter', 'cell-mouseleave', 'cell-dblclick', 'batch-edit'],
174345
174353
  setup(props, context) {
174346
174354
  const xGrid = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(null);
174347
174355
  let lastClickedRow = null;
174356
+ // 存储初始值,用于比较是否有变化
174357
+ const initialValues = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(new Map());
174348
174358
 
174349
174359
  // 单元格点击事件:根据模式决定是否取消其他行勾选
174350
174360
  async function handleCellClick({
@@ -174392,10 +174402,15 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174392
174402
  await $grid.setCheckboxRow(row, true);
174393
174403
  await $grid.setCurrentRow(row);
174394
174404
  } else if (props.tableMode === 'edit') {
174395
- // 编辑模式:点击行时切换当前行的勾选状态,不取消其他行的勾选(多选效果)
174396
- const isChecked = await $grid.isCheckboxRowByRow(row);
174397
- await $grid.setCheckboxRow(row, !isChecked);
174405
+ // 编辑模式:点击行时只设置当前行,不切换勾选状态(保持多选效果)
174398
174406
  await $grid.setCurrentRow(row);
174407
+
174408
+ // 如果当前行未勾选,则勾选它(确保当前行被勾选)
174409
+ const checkboxRecords = await $grid.getCheckboxRecords();
174410
+ const isChecked = checkboxRecords.some(record => record && record.id === row.id);
174411
+ if (!isChecked) {
174412
+ await $grid.setCheckboxRow(row, true);
174413
+ }
174399
174414
  }
174400
174415
  const rows = await $grid.getCheckboxRecords();
174401
174416
  // 过滤掉 undefined 和 null 值,避免 toString() 错误
@@ -174437,6 +174452,90 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174437
174452
  await $grid.setCurrentRow(lastClickedRow);
174438
174453
  }
174439
174454
  }
174455
+
174456
+ // 处理输入框失去焦点事件
174457
+ function handleInputBlur(row, field, event) {
174458
+ // 只在编辑模式下处理批量编辑
174459
+ if (props.tableMode !== 'edit') {
174460
+ return;
174461
+ }
174462
+ const newValue = event.target ? event.target.value : event;
174463
+ const rowId = row.id;
174464
+ const fieldKey = `${rowId}_${field}`;
174465
+
174466
+ // 获取初始值
174467
+ const initialValue = initialValues.value.get(fieldKey);
174468
+
174469
+ // 检查值是否真的发生了变化
174470
+ if (initialValue !== undefined && initialValue === newValue) {
174471
+ // 值没有变化,不执行批量编辑
174472
+ return;
174473
+ }
174474
+
174475
+ // 获取所有选中的行
174476
+ const selectedRows = xGrid.value?.getCheckboxRecords() || [];
174477
+
174478
+ // 如果没有选中行或只有当前行,不执行批量编辑
174479
+ if (selectedRows.length <= 1) {
174480
+ return;
174481
+ }
174482
+
174483
+ // 检查当前行是否在选中行中
174484
+ const isCurrentRowSelected = selectedRows.some(selectedRow => selectedRow.id === rowId);
174485
+ if (!isCurrentRowSelected) {
174486
+ return;
174487
+ }
174488
+
174489
+ // 执行批量编辑
174490
+ context.emit('batch-edit', {
174491
+ currentRow: row,
174492
+ field: field,
174493
+ newValue: newValue,
174494
+ selectedRows: selectedRows
174495
+ });
174496
+ }
174497
+
174498
+ // 处理选择器变化事件
174499
+ function handleSelectChange(row, field, value) {
174500
+ // 只在编辑模式下处理批量编辑
174501
+ if (props.tableMode !== 'edit') {
174502
+ return;
174503
+ }
174504
+ const rowId = row.id;
174505
+
174506
+ // 获取所有选中的行
174507
+ const selectedRows = xGrid.value?.getCheckboxRecords() || [];
174508
+
174509
+ // 如果没有选中行或只有当前行,不执行批量编辑
174510
+ if (selectedRows.length <= 1) {
174511
+ return;
174512
+ }
174513
+
174514
+ // 检查当前行是否在选中行中
174515
+ const isCurrentRowSelected = selectedRows.some(selectedRow => selectedRow.id === rowId);
174516
+ if (!isCurrentRowSelected) {
174517
+ return;
174518
+ }
174519
+
174520
+ // 执行批量编辑
174521
+ context.emit('batch-edit', {
174522
+ currentRow: row,
174523
+ field: field,
174524
+ newValue: value,
174525
+ selectedRows: selectedRows
174526
+ });
174527
+ }
174528
+
174529
+ // 监听单元格进入编辑状态,记录初始值
174530
+ function handleCellEditStart({
174531
+ row,
174532
+ column
174533
+ }) {
174534
+ if (props.tableMode === 'edit') {
174535
+ const fieldKey = `${row.id}_${column.field}`;
174536
+ initialValues.value.set(fieldKey, row[column.field]);
174537
+ }
174538
+ }
174440
174539
  function handlePageChange(...args) {
174441
174540
  context.emit('page-change', ...args);
174442
174541
  }
@@ -174480,32 +174579,11 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174480
174579
  let arr = JSON.parse(storageUtils/* default */.A.getSessionItem("selSysObjectData"));
174481
174580
  if (arr && arr.length > 0) {
174482
174581
  selSysObjectData.value = arr;
174483
- console_browserify_default().log(selSysObjectData.value, 'selSysObjectData11111');
174582
+ console.log(selSysObjectData.value, 'selSysObjectData11111');
174484
174583
  return false;
174485
174584
  }
174486
- /* let params = {
174487
- };
174488
- let page = false;
174489
- let queryCommand = new QueryCommand({
174490
- url: SysConfigUtils.niftyUrl + "/pub/sys_object_def/list_for_select",
174491
- });
174492
- //执行查询操作
174493
- queryCommand.executeQuery({
174494
- params,
174495
- successFun: (backData) => {
174496
- backData.forEach((item, index) => {
174497
- item.label = item.objDes
174498
- item.value = item.objName
174499
- })
174500
- selSysObjectData.value = backData
174501
- StorageUtils.addSessionItem("selSysObjectData", JSON.stringify(backData));
174502
- },
174503
- errorFun: (backData) => {
174504
- },
174505
- });*/
174506
174585
  };
174507
174586
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
174508
-
174509
174587
  //编辑模式下 获取数据
174510
174588
  // if (){
174511
174589
  // getSysListForSelect()
@@ -174525,6 +174603,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174525
174603
  handleMouseEnter,
174526
174604
  handleMouseLeave,
174527
174605
  handleDBLClick,
174606
+ handleInputBlur,
174607
+ handleSelectChange,
174608
+ handleCellEditStart,
174528
174609
  getCheckboxRecords,
174529
174610
  getSelectedRows,
174530
174611
  getSelectedRow
@@ -174533,10 +174614,10 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174533
174614
  }));
174534
174615
  ;// ./src/package/Grid/BaseGrid.vue?vue&type=script&lang=js
174535
174616
 
174536
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-56.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-56.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-56.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=02a812c0&scoped=true&lang=css
174617
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-56.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-56.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-56.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=131dc298&scoped=true&lang=css
174537
174618
  // extracted by mini-css-extract-plugin
174538
174619
 
174539
- ;// ./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=02a812c0&scoped=true&lang=css
174620
+ ;// ./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=131dc298&scoped=true&lang=css
174540
174621
 
174541
174622
  ;// ./src/package/Grid/BaseGrid.vue
174542
174623
 
@@ -174546,7 +174627,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174546
174627
  ;
174547
174628
 
174548
174629
 
174549
- const BaseGrid_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseGridvue_type_script_lang_js, [['render',BaseGridvue_type_template_id_02a812c0_scoped_true_render],['__scopeId',"data-v-02a812c0"]])
174630
+ const BaseGrid_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseGridvue_type_script_lang_js, [['render',BaseGridvue_type_template_id_131dc298_scoped_true_render],['__scopeId',"data-v-131dc298"]])
174550
174631
 
174551
174632
  /* harmony default export */ var BaseGrid = (BaseGrid_exports_);
174552
174633
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-84.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/GoVxeGrid.vue?vue&type=template&id=5ae8129d&scoped=true
@@ -161259,7 +161259,7 @@ function useEcharts(dom, theme) {
161259
161259
  return instance;
161260
161260
  }
161261
161261
  ;// ./package.json
161262
- var package_namespaceObject = {"rE":"0.0.62"};
161262
+ var package_namespaceObject = {"rE":"0.0.64"};
161263
161263
  ;// ./src/setting/index.ts
161264
161264
 
161265
161265
  const primaryColors = (/* unused pure expression or super */ null && (["#409eff", "#13C2C2", "#F5222D", "#722ED1", "#f7acbc", "#ef5b9c", "#bd6758", "#f47920", "#2e3a1f", "#b2d235", "#121a2a", "#6a6da9", "#867892", "#fcaf17", "#76becc", "#1b315e", "#b4532a", "#008792"]));
@@ -174137,9 +174137,9 @@ const BaseFormItem_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseF
174137
174137
  const BaseForm_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseFormvue_type_script_lang_ts, [['render',BaseFormvue_type_template_id_ad37d90c_scoped_true_ts_true_render],['__scopeId',"data-v-ad37d90c"]])
174138
174138
 
174139
174139
  /* harmony default export */ var BaseForm = (BaseForm_exports_);
174140
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-128.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=template&id=02a812c0&scoped=true
174140
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-128.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=template&id=131dc298&scoped=true
174141
174141
 
174142
- function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache, $props, $setup, $data, $options) {
174142
+ function BaseGridvue_type_template_id_131dc298_scoped_true_render(_ctx, _cache, $props, $setup, $data, $options) {
174143
174143
  const _component_el_input = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-input");
174144
174144
  const _component_el_date_picker = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-date-picker");
174145
174145
  const _component_el_option = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("el-option");
@@ -174166,8 +174166,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174166
174166
  class: "custom-input my-input",
174167
174167
  modelValue: row[column.field],
174168
174168
  "onUpdate:modelValue": $event => row[column.field] = $event,
174169
- placeholder: ""
174170
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174169
+ placeholder: "",
174170
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174171
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174171
174172
  number_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174172
174173
  row,
174173
174174
  column
@@ -174176,8 +174177,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174176
174177
  class: "custom-input my-input",
174177
174178
  modelValue: row[column.field],
174178
174179
  "onUpdate:modelValue": $event => row[column.field] = $event,
174179
- placeholder: ""
174180
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174180
+ placeholder: "",
174181
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174182
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174181
174183
  date_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174182
174184
  row,
174183
174185
  column
@@ -174193,8 +174195,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174193
174195
  "onUpdate:modelValue": $event => row[column.field] = $event,
174194
174196
  type: "date",
174195
174197
  "range-separator": "-",
174196
- placeholder: ''
174197
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174198
+ placeholder: '',
174199
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174200
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174198
174201
  month_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174199
174202
  row,
174200
174203
  column
@@ -174210,14 +174213,15 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174210
174213
  "onUpdate:modelValue": $event => row[column.field] = $event,
174211
174214
  type: "month",
174212
174215
  "range-separator": "-",
174213
- placeholder: ''
174214
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174216
+ placeholder: '',
174217
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174218
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174215
174219
  year_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174216
174220
  row,
174217
174221
  column
174218
174222
  }) => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_el_date_picker, {
174219
- "value-format": "YYYY-MM",
174220
- format: "YYYY-MM",
174223
+ "value-format": "YYYY",
174224
+ format: "YYYY",
174221
174225
  style: {
174222
174226
  "width": "130px"
174223
174227
  },
@@ -174227,8 +174231,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174227
174231
  "onUpdate:modelValue": $event => row[column.field] = $event,
174228
174232
  type: "year",
174229
174233
  "range-separator": "-",
174230
- placeholder: ''
174231
- }, null, 8, ["modelValue", "onUpdate:modelValue"])]),
174234
+ placeholder: '',
174235
+ onBlur: $event => _ctx.handleInputBlur(row, column.field, $event)
174236
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onBlur"])]),
174232
174237
  selectOfSysObjectDef_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174233
174238
  row,
174234
174239
  column
@@ -174240,6 +174245,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174240
174245
  filterable: true,
174241
174246
  clearable: true,
174242
174247
  disabled: false,
174248
+ onChange: $event => _ctx.handleSelectChange(row, column.field, $event),
174243
174249
  style: {
174244
174250
  "width": "100%"
174245
174251
  },
@@ -174253,7 +174259,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174253
174259
  }, null, 8, ["value", "label"]);
174254
174260
  }), 128))]),
174255
174261
  _: 2
174256
- }, 1032, ["modelValue", "onUpdate:modelValue"])]),
174262
+ }, 1032, ["modelValue", "onUpdate:modelValue", "onChange"])]),
174257
174263
  sysCodingDrop_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174258
174264
  row,
174259
174265
  column
@@ -174263,8 +174269,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174263
174269
  filterable: row.filterable === true,
174264
174270
  bindValue: row[column.field],
174265
174271
  bindLabel: column.title,
174266
- isVxeMode: true
174267
- }, null, 8, ["sysCode", "item", "filterable", "bindValue", "bindLabel"])]),
174272
+ isVxeMode: true,
174273
+ onSelectChange: $event => _ctx.handleSelectChange(row, column.field, $event)
174274
+ }, null, 8, ["sysCode", "item", "filterable", "bindValue", "bindLabel", "onSelectChange"])]),
174268
174275
  selectByParentCode_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174269
174276
  row,
174270
174277
  column
@@ -174275,8 +174282,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174275
174282
  filterable: _ctx.item.filterable === true,
174276
174283
  bindValue: row[column.field],
174277
174284
  bindLabel: column.title,
174278
- isVxeMode: true
174279
- }, null, 8, ["dictCode", "keyCodeOfParent", "item", "filterable", "bindValue", "bindLabel"])]),
174285
+ isVxeMode: true,
174286
+ onSelectChange: $event => _ctx.handleSelectChange(row, column.field, $event)
174287
+ }, null, 8, ["dictCode", "keyCodeOfParent", "item", "filterable", "bindValue", "bindLabel", "onSelectChange"])]),
174280
174288
  selPeople_edit: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(({
174281
174289
  row,
174282
174290
  column
@@ -174297,7 +174305,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174297
174305
  };
174298
174306
  })]), 1040, ["onPageChange", "onCellClick", "onCheckboxChange", "onCurrentChange", "onCellMouseenter", "onCellMouseleave", "onCellDblclick"]);
174299
174307
  }
174300
- ;// ./src/package/Grid/BaseGrid.vue?vue&type=template&id=02a812c0&scoped=true
174308
+ ;// ./src/package/Grid/BaseGrid.vue?vue&type=template&id=131dc298&scoped=true
174301
174309
 
174302
174310
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-128.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=script&lang=js
174303
174311
 
@@ -174341,10 +174349,12 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174341
174349
  validator: value => ['view', 'edit'].includes(value)
174342
174350
  }
174343
174351
  },
174344
- emits: ['page-change', 'cell-click', 'checkbox-change', 'current-change', 'cell-mouseenter', 'cell-mouseleave', 'cell-dblclick'],
174352
+ emits: ['page-change', 'cell-click', 'checkbox-change', 'current-change', 'cell-mouseenter', 'cell-mouseleave', 'cell-dblclick', 'batch-edit'],
174345
174353
  setup(props, context) {
174346
174354
  const xGrid = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(null);
174347
174355
  let lastClickedRow = null;
174356
+ // 存储初始值,用于比较是否有变化
174357
+ const initialValues = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(new Map());
174348
174358
 
174349
174359
  // 单元格点击事件:根据模式决定是否取消其他行勾选
174350
174360
  async function handleCellClick({
@@ -174392,10 +174402,15 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174392
174402
  await $grid.setCheckboxRow(row, true);
174393
174403
  await $grid.setCurrentRow(row);
174394
174404
  } else if (props.tableMode === 'edit') {
174395
- // 编辑模式:点击行时切换当前行的勾选状态,不取消其他行的勾选(多选效果)
174396
- const isChecked = await $grid.isCheckboxRowByRow(row);
174397
- await $grid.setCheckboxRow(row, !isChecked);
174405
+ // 编辑模式:点击行时只设置当前行,不切换勾选状态(保持多选效果)
174398
174406
  await $grid.setCurrentRow(row);
174407
+
174408
+ // 如果当前行未勾选,则勾选它(确保当前行被勾选)
174409
+ const checkboxRecords = await $grid.getCheckboxRecords();
174410
+ const isChecked = checkboxRecords.some(record => record && record.id === row.id);
174411
+ if (!isChecked) {
174412
+ await $grid.setCheckboxRow(row, true);
174413
+ }
174399
174414
  }
174400
174415
  const rows = await $grid.getCheckboxRecords();
174401
174416
  // 过滤掉 undefined 和 null 值,避免 toString() 错误
@@ -174437,6 +174452,90 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174437
174452
  await $grid.setCurrentRow(lastClickedRow);
174438
174453
  }
174439
174454
  }
174455
+
174456
+ // 处理输入框失去焦点事件
174457
+ function handleInputBlur(row, field, event) {
174458
+ // 只在编辑模式下处理批量编辑
174459
+ if (props.tableMode !== 'edit') {
174460
+ return;
174461
+ }
174462
+ const newValue = event.target ? event.target.value : event;
174463
+ const rowId = row.id;
174464
+ const fieldKey = `${rowId}_${field}`;
174465
+
174466
+ // 获取初始值
174467
+ const initialValue = initialValues.value.get(fieldKey);
174468
+
174469
+ // 检查值是否真的发生了变化
174470
+ if (initialValue !== undefined && initialValue === newValue) {
174471
+ // 值没有变化,不执行批量编辑
174472
+ return;
174473
+ }
174474
+
174475
+ // 获取所有选中的行
174476
+ const selectedRows = xGrid.value?.getCheckboxRecords() || [];
174477
+
174478
+ // 如果没有选中行或只有当前行,不执行批量编辑
174479
+ if (selectedRows.length <= 1) {
174480
+ return;
174481
+ }
174482
+
174483
+ // 检查当前行是否在选中行中
174484
+ const isCurrentRowSelected = selectedRows.some(selectedRow => selectedRow.id === rowId);
174485
+ if (!isCurrentRowSelected) {
174486
+ return;
174487
+ }
174488
+
174489
+ // 执行批量编辑
174490
+ context.emit('batch-edit', {
174491
+ currentRow: row,
174492
+ field: field,
174493
+ newValue: newValue,
174494
+ selectedRows: selectedRows
174495
+ });
174496
+ }
174497
+
174498
+ // 处理选择器变化事件
174499
+ function handleSelectChange(row, field, value) {
174500
+ // 只在编辑模式下处理批量编辑
174501
+ if (props.tableMode !== 'edit') {
174502
+ return;
174503
+ }
174504
+ const rowId = row.id;
174505
+
174506
+ // 获取所有选中的行
174507
+ const selectedRows = xGrid.value?.getCheckboxRecords() || [];
174508
+
174509
+ // 如果没有选中行或只有当前行,不执行批量编辑
174510
+ if (selectedRows.length <= 1) {
174511
+ return;
174512
+ }
174513
+
174514
+ // 检查当前行是否在选中行中
174515
+ const isCurrentRowSelected = selectedRows.some(selectedRow => selectedRow.id === rowId);
174516
+ if (!isCurrentRowSelected) {
174517
+ return;
174518
+ }
174519
+
174520
+ // 执行批量编辑
174521
+ context.emit('batch-edit', {
174522
+ currentRow: row,
174523
+ field: field,
174524
+ newValue: value,
174525
+ selectedRows: selectedRows
174526
+ });
174527
+ }
174528
+
174529
+ // 监听单元格进入编辑状态,记录初始值
174530
+ function handleCellEditStart({
174531
+ row,
174532
+ column
174533
+ }) {
174534
+ if (props.tableMode === 'edit') {
174535
+ const fieldKey = `${row.id}_${column.field}`;
174536
+ initialValues.value.set(fieldKey, row[column.field]);
174537
+ }
174538
+ }
174440
174539
  function handlePageChange(...args) {
174441
174540
  context.emit('page-change', ...args);
174442
174541
  }
@@ -174480,32 +174579,11 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174480
174579
  let arr = JSON.parse(storageUtils/* default */.A.getSessionItem("selSysObjectData"));
174481
174580
  if (arr && arr.length > 0) {
174482
174581
  selSysObjectData.value = arr;
174483
- console_browserify_default().log(selSysObjectData.value, 'selSysObjectData11111');
174582
+ console.log(selSysObjectData.value, 'selSysObjectData11111');
174484
174583
  return false;
174485
174584
  }
174486
- /* let params = {
174487
- };
174488
- let page = false;
174489
- let queryCommand = new QueryCommand({
174490
- url: SysConfigUtils.niftyUrl + "/pub/sys_object_def/list_for_select",
174491
- });
174492
- //执行查询操作
174493
- queryCommand.executeQuery({
174494
- params,
174495
- successFun: (backData) => {
174496
- backData.forEach((item, index) => {
174497
- item.label = item.objDes
174498
- item.value = item.objName
174499
- })
174500
- selSysObjectData.value = backData
174501
- StorageUtils.addSessionItem("selSysObjectData", JSON.stringify(backData));
174502
- },
174503
- errorFun: (backData) => {
174504
- },
174505
- });*/
174506
174585
  };
174507
174586
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
174508
-
174509
174587
  //编辑模式下 获取数据
174510
174588
  // if (){
174511
174589
  // getSysListForSelect()
@@ -174525,6 +174603,9 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174525
174603
  handleMouseEnter,
174526
174604
  handleMouseLeave,
174527
174605
  handleDBLClick,
174606
+ handleInputBlur,
174607
+ handleSelectChange,
174608
+ handleCellEditStart,
174528
174609
  getCheckboxRecords,
174529
174610
  getSelectedRows,
174530
174611
  getSelectedRow
@@ -174533,10 +174614,10 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174533
174614
  }));
174534
174615
  ;// ./src/package/Grid/BaseGrid.vue?vue&type=script&lang=js
174535
174616
 
174536
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-100.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-100.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-100.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=02a812c0&scoped=true&lang=css
174617
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-100.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-100.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-100.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=131dc298&scoped=true&lang=css
174537
174618
  // extracted by mini-css-extract-plugin
174538
174619
 
174539
- ;// ./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=02a812c0&scoped=true&lang=css
174620
+ ;// ./src/package/Grid/BaseGrid.vue?vue&type=style&index=0&id=131dc298&scoped=true&lang=css
174540
174621
 
174541
174622
  ;// ./src/package/Grid/BaseGrid.vue
174542
174623
 
@@ -174546,7 +174627,7 @@ function BaseGridvue_type_template_id_02a812c0_scoped_true_render(_ctx, _cache,
174546
174627
  ;
174547
174628
 
174548
174629
 
174549
- const BaseGrid_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseGridvue_type_script_lang_js, [['render',BaseGridvue_type_template_id_02a812c0_scoped_true_render],['__scopeId',"data-v-02a812c0"]])
174630
+ const BaseGrid_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(BaseGridvue_type_script_lang_js, [['render',BaseGridvue_type_template_id_131dc298_scoped_true_render],['__scopeId',"data-v-131dc298"]])
174550
174631
 
174551
174632
  /* harmony default export */ var BaseGrid = (BaseGrid_exports_);
174552
174633
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-128.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/package/Grid/GoVxeGrid.vue?vue&type=template&id=5ae8129d&scoped=true