|
@@ -5,6 +5,8 @@ import {
|
|
|
getProductCodeListById,
|
|
|
getTestedProductList,
|
|
|
getTestingDataByCode,
|
|
|
+ saveExcelTemplate,
|
|
|
+ updateExcelTemplate,
|
|
|
} from "@/api/project/template";
|
|
|
|
|
|
const excelRef = ref(null);
|
|
@@ -16,6 +18,13 @@ const currentTemplate = ref(null);
|
|
|
const onSelectTemplate = (tem) => {
|
|
|
currentTemplate.value = tem;
|
|
|
temsDrawerVisible.value = false;
|
|
|
+ formData.engineeringId = tem.engineeringId;
|
|
|
+ formData.formName = tem.formName;
|
|
|
+ formData.productCode = tem.productCode;
|
|
|
+ getProductCodeListById(formData.engineeringId).then((res) => {
|
|
|
+ codeAllList.value = res.data;
|
|
|
+ codeList.value = codeAllList.value;
|
|
|
+ });
|
|
|
};
|
|
|
const onOpenTemplate = () => {
|
|
|
temsDrawerVisible.value = true;
|
|
@@ -44,6 +53,11 @@ const formData = reactive({
|
|
|
formName: "",
|
|
|
productCode: "",
|
|
|
});
|
|
|
+const rules = reactive({
|
|
|
+ engineeringId: { required: true, message: "请选择产品", trigger: "blur" },
|
|
|
+ productCode: { required: true, message: "请选择编号", trigger: "blur" },
|
|
|
+ formName: { required: true, message: "请输入模版名称", trigger: "blur" },
|
|
|
+});
|
|
|
|
|
|
// 产品选择器
|
|
|
const productAllList = ref<any[]>([]); // 产品列表
|
|
@@ -92,11 +106,27 @@ const codeRemoteMethod = (query: string) => {
|
|
|
});
|
|
|
};
|
|
|
|
|
|
-const onSaveTemplate = () => {
|
|
|
+const onSaveTemplate = async () => {
|
|
|
+ await formRef.value?.validate();
|
|
|
+
|
|
|
const res = excelRef.value.getExcelData();
|
|
|
- // console.log("onSaveTemplate", res, "传给后端要转json");
|
|
|
- console.log("onSaveTemplate", formRef.value);
|
|
|
+
|
|
|
+ let p = {
|
|
|
+ excelData: JSON.stringify(res),
|
|
|
+ ...formData,
|
|
|
+ id: currentTemplate.value?.id || null,
|
|
|
+ };
|
|
|
+
|
|
|
+ if (p.id) {
|
|
|
+ await updateExcelTemplate(p);
|
|
|
+ } else {
|
|
|
+ let result = await saveExcelTemplate(p);
|
|
|
+ }
|
|
|
+
|
|
|
formRef.value && formRef.value.resetFields();
|
|
|
+ currentTemplate.value = null;
|
|
|
+
|
|
|
+ ElMessage.success("保存成功");
|
|
|
};
|
|
|
|
|
|
// 点击搜索按钮查询 产品编码下的测试数据
|
|
@@ -161,7 +191,12 @@ onMounted(() => {
|
|
|
</div>
|
|
|
<div class="right">
|
|
|
<div class="title-header">测试项查询</div>
|
|
|
- <el-form ref="formRef" v-model:model="formData" label-position="top">
|
|
|
+ <el-form
|
|
|
+ ref="formRef"
|
|
|
+ v-model:model="formData"
|
|
|
+ :rules="rules"
|
|
|
+ label-position="top"
|
|
|
+ >
|
|
|
<el-form-item label="模版名称" prop="formName">
|
|
|
<el-input v-model="formData.formName" placeholder="请输入模版名称" />
|
|
|
</el-form-item>
|