diff --git a/resource/WEB-INF/prop/hrmSalary.properties b/resource/WEB-INF/prop/hrmSalary.properties new file mode 100644 index 000000000..632189333 --- /dev/null +++ b/resource/WEB-INF/prop/hrmSalary.properties @@ -0,0 +1,7 @@ +#?????? +log=ture +#?????? +isPermission=true +#??????id +salaryAdminRoleId=28 + diff --git a/src/com/engine/salary/util/ResponseResult.java b/src/com/engine/salary/util/ResponseResult.java index 5950f3da6..b3c2e7d10 100644 --- a/src/com/engine/salary/util/ResponseResult.java +++ b/src/com/engine/salary/util/ResponseResult.java @@ -25,19 +25,29 @@ public class ResponseResult { private static final long serialVersionUID = 1L; - private User user; - private boolean permission; + private final User user; + private boolean permission = true; - HrmCommonService hrmCommonService = new HrmCommonServiceImpl(); + private final HrmCommonService hrmCommonService = new HrmCommonServiceImpl(); + + private final BaseBean baseBean = new BaseBean(); + + private final String salaryAdminRoleId = baseBean.getPropValue("hrmSalary", "salaryAdminRoleId"); + private final Boolean isPermission = baseBean.getPropValue("hrmSalary", "isPermission").equals("true"); public ResponseResult(User user) { this.user = user; } + public ResponseResult(User user, boolean permission) { + this.user = user; + this.permission = permission; + } + private void permission() { - if (permission) { + if (isPermission && permission) { List roleInfo = hrmCommonService.getRoleInfo(user.getUID()); - roleInfo.stream().map(m -> (Map) m).filter(m -> m.get("roleid") != null && m.get("roleid").toString().equals("28")).findFirst().orElseThrow(() -> new SalaryRunTimeException("无权限")); + roleInfo.stream().map(m -> (Map) m).filter(m -> m.get("roleid") != null && m.get("roleid").toString().equals(salaryAdminRoleId)).findFirst().orElseThrow(() -> new SalaryRunTimeException("无权限")); } } @@ -86,19 +96,18 @@ public class ResponseResult { * 统一返回方法 */ public String run(Function f, T m) { - BaseBean b = new BaseBean(); try { permission(); - b.writeLog(getJsonString(m)); + baseBean.writeLog(getJsonString(m)); return Ok(f.apply(m)); } catch (SalaryRunTimeException e) { return Error(e.getMessage()); } catch (ECException e) { - b.writeLog(e); + baseBean.writeLog(e); Throwable cause = e.getCause(); return Error(cause.getMessage()); } catch (Exception e) { - b.writeLog(e); + baseBean.writeLog(e); return Error(e.getMessage()); } } @@ -107,7 +116,6 @@ public class ResponseResult { * 统一返回方法(有参无返回) */ public String run(Consumer f, T t) { - BaseBean b = new BaseBean(); try { permission(); f.accept(t); @@ -115,11 +123,11 @@ public class ResponseResult { } catch (SalaryRunTimeException e) { return Error(e.getMessage()); } catch (ECException e) { - b.writeLog(e); + baseBean.writeLog(e); Throwable cause = e.getCause(); return Error(cause.getMessage()); } catch (Exception e) { - b.writeLog(e); + baseBean.writeLog(e); return Error(e.getMessage()); } } @@ -135,13 +143,11 @@ public class ResponseResult { } catch (SalaryRunTimeException e) { return Error(e.getMessage()); } catch (ECException e) { - BaseBean b = new BaseBean(); - b.writeLog(e); + baseBean.writeLog(e); Throwable cause = e.getCause(); return Error(cause.getMessage()); } catch (Exception e) { - BaseBean b = new BaseBean(); - b.writeLog(e); + baseBean.writeLog(e); return Error(e.getMessage()); } }