From 65f86f41dedbbbb7030e2f37ce3e001bbca4923a Mon Sep 17 00:00:00 2001
From: chengxiangling <291105840@qq.com>
Date: 星期四, 15 五月 2025 13:03:25 +0800
Subject: [PATCH] 查询日历带适用工厂

---
 src/views/mainPlan/sheetMetalOrderManage/index.vue |  139 +++++++++++++++++++++++++++++++++++-----------
 1 files changed, 106 insertions(+), 33 deletions(-)

diff --git a/src/views/mainPlan/sheetMetalOrderManage/index.vue b/src/views/mainPlan/sheetMetalOrderManage/index.vue
index b70e6a4..e7118e0 100644
--- a/src/views/mainPlan/sheetMetalOrderManage/index.vue
+++ b/src/views/mainPlan/sheetMetalOrderManage/index.vue
@@ -8,15 +8,14 @@
       v-show="showSearch"
       label-position="left"
     >
-      <el-row type="flex" justify="left">
-        <el-col :span="12">
+      <el-row :gutter="20">
+        <el-col :span="8">
           <el-form-item
-            :label-width="locale == 'zh' ? '80px' : '160px'"
+            :style="{ width: '100%'  }"
             :label="$t('plan.query.workOrderNo')"
             prop="workOrderNo"
           >
             <el-input
-              :style="{ width: '280px' }"
               v-model="queryParams.workOrderNo"
               :placeholder="`${$t('common.common.placeholder')}${$t(
                 'plan.query.workOrderNo'
@@ -26,14 +25,13 @@
             />
           </el-form-item>
         </el-col>
-        <el-col :span="12">
+        <el-col :span="8">
           <el-form-item
-            :label-width="locale == 'zh' ? '100px' : '200px'"
+            :style="{ width: '100%'  }"
             :label="$t('plan.query.requireTraceID')"
             prop="requireTrackId"
           >
             <el-input
-              :style="{ width: '280px' }"
               v-model="queryParams.requireTrackId"
               :placeholder="`${$t('common.common.placeholder')}${$t(
                 'plan.query.requireTraceID'
@@ -43,16 +41,13 @@
             />
           </el-form-item>
         </el-col>
-      </el-row>
-      <el-row type="flex" justify="left">
-        <el-col :span="12">
+        <el-col :span="8">
           <el-form-item
-            :label-width="locale == 'zh' ? '80px' : '160px'"
+            :style="{ width: '100%'  }"
             :label="$t('plan.query.itemNumber')"
             prop="mainPartNumber"
           >
             <el-input
-              :style="{ width: '280px' }"
               v-model="queryParams.mainPartNumber"
               :placeholder="`${$t('common.common.placeholder')}${$t(
                 'plan.query.itemNumber'
@@ -62,9 +57,11 @@
             />
           </el-form-item>
         </el-col>
-        <el-col :span="12">
+      </el-row>
+      <el-row :gutter="20">
+        <el-col :span="8">
           <el-form-item
-            :label-width="locale == 'zh' ? '100px' : '200px'"
+            :style="{ width: '100%'  }"
             :label="$t('plan.table.delayRiskIdentification')"
             prop="hasDelayRisk"
           >
@@ -80,7 +77,6 @@
             <el-select
               clearable
               v-model="queryParams.hasDelayRisk"
-              style="width: 280px"
             >
               <el-option
                 v-for="item in delayRiskOptions"
@@ -91,10 +87,8 @@
             </el-select>
           </el-form-item>
         </el-col>
-      </el-row>
-      <el-row>
         <el-col
-          :span="24"
+          :span="16"
           style="
             display: flex;
             justify-content: flex-end;
@@ -155,6 +149,13 @@
       @on-checkbox="handleCheckboxChange"
     >
       <template #buttons="{ row }">
+        <el-button
+          type="primary"
+          link
+          @click="handleCheckLevels(row)"
+          v-hasPermi="['ApsPlatOrderPlanManager:requirement:list']"
+          >{{ $t("plan.btns.viewUpperLowerLevels") }}</el-button
+        >
         <el-button
           type="primary"
           link
@@ -255,6 +256,30 @@
         </span>
       </template>
     </el-dialog>
+    <!-- 鏌ョ湅涓婁笅闃� -->
+    <el-dialog
+      :title="$t('plan.title.viewUpperLowerLevels')"
+      v-model="openUpperLowerDialog"
+      width="85%"
+      style="height:90vh; overflow: hidden"
+      append-to-body
+    >
+      <HxlhTable
+        style="width: 100%"
+        :columns="subUpAndDownGridOptions"
+        :data="subUpAndDownList"
+        :loading="loadingSubUpAndDown"
+        :height="heightSub"
+      >
+      </HxlhTable>
+      <template #footer>
+        <span class="dialog-footer">
+          <el-button @click="openUpperLowerDialog = false">{{
+            $t("common.common.close")
+          }}</el-button>
+        </span>
+      </template>
+    </el-dialog>
   </div>
 </template>
 
@@ -266,6 +291,7 @@
 import {
   metalOrderManageList,
   metalOrderManageSubList,
+  metalOrderManageUpAndDownList,
   generatorPlanList,
   planDateList,
 } from "@/api/mainPlan/metalOrderManage.js";
@@ -281,10 +307,13 @@
 const radio = ref(1);
 const customicDate = ref("");
 const openDialog = ref(false);
+const openUpperLowerDialog = ref(false);
 const openBatchDialog = ref(false);
 const subGridOptions = ref([]);
+const subUpAndDownGridOptions = ref([]);
 const subUpdateGridOptions = ref([]);
 const subUpdateCustomGridOptions = ref([]);
+const subUpAndDownList = ref([]);
 const subList = ref([]);
 const subUpdateList = ref([]);
 // const tableRef = ref();
@@ -292,6 +321,7 @@
 const loading = ref(false);
 const loadingUpdateDate = ref(false);
 const loadingGenerateList = ref(false);
+const loadingSubUpAndDown = ref(false);
 const loadingSub = ref(false);
 const showSearch = ref(true);
 const ids = ref([]);
@@ -352,25 +382,25 @@
       {
         title: t("basic.table.requirementTraceabilityID"),
         field: "requireTrackId",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("plan.table.workOrderNo"),
         field: "workOrderNo",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("basic.table.matchQuantity"),
         field: "deductionAmount",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("basic.table.workOrderType"),
         field: "workOrderType",
-        width: 200,
+        width: "auto",
         align: "center",
         formatter: ({ cellValue, row, column }) => {
           if (cellValue) {
@@ -385,31 +415,31 @@
       {
         title: t("plan.table.itemNumber"),
         field: "mainPartNumber",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("plan.table.mainPartDrawingNumber"),
         field: "mainPartDrawingNumber",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("basic.table.mainCustomer"),
         field: "customer",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("plan.table.productionQuantity"),
         field: "productionQuantity",
-        width: 100,
+        width: "auto",
         align: "center",
       },
       {
         title: t("basic.table.applicableFactories"),
         field: "applicableFactories",
-        width: 200,
+        width: 100,
         align: "center",
         formatter: ({ cellValue, row, column }) => {
           if (cellValue) {
@@ -424,31 +454,31 @@
       {
         title: t("plan.table.productionBase"),
         field: "productionBase",
-        width: 100,
+        width: "auto",
         align: "center",
       },
       {
         title: t("plan.table.planStartDay"),
         field: "planStartDay",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("plan.table.planEndDayDate"),
         field: "planEndDay",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("plan.table.workorderCreationTime"),
         field: "orderCreateTime",
-        width: 200,
+        width: "auto",
         align: "center",
       },
       {
         title: t("plan.table.mismatchedProductionQuantity"),
         field: "unmatchedQuantity",
-        width: 100,
+        width: "auto",
         align: "center",
       },
       {
@@ -468,7 +498,7 @@
       },
       {
         title: t("common.common.require"),
-        width: 150,
+        width: "auto",
         fixed: "right",
         slots: { default: "buttons" },
         align: "center",
@@ -608,6 +638,38 @@
         },
       },
     ];
+    subUpAndDownGridOptions.value = [
+      {
+        title: t("plan.table.documentNumber"),
+        field: "documentNumber",
+        align: "center",
+      },
+      {
+        title: t("plan.table.level"),
+        field: "requirementType",
+        align: "center",
+      },
+      {
+        title: t("plan.table.itemNumber"),
+        field: "itemNumber",
+        align: "center",
+      },
+      {
+        title: t("plan.table.planStartDay"),
+        field: "planStartDay",
+        align: "center",
+      },
+      {
+        title: t("plan.table.planEndDay"),
+        field: "planEndDay",
+        align: "center",
+      },
+      {
+        title: t("plan.table.productionQuantity"),
+        field: "productionQuantity",
+        align: "center",
+      },
+    ]
     subUpdateGridOptions.value = [
       // {
       //   title: t("basic.table.requirementID"),
@@ -779,6 +841,17 @@
       loadingSub.value = false;
     });
 }
+function handleCheckLevels(row) {
+  openUpperLowerDialog.value = true;
+  loadingSubUpAndDown.value = true;
+  metalOrderManageUpAndDownList({requireId: row.requireId}).then((res) => {
+    console.log(res,"metalOrderManageUpAndDownList");
+    subUpAndDownList.value = res.rows;
+    loadingSubUpAndDown.value = false;
+  }).catch(() => {
+    loadingSubUpAndDown.value = false;
+  });
+}
 async function hanleBatchUpdateDate() {
   loadingUpdateDate.value = true;
   let planIds = subUpdateList.value.map((item) => {

--
Gitblit v1.9.3