chenlu
2024-06-07 2f640b1038fa331954f78ed1f4317212cf5bb34d
north-glass-erp/src/main/java/com/example/erp/service/userInfo/PermissionRoleService.java
@@ -1,11 +1,18 @@
package com.example.erp.service.userInfo;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.erp.entity.userInfo.PermissionBasic;
import com.example.erp.entity.userInfo.PermissionRole;
import com.example.erp.mapper.userInfo.PermissionRoleMapper;
import com.example.erp.mapper.userInfo.UserMapper;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@DS("user_info")
@Service
@@ -26,4 +33,29 @@
    public List<String> getUserRole(Integer id) {
        return userMapper.getUserRole(id);
    }
    public Boolean savePermissionRole(Map<String, Object> permissionRoleMap) {
        JSONObject permissionRoleJson = new JSONObject(permissionRoleMap);
        List<PermissionBasic> permissionBasics =
                JSONArray.parseArray(
                        JSONObject.toJSONString(permissionRoleJson.get("detail")),
                        PermissionBasic.class);
        Integer roleId = (Integer) permissionRoleMap.get("id");
        permissionRoleMapper.delete(new QueryWrapper<PermissionRole>().eq("role_id", roleId));
        if(permissionBasics.isEmpty() || roleId == null ){
            return true;
        }
        List<PermissionRole> permissionRoles = new ArrayList<>();
        for (PermissionBasic permissionBasic : permissionBasics) {
            PermissionRole permissionRole = new PermissionRole();
            permissionRole.setRoleId(roleId);
            permissionRole.setPermissionId(permissionBasic.getId());
            permissionRoles.add(permissionRole);
        }
        return permissionRoleMapper.saveBatch(permissionRoles);
    }
}