cnhis-design-vue 0.3.3-beta → 0.3.4-beta
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/env.d.ts +2 -0
- package/es/big-table/index.css +2 -0
- package/es/big-table/index.js +1373 -64
- package/es/button-print/index.css +2 -0
- package/es/drag-layout/index.css +3 -1
- package/es/drag-layout/index.js +33 -58
- package/es/grid/index.css +3 -1
- package/es/grid/index.js +2 -3
- package/es/index.css +3 -1
- package/es/index.js +1409 -125
- package/package.json +5 -2
- package/packages/big-table/index.ts +17 -0
- package/packages/big-table/src/BigTable.vue +2513 -0
- package/packages/big-table/src/assets/iconfont/iconfont.less +21 -0
- package/packages/big-table/src/assets/iconfont/iconfont.ttf +0 -0
- package/packages/big-table/src/assets/img/failure.png +0 -0
- package/packages/big-table/src/assets/img/icon-asc.png +0 -0
- package/packages/big-table/src/assets/img/icon-desc.png +0 -0
- package/packages/big-table/src/assets/img/no-permission.png +0 -0
- package/packages/big-table/src/assets/img/nodata.png +0 -0
- package/packages/big-table/src/assets/img/notfound.png +0 -0
- package/packages/big-table/src/assets/img/qr.png +0 -0
- package/packages/big-table/src/assets/img/video_default_cover.png +0 -0
- package/packages/big-table/src/assets/img/xb_big.png +0 -0
- package/packages/big-table/src/assets/img/xb_small.png +0 -0
- package/packages/big-table/src/assets/style/table-base.less +275 -0
- package/packages/big-table/src/assets/style/table-global.less +167 -0
- package/packages/big-table/src/bigTableEmits.ts +46 -0
- package/packages/big-table/src/bigTableProps.ts +125 -0
- package/packages/big-table/src/bigTableState.ts +62 -0
- package/packages/big-table/src/components/NoData.vue +90 -0
- package/packages/big-table/src/components/SvgIcon.vue +49 -0
- package/packages/big-table/src/components/TextOverTooltip.vue +110 -0
- package/packages/big-table/src/components/edit-form/EditForm.vue +426 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-date-picker/edit-date-picker.vue +66 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-digital/edit-digital.vue +60 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-input/edit-input.vue +38 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-input-password/edit-input-password.vue +89 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-month-picker/edit-month-picker.vue +38 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-search/edit-search.vue +63 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-search-more/edit-search-more.vue +69 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-select/edit-select.vue +51 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-select-multiple/edit-select-multiple.vue +60 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-textarea/edit-textarea.vue +34 -0
- package/packages/big-table/src/components/edit-form/edit-component/edit-time-picker/edit-time-picker.vue +42 -0
- package/packages/big-table/src/components/edit-form/edit-component/editFormProps.ts +91 -0
- package/packages/big-table/src/components/edit-form/edit-component/register-com.ts +18 -0
- package/packages/big-table/src/components/edit-form/hooks/useConfigData.ts +79 -0
- package/packages/big-table/src/components/edit-form/hooks/useDateType.ts +184 -0
- package/packages/big-table/src/components/edit-form/hooks/useFormCommon.ts +373 -0
- package/packages/big-table/src/components/edit-form/hooks/useItemDefault.ts +638 -0
- package/packages/big-table/src/components/edit-form/hooks/useSearch.ts +910 -0
- package/packages/big-table/src/components/edit-form/hooks/useValidateRules.ts +387 -0
- package/packages/big-table/src/components/edit-form/interface.ts +53 -0
- package/packages/big-table/src/components/edit-form/types.ts +3 -0
- package/packages/big-table/src/components/edit-form/utils.ts +247 -0
- package/packages/big-table/src/hooks/useBatchEditing.ts +574 -0
- package/packages/big-table/src/hooks/useFormat.ts +612 -0
- package/packages/big-table/src/hooks/useNestTable.ts +109 -0
- package/packages/big-table/src/hooks/useTableParse.ts +169 -0
- package/packages/big-table/src/utils.ts +705 -0
- package/packages/button-print/index.ts +15 -0
- package/packages/button-print/src/ButtonPrint.vue +697 -0
- package/packages/button-print/src/components/IdentityVerification.vue +149 -0
- package/packages/button-print/src/interfaces.ts +19 -0
- package/packages/button-print/src/utils/crypto.js +25 -0
- package/packages/button-print/src/utils/print.es.min.js +1 -0
- package/packages/drag-layout/index.ts +15 -0
- package/packages/drag-layout/src/DragFormLeftItem.vue +131 -0
- package/packages/drag-layout/src/DragFormRightItem.vue +277 -0
- package/packages/drag-layout/src/DragLayout.vue +712 -0
- package/packages/grid/index.ts +17 -0
- package/packages/grid/src/Grid.tsx +22 -0
- package/packages/grid/src/hooks.ts +168 -0
- package/packages/index.ts +36 -0
- package/src/component/svg/index.vue +49 -0
- package/src/core/create.ts +5 -0
- package/src/global/variable.ts +2 -0
- package/src/utils/clickoutside.ts +80 -0
- package/src/utils/crypto.js +25 -0
- package/src/utils/vexutils.ts +811 -0
package/es/big-table/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { inject, computed, watch, defineComponent, openBlock, createElementBlock, unref, createCommentVNode, createElementVNode, toDisplayString, ref, createVNode, withCtx, normalizeClass, renderSlot, createTextVNode, h, resolveComponent, nextTick,
|
|
1
|
+
import { inject, computed, watch, defineComponent, openBlock, createElementBlock, unref, createCommentVNode, createElementVNode, toDisplayString, ref, createVNode, withCtx, normalizeClass, renderSlot, createTextVNode, mergeProps, reactive, provide, Fragment, renderList, createBlock, resolveDynamicComponent, h, resolveComponent, nextTick, createApp, Teleport, onMounted, onUnmounted, getCurrentInstance, onBeforeUnmount, onActivated, onDeactivated, isVNode, useAttrs, normalizeStyle, withDirectives, vShow, pushScopeId, popScopeId } from 'vue';
|
|
2
2
|
import axios from 'axios';
|
|
3
3
|
import { CaretDown, CaretForward, SyncOutline, SettingsSharp, CopyOutline } from '@vicons/ionicons5';
|
|
4
|
-
import { NTooltip, useMessage, NInputGroup, NInput, NButton, NCheckbox, NCheckboxGroup, NSpace, NIcon, NPopconfirm, NDropdown, NSwitch, NPopover, NProgress } from 'naive-ui';
|
|
4
|
+
import { NTooltip, useMessage, NForm, NFormItem, NInputGroup, NInput, NButton, NCheckbox, NCheckboxGroup, NSpace, NIcon, NPopconfirm, NDropdown, NSwitch, NPopover, NProgress } from 'naive-ui';
|
|
5
5
|
|
|
6
6
|
/*!
|
|
7
7
|
* vue-router v4.0.13
|
|
@@ -13108,7 +13108,7 @@ const useBatchEditing = (props, state, emit, xGrid) => {
|
|
|
13108
13108
|
return false;
|
|
13109
13109
|
let id = props.inlineEditCurrentOperateBtnId;
|
|
13110
13110
|
let find = props.btnList?.find((item) => {
|
|
13111
|
-
return item
|
|
13111
|
+
return item?.settingObj?.[0]?.obj_id === id;
|
|
13112
13112
|
});
|
|
13113
13113
|
return !!find;
|
|
13114
13114
|
};
|
|
@@ -13496,10 +13496,10 @@ var img$4 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAggAAAGUCAYAAABQsNrGA
|
|
|
13496
13496
|
|
|
13497
13497
|
var img$3 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQQAAADKCAYAAABDnT56AAAAAXNSR0IArs4c6QAAN55JREFUeNrtfQmQJFeZXmZVdfU108dcmrPnliyNrhEa0LHSMEigC0loFwFCSGtjYxZsEw6vcYTDa4fWG2z4iGDDYe8aAoN30aJYQKwCQSCJlRBmhEASOkejY0bXaKZ7ru65+qwz/X1Z+apfvcrMyqyurq6e/v+IrMzK62W+fP/3/uv9z7KEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEWo7ss+VFRkZGejo6Oram0+m+fD5vJZPJ0ampqXd6enqG5TMLCS0QQHAcZykY//exPj+RSBSwq+CUyMJ/vt9BLI8CLN6Wzy0kdBYDwvj4+Hbbtj+DzUShUMgCAHJFENZF9X4J/ikWU5AYdgMUfi6fXEhoHgMCevp2MP75YOilYHrwv32qq6vrtUwmswaM/kWcksf+DPg+izWBQIEBJQT3HXGPJLZTWH7V2dn5pHx2IaF5BghgYhtA8FFsfgRLiqqAYnYccxkf4JDEdgZAkPOOOR4I+FEC5xMUvt3d3T0kn15IaJ4AAsFgdHT0n2LzAiwZ/M/qgEDbAKQDqgNFgEFBlwoqEKAaHAgKby1evPiH8umFhKop1aK2gY8BBC7AMkkJAAslAMdbCBgumOVyOTK9E3QfgIYJDpQqNuJ6AkNRPr+QUItLCGDWNKSDP6NxEJ3/pAcGxRo9f+h+8zS6JAEIJ3D/Z3t7e9+SZiAk5DFHqz3QyZMnzwMW0DaQ9QMD1fPrvb+53++YfhqAoAf33ppKpf7x2NjY9dIMhPzUVrizt2az2R1c33fffYmF8N4tJyGcOHHiGvT0HwfTjtOVqNQEJQGQ2f0kgTCpweca21uoOrTh49/f19f3dj2NZnBw8BLc+yJs99HIGfR8Omg1+bj+jW1IR4FtQLuuah9tNlzzer1OPVtOxTmlzWJmYmJiLM8osdJ96A06jc39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";
|
|
13498
13498
|
|
|
13499
|
-
const _hoisted_1$
|
|
13500
|
-
const _hoisted_2$
|
|
13499
|
+
const _hoisted_1$4 = { class: "no-data-tip NoData-page" };
|
|
13500
|
+
const _hoisted_2$2 = ["src"];
|
|
13501
13501
|
const _hoisted_3$1 = { key: 1 };
|
|
13502
|
-
var script$
|
|
13502
|
+
var script$4 = /* @__PURE__ */ defineComponent({
|
|
13503
13503
|
props: {
|
|
13504
13504
|
noDataTip: {
|
|
13505
13505
|
type: String,
|
|
@@ -13547,12 +13547,12 @@ var script$2 = /* @__PURE__ */ defineComponent({
|
|
|
13547
13547
|
return res;
|
|
13548
13548
|
});
|
|
13549
13549
|
return (_ctx, _cache) => {
|
|
13550
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
13550
|
+
return openBlock(), createElementBlock("div", _hoisted_1$4, [
|
|
13551
13551
|
__props.showImg ? (openBlock(), createElementBlock("img", {
|
|
13552
13552
|
key: 0,
|
|
13553
13553
|
src: unref(imgStr),
|
|
13554
13554
|
alt: ""
|
|
13555
|
-
}, null, 8, _hoisted_2$
|
|
13555
|
+
}, null, 8, _hoisted_2$2)) : createCommentVNode("v-if", true),
|
|
13556
13556
|
createElementVNode("p", null, toDisplayString(__props.noDataTip), 1),
|
|
13557
13557
|
unref(handleDesc) ? (openBlock(), createElementBlock("span", _hoisted_3$1, toDisplayString(unref(handleDesc)), 1)) : createCommentVNode("v-if", true)
|
|
13558
13558
|
]);
|
|
@@ -13560,15 +13560,15 @@ var script$2 = /* @__PURE__ */ defineComponent({
|
|
|
13560
13560
|
}
|
|
13561
13561
|
});
|
|
13562
13562
|
|
|
13563
|
-
script$
|
|
13564
|
-
script$
|
|
13563
|
+
script$4.__scopeId = "data-v-4a4b0812";
|
|
13564
|
+
script$4.__file = "packages/big-table/src/components/NoData.vue";
|
|
13565
13565
|
|
|
13566
|
-
const _hoisted_1$
|
|
13567
|
-
const __default__$
|
|
13566
|
+
const _hoisted_1$3 = { class: "text-over-tooltip-components" };
|
|
13567
|
+
const __default__$3 = {
|
|
13568
13568
|
name: "TextOverTooltip"
|
|
13569
13569
|
};
|
|
13570
|
-
var script$
|
|
13571
|
-
...__default__$
|
|
13570
|
+
var script$3 = /* @__PURE__ */ defineComponent({
|
|
13571
|
+
...__default__$3,
|
|
13572
13572
|
props: {
|
|
13573
13573
|
content: { type: [String, Number], required: false },
|
|
13574
13574
|
className: { type: String, required: false },
|
|
@@ -13591,7 +13591,7 @@ var script$1 = /* @__PURE__ */ defineComponent({
|
|
|
13591
13591
|
const $refName = ref(null);
|
|
13592
13592
|
const onMouseOver = (str) => {
|
|
13593
13593
|
if (props.isAlias) {
|
|
13594
|
-
isDisabledTooltip.value =
|
|
13594
|
+
isDisabledTooltip.value = true;
|
|
13595
13595
|
return;
|
|
13596
13596
|
}
|
|
13597
13597
|
let parentWidth = $refName.value.parentNode.offsetWidth;
|
|
@@ -13602,7 +13602,7 @@ var script$1 = /* @__PURE__ */ defineComponent({
|
|
|
13602
13602
|
isDisabledTooltip.value = false;
|
|
13603
13603
|
};
|
|
13604
13604
|
return (_ctx, _cache) => {
|
|
13605
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
13605
|
+
return openBlock(), createElementBlock("div", _hoisted_1$3, [
|
|
13606
13606
|
createVNode(unref(NTooltip), {
|
|
13607
13607
|
effect: __props.effect,
|
|
13608
13608
|
show: unref(isDisabledTooltip),
|
|
@@ -13635,8 +13635,1315 @@ var script$1 = /* @__PURE__ */ defineComponent({
|
|
|
13635
13635
|
}
|
|
13636
13636
|
});
|
|
13637
13637
|
|
|
13638
|
-
script$
|
|
13639
|
-
script$
|
|
13638
|
+
script$3.__scopeId = "data-v-6633a934";
|
|
13639
|
+
script$3.__file = "packages/big-table/src/components/TextOverTooltip.vue";
|
|
13640
|
+
|
|
13641
|
+
const _hoisted_1$2 = { key: 0 };
|
|
13642
|
+
const _hoisted_2$1 = ["xlink:href"];
|
|
13643
|
+
const __default__$2 = {
|
|
13644
|
+
name: "SvgIcon"
|
|
13645
|
+
};
|
|
13646
|
+
var script$2 = /* @__PURE__ */ defineComponent({
|
|
13647
|
+
...__default__$2,
|
|
13648
|
+
props: {
|
|
13649
|
+
iconClass: { type: String, required: true, default: "" },
|
|
13650
|
+
title: { type: String, required: true, default: "" },
|
|
13651
|
+
className: { type: String, required: false }
|
|
13652
|
+
},
|
|
13653
|
+
setup(__props) {
|
|
13654
|
+
const props = __props;
|
|
13655
|
+
const iconName = computed(() => `#icon-${props.iconClass}`);
|
|
13656
|
+
const svgClass = computed(() => {
|
|
13657
|
+
if (props.className) {
|
|
13658
|
+
return "svg-icon " + props.className;
|
|
13659
|
+
}
|
|
13660
|
+
else {
|
|
13661
|
+
return "svg-icon";
|
|
13662
|
+
}
|
|
13663
|
+
});
|
|
13664
|
+
return (_ctx, _cache) => {
|
|
13665
|
+
return openBlock(), createElementBlock("svg", mergeProps({
|
|
13666
|
+
class: unref(svgClass),
|
|
13667
|
+
"aria-hidden": "true"
|
|
13668
|
+
}, _ctx.$attrs), [
|
|
13669
|
+
__props.title ? (openBlock(), createElementBlock("title", _hoisted_1$2, toDisplayString(__props.title), 1)) : createCommentVNode("v-if", true),
|
|
13670
|
+
createElementVNode("use", { "xlink:href": unref(iconName) }, null, 8, _hoisted_2$1)
|
|
13671
|
+
], 16);
|
|
13672
|
+
};
|
|
13673
|
+
}
|
|
13674
|
+
});
|
|
13675
|
+
|
|
13676
|
+
script$2.__scopeId = "data-v-372ca5c1";
|
|
13677
|
+
script$2.__file = "packages/big-table/src/components/SvgIcon.vue";
|
|
13678
|
+
|
|
13679
|
+
const configData = {
|
|
13680
|
+
comTypeMap: {
|
|
13681
|
+
"INPUT": "editInput",
|
|
13682
|
+
"DIGITAL": "editDigital",
|
|
13683
|
+
"TEXTAREA": "editTextarea",
|
|
13684
|
+
"RADIO": "editSelect",
|
|
13685
|
+
"RADIO_BLOCK": "editSelect",
|
|
13686
|
+
"CHECKBOX_BLOCK": "editSelectMultiple",
|
|
13687
|
+
"CHECKBOX": "editSelectMultiple",
|
|
13688
|
+
"SEARCH": "editSearch",
|
|
13689
|
+
"SEARCH_MORE": "editSearchMore",
|
|
13690
|
+
"DATE": "editDatePicker",
|
|
13691
|
+
"DATE-INPUT": "editDatePicker",
|
|
13692
|
+
"TIME-INPUT": "editDatePicker",
|
|
13693
|
+
"DATETIME-INPUT": "editDatePicker",
|
|
13694
|
+
"SELECT": "editSelect",
|
|
13695
|
+
"PHONE_TYPE": "editSelect",
|
|
13696
|
+
"IDCARD_TYPE": "editSelect",
|
|
13697
|
+
"editMonthPicker": "editMonthPicker",
|
|
13698
|
+
"editTimePicker": "editTimePicker",
|
|
13699
|
+
"editDatePicker": "editDatePicker",
|
|
13700
|
+
"editSelect": "editSelect",
|
|
13701
|
+
"editInputPassword": "editInputPassword",
|
|
13702
|
+
"editSelectMultiple": "editSelectMultiple",
|
|
13703
|
+
"MAP": "editInput",
|
|
13704
|
+
"ICON": "editInput",
|
|
13705
|
+
"UPPICTURE": "editInput",
|
|
13706
|
+
"LEVEL_SEARCH_CASCADE2": "editInput",
|
|
13707
|
+
"LABEL": "editInput",
|
|
13708
|
+
"GUAGE": "editInput",
|
|
13709
|
+
"SLIDER_COMPONENT": "editInput",
|
|
13710
|
+
"SWITCH_COMPONENT": "editInput",
|
|
13711
|
+
"AGE_JSON": "editInput",
|
|
13712
|
+
"AGE": "editInput"
|
|
13713
|
+
},
|
|
13714
|
+
getComName(v) {
|
|
13715
|
+
const { isMonthPicker_com, isDate_com, isTimePicker_com, isSelect_com, isPassword_com, comTypeMap } = this;
|
|
13716
|
+
if (isDate_com(v.html_type)) {
|
|
13717
|
+
if (isMonthPicker_com(v))
|
|
13718
|
+
return "editMonthPicker";
|
|
13719
|
+
if (isTimePicker_com(v))
|
|
13720
|
+
return "editTimePicker";
|
|
13721
|
+
return "editDatePicker";
|
|
13722
|
+
}
|
|
13723
|
+
if (isSelect_com(v))
|
|
13724
|
+
return "editSelect";
|
|
13725
|
+
if (isPassword_com(v))
|
|
13726
|
+
return "editInputPassword";
|
|
13727
|
+
const res = comTypeMap[v.html_type];
|
|
13728
|
+
if (res) {
|
|
13729
|
+
return res;
|
|
13730
|
+
}
|
|
13731
|
+
return "editInput";
|
|
13732
|
+
},
|
|
13733
|
+
isMonthPicker_com(v) {
|
|
13734
|
+
return v.date_format && v.date_format.replace(/yyyy-MM/gi, "YYYY-MM") == "YYYY-MM";
|
|
13735
|
+
},
|
|
13736
|
+
isDate_com(key) {
|
|
13737
|
+
return key === "DATE" || key === "DATE-INPUT" || key === "DATETIME-INPUT";
|
|
13738
|
+
},
|
|
13739
|
+
isTimePicker_com(v) {
|
|
13740
|
+
return String(v.html_type) == "TIME-INPUT" || v.date_format == "HH:mm:ss" || v.date_format == "HH:mm";
|
|
13741
|
+
},
|
|
13742
|
+
isSelect_com(v) {
|
|
13743
|
+
return ["SELECT", "PHONE_TYPE", "IDCARD_TYPE"].includes(v.html_type);
|
|
13744
|
+
},
|
|
13745
|
+
isPassword_com(v) {
|
|
13746
|
+
return (v?.validate?.obj_type || "") === "password";
|
|
13747
|
+
}
|
|
13748
|
+
};
|
|
13749
|
+
|
|
13750
|
+
const handleSysParams = (str, obj) => {
|
|
13751
|
+
let p = {
|
|
13752
|
+
form: { ...obj.defaultValue },
|
|
13753
|
+
sys: obj.userInfo?.map?.sysParams || {},
|
|
13754
|
+
db: { ...obj.dbParams || {} }
|
|
13755
|
+
};
|
|
13756
|
+
const getVal = (t, r, k) => {
|
|
13757
|
+
return t.replace(r, function () {
|
|
13758
|
+
let pKey = arguments[1];
|
|
13759
|
+
let pls = pKey.split("!");
|
|
13760
|
+
let plsList = pls.slice(1);
|
|
13761
|
+
let l = [];
|
|
13762
|
+
plsList.forEach((v) => {
|
|
13763
|
+
let c = v;
|
|
13764
|
+
if (v.includes(".")) {
|
|
13765
|
+
let [_k, _v] = v.split(".");
|
|
13766
|
+
c = typeof p[_k] === "object" ? p[_k][_v] : "";
|
|
13767
|
+
}
|
|
13768
|
+
if (c || +c == 0) {
|
|
13769
|
+
l.push(c);
|
|
13770
|
+
}
|
|
13771
|
+
});
|
|
13772
|
+
let f = l.find((v) => v || +v == 0);
|
|
13773
|
+
let res = p[k][pls[0]];
|
|
13774
|
+
res = xeUtils.notEmpty(res) ? res : "";
|
|
13775
|
+
if (pls.length > 1) {
|
|
13776
|
+
return res || f;
|
|
13777
|
+
}
|
|
13778
|
+
return res;
|
|
13779
|
+
});
|
|
13780
|
+
};
|
|
13781
|
+
if (typeof str === "string") {
|
|
13782
|
+
if (str.includes("form")) {
|
|
13783
|
+
str = getVal(str, /\${form.(.*?)\}/g, "form");
|
|
13784
|
+
}
|
|
13785
|
+
if (str.includes("sys")) {
|
|
13786
|
+
str = getVal(str, /\${sys.(.*?)\}/g, "sys");
|
|
13787
|
+
}
|
|
13788
|
+
if (str.includes("db")) {
|
|
13789
|
+
str = getVal(str, /\${db.(.*?)\}/g, "db");
|
|
13790
|
+
}
|
|
13791
|
+
}
|
|
13792
|
+
if (!str && +str != 0 || ["undefined", "null"].includes(String(str))) {
|
|
13793
|
+
str = "";
|
|
13794
|
+
}
|
|
13795
|
+
return str;
|
|
13796
|
+
};
|
|
13797
|
+
const handlerGetDateType = (data) => {
|
|
13798
|
+
let dateType;
|
|
13799
|
+
switch (data.html_type) {
|
|
13800
|
+
case "DATETIME-INPUT":
|
|
13801
|
+
dateType = "yyyy-MM-dd HH:mm:ss";
|
|
13802
|
+
break;
|
|
13803
|
+
case "DATE-INPUT":
|
|
13804
|
+
dateType = "yyyy-MM-dd";
|
|
13805
|
+
break;
|
|
13806
|
+
case "TIME-INPUT":
|
|
13807
|
+
dateType = "HH:mm:ss";
|
|
13808
|
+
break;
|
|
13809
|
+
case "DATE":
|
|
13810
|
+
data.date_format = data.date_format && data.date_format.replace(/yyyy/gi, "yyyy");
|
|
13811
|
+
dateType = (data.date_format || "yyyy-MM-dd").replace(/yyyy-MM-dd/gi, "yyyy-MM-dd").replace(/hh:mm:ss/gi, "HH:mm:ss").replace(/hh:mm/gi, "HH:mm");
|
|
13812
|
+
break;
|
|
13813
|
+
default:
|
|
13814
|
+
dateType = data.date_format || "yyyy-MM-dd";
|
|
13815
|
+
break;
|
|
13816
|
+
}
|
|
13817
|
+
return dateType;
|
|
13818
|
+
};
|
|
13819
|
+
const handleGetJsonStr = (str) => {
|
|
13820
|
+
let resObj = {};
|
|
13821
|
+
if (xeUtils.isJSON(str)) {
|
|
13822
|
+
resObj = JSON.parse(str);
|
|
13823
|
+
}
|
|
13824
|
+
else {
|
|
13825
|
+
resObj = typeof str === "string" ? {} : str;
|
|
13826
|
+
}
|
|
13827
|
+
if (resObj && !resObj.objs && resObj.value) {
|
|
13828
|
+
if (xeUtils.isJSON(resObj.value)) {
|
|
13829
|
+
resObj = JSON.parse(resObj.value);
|
|
13830
|
+
if (resObj.type === "jsonb") {
|
|
13831
|
+
resObj = handleGetJsonStr(resObj);
|
|
13832
|
+
}
|
|
13833
|
+
}
|
|
13834
|
+
}
|
|
13835
|
+
return resObj;
|
|
13836
|
+
};
|
|
13837
|
+
|
|
13838
|
+
const useFormCommon = (props, state, userInfo, computedData) => {
|
|
13839
|
+
const paramsObj = { defaultValue: state.defaultValue, userInfo, dbParams: state.dbParams };
|
|
13840
|
+
computed(() => {
|
|
13841
|
+
return function (item) {
|
|
13842
|
+
let res = item.is_null == "0" && props.styleSetting.formBoldOpen;
|
|
13843
|
+
return res;
|
|
13844
|
+
};
|
|
13845
|
+
});
|
|
13846
|
+
computed(() => {
|
|
13847
|
+
return function (item) {
|
|
13848
|
+
let { combinationList = [] } = item || {};
|
|
13849
|
+
if (!combinationList.length)
|
|
13850
|
+
return false;
|
|
13851
|
+
let showCombination = combinationList.filter((v) => !v.isCombinationHide);
|
|
13852
|
+
return showCombination?.length > 1;
|
|
13853
|
+
};
|
|
13854
|
+
});
|
|
13855
|
+
const handleGetcheckboxDef = (item) => {
|
|
13856
|
+
let optionsList = item.option;
|
|
13857
|
+
let valList = [];
|
|
13858
|
+
let checkboxVal = state.defaultValue[item.name] || item.default_val;
|
|
13859
|
+
let checkboxList = [];
|
|
13860
|
+
checkboxVal = handleSysParams(checkboxVal, paramsObj);
|
|
13861
|
+
if (typeof checkboxVal === "string") {
|
|
13862
|
+
if (xeUtils.isJSON(checkboxVal)) {
|
|
13863
|
+
checkboxList = JSON.parse(checkboxVal);
|
|
13864
|
+
}
|
|
13865
|
+
else {
|
|
13866
|
+
checkboxList = checkboxVal ? checkboxVal.split(",") : [];
|
|
13867
|
+
}
|
|
13868
|
+
}
|
|
13869
|
+
else if (Array.isArray(checkboxVal)) {
|
|
13870
|
+
checkboxList = checkboxVal;
|
|
13871
|
+
}
|
|
13872
|
+
checkboxList = Array.isArray(checkboxList) ? checkboxList : [];
|
|
13873
|
+
checkboxList.forEach((v) => {
|
|
13874
|
+
optionsList.forEach((j) => {
|
|
13875
|
+
if (j.text == v || j.value == v) {
|
|
13876
|
+
valList.push(String(v));
|
|
13877
|
+
}
|
|
13878
|
+
});
|
|
13879
|
+
});
|
|
13880
|
+
return valList || [];
|
|
13881
|
+
};
|
|
13882
|
+
const transformStr = (item) => {
|
|
13883
|
+
var def = state.defaultValue[item.name];
|
|
13884
|
+
var propsDef = def || def !== "" && def == 0 ? def : item.default_val;
|
|
13885
|
+
let defVal = propsDef || propsDef == 0 ? propsDef : "";
|
|
13886
|
+
defVal = String(defVal);
|
|
13887
|
+
return defVal;
|
|
13888
|
+
};
|
|
13889
|
+
const handlerFormatTextarea = (data) => {
|
|
13890
|
+
let defVal = state.defaultValue[data.name] || data.default_val || "";
|
|
13891
|
+
defVal = handleSysParams(defVal, paramsObj);
|
|
13892
|
+
if (!defVal) {
|
|
13893
|
+
return "";
|
|
13894
|
+
}
|
|
13895
|
+
else if (defVal instanceof Object) {
|
|
13896
|
+
return JSON.stringify(defVal);
|
|
13897
|
+
}
|
|
13898
|
+
return defVal;
|
|
13899
|
+
};
|
|
13900
|
+
const handleGetTextDef = (item) => {
|
|
13901
|
+
let defVal = "";
|
|
13902
|
+
var def = state.defaultValue[item.name];
|
|
13903
|
+
var propsDef = def || def !== "" && def === 0 ? def : handleSysParams(item.data_value || item.default_val, paramsObj);
|
|
13904
|
+
defVal = propsDef || propsDef === 0 ? propsDef : void 0;
|
|
13905
|
+
if (item.html_type === "DIGITAL") {
|
|
13906
|
+
defVal = defVal ? +defVal : defVal;
|
|
13907
|
+
}
|
|
13908
|
+
return defVal;
|
|
13909
|
+
};
|
|
13910
|
+
const handleDateCondition = (item) => {
|
|
13911
|
+
let { condition, attr, unit = "DAY", default_val } = item;
|
|
13912
|
+
let format = handlerGetDateType(item);
|
|
13913
|
+
let useTime, count = Number(default_val) || 0;
|
|
13914
|
+
let getUnit = unit.toLowerCase();
|
|
13915
|
+
let useUnit = getUnit + "s";
|
|
13916
|
+
if (condition == "IN_THE_PAST") {
|
|
13917
|
+
useTime = moment().subtract(count, useUnit);
|
|
13918
|
+
}
|
|
13919
|
+
else {
|
|
13920
|
+
useTime = moment().add(count, useUnit);
|
|
13921
|
+
}
|
|
13922
|
+
let res = useTime.format(format);
|
|
13923
|
+
if (attr == "startDate") {
|
|
13924
|
+
res = useTime.startOf("day").format(format);
|
|
13925
|
+
}
|
|
13926
|
+
else if (attr == "endDate") {
|
|
13927
|
+
res = useTime.endOf("day").format(format);
|
|
13928
|
+
}
|
|
13929
|
+
return res;
|
|
13930
|
+
};
|
|
13931
|
+
const handleGetdateTypeDef = (item) => {
|
|
13932
|
+
var propsDate = state.defaultValue[item.name] || item.default_val;
|
|
13933
|
+
if (item.condition === "IN_THE_PAST" || item.condition === "IN_THE_FUTURE") {
|
|
13934
|
+
propsDate = handleDateCondition(item);
|
|
13935
|
+
}
|
|
13936
|
+
else {
|
|
13937
|
+
propsDate = handleSysParams(propsDate, paramsObj);
|
|
13938
|
+
}
|
|
13939
|
+
let dateType = handlerGetDateType(item);
|
|
13940
|
+
if (dateType == "HH:mm:ss" || dateType == "HH:mm") {
|
|
13941
|
+
return propsDate && moment(propsDate, dateType).isValid() ? moment(propsDate, dateType) : null;
|
|
13942
|
+
}
|
|
13943
|
+
else {
|
|
13944
|
+
if (dateType === "YYYY-MM-DD HH:mm:ss" && propsDate) {
|
|
13945
|
+
if (typeof propsDate === "string") {
|
|
13946
|
+
let [, h] = propsDate.split(" ");
|
|
13947
|
+
if (!h) {
|
|
13948
|
+
propsDate = `${propsDate} 00:00:00`;
|
|
13949
|
+
}
|
|
13950
|
+
}
|
|
13951
|
+
}
|
|
13952
|
+
return propsDate && moment(new Date(propsDate), dateType).isValid() ? moment(new Date(propsDate), dateType) : null;
|
|
13953
|
+
}
|
|
13954
|
+
};
|
|
13955
|
+
const transformDefStr = (item) => {
|
|
13956
|
+
var def = state.defaultValue[item.name];
|
|
13957
|
+
var propsDef = def || def !== "" && def == 0 ? def : item.default_val;
|
|
13958
|
+
let defVal = propsDef || propsDef == 0 ? propsDef : "";
|
|
13959
|
+
defVal = String(defVal);
|
|
13960
|
+
return defVal;
|
|
13961
|
+
};
|
|
13962
|
+
const getSelectVal = (data) => {
|
|
13963
|
+
let targetStr = transformDefStr(data) || "";
|
|
13964
|
+
if (["SELECT", "PHONE_TYPE", "IDCARD_TYPE"].includes(data.html_type)) {
|
|
13965
|
+
targetStr = String(targetStr);
|
|
13966
|
+
targetStr = handleSysParams(targetStr, paramsObj);
|
|
13967
|
+
if (!Array.isArray(data.option))
|
|
13968
|
+
return targetStr;
|
|
13969
|
+
let f = data.option.find((o) => o.value == targetStr);
|
|
13970
|
+
if (f) {
|
|
13971
|
+
return targetStr;
|
|
13972
|
+
}
|
|
13973
|
+
else {
|
|
13974
|
+
const curVal = data.option[0] && data.option[0].value;
|
|
13975
|
+
return curVal;
|
|
13976
|
+
}
|
|
13977
|
+
}
|
|
13978
|
+
else {
|
|
13979
|
+
return targetStr;
|
|
13980
|
+
}
|
|
13981
|
+
};
|
|
13982
|
+
const handlerDefaultUpload = (data, type = "default") => {
|
|
13983
|
+
let currentData;
|
|
13984
|
+
let fileList;
|
|
13985
|
+
if (xeUtils.isJSON(data)) {
|
|
13986
|
+
currentData = JSON.parse(data);
|
|
13987
|
+
}
|
|
13988
|
+
else {
|
|
13989
|
+
currentData = data;
|
|
13990
|
+
}
|
|
13991
|
+
if (currentData instanceof Array) {
|
|
13992
|
+
currentData.forEach((item) => {
|
|
13993
|
+
item.thumbUrl = item.url;
|
|
13994
|
+
item.uid = (-Math.random()).toString();
|
|
13995
|
+
item.status = "done";
|
|
13996
|
+
});
|
|
13997
|
+
fileList = currentData;
|
|
13998
|
+
}
|
|
13999
|
+
else if (typeof currentData === "string" && currentData.length > 0) {
|
|
14000
|
+
const currentList = currentData.split(",");
|
|
14001
|
+
fileList = [];
|
|
14002
|
+
currentList.forEach((v) => {
|
|
14003
|
+
if (v) {
|
|
14004
|
+
fileList.push({
|
|
14005
|
+
url: v,
|
|
14006
|
+
thumbUrl: v,
|
|
14007
|
+
uid: (-Math.random()).toString(),
|
|
14008
|
+
name: "name",
|
|
14009
|
+
status: "done"
|
|
14010
|
+
});
|
|
14011
|
+
}
|
|
14012
|
+
});
|
|
14013
|
+
}
|
|
14014
|
+
else {
|
|
14015
|
+
fileList = [];
|
|
14016
|
+
}
|
|
14017
|
+
if (type === "default") {
|
|
14018
|
+
return fileList;
|
|
14019
|
+
}
|
|
14020
|
+
else {
|
|
14021
|
+
return { fileList };
|
|
14022
|
+
}
|
|
14023
|
+
};
|
|
14024
|
+
const getCascaderDef = (v) => {
|
|
14025
|
+
try {
|
|
14026
|
+
const is_multi = v.is_multi == "1";
|
|
14027
|
+
let defaultValue = state.defaultValue[v.name] || v.default_val;
|
|
14028
|
+
if (typeof defaultValue === "string") {
|
|
14029
|
+
defaultValue = handleSysParams(defaultValue, paramsObj);
|
|
14030
|
+
if (!xeUtils.isJSON(defaultValue)) {
|
|
14031
|
+
return [];
|
|
14032
|
+
}
|
|
14033
|
+
}
|
|
14034
|
+
if (!defaultValue)
|
|
14035
|
+
return [];
|
|
14036
|
+
if (defaultValue.includes("objStr")) {
|
|
14037
|
+
if (is_multi) {
|
|
14038
|
+
const multiData = handleGetJsonStr(defaultValue);
|
|
14039
|
+
const objs = multiData["objs"] || [];
|
|
14040
|
+
const objStrList = [];
|
|
14041
|
+
objs.forEach((e) => {
|
|
14042
|
+
objStrList.push(e.objStr.split("/"));
|
|
14043
|
+
});
|
|
14044
|
+
return [...objStrList];
|
|
14045
|
+
}
|
|
14046
|
+
else {
|
|
14047
|
+
defaultValue = handleGetJsonStr(defaultValue).objStr;
|
|
14048
|
+
}
|
|
14049
|
+
}
|
|
14050
|
+
if (typeof defaultValue == "string") {
|
|
14051
|
+
if (defaultValue.includes("_")) {
|
|
14052
|
+
defaultValue = defaultValue.split("_");
|
|
14053
|
+
}
|
|
14054
|
+
else {
|
|
14055
|
+
defaultValue = defaultValue.split("/");
|
|
14056
|
+
}
|
|
14057
|
+
}
|
|
14058
|
+
if (!Array.isArray(defaultValue)) {
|
|
14059
|
+
defaultValue = [];
|
|
14060
|
+
}
|
|
14061
|
+
else {
|
|
14062
|
+
defaultValue = defaultValue.filter(Boolean);
|
|
14063
|
+
}
|
|
14064
|
+
return is_multi ? [] : defaultValue || [];
|
|
14065
|
+
}
|
|
14066
|
+
catch (error) {
|
|
14067
|
+
console.log(error);
|
|
14068
|
+
return [];
|
|
14069
|
+
}
|
|
14070
|
+
};
|
|
14071
|
+
const getInitializeDef = (item) => {
|
|
14072
|
+
return handleSysParams(state.defaultValue[item.name] || item.default_val || "", paramsObj);
|
|
14073
|
+
};
|
|
14074
|
+
const transformNumber = (val) => {
|
|
14075
|
+
if (val) {
|
|
14076
|
+
let resVal = +val;
|
|
14077
|
+
return isNaN(resVal) ? 0 : resVal;
|
|
14078
|
+
}
|
|
14079
|
+
return void 0;
|
|
14080
|
+
};
|
|
14081
|
+
const handleGetdef = (item) => {
|
|
14082
|
+
let defVal;
|
|
14083
|
+
switch (item.html_type) {
|
|
14084
|
+
case "CHECKBOX_BLOCK":
|
|
14085
|
+
case "CHECKBOX":
|
|
14086
|
+
defVal = handleGetcheckboxDef(item);
|
|
14087
|
+
break;
|
|
14088
|
+
case "RADIO_BLOCK":
|
|
14089
|
+
case "RADIO":
|
|
14090
|
+
defVal = transformStr(item);
|
|
14091
|
+
defVal = handleSysParams(defVal, paramsObj);
|
|
14092
|
+
if (!defVal && +defVal != 0) {
|
|
14093
|
+
defVal = void 0;
|
|
14094
|
+
}
|
|
14095
|
+
break;
|
|
14096
|
+
case "MAP":
|
|
14097
|
+
defVal = state.defaultValue[item.name] || item.default_val || "";
|
|
14098
|
+
defVal = handleSysParams(defVal, paramsObj);
|
|
14099
|
+
break;
|
|
14100
|
+
case "TEXTAREA":
|
|
14101
|
+
defVal = handlerFormatTextarea(item) || "";
|
|
14102
|
+
break;
|
|
14103
|
+
case "INPUT":
|
|
14104
|
+
case "DIGITAL":
|
|
14105
|
+
case "ICON":
|
|
14106
|
+
defVal = handleGetTextDef(item);
|
|
14107
|
+
break;
|
|
14108
|
+
case "DATE":
|
|
14109
|
+
case "DATE-INPUT":
|
|
14110
|
+
case "DATETIME-INPUT":
|
|
14111
|
+
defVal = handleGetdateTypeDef(item);
|
|
14112
|
+
break;
|
|
14113
|
+
case "SELECT":
|
|
14114
|
+
case "PHONE_TYPE":
|
|
14115
|
+
case "IDCARD_TYPE":
|
|
14116
|
+
defVal = getSelectVal(item);
|
|
14117
|
+
break;
|
|
14118
|
+
case "UPPICTURE":
|
|
14119
|
+
var def = state.defaultValue[item.name] || item.default_val;
|
|
14120
|
+
if (typeof def === "string") {
|
|
14121
|
+
def = handleSysParams(def, paramsObj);
|
|
14122
|
+
}
|
|
14123
|
+
defVal = handlerDefaultUpload(def, "values");
|
|
14124
|
+
break;
|
|
14125
|
+
case "SEARCH":
|
|
14126
|
+
defVal = handleSysParams(item.default_val, paramsObj) || state.defaultValue[item.name] || void 0;
|
|
14127
|
+
break;
|
|
14128
|
+
case "SEARCH_MORE":
|
|
14129
|
+
defVal = [];
|
|
14130
|
+
break;
|
|
14131
|
+
case "LEVEL_SEARCH_CASCADE2":
|
|
14132
|
+
defVal = getCascaderDef(item);
|
|
14133
|
+
break;
|
|
14134
|
+
case "LABEL":
|
|
14135
|
+
defVal = [];
|
|
14136
|
+
break;
|
|
14137
|
+
case "GUAGE":
|
|
14138
|
+
defVal = state.defaultValue[item.name];
|
|
14139
|
+
break;
|
|
14140
|
+
case "SLIDER_COMPONENT":
|
|
14141
|
+
defVal = getInitializeDef(item);
|
|
14142
|
+
defVal = transformNumber(defVal);
|
|
14143
|
+
break;
|
|
14144
|
+
case "SWITCH_COMPONENT":
|
|
14145
|
+
defVal = getInitializeDef(item);
|
|
14146
|
+
break;
|
|
14147
|
+
case "AGE_JSON":
|
|
14148
|
+
let d = String(getInitializeDef(item) || {});
|
|
14149
|
+
if (xeUtils.isJSON(d)) {
|
|
14150
|
+
d = JSON.parse(d);
|
|
14151
|
+
}
|
|
14152
|
+
if (typeof d == "object") {
|
|
14153
|
+
Object.keys(d).forEach((v) => {
|
|
14154
|
+
d[v] = [-1, "-1"].includes(d[v]) ? "" : d[v];
|
|
14155
|
+
});
|
|
14156
|
+
defVal = Object.assign({ year: "", month: "", day: "", days: "" }, d);
|
|
14157
|
+
}
|
|
14158
|
+
else {
|
|
14159
|
+
defVal = { year: "", month: "", day: "", days: "" };
|
|
14160
|
+
}
|
|
14161
|
+
break;
|
|
14162
|
+
case "AGE":
|
|
14163
|
+
defVal = state.defaultValue[item.name] || handleSysParams(item.default_val || "", paramsObj);
|
|
14164
|
+
break;
|
|
14165
|
+
}
|
|
14166
|
+
if (item.html_type === "ICON") {
|
|
14167
|
+
state.defaultValue[item.name] = defVal;
|
|
14168
|
+
}
|
|
14169
|
+
return defVal;
|
|
14170
|
+
};
|
|
14171
|
+
const RandomId = (len) => {
|
|
14172
|
+
return Math.random().toString(36).slice(3, len) + new Date().getTime();
|
|
14173
|
+
};
|
|
14174
|
+
return {
|
|
14175
|
+
handleGetdef,
|
|
14176
|
+
RandomId
|
|
14177
|
+
};
|
|
14178
|
+
};
|
|
14179
|
+
|
|
14180
|
+
const useValidateRules = () => {
|
|
14181
|
+
const checkLenght = (rule, value, item) => {
|
|
14182
|
+
try {
|
|
14183
|
+
const { validate = {}, is_null, html_type } = item || {};
|
|
14184
|
+
let { min_length, max_length } = validate || {};
|
|
14185
|
+
let curval = value + "";
|
|
14186
|
+
if (html_type === "INPUT") {
|
|
14187
|
+
max_length = max_length ? +max_length : 300;
|
|
14188
|
+
}
|
|
14189
|
+
else if (html_type === "TEXTAREA") {
|
|
14190
|
+
max_length = max_length ? +max_length : 500;
|
|
14191
|
+
}
|
|
14192
|
+
else if (html_type === "RICH_TEXT") {
|
|
14193
|
+
const div = document.createElement("div");
|
|
14194
|
+
div.innerHTML = value;
|
|
14195
|
+
curval = div.innerText;
|
|
14196
|
+
}
|
|
14197
|
+
const strlen = curval.length;
|
|
14198
|
+
let max = strlen > max_length, min = min_length > strlen;
|
|
14199
|
+
if (is_null == 0 && !value && value != 0) {
|
|
14200
|
+
return new Error(`\u8BF7\u8F93\u5165${min_length || 0}-${max_length}\u4E2A\u5B57\u7B26`);
|
|
14201
|
+
}
|
|
14202
|
+
if (is_null == 1 && !value) {
|
|
14203
|
+
return true;
|
|
14204
|
+
}
|
|
14205
|
+
if ((min_length || String(min_length) === "0") && max_length && (max || min)) {
|
|
14206
|
+
return new Error(`\u8BF7\u8F93\u5165${min_length || 0}-${max_length}\u4E2A\u5B57\u7B26`);
|
|
14207
|
+
}
|
|
14208
|
+
else if (min_length && min) {
|
|
14209
|
+
return new Error(`\u81F3\u5C11\u8F93\u5165${min_length}\u4E2A\u5B57\u7B26`);
|
|
14210
|
+
}
|
|
14211
|
+
else if (max_length && max) {
|
|
14212
|
+
return new Error(`\u6700\u591A\u53EA\u80FD\u8F93\u5165${max_length}\u4E2A\u5B57\u7B26`);
|
|
14213
|
+
}
|
|
14214
|
+
return true;
|
|
14215
|
+
}
|
|
14216
|
+
catch (error) {
|
|
14217
|
+
console.log(error, "------checkLenght");
|
|
14218
|
+
return true;
|
|
14219
|
+
}
|
|
14220
|
+
};
|
|
14221
|
+
const getInputCheck = (validate = void 0) => {
|
|
14222
|
+
if (!validate)
|
|
14223
|
+
return false;
|
|
14224
|
+
const isInteger = validate == "integer";
|
|
14225
|
+
return {
|
|
14226
|
+
pattern: isInteger ? /^-?[0-9]+$/ : /^(-?[0-9]+)(\\.[0-9]+)?$/,
|
|
14227
|
+
message: isInteger ? "\u53EA\u80FD\u8F93\u5165\u6570\u5B57" : "\u53EA\u80FD\u8F93\u5165\u6570\u5B57\u548C\u5C0F\u6570"
|
|
14228
|
+
};
|
|
14229
|
+
};
|
|
14230
|
+
const handlerSetIdCarInfoValidate = (rule, value, item) => {
|
|
14231
|
+
try {
|
|
14232
|
+
const { validate = {} } = item || {};
|
|
14233
|
+
if (validate.vali_obj == "id_card") {
|
|
14234
|
+
const pat = /^\d{6}(((19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])\d{3}([0-9]|x|X))|(\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])\d{3}))$/;
|
|
14235
|
+
if (!pat.test(value)) {
|
|
14236
|
+
return new Error(`\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u8EAB\u4EFD\u8BC1\u53F7\u7801`);
|
|
14237
|
+
}
|
|
14238
|
+
}
|
|
14239
|
+
return true;
|
|
14240
|
+
}
|
|
14241
|
+
catch (error) {
|
|
14242
|
+
console.log(error, "------handlerSetIdCarInfoValidate");
|
|
14243
|
+
return true;
|
|
14244
|
+
}
|
|
14245
|
+
};
|
|
14246
|
+
const checkinputBlank = (rule, value, item) => {
|
|
14247
|
+
try {
|
|
14248
|
+
const { is_null, delete_before_after_spaces } = item;
|
|
14249
|
+
if (typeof value === "string" && delete_before_after_spaces == 1) {
|
|
14250
|
+
let val = value.trim();
|
|
14251
|
+
if (!val && is_null == 0) {
|
|
14252
|
+
return new Error(`\u4E0D\u53EF\u4E3A\u7A7A`);
|
|
14253
|
+
}
|
|
14254
|
+
}
|
|
14255
|
+
return true;
|
|
14256
|
+
}
|
|
14257
|
+
catch (error) {
|
|
14258
|
+
console.log(error, "------checkinputBlank");
|
|
14259
|
+
return true;
|
|
14260
|
+
}
|
|
14261
|
+
};
|
|
14262
|
+
const checkDigital = (rule, value, item) => {
|
|
14263
|
+
try {
|
|
14264
|
+
const { validate, is_null, decimal_length, alias, name } = item;
|
|
14265
|
+
const { min_value, max_value } = validate || {};
|
|
14266
|
+
let showName = alias || name;
|
|
14267
|
+
if (isNaN(+value)) {
|
|
14268
|
+
return new Error(`\u53EA\u80FD\u8F93\u5165\u6570\u5B57`);
|
|
14269
|
+
}
|
|
14270
|
+
if (is_null == 0 && !value && value != 0) {
|
|
14271
|
+
return new Error(`\u8BF7\u8F93\u5165${showName}\u6709\u6548\u8303\u56F4`);
|
|
14272
|
+
}
|
|
14273
|
+
if (!value && value !== 0) {
|
|
14274
|
+
if (is_null == 0) {
|
|
14275
|
+
return new Error(`\u8BF7\u8F93\u5165${showName}\u6709\u6548\u8303\u56F4`);
|
|
14276
|
+
}
|
|
14277
|
+
return true;
|
|
14278
|
+
}
|
|
14279
|
+
const decimalLen = decimal_length || validate.decimal_length;
|
|
14280
|
+
const valList = (value + "").trim().split(".");
|
|
14281
|
+
if (decimalLen && decimalLen != 0) {
|
|
14282
|
+
if (valList[1] && valList[1].length > decimalLen) {
|
|
14283
|
+
return new Error(`\u5C0F\u6570\u6700\u591A${decimalLen}\u4F4D`);
|
|
14284
|
+
}
|
|
14285
|
+
}
|
|
14286
|
+
else {
|
|
14287
|
+
const flag = /^-?[0-9]+$/.test(value);
|
|
14288
|
+
if (!flag) {
|
|
14289
|
+
return new Error(`\u8BF7\u8F93\u5165\u6574\u6570`);
|
|
14290
|
+
}
|
|
14291
|
+
}
|
|
14292
|
+
let max = +value > +max_value, min = +min_value > +value;
|
|
14293
|
+
if ((min_value || max_value) && (value || value == 0)) {
|
|
14294
|
+
if ((min_value || String(min_value) === "0") && max_value && (max || min)) {
|
|
14295
|
+
return new Error(`\u8BF7\u8F93\u5165${min_value}~${max_value}`);
|
|
14296
|
+
}
|
|
14297
|
+
else if (min_value && min || max_value && max) {
|
|
14298
|
+
return new Error(`\u8BF7\u8F93\u5165${showName}\u6709\u6548\u8303\u56F4`);
|
|
14299
|
+
}
|
|
14300
|
+
return true;
|
|
14301
|
+
}
|
|
14302
|
+
return true;
|
|
14303
|
+
}
|
|
14304
|
+
catch (error) {
|
|
14305
|
+
console.log(error, "------checkDigital");
|
|
14306
|
+
return true;
|
|
14307
|
+
}
|
|
14308
|
+
};
|
|
14309
|
+
const checkAgeJson = (rule, value, item) => {
|
|
14310
|
+
try {
|
|
14311
|
+
const { is_null, alias, name } = item;
|
|
14312
|
+
const { year, month, day, days } = value;
|
|
14313
|
+
const c = (val) => String(val) === "0" || val > 0;
|
|
14314
|
+
const checkval = () => !(c(year) || c(month) || c(day));
|
|
14315
|
+
if (is_null == 0) {
|
|
14316
|
+
if (checkval()) {
|
|
14317
|
+
return new Error(`\u8BF7\u8F93\u5165${alias || name}`);
|
|
14318
|
+
}
|
|
14319
|
+
else if (days > 73e3) {
|
|
14320
|
+
return new Error(`\u8D85\u51FA\u5E74\u9F84\u8303\u56F40~200\u5C81`);
|
|
14321
|
+
}
|
|
14322
|
+
}
|
|
14323
|
+
return true;
|
|
14324
|
+
}
|
|
14325
|
+
catch (error) {
|
|
14326
|
+
console.log(error, "------checkAgeJson");
|
|
14327
|
+
return true;
|
|
14328
|
+
}
|
|
14329
|
+
};
|
|
14330
|
+
const checkAge = (rule, value, item) => {
|
|
14331
|
+
try {
|
|
14332
|
+
let { is_null, name, alias } = item;
|
|
14333
|
+
if (!value && is_null == 0) {
|
|
14334
|
+
return new Error(`${alias || name}\u4E0D\u80FD\u4E3A\u7A7A`);
|
|
14335
|
+
}
|
|
14336
|
+
if (!item.val_key_unit) {
|
|
14337
|
+
return true;
|
|
14338
|
+
}
|
|
14339
|
+
const curVal = item?.useFormValue;
|
|
14340
|
+
let k = typeof curVal === "string" && curVal.toLowerCase();
|
|
14341
|
+
const o = {
|
|
14342
|
+
year: 200,
|
|
14343
|
+
month: 2400,
|
|
14344
|
+
day: 73e3
|
|
14345
|
+
};
|
|
14346
|
+
if (k) {
|
|
14347
|
+
if (value > o[k]) {
|
|
14348
|
+
return new Error(`\u8D85\u51FA\u5E74\u9F84\u8303\u56F40~200\u5C81`);
|
|
14349
|
+
}
|
|
14350
|
+
}
|
|
14351
|
+
return true;
|
|
14352
|
+
}
|
|
14353
|
+
catch (error) {
|
|
14354
|
+
console.log(error, "------checkAge");
|
|
14355
|
+
return true;
|
|
14356
|
+
}
|
|
14357
|
+
};
|
|
14358
|
+
const handleUploadValidator = (rule, value, item) => {
|
|
14359
|
+
try {
|
|
14360
|
+
let curval = value;
|
|
14361
|
+
const { is_null, name, validate, html_type } = item;
|
|
14362
|
+
let { min_length, max_length } = validate || {};
|
|
14363
|
+
let unit = html_type === "UPPICTURE" ? "\u5F20" : "\u4E2A";
|
|
14364
|
+
if (html_type === "UPPICTURE") {
|
|
14365
|
+
curval = curval.split(",").filter(Boolean);
|
|
14366
|
+
}
|
|
14367
|
+
else if (xeUtils.isJSON(value || "")) {
|
|
14368
|
+
curval = JSON.parse(curval);
|
|
14369
|
+
}
|
|
14370
|
+
let len = curval?.length || 0;
|
|
14371
|
+
if (is_null == 1 && len === 0) {
|
|
14372
|
+
return true;
|
|
14373
|
+
}
|
|
14374
|
+
else if (is_null == 0 && (!curval || len === 0)) {
|
|
14375
|
+
return new Error(`\u8BF7\u4E0A\u4F20${name}`);
|
|
14376
|
+
}
|
|
14377
|
+
else if (len > 0) {
|
|
14378
|
+
if (len < min_length) {
|
|
14379
|
+
return new Error(`\u6700\u5C11\u4E0A\u4F20${min_length}${unit}`);
|
|
14380
|
+
}
|
|
14381
|
+
else if (len > max_length) {
|
|
14382
|
+
return new Error(`\u6700\u591A\u53EA\u80FD\u4E0A\u4F20${max_length}${unit}`);
|
|
14383
|
+
}
|
|
14384
|
+
}
|
|
14385
|
+
return true;
|
|
14386
|
+
}
|
|
14387
|
+
catch (error) {
|
|
14388
|
+
console.log(error, "------handleUploadValidator");
|
|
14389
|
+
return true;
|
|
14390
|
+
}
|
|
14391
|
+
};
|
|
14392
|
+
const checkMultipleChoice = (rule, value, item) => {
|
|
14393
|
+
try {
|
|
14394
|
+
const { multi_select, multi_select_value, is_null, alias, name } = item;
|
|
14395
|
+
if (Array.isArray(value)) {
|
|
14396
|
+
if (is_null == 0) {
|
|
14397
|
+
if (value.length === 0) {
|
|
14398
|
+
return new Error(`\u8BF7\u9009\u62E9${alias || name}`);
|
|
14399
|
+
}
|
|
14400
|
+
}
|
|
14401
|
+
if (is_null == 1 && value.length === 0) {
|
|
14402
|
+
return true;
|
|
14403
|
+
}
|
|
14404
|
+
if (multi_select_value) {
|
|
14405
|
+
if (value.length > multi_select_value) {
|
|
14406
|
+
return new Error(`\u6700\u591A\u53EA\u80FD\u9009\u62E9${multi_select_value}\u9879`);
|
|
14407
|
+
}
|
|
14408
|
+
}
|
|
14409
|
+
}
|
|
14410
|
+
return true;
|
|
14411
|
+
}
|
|
14412
|
+
catch (error) {
|
|
14413
|
+
console.log(error, "------checkMultipleChoice");
|
|
14414
|
+
return true;
|
|
14415
|
+
}
|
|
14416
|
+
};
|
|
14417
|
+
const checkcandidate = (rule, value, item) => {
|
|
14418
|
+
try {
|
|
14419
|
+
let curval = value;
|
|
14420
|
+
const { is_null, name, validate, check_max_val, check_min_val } = item;
|
|
14421
|
+
if (is_null == 0 && !curval) {
|
|
14422
|
+
return new Error(`\u8BF7\u9009${name}`);
|
|
14423
|
+
}
|
|
14424
|
+
if (xeUtils.isJSON(value || "")) {
|
|
14425
|
+
curval = JSON.parse(curval);
|
|
14426
|
+
}
|
|
14427
|
+
if (is_null != 0 && !Array.isArray(curval)) {
|
|
14428
|
+
return true;
|
|
14429
|
+
}
|
|
14430
|
+
let len = curval?.length || 0;
|
|
14431
|
+
if (is_null == 1 && len === 0) {
|
|
14432
|
+
return true;
|
|
14433
|
+
}
|
|
14434
|
+
else if (is_null == 0 && (!curval || len === 0)) {
|
|
14435
|
+
return new Error(`\u8BF7\u9009${name}`);
|
|
14436
|
+
}
|
|
14437
|
+
else if (len > 0) {
|
|
14438
|
+
if (len < check_min_val) {
|
|
14439
|
+
return new Error(`\u81F3\u5C11\u8981\u9009${check_min_val}\u9879`);
|
|
14440
|
+
}
|
|
14441
|
+
else if (len > check_max_val) {
|
|
14442
|
+
return new Error(`\u6700\u591A\u53EF\u9009${check_max_val}\u9879`);
|
|
14443
|
+
}
|
|
14444
|
+
}
|
|
14445
|
+
return true;
|
|
14446
|
+
}
|
|
14447
|
+
catch (error) {
|
|
14448
|
+
console.log(error, "------checkcandidate");
|
|
14449
|
+
return true;
|
|
14450
|
+
}
|
|
14451
|
+
};
|
|
14452
|
+
const handleGetRules = (item) => {
|
|
14453
|
+
const initRules = [];
|
|
14454
|
+
const { validate = {}, is_null } = item;
|
|
14455
|
+
let { vali_obj } = validate;
|
|
14456
|
+
if (item.is_show == 0 && item.useType != "intercept") {
|
|
14457
|
+
return initRules;
|
|
14458
|
+
}
|
|
14459
|
+
if (item.lineBarCheck || item.is_hide_field) {
|
|
14460
|
+
return [];
|
|
14461
|
+
}
|
|
14462
|
+
switch (item.html_type) {
|
|
14463
|
+
case "INPUT":
|
|
14464
|
+
case "TEXTAREA":
|
|
14465
|
+
case "RICH_TEXT":
|
|
14466
|
+
initRules.push({
|
|
14467
|
+
required: item.is_null == 0,
|
|
14468
|
+
message: `\u8BF7\u8F93\u5165${item.name}`,
|
|
14469
|
+
trigger: "change"
|
|
14470
|
+
});
|
|
14471
|
+
if (vali_obj != "mobile") {
|
|
14472
|
+
initRules.push({
|
|
14473
|
+
validator: (rule, value) => checkLenght(rule, value, item),
|
|
14474
|
+
trigger: "change"
|
|
14475
|
+
});
|
|
14476
|
+
}
|
|
14477
|
+
if (["integer", "number"].includes(vali_obj)) {
|
|
14478
|
+
const rule = getInputCheck(vali_obj);
|
|
14479
|
+
rule && initRules.push(rule);
|
|
14480
|
+
}
|
|
14481
|
+
if (vali_obj == "id_card") {
|
|
14482
|
+
initRules.push({
|
|
14483
|
+
validator: (rule, value) => handlerSetIdCarInfoValidate(rule, value, item),
|
|
14484
|
+
trigger: "change"
|
|
14485
|
+
});
|
|
14486
|
+
}
|
|
14487
|
+
initRules.push({
|
|
14488
|
+
validator: (rule, value) => checkinputBlank(rule, value, item),
|
|
14489
|
+
trigger: "change"
|
|
14490
|
+
});
|
|
14491
|
+
break;
|
|
14492
|
+
case "DIGITAL":
|
|
14493
|
+
initRules.push({
|
|
14494
|
+
validator: (rule, value) => checkDigital(rule, value, item)
|
|
14495
|
+
});
|
|
14496
|
+
break;
|
|
14497
|
+
case "AGE_JSON":
|
|
14498
|
+
initRules.push({
|
|
14499
|
+
validator: (rule, value) => checkAgeJson(rule, value, item),
|
|
14500
|
+
trigger: "change"
|
|
14501
|
+
});
|
|
14502
|
+
break;
|
|
14503
|
+
case "AGE":
|
|
14504
|
+
initRules.push({
|
|
14505
|
+
validator: (rule, value) => checkAge(rule, value, item),
|
|
14506
|
+
trigger: "change"
|
|
14507
|
+
}, {
|
|
14508
|
+
required: item.is_null == 0,
|
|
14509
|
+
message: `\u8BF7\u8F93\u5165${item.name}`
|
|
14510
|
+
});
|
|
14511
|
+
break;
|
|
14512
|
+
case "UPPICTURE":
|
|
14513
|
+
case "UPFILE":
|
|
14514
|
+
case "VEDIO":
|
|
14515
|
+
initRules.push({
|
|
14516
|
+
validator: (rule, value) => handleUploadValidator(rule, value, item),
|
|
14517
|
+
trigger: "change"
|
|
14518
|
+
});
|
|
14519
|
+
break;
|
|
14520
|
+
case "CHECKBOX_BLOCK":
|
|
14521
|
+
case "CHECKBOX":
|
|
14522
|
+
case "SEARCH_MORE":
|
|
14523
|
+
initRules.push({
|
|
14524
|
+
required: item.is_null == 0,
|
|
14525
|
+
message: `\u8BF7\u9009\u62E9${item.name}`,
|
|
14526
|
+
trigger: "change"
|
|
14527
|
+
}, {
|
|
14528
|
+
validator: (rule, value) => checkMultipleChoice(rule, value, item),
|
|
14529
|
+
trigger: "change"
|
|
14530
|
+
});
|
|
14531
|
+
break;
|
|
14532
|
+
case "CANDIDATE_COMPONENTS":
|
|
14533
|
+
initRules.push({
|
|
14534
|
+
validator: (rule, value) => checkcandidate(rule, value, item),
|
|
14535
|
+
trigger: "change"
|
|
14536
|
+
});
|
|
14537
|
+
break;
|
|
14538
|
+
default:
|
|
14539
|
+
initRules.push({
|
|
14540
|
+
required: item.is_null == 0,
|
|
14541
|
+
message: `\u8BF7\u9009\u62E9${item.name}`,
|
|
14542
|
+
trigger: "change"
|
|
14543
|
+
});
|
|
14544
|
+
break;
|
|
14545
|
+
}
|
|
14546
|
+
if (validate && vali_obj == "mobile" && !validate.phone_idcard_type && is_null == 0) {
|
|
14547
|
+
initRules.push({
|
|
14548
|
+
pattern: /(^[0-9]{11,11}$)/,
|
|
14549
|
+
message: "\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u7535\u8BDD\u53F7\u7801",
|
|
14550
|
+
trigger: "change"
|
|
14551
|
+
});
|
|
14552
|
+
}
|
|
14553
|
+
if (initRules.length) {
|
|
14554
|
+
initRules[0].key = item.val_key;
|
|
14555
|
+
}
|
|
14556
|
+
return initRules;
|
|
14557
|
+
};
|
|
14558
|
+
return {
|
|
14559
|
+
handleGetRules
|
|
14560
|
+
};
|
|
14561
|
+
};
|
|
14562
|
+
|
|
14563
|
+
const requireComponent = import.meta.globEager("./edit.*?.(vue|ts)$/");
|
|
14564
|
+
let cmps = {};
|
|
14565
|
+
Object.values(requireComponent).forEach((cmp) => {
|
|
14566
|
+
cmps[cmp.name] = cmp;
|
|
14567
|
+
});
|
|
14568
|
+
console.log(cmps, "cmps");
|
|
14569
|
+
var registerCom = {
|
|
14570
|
+
data() {
|
|
14571
|
+
return {};
|
|
14572
|
+
},
|
|
14573
|
+
computed: {},
|
|
14574
|
+
methods: {},
|
|
14575
|
+
components: cmps
|
|
14576
|
+
};
|
|
14577
|
+
|
|
14578
|
+
const _hoisted_1$1 = { class: "editForm-page" };
|
|
14579
|
+
const __default__$1 = {
|
|
14580
|
+
name: "EditForm",
|
|
14581
|
+
mixins: [registerCom]
|
|
14582
|
+
};
|
|
14583
|
+
var script$1 = /* @__PURE__ */ defineComponent({
|
|
14584
|
+
...__default__$1,
|
|
14585
|
+
props: {
|
|
14586
|
+
defaultForm: { type: null, required: true },
|
|
14587
|
+
isPure: { type: Boolean, required: true },
|
|
14588
|
+
cacheUniqueKey: { type: null, required: false, default: {} },
|
|
14589
|
+
banRequest: { type: Boolean, required: false, default: false },
|
|
14590
|
+
propsDelSetting: { type: Boolean, required: false, default: false },
|
|
14591
|
+
propsFormBtn: { type: Boolean, required: false, default: false },
|
|
14592
|
+
parentConfig: { type: null, required: false, default: {} },
|
|
14593
|
+
configuration: { type: null, required: false, default: {} },
|
|
14594
|
+
isOpenShortcut: { type: Boolean, required: false, default: true },
|
|
14595
|
+
formPrimaryKey: { type: [Number, String], required: true },
|
|
14596
|
+
styleSetting: { type: null, required: false }
|
|
14597
|
+
},
|
|
14598
|
+
emits: ["banSubmit", "handleSubmit"],
|
|
14599
|
+
setup(__props, { expose, emit }) {
|
|
14600
|
+
const props = __props;
|
|
14601
|
+
window.$message = useMessage();
|
|
14602
|
+
const state = reactive({
|
|
14603
|
+
defaultValue: {},
|
|
14604
|
+
editForm: {
|
|
14605
|
+
formFieldList: []
|
|
14606
|
+
},
|
|
14607
|
+
editRules: {},
|
|
14608
|
+
formFieldList: [],
|
|
14609
|
+
theUniqueKeyListObj: {},
|
|
14610
|
+
formType: {},
|
|
14611
|
+
defaultFieldList: [],
|
|
14612
|
+
dbParams: {},
|
|
14613
|
+
searchObj: {},
|
|
14614
|
+
searchAddObj: {},
|
|
14615
|
+
multipleSelected: {},
|
|
14616
|
+
formFieldObj: {},
|
|
14617
|
+
selectedDefValueObj: {},
|
|
14618
|
+
fieldTypeList: []
|
|
14619
|
+
});
|
|
14620
|
+
const editForm = ref(null);
|
|
14621
|
+
const userInfo = computed(() => {
|
|
14622
|
+
const { userInfo: userInfo2 } = props.configuration || {};
|
|
14623
|
+
return userInfo2 || {};
|
|
14624
|
+
});
|
|
14625
|
+
computed(() => !props.isPure);
|
|
14626
|
+
const { RandomId, handleGetdef } = useFormCommon(props, state, userInfo.value);
|
|
14627
|
+
const { handleGetRules } = useValidateRules();
|
|
14628
|
+
provide("state", state);
|
|
14629
|
+
provide("userInfo", userInfo);
|
|
14630
|
+
const handleConvertData = (target) => {
|
|
14631
|
+
let transmitParams = {};
|
|
14632
|
+
let transmitKeys = Object.keys(target || {});
|
|
14633
|
+
if (transmitKeys && transmitKeys.length) {
|
|
14634
|
+
transmitKeys.forEach((v) => {
|
|
14635
|
+
if (typeof target[v] == "object") {
|
|
14636
|
+
transmitParams[v] = JSON.stringify(target[v]);
|
|
14637
|
+
}
|
|
14638
|
+
else {
|
|
14639
|
+
transmitParams[v] = target[v];
|
|
14640
|
+
}
|
|
14641
|
+
if (xeUtils.isString(target[v])) {
|
|
14642
|
+
if (target[v] && target[v].includes("###{")) {
|
|
14643
|
+
let temp = JSON.parse(target[v].replace("###", ""));
|
|
14644
|
+
transmitParams[v] = temp.value;
|
|
14645
|
+
}
|
|
14646
|
+
}
|
|
14647
|
+
});
|
|
14648
|
+
}
|
|
14649
|
+
return transmitParams;
|
|
14650
|
+
};
|
|
14651
|
+
const handleGetformType = (list) => {
|
|
14652
|
+
state.theUniqueKeyListObj = {};
|
|
14653
|
+
let myformType = {};
|
|
14654
|
+
let mySearchObj = {};
|
|
14655
|
+
let searchAddObj = {};
|
|
14656
|
+
state.formType = null;
|
|
14657
|
+
let fieldObj = /* @__PURE__ */ Object.create(null);
|
|
14658
|
+
let defaList = Object.keys(state.defaultValue);
|
|
14659
|
+
list?.forEach((item) => {
|
|
14660
|
+
myformType[item.val_key] = item;
|
|
14661
|
+
let curKey = `${item.val_key}_${item.name}`;
|
|
14662
|
+
item.wordbook && (item?.wordbook?.type || "") != "WORDBOOK";
|
|
14663
|
+
item.selectOptions = [];
|
|
14664
|
+
item.popoverVisible = false;
|
|
14665
|
+
item.otherval = "";
|
|
14666
|
+
item.otherFlag = false;
|
|
14667
|
+
if (item.html_type == "SEARCH") {
|
|
14668
|
+
mySearchObj[curKey] = [];
|
|
14669
|
+
searchAddObj[curKey] = false;
|
|
14670
|
+
if (defaList.includes(item.name)) {
|
|
14671
|
+
mySearchObj[curKey] = [
|
|
14672
|
+
{
|
|
14673
|
+
[item.wordbook.value_key]: state.defaultValue[item.name]
|
|
14674
|
+
}
|
|
14675
|
+
];
|
|
14676
|
+
}
|
|
14677
|
+
}
|
|
14678
|
+
else if (item.html_type == "SEARCH_MORE") {
|
|
14679
|
+
mySearchObj[curKey] = [];
|
|
14680
|
+
searchAddObj[curKey] = false;
|
|
14681
|
+
if (!state.multipleSelected[curKey]) {
|
|
14682
|
+
state.multipleSelected[curKey] = [];
|
|
14683
|
+
}
|
|
14684
|
+
}
|
|
14685
|
+
else {
|
|
14686
|
+
state.defaultValue[item.name] || item.default_val;
|
|
14687
|
+
}
|
|
14688
|
+
if (item.val_key) {
|
|
14689
|
+
fieldObj[item.val_key] = {
|
|
14690
|
+
...item
|
|
14691
|
+
};
|
|
14692
|
+
}
|
|
14693
|
+
});
|
|
14694
|
+
state.formType = myformType;
|
|
14695
|
+
state.searchObj = mySearchObj;
|
|
14696
|
+
state.searchAddObj = searchAddObj;
|
|
14697
|
+
state.formFieldObj = fieldObj;
|
|
14698
|
+
};
|
|
14699
|
+
const getSelecteddefValueObj = () => {
|
|
14700
|
+
let obj = {
|
|
14701
|
+
multipleSelected: {
|
|
14702
|
+
...state.multipleSelected
|
|
14703
|
+
}
|
|
14704
|
+
};
|
|
14705
|
+
state.selectedDefValueObj = obj;
|
|
14706
|
+
};
|
|
14707
|
+
const hanlderInitFieldList = (fieldList = []) => {
|
|
14708
|
+
if (!fieldList.length)
|
|
14709
|
+
return;
|
|
14710
|
+
handleGetformType(fieldList);
|
|
14711
|
+
getSelecteddefValueObj();
|
|
14712
|
+
let fieldTypeList = [];
|
|
14713
|
+
for (let index = 0; index < fieldList.length; index++) {
|
|
14714
|
+
const element = fieldList[index];
|
|
14715
|
+
element.isPure = props.isPure;
|
|
14716
|
+
let randomId = RandomId();
|
|
14717
|
+
let com_name = configData.getComName(element);
|
|
14718
|
+
element["com_name"] = com_name;
|
|
14719
|
+
element["RandomId"] = randomId;
|
|
14720
|
+
let useFormValue = handleGetdef(element);
|
|
14721
|
+
element["useFormValue"] = useFormValue;
|
|
14722
|
+
element["isVisible"] = false;
|
|
14723
|
+
let mid_is_edit = [0, 1, "0", "1"].includes(element.mid_is_edit) ? element.mid_is_edit : element.is_edit;
|
|
14724
|
+
element.is_edit = mid_is_edit;
|
|
14725
|
+
if (element.html_type.includes("CHECKBOX")) {
|
|
14726
|
+
element["indeterminate"] = false;
|
|
14727
|
+
element["checkAll"] = false;
|
|
14728
|
+
}
|
|
14729
|
+
if (element.html_type.includes("CHECKBOX") || element.html_type.includes("RADIO")) {
|
|
14730
|
+
let imgFlag = element?.option?.some((v) => v.imageBase64);
|
|
14731
|
+
element.is_contain_images = imgFlag ? 1 : 0;
|
|
14732
|
+
}
|
|
14733
|
+
fieldTypeList.push({
|
|
14734
|
+
columnName: element.val_key,
|
|
14735
|
+
fieldType: "TEXT"
|
|
14736
|
+
});
|
|
14737
|
+
element["isShowComponent"] = true;
|
|
14738
|
+
}
|
|
14739
|
+
state.defaultFieldList = fieldList;
|
|
14740
|
+
state.fieldTypeList = fieldTypeList;
|
|
14741
|
+
state.editForm.formFieldList = fieldList;
|
|
14742
|
+
};
|
|
14743
|
+
const initForm = (m = {}) => {
|
|
14744
|
+
let { defaultCombinationForm = {}, fieldList = [] } = m;
|
|
14745
|
+
let tempForm = {};
|
|
14746
|
+
if (Object.keys(defaultCombinationForm).length) {
|
|
14747
|
+
tempForm = { ...defaultCombinationForm };
|
|
14748
|
+
}
|
|
14749
|
+
let transmitParams = handleConvertData(tempForm);
|
|
14750
|
+
state.defaultValue = { ...transmitParams };
|
|
14751
|
+
hanlderInitFieldList(fieldList);
|
|
14752
|
+
};
|
|
14753
|
+
const getValueChange = (v, i) => {
|
|
14754
|
+
let cacheKey = `${i.val_key}_${i.name}`;
|
|
14755
|
+
if (i.html_type == "SEARCH_MORE") {
|
|
14756
|
+
state.multipleSelected[cacheKey] = [...v];
|
|
14757
|
+
}
|
|
14758
|
+
getSelecteddefValueObj();
|
|
14759
|
+
};
|
|
14760
|
+
const getObjs = (str) => {
|
|
14761
|
+
let resObj = null;
|
|
14762
|
+
if (xeUtils.isJSON(str)) {
|
|
14763
|
+
resObj = JSON.parse(str);
|
|
14764
|
+
if (resObj.type === "jsonb") {
|
|
14765
|
+
resObj = resObj.value;
|
|
14766
|
+
if (resObj.includes("jsonb")) {
|
|
14767
|
+
resObj = getObjs(resObj);
|
|
14768
|
+
}
|
|
14769
|
+
return resObj;
|
|
14770
|
+
}
|
|
14771
|
+
else {
|
|
14772
|
+
return str;
|
|
14773
|
+
}
|
|
14774
|
+
}
|
|
14775
|
+
else {
|
|
14776
|
+
return str;
|
|
14777
|
+
}
|
|
14778
|
+
};
|
|
14779
|
+
const handleGetSearMoreSubmit = (item, formdata) => {
|
|
14780
|
+
const { formType, multipleSelected } = state;
|
|
14781
|
+
const curItem = formType[item];
|
|
14782
|
+
const defaultVal = JSON.stringify({ objs: [], objStr: "" });
|
|
14783
|
+
let valueList = [];
|
|
14784
|
+
let showList = [];
|
|
14785
|
+
let keyName = `${curItem.val_key}_${curItem.name}`;
|
|
14786
|
+
if (!curItem.wordbook)
|
|
14787
|
+
return defaultVal;
|
|
14788
|
+
let value_key = curItem.wordbook.value_key;
|
|
14789
|
+
let render_key = curItem.wordbook.render_key || [];
|
|
14790
|
+
let defVal = state.defaultValue[curItem.name] || curItem.default_val;
|
|
14791
|
+
if (curItem.isOnchange !== "00" && defVal) {
|
|
14792
|
+
defVal = curItem.filtration_val || handleSysParams(defVal, { defaultValue: state.defaultValue, userInfo: userInfo.value, dbParams: state.dbParams });
|
|
14793
|
+
defVal = getObjs(defVal);
|
|
14794
|
+
return defVal || defaultVal;
|
|
14795
|
+
}
|
|
14796
|
+
const targetList = JSON.parse(JSON.stringify(multipleSelected[keyName] || []));
|
|
14797
|
+
if (Array.isArray(formdata[item]) && formdata[item].length) {
|
|
14798
|
+
formdata[item].forEach((ele) => {
|
|
14799
|
+
targetList.forEach((v) => {
|
|
14800
|
+
let [curValue_key] = typeof ele.key === "string" ? ele.key.split("-") : [""];
|
|
14801
|
+
if (`${v[value_key]}-${v["myUniqueKey"]}` == ele.key || curValue_key == v[value_key]) {
|
|
14802
|
+
delete v.setting;
|
|
14803
|
+
delete v.showLabel;
|
|
14804
|
+
if (v["myUniqueKey"] && v.myUniqueLabel) {
|
|
14805
|
+
var item2 = {
|
|
14806
|
+
[v.myUniqueLabel]: v["myUniqueKey"],
|
|
14807
|
+
[value_key]: v[value_key]
|
|
14808
|
+
};
|
|
14809
|
+
render_key.forEach((k) => {
|
|
14810
|
+
item2[k] = v[k];
|
|
14811
|
+
});
|
|
14812
|
+
valueList.push(item2);
|
|
14813
|
+
}
|
|
14814
|
+
else {
|
|
14815
|
+
let { myUniqueKey, myUniqueLabel, ...rest } = v;
|
|
14816
|
+
valueList.push(rest);
|
|
14817
|
+
}
|
|
14818
|
+
showList.push(v[value_key]);
|
|
14819
|
+
}
|
|
14820
|
+
});
|
|
14821
|
+
});
|
|
14822
|
+
}
|
|
14823
|
+
return JSON.stringify({
|
|
14824
|
+
objs: valueList,
|
|
14825
|
+
objStr: showList.join(",")
|
|
14826
|
+
});
|
|
14827
|
+
};
|
|
14828
|
+
const handleFormatSubmit = (copy) => {
|
|
14829
|
+
let formdata = xeUtils.clone(copy, true);
|
|
14830
|
+
Object.keys(formdata).forEach((item) => {
|
|
14831
|
+
switch (state.formType[item]?.html_type) {
|
|
14832
|
+
case "INPUT":
|
|
14833
|
+
case "TEXTAREA":
|
|
14834
|
+
if (state.formType[item]?.delete_before_after_spaces == 1) {
|
|
14835
|
+
formdata[item] = xeUtils.handleClearStrBlank(formdata[item]);
|
|
14836
|
+
}
|
|
14837
|
+
break;
|
|
14838
|
+
case "DIGITAL":
|
|
14839
|
+
case "SELECT":
|
|
14840
|
+
case "RADIO":
|
|
14841
|
+
case "RADIO_BLOCK":
|
|
14842
|
+
break;
|
|
14843
|
+
case "SEARCH":
|
|
14844
|
+
formdata[item] = typeof formdata[item] === "string" ? formdata[item].split(">>>")[0] : formdata[item] && formdata[item].label && formdata[item].label.trim();
|
|
14845
|
+
break;
|
|
14846
|
+
case "SEARCH_MORE":
|
|
14847
|
+
formdata[item] = handleGetSearMoreSubmit(item, formdata);
|
|
14848
|
+
break;
|
|
14849
|
+
case "CHECKBOX":
|
|
14850
|
+
case "CHECKBOX_BLOCK":
|
|
14851
|
+
formdata[item] = Array.isArray(formdata[item]) ? formdata[item].join(",") : formdata[item];
|
|
14852
|
+
break;
|
|
14853
|
+
case "DATETIME-INPUT":
|
|
14854
|
+
case "DATE-INPUT":
|
|
14855
|
+
case "TIME-INPUT":
|
|
14856
|
+
case "DATE":
|
|
14857
|
+
if (typeof formdata[item] == "string") {
|
|
14858
|
+
formdata[item] = formdata[item] || null;
|
|
14859
|
+
}
|
|
14860
|
+
else {
|
|
14861
|
+
formdata[item] = formdata[item] ? formdata[item].format(handlerGetDateType(state.formType[item])) : null;
|
|
14862
|
+
}
|
|
14863
|
+
break;
|
|
14864
|
+
}
|
|
14865
|
+
});
|
|
14866
|
+
return formdata;
|
|
14867
|
+
};
|
|
14868
|
+
const handleSubmitForm = () => {
|
|
14869
|
+
editForm.value?.validate((errors) => {
|
|
14870
|
+
if (errors) {
|
|
14871
|
+
emit("banSubmit", {
|
|
14872
|
+
rowKey: props.formPrimaryKey
|
|
14873
|
+
});
|
|
14874
|
+
let message = errors[0].message || "";
|
|
14875
|
+
message && window.$message.error(message);
|
|
14876
|
+
}
|
|
14877
|
+
else {
|
|
14878
|
+
let submData = {};
|
|
14879
|
+
state.editForm.formFieldList.forEach((item) => {
|
|
14880
|
+
submData[item.val_key] = item.useFormValue;
|
|
14881
|
+
});
|
|
14882
|
+
submData = handleFormatSubmit(submData);
|
|
14883
|
+
if (submData) {
|
|
14884
|
+
submData = JSON.parse(JSON.stringify(submData));
|
|
14885
|
+
}
|
|
14886
|
+
let formObj = {
|
|
14887
|
+
rowKey: props.formPrimaryKey,
|
|
14888
|
+
formData: submData
|
|
14889
|
+
};
|
|
14890
|
+
emit("handleSubmit", formObj);
|
|
14891
|
+
}
|
|
14892
|
+
});
|
|
14893
|
+
};
|
|
14894
|
+
watch(() => props.defaultForm, (val) => {
|
|
14895
|
+
if (!val || !Object.keys(val).length)
|
|
14896
|
+
return;
|
|
14897
|
+
let tempVal = JSON.parse(JSON.stringify(val));
|
|
14898
|
+
initForm(tempVal);
|
|
14899
|
+
}, { deep: true, immediate: true });
|
|
14900
|
+
expose({
|
|
14901
|
+
handleSubmitForm
|
|
14902
|
+
});
|
|
14903
|
+
return (_ctx, _cache) => {
|
|
14904
|
+
return openBlock(), createElementBlock("div", _hoisted_1$1, [
|
|
14905
|
+
createVNode(unref(NForm), {
|
|
14906
|
+
ref_key: "editForm",
|
|
14907
|
+
ref: editForm,
|
|
14908
|
+
model: unref(state).editForm,
|
|
14909
|
+
rules: unref(state).editRules
|
|
14910
|
+
}, {
|
|
14911
|
+
default: withCtx(() => [
|
|
14912
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(state).editForm.formFieldList, (item, index) => {
|
|
14913
|
+
return openBlock(), createBlock(unref(NFormItem), {
|
|
14914
|
+
key: index,
|
|
14915
|
+
label: "",
|
|
14916
|
+
path: `formFieldList.${index}.useFormValue`,
|
|
14917
|
+
rule: unref(handleGetRules)(item),
|
|
14918
|
+
class: normalizeClass("editeForm-item-" + item.html_type)
|
|
14919
|
+
}, {
|
|
14920
|
+
default: withCtx(() => [
|
|
14921
|
+
item.isShowComponent ? (openBlock(), createBlock(resolveDynamicComponent(item.com_name), mergeProps({
|
|
14922
|
+
key: 0,
|
|
14923
|
+
key: item.RandomId,
|
|
14924
|
+
class: item.html_type,
|
|
14925
|
+
ref_for: true,
|
|
14926
|
+
ref: item.html_type + item.val_key,
|
|
14927
|
+
item,
|
|
14928
|
+
defaultValue: unref(state).defaultValue
|
|
14929
|
+
}, _ctx.$attrs, {
|
|
14930
|
+
form: editForm.value,
|
|
14931
|
+
onValueOnChange: getValueChange
|
|
14932
|
+
}), null, 16, ["class", "item", "defaultValue", "form"])) : createCommentVNode("v-if", true)
|
|
14933
|
+
]),
|
|
14934
|
+
_: 2
|
|
14935
|
+
}, 1032, ["path", "rule", "class"]);
|
|
14936
|
+
}), 128))
|
|
14937
|
+
]),
|
|
14938
|
+
_: 1
|
|
14939
|
+
}, 8, ["model", "rules"])
|
|
14940
|
+
]);
|
|
14941
|
+
};
|
|
14942
|
+
}
|
|
14943
|
+
});
|
|
14944
|
+
|
|
14945
|
+
script$1.__scopeId = "data-v-0e238fc2";
|
|
14946
|
+
script$1.__file = "packages/big-table/src/components/edit-form/EditForm.vue";
|
|
13640
14947
|
|
|
13641
14948
|
var iconPrefix = 'vxe-icon--';
|
|
13642
14949
|
var GlobalConfig = {
|
|
@@ -38786,9 +40093,8 @@ var Grid = defineComponent(create({
|
|
|
38786
40093
|
setup(props, { attrs, slots }) {
|
|
38787
40094
|
const renderVN = () => /* @__PURE__ */ vueJsxCompat(Grid$1, {
|
|
38788
40095
|
ref: "xGrid",
|
|
38789
|
-
...attrs
|
|
38790
|
-
|
|
38791
|
-
});
|
|
40096
|
+
...attrs
|
|
40097
|
+
}, slots);
|
|
38792
40098
|
return {
|
|
38793
40099
|
...useMethods(),
|
|
38794
40100
|
renderVN
|
|
@@ -39677,13 +40983,12 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
39677
40983
|
slots: {
|
|
39678
40984
|
header: () => {
|
|
39679
40985
|
return [
|
|
39680
|
-
tableNoSetting.value ? null : /* @__PURE__ */ vueJsxCompat(
|
|
39681
|
-
onClick: () => showDrawer()
|
|
39682
|
-
}, /* @__PURE__ */ vueJsxCompat(NIcon, {
|
|
40986
|
+
tableNoSetting.value ? null : /* @__PURE__ */ vueJsxCompat(NIcon, {
|
|
39683
40987
|
size: "14",
|
|
39684
40988
|
color: "#0e7a0d",
|
|
39685
|
-
component: SettingsSharp
|
|
39686
|
-
|
|
40989
|
+
component: SettingsSharp,
|
|
40990
|
+
onClick: () => showDrawer()
|
|
40991
|
+
})
|
|
39687
40992
|
];
|
|
39688
40993
|
}
|
|
39689
40994
|
}
|
|
@@ -39772,6 +41077,14 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
39772
41077
|
let dynamicProps = initBatchDynamicProps(formUnionItem, row, column, $rowIndex);
|
|
39773
41078
|
if (dynamicProps) {
|
|
39774
41079
|
emit("setWaitEditKeys", column.property);
|
|
41080
|
+
return [
|
|
41081
|
+
/* @__PURE__ */ vueJsxCompat(script$1, {
|
|
41082
|
+
class: `js-inlineEditForm`,
|
|
41083
|
+
key: row[props.primaryKey] + $rowIndex + column.property,
|
|
41084
|
+
"data-key": row[props.primaryKey] + $rowIndex + column.property,
|
|
41085
|
+
...dynamicProps
|
|
41086
|
+
})
|
|
41087
|
+
];
|
|
39775
41088
|
}
|
|
39776
41089
|
}
|
|
39777
41090
|
if (xeUtils.has(row, GROUP_TITLE_KEY)) {
|
|
@@ -39805,13 +41118,11 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
39805
41118
|
return getageShowType(row, own);
|
|
39806
41119
|
}
|
|
39807
41120
|
if (attrType === "COUNTDOWN") {
|
|
39808
|
-
return /* @__PURE__ */ vueJsxCompat(NTooltip, {
|
|
39809
|
-
"
|
|
39810
|
-
|
|
39811
|
-
|
|
39812
|
-
|
|
39813
|
-
default: () => row[own.columnName + "_countdownTip"]
|
|
39814
|
-
}
|
|
41121
|
+
return /* @__PURE__ */ vueJsxCompat(NTooltip, null, {
|
|
41122
|
+
trigger: () => /* @__PURE__ */ vueJsxCompat("span", {
|
|
41123
|
+
innerHTML: row[own.columnName + "_countdown"] || ""
|
|
41124
|
+
}),
|
|
41125
|
+
default: () => row[own.columnName + "_countdownTip"]
|
|
39815
41126
|
});
|
|
39816
41127
|
}
|
|
39817
41128
|
if (attrType === "DURATION") {
|
|
@@ -39881,8 +41192,9 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
39881
41192
|
{ checked: field.CONVERT?.length }
|
|
39882
41193
|
],
|
|
39883
41194
|
onClick: (event) => showFilter(field, item.columnName, event, props, state)
|
|
39884
|
-
}), field.visible ? /* @__PURE__ */ vueJsxCompat("
|
|
39885
|
-
|
|
41195
|
+
}), field.visible ? /* @__PURE__ */ vueJsxCompat("teleport", {
|
|
41196
|
+
to: props.filterDomPortal
|
|
41197
|
+
}, /* @__PURE__ */ vueJsxCompat("div", {
|
|
39886
41198
|
class: "big-table-filter-wrap",
|
|
39887
41199
|
style: {
|
|
39888
41200
|
left: field.left,
|
|
@@ -39982,7 +41294,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
39982
41294
|
onClick: () => handleFilter(field)
|
|
39983
41295
|
}, "\u786E\u5B9A"))), /* @__PURE__ */ vueJsxCompat("div", {
|
|
39984
41296
|
class: "arrows-icon"
|
|
39985
|
-
})) : "")
|
|
41297
|
+
}))) : "")
|
|
39986
41298
|
];
|
|
39987
41299
|
};
|
|
39988
41300
|
};
|
|
@@ -40085,20 +41397,20 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40085
41397
|
isAlias = !!tooltipTitle;
|
|
40086
41398
|
}
|
|
40087
41399
|
if (type === "format")
|
|
40088
|
-
return /* @__PURE__ */ vueJsxCompat(script$
|
|
41400
|
+
return /* @__PURE__ */ vueJsxCompat(script$3, {
|
|
40089
41401
|
tooltipTitle,
|
|
40090
41402
|
content: name,
|
|
40091
41403
|
isAlias
|
|
40092
41404
|
});
|
|
40093
41405
|
return () => {
|
|
40094
41406
|
return [
|
|
40095
|
-
/* @__PURE__ */ vueJsxCompat(script$
|
|
41407
|
+
/* @__PURE__ */ vueJsxCompat(script$3, {
|
|
40096
41408
|
tooltipTitle,
|
|
40097
41409
|
content: name,
|
|
40098
41410
|
isAlias
|
|
40099
41411
|
}, item.treeNode && state.isTree == 1 ? /* @__PURE__ */ vueJsxCompat(NIcon, {
|
|
40100
41412
|
component: state.isExpand && state.total < 1001 ? CaretDown : CaretForward,
|
|
40101
|
-
|
|
41413
|
+
onClick: (e) => triggerExpand(e, state.isExpand)
|
|
40102
41414
|
}) : "")
|
|
40103
41415
|
];
|
|
40104
41416
|
};
|
|
@@ -40613,14 +41925,13 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40613
41925
|
};
|
|
40614
41926
|
const scanMultiOperate = (params) => {
|
|
40615
41927
|
return /* @__PURE__ */ vueJsxCompat(NPopconfirm, {
|
|
40616
|
-
|
|
40617
|
-
|
|
40618
|
-
|
|
40619
|
-
|
|
40620
|
-
|
|
40621
|
-
|
|
40622
|
-
|
|
40623
|
-
"on-positive-click": () => confirmScanMulti(params)
|
|
41928
|
+
onPositiveClick: () => confirmScanMulti(params)
|
|
41929
|
+
}, {
|
|
41930
|
+
trigger: () => /* @__PURE__ */ vueJsxCompat(script$2, {
|
|
41931
|
+
class: "scan-multi-delete",
|
|
41932
|
+
iconClass: "shanchu"
|
|
41933
|
+
}),
|
|
41934
|
+
default: () => "\u662F\u5426\u786E\u8BA4\u5220\u9664\uFF1F"
|
|
40624
41935
|
});
|
|
40625
41936
|
};
|
|
40626
41937
|
const showEditForm = (row, column, $rowIndex) => {
|
|
@@ -40738,7 +42049,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40738
42049
|
key: i,
|
|
40739
42050
|
src: handleImgSrc(v, props.sysImageSize, "LIST_FIELD_SMALL"),
|
|
40740
42051
|
style: modalDetailImage(props.sysImageSize, "LIST_FIELD_SMALL", "36px"),
|
|
40741
|
-
|
|
42052
|
+
onClick: (e) => handlePreView(row[item.columnName], i, e)
|
|
40742
42053
|
})))
|
|
40743
42054
|
];
|
|
40744
42055
|
};
|
|
@@ -40829,11 +42140,11 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40829
42140
|
return [
|
|
40830
42141
|
/* @__PURE__ */ vueJsxCompat("span", {
|
|
40831
42142
|
class: "bigTable-qr-span",
|
|
40832
|
-
|
|
42143
|
+
onClick: (e) => qrCodeEvent(e, row, item)
|
|
40833
42144
|
}, /* @__PURE__ */ vueJsxCompat("img", {
|
|
40834
42145
|
class: "bigTable-qr-img",
|
|
40835
42146
|
src
|
|
40836
|
-
}), /* @__PURE__ */ vueJsxCompat("span", null, /* @__PURE__ */ vueJsxCompat(
|
|
42147
|
+
}), /* @__PURE__ */ vueJsxCompat("span", null, /* @__PURE__ */ vueJsxCompat(script$2, {
|
|
40837
42148
|
iconClass: "fangda"
|
|
40838
42149
|
})))
|
|
40839
42150
|
];
|
|
@@ -40855,7 +42166,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40855
42166
|
return [
|
|
40856
42167
|
/* @__PURE__ */ vueJsxCompat("span", null, /* @__PURE__ */ vueJsxCompat(NButton, {
|
|
40857
42168
|
style: { display: row.__isInlineEditing ? "inline-block" : "none" },
|
|
40858
|
-
|
|
42169
|
+
onClick: (e) => {
|
|
40859
42170
|
e.stopPropagation();
|
|
40860
42171
|
emit("SET_SAVE_ROW_STATUS", true);
|
|
40861
42172
|
},
|
|
@@ -40864,7 +42175,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40864
42175
|
text: true
|
|
40865
42176
|
}, "\u4FDD\u5B58"), /* @__PURE__ */ vueJsxCompat(NButton, {
|
|
40866
42177
|
style: { display: row.__isInlineEditing ? "inline-block" : "none" },
|
|
40867
|
-
|
|
42178
|
+
onClick: (e) => {
|
|
40868
42179
|
e.stopPropagation();
|
|
40869
42180
|
emit("SET_CANCEL_ROW_STATUS", true);
|
|
40870
42181
|
},
|
|
@@ -40879,7 +42190,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40879
42190
|
row.tileBtnList?.length && row.tileBtnList.map((btn, j) => {
|
|
40880
42191
|
return btn.isShow == "1" && btn.type != "LINK" && /* @__PURE__ */ vueJsxCompat(NButton, {
|
|
40881
42192
|
key: btn.sid,
|
|
40882
|
-
|
|
42193
|
+
onClick: (e) => clickBtn(row, btn, index, e, j),
|
|
40883
42194
|
class: "btn-custom-class row-btn",
|
|
40884
42195
|
style: {
|
|
40885
42196
|
...getBtnStyle(btn),
|
|
@@ -40911,19 +42222,17 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40911
42222
|
});
|
|
40912
42223
|
}
|
|
40913
42224
|
else {
|
|
40914
|
-
icon = /* @__PURE__ */ vueJsxCompat(NTooltip, {
|
|
40915
|
-
|
|
40916
|
-
|
|
40917
|
-
|
|
40918
|
-
|
|
40919
|
-
|
|
40920
|
-
default: () => handleName(btn)
|
|
40921
|
-
}
|
|
42225
|
+
icon = /* @__PURE__ */ vueJsxCompat(NTooltip, null, {
|
|
42226
|
+
trigger: () => /* @__PURE__ */ vueJsxCompat(script$2, {
|
|
42227
|
+
iconClass: btn.icon,
|
|
42228
|
+
style: { marginRight: mr }
|
|
42229
|
+
}),
|
|
42230
|
+
default: () => handleName(btn)
|
|
40922
42231
|
});
|
|
40923
42232
|
}
|
|
40924
42233
|
}
|
|
40925
42234
|
else if (btn.iconSetting) {
|
|
40926
|
-
icon = /* @__PURE__ */ vueJsxCompat(
|
|
42235
|
+
icon = /* @__PURE__ */ vueJsxCompat(script$2, {
|
|
40927
42236
|
iconClass: JSON.parse(btn.iconSetting).icon,
|
|
40928
42237
|
style: {
|
|
40929
42238
|
marginRight: mr
|
|
@@ -40996,7 +42305,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
40996
42305
|
trigger: () => content
|
|
40997
42306
|
}, /* @__PURE__ */ vueJsxCompat(NIcon, {
|
|
40998
42307
|
component: CopyOutline,
|
|
40999
|
-
|
|
42308
|
+
onClick: (e) => hanldeCopyContent(e, row[item.columnName])
|
|
41000
42309
|
}))
|
|
41001
42310
|
];
|
|
41002
42311
|
}
|
|
@@ -41398,7 +42707,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
41398
42707
|
}, {
|
|
41399
42708
|
empty: withCtx(() => [
|
|
41400
42709
|
unref(state).isShowEmpty ? (openBlock(), createElementBlock("div", _hoisted_9, [
|
|
41401
|
-
createVNode(script$
|
|
42710
|
+
createVNode(script$4, {
|
|
41402
42711
|
"no-data-img": props.emptyItems.noDataImg,
|
|
41403
42712
|
"no-data-tip": props.emptyItems.noDataTip,
|
|
41404
42713
|
"show-img": !props.isNestTable
|