给菜单增加系统类型,并根据后台系统调用menu/getRouters/0接口
This commit is contained in:
		
							parent
							
								
									116cd0bad8
								
							
						
					
					
						commit
						444a3bf9b9
					
				| 
						 | 
					@ -3,7 +3,7 @@ import request from '@/utils/request'
 | 
				
			||||||
// 获取路由
 | 
					// 获取路由
 | 
				
			||||||
export const getRouters = () => {
 | 
					export const getRouters = () => {
 | 
				
			||||||
  return request({
 | 
					  return request({
 | 
				
			||||||
    url: '/system/menu/getRouters',
 | 
					    url: '/system/menu/getRouters/0',
 | 
				
			||||||
    method: 'get'
 | 
					    method: 'get'
 | 
				
			||||||
  })
 | 
					  })
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -28,22 +28,22 @@ const AES_CONFIG = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// 登录配置
 | 
					// 登录配置
 | 
				
			||||||
const LOGIN_CONFIG = {
 | 
					const LOGIN_CONFIG = {
 | 
				
			||||||
  CODE_PHONE_LOGIN: DATA_SETTINGS.OPEN, // 手机号验证码登录(true:开启,false:关闭)
 | 
					  // CODE_PHONE_LOGIN: DATA_SETTINGS.CLOSE, // 手机号验证码登录(true:开启,false:关闭)
 | 
				
			||||||
  CODE_EMAIL_LOGIN: DATA_SETTINGS.OPEN,// 邮箱验证码登录(true:开启,false:关闭)
 | 
					  // CODE_EMAIL_LOGIN: DATA_SETTINGS.OPEN,// 邮箱验证码登录(true:开启,false:关闭)
 | 
				
			||||||
  PHONE_LOGIN: DATA_SETTINGS.OPEN, // 手机号密码登录(true:开启,false:关闭)
 | 
					  PHONE_LOGIN: DATA_SETTINGS.OPEN, // 手机号密码登录(true:开启,false:关闭)
 | 
				
			||||||
  EMAIL_LOGIN: DATA_SETTINGS.OPEN // 邮箱密码登录(true:开启,false:关闭)
 | 
					  EMAIL_LOGIN: DATA_SETTINGS.OPEN // 邮箱密码登录(true:开启,false:关闭)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
//注册配置
 | 
					//注册配置
 | 
				
			||||||
const REGISTER_CONFIG = {
 | 
					const REGISTER_CONFIG = {
 | 
				
			||||||
  PHONE_REGISTER: DATA_SETTINGS.OPEN, // 手机号注册(true:开启,false:关闭)
 | 
					  PHONE_REGISTER: DATA_SETTINGS.CLOSE, // 手机号注册(true:开启,false:关闭)
 | 
				
			||||||
  EMAIL_REGISTER: DATA_SETTINGS.OPEN // 邮箱注册(true:开启,false:关闭)
 | 
					  EMAIL_REGISTER: DATA_SETTINGS.CLOSE // 邮箱注册(true:开启,false:关闭)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// 配置设置
 | 
					// 配置设置
 | 
				
			||||||
const CONFIG = {
 | 
					const CONFIG = {
 | 
				
			||||||
  STRENGTH: STRENGTH_LEVELS.STRONG,//密码强度配置
 | 
					  STRENGTH: STRENGTH_LEVELS.STRONG,//密码强度配置
 | 
				
			||||||
  IS_OPEN_REGISTER: REGISTER_CONFIG.PHONE_REGISTER || REGISTER_CONFIG.EMAIL_REGISTER, // 是否开启注册
 | 
					  IS_OPEN_REGISTER: REGISTER_CONFIG.PHONE_REGISTER || REGISTER_CONFIG.EMAIL_REGISTER, // 是否开启注册
 | 
				
			||||||
  IS_CODE_LOGIN: LOGIN_CONFIG.CODE_EMAIL_LOGIN || LOGIN_CONFIG.CODE_PHONE_LOGIN, // 是否开启短信登录
 | 
					  IS_CODE_LOGIN: LOGIN_CONFIG.EMAIL_LOGIN || LOGIN_CONFIG.PHONE_LOGIN, // 是否开启短信登录
 | 
				
			||||||
  // 数据设置
 | 
					  // 数据设置
 | 
				
			||||||
  dataSettings: {
 | 
					  dataSettings: {
 | 
				
			||||||
    integrityCheck: DATA_SETTINGS.CLOSE, // 数据完整性校验(true:开启,false:关闭)
 | 
					    integrityCheck: DATA_SETTINGS.CLOSE, // 数据完整性校验(true:开启,false:关闭)
 | 
				
			||||||
| 
						 | 
					@ -67,8 +67,8 @@ function getPlaceholderText() {
 | 
				
			||||||
// 获取占位符文本的函数
 | 
					// 获取占位符文本的函数
 | 
				
			||||||
function getCodePlaceholderText() {
 | 
					function getCodePlaceholderText() {
 | 
				
			||||||
  const loginOptions = []
 | 
					  const loginOptions = []
 | 
				
			||||||
  if (LOGIN_CONFIG.CODE_PHONE_LOGIN) loginOptions.push('手机号')
 | 
					  if (LOGIN_CONFIG.PHONE_LOGIN) loginOptions.push('手机号')
 | 
				
			||||||
  if (LOGIN_CONFIG.CODE_EMAIL_LOGIN) loginOptions.push('邮箱')
 | 
					  if (LOGIN_CONFIG.EMAIL_LOGIN) loginOptions.push('邮箱')
 | 
				
			||||||
  return loginOptions.length ? loginOptions.join('/') : ''
 | 
					  return loginOptions.length ? loginOptions.join('/') : ''
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -265,13 +265,15 @@
 | 
				
			||||||
              </el-radio-group>
 | 
					              </el-radio-group>
 | 
				
			||||||
            </el-form-item>
 | 
					            </el-form-item>
 | 
				
			||||||
          </el-col>
 | 
					          </el-col>
 | 
				
			||||||
<!--          <el-col :span="24" v-if="form.menuType == 'M'">-->
 | 
					<!--          v-if="form.menuType == 'M'"-->
 | 
				
			||||||
<!--            <el-form-item label="系统类型" prop="systemType">-->
 | 
					          <el-col :span="24" >
 | 
				
			||||||
<!--              <el-radio-group v-model="form.systemType">-->
 | 
					            <el-form-item label="系统类型" prop="systemType">
 | 
				
			||||||
<!--                <el-radio v-for="dict in dict.type.sys_login_type" :key="dict.value" :label="dict.value">{{dict.label}}</el-radio>-->
 | 
					              <el-checkbox-group v-model="systemType">
 | 
				
			||||||
<!--              </el-radio-group>-->
 | 
					                <el-checkbox v-for="dict in dict.type.sys_login_type" :key="dict.value" :label="dict.value">{{dict.label}}
 | 
				
			||||||
<!--            </el-form-item>-->
 | 
					                </el-checkbox>
 | 
				
			||||||
<!--          </el-col>-->
 | 
					              </el-checkbox-group>
 | 
				
			||||||
 | 
					            </el-form-item>
 | 
				
			||||||
 | 
					          </el-col>
 | 
				
			||||||
        </el-row>
 | 
					        </el-row>
 | 
				
			||||||
      </el-form>
 | 
					      </el-form>
 | 
				
			||||||
      <div slot="footer" class="dialog-footer">
 | 
					      <div slot="footer" class="dialog-footer">
 | 
				
			||||||
| 
						 | 
					@ -310,6 +312,7 @@ export default {
 | 
				
			||||||
      isExpandAll: false,
 | 
					      isExpandAll: false,
 | 
				
			||||||
      // 重新渲染表格状态
 | 
					      // 重新渲染表格状态
 | 
				
			||||||
      refreshTable: true,
 | 
					      refreshTable: true,
 | 
				
			||||||
 | 
					      systemType:[],
 | 
				
			||||||
      // 查询参数
 | 
					      // 查询参数
 | 
				
			||||||
      queryParams: {
 | 
					      queryParams: {
 | 
				
			||||||
        menuName: undefined,
 | 
					        menuName: undefined,
 | 
				
			||||||
| 
						 | 
					@ -328,6 +331,9 @@ export default {
 | 
				
			||||||
        path: [
 | 
					        path: [
 | 
				
			||||||
          { required: true, message: "路由地址不能为空", trigger: "blur" }
 | 
					          { required: true, message: "路由地址不能为空", trigger: "blur" }
 | 
				
			||||||
        ],
 | 
					        ],
 | 
				
			||||||
 | 
					        systemType: [
 | 
				
			||||||
 | 
					          { required: true, validator: this.validateSystemType, trigger: 'change' }
 | 
				
			||||||
 | 
					        ],
 | 
				
			||||||
        // systemType: [
 | 
					        // systemType: [
 | 
				
			||||||
        //   { required: true, message: "请选择系统类型", trigger: "change" }
 | 
					        //   { required: true, message: "请选择系统类型", trigger: "change" }
 | 
				
			||||||
        // ],
 | 
					        // ],
 | 
				
			||||||
| 
						 | 
					@ -342,6 +348,16 @@ export default {
 | 
				
			||||||
    selected(name) {
 | 
					    selected(name) {
 | 
				
			||||||
      this.form.icon = name;
 | 
					      this.form.icon = name;
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /*系统类型自定义校验 */
 | 
				
			||||||
 | 
					    validateSystemType(rule, value, callback) {
 | 
				
			||||||
 | 
					      if (this.systemType.length > 0) {
 | 
				
			||||||
 | 
					        callback()
 | 
				
			||||||
 | 
					      } else {
 | 
				
			||||||
 | 
					        callback(new Error('请至少选择一个系统类型'))
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /** 查询菜单列表 */
 | 
					    /** 查询菜单列表 */
 | 
				
			||||||
    getList() {
 | 
					    getList() {
 | 
				
			||||||
      this.loading = true;
 | 
					      this.loading = true;
 | 
				
			||||||
| 
						 | 
					@ -388,7 +404,8 @@ export default {
 | 
				
			||||||
        isCache: "0",
 | 
					        isCache: "0",
 | 
				
			||||||
        visible: "0",
 | 
					        visible: "0",
 | 
				
			||||||
        status: "0",
 | 
					        status: "0",
 | 
				
			||||||
        // systemType:undefined
 | 
					        // 登录类型数组
 | 
				
			||||||
 | 
					        systemType: null,
 | 
				
			||||||
      };
 | 
					      };
 | 
				
			||||||
      this.resetForm("form");
 | 
					      this.resetForm("form");
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
| 
						 | 
					@ -425,9 +442,15 @@ export default {
 | 
				
			||||||
    /** 修改按钮操作 */
 | 
					    /** 修改按钮操作 */
 | 
				
			||||||
    handleUpdate(row) {
 | 
					    handleUpdate(row) {
 | 
				
			||||||
      this.reset();
 | 
					      this.reset();
 | 
				
			||||||
 | 
					      this.systemType.splice(0)
 | 
				
			||||||
      this.getTreeselect();
 | 
					      this.getTreeselect();
 | 
				
			||||||
      getMenu(row.menuId).then(response => {
 | 
					      getMenu(row.menuId).then(response => {
 | 
				
			||||||
        this.form = response.data;
 | 
					        this.form = response.data;
 | 
				
			||||||
 | 
					        const systemType = response.data.systemType
 | 
				
			||||||
 | 
					        // console.log("********************** systemType:" + systemType)
 | 
				
			||||||
 | 
					        if (systemType) {
 | 
				
			||||||
 | 
					          this.systemType = systemType.split(',')
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
        this.open = true;
 | 
					        this.open = true;
 | 
				
			||||||
        this.title = "修改菜单";
 | 
					        this.title = "修改菜单";
 | 
				
			||||||
      });
 | 
					      });
 | 
				
			||||||
| 
						 | 
					@ -435,6 +458,8 @@ export default {
 | 
				
			||||||
    /** 提交按钮 */
 | 
					    /** 提交按钮 */
 | 
				
			||||||
    submitForm: function() {
 | 
					    submitForm: function() {
 | 
				
			||||||
      this.$refs["form"].validate(valid => {
 | 
					      this.$refs["form"].validate(valid => {
 | 
				
			||||||
 | 
					        this.form.systemType = this.systemType.toString()
 | 
				
			||||||
 | 
					        // console.log("********************** this.form.systemType:" + this.form.systemType)
 | 
				
			||||||
        if (valid) {
 | 
					        if (valid) {
 | 
				
			||||||
          if (this.form.menuId != undefined) {
 | 
					          if (this.form.menuId != undefined) {
 | 
				
			||||||
            updateMenu(this.form).then(response => {
 | 
					            updateMenu(this.form).then(response => {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue