5 Star 1 Fork 0

已达七 / violet-admin-web

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
productType.html 16.77 KB
一键复制 编辑 原始数据 按行查看 历史
已达七 提交于 2023-07-04 03:07 . 全代码结构优化,权限完成
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="js/vue.js"></script>
<script src="js/axios.min.js"></script>
<script src="js/element-lib/index.js"></script>
<link rel="stylesheet" href="js/element-lib/theme-chalk/index.css">
<link rel="stylesheet" href="css/main.css">
<script src="js/main.js"></script>
<style>
/* 表单控件 */
#search-box {
font-size: 15px;
margin-top: 50px;
}
</style>
</head>
<body>
<div id="app">
<el-container class="home-container">
<el-container class="box">
<el-aside :width="isCollapse ? '64px' : '200px'">
<div class="toggle-button" @click="toggleCollapse">
<i :class="isCollapse ? 'el-icon-s-unfold' : 'el-icon-s-fold'"></i>
</div>
<!-- 导航栏 -->
<el-menu :default-active="menuActive" class="el-menu-vertical-demo" :collapse="isCollapse"
unique-opened>
<!-- 一级菜单 -->
<a :href="menu.permissionUrl" v-if="menu.children == null" v-for="menu in menuList"
:key="menu.id">
<el-menu-item :index="menu.id+''">
<i :class="menu.menuIcon"></i>
<span>{{menu.permissionName}}</span>
</el-menu-item>
</a>
<el-submenu v-if="menu.children != null" :index="menu.id+''" v-for="menu in menuList"
:key="menu.id">
<template slot="title">
<i :class="menu.menuIcon"></i>
<span slot="title">{{menu.permissionName}}</span>
</template>
<!-- 二级菜单 -->
<a :href="secondaryMenu.permissionUrl" v-for="secondaryMenu in menu.children"
:key="secondaryMenu.id">
<el-menu-item :index="secondaryMenu.id+''">
<i :class="secondaryMenu.menuIcon"></i>
<span>{{secondaryMenu.permissionName}}</span>
</el-menu-item>
</a>
</el-submenu>
</el-menu>
</el-aside>
<el-container>
<el-header>
<div>
<img src="img/logo.png" class="log">
<span>紫罗兰后台管理系统</span>
</div>
<el-button type="danger" @click="logOff()">退出</el-button>
</el-header>
<el-main>
<div style="padding: 10px;width: 97%;height:90px;border: 1px solid rgb(223, 223, 239);">
<i class="el-icon-search" style="float: left;">筛选搜索</i>
<form style="float: right;">
<el-button type="primary" @click="getProductTypePagingList"
icon="el-icon-search">搜索</el-button>
<el-button @click="Reset()">重置</el-button>
</form>
<form id="search-box">
分类状态:
<el-select v-model="enable" placeholder="选择分类状态">
<el-option label="所有"></el-option>
<el-option label="已启用" value=true></el-option>
<el-option label="未启用" value=false></el-option>
</el-select>
分类编号:
<el-input style="width: 160px;" v-model="id" placeholder="请输入商品分类编号"
clearable></el-input>
分类名称:
<el-input style="width: 160px;" v-model="productTypeName" placeholder="请输入商品分类名称"
clearable></el-input>
添加时间:
<el-date-picker v-model="productTypeAddTime" value-format="yyyy-MM-dd" type="date"
placeholder="选择日期"></el-date-picker>
</form>
</div>
<el-table :data="productTypeData" stripe style="width: 100%">
<!-- 复选框 -->
<el-table-column type="selection" width="55">
</el-table-column>
<el-table-column prop="id" label="分类编号" width="100" align="center">
</el-table-column>
<el-table-column prop="productTypeName" label="分类名称" width="100" align="center">
</el-table-column>
<el-table-column prop="productTypeDescription" label="描述" width="450" align="center">
</el-table-column>
<el-table-column prop="productTypeAddTime" label="添加时间" width="120" align="center">
</el-table-column>
<el-table-column prop="enable" label="是否启用" width="100" align="center">
<template slot-scope="scope">
<el-switch v-model="scope.row.enable" :active-value="1" :inactive-value="0">
</el-switch>
</template>
</el-table-column>
<el-table-column label="操作" width="120" align="center">
<template slot-scope="scope">
<el-row style="text-align: center;">
<el-col>
<el-link type="primary" @click="dialogVisible2 = true">编辑</el-link>
<el-popconfirm title="确定删除吗?" @confirm="deleteById(scope.row.id)">
<el-link slot="reference" type="primary">删除</el-link>
</el-popconfirm>
</el-col>
</el-row>
</template>
</el-table-column>
</el-table>
</el-main>
<el-footer>
<div style="float: left;">
<el-button type="primary">批量删除</el-button>
<el-button type="primary" @click="dialogVisible = true">添加数据</el-button>
</div>
<!-- 添加数据对话框 -->
<el-dialog title="添加" :visible.sync="dialogVisible" width="60%">
<el-form :inline="true" :model="typeInsertDemo" class="demo-form-inline">
<el-form-item label="产品类型名">
<el-input v-model="typeInsertDemo.productTypeName" placeholder="产品类型名"></el-input>
</el-form-item>
<el-form-item label="产品描述">
<el-input v-model="typeInsertDemo.productTypeDescription" type="textarea"
placeholder="产品描述"></el-input>
</el-form-item>
<el-form-item label="类型状态">
<el-select v-model="typeInsertDemo.Enable" placeholder="活动区域">
<el-option label="启用" value="0"></el-option>
<el-option label="禁用" value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item label="创建时间">
<el-date-picker v-model="typeInsertDemo.productTypeCreateTime" type="datetime"
placeholder="选择日期时间">
</el-date-picker>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="dialogVisible = false">确 定</el-button>
</span>
</el-dialog>
<!-- 编辑 -->
<el-dialog title="编辑" :visible.sync="dialogVisible2" width="60%">
<el-form :inline="true" :model="typeUpdateDemo" class="demo-form-inline">
<el-form-item label="产品类型名">
<el-input v-model="typeUpdateDemo.productTypeName" placeholder="产品类型名"></el-input>
</el-form-item>
<el-form-item label="产品描述">
<el-input v-model="typeUpdateDemo.productTypeDescription" type="textarea"
placeholder="产品描述"></el-input>
</el-form-item>
<el-form-item label="类型状态">
<el-select v-model="typeUpdateDemo.Enable" placeholder="活动区域">
<el-option label="启用" value="0"></el-option>
<el-option label="禁用" value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item label="创建时间">
<el-date-picker v-model="typeUpdateDemo.productTypeCreateTime" type="datetime"
placeholder="选择日期时间">
</el-date-picker>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible2 = false">取 消</el-button>
<el-button type="primary" @click="dialogVisible2 = false">确 定</el-button>
</span>
</el-dialog>
<div class="block" style="float: right;">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page="pageNo" :page-sizes="pageSizes" :page-size="pageSize"
layout="total, sizes, prev, pager, next, jumper" :total="totalCount">
</el-pagination>
</div>
</el-footer>
</el-container>
</el-container>
</el-container>
</div>
<script>
let vm = new Vue({
el: "#app",
data() {
return {
isCollapse: false,
menuList: [],
menuActive: 0,
productTypeData: [],
pageNo: 1,
pageSize: 6,
totalCount: 1,
pageSizes: [6, 12, 18],
enable: undefined,
id: undefined,
productTypeName: "",
productTypeAddTime: "",
//添加数据对话框是否展示的标记
dialogVisible: false,
//编辑数据对话框是否展示的标记
dialogVisible2: false,
//添加表单
typeInsertDemo: {
productTypeName: '',
productTypeDescription: '',
Enable: '0',
productTypeCreateTime: ''
},
//编辑表单
typeUpdateDemo: {
productTypeName: '',
productTypeDescription: '',
Enable: '0',
productTypeCreateTime: ''
},
}
}, created() {
this.getMenuList();
this.getMenuIdByUrl();
this.getProductTypePagingList(this.pageNo, this.pageSize)
}, methods: {
logOff() {
localStorage.removeItem('nfLoginJwt');
location.href = "login.html"
},
toggleCollapse() {
vm.isCollapse = !vm.isCollapse
},
getMenuList() {
axios({
url: "/menu/get/menu/by/jwt",
method: "GET",
}).then(function (resp) {
if (resp.data.code == 200) {
vm.menuList = resp.data.data
console.log(vm.menuList);
}
})
},
getProductTypePagingList() {
axios({
method: "GET",
url: "/product/type/paging/query",
params: {
pageNo: this.pageNo,
pageSize: this.pageSize,
enable: this.enable,
id: this.id == "" ? this.id = undefined : this.id,
productTypeName: this.productTypeName,
productTypeAddTime: this.productTypeAddTime
}
}).then(resp => {
console.log(resp);
vm.productTypeData = resp.data.data.list
vm.totalCount = resp.data.data.count
})
},
handleSizeChange(size) {
this.pageSize = size
this.getProductTypePagingList()
this.pageNo = 1
},
handleCurrentChange(no) {
this.pageNo = no
this.getProductTypePagingList()
}, getMenuIdByUrl() {
var strUrl = location.href;
var arrUrl = strUrl.split("/");
var strPage = arrUrl[arrUrl.length - 1];
axios({
url: "/menu/get/menu/id/by/url",
method: "GET",
params: { url: strPage }
}).then(function (resp) {
if (resp.data.code == 200) {
vm.menuActive = resp.data.data
}
})
},
//状态
updateEnableById(id, enable) {
axios({
method: "POST",
url: "/product/type/update_enable_by_id",
params: {
id: id,
enable: enable
}
})
}, deleteById(id) {
axios({
url: "/product/type/delete",
methods: "GET",
params: {
id: id
}
}).then(resp => {
if (resp.data.code == 200) {
this.$message({
message: '删除成功',
type: 'success'
});
this.getProductTypePagingList(this.pageNo, this.pageSize)
}
})
}
}
})
</script>
</body>
</html>
1
https://gitee.com/liu-xuejing/front-end-of-violet.git
git@gitee.com:liu-xuejing/front-end-of-violet.git
liu-xuejing
front-end-of-violet
violet-admin-web
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891