From b6963454b6185dd1b5f3d8ad1f478abecddf8ea5 Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期四, 13 三月 2025 14:49:05 +0800
Subject: [PATCH] 检验对象、实验室资质bug修复
---
src/views/business/inspectionTask/index.vue | 230 ++++++++++++++++++++++++++++----------------------------
1 files changed, 115 insertions(+), 115 deletions(-)
diff --git a/src/views/business/inspectionTask/index.vue b/src/views/business/inspectionTask/index.vue
index 6dccaa2..d3505bf 100644
--- a/src/views/business/inspectionTask/index.vue
+++ b/src/views/business/inspectionTask/index.vue
@@ -89,7 +89,7 @@
</style>
<template>
<div class="ins-order-plan-main">
- <div v-show="activeFace == 0" style="height: 100%">
+ <div style="height: 100%">
<div class="search">
<div class="search_thing">
<div class="search_label">濮旀墭缂栧彿锛�</div>
@@ -138,7 +138,8 @@
</el-row>
</div>
<lims-table :tableData="tableData" :column="column" :page="page" :tableLoading="tableLoading"
- :height="'calc(100vh - 300px)'" @pagination="pagination" key="tableData0"></lims-table>
+ :rowClassName="rowClassName" :height="'calc(100vh - 300px)'" @pagination="pagination"
+ key="tableData0"></lims-table>
</div>
</div>
<el-dialog :visible.sync="claimVisible" title="鎻愮ず" width="400px">
@@ -178,33 +179,18 @@
<el-button :loading="loading" type="primary" @click="confirmConnect">纭� 瀹�</el-button>
</span>
</el-dialog>
- <div v-if="activeFace > 0 && isCopper == null" style="width: 100%; height: 100%">
- <!-- <Add :active="activeFace" :currentId="currentId" :examine="examine" /> -->
- </div>
- <div v-if="activeFace > 0 && isCopper == 0" style="width: 100%; height: 100%">
- <!-- <CustomsInspection
- :active="activeFace"
- :currentId="currentId"
- :customsInspection="customsInspection"
- :isReport="isReport"
- /> -->
- </div>
- <div v-if="activeFace > 0 && isCopper == 1" style="width: 100%; height: 100%">
- <!-- <CopperOrder :active="activeFace" :currentId="currentId"></CopperOrder> -->
- </div>
- <!--<Inspection
- v-if="state > 0"
- :key="InspectionKey"
- :inspectorList="inspectorList"
- :orderId="orderId"
- :sonLaboratory="sonLaboratory"
- :state="state"
- :typeSource="typeSource"
- @goback="goback"
- @refreshView="refreshView"
- />-->
<el-dialog :visible.sync="dataDialogVisible" title="鏁版嵁鏌ョ湅" width="80%">
<div v-if="dataDialogVisible" style="height: 70vh; overflow-y: auto">
+ <div>
+ <el-form :model="entity" :inline="true">
+ <el-form-item label="妫�楠岄」" prop="outputWorkTime">
+ <el-input v-model="entity.inspectionItem" clearable size="small"></el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-button size="small" type="primary" @click="getLookList">鏌ヨ</el-button>
+ </el-form-item>
+ </el-form>
+ </div>
<lims-table :tableData="lookTableData" :column="lookColumn" :page="lookPage" :tableLoading="lookTableLoading"
:height="'60vh'" @pagination="lookPagination" key="tableData1"></lims-table>
</div>
@@ -220,7 +206,7 @@
鏂板
</el-button>
</div>
- <el-table :data="bindTableData" style="width: 100%" height="70vh">
+ <el-table :data="bindTableData" style="width: 100%" height="70vh" v-loading="bindTableDataLoading">
<el-table-column prop="inspectionItemClass" label="妫�楠岄」鍒嗙被" width="150">
</el-table-column>
<el-table-column prop="inspectionItem" label="妫�楠岄」" width="150">
@@ -256,20 +242,18 @@
ref="showInfoDialog"
:showInfoDialog="showInfoDialog"
></ShowInfo> -->
+ <!--淇敼妫�楠屽�煎脊妗�-->
<edit-inspection-item ref="editInspectionItem"></edit-inspection-item>
+ <!--鏌ョ湅宸ユ椂寮规-->
+ <viewManHourDia ref="viewManHourDia"></viewManHourDia>
</div>
</template>
<script>
-import ValueTable from "@/components/Table/value-table.vue";
-// import Inspection from "../do/b1-inspect-order-plan/Inspection.vue";
-// import CustomsInspection from "../do/b1-material-ins-order/customs-inspection.vue";
import { getYearAndMonthAndDays } from "@/utils/date";
-// import Add from "../do/b1-ins-order/add.vue";
-// import ShowInfo from "../do/b1-material-ins-order/showInfo.vue";
-// import CopperOrder from "../do/b1-material-ins-order/copper-order.vue";
import EditInspectionItem from "./components/EditInspectionItem.vue";
import limsTable from "@/components/Table/lims-table.vue";
+import viewManHourDia from "./components/viewManHourDia.vue"
import {
claimInsOrderPlan,
upPlanUser2,
@@ -284,15 +268,11 @@
} from "@/api/business/inspectionTask.js";
import { mapGetters } from "vuex";
export default {
+ name: 'InspectionTask',
components: {
EditInspectionItem,
- // CopperOrder,
- // ShowInfo,
- ValueTable,
limsTable,
- // Inspection,
- // Add,
- // CustomsInspection,
+ viewManHourDia
},
dicts: ["urgency_level", "inspection_task_state"],
computed: {
@@ -303,6 +283,7 @@
InspectionKey: 1,
bindDialogVisible: false,
bindAddDialogVisible: false,
+ bindTableDataLoading: false,
bindTableData: [],
bindAddTableData: [],
chooseBindAddList: [],
@@ -384,14 +365,15 @@
{
label: "濮旀墭缂栧彿",
prop: "entrustCode",
- width: "140px",
+ width: "160px",
dataType: "link",
linkMethod: "selectAllByOne",
},
- { label: "鏍峰搧鍚嶇О", prop: "sample", width: "140px" },
+ { label: "鏍峰搧鍚嶇О", prop: "sample", width: "160px" },
{
label: "涓嬪崟绫诲埆",
prop: "typeSource",
+ width: "100px",
dataType: "tag",
formatData: (params) => {
if (params == 0) {
@@ -409,10 +391,14 @@
formatData: (params) => {
return this.urgencyLevel.find((m) => m.value == params).label;
},
+ formatType: (params) => {
+ return this.urgencyLevel.find((m) => m.value == params).type;
+ },
},
{
label: "妫�楠岀被鍨�",
prop: "orderType",
+ width: "100px",
dataType: "tag",
formatData: (params) => {
return this.orderTypeList.find((m) => m.value == params).label;
@@ -426,8 +412,7 @@
prop: "insState",
dataType: "tag",
formatData: (params) => {
- return this.inspectionTaskState.find((m) => m.value == params)
- .label;
+ return this.inspectionTaskState.find((m) => m.value == params).label;
},
formatType: (params) => {
return this.inspectionTaskState.find((m) => m.value == params).type;
@@ -458,9 +443,17 @@
this.editInspection(row);
},
disabled: (row) => {
- return (
- row.userName == null || row.insState == 3 || row.insState == 5
- );
+ return (row.userName == null || row.insState == 3 || row.insState == 5) && this.checkPermi(['update:product:onPlan'])
+ },
+ },
+ {
+ name: "鏌ョ湅宸ユ椂",
+ type: "text",
+ clickFun: (row) => {
+ this.viewManHour(row);
+ },
+ showHide: (row) => {
+ return this.checkPermi(['get:working:hours:byOrder'])
},
},
{
@@ -528,6 +521,9 @@
},
],
// 鏁版嵁鏌ョ湅鐩稿叧瀛楁---寮�濮�
+ entity: {
+ inspectionItem: "",
+ },
lookTableData: [],
lookColumn: [
{
@@ -551,10 +547,20 @@
prop: "insResult",
dataType: "tag",
formatData: (params) => {
- return this.insResultList.find((m) => m.value == params).label;
+ let obj = this.insResultList.find((m) => m.value == params)
+ if (obj) {
+ return this.insResultList.find((m) => m.value == params).label;
+ } else {
+ return null
+ }
},
formatType: (params) => {
- return this.insResultList.find((m) => m.value == params).type;
+ let obj = this.insResultList.find((m) => m.value == params)
+ if (obj) {
+ return this.insResultList.find((m) => m.value == params).type;
+ } else {
+ return null
+ }
},
},
{
@@ -588,7 +594,7 @@
// 鏁版嵁鏌ョ湅鐩稿叧瀛楁---缁撴潫
};
},
- created() {
+ mounted() {
this.getAuthorizedPerson();
this.currentTime = getYearAndMonthAndDays();
this.getDicts("urgency_level").then((response) => {
@@ -597,10 +603,10 @@
this.getDicts("inspection_task_state").then((response) => {
this.inspectionTaskState = this.dictToValue(response.data);
});
- },
- mounted() {
+ this.refreshTable();
this.queryParams.userId = this.userId;
- // this.getPower();
+ },
+ activated() {
this.refreshTable();
},
methods: {
@@ -627,7 +633,7 @@
},
getLookList() {
this.lookTableLoading = true;
- let param = { id: this.lookInfo.id, ...this.lookPage };
+ let param = { id: this.lookInfo.id, ...this.lookPage, inspectionItem: this.entity.inspectionItem };
delete param.total;
selectSampleAndProductByOrderId({ ...param })
.then((res) => {
@@ -651,48 +657,14 @@
editInspection(row) {
this.$refs.editInspectionItem.showDialog(row.id);
},
- // 鍒锋柊椤甸潰
- refreshView() {
- this.getList();
+ // 鏌ョ湅宸ユ椂
+ viewManHour(row) {
+ this.$refs.viewManHourDia.showDialog(row.id, row.insState);
},
// 鏁版嵁鏌ョ湅
handleDataLook(row) {
this.lookInfo = row;
this.getLookList();
- },
- // 鏉冮檺鍒嗛厤
- getPower(radio) {
- let power = JSON.parse(sessionStorage.getItem("power"));
- let inspection = false;
- let connect = false;
- let review = false;
- let claim = false;
- for (var i = 0; i < power.length; i++) {
- if (power[i].menuMethod == "doInsOrder") {
- inspection = true;
- }
- if (power[i].menuMethod == "upPlanUser") {
- connect = true;
- }
- if (power[i].menuMethod == "verifyPlan") {
- review = true;
- }
- if (power[i].menuMethod == "claimInsOrderPlan") {
- claim = true;
- }
- }
- if (!claim) {
- this.componentData.do.splice(3, 1);
- }
- if (!review) {
- this.componentData.do.splice(2, 1);
- }
- if (!connect) {
- this.componentData.do.splice(1, 1);
- }
- if (!inspection) {
- this.componentData.do.splice(0, 1);
- }
},
changeCheckBox(val) {
this.queryParams.userId = val ? 0 : null;
@@ -742,7 +714,7 @@
this.loading = false;
});
},
- changeRowClass({ row, rowIndex }) {
+ rowClassName({ row, rowIndex }) {
if (this.currentTime == row.appointed) {
return "highlight-warning-row-border";
} else if (this.currentTime > row.appointed) {
@@ -794,6 +766,39 @@
this.examine = 1;
this.isReport = 0;
this.currentId = parseInt(row.id);
+ switch (row.isCopper) {
+ case 0:
+ // 鍘熸潗鏂�
+ this.$router.push({
+ path: "/materialOrder/customsInspection", query: {
+ customsInspection: row,
+ active: this.activeFace,
+ currentId: this.currentId,
+ isReport: this.isReport
+ }
+ });
+ break;
+ case null:
+ // 鎴愬搧
+ this.$router.push({
+ path: "/productOrder/add", query: {
+ examine: this.examine,
+ active: this.activeFace,
+ currentId: this.currentId
+ }
+ });
+ break;
+ case 1:
+ // 閾滄潗
+ this.$router.push({
+ path: "/materialOrder/copperOrder", query: {
+ active: this.activeFace,
+ currentId: this.currentId
+ }
+ });
+ break;
+ }
+
},
playOrder(num) {
this.activeFace = num;
@@ -843,6 +848,16 @@
this.state = 3;
this.typeSource = row.typeSource;
this.orderId = row.id;
+ this.$router.push({
+ path: "/inspectionTask/inspection",
+ query: {
+ inspectorList: this.inspectorList,
+ sonLaboratory: this.sonLaboratory,
+ state: this.state,
+ typeSource: this.typeSource,
+ orderId: this.orderId,
+ },
+ });
},
handleConnect(row) {
this.orderId = row.id;
@@ -918,10 +933,6 @@
this.bindCurrentInfo = row;
getBindingProductByProductId({ productId: row.insProductId })
.then((res) => {
- if (res.coe == 201) {
- // this.$message.error('鏈粦瀹氭楠岄」')
- return;
- }
// console.log(res)
this.bindTableData = res.data;
this.bindDialogVisible = true;
@@ -935,10 +946,6 @@
productId: this.bindCurrentInfo.insProductId,
})
.then((res) => {
- if (res.coe == 201) {
- // this.$message.error('鏈粦瀹氭楠岄」')
- return;
- }
// console.log(res)
this.bindAddTableData = res.data;
this.bindAddDialogVisible = true;
@@ -965,10 +972,6 @@
})
.then((res) => {
this.loading = false;
- if (res.code == 201) {
- this.$message.error("缁戝畾澶辫触");
- return;
- }
this.$message.success("缁戝畾鎴愬姛");
this.bindAddDialogVisible = false;
this.getBinding(this.bindCurrentInfo);
@@ -983,17 +986,14 @@
cancelButtonText: "鍙栨秷",
type: "warning",
}).then(async () => {
- delProductTreeByProductId({ productId: row.id })
- .then((res) => {
- if (res.coe == 201) {
- // this.$message.error('鏈粦瀹氭楠岄」')
- return;
- }
- this.getBinding(this.bindCurrentInfo);
- })
- .catch((error) => {
- console.error(error);
- });
+ this.bindTableDataLoading = true
+ delProductTreeByProductId({ productId: row.id }).then((res) => {
+ this.bindTableDataLoading = false
+ this.getBinding(this.bindCurrentInfo);
+ }).catch((error) => {
+ this.bindTableDataLoading = false
+ console.error(error);
+ });
});
},
},
--
Gitblit v1.9.3