注意点
1.mapper内参数 是复制的导致复制出错 查了好久
2.list.get(i) list 使用.get(i) 还是基础太差
3.确定结构 所有查询 只和mapper有关mapper 值处理对应表查询
controller 只处理 接口 返回对象
其余都放到service
基本 遇到的问题都独立解决了 很多新手错误 但是都能自己解决
差熟练度而已
实现中 有些 需要 思考的
这里应该哦是事务提交才对 比如这个
1.3 重叠注意
1.SysRoleController
@GetMapping(value = "/findAllRoles/{userId}")
public Result findAllRoles(@PathVariable(value = "userId") Long userId) {
Map map = sysAssignService.findAllRoles(userId);
return Result.build(map , ResultCodeEnum.SUCCESS) ;
}
2.service
/**
查询角色列表
* */
List<SysRole> findAllRoles();
2.1 service Impl
@Override
public Map findAllRoles(Long userId) {
List<SysRole> sysRoleList = sysRoleMapper.findAllRoles();
List<Long> roleIds = sysAssignMapper.findAllRoles(userId);
Map map = new HashMap();
map.put("allRolesList",sysRoleList);
map.put("sysUserRoles",roleIds);
return map;
}
3.mapper
SysRoleMapper
/**
查询角色列表
* */
List<SysRole> findAllRoles();
SysAssignMapper
List<Long> findAllRoles(Long user_id);
3.mapper。xml
SysRoleMapper
<select id="findAllRoles" resultType="com.atguigu.spzx.model.entity.system.SysRole">
select <include refid="columns"/> from sys_role where is_deleted =0;
</select>
SysAssignMapper
<select id="findAllRoles" resultType="long">
select role_id from sys_user_role where user_id = #{ user_id };
</select>
2.用户提交数据角色
1。Controller
/***
//保存分配数据 存在第三张表中
/
@PostMapping("/doAssign")
public Result doAssign(@RequestBody AssginRoleDto assginRoleDto) {
int row = sysAssignService.doAssign(assginRoleDto);
if(row == 0){
return Result.build(assginRoleDto,ResultCodeEnum.INSERT_FAILL);
}else {
return Result.build(assginRoleDto,ResultCodeEnum.SUCCESS);
}
}
2.service
int doAssign(AssginRoleDto assginRoleDto);
2。1.serviceImpl
/*
这里应该哦是事务提交才对
* */
@Override
public int doAssign(AssginRoleDto assginRoleDto) {
int srow = 0;
for (int i = 0 ;i<assginRoleDto.getRoleIdList().size();i++){
List<Long> list = assginRoleDto.getRoleIdList();
Long role_id = list.get(i);
int row = sysAssignMapper.insert(role_id,assginRoleDto.getUserId());
srow = row+srow;
}
return srow;
}
3mapper
int insert(Long role_id, Long user_id);
3.1mapper。xml
<insert id="insert">
insert into sys_user_role(user_id , role_id,create_time , update_time , is_deleted)
values(#{user_id},#{role_id},now() , now() , 0)
</insert>