灵山运营端前端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

167 lines
5.8 KiB

<template>
<el-card shadow="never"
class="aui-card--fill">
<div class="mod-sys__params">
<el-form :inline="true"
:model="dataForm"
@keyup.enter.native="getDataList()">
<el-form-item label="功能名称">
<el-input v-model="dataForm.functionName"
:placeholder="$t('params.paramCode')"
clearable></el-input>
</el-form-item>
<el-form-item label="上架状态">
<el-select v-model="dataForm.shoppingStatus"
placeholder="全部"
clearable>
<el-option v-for="item in shoppingStatusList"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button v-if="$hasPermission('sys:params:save')"
type="primary"
@click="addOrUpdateHandle()">{{ $t('add') }}</el-button>
</el-form-item>
<el-form-item>
<el-button v-if="$hasPermission('sys:params:delete')"
type="danger"
@click="deleteHandle()">{{ $t('deleteBatch') }}</el-button>
</el-form-item>
</el-form>
<el-table v-loading="dataListLoading"
:data="dataList"
border
@selection-change="dataListSelectionChangeHandle"
style="width: 100%;">
<el-table-column prop="customizedName"
label="功能名称"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="shoppingStatusShow"
label="上架状态"
:formatter="stateFormat"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="functionExplain"
label="功能说明"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="targetLink"
label="外链地址"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="domainName"
label="业务域名"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="iconLargeImg"
label="大图标"
header-align="center"
align="center">
<img :src="scope.row.iconLargeImg"
style="width: 50px; height: 50px"
class="function-icon"
:fit="'fill'"></el-table-column>
<el-table-column prop="iconSmallImg"
label="小图标"
header-align="center"
align="center">
<img :src="scope.row.iconSmallImg"
style="width: 50px; height: 50px"
class="function-icon"
:fit="'fill'"></el-table-column>
<el-table-column :label="$t('handle')"
fixed="right"
header-align="center"
align="center"
width="150">
<template slot-scope="scope">
<el-button v-if="$hasPermission('sys:params:update')"
type="text"
size="small"
@click="addOrUpdateHandle(scope.row.id)">{{$t('update')}}
</el-button>
<el-button v-if="$hasPermission('sys:params:delete')"
type="text"
size="small"
@click="deleteHandle(scope.row.id)">{{$t('delete')}}
</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination :current-page="page"
:page-sizes="[10, 20, 50, 100]"
:page-size="limit"
:total="total"
layout="total, sizes, prev, pager, next, jumper"
@size-change="pageSizeChangeHandle"
@current-change="pageCurrentChangeHandle">
</el-pagination>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible"
ref="addOrUpdate"
@refreshDataList="getDataList"></add-or-update>
</div>
</el-card>
</template>
<script>
import mixinViewModule from '@/mixins/view-module'
import AddOrUpdate from './function-add-or-update'
export default {
name: 'function',
mixins: [mixinViewModule],
data () {
return {
mixinViewModuleOptions: {
// getDataListURL: '/oper/customize/functioncustomized/functioncustomizedlist',
getDataListURL: 'https://nei.netease.com/api/apimock-v2/e3b1d0eb88e905f6c7ee559b2d6bb7ad/oper/customize/functioncustomized/functioncustomizedlist',
getDataListIsPage: true,
deleteURL: '/oper/customize/function',
deleteIsBatch: true
},
dataForm: {
functionName: '',
functionGroup: '',
shoppingStatus: ''
},
shoppingStatusList: [
{
'dictName': '下架',
'dictValue': '0'
}, {
'dictName': '上架',
'dictValue': '1'
}
]
}
},
components: {
AddOrUpdate
},
methods: {
stateFormat (row, column) {
if (row.shoppingStatus === 0) {
return '下架'
} else {
return '上架'
}
}
}
}
</script>
<style scoped>
</style>