cnhis-design-vue 3.0.6 → 3.0.7
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/CHANGELOG.md +12 -0
- package/es/big-table/index.js +191 -191
- package/es/index.js +190 -190
- package/package.json +1 -1
- package/packages/big-table/src/BigTable.vue +16 -14
- package/packages/big-table/src/components/edit-form/edit-date.vue +2 -3
- package/packages/big-table/src/hooks/useEdit.ts +13 -1
- package/packages/select-person/index.ts +11 -0
- package/packages/select-person/src/SelectPerson.vue +746 -0
package/es/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { watch, h as h$1, resolveComponent, defineComponent, inject, computed, nextTick, reactive, createApp, ref, Teleport, createCommentVNode, provide, onMounted, onUnmounted, getCurrentInstance, onBeforeUnmount, onActivated, onDeactivated, createVNode, mergeProps, isVNode, openBlock, createElementBlock, unref, createElementVNode, toDisplayString, withCtx, normalizeClass, renderSlot, createTextVNode, useAttrs, normalizeStyle, withDirectives, vShow, Fragment, createBlock, vModelSelect, vModelText, pushScopeId, popScopeId, vModelCheckbox, withModifiers } from 'vue';
|
|
2
|
+
import { NInput, NInputNumber, NSelect, NDatePicker, NTooltip, useMessage, NIcon, NPopconfirm, NButton, NInputGroup, NCheckbox, NCheckboxGroup, NSpace, NProgress, NDropdown, NSwitch, NPopover, NSpin, NRadio, NModal, NForm, NGrid, NFormItemGi, NFormItem } from 'naive-ui';
|
|
2
3
|
import { SettingsSharp, CaretDown, CaretForward, CopyOutline, SyncOutline, EllipsisVerticalSharp, Reload, ChevronDown } from '@vicons/ionicons5';
|
|
3
|
-
import { NTooltip, NInput, NInputNumber, NSelect, NDatePicker, useMessage, NIcon, NPopconfirm, NButton, NInputGroup, NCheckbox, NCheckboxGroup, NSpace, NProgress, NDropdown, NSwitch, NPopover, NSpin, NRadio, NModal, NForm, NGrid, NFormItemGi, NFormItem } from 'naive-ui';
|
|
4
4
|
import draggable from 'vuedraggable';
|
|
5
5
|
|
|
6
6
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
@@ -38412,6 +38412,162 @@ const useNestTable = (props, state, emit) => {
|
|
|
38412
38412
|
};
|
|
38413
38413
|
};
|
|
38414
38414
|
|
|
38415
|
+
var script$c = defineComponent({
|
|
38416
|
+
name: "EditInput",
|
|
38417
|
+
inheritAttrs: false,
|
|
38418
|
+
components: {
|
|
38419
|
+
NInput,
|
|
38420
|
+
NInputNumber
|
|
38421
|
+
},
|
|
38422
|
+
props: {
|
|
38423
|
+
type: {
|
|
38424
|
+
type: String,
|
|
38425
|
+
default: "input"
|
|
38426
|
+
},
|
|
38427
|
+
col: {
|
|
38428
|
+
type: Object,
|
|
38429
|
+
default: () => ({})
|
|
38430
|
+
},
|
|
38431
|
+
row: {
|
|
38432
|
+
type: Object,
|
|
38433
|
+
default: () => ({})
|
|
38434
|
+
},
|
|
38435
|
+
index: {
|
|
38436
|
+
type: [Number, Object],
|
|
38437
|
+
default: 0
|
|
38438
|
+
}
|
|
38439
|
+
},
|
|
38440
|
+
emits: ["formChange"],
|
|
38441
|
+
setup(props, { attrs, slots, emit }) {
|
|
38442
|
+
const onUpdateValue = (value) => {
|
|
38443
|
+
emit("formChange", {
|
|
38444
|
+
value,
|
|
38445
|
+
row: props.row,
|
|
38446
|
+
column: props.col,
|
|
38447
|
+
index: props.index
|
|
38448
|
+
});
|
|
38449
|
+
};
|
|
38450
|
+
return () => props.type === "input" ? createVNode(NInput, mergeProps(attrs, {
|
|
38451
|
+
"onUpdateValue": onUpdateValue
|
|
38452
|
+
}), null) : createVNode(NInputNumber, mergeProps(attrs, {
|
|
38453
|
+
"onUpdateValue": onUpdateValue
|
|
38454
|
+
}), null);
|
|
38455
|
+
}
|
|
38456
|
+
});
|
|
38457
|
+
|
|
38458
|
+
script$c.__file = "packages/big-table/src/components/edit-form/edit-input.vue";
|
|
38459
|
+
|
|
38460
|
+
var script$b = defineComponent({
|
|
38461
|
+
name: "EditSelect",
|
|
38462
|
+
inheritAttrs: false,
|
|
38463
|
+
components: {
|
|
38464
|
+
NSelect
|
|
38465
|
+
},
|
|
38466
|
+
props: {
|
|
38467
|
+
col: {
|
|
38468
|
+
type: Object,
|
|
38469
|
+
default: () => ({})
|
|
38470
|
+
},
|
|
38471
|
+
row: {
|
|
38472
|
+
type: Object,
|
|
38473
|
+
default: () => ({})
|
|
38474
|
+
},
|
|
38475
|
+
index: {
|
|
38476
|
+
type: [Number, Object],
|
|
38477
|
+
default: 0
|
|
38478
|
+
}
|
|
38479
|
+
},
|
|
38480
|
+
emits: ["setOptions", "formChange"],
|
|
38481
|
+
setup(props, { attrs, slots, emit }) {
|
|
38482
|
+
const state = reactive({
|
|
38483
|
+
options: []
|
|
38484
|
+
});
|
|
38485
|
+
const setOptions = async () => {
|
|
38486
|
+
if (props.col.options) {
|
|
38487
|
+
state.options = JSON.parse(JSON.stringify(props.col.options));
|
|
38488
|
+
}
|
|
38489
|
+
else {
|
|
38490
|
+
const optionsName = `${props.col.columnName}_options`;
|
|
38491
|
+
state.options = props.row[optionsName] || await props.col.queryOptions();
|
|
38492
|
+
if (!props.row[optionsName]) {
|
|
38493
|
+
emit("setOptions", state.options);
|
|
38494
|
+
}
|
|
38495
|
+
}
|
|
38496
|
+
};
|
|
38497
|
+
setOptions();
|
|
38498
|
+
const onUpdateValue = (value) => {
|
|
38499
|
+
emit("formChange", {
|
|
38500
|
+
value,
|
|
38501
|
+
row: props.row,
|
|
38502
|
+
column: props.col,
|
|
38503
|
+
index: props.index
|
|
38504
|
+
});
|
|
38505
|
+
};
|
|
38506
|
+
return () => [createVNode(NSelect, mergeProps(attrs, {
|
|
38507
|
+
"options": state.options,
|
|
38508
|
+
"consistentMenuWidth": false,
|
|
38509
|
+
"clearable": true,
|
|
38510
|
+
"filterable": true,
|
|
38511
|
+
"to": false,
|
|
38512
|
+
"placeholder": "\u8BF7\u9009\u62E9",
|
|
38513
|
+
"onUpdateValue": onUpdateValue
|
|
38514
|
+
}), null)];
|
|
38515
|
+
}
|
|
38516
|
+
});
|
|
38517
|
+
|
|
38518
|
+
script$b.__file = "packages/big-table/src/components/edit-form/edit-select.vue";
|
|
38519
|
+
|
|
38520
|
+
var script$a = defineComponent({
|
|
38521
|
+
name: "EditDate",
|
|
38522
|
+
inheritAttrs: false,
|
|
38523
|
+
components: {
|
|
38524
|
+
NDatePicker
|
|
38525
|
+
},
|
|
38526
|
+
props: {
|
|
38527
|
+
col: {
|
|
38528
|
+
type: Object,
|
|
38529
|
+
default: () => ({})
|
|
38530
|
+
},
|
|
38531
|
+
row: {
|
|
38532
|
+
type: Object,
|
|
38533
|
+
default: () => ({})
|
|
38534
|
+
},
|
|
38535
|
+
index: {
|
|
38536
|
+
type: [Number, Object],
|
|
38537
|
+
default: 0
|
|
38538
|
+
}
|
|
38539
|
+
},
|
|
38540
|
+
emits: ["formChange"],
|
|
38541
|
+
setup(props, { attrs, slots, emit }) {
|
|
38542
|
+
const onConfirm = (value) => {
|
|
38543
|
+
emit("formChange", {
|
|
38544
|
+
value,
|
|
38545
|
+
row: props.row,
|
|
38546
|
+
column: props.col,
|
|
38547
|
+
index: props.index
|
|
38548
|
+
});
|
|
38549
|
+
};
|
|
38550
|
+
const config = {
|
|
38551
|
+
type: props.col.type || "datetime",
|
|
38552
|
+
clearable: props.col.clearable || true,
|
|
38553
|
+
disabled: props.col.disabled || false,
|
|
38554
|
+
valueFormat: props.col.valueFormat || "yyyy-MM-dd HH:mm:ss",
|
|
38555
|
+
to: false
|
|
38556
|
+
};
|
|
38557
|
+
return () => createVNode(NDatePicker, mergeProps(attrs, config, {
|
|
38558
|
+
"onUpdateFormattedValue": onConfirm
|
|
38559
|
+
}), null);
|
|
38560
|
+
}
|
|
38561
|
+
});
|
|
38562
|
+
|
|
38563
|
+
script$a.__file = "packages/big-table/src/components/edit-form/edit-date.vue";
|
|
38564
|
+
|
|
38565
|
+
const comps = {
|
|
38566
|
+
"input": script$c,
|
|
38567
|
+
"number": script$c,
|
|
38568
|
+
"select": script$b,
|
|
38569
|
+
"date": script$a
|
|
38570
|
+
};
|
|
38415
38571
|
const useEdit = (props, state, emit, xGrid) => {
|
|
38416
38572
|
const initEditTable = async () => {
|
|
38417
38573
|
const { isEdit, fieldList = [] } = props.columnConfig;
|
|
@@ -38468,6 +38624,7 @@ const useEdit = (props, state, emit, xGrid) => {
|
|
|
38468
38624
|
xGrid.value.clearActived();
|
|
38469
38625
|
};
|
|
38470
38626
|
const onFormChange = ({ value, row, column }) => {
|
|
38627
|
+
row[column.columnName] = value;
|
|
38471
38628
|
emit("formChange", { value, row, column });
|
|
38472
38629
|
};
|
|
38473
38630
|
const getDefaultValue = (params, item) => {
|
|
@@ -38504,7 +38661,7 @@ var img$3 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQQAAADKCAYAAABDnT56A
|
|
|
38504
38661
|
const _hoisted_1$8 = { class: "no-data-tip NoData-page" };
|
|
38505
38662
|
const _hoisted_2$7 = ["src"];
|
|
38506
38663
|
const _hoisted_3$5 = { key: 1 };
|
|
38507
|
-
var script$
|
|
38664
|
+
var script$9 = /* @__PURE__ */ defineComponent({
|
|
38508
38665
|
props: {
|
|
38509
38666
|
noDataTip: {
|
|
38510
38667
|
type: String,
|
|
@@ -38565,14 +38722,14 @@ var script$c = /* @__PURE__ */ defineComponent({
|
|
|
38565
38722
|
}
|
|
38566
38723
|
});
|
|
38567
38724
|
|
|
38568
|
-
script$
|
|
38569
|
-
script$
|
|
38725
|
+
script$9.__scopeId = "data-v-4a4b0812";
|
|
38726
|
+
script$9.__file = "packages/big-table/src/components/NoData.vue";
|
|
38570
38727
|
|
|
38571
38728
|
const _hoisted_1$7 = { class: "text-over-tooltip-components" };
|
|
38572
38729
|
const __default__$8 = {
|
|
38573
38730
|
name: "TextOverTooltip"
|
|
38574
38731
|
};
|
|
38575
|
-
var script$
|
|
38732
|
+
var script$8 = /* @__PURE__ */ defineComponent({
|
|
38576
38733
|
...__default__$8,
|
|
38577
38734
|
props: {
|
|
38578
38735
|
content: { type: [String, Number], required: false },
|
|
@@ -38640,15 +38797,15 @@ var script$b = /* @__PURE__ */ defineComponent({
|
|
|
38640
38797
|
}
|
|
38641
38798
|
});
|
|
38642
38799
|
|
|
38643
|
-
script$
|
|
38644
|
-
script$
|
|
38800
|
+
script$8.__scopeId = "data-v-6633a934";
|
|
38801
|
+
script$8.__file = "packages/big-table/src/components/TextOverTooltip.vue";
|
|
38645
38802
|
|
|
38646
38803
|
const _hoisted_1$6 = { key: 0 };
|
|
38647
38804
|
const _hoisted_2$6 = ["xlink:href"];
|
|
38648
38805
|
const __default__$7 = {
|
|
38649
38806
|
name: "SvgIcon"
|
|
38650
38807
|
};
|
|
38651
|
-
var script$
|
|
38808
|
+
var script$7 = /* @__PURE__ */ defineComponent({
|
|
38652
38809
|
...__default__$7,
|
|
38653
38810
|
props: {
|
|
38654
38811
|
iconClass: { type: String, required: true, default: "" },
|
|
@@ -38678,159 +38835,8 @@ var script$a = /* @__PURE__ */ defineComponent({
|
|
|
38678
38835
|
}
|
|
38679
38836
|
});
|
|
38680
38837
|
|
|
38681
|
-
script$
|
|
38682
|
-
script$
|
|
38683
|
-
|
|
38684
|
-
var script$9 = defineComponent({
|
|
38685
|
-
name: "EditInput",
|
|
38686
|
-
inheritAttrs: false,
|
|
38687
|
-
components: {
|
|
38688
|
-
NInput,
|
|
38689
|
-
NInputNumber
|
|
38690
|
-
},
|
|
38691
|
-
props: {
|
|
38692
|
-
type: {
|
|
38693
|
-
type: String,
|
|
38694
|
-
default: "input"
|
|
38695
|
-
},
|
|
38696
|
-
col: {
|
|
38697
|
-
type: Object,
|
|
38698
|
-
default: () => ({})
|
|
38699
|
-
},
|
|
38700
|
-
row: {
|
|
38701
|
-
type: Object,
|
|
38702
|
-
default: () => ({})
|
|
38703
|
-
},
|
|
38704
|
-
index: {
|
|
38705
|
-
type: [Number, Object],
|
|
38706
|
-
default: 0
|
|
38707
|
-
}
|
|
38708
|
-
},
|
|
38709
|
-
emits: ["formChange"],
|
|
38710
|
-
setup(props, { attrs, slots, emit }) {
|
|
38711
|
-
const onUpdateValue = (value) => {
|
|
38712
|
-
emit("formChange", {
|
|
38713
|
-
value,
|
|
38714
|
-
row: props.row,
|
|
38715
|
-
column: props.col,
|
|
38716
|
-
index: props.index
|
|
38717
|
-
});
|
|
38718
|
-
};
|
|
38719
|
-
return () => props.type === "input" ? createVNode(NInput, mergeProps(attrs, {
|
|
38720
|
-
"onUpdateValue": onUpdateValue
|
|
38721
|
-
}), null) : createVNode(NInputNumber, mergeProps(attrs, {
|
|
38722
|
-
"onUpdateValue": onUpdateValue
|
|
38723
|
-
}), null);
|
|
38724
|
-
}
|
|
38725
|
-
});
|
|
38726
|
-
|
|
38727
|
-
script$9.__file = "packages/big-table/src/components/edit-form/edit-input.vue";
|
|
38728
|
-
|
|
38729
|
-
var script$8 = defineComponent({
|
|
38730
|
-
name: "EditSelect",
|
|
38731
|
-
inheritAttrs: false,
|
|
38732
|
-
components: {
|
|
38733
|
-
NSelect
|
|
38734
|
-
},
|
|
38735
|
-
props: {
|
|
38736
|
-
col: {
|
|
38737
|
-
type: Object,
|
|
38738
|
-
default: () => ({})
|
|
38739
|
-
},
|
|
38740
|
-
row: {
|
|
38741
|
-
type: Object,
|
|
38742
|
-
default: () => ({})
|
|
38743
|
-
},
|
|
38744
|
-
index: {
|
|
38745
|
-
type: [Number, Object],
|
|
38746
|
-
default: 0
|
|
38747
|
-
}
|
|
38748
|
-
},
|
|
38749
|
-
emits: ["setOptions", "formChange"],
|
|
38750
|
-
setup(props, { attrs, slots, emit }) {
|
|
38751
|
-
const state = reactive({
|
|
38752
|
-
options: []
|
|
38753
|
-
});
|
|
38754
|
-
const setOptions = async () => {
|
|
38755
|
-
if (props.col.options) {
|
|
38756
|
-
state.options = JSON.parse(JSON.stringify(props.col.options));
|
|
38757
|
-
}
|
|
38758
|
-
else {
|
|
38759
|
-
const optionsName = `${props.col.columnName}_options`;
|
|
38760
|
-
state.options = props.row[optionsName] || await props.col.queryOptions();
|
|
38761
|
-
if (!props.row[optionsName]) {
|
|
38762
|
-
emit("setOptions", state.options);
|
|
38763
|
-
}
|
|
38764
|
-
}
|
|
38765
|
-
};
|
|
38766
|
-
setOptions();
|
|
38767
|
-
const onUpdateValue = (value) => {
|
|
38768
|
-
emit("formChange", {
|
|
38769
|
-
value,
|
|
38770
|
-
row: props.row,
|
|
38771
|
-
column: props.col,
|
|
38772
|
-
index: props.index
|
|
38773
|
-
});
|
|
38774
|
-
};
|
|
38775
|
-
return () => [createVNode(NSelect, mergeProps(attrs, {
|
|
38776
|
-
"options": state.options,
|
|
38777
|
-
"consistentMenuWidth": false,
|
|
38778
|
-
"clearable": true,
|
|
38779
|
-
"filterable": true,
|
|
38780
|
-
"to": false,
|
|
38781
|
-
"placeholder": "\u8BF7\u9009\u62E9",
|
|
38782
|
-
"onUpdateValue": onUpdateValue
|
|
38783
|
-
}), null)];
|
|
38784
|
-
}
|
|
38785
|
-
});
|
|
38786
|
-
|
|
38787
|
-
script$8.__file = "packages/big-table/src/components/edit-form/edit-select.vue";
|
|
38788
|
-
|
|
38789
|
-
var script$7 = defineComponent({
|
|
38790
|
-
name: "EditDate",
|
|
38791
|
-
inheritAttrs: false,
|
|
38792
|
-
components: {
|
|
38793
|
-
NDatePicker
|
|
38794
|
-
},
|
|
38795
|
-
props: {
|
|
38796
|
-
col: {
|
|
38797
|
-
type: Object,
|
|
38798
|
-
default: () => ({})
|
|
38799
|
-
},
|
|
38800
|
-
row: {
|
|
38801
|
-
type: Object,
|
|
38802
|
-
default: () => ({})
|
|
38803
|
-
},
|
|
38804
|
-
index: {
|
|
38805
|
-
type: [Number, Object],
|
|
38806
|
-
default: 0
|
|
38807
|
-
}
|
|
38808
|
-
},
|
|
38809
|
-
emits: ["formChange"],
|
|
38810
|
-
setup(props, { attrs, slots, emit }) {
|
|
38811
|
-
const onConfirm = (value, formattedValue) => {
|
|
38812
|
-
console.log("\u65F6\u95F4\u9009\u62E9->", value);
|
|
38813
|
-
emit("formChange", {
|
|
38814
|
-
value,
|
|
38815
|
-
row: props.row,
|
|
38816
|
-
column: props.col,
|
|
38817
|
-
index: props.index
|
|
38818
|
-
});
|
|
38819
|
-
};
|
|
38820
|
-
const config = {
|
|
38821
|
-
type: props.col.type || "datetime",
|
|
38822
|
-
clearable: props.col.clearable || true,
|
|
38823
|
-
disabled: props.col.disabled || false,
|
|
38824
|
-
valueFormat: props.col.valueFormat || "yyyy-MM-dd HH:mm:ss",
|
|
38825
|
-
to: false
|
|
38826
|
-
};
|
|
38827
|
-
return () => createVNode(NDatePicker, mergeProps(attrs, config, {
|
|
38828
|
-
"onConfirm": onConfirm
|
|
38829
|
-
}), null);
|
|
38830
|
-
}
|
|
38831
|
-
});
|
|
38832
|
-
|
|
38833
|
-
script$7.__file = "packages/big-table/src/components/edit-form/edit-date.vue";
|
|
38838
|
+
script$7.__scopeId = "data-v-d1ad5be8";
|
|
38839
|
+
script$7.__file = "src/component/svg/index.vue";
|
|
38834
38840
|
|
|
38835
38841
|
var img$2 = "data:image/png;base64,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";
|
|
38836
38842
|
|
|
@@ -39842,37 +39848,31 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
39842
39848
|
const formatterEdit = (params, col) => {
|
|
39843
39849
|
let { row, column, $rowIndex, rowIndex } = params;
|
|
39844
39850
|
let formType = column.formType || col.formType || "";
|
|
39851
|
+
if (!formType)
|
|
39852
|
+
return null;
|
|
39845
39853
|
if (formType === "custom") {
|
|
39846
39854
|
return col.slotFn(params);
|
|
39847
39855
|
}
|
|
39856
|
+
const Comp = comps[formType] || "";
|
|
39857
|
+
if (!Comp)
|
|
39858
|
+
return null;
|
|
39848
39859
|
const propsData = {
|
|
39849
39860
|
col,
|
|
39850
39861
|
row,
|
|
39851
|
-
index: $rowIndex
|
|
39862
|
+
index: $rowIndex,
|
|
39863
|
+
type: formType,
|
|
39864
|
+
onFormChange
|
|
39852
39865
|
};
|
|
39853
|
-
if (formType === "
|
|
39854
|
-
|
|
39855
|
-
"type": formType,
|
|
39856
|
-
"value": row[col.columnName],
|
|
39857
|
-
"onUpdate:value": ($event) => row[col.columnName] = $event,
|
|
39858
|
-
"onFormChange": onFormChange
|
|
39859
|
-
}), null);
|
|
39866
|
+
if (formType === "date") {
|
|
39867
|
+
propsData.defaultFormattedValue = row[col.columnName];
|
|
39860
39868
|
}
|
|
39861
|
-
|
|
39862
|
-
|
|
39863
|
-
"value": row[col.columnName],
|
|
39864
|
-
"onUpdate:value": ($event) => row[col.columnName] = $event,
|
|
39865
|
-
"onSetOptions": (options) => row[`${col.columnName}_options`] = options,
|
|
39866
|
-
"onFormChange": onFormChange
|
|
39867
|
-
}), null);
|
|
39869
|
+
else {
|
|
39870
|
+
propsData.defaultValue = row[col.columnName];
|
|
39868
39871
|
}
|
|
39869
|
-
if (formType === "
|
|
39870
|
-
|
|
39871
|
-
"formattedValue": row[col.columnName],
|
|
39872
|
-
"onUpdate:formattedValue": ($event) => row[col.columnName] = $event,
|
|
39873
|
-
"onFormChange": onFormChange
|
|
39874
|
-
}), null);
|
|
39872
|
+
if (formType === "select") {
|
|
39873
|
+
propsData.onSetOptions = (options) => row[`${col.columnName}_options`] = options;
|
|
39875
39874
|
}
|
|
39875
|
+
return createVNode(Comp, propsData, null);
|
|
39876
39876
|
};
|
|
39877
39877
|
const getEditBtn = (row, col, index) => {
|
|
39878
39878
|
return col.tileBtnList?.map((btn) => {
|
|
@@ -39968,7 +39968,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
39968
39968
|
return getOrCode(row, own, attrType);
|
|
39969
39969
|
}
|
|
39970
39970
|
if (column.property === "operatorColumn") {
|
|
39971
|
-
if (props.columnConfig.isEdit) {
|
|
39971
|
+
if (props.columnConfig.isEdit && !row.initRow) {
|
|
39972
39972
|
return getEditBtn(row, col, $rowIndex);
|
|
39973
39973
|
}
|
|
39974
39974
|
if (state.showButtonTop != 0 || props.isBatchEditing)
|
|
@@ -40253,13 +40253,13 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
40253
40253
|
isAlias = !!tooltipTitle;
|
|
40254
40254
|
}
|
|
40255
40255
|
if (type === "format")
|
|
40256
|
-
return createVNode(script$
|
|
40256
|
+
return createVNode(script$8, {
|
|
40257
40257
|
"tooltipTitle": tooltipTitle,
|
|
40258
40258
|
"content": name,
|
|
40259
40259
|
"isAlias": isAlias
|
|
40260
40260
|
}, null);
|
|
40261
40261
|
return () => {
|
|
40262
|
-
return [createVNode(script$
|
|
40262
|
+
return [createVNode(script$8, {
|
|
40263
40263
|
"tooltipTitle": tooltipTitle,
|
|
40264
40264
|
"content": name,
|
|
40265
40265
|
"isAlias": isAlias
|
|
@@ -40813,7 +40813,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
40813
40813
|
return createVNode(NPopconfirm, {
|
|
40814
40814
|
"onPositiveClick": () => confirmScanMulti(params)
|
|
40815
40815
|
}, {
|
|
40816
|
-
trigger: () => createVNode(script$
|
|
40816
|
+
trigger: () => createVNode(script$7, {
|
|
40817
40817
|
"class": "scan-multi-delete",
|
|
40818
40818
|
"iconClass": "shanchu"
|
|
40819
40819
|
}, null),
|
|
@@ -41026,7 +41026,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
41026
41026
|
}, [createVNode("img", {
|
|
41027
41027
|
"class": "bigTable-qr-img",
|
|
41028
41028
|
"src": src
|
|
41029
|
-
}, null), createVNode("span", null, [createVNode(script$
|
|
41029
|
+
}, null), createVNode("span", null, [createVNode(script$7, {
|
|
41030
41030
|
"iconClass": "fangda"
|
|
41031
41031
|
}, null)])])];
|
|
41032
41032
|
};
|
|
@@ -41110,7 +41110,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
41110
41110
|
}
|
|
41111
41111
|
else {
|
|
41112
41112
|
icon = createVNode(NTooltip, null, {
|
|
41113
|
-
trigger: () => createVNode(script$
|
|
41113
|
+
trigger: () => createVNode(script$7, {
|
|
41114
41114
|
"iconClass": btn.icon,
|
|
41115
41115
|
"style": {
|
|
41116
41116
|
marginRight: mr
|
|
@@ -41121,7 +41121,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
41121
41121
|
}
|
|
41122
41122
|
}
|
|
41123
41123
|
else if (btn.iconSetting) {
|
|
41124
|
-
icon = createVNode(script$
|
|
41124
|
+
icon = createVNode(script$7, {
|
|
41125
41125
|
"iconClass": JSON.parse(btn.iconSetting).icon,
|
|
41126
41126
|
"style": {
|
|
41127
41127
|
marginRight: mr
|
|
@@ -41550,7 +41550,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
41550
41550
|
onScroll: handlerScroll,
|
|
41551
41551
|
onCellMouseenter: handleCellMouseenter
|
|
41552
41552
|
}, {
|
|
41553
|
-
empty: withCtx(() => [unref(state).isShowEmpty ? (openBlock(), createElementBlock("div", _hoisted_9$4, [createVNode(script$
|
|
41553
|
+
empty: withCtx(() => [unref(state).isShowEmpty ? (openBlock(), createElementBlock("div", _hoisted_9$4, [createVNode(script$9, {
|
|
41554
41554
|
"no-data-img": props.emptyItems.noDataImg,
|
|
41555
41555
|
"no-data-tip": props.emptyItems.noDataTip,
|
|
41556
41556
|
"show-img": !props.isNestTable
|
package/package.json
CHANGED
|
@@ -171,14 +171,11 @@ import { useFormat } from "./hooks/useFormat";
|
|
|
171
171
|
import { useTableParse } from "./hooks/useTableParse";
|
|
172
172
|
import { useBatchEditing } from "./hooks/useBatchEditing";
|
|
173
173
|
import { useNestTable } from "./hooks/useNestTable";
|
|
174
|
-
import { useEdit } from './hooks/useEdit';
|
|
174
|
+
import { useEdit, comps } from './hooks/useEdit';
|
|
175
175
|
import { SettingsSharp, SyncOutline, CopyOutline, CaretDown, CaretForward } from "@vicons/ionicons5";
|
|
176
176
|
import NoData from "./components/NoData.vue";
|
|
177
177
|
import TextOverTooltip from "./components/TextOverTooltip.vue";
|
|
178
178
|
import SvgIcon from '@/component/svg/index.vue';
|
|
179
|
-
import EditInput from './components/edit-form/edit-input.vue'
|
|
180
|
-
import EditSelect from './components/edit-form/edit-select.vue'
|
|
181
|
-
import EditDate from './components/edit-form/edit-date.vue'
|
|
182
179
|
import {
|
|
183
180
|
NButton,
|
|
184
181
|
NCheckbox,
|
|
@@ -706,23 +703,29 @@ const formatColumns = (map: any) => {
|
|
|
706
703
|
const formatterEdit = (params: any, col: any) => {
|
|
707
704
|
let { row, column, $rowIndex, rowIndex } = params
|
|
708
705
|
let formType = column.formType || col.formType || ''
|
|
706
|
+
if (!formType) return null
|
|
709
707
|
if (formType === 'custom') {
|
|
710
708
|
return col.slotFn(params)
|
|
711
709
|
}
|
|
712
|
-
const
|
|
710
|
+
const Comp = comps[formType] || ''
|
|
711
|
+
if (!Comp) return null
|
|
712
|
+
const propsData: any = {
|
|
713
713
|
col,
|
|
714
714
|
row,
|
|
715
|
-
index: $rowIndex
|
|
715
|
+
index: $rowIndex,
|
|
716
|
+
// vModel: [row[col.columnName], formType === 'date' ? 'formattedValue' :'value'],
|
|
717
|
+
type: formType,
|
|
718
|
+
onFormChange
|
|
716
719
|
}
|
|
717
|
-
if (formType === '
|
|
718
|
-
|
|
720
|
+
if (formType === 'date') {
|
|
721
|
+
propsData.defaultFormattedValue = row[col.columnName]
|
|
722
|
+
} else {
|
|
723
|
+
propsData.defaultValue = row[col.columnName]
|
|
719
724
|
}
|
|
720
725
|
if (formType === 'select') {
|
|
721
|
-
|
|
722
|
-
}
|
|
723
|
-
if (formType === 'date') {
|
|
724
|
-
return <EditDate {...propsData} v-model={[row[col.columnName], 'formattedValue']} onFormChange={onFormChange} />
|
|
726
|
+
propsData.onSetOptions = (options: any[]) => (row[`${col.columnName}_options`] = options)
|
|
725
727
|
}
|
|
728
|
+
return <Comp {...propsData} />
|
|
726
729
|
}
|
|
727
730
|
const getEditBtn = (row: any, col: any, index: number) => {
|
|
728
731
|
return col.tileBtnList?.map((btn: any) => {
|
|
@@ -822,8 +825,7 @@ const formatter = (params: any, col: any) => {
|
|
|
822
825
|
return getOrCode(row, own, attrType);
|
|
823
826
|
}
|
|
824
827
|
if (column.property === "operatorColumn") {
|
|
825
|
-
|
|
826
|
-
if (props.columnConfig.isEdit) {
|
|
828
|
+
if (props.columnConfig.isEdit && !row.initRow) {
|
|
827
829
|
return getEditBtn(row, col, $rowIndex)
|
|
828
830
|
}
|
|
829
831
|
|
|
@@ -24,8 +24,7 @@ export default defineComponent({
|
|
|
24
24
|
},
|
|
25
25
|
emits: ['formChange'],
|
|
26
26
|
setup (props, { attrs, slots, emit }) {
|
|
27
|
-
const onConfirm = (value:
|
|
28
|
-
console.log('时间选择->', value)
|
|
27
|
+
const onConfirm = (value: any) => {
|
|
29
28
|
emit('formChange', { value, row: props.row, column: props.col, index: props.index })
|
|
30
29
|
}
|
|
31
30
|
const config = {
|
|
@@ -35,7 +34,7 @@ export default defineComponent({
|
|
|
35
34
|
valueFormat: props.col.valueFormat || 'yyyy-MM-dd HH:mm:ss',
|
|
36
35
|
to: false
|
|
37
36
|
}
|
|
38
|
-
return () => <NDatePicker {...attrs} {...config}
|
|
37
|
+
return () => <NDatePicker {...attrs} {...config} onUpdateFormattedValue={onConfirm} />
|
|
39
38
|
}
|
|
40
39
|
})
|
|
41
40
|
</script>
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
import { computed, ref, reactive, watch, onMounted } from 'vue'
|
|
2
|
+
import EditInput from '../components/edit-form/edit-input.vue'
|
|
3
|
+
import EditSelect from '../components/edit-form/edit-select.vue'
|
|
4
|
+
import EditDate from '../components/edit-form/edit-date.vue'
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
export const comps = {
|
|
8
|
+
'input': EditInput,
|
|
9
|
+
'number': EditInput,
|
|
10
|
+
'select': EditSelect,
|
|
11
|
+
'date': EditDate
|
|
12
|
+
}
|
|
2
13
|
|
|
3
14
|
export const useEdit = (props: any, state: any, emit: any, xGrid: any) => {
|
|
4
15
|
|
|
@@ -72,6 +83,7 @@ export const useEdit = (props: any, state: any, emit: any, xGrid: any) => {
|
|
|
72
83
|
}
|
|
73
84
|
|
|
74
85
|
const onFormChange = ({ value, row, column }: {value: number | string | null, row: any, column: any}) => {
|
|
86
|
+
row[column.columnName] = value
|
|
75
87
|
emit('formChange', { value, row, column })
|
|
76
88
|
}
|
|
77
89
|
|
|
@@ -97,4 +109,4 @@ export const useEdit = (props: any, state: any, emit: any, xGrid: any) => {
|
|
|
97
109
|
onFormChange,
|
|
98
110
|
getDefaultValue
|
|
99
111
|
}
|
|
100
|
-
}
|
|
112
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { App } from "vue";
|
|
2
|
+
// 导入组件
|
|
3
|
+
import SelectPerson from './src/SelectPerson.vue'
|
|
4
|
+
|
|
5
|
+
// 为组件提供 install 安装方法,供按需引入
|
|
6
|
+
SelectPerson.install = function(app: App) {
|
|
7
|
+
app.component(SelectPerson.name, SelectPerson);
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
// 默认导出组件
|
|
11
|
+
export default SelectPerson;
|