Commit 870072ef authored by 何远江's avatar 何远江

添加复制引入

parent 8a72c861
import { computed, reactive, toRefs } from 'vue'
import { ElMessage } from 'element-plus'
export function useOrderChangeCopy(api, beforePaste) {
const state = reactive({
// 复制信息
copyInfo: []
})
// 是否复制
const isCopying = computed(() => !!state.copyInfo.length)
// 复制
const handleCopy = (info) => {
if (!info?.length) {
return ElMessage.warning('没有可以复制的配置!')
}
state.copyInfo = JSON.parse(JSON.stringify(info))
ElMessage.success('复制成功!')
}
return {
...toRefs(state),
isCopying,
handleCopy,
}
}
...@@ -13,7 +13,12 @@ ...@@ -13,7 +13,12 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="创建时间"> <el-form-item label="创建时间">
<el-date-picker v-model="queryParams.createTime" type='daterange' value-format="YYYY-MM-DD" placeholder="选择创建时间"></el-date-picker> <el-date-picker
v-model="queryParams.createTime"
type="daterange"
value-format="YYYY-MM-DD"
placeholder="选择创建时间"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="创建人"> <el-form-item label="创建人">
<el-input v-model="queryParams.createby_dict" placeholder=""> <el-input v-model="queryParams.createby_dict" placeholder="">
...@@ -126,7 +131,7 @@ ...@@ -126,7 +131,7 @@
</template> --> </template> -->
<!-- 转换下使用 --> <!-- 转换下使用 -->
<template > <template>
<vxe-colgroup v-for="item in tableTitle" :key="item" :title="item"> <vxe-colgroup v-for="item in tableTitle" :key="item" :title="item">
<vxe-column :title="item" :field="item" width="200"> <vxe-column :title="item" :field="item" width="200">
<template #header> <template #header>
...@@ -135,7 +140,7 @@ ...@@ -135,7 +140,7 @@
<span>{{ cf.orderFiled.fliedTitle }}</span> <span>{{ cf.orderFiled.fliedTitle }}</span>
</template> </template>
<!-- <span>{{ allMapConfigs[item]?.orderFiled.fliedTitle || '' }}</span> --> <!-- <span>{{ allMapConfigs[item]?.orderFiled.fliedTitle || '' }}</span> -->
<el-icon ><Setting /></el-icon> <el-icon><Setting /></el-icon>
</div> </div>
</template> </template>
</vxe-column> </vxe-column>
...@@ -164,10 +169,10 @@ ...@@ -164,10 +169,10 @@
</el-popover> </el-popover>
<template #footer> <template #footer>
<el-button type="primary" @click="onCopy">复制</el-button>
<el-button type="primary" v-if="isCopying" @click="onPaste">引入</el-button>
<!-- <el-button @click="confirmChange" v-if="currentRow.status == 'un_convert'">确认转换</el-button> --> <!-- <el-button @click="confirmChange" v-if="currentRow.status == 'un_convert'">确认转换</el-button> -->
<el-button @click="saveOrderField" type="primary" <el-button @click="saveOrderField" type="primary">保存</el-button>
>保存</el-button
>
</template> </template>
</vxe-modal> </vxe-modal>
...@@ -214,7 +219,6 @@ ...@@ -214,7 +219,6 @@
<CustomerModal v-model:visible="visible" @confirm="confirmCustomer" /> <CustomerModal v-model:visible="visible" @confirm="confirmCustomer" />
<UserModal v-model:visible="visibleUserModal" @confirm="confirmUser" /> <UserModal v-model:visible="visibleUserModal" @confirm="confirmUser" />
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
...@@ -250,6 +254,7 @@ import { saveAs } from 'file-saver' ...@@ -250,6 +254,7 @@ import { saveAs } from 'file-saver'
import { uploadFile } from '@/api/excel' import { uploadFile } from '@/api/excel'
import CustomerModal from '@/components/CustomerModal/CustomerModal.vue' import CustomerModal from '@/components/CustomerModal/CustomerModal.vue'
import UserModal from '@/components/UserModal/UserModal.vue' import UserModal from '@/components/UserModal/UserModal.vue'
import { useOrderChangeCopy } from '@/hooks/useOrderChangeCopy'
const visible = ref(false) const visible = ref(false)
const visibleUserModal = ref(false) const visibleUserModal = ref(false)
...@@ -259,6 +264,7 @@ const loading = ref(false) ...@@ -259,6 +264,7 @@ const loading = ref(false)
const importVisible = ref(false) const importVisible = ref(false)
const excelChangeStore = useExcelChangeStore() const excelChangeStore = useExcelChangeStore()
const { getAllMapConfigs } = storeToRefs(excelChangeStore) const { getAllMapConfigs } = storeToRefs(excelChangeStore)
const { copyInfo, isCopying, handleCopy } = useOrderChangeCopy()
/**查询参数 */ /**查询参数 */
const queryParams = reactive({ const queryParams = reactive({
status: '', status: '',
...@@ -445,7 +451,7 @@ const toDetail = async (row: any) => { ...@@ -445,7 +451,7 @@ const toDetail = async (row: any) => {
configs[item.title] = item configs[item.title] = item
}) })
// 排除通过循环不显示的column // 排除通过循环不显示的column
const excludeTitles = ['sortNum', '数据区', 'expendData','sheet页'] const excludeTitles = ['sortNum', '数据区', 'expendData', 'sheet页']
detailTable.value = res detailTable.value = res
tableTitle.value = titles.filter((v) => !excludeTitles.includes(v)) tableTitle.value = titles.filter((v) => !excludeTitles.includes(v))
detailVisible.value = true detailVisible.value = true
...@@ -532,6 +538,26 @@ const confirmUser = (list: any) => { ...@@ -532,6 +538,26 @@ const confirmUser = (list: any) => {
} }
} }
const onCopy = () => {
const confs = Object.values(getAllMapConfigs.value).filter(
(v) => v.title !== '' && !!v.orderFiledConfs.length
)
handleCopy(confs)
}
const onPaste = () => {
// 将复制的配置信息,一条一条设置
copyInfo.forEach((item: any) => {
item.templateFileId = currentRow.templateFileId
item.excelOrderFiledConfId = ''
excelChangeStore.setSingleFieldMap(item)
})
// 自动保存
saveOrderField()
}
const onReset = () => { const onReset = () => {
queryParams.status = '' queryParams.status = ''
} }
......
This diff is collapsed.
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