Commit 11811f64 authored by zhengke's avatar zhengke

修改

parent 9ebdf5e7
...@@ -84,3 +84,15 @@ export function SetWebMenu(data) { ...@@ -84,3 +84,15 @@ export function SetWebMenu(data) {
}) })
} }
/**
* 获取网站菜单详情
*
*/
export function GetWebMenu(data) {
return request({
url: '/WebManager/GetWebMenu',
method: 'post',
data
})
}
...@@ -10,18 +10,18 @@ ...@@ -10,18 +10,18 @@
<q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.Name" ref="Name" <q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.Name" ref="Name"
class="col-6 q-pr-lg q-pb-lg" label="菜单名称" :rules="[val => !!val || '请填写菜单名称']" /> class="col-6 q-pr-lg q-pb-lg" label="菜单名称" :rules="[val => !!val || '请填写菜单名称']" />
<q-input filled stack-label maxlength="100" :dense="false" v-model="objOption.MenuUrl" ref="MenuUrl" <q-input filled stack-label maxlength="100" :dense="false" v-model="objOption.MenuUrl" ref="MenuUrl"
class="col-6 q-pb-lg" label="菜单地址" /> class="col-6 q-pb-lg" label="菜单地址" :rules="[val => !!val || '请填写菜单地址']" />
<q-input stack-label maxlength="200" :dense="false" v-model="objOption.ParentId" class="col-6 q-pr-lg q-pb-lg" <q-select class="col-6 q-pr-lg q-pb-lg" v-model="objOption.MenuLevel" :options="MenuLevelOpts" emit-value
map-options label="菜单等级" />
<q-input stack-label maxlength="200" :dense="false" v-model="objOption.ParentId" class="col-6 q-pb-lg"
label="父级Id" /> label="父级Id" />
<q-input filled stack-label maxlength="100" :dense="false" @keyup.native="checkInteger(objOption,'MenuLevel')" v-model="objOption.MenuLevel" ref="MenuLevel"
class="col-6 q-pb-lg" label="菜单等级" />
<q-input filled stack-label maxlength="100" :dense="false" v-model="objOption.ClassName" ref="ClassName" <q-input filled stack-label maxlength="100" :dense="false" v-model="objOption.ClassName" ref="ClassName"
class="col-6 q-pb-lg q-pr-lg" label="班级名称" /> class="col-6 q-pb-lg q-pr-lg" label="班级名称" />
<q-input filled stack-label maxlength="100" :dense="false" @keyup.native="checkInteger(objOption,'SortNum')" v-model="objOption.SortNum" ref="SortNum" <q-input filled stack-label maxlength="100" :dense="false" @keyup.native="checkInteger(objOption,'SortNum')"
class="col-6 q-pb-lg" label="排序" /> v-model="objOption.SortNum" ref="SortNum" class="col-6 q-pb-lg" label="排序" />
<div class="col-6 q-pb-lg q-pr-lg"> <div class="col-6 q-pb-lg q-pr-lg">
<q-uploader :style="{ backgroundImage: 'url(' + objOption.Icon + ')' }" style="width:auto;height:200px" <q-uploader :style="{ backgroundImage: 'url(' + objOption.Icon + ')' }" style="width:auto;height:200px" flat
flat hide-upload-btn max-files="1" label="菜单图标" accept=".jpg, image/*" :factory="uploadFile" auto-upload> hide-upload-btn max-files="1" label="菜单图标" accept=".jpg, image/*" :factory="uploadFile" auto-upload>
</q-uploader> </q-uploader>
</div> </div>
</div> </div>
...@@ -38,9 +38,8 @@ ...@@ -38,9 +38,8 @@
<script> <script>
import { import {
GetNavTypeList,
SetWebMenu, SetWebMenu,
GetWebNav GetWebMenu
} from '../../api/system/webkit' } from '../../api/system/webkit'
import { import {
UploadSelfFile UploadSelfFile
...@@ -55,9 +54,23 @@ ...@@ -55,9 +54,23 @@
data() { data() {
return { return {
//菜单等级 //菜单等级
MenuLevelOpts: [], MenuLevelOpts: [{
//菜单类型 label: '全部',
NavTypeList: [], value: -1
},
{
label: '一级',
value: 1
},
{
label: '二级',
value: 2
},
{
label: '三级',
value: 3
}
],
persistent: true, persistent: true,
objOption: { objOption: {
Id: 0, Id: 0,
...@@ -65,9 +78,9 @@ ...@@ -65,9 +78,9 @@
MenuUrl: '', MenuUrl: '',
ParentId: 0, ParentId: 0,
MenuLevel: '', MenuLevel: '',
ClassName : '', ClassName: '',
Icon:'', Icon: '',
SortNum:'' SortNum: ''
}, },
optionTitle: "", optionTitle: "",
//菜单列表 //菜单列表
...@@ -76,24 +89,9 @@ ...@@ -76,24 +89,9 @@
} }
}, },
mounted() { mounted() {
this.initNavType();
this.initObj() this.initObj()
}, },
methods: { methods: {
//初始化下拉框
initNavType() {
GetNavTypeList().then(res => {
if (res.Code == 1) {
this.NavTypeList = res.Data;
} else {
this.$q.notify({
type: 'negative',
position: "top",
message: res.Message
})
}
})
},
uploadFile(files) { uploadFile(files) {
UploadSelfFile("course", files[0], res => { UploadSelfFile("course", files[0], res => {
if (res.Code == 1) { if (res.Code == 1) {
...@@ -104,26 +102,30 @@ ...@@ -104,26 +102,30 @@
//初始化表单 //初始化表单
initObj() { initObj() {
if (this.saveObj && this.saveObj.Id > 0) { if (this.saveObj && this.saveObj.Id > 0) {
GetWebNav({ GetWebMenu({
Id: this.saveObj.Id Id: this.saveObj.Id
}).then(res => { }).then(res => {
console.log(res, '数据'); console.log(res, '数据');
this.objOption.Id = res.Data.Id; this.objOption.Id = res.Data.Id;
this.objOption.NavTitle = res.Data.NavTitle; this.objOption.Name = res.Data.Name;
this.objOption.SubTitle = res.Data.SubTitle; this.objOption.MenuUrl = res.Data.MenuUrl;
this.objOption.BgImg = res.Data.BgImg; this.objOption.ParentId = res.Data.ParentId;
this.objOption.LinkUrl = res.Data.LinkUrl; this.objOption.MenuLevel = res.Data.MenuLevel;
this.objOption.NavType = res.Data.NavType; this.objOption.ClassName = res.Data.ClassName;
this.objOption.Icon = res.Data.Icon;
this.objOption.SortNum = res.Data.SortNum;
}) })
this.optionTitle = "修改网站导航信息" this.optionTitle = "修改网站菜单信息"
} else { } else {
this.optionTitle = "新增网站导航信息" this.optionTitle = "新增网站菜单信息"
this.objOption.Id = 0; this.objOption.Id = 0;
this.objOption.NavTitle = ''; this.objOption.Name = '';
this.objOption.SubTitle = ''; this.objOption.MenuUrl = '';
this.objOption.BgImg = ''; this.objOption.ParentId = 0;
this.objOption.LinkUrl = ''; this.objOption.MenuLevel = 0;
this.objOption.NavType = 0; this.objOption.ClassName = '';
this.objOption.Icon = '';
this.objOption.SortNum = 0;
} }
}, },
//关闭弹窗 //关闭弹窗
...@@ -133,21 +135,25 @@ ...@@ -133,21 +135,25 @@
}, },
//保存菜单 //保存菜单
saveWebkitMenu() { saveWebkitMenu() {
this.saveLoading = true this.$refs.Name.validate();
SetWebMenu(this.objOption).then(res => { this.$refs.MenuUrl.validate();
this.saveLoading = false if (!this.$refs.Name.hasError && !this.$refs.MenuUrl.hasError) {
this.$q.notify({ this.saveLoading = true
icon: 'iconfont icon-chenggong', SetWebMenu(this.objOption).then(res => {
color: 'accent', this.saveLoading = false
timeout: 2000, this.$q.notify({
message: '数据保存成功!', icon: 'iconfont icon-chenggong',
position: 'top' color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.$emit("success")
this.closeSaveForm()
}).catch(() => {
this.saveLoading = false
}) })
this.$emit("success") }
this.closeSaveForm()
}).catch(() => {
this.saveLoading = false
})
} }
}, },
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment