package com.vci.web.controller; import com.vci.corba.common.PLException; import com.vci.corba.framework.data.GrandValue; import com.vci.dto.OsPvolumeDTO; import com.vci.starter.web.annotation.log.VciBusinessLog; import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.util.ControllerUtil; import com.vci.starter.web.util.VciBaseUtil; import com.vci.web.service.OsDataAuthServiceI; import com.vci.web.util.Func; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.Arrays; import java.util.Date; import java.util.List; /** * 数据权限的控制器 * @author yuxc * @date 2024-11-25 */ @RequestMapping("/dataAuthController") @RestController public class OsDataAuthController { /** * 数据权限服务 */ @Autowired private OsDataAuthServiceI osDataAuthServiceI; /** * 日志 */ private Logger logger = LoggerFactory.getLogger(getClass()); /** * 获取当前业务类型下的数据权限相关信息 * @return 数据 */ @GetMapping("/getData") public BaseResult getData(String typeName){ try { return osDataAuthServiceI.getData(typeName); } catch (PLException e) { BaseResult objectBaseResult = new BaseResult<>(); objectBaseResult.setCode(Integer.parseInt(e.code)); objectBaseResult.setMsg(Arrays.toString(e.messages)); return objectBaseResult; } } /** * 保存数据权限数据 * @return 保存结果 */ @PostMapping("/saveGrand") public BaseResult saveGrand(@RequestBody List grandValues){ try { return osDataAuthServiceI.saveGrand(grandValues); }catch (Exception e){ e.printStackTrace(); String exceptionMessage = "保存数据权限时出现错误,原因:" + VciBaseUtil.getExceptionMessage(e); logger.error(exceptionMessage); return BaseResult.fail(exceptionMessage); } } /** * 删除数据权限 * @param typeName 业务类型 * @param ruleName 规则名称 * @return 删除结果 */ @DeleteMapping("/deleteTypeRuleGrand") public BaseResult deleteTypeRuleGrand(String typeName,String ruleName){ try { return osDataAuthServiceI.deleteTypeRuleGrand(typeName,ruleName); }catch (Exception e){ e.printStackTrace(); String exceptionMessage = "删除数据权限时出现错误,原因:" + VciBaseUtil.getExceptionMessage(e); logger.error(exceptionMessage); return BaseResult.fail(exceptionMessage); } } }