|
@@ -1,20 +1,20 @@
|
|
|
<template>
|
|
|
<div class="mainContentBox">
|
|
|
<avue-crud
|
|
|
- ref="crudRef"
|
|
|
- v-model:search="search"
|
|
|
- v-model="form"
|
|
|
- :data="data"
|
|
|
- :option="option"
|
|
|
- v-model:page="page"
|
|
|
- @row-save="createRow"
|
|
|
- @row-update="updateRow"
|
|
|
- @row-del="deleteRow"
|
|
|
- @search-change="searchChange"
|
|
|
- @search-reset="resetChange"
|
|
|
- @size-change="dataList"
|
|
|
- @current-change="dataList"
|
|
|
- @selection-change="selectionChange"
|
|
|
+ ref="crudRef"
|
|
|
+ v-model:search="search"
|
|
|
+ v-model="form"
|
|
|
+ :data="data"
|
|
|
+ :option="option"
|
|
|
+ v-model:page="page"
|
|
|
+ @row-save="createRow"
|
|
|
+ @row-update="updateRow"
|
|
|
+ @row-del="deleteRow"
|
|
|
+ @search-change="searchChange"
|
|
|
+ @search-reset="resetChange"
|
|
|
+ @size-change="dataList"
|
|
|
+ @current-change="dataList"
|
|
|
+ @selection-change="selectionChange"
|
|
|
>
|
|
|
<template #drawingPath-form="scope">
|
|
|
<single-upload v-model="form.drawingPath" :generatePdf="true"/>
|
|
@@ -46,6 +46,8 @@
|
|
|
>删除</el-button>
|
|
|
</template>
|
|
|
</avue-crud>
|
|
|
+
|
|
|
+
|
|
|
<ExcelUpload ref="uploadRef" @finished="uploadFinished" />
|
|
|
<PDFView
|
|
|
:need-to-show-pdf="true"
|
|
@@ -55,16 +57,21 @@
|
|
|
pdf-source="http://192.168.101.4:9000/jgfile/2024/04/20/%E7%AC%AC08%E7%AB%A0_%E8%81%9A%E5%90%88%E5%87%BD%E6%95%B0.pdf"
|
|
|
/>
|
|
|
</div>
|
|
|
+ <CommonTable
|
|
|
+ ref="ctableRef"
|
|
|
+ tableTitle="BOM添加"
|
|
|
+ tableType="MARTERIAL"
|
|
|
+ @selected-sure="onSelectedFinish"
|
|
|
+ />
|
|
|
</template>
|
|
|
<script setup lang="ts">
|
|
|
import { ref, getCurrentInstance } from "vue";
|
|
|
import { useCrud } from "@/hooks/userCrud";
|
|
|
-import { columns } from "./columns";
|
|
|
import { useCommonStoreHook, useDictionaryStoreHook } from "@/store";
|
|
|
import {updateDrawaing} from "@/api/drawing";
|
|
|
+import dictDataUtil from "@/common/configs/dictDataUtil";
|
|
|
import PDFView from "@/components/PDFView/index.vue";
|
|
|
const { isShowTable, tableType } = toRefs(useCommonStoreHook());
|
|
|
-
|
|
|
// 数据字典相关
|
|
|
const { dicts } = useDictionaryStoreHook();
|
|
|
|
|
@@ -72,7 +79,7 @@ const test = () => {
|
|
|
isShowTable.value = true;
|
|
|
tableType.value = tableType.value == 1 ? 2 : 1;
|
|
|
};
|
|
|
-
|
|
|
+const ctableRef=ref(null);
|
|
|
const changeItem = (row)=>{
|
|
|
updateDrawaing(row).then(
|
|
|
()=>{
|
|
@@ -84,11 +91,11 @@ const changeItem = (row)=>{
|
|
|
|
|
|
// 传入一个url,后面不带/
|
|
|
const { form, data, option, search, page, toDeleteIds, Methords, Utils } =
|
|
|
- useCrud({
|
|
|
- src: "/api/v1/base/drawing",
|
|
|
- });
|
|
|
+ useCrud({
|
|
|
+ src: "/api/v1/base/drawing",
|
|
|
+ });
|
|
|
const { dataEditList, createRow, updateRow, deleteRow, searchChange, dataList,resetChange } =
|
|
|
- Methords; //增删改查
|
|
|
+ Methords; //增删改查
|
|
|
const { selectionChange, multipleDelete } = Methords; //选中和批量删除事件
|
|
|
const { checkBtnPerm, downloadTemplate, exportData } = Utils; //按钮权限等工具
|
|
|
// checkBtnPerm(ButtonPermKeys.PLAN.BTNS.order_add) :permission="permission"
|
|
@@ -107,6 +114,10 @@ onMounted?.(() => {
|
|
|
dataEditList();
|
|
|
});
|
|
|
|
|
|
+const onSelectedFinish = (selectedValue) => {
|
|
|
+ form.value.associationCode=selectedValue.materialCode;
|
|
|
+ form.value.associationName=selectedValue.materialCode;
|
|
|
+};
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -127,11 +138,90 @@ option.value = Object.assign(option.value, {
|
|
|
editBtn:false,
|
|
|
delBtn:false,
|
|
|
menu:true,
|
|
|
- column: columns,
|
|
|
-});
|
|
|
-const viewFile=(row,index,done)=>{
|
|
|
+ column: [
|
|
|
+ { label: "图纸编号", prop: "drawingCode", width: 140,search: true,overHidden: true ,rules: [{
|
|
|
+ required: true,
|
|
|
+ message: "请填写图纸编号",
|
|
|
+ trigger: "blur"
|
|
|
+ }],},
|
|
|
+ { label: "图纸名称", prop: "drawingTitle", width: 130,overHidden: true,search: true ,rules: [{
|
|
|
+ required: true,
|
|
|
+ message: "请填写图纸名称",
|
|
|
+ trigger: "blur"
|
|
|
+ }],},
|
|
|
+ { label: "物料编号", prop: "associationCode", width: 140,search: true,overHidden: true ,editDisplay: false,
|
|
|
+ rules: [{
|
|
|
+ required: true,
|
|
|
+ message: "请填写物料编号",
|
|
|
+ trigger: "blur"
|
|
|
+ }],
|
|
|
+ click(){
|
|
|
+ if (ctableRef.value) {
|
|
|
+ ctableRef.value.startSelect();
|
|
|
+ }
|
|
|
+ }},
|
|
|
+ { label: "物料名称", prop: "associationName", width: 140,search: true,overHidden: true ,disabled:true,rules: [{
|
|
|
+ required: true,
|
|
|
+ message: "请填写物料名称",
|
|
|
+ trigger: "blur"
|
|
|
+ }] },
|
|
|
+ {
|
|
|
+ label: "图纸类型",
|
|
|
+ prop: "drawingDictValue",
|
|
|
+ search: true,
|
|
|
+ filterable: true,
|
|
|
+ type: 'select',
|
|
|
+ width: 100,overHidden: true,
|
|
|
+ dicUrl: dictDataUtil.request_url + "drawing_type",
|
|
|
+ props: { label: "dictLabel", value: "dictValue" },
|
|
|
+ rules: [{
|
|
|
+ required: true,
|
|
|
+ message: "请选择物料属性",
|
|
|
+ trigger: "blur"
|
|
|
+ }],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "文件",
|
|
|
+ prop: "drawingPath",
|
|
|
+ span: 24,
|
|
|
+ slot: true,
|
|
|
+ hide:true,
|
|
|
+ },
|
|
|
+ { label: "文件",
|
|
|
+ prop: "drawing",
|
|
|
+ type: 'img',
|
|
|
+ span: 24,
|
|
|
+ display:false,
|
|
|
+ slot: true,
|
|
|
+ formatter: (row, column, cellValue, index) => {
|
|
|
+ return import.meta.env.VITE_APP_UPLOAD_URL + `${row.drawingPath}`;} },
|
|
|
+ {
|
|
|
+ label: "版本",
|
|
|
+ prop: "drawingVersion",
|
|
|
+ type:"number",
|
|
|
+ precision:1,
|
|
|
+ rules: [{
|
|
|
+ required: true,
|
|
|
+ message: "版本号不能为空",
|
|
|
+ trigger: "blur"
|
|
|
+ }]
|
|
|
|
|
|
-}
|
|
|
+
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "创建时间",
|
|
|
+ prop: "created",
|
|
|
+ display:false,
|
|
|
+ },
|
|
|
+ { label: "启用状态",
|
|
|
+ slot:true,
|
|
|
+ headerAlign: 'center',
|
|
|
+ prop: "enable",
|
|
|
+ width: 100,
|
|
|
+ addDisplay: false
|
|
|
+ },
|
|
|
+ ],
|
|
|
+});
|
|
|
|
|
|
const deleteRecord=(row,index,done)=>{
|
|
|
deleteRow(row,index,done);
|