From d492850f1cc64ddcfaf43798af9c76c2505414fd Mon Sep 17 00:00:00 2001 From: renkang <8417338+k94314517@user.noreply.gitee.com> Date: 星期五, 24 一月 2025 18:24:31 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1 --- admin/src/views/stock/out.vue | 112 ++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 69 insertions(+), 43 deletions(-) diff --git a/admin/src/views/stock/out.vue b/admin/src/views/stock/out.vue index 07aca66..c94aedf 100644 --- a/admin/src/views/stock/out.vue +++ b/admin/src/views/stock/out.vue @@ -2,20 +2,24 @@ <div class="main_app"> <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear" /> <div class="mt20"> - <el-button type="primary" @click="handleEdit()" v-permissions="['business:ywpatrolline:create']">鏂板缓鍑哄簱鍗�</el-button> - <el-button @click="handleEx()" v-permissions="['business:ywpatrolline:create']">瀵煎嚭</el-button> + <el-button type="primary" @click="handleEdit()" v-permissions="['business:ywoutinboundrecord:create']">鏂板缓鍑哄簱鍗�</el-button> + <el-button @click="handleEx()" v-permissions="['business:ywoutinboundrecord:exportExcel']">瀵煎嚭</el-button> </div> <el-table v-loading="loading" :data="list" stripe> - <el-table-column prop="platformName" label="鍑哄簱鍗曞彿" min-width="120" show-overflow-tooltip /> - <el-table-column prop="platformGroupName" label="鍑哄簱浠撳簱" min-width="100" show-overflow-tooltip /> - <el-table-column prop="carCodeFront" label="鍑哄簱绫诲瀷" min-width="100" show-overflow-tooltip /> - <el-table-column prop="carCodeBack" label="鍑哄簱鏃ユ湡" min-width="110" show-overflow-tooltip /> - <el-table-column prop="param1" label="鍑哄簱鏁伴噺" min-width="120" show-overflow-tooltip /> - <el-table-column prop="param2" label="鎿嶄綔浜�" min-width="90" show-overflow-tooltip /> - <el-table-column prop="workTime" label="鎿嶄綔鏃堕棿" min-width="140" show-overflow-tooltip /> + <el-table-column prop="code" label="鍑哄簱鍗曞彿" min-width="120" show-overflow-tooltip /> + <el-table-column prop="warehouseName" label="鍑哄簱浠撳簱" min-width="100" show-overflow-tooltip /> + <el-table-column prop="typeName" label="鍑哄簱绫诲瀷" min-width="100" show-overflow-tooltip /> + <el-table-column prop="doneDate" label="鍑哄簱鏃ユ湡" min-width="110" show-overflow-tooltip /> + <el-table-column label="鍑哄簱鏁伴噺" min-width="140"> + <template v-slot="{ row }"> + <div v-for="item in row.recordList">{{ item.materialName }}[{{ item.materialCode }}]*{{ item.stock }}{{ item.materialUnitName }}</div> + </template> + </el-table-column> + <el-table-column prop="createUserName" label="棰嗙敤浜�" min-width="90" show-overflow-tooltip /> + <el-table-column prop="createDate" label="鎿嶄綔鏃堕棿" min-width="140" show-overflow-tooltip /> <el-table-column prop="workTime" label="鎿嶄綔" min-width="80" show-overflow-tooltip> <template v-slot="{ row }"> - <span @click="handleDetail(row)" class="primaryColor pointer">鏌ョ湅璇︽儏</span> + <span @click="handleDetail(row)" v-permissions="['business:ywoutinboundrecord:query']" class="primaryColor pointer">鏌ョ湅璇︽儏</span> </template> </el-table-column> </el-table> @@ -24,19 +28,21 @@ </div> <!-- --> <OutEdit v-if="isShowEdit" @close="isShowEdit = false" @success="getList" ref="OutEditRef" /> - <OutDetail v-if="isShowDetail" ref="OutDetailRef" /> + <OutDetail v-if="isShowDetail" ref="InDetailRef" /> </div> </template> <script> import Pagination from '@/components/common/Pagination' import QueryForm from '@/components/common/QueryForm' -import OutEdit from './components/OutEdit' -import OutDetail from './components/OutDetail' +import OutEdit from './components/OutEdit.vue' +import OutDetail from './components/OutDetail.vue' import dayjs from 'dayjs' import duration from 'dayjs/plugin/duration' dayjs.extend(duration) -import { platformLogPage, getPlatformGroupList } from '@/api' +import { ywOutinboundPage } from '@/api' +import { fetchList as getStoreList } from '@/api/ywWarehouse' +import { StoreTypeOps, rules } from './components/config' export default { components: { Pagination, @@ -54,26 +60,34 @@ page: 1, total: 0 }, - filters: {}, - list: [{}], + filters: { + inOut: 1 + }, + StoreTypeOps, + list: [], total: 0, queryFormConfig: { formItems: [ { - filed: 'carCodeFront', + filed: 'code', type: 'input', label: '鍑哄簱鍗曞彿', }, { - filed: 'platformGroupId', + filed: 'warehouseId', type: 'select', label: '鎵�鍦ㄤ粨搴�', + labelCode: 'name', + valueCode: 'id', options: [] }, { - filed: 'carCodeFront', - type: 'input', + filed: 'type', + type: 'select', label: '鍑哄簱绫诲瀷', + labelCode: 'name', + valueCode: 'id', + options: StoreTypeOps.filter(i => i.type == 0) }, ], online: true @@ -81,8 +95,8 @@ } }, created() { - // this.getList() - // this.getGroupList() + this.getList() + this.initData() }, methods: { handleSub() { @@ -98,45 +112,55 @@ this.$refs.OutEditRef.isShowModal = true }) }, - handleDetail() { + handleDetail(row) { this.isShowDetail = true this.$nextTick(() => { - this.$refs.OutDetailRef.visible = true + this.$refs.InDetailRef.visible = true + this.$refs.InDetailRef.getDetail(row.id) }) }, - handleEx() { }, - getGroupList() { - getPlatformGroupList({ queryData: 0, queryType: 0 }).then(res => { - this.queryFormConfig.formItems[1].options = res.map(i => { - return { - value: i.id, - label: i.name - } + handleEx() { + this.$dialog.exportConfirm('纭瀵煎嚭鍚楋紵') + .then(() => { + this.loading = true + ywOutinboundEx({ + page: this.pagination.page, + capacity: 1000000, + model: this.filters + }) + .then(response => { + this.download(response) + }) + .catch(e => { + this.$tip.apiFailed(e) + }) + .finally(() => { + this.loading = false + }) }) - // this.queryFormConfig.formItems[1].options.unshift({ value: '', label: '鍏ㄩ儴鏈堝彴缁�' }) + .catch(() => { }) + }, + initData() { + getStoreList({ capacity: 9999, page: 1, model: {} }).then(res => { + this.queryFormConfig.formItems[1].options = res.records || [] }) }, getList(page) { const { pagination, filters } = this this.loading = true if(page){pagination.page = page} - platformLogPage({ + ywOutinboundPage({ model: { - ...filters, - queryStatus: '6,7,8', - beginWorkDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, - beginWorkDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, + ...filters }, - sorts: [{ direction: 'DESC', property: 'param1' }], + // sorts: [{ direction: 'DESC', property: 'param1' }], capacity: pagination.pageSize, page: page, }).then(res => { this.loading = false this.list = res.records || [] this.list.forEach(item => { - item.inTypeTemp = item.inType == 0 ? '鏁存墭鐩�' : '浠剁儫' - item.taskOrigin = 'WMS鑾峰彇' - item.workTime = dayjs.duration(item.param3, 'seconds').format('H鏃秏鍒唖绉�') + item.typeName = this.StoreTypeOps[item.type].name }) this.pagination.total = res.total || 0 }, () => { @@ -144,7 +168,9 @@ }) }, clear() { - this.filters = {} + this.filters = { + inOut: 1 + } this.pagination.pageSize = 10 this.pagination.page = 1 this.getList() -- Gitblit v1.9.3