From 92ff846fb659c62037a32b1d8c15eae9df9d9b54 Mon Sep 17 00:00:00 2001
From: zenglf <18502938215@163.com>
Date: 星期一, 18 九月 2023 13:24:30 +0800
Subject: [PATCH] Merge branch 'develop' of http://117.34.109.166:18448/r/vue_mdc_430

---
 src/views/spare/modules/sparePartInventory/SparePart2List.vue |  390 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 390 insertions(+), 0 deletions(-)

diff --git a/src/views/spare/modules/sparePartInventory/SparePart2List.vue b/src/views/spare/modules/sparePartInventory/SparePart2List.vue
new file mode 100644
index 0000000..50d8e89
--- /dev/null
+++ b/src/views/spare/modules/sparePartInventory/SparePart2List.vue
@@ -0,0 +1,390 @@
+<template>
+  <a-card
+    :bordered="false"
+    class="card-area"
+  >
+    <template slot="title">
+      <i
+        class="action-jeecg actionsite2"
+        style="font-size: 18px;"
+      />
+      澶囦欢淇℃伅
+    </template>
+    <!-- 鏌ヨ鍖哄煙 -->
+    <div class="table-page-search-wrapper">
+      <!-- 鎼滅储鍖哄煙 -->
+      <a-form
+        layout="inline"
+        @keyup.enter.native="searchQuery"
+      >
+        <a-row :gutter="24">
+          <a-col
+            :md="8"
+            :sm="8"
+          >
+            <a-form-item label="澶囦欢缂栧彿">
+              <j-input
+                placeholder="璇疯緭鍏ュ浠剁紪鍙锋煡璇�"
+                v-model="queryParam.num"
+              ></j-input>
+            </a-form-item>
+          </a-col>
+          <a-col
+            :md="8"
+            :sm="8"
+          >
+            <a-form-item label="澶囦欢鍚嶇О">
+              <j-input
+                placeholder="璇疯緭鍏ュ浠跺悕绉版煡璇�"
+                v-model="queryParam.name"
+              ></j-input>
+            </a-form-item>
+          </a-col>
+        </a-row>
+      </a-form>
+    </div>
+
+    <!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
+    <div
+      class="table-operator"
+      style="margin-top: 5px"
+    >
+      <a-button
+        type="primary"
+        @click="searchQuery"
+        icon="search"
+      >鏌ヨ
+      </a-button>
+      <a-button
+        @click="searchReset"
+        icon="reload"
+      >閲嶇疆
+      </a-button>
+      <a-button
+        type="primary"
+        icon="download"
+        @click="handleExportXls('澶囦欢搴撳瓨')"
+      >瀵煎嚭
+      </a-button>
+      <a-upload
+        name="file"
+        :showUploadList="false"
+        :multiple="false"
+        :headers="tokenHeader"
+        :action="importExcelUrl"
+        @change="handleImportExcel">
+        <a-button type="primary" icon="import">瀵煎叆</a-button>
+      </a-upload>
+      <a-tag color="#55acee" style="height:15px"></a-tag>
+      搴撳瓨绉帇
+      <a-tag color="#cd201f" style="height:15px"></a-tag>
+      搴撳瓨涓嶈冻
+    </div>
+
+    <a-table
+      ref="table"
+      bordered
+      size="middle"
+      rowKey="id"
+      :columns="columns"
+      :dataSource="dataSource"
+      :pagination="ipagination"
+      :loading="loading"
+      :rowSelection="rowSelection"
+      @change="handleTableChange"
+      :scroll="{ x: 'calc(1500px + 50%)', y: 900 }"
+      :customRow="clickThenSelect"
+      :rowClassName="tableRowClass"
+    >
+    </a-table>
+
+    <a-tabs
+      type="card"
+      defaultActiveKey="1"
+    >
+      <a-tab-pane key="1">
+        <span slot="tab">
+          <a-badge>搴撳瓨鏄庣粏&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a-badge>
+        </span>
+        <div
+          class="table-operator"
+          style="margin-top: 0px"
+        >
+          <spare-part-inventory-list ref="SparePartInventoryList"></spare-part-inventory-list>
+        </div>
+      </a-tab-pane>
+    </a-tabs>
+
+  </a-card>
+</template>
+
+<script>
+import { requestPut, deleteAction, getFileAccessHttpUrl, getAction } from '@/api/manage'
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JInput from '@/components/jeecg/JInput'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+import Tooltip from 'ant-design-vue/es/tooltip'
+import Vue from 'vue'
+import SparePartInventoryList from './SparePartInventoryList'
+
+export default {
+  name: 'SparePart2List.',
+  mixins: [JeecgListMixin],
+  components: {
+    JInput,
+    JEllipsis,
+    SparePartInventoryList,
+    Tooltip
+  },
+  props: {
+    nodeSelected: {
+      type: Object,
+      default: {}
+    }
+  },
+  data() {
+    return {
+      mainId: '',
+      ipagination: {
+        current: 1,
+        pageSize: 5,
+        pageSizeOptions: ['5', '10', '20'],
+        showTotal: (total, range) => {
+          return range[0] + '-' + range[1] + ' 鍏�' + total + '鏉�'
+        },
+        showQuickJumper: true,
+        showSizeChanger: true,
+        total: 0
+      },
+      selectedRowKeys: [],
+      selectionRows: [],
+      //榛樿鎺掑簭
+      isorter: {
+        column: 'num',
+        order: 'asc'
+      },
+
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          align: 'center',
+          customRender: function(t, r, index) {
+            return parseInt(index) + 1
+          },
+          width: 50
+        },
+        {
+          title: '澶囦欢缂栫爜',
+          align: 'center',
+          dataIndex: 'num'
+        },
+        {
+          title: '澶囦欢鍚嶇О',
+          align: 'center',
+          dataIndex: 'name'
+        },
+        {
+          title: '鍨嬪彿',
+          align: 'center',
+          dataIndex: 'model'
+        },
+        {
+          title: '瑙勬牸',
+          align: 'center',
+          dataIndex: 'specification'
+        },
+        {
+          title: '鍒堕�犲晢',
+          align: 'center',
+          dataIndex: 'constructorId_dictText'
+        },
+        {
+          title: '鍗曚綅',
+          align: 'center',
+          dataIndex: 'mainUnitId_dictText'
+        },
+        /*   {
+            title: '杈呭崟浣�',
+            align: "center",
+            dataIndex: 'auxiliaryUnitId_dictText',
+          }, */
+        {
+          title: '鎬绘暟閲�',
+          align: 'center',
+          dataIndex: 'totalMainQuantity'
+        },
+        /*  {
+           title: '鎬昏緟鏁伴噺',
+           align: "center",
+           dataIndex: 'totalAuxiliaryQuantity',
+         }, */
+        {
+          title: '鏈夋晥鏈�',
+          align: 'center',
+          dataIndex: 'validityPeriod'
+        },
+        {
+          title: '鏈夋晥鍗曚綅',
+          align: 'center',
+          dataIndex: 'validityPeriodUnitId_dictText'
+        },
+        {
+          title: '搴撳瓨涓婇檺鍊�',
+          align: 'center',
+          dataIndex: 'inventoryUpperLimit'
+        },
+        {
+          title: '搴撳瓨涓嬮檺鍊�',
+          align: 'center',
+          dataIndex: 'inventoryLowerLimit'
+        },
+        {
+          title: '缁忔祹璁㈣揣閲�',
+          align: 'center',
+          dataIndex: 'economicOrderQuantity'
+        },
+        {
+          title: '閲囪喘鎻愬墠鏈�',
+          align: 'center',
+          dataIndex: 'purchaseLeadTime'
+        }
+      ],
+      url: {
+        list: '/spare/sparePart/sparePartInventoryList',
+        importUrl: '/spare/SparesPartInventory/importExcel',
+        exportXlsUrl: '/spare/sparePart/exportXls',
+      },
+      //鏂板銆佺紪杈戙�佸垹闄ゃ�佹壒閲忓垹闄ゆ搷浣滄敼鍙樻暟鎹悗鍒锋柊鍏宠仈鐨勭粍浠剁殑鐩戝惉灞炴��
+      alterFlag: ''
+    }
+  },
+
+  computed: {
+    rowSelection() {
+      return {
+        type: 'radio',
+        onChange: (selectedRowKeys, selectedRows) => {
+          this.selectedRowKeys = selectedRowKeys
+          this.onSelectChange(selectedRowKeys, selectedRows)
+        },
+        selectedRowKeys: this.selectedRowKeys
+      }
+    },
+    importExcelUrl: function() {
+      console.log(this.mainId)
+      /* return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; */
+      return `${window._CONFIG['domianURL']}/${this.url.importUrl}/${this.mainId}`
+    }
+  },
+  methods: {
+
+    clickThenSelect(record) {
+      return {
+        on: {
+          click: () => {
+            this.onSelectChange(record.id.split(','), [record])
+          }
+        }
+      }
+    },
+
+    onSelectChange(selectedRowKeys, selectionRows) {
+      if (selectedRowKeys.length == 1) {
+        this.$refs.SparePartInventoryList.sparePartId = selectedRowKeys[0]
+        this.mainId = selectedRowKeys[0]
+      } else {
+        this.$refs.SparePartInventoryList.sparePartId = '-1'
+      }
+      this.selectedRowKeys = selectedRowKeys
+      this.selectionRows = selectionRows
+    },
+
+    //绂佺敤鐘舵�佹牱寮�
+    tableRowClass(record, index) {
+      if (record.totalMainQuantity < record.inventoryLowerLimit) {
+        return 'downLimit'
+      } else if (record.totalMainQuantity > record.inventoryUpperLimit) {
+        return 'upLimit'
+      }
+
+    },
+    searchReset() {
+      this.queryParam = {}
+      if (this.nodeSelected.key != -1) {
+        this.queryParam.sparePartCategoryId = this.nodeSelected.key
+      }
+      this.selectedRowKeys = []
+      this.selectionRows = []
+      this.$refs.SparePartInventoryList.sparePartId = '-1'
+      this.loadData(1)
+    },
+
+    searchQuery() {
+      this.selectedRowKeys = []
+      this.selectionRows = []
+      this.$refs.SparePartInventoryList.sparePartId = '-1'
+      this.loadData(1)
+    }
+  },
+  watch: {
+    alterFlag() {
+      this.$bus.$emit('queryTreeData')
+    },
+    nodeSelected() {
+      this.queryParam = {}
+      if (this.nodeSelected.key != -1) {
+        this.queryParam.sparePartCategoryId = this.nodeSelected.key
+      }
+      this.selectedRowKeys = []
+      this.selectionRows = []
+      this.$refs.SparePartInventoryList.sparePartId = '-1'
+      this.loadData(1)
+    }
+  },
+  created() {
+    this.queryParam = {}
+    this.queryParam.sparePartCategoryId = this.nodeSelected.key
+    this.selectedRowKeys = []
+    this.selectionRows = []
+    this.loadData(1)
+  }
+}
+</script>
+<style lang="less">
+@import '~@assets/less/common.less';
+
+.frozenRowClass {
+  color: #c9c9c9;
+}
+
+.success {
+  color: green;
+}
+
+.error {
+  color: red;
+}
+
+.yellow {
+  color: yellow;
+}
+
+.downLimit {
+  color: red;
+}
+
+.upLimit {
+  color: blue;
+}
+
+
+.fontweight {
+  font-weight: bold;
+}
+
+.ant-table-tbody .red {
+  background-color: red !important
+}
+</style>
\ No newline at end of file

--
Gitblit v1.9.3