Browse Source

修改BUG

qin_v9
hreenshan112 12 months ago
parent
commit
2590bfbbb3
  1. 1901
      src/components/DesignForm/app/formPage.vue
  2. 36
      src/components/DesignForm/formControlPropertiNew.vue
  3. 50
      src/components/DesignForm/public/expand/treeSelect.vue
  4. 3904
      src/components/DesignForm/public/form/form.vue
  5. 25
      src/components/DesignForm/public/form/formItem.vue

1901
src/components/DesignForm/app/formPage.vue

File diff suppressed because it is too large

36
src/components/DesignForm/formControlPropertiNew.vue

@ -1364,6 +1364,7 @@ const delSelectOption = (index: number, type?: string) => {
};
//
const addSelectOption = (type: any) => {
// console.log("", controlData.value.type);
if (controlData.value.type === "cascader") {
//
openAttrDialog("cascader", "级联选择器");
@ -1377,14 +1378,43 @@ const addSelectOption = (type: any) => {
});
} else {
let maxVal = 1;
// console.log("-------1---->", maxVal, controlData.value.options);
if (controlData.value.options && controlData.value.options.length > 0) {
let optMax = 1;
controlData.value.options.forEach((item: any) => {
if (item.value >= maxVal) {
maxVal = item.value;
if (item.value * 1 >= optMax) {
optMax = item.value;
}
});
maxVal = maxVal * 1 + 1;
// console.log("-------4---->", maxVal, optMax);
if (maxVal < optMax) {
maxVal = optMax * 1 + 1;
} else {
maxVal = maxVal * 1 + 1;
}
// let isTrue = true;
// controlData.value.options.forEach((item: any) => {
// console.log("-------4---->", maxVal, item.value);
// if (item.value == maxVal) {
// maxVal = item.value;
// isTrue = false;
// }
// });
// if (isTrue) {
// maxVal = maxVal * 1 + 1;
// }
}
// console.log(
// "-------3---->",
// maxVal,
// controlData.value.options.length
// );
controlData.value.options.push({
label: "",
value: maxVal.toString(),

50
src/components/DesignForm/public/expand/treeSelect.vue

@ -0,0 +1,50 @@
<!--
@ 作者: 秦东
@ 时间: 2024-12-03 14:29:45
@ 备注: 树型组件
-->
<script lang="ts" setup>
import { stringToObj } from "@/utils/DesignForm/form";
const props = withDefaults(
defineProps<{
modelValue?: string;
disabled?: boolean;
action?: string;
name?: string;
fileList?: Object;
control?: Object;
config?: Object;
data?: Object;
options?: Object;
}>(),
{}
);
const emits = defineEmits<{
(e: "update:modelValue", value: string): void;
}>();
const value = computed({
get: () => {
console.log("图片上传处理-112->", props.modelValue, stringToObj(props.modelValue));
return stringToObj(props.modelValue);
},
set: (newVal: any) => {
emits("update:modelValue", newVal);
return newVal;
},
});
const handleChange = () => {};
const cascaderProps = {
label: "label",
value: "value",
children: "children",
};
</script>
<template>
<el-tree-select
v-model="value"
:data="props.data"
clearable
:render-after-expand="false"
/>
</template>
<style lang="scss" scoped></style>

3904
src/components/DesignForm/public/form/form.vue

File diff suppressed because it is too large

25
src/components/DesignForm/public/form/formItem.vue

@ -34,6 +34,7 @@ import OrgCitys from "@/components/DesignForm/public/expand/orgCitys.vue";
import DatePickerPage from "@/components/DesignForm/public/expand/datePicker.vue";
import CascaderPage from "@/components/DesignForm/public/expand/cascader.vue";
import AssociatedForms from "@/widget/associatedforms/index.vue";
import TreeSelectPage from "@/components/DesignForm/public/expand/treeSelect.vue";
import AKSelect from "./select.vue";
import { uploadUrl, getRequest } from "@/api/DesignForm";
@ -211,6 +212,10 @@ const currentComponent = computed(() => {
if (props.data.type === "cascader") {
return markRaw(CascaderPage);
}
if (props.data.type === "treeSelect") {
return markRaw(TreeSelectPage);
}
if (props.data.type === "switch") {
if (typeof props.data.control.activeValue === "number") {
props.data.control.activeValue = props.data.control.activeValue.toString();
@ -222,7 +227,7 @@ const currentComponent = computed(() => {
// if (props.data.type === 'timePicker') {
// props.data.control.valueFormat="timestamp"
// }
// console.log("",props.data)
console.log("自定义组件", props.data.tye);
return `el-${props.data.type}`;
});
//
@ -941,7 +946,9 @@ const judjeCascader = (val: any[], options: any[]) => {
if (val && val.length < 0) return "";
let valAry = stringToObj(val);
console.log("获取级联选择值", stringToObj(val), val.length, options);
if (!Array.isArray(valAry)) return "";
if (!Array.isArray(valAry)) {
return diGuiJilian(val, options);
}
let title = "";
valAry.forEach((item: any) => {
// console.log("item", item);
@ -991,7 +998,13 @@ const diGuiJilian = (val: any, options: any[]) => {
v-if="judgeIsShow(data.name) && data.type === 'baidumap' && type != 4"
:data="data"
/>
<!--所属部门-->
<DeptOrgPage
v-if="judgeIsShow(data.name) && data.type === 'deptOrg' && type != 4"
:data="data"
:form-props="formProps"
:tablekey="props.tablekey"
/>
<!--拥有者-->
<OwnerPage
v-else-if="judgeIsShow(data.name) && data.type === 'owner'"
@ -1077,7 +1090,8 @@ const diGuiJilian = (val: any, options: any[]) => {
data.type != 'lowcodeCarsusel' &&
data.type != 'signaturemap' &&
data.type != 'signaturemap' &&
data.type != 'urllink'
data.type != 'urllink' &&
data.type != 'deptOrg'
"
:disabled="judgeIsDisabled(data.name)"
:prop="tProp || data.name"
@ -1117,6 +1131,9 @@ const diGuiJilian = (val: any, options: any[]) => {
<div class="form-value" v-else-if="data.type == 'cascader'">
{{ judjeCascader(value, data.options) }}
</div>
<div class="form-value" v-else-if="data.type == 'treeSelect'">
{{ judjeCascader(value, data.control.data) }}
</div>
<div class="form-value" v-else-if="data.type == 'colorPicker'">
<div :style="'width:20px; height:20px; background-color:' + value + ';'"></div>
</div>

Loading…
Cancel
Save