|
@@ -34,12 +34,7 @@
|
|
|
<div class="info-item">
|
|
|
<div class="item-label">阶段</div>
|
|
|
<div class="item-value">
|
|
|
- {{
|
|
|
- dictStroe.getLableByValue(
|
|
|
- "stage",
|
|
|
- infoData?.stageDictValue
|
|
|
- )
|
|
|
- }}
|
|
|
+ {{ dictStroe.getLableByValue("stage", infoData?.stageDictValue) }}
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="info-item">
|
|
@@ -48,10 +43,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- :label="`报故数量[${formLabelAlign.seqNoList.length}]`"
|
|
|
- prop="seqNoList"
|
|
|
- >
|
|
|
+ <el-form-item :label="`报故数量[${formLabelAlign.seqNoList.length}]`" prop="seqNoList">
|
|
|
<el-select
|
|
|
v-model="formLabelAlign.seqNoList"
|
|
|
multiple
|
|
@@ -59,12 +51,7 @@
|
|
|
value-key="value"
|
|
|
@change="selectProcessWorkSeqChange"
|
|
|
>
|
|
|
- <el-option
|
|
|
- v-for="item in infoData?.processWorkSeq"
|
|
|
- :key="item"
|
|
|
- :label="item"
|
|
|
- :value="item"
|
|
|
- />
|
|
|
+ <el-option v-for="item in infoData?.processWorkSeq" :key="item" :label="item" :value="item" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
|
|
@@ -95,12 +82,7 @@
|
|
|
placeholder="请选择"
|
|
|
value-key="id"
|
|
|
>
|
|
|
- <el-option
|
|
|
- v-for="item in quexianList"
|
|
|
- :key="item.id"
|
|
|
- :label="item.bugName"
|
|
|
- :value="item"
|
|
|
- />
|
|
|
+ <el-option v-for="item in quexianList" :key="item.id" :label="item.bugName" :value="item" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -113,12 +95,7 @@
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="不合格品分布情况及工序" prop="processesList">
|
|
|
- <el-select
|
|
|
- v-model="formLabelAlign.processesList"
|
|
|
- multiple
|
|
|
- placeholder="请选择"
|
|
|
- value-key="operationId"
|
|
|
- >
|
|
|
+ <el-select v-model="formLabelAlign.processesList" multiple placeholder="请选择" value-key="operationId">
|
|
|
<el-option
|
|
|
v-for="item in operationList"
|
|
|
:key="item.operationId"
|
|
@@ -129,30 +106,21 @@
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="责任/经办者" prop="personResponsible">
|
|
|
- <el-select
|
|
|
+ <el-tree-select
|
|
|
v-model="formLabelAlign.personResponsible"
|
|
|
+ :data="userList"
|
|
|
+ placeholder="请选择人员"
|
|
|
+ :default-expand-all="false"
|
|
|
filterable
|
|
|
- placeholder="请选择"
|
|
|
- value-key="id"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in dictStroe.allUsers"
|
|
|
- :key="item.id"
|
|
|
- :label="item.userName"
|
|
|
- :value="item.userName"
|
|
|
- />
|
|
|
- </el-select>
|
|
|
+ clearable
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="缺陷图片" prop="fileList">
|
|
|
<MultiUpload v-model="formLabelAlign.fileList" />
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="备注" prop="remark">
|
|
|
- <el-input
|
|
|
- v-model="formLabelAlign.remark"
|
|
|
- :rows="3"
|
|
|
- type="textarea"
|
|
|
- />
|
|
|
+ <el-input v-model="formLabelAlign.remark" :rows="3" type="textarea" />
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</div>
|
|
@@ -161,25 +129,19 @@
|
|
|
<template #footer>
|
|
|
<div class="bottom-btns">
|
|
|
<el-button class="cancelBtn" @click="cancelClick">取消</el-button>
|
|
|
- <el-button class="sureBtn" type="primary" @click="confirmClick"
|
|
|
- >报故
|
|
|
- </el-button>
|
|
|
+ <el-button class="sureBtn" type="primary" @click="confirmClick">报故 </el-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-drawer>
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts" setup>
|
|
|
-import {
|
|
|
- addBreakReport,
|
|
|
- basebugsByType,
|
|
|
- breakReportInfoById,
|
|
|
- operationListByIds,
|
|
|
-} from "@/api/process/reportBreak";
|
|
|
+import { addBreakReport, basebugsByType, breakReportInfoById, operationListByIds } from "@/api/process/reportBreak";
|
|
|
import { useProcessStore } from "@/store/modules/processView";
|
|
|
import { useDictionaryStore } from "@/store/modules/dictionary";
|
|
|
import { getProcessInfo } from "@/api/prosteps";
|
|
|
import MultiUpload from "@/components/Upload/MultiUpload.vue";
|
|
|
+import { getUserTree } from "@/api/user";
|
|
|
|
|
|
const processStore = useProcessStore();
|
|
|
const dictStroe = useDictionaryStore();
|
|
@@ -200,18 +162,19 @@ const formLabelAlign = reactive({
|
|
|
remark: "",
|
|
|
});
|
|
|
const rules = reactive({
|
|
|
- trackingNumber: [
|
|
|
- { required: true, message: "请输入 追踪卡号", trigger: "blur" },
|
|
|
- ],
|
|
|
- workOrderNumber: [
|
|
|
- { required: true, message: "请输入 工作令号", trigger: "blur" },
|
|
|
- ],
|
|
|
- archiveNumber: [
|
|
|
- { required: true, message: "请输入 归档编号", trigger: "blur" },
|
|
|
- ],
|
|
|
+ trackingNumber: [{ required: true, message: "请输入 追踪卡号", trigger: "blur" }],
|
|
|
+ workOrderNumber: [{ required: true, message: "请输入 工作令号", trigger: "blur" }],
|
|
|
+ archiveNumber: [{ required: true, message: "请输入 归档编号", trigger: "blur" }],
|
|
|
seqNoList: [{ required: true, message: "请选择 ", trigger: "blur" }],
|
|
|
});
|
|
|
|
|
|
+// ================= 人员树结构
|
|
|
+const userList = ref([]);
|
|
|
+const queryUserList = () => {
|
|
|
+ getUserTree().then((data) => {
|
|
|
+ userList.value = data.data;
|
|
|
+ });
|
|
|
+};
|
|
|
const openReportBreakDrawer = () => {
|
|
|
getProcessInfo(processStore.scanInfo.id).then((res) => {
|
|
|
processStore.scanInfo.currentState = res.data.currentState;
|
|
@@ -225,6 +188,7 @@ const openReportBreakDrawer = () => {
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
+ queryUserList();
|
|
|
};
|
|
|
|
|
|
// 报故数量,选择工序号相关. 选择之后获取工序列表
|