From bb6ca60d634fa9b844583feb4a37bb7f984ab132 Mon Sep 17 00:00:00 2001 From: zzq <a13193816592@163.com> Date: 星期四, 28 九月 2023 15:18:51 +0800 Subject: [PATCH] "报表路由跳转,api调用" --- src/views/reportForm/locationReport/index.vue | 295 +++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 188 insertions(+), 107 deletions(-) diff --git a/src/views/reportForm/locationReport/index.vue b/src/views/reportForm/locationReport/index.vue index 39736e4..63d46c0 100644 --- a/src/views/reportForm/locationReport/index.vue +++ b/src/views/reportForm/locationReport/index.vue @@ -1,14 +1,18 @@ +<!-- 浣嶇疆鎶ヨ〃 --> <template> <div class="rightContent"> <div class="top"> - <SearchCommonView - :add-title="'鏂板缓'" - :showAdd="false" - :placeholder="'璇疯緭鍏ュ弬鑰�'" - :amount-view="false" - @addCommonClick="addBtnClick" - @searchClick="getList" - /> + <div> + <SearchCommonView + :add-title="'鏂板缓'" + :showAdd="true" + :placeholder="'璇疯緭鍏ュ弬鑰�'" + :amount-view="false" + @addCommonClick="addBtnClick" + @searchClick="getList" + :isDisabled="true" + /> + </div> </div> <div class="list-view"> <TableCommonView @@ -16,20 +20,44 @@ :table-list="tableList" @selTableCol="selTableCol" @tableRowClick="tableRowClick" - ></TableCommonView> + :showSummary="true" + > + <template slot="tableButton"> + <el-table-column label="鎿嶄綔" width="210" align="center"> + <template slot-scope="scope"> + <span @click="handleHistoryClick(scope.row)"> + <i class="el-icon-refresh-left"></i> + <span>鍘嗗彶</span> + </span> + <span @click="handleAddGoods(scope)" class="margin_left_5px"> + <i class="el-icon-refresh"></i> + <span>琛ヨ揣</span> + </span> + </template> + </el-table-column> + </template> + </TableCommonView> <div class="btn-pager"> - <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" /> + <PagerView + class="page" + :pager-options="pagerOptions" + v-on="pagerEvents" + /> </div> </div> <!-- 缂栬緫 --> - <AddOverviewDialog v-if="editConfig.visible" :edit-common-config="editConfig" :add-name="this.$route.params.name" /> + <AddOverviewDialog + v-if="editConfig.visible" + :edit-common-config="editConfig" + :add-name="this.$route.params.name" + /> </div> </template> <script> -import pageMixin from "@/components/makepager/pager/mixin/pageMixin" -import { getProductOperatonList } from "@/api/product/product" -import AddOverviewDialog from "@/views/overview/AddOverviewDialog" +import pageMixin from "@/components/makepager/pager/mixin/pageMixin"; +import { getLocationData } from "@/api/locationApi/locationApi"; +import AddOverviewDialog from "@/views/overview/AddOverviewDialog"; export default { name: "InventoryReport", @@ -40,25 +68,58 @@ data() { return { tableList: {}, - showcol: ["鐘舵��"], + showcol: ["瀛樺偍绫诲埆", "浜у搧绫诲埆", "棰勭暀鏁伴噺", "浠峰��"], + // countcol: [ + // { label: "鍦ㄥ簱鏁伴噺", unit: "" }, + // { label: "棰勭暀鏁伴噺", unit: "" }, + // { label: "浠峰��", unit: "锟�" }, + // ], + countcol: ["鍦ㄥ簱鏁伴噺", "棰勭暀鏁伴噺", "浠峰��"], + testArr: [ + { + product: "HC/閿�鍞尯/b鍖�", + category: "涓濈桓鍒跺搧/鐪熶笣鐫¤", + cost: "800.00", + totalPrices: "2000.00", + inStore: "00.00", + availableStore: "200.00", + inStorage: "00.00", + toStore: 65432.0, + forecast: "0.00", + unit: "浠�", + }, + { + product: "HC閿�鍞尯/A鍖�", + category: "涓濈桓鍒跺搧/閲戜笣鐫¤", + cost: "9980.00", + totalPrices: "00.00", + inStore: "00.00", + availableStore: "20.00", + inStorage: "0.00", + toStore: 32618.0, + forecast: "0.00", + unit: "浠�", + }, + ], searchOptions: [], commonDetail: { visible: false, title: "鏂板缓", - infomation: {} + infomation: {}, }, editConfig: { visible: false, title: "鏂板缓", - infomation: {} + infomation: {}, }, productId: this.$route.params.id, - productName: this.$route.params.name - } + productName: this.$route.params.name, + metaTitle: this.$route.meta.title, + }; }, created() { - this.setTable() - this.getData() + this.setTable(); + this.getData(); }, methods: { setTable() { @@ -66,145 +127,165 @@ tableInfomation: [], selectBox: true, showcol: this.showcol, + countcol: this.countcol, allcol: [], - tableColumn: this.setTableColumn(this.showcol) - } - let allcol = [] + tableColumn: this.setTableColumn(this.showcol), + }; + let allcol = []; for (let i = 0; i < this.tableList.tableColumn.length; i++) { if (!this.tableList.tableColumn[i].default) { - const label = this.tableList.tableColumn[i].label - allcol.push(label) + const label = this.tableList.tableColumn[i].label; + allcol.push(label); } } - this.tableList.allcol = allcol + this.tableList.allcol = allcol; }, setTableColumn(showcol) { let tableColumn = [ { - label: "鏃ユ湡", - prop: "operationDate", - isShowColumn: true, + label: "浣嶇疆", + prop: "locationName", default: true, - date: true - }, - { - label: "鍗曞彿", - prop: "number", isShowColumn: true, - default: true + }, + + { + label: "瀛樺偍绫诲埆", + prop: "category", + default: false, + isShowColumn: showcol.includes("瀛樺偍绫诲埆"), }, { label: "浜у搧", prop: "productName", + default: true, isShowColumn: true, - default: true }, { - label: "浠�", - prop: "from", - isShowColumn: true, - default: true + label: "浜у搧绫诲埆", + prop: "productTypeName", + default: false, + isShowColumn: showcol.includes("浜у搧绫诲埆"), }, { - label: "鑷�", - prop: "to", - isShowColumn: true, - default: true - }, - { - label: "鏁伴噺", + label: "鍦ㄥ簱鏁伴噺", prop: "amount", isShowColumn: true, - default: true + default: true, + unit: "", + }, + { + label: "棰勭暀鏁伴噺", + prop: "availableStore", + isShowColumn: true, + default: true, + unit: "", }, { label: "鍗曚綅", prop: "unit", - isShowColumn: true, - default: true - }, - { - label: "鐘舵��", - prop: "status", width: 120, - isShowColumn: showcol.includes("鐘舵��"), default: false, - status: true, - isCallMethod: true, - getCallMethod: this.getStatus + isShowColumn: showcol.includes("浠峰��"), }, { - label: "瀹屾垚鑰�", - prop: "admin", - isShowColumn: showcol.includes("瀹屾垚鑰�"), - default: false - } - ] - return tableColumn + label: "浠峰��", + prop: "value", + width: 120, + default: false, + isShowColumn: showcol.includes("浠峰��"), + unit: "锟�", + }, + ]; + return tableColumn; }, selTableCol(val) { - this.showcol = val - this.tableList.tableColumn = this.setTableColumn(val) + this.showcol = val; + this.tableList.tableColumn = this.setTableColumn(val); }, // 璇锋眰鏁版嵁 async getData() { - await getProductOperatonList({ - productId: this.productId, + await getLocationData({ page: this.pagerOptions.currPage, - pageSize: this.pagerOptions.pageSize + pageSize: this.pagerOptions.pageSize, }).then((res) => { if (res.code === 200) { - const list = res.data.map((item) => { - return { - ...item, - from: item.fromLocation.name, - to: item.toLocation.name, - productName: this.productName - } - }) - this.tableList.tableInfomation = list || [] - this.pagerOptions.totalCount = res.total + const list = res.data; + this.tableList.tableInfomation = list || []; + this.pagerOptions.totalCount = res.total; } - }) + }); }, + // 鎼滅储 getList(val) { - console.log(val) + console.log(val); }, // 琛岀偣鍑� tableRowClick(row) { - console.log(row) - this.editConfig.visible = true - this.editConfig.title = "鏌ョ湅" - this.editConfig.infomation = { ...row } + console.log(row); + // this.editConfig.visible = true; + this.editConfig.title = "鏌ョ湅"; + this.editConfig.infomation = { ...row }; }, // 鏂板缓 addBtnClick() { - this.editConfig.visible = true - this.editConfig.title = "鏂板缓" + this.editConfig.visible = true; + this.editConfig.title = "鏂板缓"; + this.getData(); }, // 鐘舵�� getStatus(val) { - return val === 1 ? "鑽夌" : val === 3 ? "灏辩华" : "瀹屾垚" - } - } -} + return val === 1 ? "鑽夌" : val === 3 ? "灏辩华" : "瀹屾垚"; + }, + // 鍘嗗彶 + handleHistoryClick(row) { + this.$router.push({ + name: "inboundOutboundDetail", + params: { + name: this.metaTitle, + pageName:"鎶ヨ〃", + product: { + page: this.pagerOptions.currPage, + pageSize: this.pagerOptions.pageSize, + produceId: row.produceId, + productName: row.productName, + unit: row.unit, + }, + paramsKey: { + amount: "amount", + productName:"productName", + status: "status", + contactedName: "contactedName", + date: "date", + fromLocation: "fromLocation", + number: "number", + toLocation: "toLocation", + unit: "unit", + }, + }, + }); + }, + // 琛ヨ揣 + handleAddGoods() {}, + }, +}; </script> <!-- Add "scoped" attribute to limit CSS to this component only --> <style lang="scss" scoped> -// .rightContent { -// height: 100%; -// background: #e6ecf2; -// padding: 10px; -// .top { -// margin-bottom: 20px; -// height: 60px; -// background: #fff; -// border-radius: 8px; -// } -// .list-view { -// height: calc(100% - 120px); -// } -// } +.rightContent { + height: 100%; + background: #e6ecf2; + padding: 10px; + // .top { + // margin-bottom: 20px; + // height: 60px; + // background: #fff; + // border-radius: 8px; + // } + .list-view { + height: calc(100% - 150px); + } +} </style> -- Gitblit v1.8.0