Commit 027da0f0 authored by 何远江's avatar 何远江

添加查询条件

parent 651822a1
......@@ -156,7 +156,7 @@ const setAreaTitle = () => {
const [sc, ec] = sheet.luckysheet_select_save[0].column
const rangeData = luckysheet.getRangeValue()
const titles = isPublic
? handleRangeCell(rangeData)
? handleRangeTitle(rangeData)
: handleRangeTitle(rangeData).map((item) => {
Reflect.set(item, 'numTitle', '')
Reflect.set(item, 'numFlag', 'N')
......
......@@ -156,7 +156,7 @@ const setAreaTitle = () => {
const [sc, ec] = sheet.luckysheet_select_save[0].column
const rangeData = luckysheet.getRangeValue()
const titles = isPublic
? handleRangeCell(rangeData)
? handleRangeTitle(rangeData)
: handleRangeTitle(rangeData).map((item) => {
Reflect.set(item, 'numTitle', '')
Reflect.set(item, 'numFlag', 'N')
......
......@@ -2,8 +2,21 @@
<div class="w-full h-full bg-white p-4">
<p class="font-bold text-lg leading-10 border-b-2">订单项次列表</p>
<el-form class="pt-4" :inline="true" :model="formState">
<el-form-item label="产品编码">
<el-input v-model="formState.productCode" placeholder="产品编码"></el-input>
</el-form-item>
<el-form-item label="客户名称">
<el-input v-model="formState.customerName" placeholder="客户名称"></el-input>
</el-form-item>
<el-form-item label="订单编码">
<el-input v-model="formState.orderCode" placeholder="订单编码"></el-input>
</el-form-item>
<el-form-item label="订单项次">
<el-input v-model="formState.orderItemNo" placeholder="订单项次"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="onQuery">查询</el-button>
<el-button type="info" @click="onReset">重置</el-button>
</el-form-item>
</el-form>
......@@ -20,12 +33,7 @@
<template #default>尺码信息</template>
<template #content="{ row }">
<div style="padding: 10px">
<vxe-table
:data="row.sizeList"
size="mini"
max-height="300px"
style="width: 300px"
>
<vxe-table :data="row.sizeList" size="mini" max-height="300px" style="width: 300px">
<vxe-column field="size" title="尺码"></vxe-column>
<vxe-column field="num" title="尺码数量"></vxe-column>
</vxe-table>
......@@ -35,34 +43,14 @@
<vxe-column field="orderNo" title="订单编码" width="120"></vxe-column>
<vxe-column field="rowNo" title="项次行" width="120"></vxe-column>
<vxe-column field="brandName" title="品牌名称" width="180"></vxe-column>
<vxe-column
field="customerName"
title="客户名称"
width="240"
></vxe-column>
<vxe-column
field="productType"
title="产品类型"
width="120"
></vxe-column>
<vxe-column
field="productCode"
title="产品编码"
width="120"
></vxe-column>
<vxe-column
field="productName"
title="产品名称"
width="240"
></vxe-column>
<vxe-column field="customerName" title="客户名称" width="240"></vxe-column>
<vxe-column field="productType" title="产品类型" width="120"></vxe-column>
<vxe-column field="productCode" title="产品编码" width="120"></vxe-column>
<vxe-column field="productName" title="产品名称" width="240"></vxe-column>
<vxe-column title="操作" width="240">
<template #default="{ row }">
<el-button type="text" size="small" @click="handleImportVar(row)"
>上传变量</el-button
>
<el-button type="text" size="small" @click="handleShowVarRun(row)"
>查看解析</el-button
>
<el-button type="text" size="small" @click="handleImportVar(row)">上传变量</el-button>
<el-button type="text" size="small" @click="handleShowVarRun(row)">查看解析</el-button>
</template>
</vxe-column>
</vxe-table>
......@@ -74,14 +62,7 @@
v-model:page-size="formState.pageSize"
:total="formState.total"
@page-change="onQuery"
:layouts="[
'PrevPage',
'JumpNumber',
'NextPage',
'Sizes',
'FullJump',
'Total',
]"
:layouts="['PrevPage', 'JumpNumber', 'NextPage', 'Sizes', 'FullJump', 'Total']"
>
</vxe-pager>
</div>
......@@ -114,9 +95,7 @@
>
<el-button type="primary">上传文件</el-button>
<template #tip>
<div class="el-upload__tip">
选择你要上传的excel文件,仅支持xlsx、xls格式
</div>
<div class="el-upload__tip">选择你要上传的excel文件,仅支持xlsx、xls格式</div>
</template>
</el-upload>
</el-form-item>
......@@ -132,117 +111,128 @@
</template>
<script lang="ts" setup>
import { nextTick, onMounted, reactive, ref } from "vue";
import { nextTick, onMounted, reactive, ref } from 'vue'
import {
apiOrderVarPage,
apiOrderVarGetVars,
apiOrderVarGetNewVars,
apiOrderVarSaveUpload,
apiOrderVarRun,
} from "@/api/var";
import type { VxeTableInstance } from "vxe-table";
import TemplateVariable from "./components/TemplateVariable.vue";
import { filterRunData2 } from "@/utils/excel";
import { uploadFile } from "@/api/excel";
import { ElMessage } from "element-plus";
apiOrderVarRun
} from '@/api/var'
import type { VxeTableInstance } from 'vxe-table'
import TemplateVariable from './components/TemplateVariable.vue'
import { filterRunData2 } from '@/utils/excel'
import { uploadFile } from '@/api/excel'
import { ElMessage } from 'element-plus'
const loading = ref(false);
const loading = ref(false)
const formState = reactive({
currentPage: 1,
pageSize: 10,
total: 0,
productCode: '',
customerName: '',
orderCode: '',
orderItemNo: ''
// column: 'createTime',
// order: 'desc'
});
})
const xTable = ref<VxeTableInstance>();
const xTable = ref<VxeTableInstance>()
const tableData = ref([]);
const tableData = ref([])
const tempVisible = ref(false);
const tempVisible = ref(false)
const detailVariable = ref({
title: "变量文件解析",
title: '变量文件解析',
titles: [],
data: [],
});
data: []
})
const handleShowVarRun = async (row: any) => {
const {data} = await apiOrderVarGetNewVars(row.orderItemId);
const { res, titles } = filterRunData2(data.result || [], false);
const { data } = await apiOrderVarGetNewVars(row.orderItemId)
const { res, titles } = filterRunData2(data.result || [], false)
detailVariable.value.titles = titles;
detailVariable.value.data = res;
tempVisible.value = true;
};
detailVariable.value.titles = titles
detailVariable.value.data = res
tempVisible.value = true
}
const importVisible = ref(false);
const importVisible = ref(false)
const importForm = ref({
customerName: "",
productName: "",
productCode: "",
customerId: "",
orderItemId: "",
filePaths: [],
});
customerName: '',
productName: '',
productCode: '',
customerId: '',
orderItemId: '',
filePaths: []
})
const handleImportVar = async (row) => {
importForm.value.customerName = row.customerName;
importForm.value.productName = row.productName;
importForm.value.customerId = row.customerId;
importForm.value.productCode = row.productCode;
importForm.value.orderItemId = row.orderItemId;
importVisible.value = true;
};
importForm.value.customerName = row.customerName
importForm.value.productName = row.productName
importForm.value.customerId = row.customerId
importForm.value.productCode = row.productCode
importForm.value.orderItemId = row.orderItemId
importVisible.value = true
}
const imporModalHide = () => {
importForm.value.filePaths = [];
};
importForm.value.filePaths = []
}
const handleRemove = (file) => {
importForm.value.filePaths = importForm.value.filePaths.filter(
(item) => item.uid !== file.uid
);
};
const handleExceed = () => {};
importForm.value.filePaths = importForm.value.filePaths.filter((item) => item.uid !== file.uid)
}
const handleExceed = () => {}
const changeUpload = (file: any) => {
const formData = new FormData();
formData.append("file", file.raw);
console.log(file, "file");
const formData = new FormData()
formData.append('file', file.raw)
console.log(file, 'file')
uploadFile(formData).then(({ data }) => {
if (data?.code === 200) {
importForm.value.filePaths.push({ uid: file.uid, path: data.message });
importForm.value.filePaths.push({ uid: file.uid, path: data.message })
} else {
return ElMessage.error("上传失败!");
return ElMessage.error('上传失败!')
}
});
};
})
}
const submitImport = async () => {
const params = {
...importForm.value,
filePaths: importForm.value.filePaths.map((item) => item.path),
};
await apiOrderVarSaveUpload(params);
const { data } = await apiOrderVarRun(importForm.value.orderItemId);
if (data?.code == "200") {
ElMessage.success(data.message || "解析成功!");
importVisible.value = false;
onQuery();
filePaths: importForm.value.filePaths.map((item) => item.path)
}
await apiOrderVarSaveUpload(params)
const { data } = await apiOrderVarRun(importForm.value.orderItemId)
if (data?.code == '200') {
ElMessage.success(data.message || '解析成功!')
importVisible.value = false
onQuery()
nextTick(() => {
handleShowVarRun(importForm.value);
});
handleShowVarRun(importForm.value)
})
} else {
ElMessage.error(data.message || "解析失败!");
ElMessage.error(data.message || '解析失败!')
}
};
}
const onReset = () => {
formState.currentPage = 1
formState.productCode = ''
formState.customerName = ''
formState.orderCode = ''
formState.orderItemNo = ''
onQuery()
}
const onQuery = async () => {
loading.value = true;
loading.value = true
try {
const { data } = await apiOrderVarPage(formState);
tableData.value = data.result.records;
formState.total = +data.result.total;
const { data } = await apiOrderVarPage(formState)
tableData.value = data.result.records
formState.total = +data.result.total
} catch {}
loading.value = false;
};
loading.value = false
}
onMounted(() => {
onQuery();
});
onQuery()
})
</script>
<style lang="scss" scoped></style>
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