package com.huimv.manage.sys.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.huimv.manage.sys.entity.AccountGroup;
import com.huimv.manage.sys.entity.GroupMenu;
import com.huimv.manage.sys.entity.Menu;
import com.huimv.manage.sys.mapper.AccountGroupMapper;
import com.huimv.manage.sys.mapper.GroupMenuMapper;
import com.huimv.manage.sys.mapper.MenuMapper;
import com.huimv.manage.sys.service.IMenuService;
import com.huimv.manage.common.utils.Result;
import com.huimv.manage.common.utils.ResultCode;;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*
* 服务实现类
*
*
* @author astupidcoder
* @since 2021-09-09
*/
@Service
public class MenuServiceImpl extends ServiceImpl implements IMenuService {
@Autowired
private MenuMapper menuMapper;
@Autowired
private AccountGroupMapper accountGroupMapper;
@Autowired
private GroupMenuMapper groupMenuMapper;
@Override
public Result addMenu(Menu menu,Integer userId) {
try {
if (menu == null){
return new Result(10002,"参数错误",false);
}
menuMapper.insert(menu);
Integer id = menu.getId();
List accounts = accountGroupMapper.selectList(new QueryWrapper().eq("account_id", userId));
for (AccountGroup account : accounts) {
GroupMenu groupMenu = new GroupMenu();
groupMenu.setGroupId(account.getGroupId());
groupMenu.setMenuId(id);
groupMenuMapper.insert(groupMenu);
}
return new Result(10000,"添加成功",true);
}catch (Exception e){
return new Result(10001,"添加失败",false);
}
}
@Override
public Result editMenu(Menu menu) {
try {
if (menu.getId() == null){
return new Result(10002,"请选择要修改的菜单",false);
}
menuMapper.updateById(menu);
return new Result(10000,"修改成功",true);
}catch (Exception e){
return new Result(10001,"修改失败",false);
}
}
@Override
public Result removeMenu(Integer menuId) {
try {
QueryWrapper