Quellcode durchsuchen

前期管理数据获取

Wayne vor 3 Monaten
Ursprung
Commit
5ac1ef6382

+ 1 - 1
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/SubInfoService.java

@@ -50,7 +50,7 @@ public interface SubInfoService {
 							 String propKind, String indusKind, Date beginDate, Date endDate);
 
 	Page pageQueryReportListSql(Page page,LoginUserVO loginUserVO, String subName, String unitId,String kind, String status, String statusSp,
-								String propKind, String indusKind, Date beginDate, Date endDate);
+								String propKind, String indusKind, Date beginDate, Date endDate,List<String> subjectIds);
 
 
 

+ 15 - 25
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoServiceImpl.java

@@ -1180,7 +1180,7 @@ public class SubInfoServiceImpl implements SubInfoService {
 
     @Override
     public Page pageQueryReportListSql(Page page, LoginUserVO loginUserVO, String subName, String unitId, String kind, String status, String statusSp,
-                                       String propKind, String indusKind, Date beginDate, Date endDate) {
+                                       String propKind, String indusKind, Date beginDate, Date endDate,List<String> subjectIds) {
 
         StringBuffer sql = new StringBuffer();
         sql.append(" select a.id,a.status ,a.sub_name subName,a.amt_total amtTotal,a.begin_date beginDate,a.end_date endDate,ju.title unitName,ts.title subjectName, ts1.title indusKindName   ");
@@ -1194,28 +1194,6 @@ public class SubInfoServiceImpl implements SubInfoService {
 
         sql.append(" where a.logic_delete_flag =0 ");
 
-
-        //2024-03-28客户提出admin用户需查询和储备台账一样的数据
-        SecRole role = secRoleDao.findById(loginUserVO.getKind());
-        String subjectId = null;
-
-        if (role != null && (role.getCode().equals("005"))) {
-            unitId = null;
-            JUnit unit = jUnitDao.findById(loginUserVO.getUnitId());
-            if (unit != null) {
-                subjectId = unit.getSubjectId();
-            }
-        }
-
-        if (role != null && (role.getCode().equals("004"))) {
-            unitId = null;
-        }
-
-
-        if (!Objects.equals("ADMIN", loginUserVO.getId()) && StringUtil.isNotEmpty(unitId)) {
-            sql.append(" and a.unit_id ='" + unitId + "' ");
-        }
-
 		/*if(Objects.equals("ADMIN", loginUserVO.getId())) {
 
 			sql.append(" and ( a.status ='1' or a.status= '6' or  a.status= '7' or a.status = '8' ) ");
@@ -1259,8 +1237,20 @@ public class SubInfoServiceImpl implements SubInfoService {
             sql.append(" ) ");
 
         }
-        if (StringUtil.isNotEmpty(subjectId)) {
-            sql.append(" and a.subject_id=").append(subjectId);
+
+        if (subjectIds != null && !subjectIds.isEmpty()) {
+            // 拼接 SQL
+            sql.append(" and a.subject_id in ('");
+
+            // 拼接每个 subjectId
+            for (int i = 0; i < subjectIds.size(); i++) {
+                sql.append(subjectIds.get(i));
+                if (i < subjectIds.size() - 1) {
+                    sql.append("','"); // 拼接逗号分隔符
+                }
+            }
+
+            sql.append("')"); // 关闭括号
         }
 
         sql.append(" group BY a.id ");

+ 3 - 2
projects/src/main/java/com/rtrh/projects/web/controller/subject/api/SubInfoApiController.java

@@ -196,8 +196,9 @@ public class SubInfoApiController extends BaseController {
         try {
             String currUnitId = null;
             currUnitId = getCurUser().getUnitId();
-             Page pageData = subInfoService.pageQueryReportListSql(page, getCurUser().getLoginUser(), queryVO.getSubName(), currUnitId,
-                     null, queryVO.getStatus(), null, null, null, queryVO.getBeginDate(), queryVO.getEndDate());
+            List<String> subjectIds = getSubjectIds();
+            Page pageData = subInfoService.pageQueryReportListSql(page, getCurUser().getLoginUser(), queryVO.getSubName(), currUnitId,
+                     null, queryVO.getStatus(), null, null, null, queryVO.getBeginDate(), queryVO.getEndDate(),subjectIds);
              message.add(pageData.getList(), pageData.getTotalCount());
         } catch (Exception e) {
             logger.error("", e);