|
@@ -4,8 +4,6 @@ import { TableColumns, SearchColumns, TabColumns, SelectColumns } from "./column
|
|
|
import orderApi from "@/api/business/purchase/purchase-order";
|
|
|
import {
|
|
|
initPage,
|
|
|
- initLayout,
|
|
|
- initPageSizes,
|
|
|
initParams,
|
|
|
initColumns,
|
|
|
initDicts,
|
|
@@ -25,8 +23,7 @@ export default {
|
|
|
return {
|
|
|
loading: false,
|
|
|
isSimpleSearch: true,
|
|
|
- pageSizes: initPageSizes(),
|
|
|
- layout: initLayout(),
|
|
|
+ pageSizes: [10, 20, 50, 100],
|
|
|
page: initPage(),
|
|
|
searchColumns: SearchColumns,
|
|
|
params: initParams(SearchColumns),
|
|
@@ -75,16 +72,7 @@ export default {
|
|
|
// title: this.isSimpleSearch ? "Simple Search" : "All Search",
|
|
|
// });
|
|
|
},
|
|
|
- // 页大小变
|
|
|
- handleSizeChange(prop) {
|
|
|
- this.page.pageSize = prop;
|
|
|
- this.fetchList(this.params, this.page);
|
|
|
- },
|
|
|
- // 当前页变
|
|
|
- handleCurrentChange(prop) {
|
|
|
- this.page.pageNum = prop;
|
|
|
- this.fetchList(this.params, this.page);
|
|
|
- },
|
|
|
+
|
|
|
// 刷新操作
|
|
|
handleRefreshList() {
|
|
|
this.fetchList(this.params, this.page);
|
|
@@ -136,7 +124,6 @@ export default {
|
|
|
},
|
|
|
// 获取子表信息
|
|
|
async handleDetailsData(row) {
|
|
|
- console.log(row, '获取详情信息');
|
|
|
try {
|
|
|
const { code, msg, data } = await orderApi.details(row.id);
|
|
|
if (code === 200) {
|
|
@@ -262,15 +249,16 @@ export default {
|
|
|
console.log(this.checkedList, 'this.checkedList');
|
|
|
|
|
|
},
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
- <el-card v-loading="loading" style="width: calc(100% - 24px); height: 100%; margin: 10px" :body-style="{ padding: 0 }">
|
|
|
+ <el-card
|
|
|
+ v-loading="loading"
|
|
|
+ style="width: calc(100% - 24px); height: 100%; margin: 10px"
|
|
|
+ :body-style="{ padding: 0 }"
|
|
|
+ >
|
|
|
<SeeDrawer ref="seeDrawerFef"></SeeDrawer>
|
|
|
<AddDrawer ref="addDrawerFef" @close="handleRefreshList"></AddDrawer>
|
|
|
<EditDrawer ref="editDrawerFef" @close="handleRefreshList"></EditDrawer>
|
|
@@ -285,7 +273,11 @@ export default {
|
|
|
<el-row :gutter="24" style="display:flex; flex-wrap: wrap;">
|
|
|
<el-col :span="20">
|
|
|
<el-row :gutter="20">
|
|
|
- <el-col v-for="column in showSearchColumns" :key="column.title" :xl="6" :lg="6" :md="8" :sm="12" :xs="24">
|
|
|
+ <el-col
|
|
|
+ v-for="column in showSearchColumns"
|
|
|
+ :key="column.title"
|
|
|
+ :xl="6" :lg="6" :md="8" :sm="12" :xs="24"
|
|
|
+ >
|
|
|
<el-form-item :prop="column.key" :label="column.title">
|
|
|
<el-input v-model="params[column.key]" :placeholder="column.placeholder"></el-input>
|
|
|
</el-form-item>
|
|
@@ -300,10 +292,10 @@ export default {
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
|
|
|
- <el-divider>
|
|
|
+ <!-- <el-divider>
|
|
|
<i :class="isSimpleSearch ? 'el-icon-arrow-down' : 'el-icon-arrow-up'" style="cursor: pointer"
|
|
|
@click="handleSearchChange"></i>
|
|
|
- </el-divider>
|
|
|
+ </el-divider> -->
|
|
|
|
|
|
<!-- 操作 -->
|
|
|
<el-row :gutter="24" style="padding: 0 20px">
|
|
@@ -333,20 +325,40 @@ export default {
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
|
|
|
- <el-table @row-dblclick="handleOpenSeeDrawer" @row-click="handleDetailsData" :data="tableData" size="mini"
|
|
|
- highlight-current-row style="width: 100%; margin: 20px 0 0 0" @select="handleSelect" height="450">
|
|
|
+ <el-table
|
|
|
+ @row-dblclick="handleOpenSeeDrawer"
|
|
|
+ @row-click="handleDetailsData"
|
|
|
+ :data="tableData"
|
|
|
+ size="mini"
|
|
|
+ highlight-current-row
|
|
|
+ @select="handleSelect"
|
|
|
+ height="450"
|
|
|
+ style="width: 100%; margin: 20px 0 0 0"
|
|
|
+ >
|
|
|
<el-table-column type="selection" width="45"></el-table-column>
|
|
|
<el-table-column type="index" width="50" label="序号"></el-table-column>
|
|
|
- <el-table-column v-for="(column, index) in tableColumns" :key="index" :prop="column.key" :label="column.title"
|
|
|
- :width="column.width || 180" :show-overflow-tooltip="column.showOverflowTooltip || true">
|
|
|
+ <el-table-column
|
|
|
+ v-for="(column, index) in tableColumns"
|
|
|
+ :key="index"
|
|
|
+ :prop="column.key"
|
|
|
+ :label="column.title"
|
|
|
+ :width="column.width || 180"
|
|
|
+ :show-overflow-tooltip="column.showOverflowTooltip || true"
|
|
|
+ >
|
|
|
|
|
|
<template slot-scope="scope">
|
|
|
- <dict-tag v-if="column.referName" size="small" :value="scope.row[column.key]"
|
|
|
- :options="dict.type[column.referName]" />
|
|
|
-
|
|
|
- <el-checkbox v-else-if="column.inputType === 'Checkbox'" v-model="scope.row[column.key]" disabled true-label="Y"
|
|
|
- false-label="N">
|
|
|
- </el-checkbox>
|
|
|
+ <dict-tag v-if="column.referName"
|
|
|
+ size="small"
|
|
|
+ :value="scope.row[column.key]"
|
|
|
+ :options="dict.type[column.referName]"
|
|
|
+ />
|
|
|
+
|
|
|
+ <el-checkbox v-else-if="column.inputType === 'Checkbox'"
|
|
|
+ v-model="scope.row[column.key]"
|
|
|
+ disabled
|
|
|
+ true-label="Y"
|
|
|
+ false-label="N"
|
|
|
+ > </el-checkbox>
|
|
|
<span v-else>{{ scope.row[column.key] }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -356,35 +368,64 @@ export default {
|
|
|
<el-button type="text" size="small" @click.stop="handleOpenEditDrawer(scope.row)"
|
|
|
v-hasPermi="['material:order:edit']">
|
|
|
{{ scope.row.status == '2' ? '修订' : '编辑' }}</el-button>
|
|
|
- <!-- 0=自由态,1=审批中,2=已审核,3=已驳回 -->
|
|
|
- <el-button type="text" size="small" @click.stop="handleDeleteList(scope.row)"
|
|
|
- v-hasPermi="['material:order:remove']">删除</el-button>
|
|
|
- <el-button v-if="scope.row.status == '0' || scope.row.status == '3'" type="text" size="mini"
|
|
|
- v-hasPermi="['material:order:toOa']" @click.stop="handleSubmit(scope.row)">提交</el-button>
|
|
|
+ <!-- 0=自由态,1=审批中,2=已审核,3=已驳回 4=提交中-->
|
|
|
+ <el-button
|
|
|
+ v-if="(scope.row.status == '0' || scope.row.status == '3') && scope.row.source == '3'"
|
|
|
+ type="text"
|
|
|
+ size="small"
|
|
|
+ @click.stop="handleDeleteList(scope.row)"
|
|
|
+ v-hasPermi="['material:order:remove']"
|
|
|
+ >删除</el-button>
|
|
|
+ <el-button
|
|
|
+ v-if="scope.row.status == '0' || scope.row.status == '3'"
|
|
|
+ type="text"
|
|
|
+ size="mini"
|
|
|
+ v-hasPermi="['material:order:toOa']"
|
|
|
+ @click.stop="handleSubmit(scope.row)"
|
|
|
+ >提交</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
|
|
|
</el-table>
|
|
|
- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :total="page.total"
|
|
|
- :page-sizes="pageSizes" :page-size="page.pageSize" :current-page="page.pageNum" hide-on-single-page :layout="layout"
|
|
|
- style="text-align: right;margin-top: 10px;">
|
|
|
- </el-pagination>
|
|
|
|
|
|
- <el-tabs v-model="tabName" @tab-click="handleTabClick" style="width: 100%;padding: 20px 10px">
|
|
|
- <el-tab-pane v-for="(column, index) in tabColumns" :key="index" :label="column.title" :name="column.key">
|
|
|
+ <pagination
|
|
|
+ v-show="page.total>0"
|
|
|
+ :total="page.total"
|
|
|
+ :page.sync="page.pageNum"
|
|
|
+ :limit.sync="page.pageSize"
|
|
|
+ @pagination="fetchList(params, page)"
|
|
|
+ />
|
|
|
|
|
|
+ <el-tabs v-model="tabName" @tab-click="handleTabClick" style="width: 100%;padding: 20px 10px">
|
|
|
+ <el-tab-pane
|
|
|
+ v-for="(column, index) in tabColumns"
|
|
|
+ :key="index"
|
|
|
+ :label="column.title"
|
|
|
+ :name="column.key"
|
|
|
+ >
|
|
|
<el-table :data="tabTableDatas[column.key]" style="width: 100%" highlight-current-row
|
|
|
:height="tabTableDatas[column.key].length ? 300 : 100">
|
|
|
<el-table-column type="index" width="50" label="序号"></el-table-column>
|
|
|
- <el-table-column v-for="(cColumn, cIndex) in column.tableColumns" :key="cIndex" :prop="cColumn.key"
|
|
|
- :label="cColumn.title" :width="cColumn.width || 180"
|
|
|
- :show-overflow-tooltip="cColumn.showOverflowTooltip || true">
|
|
|
+ <el-table-column
|
|
|
+ v-for="(cColumn, cIndex) in column.tableColumns"
|
|
|
+ :key="cIndex"
|
|
|
+ :prop="cColumn.key"
|
|
|
+ :label="cColumn.title"
|
|
|
+ :width="cColumn.width || 180"
|
|
|
+ :show-overflow-tooltip="cColumn.showOverflowTooltip || true"
|
|
|
+ >
|
|
|
<template slot-scope="scope">
|
|
|
- <dict-tag v-if="cColumn.referName" size="small" :value="scope.row[cColumn.key]"
|
|
|
- :options="dict.type[cColumn.referName]" />
|
|
|
- <el-checkbox v-else-if="cColumn.inputType === 'Checkbox'" v-model="scope.row[cColumn.key]" disabled
|
|
|
- true-label="Y" false-label="N">
|
|
|
- </el-checkbox>
|
|
|
+ <dict-tag v-if="cColumn.referName"
|
|
|
+ size="small"
|
|
|
+ :value="scope.row[cColumn.key]"
|
|
|
+ :options="dict.type[cColumn.referName]"
|
|
|
+ />
|
|
|
+ <el-checkbox v-else-if="cColumn.inputType === 'Checkbox'"
|
|
|
+ v-model="scope.row[cColumn.key]"
|
|
|
+ disabled
|
|
|
+ true-label="Y"
|
|
|
+ false-label="N"
|
|
|
+ ></el-checkbox>
|
|
|
<span v-else>{{ scope.row[cColumn.key] }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|