From 7ef52aef3afefc4885564a0d073100059d406816 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期三, 15 三月 2023 16:14:16 +0800
Subject: [PATCH] 修复报价预算单之前的在线excel数据
---
src/main/java/com/zy/crm/common/web/BaseController.java | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 53 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/crm/common/web/BaseController.java b/src/main/java/com/zy/crm/common/web/BaseController.java
index f157038..6216688 100644
--- a/src/main/java/com/zy/crm/common/web/BaseController.java
+++ b/src/main/java/com/zy/crm/common/web/BaseController.java
@@ -8,7 +8,9 @@
import com.core.controller.AbstractBaseController;
import com.core.exception.CoolException;
import com.zy.crm.system.entity.Dept;
+import com.zy.crm.system.entity.Role;
import com.zy.crm.system.service.DeptService;
+import com.zy.crm.system.service.RoleService;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.beans.factory.annotation.Autowired;
import com.zy.crm.manager.entity.Node;
@@ -44,6 +46,8 @@
private DeptService deptService;
@Autowired
private UserLoginService userLoginService;
+ @Autowired
+ private RoleService roleService;
protected Long getHostId(){
if (getUserId() == 9527) {
@@ -88,6 +92,14 @@
return getUser().getDeptId();
}
+ protected Role getRole(){
+ Role role = roleService.selectById(getUser().getRoleId());
+ if (null == role) {
+ throw new CoolException(BaseRes.DENIED);
+ }
+ return role;
+ }
+
protected String getComment(Class<?> cls, String fieldName){
Field[] fields = Cools.getAllFields(cls);
for (Field field : fields){
@@ -111,7 +123,7 @@
}
protected Dept getOriginDept(){
- Dept dept = deptService.getTop();
+ Dept dept = deptService.getTop(getHostId());
if (dept == null) {
throw new CoolException("閮ㄩ棬鏁版嵁閿欒");
}
@@ -187,6 +199,9 @@
}
String column = null;
if (field.isAnnotationPresent(TableField.class)) {
+ if (!field.getAnnotation(TableField.class).exist()) {
+ continue;
+ }
column = field.getAnnotation(TableField.class).value();
}
if (Cools.isEmpty(column)) {
@@ -208,4 +223,41 @@
wrapper.like(columns.get(i), condition);
}
}
+
+ //鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛锛屽搴旀潈闄愪笅鎵�鏈夌敤鎴穒d銆傦紙鏅�氳亴鍛樿幏鍙栬嚜宸憋紝棰嗗鑾峰彇鑷繁鍙婁笅灞烇紝瓒呯骇绠$悊鍛樺叏閮級
+ protected ArrayList<Long> getUserRoleBelongsToUserId() {
+ User user = getUser();
+ ArrayList<Long> userIds = new ArrayList<>();
+ if (user.getRoleCode().equals("boss")) {
+ //鍏ㄩ儴鏉冮檺
+ userIds = null;
+ } else if (user.getRoleCode().equals("manager")) {
+ //鑷繁鍙婁笅灞炴潈闄�
+ userIds.add(getUserId());
+ EntityWrapper<User> entityWrapper = new EntityWrapper<>();
+ entityWrapper.eq("dept_id", user.getDeptId());
+ List<User> userList = userService.selectList(entityWrapper);
+ for (User item : userList) {
+ userIds.add(item.getId());
+ }
+ }else{
+ //鑷繁鏉冮檺
+ userIds.add(getUserId());
+ }
+
+ return userIds;
+ }
+
+ protected ArrayList<Long> getUserRoleBelongsToUserId(String permission) {
+ User user = getUser();
+ if (user.getDeptName().equals("骞冲簱瑙勫垝缁�") || user.getDeptName().equals("鏍镐环缁�")) {
+ if (permission.equals("allopen")) {
+ //鏉冮檺鍏ㄩ儴寮�鏀�
+ return null;
+ }
+ }
+
+ //杩斿洖榛樿閫夋嫨鏂规
+ return getUserRoleBelongsToUserId();
+ }
}
--
Gitblit v1.9.1