|
@@ -22,7 +22,8 @@
|
|
|
<el-date-picker v-model="txFilters.dateRange" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" value-format="yyyy-MM-dd" style="width:260px;margin-right:8px;" />
|
|
<el-date-picker v-model="txFilters.dateRange" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" value-format="yyyy-MM-dd" style="width:260px;margin-right:8px;" />
|
|
|
<el-button type="primary" size="mini" @click="loadTransactions">查询</el-button>
|
|
<el-button type="primary" size="mini" @click="loadTransactions">查询</el-button>
|
|
|
</div>
|
|
</div>
|
|
|
- <el-table :data="txList" v-loading="txLoading" border stripe max-height="500">
|
|
|
|
|
|
|
+ <div class="adm-table-wrap">
|
|
|
|
|
+<el-table :data="txList" v-loading="txLoading" border stripe height="100%">
|
|
|
<el-table-column prop="id" label="ID" width="60" />
|
|
<el-table-column prop="id" label="ID" width="60" />
|
|
|
<el-table-column label="商品" min-width="150">
|
|
<el-table-column label="商品" min-width="150">
|
|
|
<template slot-scope="{ row }">{{ row.productName || 'ID:' + row.productId }}</template>
|
|
<template slot-scope="{ row }">{{ row.productName || 'ID:' + row.productId }}</template>
|
|
@@ -56,13 +57,17 @@
|
|
|
<span class="sort-header" @click.stop="onSortClick('createdAt', $event)">时间<span v-if="sortIndex('createdAt') !== null" class="sort-index" :class="sortClass('createdAt') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('createdAt') }}</span>{{ sortIcon('createdAt') }}</span>
|
|
<span class="sort-header" @click.stop="onSortClick('createdAt', $event)">时间<span v-if="sortIndex('createdAt') !== null" class="sort-index" :class="sortClass('createdAt') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('createdAt') }}</span>{{ sortIcon('createdAt') }}</span>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
</el-table>
|
|
</el-table>
|
|
|
|
|
+ </div>
|
|
|
<el-pagination @size-change="txPageSize=$event;loadTransactions()" @current-change="txPage=$event;loadTransactions()" :current-page="txPage" :page-sizes="[10,20,50]" :page-size="txPageSize" :total="txTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
<el-pagination @size-change="txPageSize=$event;loadTransactions()" @current-change="txPage=$event;loadTransactions()" :current-page="txPage" :page-sizes="[10,20,50]" :page-size="txPageSize" :total="txTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
|
|
|
|
|
|
<!-- 入库单 -->
|
|
<!-- 入库单 -->
|
|
|
<el-tab-pane label="入库单" name="inbound">
|
|
<el-tab-pane label="入库单" name="inbound">
|
|
|
- <el-table :data="inboundList" v-loading="inboundLoading" border stripe max-height="500">
|
|
|
|
|
|
|
+ <div class="adm-table-wrap">
|
|
|
|
|
+<el-table :data="inboundList" v-loading="inboundLoading" border stripe height="100%">
|
|
|
<el-table-column prop="orderNo" label="入库单号" width="180">
|
|
<el-table-column prop="orderNo" label="入库单号" width="180">
|
|
|
<template slot="header">
|
|
<template slot="header">
|
|
|
<span class="sort-header" @click.stop="onSortClick('orderNo', $event)">入库单号<span v-if="sortIndex('orderNo') !== null" class="sort-index" :class="sortClass('orderNo') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('orderNo') }}</span>{{ sortIcon('orderNo') }}</span>
|
|
<span class="sort-header" @click.stop="onSortClick('orderNo', $event)">入库单号<span v-if="sortIndex('orderNo') !== null" class="sort-index" :class="sortClass('orderNo') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('orderNo') }}</span>{{ sortIcon('orderNo') }}</span>
|
|
@@ -104,14 +109,18 @@
|
|
|
<el-button v-if="row.status === 'pending'" size="mini" type="danger" @click="handleCancelInbound(row)">取消</el-button>
|
|
<el-button v-if="row.status === 'pending'" size="mini" type="danger" @click="handleCancelInbound(row)">取消</el-button>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
</el-table>
|
|
</el-table>
|
|
|
|
|
+ </div>
|
|
|
<el-pagination @size-change="inboundPageSize=$event;loadInboundOrders()" @current-change="inboundPage=$event;loadInboundOrders()" :current-page="inboundPage" :page-sizes="[10,20,50]" :page-size="inboundPageSize" :total="inboundTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
<el-pagination @size-change="inboundPageSize=$event;loadInboundOrders()" @current-change="inboundPage=$event;loadInboundOrders()" :current-page="inboundPage" :page-sizes="[10,20,50]" :page-size="inboundPageSize" :total="inboundTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
|
|
|
|
|
|
<!-- 库存预警 -->
|
|
<!-- 库存预警 -->
|
|
|
<el-tab-pane label="库存预警" name="alerts">
|
|
<el-tab-pane label="库存预警" name="alerts">
|
|
|
<el-button type="primary" size="mini" @click="loadAlerts" style="margin-bottom:12px;">刷新</el-button>
|
|
<el-button type="primary" size="mini" @click="loadAlerts" style="margin-bottom:12px;">刷新</el-button>
|
|
|
- <el-table :data="alertList" v-loading="alertLoading" border stripe max-height="500">
|
|
|
|
|
|
|
+ <div class="adm-table-wrap">
|
|
|
|
|
+<el-table :data="alertList" v-loading="alertLoading" border stripe height="100%">
|
|
|
<el-table-column prop="productName" label="商品名称" min-width="200" />
|
|
<el-table-column prop="productName" label="商品名称" min-width="200" />
|
|
|
<el-table-column prop="specs" label="SKU规格" width="150">
|
|
<el-table-column prop="specs" label="SKU规格" width="150">
|
|
|
<template slot-scope="{ row }">{{ row.specs || '-' }}</template>
|
|
<template slot-scope="{ row }">{{ row.specs || '-' }}</template>
|
|
@@ -120,13 +129,17 @@
|
|
|
<template slot-scope="{ row }"><span style="color:#f56c6c;font-weight:bold;">{{ row.currentStock }}</span></template>
|
|
<template slot-scope="{ row }"><span style="color:#f56c6c;font-weight:bold;">{{ row.currentStock }}</span></template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
<el-table-column prop="minStockAlert" label="预警下限" width="80" />
|
|
<el-table-column prop="minStockAlert" label="预警下限" width="80" />
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
</el-table>
|
|
</el-table>
|
|
|
|
|
+ </div>
|
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
|
|
|
|
|
|
<!-- 出库单 -->
|
|
<!-- 出库单 -->
|
|
|
<el-tab-pane label="出库单" name="outbound">
|
|
<el-tab-pane label="出库单" name="outbound">
|
|
|
<el-button type="primary" size="mini" @click="showCreateOutbound = true" style="margin-bottom:12px;">新建出库单</el-button>
|
|
<el-button type="primary" size="mini" @click="showCreateOutbound = true" style="margin-bottom:12px;">新建出库单</el-button>
|
|
|
- <el-table :data="outboundList" v-loading="outboundLoading" border stripe max-height="500">
|
|
|
|
|
|
|
+ <div class="adm-table-wrap">
|
|
|
|
|
+<el-table :data="outboundList" v-loading="outboundLoading" border stripe height="100%">
|
|
|
<el-table-column prop="id" label="ID" width="60">
|
|
<el-table-column prop="id" label="ID" width="60">
|
|
|
<template slot="header">
|
|
<template slot="header">
|
|
|
<span class="sort-header" @click.stop="onSortClick('id', $event)">ID<span v-if="sortIndex('id') !== null" class="sort-index" :class="sortClass('id') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('id') }}</span>{{ sortIcon('id') }}</span>
|
|
<span class="sort-header" @click.stop="onSortClick('id', $event)">ID<span v-if="sortIndex('id') !== null" class="sort-index" :class="sortClass('id') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('id') }}</span>{{ sortIcon('id') }}</span>
|
|
@@ -148,14 +161,18 @@
|
|
|
<span class="sort-header" @click.stop="onSortClick('createdAt', $event)">时间<span v-if="sortIndex('createdAt') !== null" class="sort-index" :class="sortClass('createdAt') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('createdAt') }}</span>{{ sortIcon('createdAt') }}</span>
|
|
<span class="sort-header" @click.stop="onSortClick('createdAt', $event)">时间<span v-if="sortIndex('createdAt') !== null" class="sort-index" :class="sortClass('createdAt') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('createdAt') }}</span>{{ sortIcon('createdAt') }}</span>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
</el-table>
|
|
</el-table>
|
|
|
|
|
+ </div>
|
|
|
<el-pagination @size-change="outboundPageSize=$event;loadOutboundList()" @current-change="outboundPage=$event;loadOutboundList()" :current-page="outboundPage" :page-sizes="[10,20,50]" :page-size="outboundPageSize" :total="outboundTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
<el-pagination @size-change="outboundPageSize=$event;loadOutboundList()" @current-change="outboundPage=$event;loadOutboundList()" :current-page="outboundPage" :page-sizes="[10,20,50]" :page-size="outboundPageSize" :total="outboundTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
|
|
|
|
|
|
<!-- 盘点记录 -->
|
|
<!-- 盘点记录 -->
|
|
|
<el-tab-pane label="盘点记录" name="counting">
|
|
<el-tab-pane label="盘点记录" name="counting">
|
|
|
<el-button type="primary" size="mini" @click="showCreateCounting = true" style="margin-bottom:12px;">新建盘点</el-button>
|
|
<el-button type="primary" size="mini" @click="showCreateCounting = true" style="margin-bottom:12px;">新建盘点</el-button>
|
|
|
- <el-table :data="countingList" v-loading="countingLoading" border stripe max-height="500">
|
|
|
|
|
|
|
+ <div class="adm-table-wrap">
|
|
|
|
|
+<el-table :data="countingList" v-loading="countingLoading" border stripe height="100%">
|
|
|
<el-table-column prop="id" label="ID" width="60">
|
|
<el-table-column prop="id" label="ID" width="60">
|
|
|
<template slot="header">
|
|
<template slot="header">
|
|
|
<span class="sort-header" @click.stop="onSortClick('id', $event)">ID<span v-if="sortIndex('id') !== null" class="sort-index" :class="sortClass('id') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('id') }}</span>{{ sortIcon('id') }}</span>
|
|
<span class="sort-header" @click.stop="onSortClick('id', $event)">ID<span v-if="sortIndex('id') !== null" class="sort-index" :class="sortClass('id') === 'sort-asc' ? 'sort-asc-badge' : 'sort-desc-badge'">{{ sortIndex('id') }}</span>{{ sortIcon('id') }}</span>
|
|
@@ -192,7 +209,10 @@
|
|
|
<el-button v-if="row.status === 'pending'" size="mini" type="success" @click="handleConfirmCounting(row)">确认</el-button>
|
|
<el-button v-if="row.status === 'pending'" size="mini" type="success" @click="handleConfirmCounting(row)">确认</el-button>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
</el-table>
|
|
</el-table>
|
|
|
|
|
+ </div>
|
|
|
<el-pagination @size-change="countingPageSize=$event;loadCountingRecords()" @current-change="countingPage=$event;loadCountingRecords()" :current-page="countingPage" :page-sizes="[10,20,50]" :page-size="countingPageSize" :total="countingTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
<el-pagination @size-change="countingPageSize=$event;loadCountingRecords()" @current-change="countingPage=$event;loadCountingRecords()" :current-page="countingPage" :page-sizes="[10,20,50]" :page-size="countingPageSize" :total="countingTotal" layout="total, sizes, prev, pager, next, jumper" class="pagination-wrap" />
|
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
</el-tabs>
|
|
@@ -210,7 +230,6 @@
|
|
|
<el-table-column prop="productId" label="商品ID" width="70" />
|
|
<el-table-column prop="productId" label="商品ID" width="70" />
|
|
|
<el-table-column prop="skuId" label="SKU ID" width="70" />
|
|
<el-table-column prop="skuId" label="SKU ID" width="70" />
|
|
|
<el-table-column prop="quantity" label="数量" width="70" />
|
|
<el-table-column prop="quantity" label="数量" width="70" />
|
|
|
- </el-table>
|
|
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
|
|
|
|
<!-- 新建出库弹窗 -->
|
|
<!-- 新建出库弹窗 -->
|
|
@@ -268,6 +287,8 @@
|
|
|
<el-button type="primary" @click="handleCreateCounting">提交</el-button>
|
|
<el-button type="primary" @click="handleCreateCounting">提交</el-button>
|
|
|
</span>
|
|
</span>
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
|
+
|
|
|
|
|
+ </el-table>
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|