Commit 13212089 authored by 何远江's avatar 何远江

优化订单转换字段设置

parent 304cb871
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<el-input v-model="queryParams.excelOrderId" placeholder="" clearable /> <el-input v-model="queryParams.excelOrderId" placeholder="" clearable />
</el-form-item> --> </el-form-item> -->
<el-form-item label="订单状态"> <el-form-item label="订单状态">
<el-select v-model="queryParams.status" placeholder="" clearable > <el-select v-model="queryParams.status" placeholder="" clearable>
<template v-for="item in statusOptions"> <template v-for="item in statusOptions">
<el-option :value="item.value" :label="item.label"></el-option> <el-option :value="item.value" :label="item.label"></el-option>
</template> </template>
...@@ -35,8 +35,10 @@ ...@@ -35,8 +35,10 @@
> >
<vxe-column type="checkbox" width="50"></vxe-column> <vxe-column type="checkbox" width="50"></vxe-column>
<vxe-column field="fileId_dictText" title="文件名称"> <vxe-column field="fileId_dictText" title="文件名称">
<template #default="{row}"> <template #default="{ row }">
<el-link target="_blank" :href="'/api/sys/static/'+ row.fileId_dictText">{{ row.fileId_dictText }}</el-link> <el-link target="_blank" :href="'/api/sys/static/' + row.fileId_dictText">{{
row.fileId_dictText
}}</el-link>
</template> </template>
</vxe-column> </vxe-column>
<vxe-column field="status_dictText" title="订单状态" width="200"></vxe-column> <vxe-column field="status_dictText" title="订单状态" width="200"></vxe-column>
...@@ -134,29 +136,34 @@ ...@@ -134,29 +136,34 @@
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="对应字段" prop="mapField"> <el-form-item label="对应字段" prop="mapField">
<el-select v-model="currentConfigColumn.mapField" placeholder="Select" :teleported="false"> <el-select
v-model="currentConfigColumn.mapField"
style="width: 220px"
filterable
placeholder="请选择"
:teleported="false"
clearable
>
<el-option-group v-for="group in allFields" :key="group.label" :label="group.label"> <el-option-group v-for="group in allFields" :key="group.label" :label="group.label">
<el-option <el-option
v-for="item in group.options" v-for="item in group.options"
:key="item.filedName" :key="item.filedName"
:label="item.fliedTitle" :label="item.fliedTitle"
:value="item.filedName" :value="item.filedName"
:disabled="!!item.disabled"
/> />
</el-option-group> </el-option-group>
</el-select> </el-select>
<!-- <el-select v-model="currentConfigColumn.mapField" :teleported="false" clearable>
<el-option
v-for="item in orderFieldList"
:key="item.filedName"
:value="item.filedName"
:label="item.fliedTitle"
></el-option>
</el-select> -->
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24" v-if="currentConfigColumn.mapField"> <el-col :span="24" v-if="currentConfigColumn.mapField">
<el-form-item label="脚本"> <el-form-item label="脚本">
<el-select v-model="currentConfigColumn.scriptName" :teleported="false" clearable> <el-select
style="width: 220px"
v-model="currentConfigColumn.scriptName"
:teleported="false"
clearable
>
<el-option <el-option
v-for="item in scriptList" v-for="item in scriptList"
:key="item.srciptName" :key="item.srciptName"
...@@ -170,13 +177,14 @@ ...@@ -170,13 +177,14 @@
<template v-for="params in currentScriptParamsList" :key="params.fliedTitle"> <template v-for="params in currentScriptParamsList" :key="params.fliedTitle">
<el-col :span="24"> <el-col :span="24">
<el-form-item :label="params.fliedTitle"> <el-form-item :label="params.fliedTitle">
<el-input v-model="scriptPs[params.filedName]" /> <el-input v-model="scriptPs[params.filedName]" style="width: 220px" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</template> </template>
<el-col :span="24" v-if="currentConfigColumn.scriptName"> <el-col :span="24" v-if="currentConfigColumn.scriptName">
<el-form-item label="脚本语句"> <el-form-item label="脚本语句">
<el-input <el-input
style="width: 220px"
rows="3" rows="3"
type="textarea" type="textarea"
v-model.trim="currentConfigColumn.content" v-model.trim="currentConfigColumn.content"
...@@ -234,6 +242,9 @@ const queryParams = reactive({ ...@@ -234,6 +242,9 @@ const queryParams = reactive({
/**所有列映射配置 */ /**所有列映射配置 */
const allMapConfigs = ref<Recordable>({}) const allMapConfigs = ref<Recordable>({})
const effectConfigs = computed(() => {
return Object.values(allMapConfigs.value).filter((item) => item.title != '')
})
/**当前表单映射字段配置 */ /**当前表单映射字段配置 */
const currentConfigColumn = reactive({ const currentConfigColumn = reactive({
title: '', title: '',
...@@ -274,7 +285,6 @@ const queryDict = async (code: string) => { ...@@ -274,7 +285,6 @@ const queryDict = async (code: string) => {
statusOptions.value = data.result[code] statusOptions.value = data.result[code]
} }
const popoverRef = ref() const popoverRef = ref()
const buttonRef = ref() const buttonRef = ref()
const popoverVisible = ref(false) const popoverVisible = ref(false)
...@@ -324,13 +334,26 @@ watch( ...@@ -324,13 +334,26 @@ watch(
const variableField = ref([]) const variableField = ref([])
const allFields = computed(() => { const allFields = computed(() => {
return [{ return [
label: '普通字段', {
options: orderFieldList.value, label: '普通字段',
}, { options: orderFieldList.value.map((item) => {
label: '变量字段', return {
options: variableField.value, ...item,
}] disabled: effectConfigs.value.some((v) => v.mapField == item.filedName)
}
})
},
{
label: '变量字段',
options: variableField.value.map((item) => {
return {
...item,
disabled: effectConfigs.value.some((v) => v.mapField == item.filedName)
}
})
}
]
}) })
/**重置popover配置表单 */ /**重置popover配置表单 */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment