Browse Source

🍽 修复角色勾选半变成全部勾选bug

master
wangxiang 3 years ago
parent
commit
a4e0e425f2
  1. 19
      docker-cloud/mysql/conf/my.cnf
  2. 2
      kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/AppConstants.java
  3. 36
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapTask.java
  4. 20
      kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/dto/CheckedInfo.java
  5. 5
      kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/entity/Role.java
  6. 5
      kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/entity/RoleMenu.java
  7. 44
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapTaskController.java
  8. 16
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/mapper/MapTaskMapper.java
  9. 20
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/MapTaskService.java
  10. 33
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapTaskServiceImpl.java
  11. 24
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapTaskMapper.xml
  12. 3
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/mapper/MenuMapper.java
  13. 3
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/MenuService.java
  14. 9
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/MenuServiceImpl.java
  15. 14
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/RoleServiceImpl.java
  16. 5
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/resources/mapper/MenuMapper.xml
  17. 2
      kicc-register/src/main/resources/bootstrap.yml
  18. 60
      kicc-ui/src/components/AMap/src/TaskModal.vue
  19. 50
      kicc-ui/src/components/AMap/src/map.data.ts
  20. 14
      kicc-ui/src/views/system/role/RoleDrawer.vue

19
docker-cloud/mysql/conf/my.cnf

@ -0,0 +1,19 @@
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 允许最大连接数
max_connections=2000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
max_allowed_packet = 32M
lower_case_table_names = 1
[mysqldump]
max_allowed_packet = 16M

2
kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/AppConstants.java

@ -14,4 +14,6 @@ public interface AppConstants {
String APP_MONITOR = "/monitor"; String APP_MONITOR = "/monitor";
String APP_COMMON = "/common";
} }

36
kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapTask.java

@ -0,0 +1,36 @@
package com.cloud.kicc.commonbiz.api.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.cloud.kicc.common.data.entity.CommonEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
*<p>
* 地图任务
*</p>
*
* @Author: entfrm开发团队-王翔
* @Date: 2022/6/6
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "common_map_task", excludeProperty = { "remarks", "delFlag" })
public class MapTask extends CommonEntity {
private static final long serialVersionUID = 1L;
@TableId
private String id;
private String name;
private String smallHospitalId;
private String largeHospitalId;
private String takeSpecimenId;
}

20
kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/dto/CheckedInfo.java

@ -0,0 +1,20 @@
package com.cloud.kicc.system.api.dto;
import lombok.Data;
/**
*<p>
* 前端Tree选中类型
*</p>
*
* @Author: entfrm开发团队-王翔
* @Date: 2022/6/6
*/
@Data
public class CheckedInfo {
private String[] checkedKeys;
private String[] halfCheckedKeys;
}

5
kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/entity/Role.java

@ -4,12 +4,11 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.cloud.kicc.common.data.entity.CommonEntity; import com.cloud.kicc.common.data.entity.CommonEntity;
import com.cloud.kicc.system.api.dto.CheckedInfo;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.util.List;
/** /**
*<p> *<p>
* 角色信息表 * 角色信息表
@ -54,7 +53,7 @@ public class Role extends CommonEntity {
/** 菜单组 */ /** 菜单组 */
@TableField(exist = false) @TableField(exist = false)
private String[] menuIds; private CheckedInfo menuIds;
/** 多租户组 */ /** 多租户组 */
@TableField(exist = false) @TableField(exist = false)

5
kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/entity/RoleMenu.java

@ -33,4 +33,9 @@ public class RoleMenu implements Serializable {
*/ */
private String menuId; private String menuId;
/**
* 勾选类型
*/
private String checkeType;
} }

44
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapTaskController.java

@ -0,0 +1,44 @@
package com.cloud.kicc.commonbiz.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.AppConstants;
import com.cloud.kicc.common.log.annotation.SysLog;
import com.cloud.kicc.commonbiz.api.entity.MapTask;
import com.cloud.kicc.commonbiz.service.MapTaskService;
import lombok.RequiredArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
*<p>
* 地图任务信息
*</p>
*
* @Author: entfrm开发团队-王翔
* @Date: 2022/6/6
*/
@RestController
@RequiredArgsConstructor
@RequestMapping(AppConstants.APP_COMMON + "/mapTask")
public class MapTaskController {
private final MapTaskService mapTaskService;
@GetMapping("/list/{takeSpecimenId}")
public R list(@PathVariable String takeSpecimenId) {
List<MapTask> list = mapTaskService.list(Wrappers.<MapTask>lambdaQuery().eq(MapTask::getTakeSpecimenId, takeSpecimenId));
return R.ok(list);
}
@SysLog("用户修改")
@PutMapping("/update")
@PreAuthorize("@pms.hasPermission('user_edit')")
public R update(@RequestBody List<MapTask> mapTasks) {
mapTaskService.batchUpdate(mapTasks);
return R.ok();
}
}

16
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/mapper/MapTaskMapper.java

@ -0,0 +1,16 @@
package com.cloud.kicc.commonbiz.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cloud.kicc.commonbiz.api.entity.MapTask;
/**
*<p>
* 地图任务
*</p>
*
* @Author: entfrm开发团队-王翔
* @Date: 2022/6/6
*/
public interface MapTaskMapper extends BaseMapper<MapTask> {
}

20
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/MapTaskService.java

@ -0,0 +1,20 @@
package com.cloud.kicc.commonbiz.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cloud.kicc.commonbiz.api.entity.MapTask;
import java.util.List;
/**
*<p>
* 地图任务
*</p>
*
* @Author: entfrm开发团队-王翔
* @Date: 2022/6/6
*/
public interface MapTaskService extends IService<MapTask> {
void batchUpdate(List<MapTask> mapTasks);
}

33
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapTaskServiceImpl.java

@ -0,0 +1,33 @@
package com.cloud.kicc.commonbiz.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cloud.kicc.commonbiz.api.entity.MapTask;
import com.cloud.kicc.commonbiz.mapper.MapTaskMapper;
import com.cloud.kicc.commonbiz.service.MapTaskService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
*<p>
* 地图任务
*</p>
*
* @Author: entfrm开发团队-王翔
* @Date: 2022/6/6
*/
@Service
@RequiredArgsConstructor
public class MapTaskServiceImpl extends ServiceImpl<MapTaskMapper, MapTask> implements MapTaskService {
@Transactional(noRollbackFor = Exception.class)
@Override
public void batchUpdate(List<MapTask> mapTasks) {
mapTasks.forEach(mapTask -> {
});
}
}

24
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapTaskMapper.xml

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cloud.kicc.system.mapper.DeptMapper">
<resultMap type="Dept" id="DeptResult">
<id property="deptId" column="dept_id"/>
<result property="code" column="code"/>
<result property="name" column="name"/>
<result property="parentId" column="parent_id"/>
<result property="sort" column="sort"/>
<result property="contacts" column="contacts"/>
<result property="phone" column="phone"/>
<result property="email" column="email"/>
<result property="status" column="status"/>
<result property="createById" column="create_by_id"/>
<result property="createByName" column="create_by_name"/>
<result property="createTime" column="create_time"/>
<result property="updateById" column="update_by_id"/>
<result property="updateByName" column="update_by_name"/>
<result property="updateTime" column="update_time"/>
<result property="delFlag" column="del_flag"/>
</resultMap>
</mapper>

3
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/mapper/MenuMapper.java

@ -2,6 +2,7 @@ package com.cloud.kicc.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cloud.kicc.system.api.entity.Menu; import com.cloud.kicc.system.api.entity.Menu;
import com.cloud.kicc.system.api.entity.RoleMenu;
import java.util.List; import java.util.List;
@ -37,6 +38,6 @@ public interface MenuMapper extends BaseMapper<Menu> {
* @param roleId 角色ID * @param roleId 角色ID
* @return 菜单编号列表 * @return 菜单编号列表
*/ */
List<String> selectMenusByRoleId(String roleId); List<RoleMenu> selectMenusByRoleId(String roleId);
} }

3
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/MenuService.java

@ -2,6 +2,7 @@ package com.cloud.kicc.system.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.cloud.kicc.system.api.entity.Menu; import com.cloud.kicc.system.api.entity.Menu;
import com.cloud.kicc.system.api.entity.RoleMenu;
import com.cloud.kicc.system.api.vo.MenuVo; import com.cloud.kicc.system.api.vo.MenuVo;
import java.util.List; import java.util.List;
@ -36,7 +37,7 @@ public interface MenuService extends IService<Menu> {
* @param roleId 角色ID * @param roleId 角色ID
* @return 菜单编号 * @return 菜单编号
*/ */
List<String> selectMenusByRoleId(String roleId); List<RoleMenu> selectMenusByRoleId(String roleId);
/** /**
* 构建树 * 构建树

9
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/MenuServiceImpl.java

@ -4,17 +4,20 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ReUtil; import cn.hutool.core.util.ReUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cloud.kicc.common.core.constant.RegexConstants;
import com.cloud.kicc.system.api.entity.Menu; import com.cloud.kicc.system.api.entity.Menu;
import com.cloud.kicc.system.api.entity.RoleMenu;
import com.cloud.kicc.system.api.enums.MenuEnum; import com.cloud.kicc.system.api.enums.MenuEnum;
import com.cloud.kicc.system.api.vo.MenuVo; import com.cloud.kicc.system.api.vo.MenuVo;
import com.cloud.kicc.system.api.vo.MetaVo; import com.cloud.kicc.system.api.vo.MetaVo;
import com.cloud.kicc.system.mapper.MenuMapper; import com.cloud.kicc.system.mapper.MenuMapper;
import com.cloud.kicc.system.service.MenuService; import com.cloud.kicc.system.service.MenuService;
import com.cloud.kicc.common.core.constant.RegexConstants;
import com.cloud.kicc.system.util.MenuRouteUtil; import com.cloud.kicc.system.util.MenuRouteUtil;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.*; import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -39,7 +42,7 @@ public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements Me
} }
@Override @Override
public List<String> selectMenusByRoleId(String roleId) { public List<RoleMenu> selectMenusByRoleId(String roleId) {
return baseMapper.selectMenusByRoleId(roleId); return baseMapper.selectMenusByRoleId(roleId);
} }

14
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/RoleServiceImpl.java

@ -54,12 +54,22 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements Ro
public boolean insertRoleMenu(Role role) { public boolean insertRoleMenu(Role role) {
boolean rows = true; boolean rows = true;
// 新增用户与角色管理 // 新增菜单与角色管理
List<RoleMenu> list = new ArrayList(); List<RoleMenu> list = new ArrayList();
for (String menuId : role.getMenuIds()) { // 新增勾选类型
for (String menuId : role.getMenuIds().getCheckedKeys()) {
RoleMenu rm = new RoleMenu(); RoleMenu rm = new RoleMenu();
rm.setRoleId(role.getId()); rm.setRoleId(role.getId());
rm.setMenuId(menuId); rm.setMenuId(menuId);
rm.setCheckeType("1");
list.add(rm);
}
// 新增半勾选类型
for (String menuId : role.getMenuIds().getHalfCheckedKeys()) {
RoleMenu rm = new RoleMenu();
rm.setRoleId(role.getId());
rm.setMenuId(menuId);
rm.setCheckeType("2");
list.add(rm); list.add(rm);
} }
if (list.size() > 0) { if (list.size() > 0) {

5
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/resources/mapper/MenuMapper.xml

@ -7,7 +7,6 @@
<result property="name" column="name"/> <result property="name" column="name"/>
<result property="parentId" column="parent_id"/> <result property="parentId" column="parent_id"/>
<result property="type" column="type"/> <result property="type" column="type"/>
<result property="redirect" column="redirect"/>
<result property="path" column="path"/> <result property="path" column="path"/>
<result property="component" column="component"/> <result property="component" column="component"/>
<result property="permission" column="permission"/> <result property="permission" column="permission"/>
@ -43,8 +42,8 @@
order by m.sort order by m.sort
</select> </select>
<select id="selectMenusByRoleId" parameterType="String" resultType="String"> <select id="selectMenusByRoleId" parameterType="String" resultType="RoleMenu">
select m.id select m.id menuId, rm.checke_type checkeType, rm.role_id roleId
from sys_menu m left join sys_role_menu rm on m.id = rm.menu_id from sys_menu m left join sys_role_menu rm on m.id = rm.menu_id
where m.del_flag = 0 and rm.role_id = #{roleId} where m.del_flag = 0 and rm.role_id = #{roleId}
order by m.sort order by m.sort

2
kicc-register/src/main/resources/bootstrap.yml

@ -8,7 +8,7 @@ db:
password: ${MYSQL_PWD:kanglai@2022} password: ${MYSQL_PWD:kanglai@2022}
#password: ${MYSQL_PWD:kanglai@2022} #password: ${MYSQL_PWD:kanglai@2022}
url: url:
0: jdbc:mysql://${MYSQL_HOST:120.26.168.56}:${MYSQL_PORT:8052}/${MYSQL_DB:kicc_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true 0: jdbc:mysql://${MYSQL_HOST:192.168.3.8}:${MYSQL_PORT:8052}/${MYSQL_DB:kicc_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
#0: jdbc:mysql://${MYSQL_HOST:192.168.3.10}:${MYSQL_PORT:8052}/${MYSQL_DB:kicc_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true #0: jdbc:mysql://${MYSQL_HOST:192.168.3.10}:${MYSQL_PORT:8052}/${MYSQL_DB:kicc_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
nacos: nacos:

60
kicc-ui/src/components/AMap/src/TaskModal.vue

@ -5,6 +5,13 @@
@register="registerModal" @register="registerModal"
@ok="handleSubmit" @ok="handleSubmit"
> >
<BasicTable @register="registerTable">
<template #toolbar>
<a-button type="primary"
@click="handleAdd()"
>新增任务</a-button>
</template>
</BasicTable>
<AForm ref="formElRef" <AForm ref="formElRef"
:labelCol="{ style: { width: '120px' } }" :labelCol="{ style: { width: '120px' } }"
:wrapperCol="{ style: { width: '100%' } }" :wrapperCol="{ style: { width: '100%' } }"
@ -18,27 +25,8 @@
</AFormItem> </AFormItem>
<ARow justify="center"> <ARow justify="center">
<ACol :span="12"> <ACol :span="12">
<AFormItem label="下级医院" name="smallHospital"> <AFormItem label="最优解决方案" name="smallHospital">
<a-input v-model:value="state.modelRef.smallHospital" <a-button>选择解决发方案</a-button>
placeholder="请输入参数名称"
allowClear
/>
</AFormItem>
</ACol>
<ACol :span="12">
<AFormItem label="上级医院" name="largeHospital">
<a-input v-model:value="state.modelRef.largeHospital"
placeholder="请输入参数键名"
allowClear
/>
</AFormItem>
</ACol>
<ACol :span="12">
<AFormItem label="上传文件" name="file">
<a-input v-model:value="state.modelRef.file"
placeholder="请输入参数键值"
allowClear
/>
</AFormItem> </AFormItem>
</ACol> </ACol>
</ARow> </ARow>
@ -49,6 +37,8 @@
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { Form, Input, Radio, Row, Col } from 'ant-design-vue'; import { Form, Input, Radio, Row, Col } from 'ant-design-vue';
import { BasicModal, ModalProps, useModalInner } from '/@/components/Modal'; import { BasicModal, ModalProps, useModalInner } from '/@/components/Modal';
import { BasicTable, useTable, EditRecordRow, BasicColumn } from '/@/components/Table';
import { formColumns } from './map.data';
/** 类型规范统一声明定义区域 */ /** 类型规范统一声明定义区域 */
interface WindowState { interface WindowState {
@ -94,8 +84,6 @@
// //
formElRef.value.resetFields(); formElRef.value.resetFields();
formElRef.value.clearValidate(); formElRef.value.clearValidate();
//
state.tag = data._tag;
const props: Partial<ModalProps> = { confirmLoading: false }; const props: Partial<ModalProps> = { confirmLoading: false };
// tag // tag
switch (state.tag) { switch (state.tag) {
@ -111,10 +99,31 @@
// : // :
setModalProps(props); setModalProps(props);
}); });
const [registerTable, { reload, expandAll, collapseAll, getDataSource }] = useTable({
rowKey: 'id',
columns: formColumns,
pagination: false,
striped: false,
useSearchForm: false,
showTableSetting: false,
bordered: true,
showIndexColumn: false,
canResize: false
});
/** 处理新增 */
function handleAdd() {
getDataSource().push({
id: '1',
smallHospitalId: '1',
largeHospitalId: '1'
});
}
/** 处理弹出框提交 */ /** 处理弹出框提交 */
async function handleSubmit() { async function handleSubmit() {
try { console.log(getDataSource());
/*try {
// //
const formData = await formElRef.value.validate(); const formData = await formElRef.value.validate();
console.log(formData); console.log(formData);
@ -134,6 +143,7 @@
emit('success'); emit('success');
} finally { } finally {
setModalProps({ confirmLoading: false }); setModalProps({ confirmLoading: false });
} }*/
} }
</script> </script>

50
kicc-ui/src/components/AMap/src/map.data.ts

@ -40,3 +40,53 @@ export const columns: BasicColumn[] = [
dataIndex: 'taskName' dataIndex: 'taskName'
} }
]; ];
export const formColumns: BasicColumn[] = [
{
title: '下级医院',
dataIndex: 'smallHospitalId',
edit: true,
editRow: true,
editComponent: 'Select',
editComponentProps: {
options: [
{
label: 'Option1',
value: '1'
},
{
label: 'Option2',
value: '2'
},
{
label: 'Option3',
value: '3'
}
]
}
},
{
title: '上级医院',
dataIndex: '0',
edit: true,
editRow: true,
editComponent: 'Select',
editComponentProps: {
options: [
{
label: 'Option1',
value: '1',
},
{
label: 'Option2',
value: '2',
},
{
label: 'Option3',
value: '3',
},
],
}
}
];

14
kicc-ui/src/views/system/role/RoleDrawer.vue

@ -39,7 +39,7 @@
interface WindowState { interface WindowState {
tag: string; tag: string;
menuTree: TreeItem[]; menuTree: TreeItem[];
checkedKeys: string[]; checkedKeys: Recordable;
} }
/** 通用变量统一声明区域 */ /** 通用变量统一声明区域 */
@ -49,7 +49,7 @@
// //
menuTree: [], menuTree: [],
// //
checkedKeys: [] checkedKeys: {}
}); });
/** https://v3.cn.vuejs.org/api/options-data.html#emits */ /** https://v3.cn.vuejs.org/api/options-data.html#emits */
const emit = defineEmits(['success', 'register']); const emit = defineEmits(['success', 'register']);
@ -77,8 +77,12 @@
props.title = '编辑角色'; props.title = '编辑角色';
const result = await getRoleMenuIds(roleId); const result = await getRoleMenuIds(roleId);
const role = await getRole(roleId); const role = await getRole(roleId);
state.checkedKeys = result.extend; const checked = {
await setFieldsValue(Object.assign({}, role, { menuIds: result.extend })); checkedKeys: result.extend?.filter(item => item.checkeType == '1')?.map(item=> item.menuId),
halfCheckedKeys: result.extend.filter(item => item.checkeType == '2')?.map(item=> item.menuId)
};
state.checkedKeys = checked;
await setFieldsValue(Object.assign({}, role, { menuIds: checked.checkedKeys }));
break; break;
} }
// : // :
@ -87,7 +91,7 @@
/** 处理选中的半复选框合并至勾选数据中 */ /** 处理选中的半复选框合并至勾选数据中 */
function handleHalfCheckedKeysMerge (checkedKeys: string[], e) { function handleHalfCheckedKeysMerge (checkedKeys: string[], e) {
state.checkedKeys = [...checkedKeys, ...e.halfCheckedKeys]; state.checkedKeys = { checkedKeys, halfCheckedKeys: e.halfCheckedKeys };
} }
/** 处理弹出框提交 */ /** 处理弹出框提交 */

Loading…
Cancel
Save