From 5ecb7958c96d3f0b6d47b79aff7eb306c2cf690f Mon Sep 17 00:00:00 2001 From: charles <981744753@qq.com> Date: 星期二, 06 八月 2024 11:16:58 +0800 Subject: [PATCH] gitlab上面的wms转移到公司git --- src/views/reportForm/outboundDetail/index.vue | 183 +++++++++++++++++++++++++++++++++------------ 1 files changed, 132 insertions(+), 51 deletions(-) diff --git a/src/views/reportForm/outboundDetail/index.vue b/src/views/reportForm/outboundDetail/index.vue index 02183b3..c523241 100644 --- a/src/views/reportForm/outboundDetail/index.vue +++ b/src/views/reportForm/outboundDetail/index.vue @@ -1,40 +1,68 @@ <template> <div class="rightContent"> <div class="top"> - <SearchCommonView - :add-title="'鏂板缓'" - :showAdd="false" - :placeholder="'璇锋牴鎹崟鍙枫�佷骇鍝併�佷笟鍔$被鍨嬭繘琛屾悳绱�'" - :amount-view="false" - @addCommonClick="addBtnClick" - @searchClick="getList" - /> + <SearchCommonView :add-title="'鏂板缓'" :showAdd="false" :placeholder="'璇锋牴鎹崟鍙枫�佷骇鍝併�佷笟鍔$被鍨嬭繘琛屾悳绱�'" :amount-view="false" :showDownload="true" + @downloadClick="downHttpClick" @addCommonClick="addBtnClick" @searchClick="getList" /> </div> <div class="list-view"> <div class="table"> - <TableCommonView - ref="tableListRef" - :table-list="tableList" - @selTableCol="selTableCol" - @tableRowClick="tableRowClick" - ></TableCommonView> + <TableCommonView ref="tableListRef" :table-list="tableList" @selTableCol="selTableCol" + @tableRowClick="tableRowClick"> + <template slot="tableButton"> + <el-table-column label="鏁伴噺" prop='amount'> + <el-table-column v-for="unit in unitList" :label="unit.name" prop='amount' min="90"> + <template slot-scope="scope"> + {{getUnitValue(scope.row.amountMoreUnits,unit.name,scope.row.amount,scope.row.unit)}} + </template> + </el-table-column> + <!--<el-table-column label="浠�" prop='amount' min="90"> + <template slot-scope="scope"> + {{getUnitValue(scope.row.amountMoreUnits,'浠�',scope.row.amount,scope.row.unit)}} + </template> + </el-table-column> + <el-table-column label="鍖�" prop='amount' min="90"> + <template slot-scope="scope"> + {{getUnitValue(scope.row.amountMoreUnits,'鍖�',scope.row.amount,scope.row.unit)}} + </template> + </el-table-column> + <el-table-column label="绫虫暟" prop='amount' min="90"> + <template slot-scope="scope"> + {{getUnitValue(scope.row.amountMoreUnits,'绫虫暟',scope.row.amount,scope.row.unit)}} + </template> + </el-table-column> + <el-table-column label="閲嶉噺" prop='amount' min="90"> + <template slot-scope="scope"> + {{getUnitValue(scope.row.beginMoreUnitsArr,'閲嶉噺',scope.row.beginAmount,scope.row.unit)}} + </template> + </el-table-column>--> + </el-table-column> + </template> + </TableCommonView> </div> <div class="btn-pager"> <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 :workType="workType" + 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 { getHistory } from "@/api/reportForm/inventoryRwport" +import { getHistory,getOperationInfo } from "@/api/reportForm/inventoryRwport" // import { getProductOperatonList } from "@/api/product/product" -import AddOverviewDialog from "@/views/reportForm/outboundDetail/AddOutboundDetailDialog.vue" +// import AddOverviewDialog from "@/views/reportForm/outboundDetail/AddOutboundDetailDialog.vue" +import AddOverviewDialog from "@/views/overview/AddOverviewDialog" import { getDataByType } from "@/api/data" +import { downloadHistory } from "@/api/downFile" +import FileSaver from 'file-saver' +import _ from 'lodash' +import { getUnitInfo } from "@/api/basic/standard"; export default { name: "outboundDetail", props: {}, @@ -43,6 +71,8 @@ computed: {}, data() { return { + unitList:[], + workType:2, tableList: {}, showcol: ["鐘舵��"], searchOptions: [], @@ -57,7 +87,7 @@ infomation: {} }, params: {}, - baseOperationTypeList:getDataByType("baseOperationTypeTwo"), + baseOperationTypeList: getDataByType("baseOperationTypeTwo"), } }, created() { @@ -72,14 +102,51 @@ sessionStorage.setItem("paramsList", JSON.stringify(params)) } this.params = params - console.log(this.params,'====111') - this.getData() + this.getData(); + this.getUnitInfo(); }, // 椤甸潰閿�姣佷箣鍓� beforeDestroy() { sessionStorage.removeItem("paramsList") }, methods: { + async getUnitInfo(){ + const { code,data }=await getUnitInfo(); + if(code===200){ + this.unitList=data; + } + }, + getUnitValue(list,val,num,unit){ + let string='--' + if(list){ + if(list.length>0){ + for(let i in list){ + if(list[i].unit==val){ + string=list[i].amount + break; + } + } + } + } + if(unit==val){ + string=num + } + return string + }, + // 涓嬭浇 + downHttpClick: _.debounce(function(){ + downloadHistory({ + page: this.pagerOptions.currPage, + pageSize: this.pagerOptions.pageSize, + keyword:this.keyword, + baseOperationType:2 + }).then(res => { + if (res) { + FileSaver.saveAs(res, '鍑哄簱鏄庣粏鎶ヨ〃.xlsx'); + this.$message.success("涓嬭浇鎴愬姛锛�"); + } + }) + }, 1000), setTable() { this.tableList = { tableInfomation: [], @@ -126,11 +193,11 @@ }, { label: "涓氬姟绫诲瀷", - prop: "baseOperationType", + prop: "operationTypeName", isShowColumn: true, default: true, - conversion: true, - getStatus: this.getBaseOperationTypeList + // conversion: true, + // getStatus: this.getBaseOperationTypeList }, { label: "浠�", @@ -144,7 +211,7 @@ isShowColumn: true, default: true }, - { + /*{ label: "鏁伴噺", prop: "amount", isShowColumn: true, @@ -155,7 +222,7 @@ prop: "unit", isShowColumn: true, default: true - }, + },*/ { label: "閲嶉噺", prop: "weight", @@ -185,7 +252,7 @@ this.showcol = val this.tableList.tableColumn = this.setTableColumn(val) }, - getBaseOperationTypeList(val){ + getBaseOperationTypeList(val) { let string = "--" if (val) { for (let i in this.baseOperationTypeList) { @@ -200,53 +267,67 @@ async getData() { if (this.params.name === "鎶ヨ〃") { await getHistory({ - keyWord:this.params.keyWord, - produceId:this.params.produceId, - unit:this.params.unit, - productName:this.params.productName, + keyWord: this.params.keyWord, + produceId: this.params.produceId, + unit: this.params.unit, + productName: this.params.productName, page: this.pagerOptions.currPage, pageSize: this.pagerOptions.pageSize }).then((res) => { - if (res.code === 200) { - res.data.map((item)=>{ - let dateObject = new Date(item.date); - let formattedDateString = dateObject.toISOString().split('T')[0]; - item.date=formattedDateString + if (res.code === 200&&res.data) { + res.data.map((item) => { + let dateObject = new Date(item.date); + let formattedDateString = dateObject.toISOString().split('T')[0]; + item.date = formattedDateString }) - this.tableList.tableInfomation = res.data - this.pagerOptions.totalCount = res.total + this.tableList.tableInfomation = res.data||[] + }else{ + this.tableList.tableInfomation = res.data||[] } + this.pagerOptions.totalCount = res.total }) } else { await getHistory({ - keyWord:this.params.keyWord, - baseOperationType:2, + keyWord: this.params.keyWord, + baseOperationType: 2, page: this.pagerOptions.currPage, pageSize: this.pagerOptions.pageSize }).then((res) => { - if (res.code === 200) { - res.data.map((item)=>{ - let dateObject = new Date(item.date); - let formattedDateString = dateObject.toISOString().split('T')[0]; - item.date=formattedDateString + if (res.code === 200&&res.data) { + res.data.map((item) => { + if(item.status===""){ + item.status=4 + } + let dateObject = new Date(item.date); + let formattedDateString = dateObject.toISOString().split('T')[0]; + item.date = formattedDateString }) - this.tableList.tableInfomation = res.data?res.data:[] - this.pagerOptions.totalCount = res.total + this.tableList.tableInfomation = res.data || [] + }else{ + this.tableList.tableInfomation = res.data || [] } + this.pagerOptions.totalCount = res.total }) } }, // 鎼滅储 getList(val) { - this.params.keyWord=val; + this.params.keyWord = val; this.getData() }, // 琛岀偣鍑� - tableRowClick(row) { - console.log(row,"鐪嬬湅row") + async tableRowClick(row) { + await getOperationInfo(row.operationId).then(({data})=>{ + data.details.map((item) => { + item.fromLocationId = item.fromLocation.name; + item.toLocationId = item.toLocation.name; + item.relAmount=item.amount; + item.amount=item.stockAmount; + }); + this.editConfig.infomation = { ...data } + }); this.editConfig.visible = true this.editConfig.title = "鏌ョ湅" - this.editConfig.infomation = { ...row } }, // 鏂板缓 addBtnClick() { @@ -255,7 +336,7 @@ }, // 鐘舵�� getStatus(val) { - return val === 1 ? "鑽夌" : val === 3 ? "灏辩华" : "瀹屾垚" + return val === 1 ? "鑽夌" : val === 3 ? "灏辩华" : val === 4 ? "瀹屾垚" : val === 5 ? "宸插彇娑�":"" } } } -- Gitblit v1.8.0