zory 3 weeks ago
parent
commit
0042998476

+ 3 - 3
src/views/manage/setting/menu/save.vue

@@ -37,8 +37,8 @@
 						</el-input>
 						<div class="el-form-item-msg">如父节点、链接或Iframe等没有视图的菜单不需要填写</div>
 					</el-form-item>
-					<el-form-item label="路由描述" prop="descs">
-						<el-input v-model="form.descs" clearable placeholder=""></el-input>
+					<el-form-item label="排序" prop="sort">
+						<el-input v-model="form.sort" clearable placeholder=""></el-input>
 					</el-form-item>
 					<el-form-item>
 						<el-button type="primary" @click="save" :loading="loading">保 存</el-button>
@@ -125,7 +125,7 @@
 			//保存
 			async save(){
 				this.loading = true
-				var res = await this.$API.auth.menu.post(this.form)
+				var res = await this.$API.menu.save.post(this.form)
 				this.loading = false
 				if(res.code == 1){
                     this.$emit('success')

+ 3 - 0
src/views/manage/wash/category/components/option.vue

@@ -0,0 +1,3 @@
+<template>
+    <div></div>
+</template>

+ 49 - 0
src/views/manage/wash/category/components/search.vue

@@ -0,0 +1,49 @@
+<template>
+    <fieldset>
+        <legend>
+            <el-tag type="info">条件筛选</el-tag>
+        </legend>
+        <el-form class="lv-form-inline" ref="searchForm" :model="searchKey" label-position="right" label-width="100px">
+            <div class="search-form">
+                <div class="form-left">
+                    <el-row :gutter="10">
+                        <el-col :span="this.$store.state.global.ismobile?12:4">
+                            <el-input v-model="searchKey.title" placeholder="标题" clearable :style="{ width: '100%' }" @keyup.enter="searchForm()">
+                                <template #prepend>标题</template>
+                            </el-input>
+                        </el-col>
+                        <el-col :span="this.$store.state.global.ismobile?12:4">
+                            <el-select v-model="searchKey.status" clearable placeholder="请选择状态" @change="searchForm" :style="{width: '100%'}">
+                                <el-option :value="2" label="正常"></el-option>
+                                <el-option :value="1" label="已禁用"></el-option>
+                                <template #prefix>状态</template>
+                            </el-select>
+                        </el-col>
+                        <el-col :span="this.$store.state.global.ismobile?12:4">
+                            <el-date-picker v-model="searchKey.create" :style="{width: '100%'}" placeholder="请选择创建时间" start-placeholder="开始时间" end-placeholder="结束时间" type="daterange" range-separator="至" @change="searchForm" />
+                        </el-col>
+                    </el-row>
+                </div>
+                <div class="form-line"></div>
+                <div class="form-right">
+                    <el-button type="primary" icon="el-icon-search" @click="searchForm">搜索</el-button>
+                </div>
+            </div>
+        </el-form>
+    </fieldset>
+</template>
+
+<script>
+export default {
+    data(){
+        return {
+            searchKey:{}
+        }
+    },
+    methods: {
+        searchForm(){
+            this.$emit("success",this.searchKey);
+        }
+    }
+}
+</script>

+ 3 - 0
src/views/manage/wash/category/components/table.vue

@@ -0,0 +1,3 @@
+<template>
+    <div></div>
+</template>

+ 65 - 0
src/views/manage/wash/category/index.vue

@@ -0,0 +1,65 @@
+<template>
+    <el-container class="flex-column">
+        <div class="channel_menu">
+            <el-menu mode="horizontal" class="channel-tabs" :default-active="activeName" @select="handleClick">
+                <el-menu-item :index="item.key" v-for="(item,indx) in menuData" :key="indx">{{item.name}}</el-menu-item>
+            </el-menu>
+        </div>
+        <div class="table-search">
+            <search @success="handleSuccess"></search>
+            <optionBtn @success="handleSuccess" :dataSelect="dataSelect" :dataSelectFull="dataSelectFull" ></optionBtn>
+        </div>
+        <el-main class="nopadding">
+            <div class="table-container">
+                <tablePage ref="tablePage" @success="tableHandle" @successFull="tableHandleFull"></tablePage>
+            </div>
+        </el-main>
+    </el-container>  
+</template>
+
+<script>
+import search from './components/search';
+import optionBtn from './components/option';
+import tablePage from './components/table';
+export default {
+    components: {
+        search,tablePage,optionBtn
+    },
+    data(){
+        return {
+            activeName:"first",
+            menuData:[],
+            searchKey:{},
+            dataSelect:[],
+            dataSelectFull:[],
+        }
+    },
+    mounted(){
+        // this.getMenuData();
+    },
+    methods: {
+        tableHandle(data){
+            this.dataSelect = data;
+        },
+        tableHandleFull(data){
+            this.dataSelectFull = data;
+        },
+        handleSuccess(data){
+            this.$refs.tablePage.upData(data)
+        },
+        async getMenuData(){
+            var resp = await this.$API.common.menu.get({"type":"account"});
+            if (resp.code !== 1) {
+                return this.$message.error(resp.msg);
+            }
+            this.activeName = resp.data.default;
+            this.menuData = resp.data.menu;
+        },
+        handleClick(name){
+            this.activeName = name;
+            this.searchKey.type = name;
+            this.$refs.tablePage.upData(this.searchKey)
+        }
+    }
+}
+</script>

+ 3 - 0
src/views/manage/wash/goods/components/option.vue

@@ -0,0 +1,3 @@
+<template>
+    <div></div>
+</template>

+ 49 - 0
src/views/manage/wash/goods/components/search.vue

@@ -0,0 +1,49 @@
+<template>
+    <fieldset>
+        <legend>
+            <el-tag type="info">条件筛选</el-tag>
+        </legend>
+        <el-form class="lv-form-inline" ref="searchForm" :model="searchKey" label-position="right" label-width="100px">
+            <div class="search-form">
+                <div class="form-left">
+                    <el-row :gutter="10">
+                        <el-col :span="this.$store.state.global.ismobile?12:4">
+                            <el-input v-model="searchKey.title" placeholder="标题" clearable :style="{ width: '100%' }" @keyup.enter="searchForm()">
+                                <template #prepend>标题</template>
+                            </el-input>
+                        </el-col>
+                        <el-col :span="this.$store.state.global.ismobile?12:4">
+                            <el-select v-model="searchKey.status" clearable placeholder="请选择状态" @change="searchForm" :style="{width: '100%'}">
+                                <el-option :value="2" label="正常"></el-option>
+                                <el-option :value="1" label="已禁用"></el-option>
+                                <template #prefix>状态</template>
+                            </el-select>
+                        </el-col>
+                        <el-col :span="this.$store.state.global.ismobile?12:4">
+                            <el-date-picker v-model="searchKey.create" :style="{width: '100%'}" placeholder="请选择创建时间" start-placeholder="开始时间" end-placeholder="结束时间" type="daterange" range-separator="至" @change="searchForm" />
+                        </el-col>
+                    </el-row>
+                </div>
+                <div class="form-line"></div>
+                <div class="form-right">
+                    <el-button type="primary" icon="el-icon-search" @click="searchForm">搜索</el-button>
+                </div>
+            </div>
+        </el-form>
+    </fieldset>
+</template>
+
+<script>
+export default {
+    data(){
+        return {
+            searchKey:{}
+        }
+    },
+    methods: {
+        searchForm(){
+            this.$emit("success",this.searchKey);
+        }
+    }
+}
+</script>

+ 3 - 0
src/views/manage/wash/goods/components/table.vue

@@ -0,0 +1,3 @@
+<template>
+    <div></div>
+</template>

+ 65 - 0
src/views/manage/wash/goods/index.vue

@@ -0,0 +1,65 @@
+<template>
+    <el-container class="flex-column">
+        <div class="channel_menu">
+            <el-menu mode="horizontal" class="channel-tabs" :default-active="activeName" @select="handleClick">
+                <el-menu-item :index="item.key" v-for="(item,indx) in menuData" :key="indx">{{item.name}}</el-menu-item>
+            </el-menu>
+        </div>
+        <div class="table-search">
+            <search @success="handleSuccess"></search>
+            <optionBtn @success="handleSuccess" :dataSelect="dataSelect" :dataSelectFull="dataSelectFull" ></optionBtn>
+        </div>
+        <el-main class="nopadding">
+            <div class="table-container">
+                <tablePage ref="tablePage" @success="tableHandle" @successFull="tableHandleFull"></tablePage>
+            </div>
+        </el-main>
+    </el-container>  
+</template>
+
+<script>
+import search from './components/search';
+import optionBtn from './components/option';
+import tablePage from './components/table';
+export default {
+    components: {
+        search,tablePage,optionBtn
+    },
+    data(){
+        return {
+            activeName:"first",
+            menuData:[],
+            searchKey:{},
+            dataSelect:[],
+            dataSelectFull:[],
+        }
+    },
+    mounted(){
+        // this.getMenuData();
+    },
+    methods: {
+        tableHandle(data){
+            this.dataSelect = data;
+        },
+        tableHandleFull(data){
+            this.dataSelectFull = data;
+        },
+        handleSuccess(data){
+            this.$refs.tablePage.upData(data)
+        },
+        async getMenuData(){
+            var resp = await this.$API.common.menu.get({"type":"account"});
+            if (resp.code !== 1) {
+                return this.$message.error(resp.msg);
+            }
+            this.activeName = resp.data.default;
+            this.menuData = resp.data.menu;
+        },
+        handleClick(name){
+            this.activeName = name;
+            this.searchKey.type = name;
+            this.$refs.tablePage.upData(this.searchKey)
+        }
+    }
+}
+</script>