123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- <template>
- <div class="padding-20">
- <div class="search-box">
- <el-form ref="form"
- :inline="true"
- :model="searchForm"
- clearable
- class="mt-10">
- <el-form-item label="附加名称:">
- <el-input v-model="searchForm.attach_name" placeholder="请输入附加名称" clearable></el-input>
- </el-form-item>
- <el-form-item class="ml-10">
- <el-button icon="el-icon-search" type="primary" @click="searchSubmit">查询</el-button>
- </el-form-item>
- <el-form-item class="ml-10">
- <el-button icon="el-icon-plus" type="primary" @click="add">添加</el-button>
- </el-form-item>
- </el-form>
- </div>
- <el-table :data="tableData"
- stripe
- v-loading="tableLoading"
- fit
- class="marginT-10 order-table"
- border
- :max-height="vheight">
- <el-table-column label="ID" prop="id" width="200"></el-table-column>
- <el-table-column label="附加名称" prop="attach_name" width="200"></el-table-column>
- <el-table-column label="可选值列表">
- <template slot-scope="scope">
- <p>{{ scope.row.attach_content.replace(/,/g, ',') }}</p>
- </template>
- </el-table-column>
- <el-table-column label="操作" width="220">
- <template slot-scope="scope">
- <el-button type="text"
- @click="edit(scope.row)">编辑
- </el-button>
- <el-button type="text"
- @click="del(scope.row)">删除
- </el-button>
- </template>
- </el-table-column>
- </el-table>
- <el-pagination
- class="marginT-20"
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- :hide-on-single-page="true"
- :current-page="page"
- :page-size="page_size"
- :page-sizes="[10, 20, 100, 200, 300, 400]"
- background
- layout="total, sizes, prev, pager, next, jumper"
- :total="totalCount"/>
- <detail v-if="detailsDialog.show"
- v-model="detailsDialog.show"
- :exData="detailsDialog.exData"
- @success="init"></detail>
- </div>
- </template>
- <script>
- import page from '@/mixin/page'
- import detail from './details'
- export default {
- mixins: [page],
- components: {
- detail,
- },
- data () {
- return {
- detailsDialog: {
- show: false,
- exData: {}
- },
- searchForm: {},
- tableData: [],
- tableUrl: '/v1/bar/product/attach/list'
- }
- },
- methods: {
- add () {
- this.detailsDialog.exData = {}
- this.detailsDialog.show = true
- },
- edit (row) {
- this.detailsDialog.exData = row
- this.detailsDialog.show = true
- },
- del (row) {
- this.$confirm('确定要删除吗', '确认', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(async () => {
- const data = await this.$fetch('/v1/bar/product/attach/delete', { id: row.id }, 'get')
- if (data.code === 200) {
- this.$message.success('删除成功')
- this.init()
- this.$store.dispatch('common/fetchGoodsAttr')
- }
- }).catch(() => {})
- }
- },
- mounted () {
- this.init()
- }
- }
- </script>
- <style lang="scss" scoped>
- .el-dropdown {
- margin: 0 10px;
- .el-dropdown-link {
- cursor: pointer;
- color: #409EFF;
- }
- }
- </style>
|