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>搴撳瓨鏄庣粏 </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