|
|
|
@ -172,11 +172,11 @@ const state = reactive({ |
|
|
|
|
|
|
|
const kaif = (id: number, callback?: (list: any) => void) => { |
|
|
|
// const content = stringToObj(props.state.formData) |
|
|
|
console.log('获取当前数据下所有字段',statePro.value.formData) |
|
|
|
// console.log('获取当前数据下所有字段',statePro.value.formData) |
|
|
|
filterFiled(statePro.value.formData) |
|
|
|
callback && callback(statePro.value.formData.list) |
|
|
|
|
|
|
|
console.log('获取当前数据下所有字段--->',state.formFieldList) |
|
|
|
// console.log('获取当前数据下所有字段--->',state.formFieldList) |
|
|
|
} |
|
|
|
const filterFiled = (obj: any) => { |
|
|
|
obj?.list.forEach((item: FormList) => { |
|
|
|
@ -232,7 +232,7 @@ const jieForm = () => { |
|
|
|
if(props.formKey != ""){ |
|
|
|
gainFormTableField({id:props.formKey.toString()}) |
|
|
|
.then((data)=>{ |
|
|
|
console.log('解析表单--->',data) |
|
|
|
// console.log('解析表单--->',data) |
|
|
|
formTableField.masterTable=data.data.masterTable |
|
|
|
formTableField.sunTable=data.data.sunTable |
|
|
|
}) |
|
|
|
@ -273,10 +273,10 @@ const isMapTrue = ref(true) |
|
|
|
@ 功能: 获取数据表字段数据 |
|
|
|
*/ |
|
|
|
const gainFormTableKeyWord = (val:string) => { |
|
|
|
console.log("获取数据表字段数据-----------》",val) |
|
|
|
// console.log("获取数据表字段数据-----------》",val) |
|
|
|
gainListTableField({id:val.toString()}) |
|
|
|
.then((data) =>{ |
|
|
|
console.log("获取数据表字段数据",data) |
|
|
|
// console.log("获取数据表字段数据",data) |
|
|
|
allKeyWords.value = data.data.allKeyWords |
|
|
|
timeKeyWords.value = data.data.timeKeyWords |
|
|
|
mapKeyWords.value = data.data.mapKeyWords |
|
|
|
@ -295,12 +295,12 @@ const tableAttrBut = ref<InstanceType<typeof ElTable>>() |
|
|
|
@ 功能: 设置字段属性 |
|
|
|
*/ |
|
|
|
const setUpField = (val:any) =>{ |
|
|
|
console.log("设置字段属性-->",val) |
|
|
|
// console.log("设置字段属性-->",val) |
|
|
|
setUpFieldInfo.value = val |
|
|
|
|
|
|
|
setUpFieldIsOpen.value = true |
|
|
|
|
|
|
|
console.log("设置字段属性-1->",setUpFieldIsOpen) |
|
|
|
// console.log("设置字段属性-1->",setUpFieldIsOpen) |
|
|
|
} |
|
|
|
/** |
|
|
|
@ 作者: 秦东 |
|
|
|
@ -404,7 +404,7 @@ const zhuDaunIsTrue = ref(false); |
|
|
|
@ 功能: 列表字段处理 |
|
|
|
*/ |
|
|
|
const tableListFieldClick = (val:any[]) => { |
|
|
|
console.log("列表字段处理-->",val) |
|
|
|
// console.log("列表字段处理-->",val) |
|
|
|
// zhuDaunIsTrue.value = true |
|
|
|
if(zhuDaunIsTrue.value == true){ |
|
|
|
if(val.length > 0){ |
|
|
|
@ -413,7 +413,7 @@ const tableListFieldClick = (val:any[]) => { |
|
|
|
let isTrue = true; |
|
|
|
state.tableData.columns.forEach((itemTab:tableButton)=>{ |
|
|
|
if(item.id == itemTab.id){ |
|
|
|
console.log("列表字段处理-111->",val) |
|
|
|
// console.log("列表字段处理-111->",val) |
|
|
|
isTrue = false; |
|
|
|
} |
|
|
|
}); |
|
|
|
@ -469,12 +469,12 @@ const columnDrop = () => { |
|
|
|
const wrapperTr = container.value.querySelector( |
|
|
|
'.el-table__header-wrapper tr' |
|
|
|
) |
|
|
|
console.log("wrapperTr",wrapperTr) |
|
|
|
// console.log("wrapperTr",wrapperTr) |
|
|
|
Sortable.create(wrapperTr, { |
|
|
|
animation: 180, |
|
|
|
delay: 0, |
|
|
|
onEnd: (evt: any) => { |
|
|
|
console.log("evt",evt.oldIndex,evt.newIndex) |
|
|
|
// console.log("evt",evt.oldIndex,evt.newIndex) |
|
|
|
const oldItem = state.tableData.columns[evt.oldIndex] |
|
|
|
state.tableData.columns.splice(evt.oldIndex, 1) |
|
|
|
state.tableData.columns.splice(evt.newIndex, 0, oldItem) |
|
|
|
@ -516,7 +516,7 @@ const delCol = (val:any) => { |
|
|
|
}) |
|
|
|
|
|
|
|
// tableFieldList.value!.toggleRowSelection(delInfo, true) |
|
|
|
console.log("delInfo",delInfo) |
|
|
|
// console.log("delInfo",delInfo) |
|
|
|
// tableFieldList.value!.clearSelection() |
|
|
|
}else{ |
|
|
|
tableFieldList.value!.clearSelection() |
|
|
|
@ -539,7 +539,7 @@ const delCol = (val:any) => { |
|
|
|
@ 功能: 更新列表记录操作按钮 |
|
|
|
*/ |
|
|
|
const updataLogBut = (val:attrButton[]) => { |
|
|
|
console.log("更新列表记录操作按钮",val) |
|
|
|
// console.log("更新列表记录操作按钮",val) |
|
|
|
let isWrete = true |
|
|
|
if(state.tableData.columns && state.tableData.columns.length > 0){ |
|
|
|
state.tableData.columns.forEach((item:any)=>{ |
|
|
|
@ -622,7 +622,7 @@ const codeIsShow = ref(false) //生成代码 |
|
|
|
@ 功能: 列表头部按钮操作 |
|
|
|
*/ |
|
|
|
const listPageTools = (type: string) => { |
|
|
|
console.log("列表头部操作--》",type) |
|
|
|
// console.log("列表头部操作--》",type) |
|
|
|
switch(type){ |
|
|
|
case "del": |
|
|
|
clearData() |
|
|
|
@ -719,7 +719,7 @@ const saveFormListData = () => { |
|
|
|
if(!props.formKey || props.formKey == "" || props.formKey == null || props.formKey == undefined){ |
|
|
|
return ElMessage.error('未知表单参数!请先保存前置表单后再操作!') |
|
|
|
} |
|
|
|
console.log("添加自定义表单列表设定",state.formApi) |
|
|
|
// console.log("添加自定义表单列表设定",state.formApi) |
|
|
|
if(type != 1){ |
|
|
|
if(addApiUrl=="" || editApiUrl=="" || delApiUrl=="" || lookApiUrl == ""){ |
|
|
|
return ElMessage.error('请补全列表第三方APIUrl!') |
|
|
|
@ -732,10 +732,10 @@ const saveFormListData = () => { |
|
|
|
data: json2string(state), |
|
|
|
id: props.formKey.toString() |
|
|
|
} |
|
|
|
console.log("添加自定义表单列表设定",params) |
|
|
|
// console.log("添加自定义表单列表设定",params) |
|
|
|
editCustomerFormList(params) |
|
|
|
.then((data)=>{ |
|
|
|
console.log("添加自定义表单列表设定",data) |
|
|
|
// console.log("添加自定义表单列表设定",data) |
|
|
|
ElMessage.success(data.msg) |
|
|
|
}) |
|
|
|
} |
|
|
|
@ -745,13 +745,13 @@ const saveFormListData = () => { |
|
|
|
@ 功能: 获取列表内容 |
|
|
|
*/ |
|
|
|
const getListInfo = () => { |
|
|
|
console.log("获取列表内容1111",props.formKey) |
|
|
|
// console.log("获取列表内容1111",props.formKey) |
|
|
|
gainFormListCont({id:props.formKey.toString()}) |
|
|
|
.then((data)=>{ |
|
|
|
console.log("获取列表内容",data) |
|
|
|
// console.log("获取列表内容",data) |
|
|
|
if(data.data.listjson != null && data.data.listjson != "" && data.data.listjson != "null"){ |
|
|
|
let stateData = string2json(data.data.listjson) |
|
|
|
console.log("获取列表内容---->",stateData) |
|
|
|
// console.log("获取列表内容---->",stateData) |
|
|
|
state.tableData = stateData.tableData |
|
|
|
state.searchData = stateData.searchData |
|
|
|
state.loading = stateData.loading |
|
|
|
@ -767,10 +767,34 @@ const getListInfo = () => { |
|
|
|
state.formApi = stateData.formApi |
|
|
|
state.dict = stateData.dict |
|
|
|
state.refreshTable = stateData.refreshTable |
|
|
|
state.view = stateData.view |
|
|
|
if(stateData.view && stateData.view != null && stateData.view != ""){ |
|
|
|
if(stateData.view.card && stateData.view.card != null && stateData.view.card != ""){ |
|
|
|
state.view = stateData.view |
|
|
|
}else{ |
|
|
|
state.view = stateData.view |
|
|
|
state.view.card ={ |
|
|
|
status:false, |
|
|
|
isClick:false, |
|
|
|
form:{ |
|
|
|
sort:1, |
|
|
|
sortWord:"", |
|
|
|
imgWork:"", |
|
|
|
imgWidth:50, |
|
|
|
imgHeight:50, |
|
|
|
imgBorderRadius:5, |
|
|
|
imgPadding:2, |
|
|
|
titleWork:"", |
|
|
|
describe:"", |
|
|
|
ranks:3 |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
console.log("获取列表内容--1-->",stateData.view) |
|
|
|
console.log("获取列表内容--2-->",state.view) |
|
|
|
// console.log("获取列表内容--1-->",stateData.view) |
|
|
|
// console.log("获取列表内容--2-->",state.view) |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -782,7 +806,7 @@ const getListInfo = () => { |
|
|
|
state.tableData.columns.forEach((itemCol:any)=>{ |
|
|
|
formTableField.masterTable.forEach((item:any)=>{ |
|
|
|
if(itemCol.id == item.id){ |
|
|
|
console.log("========>",item) |
|
|
|
// console.log("========>",item) |
|
|
|
item.isSearch = true |
|
|
|
tableFieldList.value!.toggleRowSelection(item, true) |
|
|
|
} |
|
|
|
@ -860,6 +884,7 @@ const getListInfo = () => { |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</div> --> |
|
|
|
|
|
|
|
<div class="main-body"> |
|
|
|
<div class="header"> |
|
|
|
<div class="field"> |
|
|
|
@ -872,6 +897,7 @@ const getListInfo = () => { |
|
|
|
<div class="search-box" > |
|
|
|
<SearchField v-if="state.searchData&&state.searchData.length>0&&state.config.searchIsShow" v-model:searchData="state.searchData" /> |
|
|
|
<div v-else class="tipBox" >条件查询搜索区域</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
@ -1073,102 +1099,102 @@ const getListInfo = () => { |
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
</el-collapse-item> |
|
|
|
<el-collapse-item title="Consistency" name="card" :class="state.view.card.status?'isTrueItem':''" :disabled="!state.view.card.status"> |
|
|
|
<template #title> |
|
|
|
<div class="collapse-title"> |
|
|
|
<el-collapse-item title="Consistency" name="card" :class="state.view.card&&state.view.card.status?'isTrueItem':''" :disabled="!state.view.card.status"> |
|
|
|
<template #title> |
|
|
|
<div class="collapse-title"> |
|
|
|
<div> |
|
|
|
<i class="fa fa-id-card-o"></i> |
|
|
|
<el-text>卡片视图</el-text> |
|
|
|
</div> |
|
|
|
<el-switch class="openOfClose" v-model="state.view.card.status" :disabled="isCardTrue" @click.stop="showCollapse" /> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<div> |
|
|
|
<i class="fa fa-id-card-o"></i> |
|
|
|
<el-text>卡片视图</el-text> |
|
|
|
</div> |
|
|
|
<el-switch class="openOfClose" v-model="state.view.card.status" :disabled="isCardTrue" @click.stop="showCollapse" /> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<div> |
|
|
|
<el-form |
|
|
|
label-position="top" |
|
|
|
label-width="auto" |
|
|
|
:model="state.view.card.form" |
|
|
|
style="max-width: 600px" |
|
|
|
> |
|
|
|
<el-form-item label="图片字段"> |
|
|
|
<el-select v-model="state.view.card.form.imgWork" placeholder="请选择图片字段"> |
|
|
|
<el-option v-for="item in cardKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="图片宽度与高度"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgWidth" |
|
|
|
placeholder="请输入图片宽度" |
|
|
|
> |
|
|
|
<template #prepend>宽度</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgHeight" |
|
|
|
placeholder="请输入图片高度" |
|
|
|
style="margin-top:10px;" |
|
|
|
> |
|
|
|
<template #prepend>高度</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="图片圆角"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgBorderRadius" |
|
|
|
placeholder="请输入图片圆角" |
|
|
|
style="margin-top:10px;" |
|
|
|
> |
|
|
|
<template #prepend>圆角</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="图片边框缩进"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgPadding" |
|
|
|
placeholder="请输入图片边框缩进" |
|
|
|
style="margin-top:10px;" |
|
|
|
> |
|
|
|
<template #prepend>缩进</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="卡片标题"> |
|
|
|
<el-select v-model="state.view.card.form.titleWork" placeholder="请选择时间轴段"> |
|
|
|
<el-option v-for="item in allKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="卡片标题描述"> |
|
|
|
<el-select v-model="state.view.card.form.describe" placeholder="请选择时间轴段"> |
|
|
|
<el-option v-for="item in allKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="每行几列"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.ranks" |
|
|
|
placeholder="请输入每行几列" |
|
|
|
style="margin-top:10px;" |
|
|
|
<el-form |
|
|
|
label-position="top" |
|
|
|
label-width="auto" |
|
|
|
:model="state.view.card.form" |
|
|
|
style="max-width: 600px" |
|
|
|
> |
|
|
|
<template #suffix>列</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="排序字段"> |
|
|
|
<el-select v-model="state.view.card.form.sortWord" placeholder="请选择时间轴段"> |
|
|
|
<el-option v-for="item in allKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="排序方式"> |
|
|
|
<el-radio-group v-model="state.view.card.form.sort"> |
|
|
|
<el-radio :label="1">降序</el-radio> |
|
|
|
<el-radio :label="2">升序</el-radio> |
|
|
|
</el-radio-group> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
</el-collapse-item> |
|
|
|
<el-form-item label="图片字段"> |
|
|
|
<el-select v-model="state.view.card.form.imgWork" placeholder="请选择图片字段"> |
|
|
|
<el-option v-for="item in cardKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="图片宽度与高度"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgWidth" |
|
|
|
placeholder="请输入图片宽度" |
|
|
|
> |
|
|
|
<template #prepend>宽度</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgHeight" |
|
|
|
placeholder="请输入图片高度" |
|
|
|
style="margin-top:10px;" |
|
|
|
> |
|
|
|
<template #prepend>高度</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="图片圆角"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgBorderRadius" |
|
|
|
placeholder="请输入图片圆角" |
|
|
|
style="margin-top:10px;" |
|
|
|
> |
|
|
|
<template #prepend>圆角</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="图片边框缩进"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.imgPadding" |
|
|
|
placeholder="请输入图片边框缩进" |
|
|
|
style="margin-top:10px;" |
|
|
|
> |
|
|
|
<template #prepend>缩进</template> |
|
|
|
<template #suffix>PX</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="卡片标题"> |
|
|
|
<el-select v-model="state.view.card.form.titleWork" placeholder="请选择时间轴段"> |
|
|
|
<el-option v-for="item in allKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="卡片标题描述"> |
|
|
|
<el-select v-model="state.view.card.form.describe" placeholder="请选择时间轴段"> |
|
|
|
<el-option v-for="item in allKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="每行几列"> |
|
|
|
<el-input |
|
|
|
v-model="state.view.card.form.ranks" |
|
|
|
placeholder="请输入每行几列" |
|
|
|
style="margin-top:10px;" |
|
|
|
> |
|
|
|
<template #suffix>列</template> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="排序字段"> |
|
|
|
<el-select v-model="state.view.card.form.sortWord" placeholder="请选择时间轴段"> |
|
|
|
<el-option v-for="item in allKeyWords" :key="item.value" :label="item.label" :value="item.value" /> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="排序方式"> |
|
|
|
<el-radio-group v-model="state.view.card.form.sort"> |
|
|
|
<el-radio :label="1">降序</el-radio> |
|
|
|
<el-radio :label="2">升序</el-radio> |
|
|
|
</el-radio-group> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
</el-collapse-item> |
|
|
|
<el-collapse-item title="Consistency" name="date" :class="state.view.date.status?'isTrueItem':''" :disabled="!state.view.date.status"> |
|
|
|
<template #title> |
|
|
|
<div class="collapse-title"> |
|
|
|
|