标签 vue
parent
23ce2d8517
commit
b1ca3ee4b9
|
@ -0,0 +1,35 @@
|
||||||
|
import request from '../utils/request';
|
||||||
|
|
||||||
|
export const gettagsData = query => {
|
||||||
|
return request({
|
||||||
|
url: 'http://127.0.0.1:8000/tags',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
export const uptagsData = query => {
|
||||||
|
return request({
|
||||||
|
url: 'http://127.0.0.1:8000/tags',
|
||||||
|
method: 'put',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
export const addTagrData = query => {
|
||||||
|
return request({
|
||||||
|
url: 'http://127.0.0.1:8000/tags',
|
||||||
|
method: 'post',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
export const deletetagsData = query => {
|
||||||
|
return request({
|
||||||
|
url: 'http://127.0.0.1:8000/tags',
|
||||||
|
method: 'delete',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
|
@ -72,33 +72,9 @@ export default {
|
||||||
title: '文件上传'
|
title: '文件上传'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: 'el-icon-lx-calendar',
|
icon: 'el-icon-lx-tag',
|
||||||
index: '3',
|
index: 'form',
|
||||||
title: '表单相关',
|
title: '标签相关'
|
||||||
subs: [
|
|
||||||
{
|
|
||||||
index: 'form',
|
|
||||||
title: '基本表单'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
index: '3-2',
|
|
||||||
title: '三级菜单',
|
|
||||||
subs: [
|
|
||||||
{
|
|
||||||
index: 'editor',
|
|
||||||
title: '富文本编辑器'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
index: 'markdown',
|
|
||||||
title: 'markdown编辑器'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
index: 'upload',
|
|
||||||
title: '文件上传'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: 'el-icon-lx-emoji',
|
icon: 'el-icon-lx-emoji',
|
||||||
|
|
|
@ -3,150 +3,246 @@
|
||||||
<div class="crumbs">
|
<div class="crumbs">
|
||||||
<el-breadcrumb separator="/">
|
<el-breadcrumb separator="/">
|
||||||
<el-breadcrumb-item>
|
<el-breadcrumb-item>
|
||||||
<i class="el-icon-lx-calendar"></i> 表单
|
<i class="el-icon-lx-cascades"></i> 标签相关
|
||||||
</el-breadcrumb-item>
|
</el-breadcrumb-item>
|
||||||
<el-breadcrumb-item>基本表单</el-breadcrumb-item>
|
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="form-box">
|
<div class="handle-box">
|
||||||
<el-form ref="form" :model="form" label-width="80px">
|
<el-input v-model="query.name" placeholder="标签" class="handle-input mr10"></el-input>
|
||||||
<el-form-item label="表单名称">
|
<el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
|
||||||
<el-input v-model="form.name"></el-input>
|
<div class="right">
|
||||||
</el-form-item>
|
<el-button type="primary" icon="el-icon-plus" @click="handleAddForm">新增标签</el-button></div>
|
||||||
<el-form-item label="选择器">
|
|
||||||
<el-select v-model="form.region" placeholder="请选择">
|
</div>
|
||||||
<el-option key="bbk" label="步步高" value="bbk"></el-option>
|
<el-table
|
||||||
<el-option key="xtc" label="小天才" value="xtc"></el-option>
|
:data="tableData"
|
||||||
<el-option key="imoo" label="imoo" value="imoo"></el-option>
|
border
|
||||||
</el-select>
|
class="table"
|
||||||
</el-form-item>
|
ref="multipleTable"
|
||||||
<el-form-item label="日期时间">
|
header-cell-class-name="table-header"
|
||||||
<el-col :span="11">
|
@selection-change="handleSelectionChange"
|
||||||
<el-date-picker
|
>
|
||||||
type="date"
|
<el-table-column type="selection" width="55" align="center"></el-table-column>
|
||||||
placeholder="选择日期"
|
<el-table-column prop="id" label="ID" width="55" align="center"></el-table-column>
|
||||||
v-model="form.date1"
|
<el-table-column label="标签名">
|
||||||
value-format="yyyy-MM-dd"
|
<template slot-scope="scope">{{scope.row.name}}</template>
|
||||||
style="width: 100%;"
|
</el-table-column>
|
||||||
></el-date-picker>
|
<el-table-column prop="user_name" label="上传者"></el-table-column>
|
||||||
</el-col>
|
|
||||||
<el-col class="line" :span="2">-</el-col>
|
<el-table-column prop="build_time" label="创建时间"></el-table-column>
|
||||||
<el-col :span="11">
|
<el-table-column label="操作" width="180" align="center">
|
||||||
<el-time-picker
|
<template slot-scope="scope">
|
||||||
placeholder="选择时间"
|
<el-button
|
||||||
v-model="form.date2"
|
type="text"
|
||||||
style="width: 100%;"
|
icon="el-icon-edit"
|
||||||
></el-time-picker>
|
@click="handleEdit(scope.$index, scope.row)"
|
||||||
</el-col>
|
>编辑</el-button>
|
||||||
</el-form-item>
|
<el-button
|
||||||
<el-form-item label="城市级联">
|
type="text"
|
||||||
<el-cascader :options="options" v-model="form.options"></el-cascader>
|
icon="el-icon-delete"
|
||||||
</el-form-item>
|
class="red"
|
||||||
<el-form-item label="选择开关">
|
@click="handleDelete(scope.row.uuid)"
|
||||||
<el-switch v-model="form.delivery"></el-switch>
|
>删除</el-button>
|
||||||
</el-form-item>
|
</template>
|
||||||
<el-form-item label="多选框">
|
</el-table-column>
|
||||||
<el-checkbox-group v-model="form.type">
|
</el-table>
|
||||||
<el-checkbox label="步步高" name="type"></el-checkbox>
|
<div class="pagination">
|
||||||
<el-checkbox label="小天才" name="type"></el-checkbox>
|
<el-pagination
|
||||||
<el-checkbox label="imoo" name="type"></el-checkbox>
|
background
|
||||||
</el-checkbox-group>
|
layout="total, prev, pager, next"
|
||||||
</el-form-item>
|
:current-page="query.pageIndex"
|
||||||
<el-form-item label="单选框">
|
:page-size="query.pageSize"
|
||||||
<el-radio-group v-model="form.resource">
|
:total="pageTotal"
|
||||||
<el-radio label="步步高"></el-radio>
|
@current-change="handlePageChange"
|
||||||
<el-radio label="小天才"></el-radio>
|
></el-pagination>
|
||||||
<el-radio label="imoo"></el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="文本框">
|
|
||||||
<el-input type="textarea" rows="5" v-model="form.desc"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" @click="onSubmit">表单提交</el-button>
|
|
||||||
<el-button>取消</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 新增弹出框 -->
|
||||||
|
<el-dialog title="编辑" :visible.sync="addVisible" width="30%">
|
||||||
|
<el-form ref="form" :model="form" label-width="70px">
|
||||||
|
<el-form-item label="标签名">
|
||||||
|
<el-input v-model="form.tagname"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="addVisible = false">取 消</el-button>
|
||||||
|
<el-button type="primary" @click="saveAdd(form.tagname)">确 定</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
<!-- 编辑弹出框 -->
|
||||||
|
<el-dialog title="编辑" :visible.sync="editVisible" width="30%">
|
||||||
|
<el-form ref="form" :model="form" label-width="70px">
|
||||||
|
<el-form-item label="用户名">
|
||||||
|
<el-input v-model="form.name"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="部门">
|
||||||
|
<el-input v-model="form.user_name"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="editVisible = false">取 消</el-button>
|
||||||
|
<el-button type="primary" @click="saveEdit(form.uuid, form.name, form.user_name)">确 定</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { gettagsData, addTagrData } from '../../api/tags';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'baseform',
|
name: 'basefrom',
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
options: [
|
query: {
|
||||||
{
|
|
||||||
value: 'guangdong',
|
|
||||||
label: '广东省',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
value: 'guangzhou',
|
|
||||||
label: '广州市',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
value: 'tianhe',
|
|
||||||
label: '天河区'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'haizhu',
|
|
||||||
label: '海珠区'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'dongguan',
|
|
||||||
label: '东莞市',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
value: 'changan',
|
|
||||||
label: '长安镇'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'humen',
|
|
||||||
label: '虎门镇'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'hunan',
|
|
||||||
label: '湖南省',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
value: 'changsha',
|
|
||||||
label: '长沙市',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
value: 'yuelu',
|
|
||||||
label: '岳麓区'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
form: {
|
|
||||||
name: '',
|
name: '',
|
||||||
region: '',
|
pageIndex: 1,
|
||||||
date1: '',
|
pageSize: 10
|
||||||
date2: '',
|
},
|
||||||
delivery: true,
|
tableData: [],
|
||||||
type: ['步步高'],
|
multipleSelection: [],
|
||||||
resource: '小天才',
|
delList: [],
|
||||||
desc: '',
|
editVisible: false,
|
||||||
options: []
|
addVisible: false,
|
||||||
}
|
pageTotal: 0,
|
||||||
|
form: {},
|
||||||
|
idx: -1,
|
||||||
|
id: -1
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
onSubmit() {
|
// 获取数据
|
||||||
this.$message.success('提交成功!');
|
getData() {
|
||||||
|
gettagsData(this.query).then(res => {
|
||||||
|
console.log(res);
|
||||||
|
this.tableData = res.msg.tags_list;
|
||||||
|
this.pageTotal = res.msg.pageTotal;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 触发搜索按钮
|
||||||
|
handleSearch() {
|
||||||
|
this.$set(this.query, 'pageIndex', 1);
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
// 删除操作
|
||||||
|
handleDelete(uuid) {
|
||||||
|
// 二次确认删除
|
||||||
|
this.uuid = uuid;
|
||||||
|
let data ={
|
||||||
|
uuid : this.uuid,
|
||||||
|
}
|
||||||
|
this.$confirm('确定要删除吗?', '提示', {
|
||||||
|
type: 'warning'
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
deleteuserData(data).then((res)=>{
|
||||||
|
console.log(res)
|
||||||
|
})
|
||||||
|
this.$message.success('删除成功');
|
||||||
|
this.getData();
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
// 多选操作
|
||||||
|
handleSelectionChange(val) {
|
||||||
|
this.multipleSelection = val;
|
||||||
|
},
|
||||||
|
delAllSelection() {
|
||||||
|
const length = this.multipleSelection.length;
|
||||||
|
let str = '';
|
||||||
|
this.delList = this.delList.concat(this.multipleSelection);
|
||||||
|
for (let i = 0; i < length; i++) {
|
||||||
|
str += this.multipleSelection[i].name + ' ';
|
||||||
|
}
|
||||||
|
this.$message.error(`删除了${str}`);
|
||||||
|
this.multipleSelection = [];
|
||||||
|
},
|
||||||
|
// 编辑操作
|
||||||
|
handleEdit(index, row) {
|
||||||
|
this.idx = index,
|
||||||
|
this.form = row,
|
||||||
|
this.editVisible = true;
|
||||||
|
|
||||||
|
},
|
||||||
|
// 新增标签
|
||||||
|
handleAddForm(){
|
||||||
|
this.addVisible = true;
|
||||||
|
},
|
||||||
|
// 保存新增
|
||||||
|
saveAdd(name){
|
||||||
|
console.log(name)
|
||||||
|
this.addVisible = false;
|
||||||
|
this.$message.success(`新增成功`);
|
||||||
|
this.name = name;
|
||||||
|
let data = {
|
||||||
|
name : this.name,
|
||||||
|
}
|
||||||
|
console.log(data)
|
||||||
|
addTagrData(data).then((res)=>{
|
||||||
|
console.log(res)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 保存编辑
|
||||||
|
saveEdit(uuid, name, department) {
|
||||||
|
this.editVisible = false;
|
||||||
|
this.$message.success(`修改成功`);
|
||||||
|
this.uuid = uuid;
|
||||||
|
this.department = department;
|
||||||
|
this.name = name;
|
||||||
|
let data = {
|
||||||
|
department : this.department,
|
||||||
|
name : this.name,
|
||||||
|
uuid : this.uuid,
|
||||||
|
|
||||||
|
}
|
||||||
|
upUserData(data).then((res)=>{
|
||||||
|
console.log(res)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 分页导航
|
||||||
|
handlePageChange(val) {
|
||||||
|
this.$set(this.query, 'pageIndex', val);
|
||||||
|
this.getData();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.handle-box {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.handle-select {
|
||||||
|
width: 120px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.handle-input {
|
||||||
|
width: 300px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
.table {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
.red {
|
||||||
|
color: #ff0000;
|
||||||
|
}
|
||||||
|
.mr10 {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
.table-td-thumb {
|
||||||
|
display: block;
|
||||||
|
margin: auto;
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
Loading…
Reference in New Issue