1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
| <template> <a-card :bordered="false"> <div class="table-page-search-wrapper"> <a-form layout="inline"> <a-row :gutter="48"> <a-col :md="6" :sm="24"> <a-form-item label="货主"> <StorerSelect v-model="queryParam.StorerId" :type="['Storer']"></StorerSelect> </a-form-item> </a-col> <a-col :md="6" :sm="24"> <a-form-item label="物料"> <SkuSelect v-model="queryParam.SkuId" :storer="queryParam.StorerId"></SkuSelect> </a-form-item> </a-col> <a-col :md="6" :sm="24"> <span class="table-page-search-submitButtons"> <a-button type="primary" v-action:Query @click="()=>{this.$refs.table.refresh()}">查询</a-button> <a-button style="margin-left: 8px" @click="resetSearchForm()">重置</a-button> <a-button style="margin-left: 8px" v-action:Export icon="export" @click="handleExport()">导出</a-button> </span> </a-col> </a-row> </a-form> </div> <s-table ref="table" size="default" rowKey="SkuId" :columns="columns" :data="loadData" :rowSelection="rowSelection" showPagination="auto"> </s-table> </a-card> </template>
<script> import { mapGetters } from 'vuex' import moment from 'moment' import { STable } from '@/components' import MainSvc from '@/api/Rpt/Rpt_InvSkuSvc' import EnumSelect from '@/components/CF/EnumSelect' import EnumName from '@/components/CF/EnumName' import StorerSelect from '@/components/Bas/StorerSelect' import SkuSelect from '@/components/Bas/SkuSelect' import LocSelect from '@/components/Bas/LocSelect'
const columns = [ { title: '货主编码', dataIndex: 'StorerCode', sorter: true }, { title: '货主名称', dataIndex: 'StorerName', sorter: true }, { title: '物料编码', dataIndex: 'SkuCode', sorter: true }, { title: '物料名称', dataIndex: 'SkuName', sorter: true }, { title: '库存数量', dataIndex: 'Qty', sorter: true }, { title: '可用数量', dataIndex: 'QtyUse' }, { title: '已分配', dataIndex: 'QtyAllocated' }, { title: '已拣货', dataIndex: 'QtyPicked' } ]
export default { components: { STable, MainSvc, EnumSelect, EnumName, StorerSelect, SkuSelect, LocSelect }, data() { this.columns = columns return { visible: false, confirmLoading: false, mdl: null, advanced: false, queryParam: { WhseId: '', StorerId: '', SkuId: '' }, loadData: parameter => { this.queryParam.WhseId = this.defaultWhseId var _query = Object.assign({}, { ...this.queryParam }) for (const key in _query) { if (moment.isMoment(_query[key])) { _query[key] = _query[key].format('YYYY-MM-DD') } } const requestParameters = Object.assign({ sortField: 'SkuCode', sortOrder: 'asc', Search: _query }, parameter) console.log('loadData request parameters:', requestParameters) return MainSvc.GetSummary(requestParameters) }, selectedRowKeys: [], selectedRows: [] } }, filters: { }, created() { this.resetSearchForm() }, computed: { ...mapGetters({ defaultWhseId: 'whseId', defaultStorerId: 'storerId' }), rowSelection() { return { selectedRowKeys: this.selectedRowKeys, onChange: this.onSelectChange } } }, methods: { moment, onSelectChange(selectedRowKeys, selectedRows) { this.selectedRowKeys = selectedRowKeys this.selectedRows = selectedRows }, resetSearchForm() { this.queryParam = { WhseId: this.defaultWhseId, StorerId: this.defaultStorerId, SkuId: '' } }, handleExport() { this.queryParam.WhseId = this.defaultWhseId var _query = Object.assign({}, { ...this.queryParam }) for (const key in _query) { if (moment.isMoment(_query[key])) { _query[key] = _query[key].format('YYYY-MM-DD') } } MainSvc.Export(_query).then(result => { if (result.Success) { var fileName = result.Data.substring(result.Data.lastIndexOf('/') + 1) var filePath = `${process.env.VUE_APP_API_BASE_URL}${result.Data}` console.log('handleExport', fileName, filePath) try { var elem = document.createElement('a') elem.download = fileName elem.href = filePath elem.style.display = 'none' document.body.appendChild(elem) elem.click() document.body.removeChild(elem) } catch (e) { this.$message.error('下载异常!') } } else { this.$message.error(result.Msg) } }) } } } </script>
|