lxf il y a 1 an
Parent
commit
5a3a736690
1 fichiers modifiés avec 89 ajouts et 50 suppressions
  1. 89 50
      src/views/production/warehouse/check/index.vue

+ 89 - 50
src/views/production/warehouse/check/index.vue

@@ -1,52 +1,68 @@
 <template>
-  <div>
-    <el-card class="box-card">
-      <el-tabs v-model="activeName" type="card" @tab-change="changeActiveName">
-        <el-tab-pane label="盘点单" name="first">
-          <byTable
-            :source="sourceList.data"
-            :pagination="sourceList.pagination"
-            :config="config"
-            :loading="loading"
-            :searchConfig="searchConfig"
-            highlight-current-row
-            :action-list="[
-              {
-                text: '盘点登记',
-                action: () => clickModal(),
-              },
-            ]"
-            @get-list="getList"
-            @clickReset="clickReset">
-          </byTable>
-        </el-tab-pane>
-        <el-tab-pane label="盘点明细" name="second">
-          <byTable
-            :source="sourceListTwo.data"
-            :pagination="sourceListTwo.pagination"
-            :config="configTwo"
-            :loading="loading"
-            :searchConfig="searchConfigTwo"
-            highlight-current-row
-            :action-list="[
-              {
-                text: '盘点登记',
-                action: () => clickModal(),
-              },
-            ]"
-            @get-list="getListTwo"
-            @clickReset="clickResetTwo">
-            <template #quantity="{ item }">
-              <div>{{ calculationNum(item) }}</div>
-            </template>
-            <template #money="{ item }">
-              <div>{{ calculationMoney(item) }}</div>
-            </template>
-          </byTable>
-        </el-tab-pane>
-      </el-tabs>
-    </el-card>
-  </div>
+  <el-card class="box-card">
+    <el-tabs v-model="activeName" type="card" @tab-change="changeActiveName">
+      <el-tab-pane label="盘点单" name="first">
+        <byTable
+          :source="sourceList.data"
+          :pagination="sourceList.pagination"
+          :config="config"
+          :loading="loading"
+          :searchConfig="searchConfig"
+          highlight-current-row
+          :action-list="[
+            {
+              text: '盘点登记',
+              action: () => clickModal(),
+            },
+            {
+              text: '导出Excel',
+              action: () => clickDerive(),
+            },
+          ]"
+          @get-list="getList"
+          @clickReset="clickReset">
+        </byTable>
+      </el-tab-pane>
+      <el-tab-pane label="盘点明细" name="second">
+        <byTable
+          :source="sourceListTwo.data"
+          :pagination="sourceListTwo.pagination"
+          :config="configTwo"
+          :loading="loading"
+          :searchConfig="searchConfigTwo"
+          highlight-current-row
+          :action-list="[
+            {
+              text: '盘点登记',
+              action: () => clickModal(),
+            },
+          ]"
+          @get-list="getListTwo"
+          @clickReset="clickResetTwo">
+          <template #quantity="{ item }">
+            <div>{{ calculationNum(item) }}</div>
+          </template>
+          <template #money="{ item }">
+            <div>{{ calculationMoney(item) }}</div>
+          </template>
+        </byTable>
+      </el-tab-pane>
+    </el-tabs>
+
+    <el-dialog title="导出Excel文件" v-if="openDerive" v-model="openDerive" width="400">
+      <el-form :model="formData.data" :rules="rules" ref="derive">
+        <el-form-item label="仓库" prop="warehouseId">
+          <el-select v-model="formData.data.warehouseId" placeholder="仓库" clearable style="width: 100%">
+            <el-option v-for="item in warehouseList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" />
+          </el-select>
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <el-button @click="openDerive = false" size="large">关 闭</el-button>
+        <el-button type="primary" @click="clickSubmit" v-preReClick>确 认</el-button>
+      </template>
+    </el-dialog>
+  </el-card>
 </template>
 
 <script setup>
@@ -67,7 +83,7 @@ const sourceList = ref({
     pageNum: 1,
     pageSize: 10,
     departmentId: "",
-    warehouseName: "",
+    warehouseId: "",
     status: "",
     beginTime: "",
     endTime: "",
@@ -82,7 +98,7 @@ const sourceListTwo = ref({
     bomSpecCode: "",
     bomSpecName: "",
     departmentId: "",
-    warehouseName: "",
+    warehouseId: "",
     status: "",
     beginTime: "",
     endTime: "",
@@ -397,6 +413,29 @@ const calculationMoney = (row) => {
     return 0;
   }
 };
+const openDerive = ref(false);
+const formData = reactive({
+  data: {
+    warehouseId: "",
+  },
+});
+
+const rules = ref({
+  warehouseId: [{ required: true, message: "请选择仓库", trigger: "change" }],
+});
+const clickDerive = () => {
+  formData.data.warehouseId = "";
+  openDerive.value = true;
+};
+const clickSubmit = () => {
+  proxy.$refs.derive.validate((valid) => {
+    if (valid) {
+      proxy.postFile("/check/inventoryExportExcel", { id: formData.data.warehouseId }).then((res) => {
+        proxy.downloadFile(res, "盘点.xlsx");
+      });
+    }
+  });
+};
 </script>
 
 <style lang="scss" scoped>