浏览代码

客户端、档案任务管理分页接口相关

liuyc 1 年之前
父节点
当前提交
558dd54fe9

+ 7 - 1
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/dto/ArchiveTaskDTO.java

@@ -20,9 +20,15 @@ public class ArchiveTaskDTO implements Serializable {
     @ApiModelProperty(value = "任务状态")
     private Integer statusValue;
 
-    @ApiModelProperty(value = "合同段id")
+    @ApiModelProperty(value = "当前用户登陆选择的项目id")
+    private Long projectIdValue;
+
+    @ApiModelProperty(value = "下拉框合同段id")
     private Long contractIdValue;
 
+    @ApiModelProperty(value = "当前用户登陆选择的合同段id(监理合同段使用)")
+    private Long currentContractId;
+
     @ApiModelProperty(value = "上报批次")
     private Integer batchValue;
 

+ 51 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/BusinessTaskDTO.java

@@ -0,0 +1,51 @@
+package org.springblade.business.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+
+/**
+ * 资料填报 - 任务管理page分页查询DTO
+ */
+@Data
+public class BusinessTaskDTO implements Serializable {
+
+    @ApiModelProperty(value = "选择菜单类型,1=待办,2=已办,3=我发起的")
+    private Integer selectedType;
+
+    @ApiModelProperty(value = "任务类型")
+    private Integer typeValue;
+
+    @ApiModelProperty(value = "任务状态")
+    private Integer statusValue;
+
+    @ApiModelProperty(value = "当前用户登陆选择的项目id")
+    private Long projectIdValue;
+
+    @ApiModelProperty(value = "下拉框合同段id")
+    private Long contractIdValue;
+
+    @ApiModelProperty(value = "当前用户登陆选择的合同段id")
+    private Long currentContractId;
+
+    @ApiModelProperty(value = "上报批次")
+    private Integer batchValue;
+
+    @ApiModelProperty(value = "开始时间")
+    private String startTimeValue;
+
+    @ApiModelProperty(value = "结束时间")
+    private String endTimeValue;
+
+    @ApiModelProperty(value = "关键字查询输入框")
+    private String queryValue;
+
+    @ApiModelProperty(value = "每页条数")
+    private Integer size;
+
+    @ApiModelProperty(value = "当前页码")
+    private Integer current;
+
+}

+ 53 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/vo/BusinessTaskPageVO.java

@@ -0,0 +1,53 @@
+package org.springblade.business.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class BusinessTaskPageVO implements Serializable {
+
+    @ApiModelProperty(value = "任务id")
+    private Long id;
+
+    @ApiModelProperty(value = "任务名称")
+    private String taskName;
+
+    @ApiModelProperty(value = "任务类型")
+    private String taskTypeName;
+
+    @ApiModelProperty(value = "任务状态")
+    private String taskStatusName;
+
+    @ApiModelProperty(value = "开始时间")
+    private String startTime;
+
+    @ApiModelProperty(value = "限时时间")
+    private String endTime;
+
+    @ApiModelProperty(value = "任务描述")
+    private String taskDesc;
+
+    @ApiModelProperty(value = "上报人")
+    private String taskReportUserName;
+
+    @ApiModelProperty(value = "签字人员")
+    private String taskApproveUserNames;
+
+    @ApiModelProperty(value = "电签状态")
+    private String eVisaStatus;
+
+    @ApiModelProperty(value = "电签状态描述")
+    private String eVisaContents;
+
+    @ApiModelProperty(value = "上报类型")
+    private Integer approvalType;
+
+    @ApiModelProperty(value = "数据来源id")
+    private String formDataId;
+
+    @ApiModelProperty(value = "流程实例id")
+    private String processInstanceId;
+
+}

+ 55 - 20
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveFileTaskController.java

@@ -25,6 +25,8 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.evisa.feign.EVisaClient;
 import org.springblade.evisa.vo.TaskArchiveDTO;
+import org.springblade.manager.entity.ContractInfo;
+import org.springblade.manager.entity.ContractRelationJlyz;
 import org.springblade.manager.entity.SignPfxFile;
 import org.springblade.manager.feign.SignPfxClient;
 import org.springblade.system.user.entity.User;
@@ -154,19 +156,39 @@ public class ArchiveFileTaskController extends BladeController {
         int size = dto.getSize();
         //封装入参SQL
         List<Object> params = new ArrayList<>();
-        StringBuilder sqlString = new StringBuilder("SELECT * FROM u_task WHERE 1=1 AND approval_type = 4");
+        StringBuilder sqlString = new StringBuilder("SELECT * FROM u_task WHERE 1=1 AND approval_type = 4"); //approval_type = 4 表示档案任务
         if (ObjectUtil.isNotEmpty(dto.getTypeValue())) {
-            sqlString.append(" type = ?");
+            sqlString.append(" AND type = ?");
             params.add(dto.getTypeValue());
         }
         if (ObjectUtil.isNotEmpty(dto.getStatusValue())) {
             sqlString.append(" AND status = ?");
             params.add(dto.getStatusValue());
         }
-        if (ObjectUtil.isNotEmpty(dto.getContractIdValue())) {
-            sqlString.append(" AND contract_id = ?");
-            params.add(dto.getContractIdValue());
+
+        ContractInfo contractInfo = jdbcTemplate.queryForObject("select contract_type from m_contract_info where id = " + dto.getCurrentContractId(), new BeanPropertyRowMapper<>(ContractInfo.class));
+        if (contractInfo != null && contractInfo.getContractType().equals(1)) {
+            //施工合同段正常查询
+            if (ObjectUtil.isNotEmpty(dto.getContractIdValue())) {
+                sqlString.append(" AND contract_id = ?");
+                params.add(dto.getContractIdValue());
+            } else {
+                //如果合同段id=null,那么查询当前项目下所有合同段任务
+                if (ObjectUtil.isNotEmpty(dto.getProjectIdValue())) {
+                    sqlString.append(" AND project_id = ?");
+                    params.add(dto.getProjectIdValue());
+                } else {
+                    throw new ServiceException("未获取到项目信息,请联系管理员");
+                }
+            }
+        } else if (contractInfo != null && (contractInfo.getContractType().equals(2) || contractInfo.getContractType().equals(3))) {
+            //如果是监理合同段,那么默认查询关联的全部施工合同段+本身任务
+            List<ContractRelationJlyz> contractRelationJLYZ = jdbcTemplate.query("select contract_id_sg from m_contract_relation_jlyz where contract_id_jlyz = " + dto.getCurrentContractId(), new BeanPropertyRowMapper<>(ContractRelationJlyz.class));
+            Set<Long> ids = contractRelationJLYZ.stream().map(ContractRelationJlyz::getContractIdSg).collect(Collectors.toSet());
+            ids.add(dto.getCurrentContractId()); //把监理本身也加入查询
+            sqlString.append(" AND contract_id in(").append(StringUtils.join(ids, ",")).append(")");
         }
+
         if (ObjectUtil.isNotEmpty(dto.getBatchValue())) {
             sqlString.append(" AND batch = ?");
             params.add(dto.getBatchValue());
@@ -184,23 +206,33 @@ public class ArchiveFileTaskController extends BladeController {
         }
         if (ObjectUtil.isNotEmpty(dto.getSelectedType())) {
             sqlString.append(" AND (");
-            if (dto.getSelectedType().equals(1)) { //待办
-                sqlString.append("EXISTS (SELECT 1 FROM u_task_parallel WHERE u_task.process_instance_id = u_task_parallel.process_instance_id AND u_task_parallel.status = ? AND u_task_parallel.task_user = ?)");
-                params.add(1);
-                params.add(SecureUtil.getUserId());
-                if (ObjectUtil.isEmpty(dto.getStatusValue())) {
-                    //如果未选择任务状态,那么默认待审批
+            if (dto.getSelectedType().equals(1)) { //待办页面
+
+                //如果是待办页面,且 任务状态下拉框 选择的是 待审批状态 的任务,那么才查询数据
+                if (ObjectUtil.isNotEmpty(dto.getStatusValue()) && dto.getStatusValue().equals(1)) {
+                    sqlString.append("EXISTS (SELECT 1 FROM u_task_parallel WHERE u_task.process_instance_id = u_task_parallel.process_instance_id AND u_task_parallel.status = ? AND u_task_parallel.task_user = ?)");
+                    params.add(1);
+                    params.add(SecureUtil.getUserId());
+
+                    //如果是待办页面,且 任务状态下拉框 选择的不是 待审批状态 的任务,那么直接返回null
+                } else if (ObjectUtil.isNotEmpty(dto.getStatusValue()) && !dto.getStatusValue().equals(1)) {
+                    return null;
+
+                    //如果是待办页面,没选择 任务状态下拉框,那么就默认查询 待审批状态 任务
+                } else if (ObjectUtil.isEmpty(dto.getStatusValue())) {
+                    sqlString.append("EXISTS (SELECT 1 FROM u_task_parallel WHERE u_task.process_instance_id = u_task_parallel.process_instance_id AND u_task_parallel.status = ? AND u_task_parallel.task_user = ?)");
+                    params.add(1);
+                    params.add(SecureUtil.getUserId());
                     sqlString.append(" AND status = 1");
                 }
-            } else if (dto.getSelectedType().equals(2)) { //已办
+
+            } else if (dto.getSelectedType().equals(2)) { //已办页面
                 sqlString.append("EXISTS (SELECT 1 FROM u_task_parallel WHERE u_task.process_instance_id = u_task_parallel.process_instance_id AND u_task_parallel.status = ? AND u_task_parallel.task_user = ?)");
+                //当前自己的任务必须是已审批,才视为已办
                 params.add(2);
                 params.add(SecureUtil.getUserId());
-                if (ObjectUtil.isEmpty(dto.getStatusValue())) {
-                    //如果未选择任务状态,那么默认已审批、已废除
-                    sqlString.append(" AND status in(2,3)");
-                }
-            } else if (dto.getSelectedType().equals(3)) { //我发起
+
+            } else if (dto.getSelectedType().equals(3)) { //我发起页面
                 sqlString.append("report_user = ?");
                 params.add(SecureUtil.getUserId());
             }
@@ -229,7 +261,10 @@ public class ArchiveFileTaskController extends BladeController {
         Set<String> processInstanceIds = resultList.stream().map(Task::getProcessInstanceId).collect(Collectors.toSet());
         Map<String, List<TaskParallel>> taskParallelGroupMap = new HashMap<>();
         if (processInstanceIds.size() > 0) {
-            taskParallelGroupMap = jdbcTemplate.query("select process_instance_id,task_user_name,e_visa_status,e_visa_content from u_task_parallel where process_instance_id in(" + StringUtils.join(processInstanceIds, ",") + ") order by id", new BeanPropertyRowMapper<>(TaskParallel.class)).stream().collect(Collectors.groupingBy(TaskParallel::getProcessInstanceId));
+            StringJoiner joiner = new StringJoiner(",", "'", "'");
+            processInstanceIds.forEach(joiner::add);
+            String joinedIds = joiner.toString();
+            taskParallelGroupMap = jdbcTemplate.query("select process_instance_id,task_user_name,e_visa_status,e_visa_content from u_task_parallel where process_instance_id in(" + joinedIds + ") order by id", new BeanPropertyRowMapper<>(TaskParallel.class)).stream().collect(Collectors.groupingBy(TaskParallel::getProcessInstanceId));
         }
         Map<String, List<TaskParallel>> finalTaskParallelGroupMap = taskParallelGroupMap;
 
@@ -257,11 +292,11 @@ public class ArchiveFileTaskController extends BladeController {
                         }
                         Set<Integer> eVisaStatus = taskParallelList.stream().map(TaskParallel::getEVisaStatus).collect(Collectors.toSet());
                         if (eVisaStatus.size() > 0) {
-                            vo.setEVisaStatus(StringUtils.join(eVisaStatus, ","));
+                            vo.setEVisaStatus(StringUtils.join(eVisaStatus, ""));
                         }
                         Set<String> eVisaContents = taskParallelList.stream().map(TaskParallel::getEVisaContent).collect(Collectors.toSet());
                         if (eVisaContents.size() > 0) {
-                            vo.setEVisaContents(StringUtils.join(eVisaContents, ","));
+                            vo.setEVisaContents(StringUtils.join(eVisaContents, ""));
                         }
                     }
                     return vo;

+ 171 - 4
blade-service/blade-business/src/main/java/org/springblade/business/controller/TaskController.java

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -18,10 +19,9 @@ import org.apache.commons.lang.time.DateUtils;
 import org.jetbrains.annotations.NotNull;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springblade.business.dto.ArchiveTaskBatchRepealDTO;
-import org.springblade.business.dto.ArchiveTaskBatchReportDTO;
-import org.springblade.business.dto.TaskArchiveDTO;
-import org.springblade.business.dto.TaskArchiveOuterLayerDTO;
+import org.springblade.archive.dto.ArchiveTaskDTO;
+import org.springblade.archive.vo.ArchiveTaskPageVO;
+import org.springblade.business.dto.*;
 import org.springblade.business.entity.*;
 import org.springblade.business.service.*;
 import org.springblade.business.socket.WebSocket;
@@ -45,6 +45,7 @@ import org.springblade.flow.core.entity.BladeFlow;
 import org.springblade.flow.core.feign.NewFlowClient;
 import org.springblade.flow.core.vo.SendPageVO;
 import org.springblade.manager.entity.ContractInfo;
+import org.springblade.manager.entity.ContractRelationJlyz;
 import org.springblade.manager.feign.ContractClient;
 import org.springblade.resource.feign.CommonFileClient;
 import org.springblade.resource.feign.NewISmsClient;
@@ -1066,4 +1067,170 @@ public class TaskController extends BladeController {
         return this.taskService.startApproval(taskVO) ? R.data(200, true, "操作成功") : R.data(200, false, "操作失败,请联系管理员");
     }
 
+    /**
+     * 资料填报-任务管理-任务查看分页查询
+     */
+    @PostMapping("/page")
+    @ApiOperationSupport(order = 1)
+    @ApiOperation(value = "资料填报-任务管理-任务查看分页查询", notes = "传入BusinessTaskDTO")
+    public R<IPage<BusinessTaskPageVO>> page(@RequestBody BusinessTaskDTO dto) {
+        int current = dto.getCurrent();
+        int size = dto.getSize();
+        //封装入参SQL
+        List<Object> params = new ArrayList<>();
+        StringBuilder sqlString = new StringBuilder("SELECT * FROM u_task WHERE 1=1 AND approval_type != 4"); //approval_type != 4 非档案的任务就是1填报资料,2工程文件,3日志资料
+        if (ObjectUtil.isNotEmpty(dto.getTypeValue())) {
+            sqlString.append(" AND type = ?");
+            params.add(dto.getTypeValue());
+        }
+        if (ObjectUtil.isNotEmpty(dto.getStatusValue())) {
+            sqlString.append(" AND status = ?");
+            params.add(dto.getStatusValue());
+        }
+
+        ContractInfo contractInfo = jdbcTemplate.queryForObject("select contract_type from m_contract_info where id = " + dto.getCurrentContractId(), new BeanPropertyRowMapper<>(ContractInfo.class));
+        if (contractInfo != null && contractInfo.getContractType().equals(1)) {
+            //施工合同段正常查询
+            if (ObjectUtil.isNotEmpty(dto.getContractIdValue())) {
+                sqlString.append(" AND contract_id = ?");
+                params.add(dto.getContractIdValue());
+            } else {
+                //如果合同段id=null,那么查询当前项目下所有合同段任务
+                if (ObjectUtil.isNotEmpty(dto.getProjectIdValue())) {
+                    sqlString.append(" AND project_id = ?");
+                    params.add(dto.getProjectIdValue());
+                } else {
+                    throw new ServiceException("未获取到项目信息,请联系管理员");
+                }
+            }
+        } else if (contractInfo != null && (contractInfo.getContractType().equals(2) || contractInfo.getContractType().equals(3))) {
+            //如果是监理合同段,那么默认查询关联的全部施工合同段+本身任务
+            List<ContractRelationJlyz> contractRelationJLYZ = jdbcTemplate.query("select contract_id_sg from m_contract_relation_jlyz where contract_id_jlyz = " + dto.getCurrentContractId(), new BeanPropertyRowMapper<>(ContractRelationJlyz.class));
+            Set<Long> ids = contractRelationJLYZ.stream().map(ContractRelationJlyz::getContractIdSg).collect(Collectors.toSet());
+            ids.add(dto.getCurrentContractId()); //把监理本身也加入查询
+            sqlString.append(" AND contract_id in(").append(StringUtils.join(ids, ",")).append(")");
+        }
+
+        if (ObjectUtil.isNotEmpty(dto.getBatchValue())) {
+            sqlString.append(" AND batch = ?");
+            params.add(dto.getBatchValue());
+        }
+        if (StringUtils.isNotBlank(dto.getStartTimeValue()) && StringUtils.isNotBlank(dto.getEndTimeValue())) {
+            sqlString.append(" AND start_time >= ?")
+                    .append(dto.getStartTimeValue())
+                    .append(" AND end_time <= ?");
+            params.add(dto.getStartTimeValue());
+            params.add(dto.getEndTimeValue());
+        }
+        if (StringUtils.isNotBlank(dto.getQueryValue())) {
+            sqlString.append(" AND task_name LIKE ?");
+            params.add("%" + dto.getQueryValue() + "%");
+        }
+        if (ObjectUtil.isNotEmpty(dto.getSelectedType())) {
+            sqlString.append(" AND (");
+            if (dto.getSelectedType().equals(1)) { //待办页面
+
+                //如果是待办页面,且 任务状态下拉框 选择的是 待审批状态 的任务,那么才查询数据
+                if (ObjectUtil.isNotEmpty(dto.getStatusValue()) && dto.getStatusValue().equals(1)) {
+                    sqlString.append("EXISTS (SELECT 1 FROM u_task_parallel WHERE u_task.process_instance_id = u_task_parallel.process_instance_id AND u_task_parallel.status = ? AND u_task_parallel.task_user = ?)");
+                    params.add(1);
+                    params.add(SecureUtil.getUserId());
+
+                    //如果是待办页面,且 任务状态下拉框 选择的不是 待审批状态 的任务,那么直接返回null
+                } else if (ObjectUtil.isNotEmpty(dto.getStatusValue()) && !dto.getStatusValue().equals(1)) {
+                    return null;
+
+                    //如果是待办页面,没选择 任务状态下拉框,那么就默认查询 待审批状态 任务
+                } else if (ObjectUtil.isEmpty(dto.getStatusValue())) {
+                    sqlString.append("EXISTS (SELECT 1 FROM u_task_parallel WHERE u_task.process_instance_id = u_task_parallel.process_instance_id AND u_task_parallel.status = ? AND u_task_parallel.task_user = ?)");
+                    params.add(1);
+                    params.add(SecureUtil.getUserId());
+                    sqlString.append(" AND status = 1");
+                }
+
+            } else if (dto.getSelectedType().equals(2)) { //已办页面
+                sqlString.append("EXISTS (SELECT 1 FROM u_task_parallel WHERE u_task.process_instance_id = u_task_parallel.process_instance_id AND u_task_parallel.status = ? AND u_task_parallel.task_user = ?)");
+                //当前自己的任务必须是已审批,才视为已办
+                params.add(2);
+                params.add(SecureUtil.getUserId());
+
+            } else if (dto.getSelectedType().equals(3)) { //我发起页面
+                sqlString.append("report_user = ?");
+                params.add(SecureUtil.getUserId());
+            }
+            sqlString.append(")");
+        }
+
+        //总数量
+        String sqlCount = sqlString.toString().replace("*", "count(1)");
+        Optional<Integer> totalCountOptional = Optional.ofNullable(jdbcTemplate.queryForObject(sqlCount, Integer.class, params.toArray()));
+        int totalCount = totalCountOptional.orElse(0);
+
+        //分页
+        sqlString.append(" ORDER BY create_time DESC LIMIT ? OFFSET ?");
+        params.add(size);
+        params.add((current - 1) * size);
+
+        //执行SQL获取数据
+        String sqlPage = sqlString.toString();
+        List<Task> resultList = jdbcTemplate.query(
+                sqlPage,
+                new BeanPropertyRowMapper<>(Task.class),
+                params.toArray()
+        );
+
+        //获取任务详情信息Map
+        Set<String> processInstanceIds = resultList.stream().map(Task::getProcessInstanceId).collect(Collectors.toSet());
+        Map<String, List<TaskParallel>> taskParallelGroupMap = new HashMap<>();
+        if (processInstanceIds.size() > 0) {
+            StringJoiner joiner = new StringJoiner(",", "'", "'");
+            processInstanceIds.forEach(joiner::add);
+            String joinedIds = joiner.toString();
+            taskParallelGroupMap = jdbcTemplate.query("select process_instance_id,task_user_name,e_visa_status,e_visa_content from u_task_parallel where process_instance_id in(" + joinedIds + ") order by id", new BeanPropertyRowMapper<>(TaskParallel.class)).stream().collect(Collectors.groupingBy(TaskParallel::getProcessInstanceId));
+        }
+        Map<String, List<TaskParallel>> finalTaskParallelGroupMap = taskParallelGroupMap;
+
+        //获取用户信息Map
+        Map<Long, String> nameMap = jdbcTemplate.query("select id,name from blade_user where is_deleted = 0", new BeanPropertyRowMapper<>(User.class)).stream().collect(Collectors.toMap(User::getId, User::getName, (key1, key2) -> key1));
+
+        //解析page分页数据
+        IPage<BusinessTaskPageVO> page = new Page<>(current, size);
+        List<BusinessTaskPageVO> pageList = resultList.stream()
+                .map(task -> {
+                    BusinessTaskPageVO vo = new BusinessTaskPageVO();
+                    vo.setId(task.getId());
+                    vo.setTaskName(task.getTaskName());
+                    vo.setTaskTypeName(task.getType().equals(1) ? "普通任务" : task.getType().equals(2) ? "验收任务" : "移交任务");
+                    vo.setTaskStatusName(task.getStatus().equals(1) ? "待审批" : task.getStatus().equals(2) ? "已审批" : "已废除");
+                    vo.setStartTime(task.getStartTime());
+                    vo.setEndTime(task.getEndTime());
+                    vo.setTaskDesc(task.getTaskContent());
+                    vo.setTaskReportUserName(nameMap.get(Long.parseLong(task.getReportUser())));
+                    vo.setApprovalType(task.getApprovalType());
+                    vo.setFormDataId(task.getFormDataId());
+                    vo.setProcessInstanceId(task.getProcessInstanceId());
+                    List<TaskParallel> taskParallelList = finalTaskParallelGroupMap.get(task.getProcessInstanceId());
+                    if (taskParallelList != null && taskParallelList.size() > 0) {
+                        List<String> names = taskParallelList.stream().map(TaskParallel::getTaskUserName).collect(Collectors.toList());
+                        if (names.size() > 0) {
+                            vo.setTaskApproveUserNames(StringUtils.join(names, ","));
+                        }
+                        Set<Integer> eVisaStatus = taskParallelList.stream().map(TaskParallel::getEVisaStatus).collect(Collectors.toSet());
+                        if (eVisaStatus.size() > 0) {
+                            vo.setEVisaStatus(StringUtils.join(eVisaStatus, "、"));
+                        }
+                        Set<String> eVisaContents = taskParallelList.stream().map(TaskParallel::getEVisaContent).collect(Collectors.toSet());
+                        if (eVisaContents.size() > 0) {
+                            vo.setEVisaContents(StringUtils.join(eVisaContents, "、"));
+                        }
+                    }
+                    return vo;
+                })
+                .collect(Collectors.toList());
+        page.setRecords(pageList);
+        page.setTotal(totalCount);
+        return R.data(page);
+    }
+
+
 }

+ 2 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreePrivateServiceImpl.java

@@ -384,6 +384,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
             updateWrapper1
                     .eq(WbsTreePrivate::getPKeyId, pKeyId)
                     .set(WbsTreePrivate::getStatus, wbsTreePrivate.getStatus());
+            Integer statusPrivate = wbsTreePrivate.getStatus();
             baseMapper.update(null, updateWrapper1);
 
             //修改当前项目下所有合同段的该表状态
@@ -394,11 +395,10 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
             );
             if (wbsTreeContracts.size() > 0) {
                 for (WbsTreeContract wbsTreeContract : wbsTreeContracts) {
-                    wbsTreeContract.setStatus(wbsTreeContract.getStatus() == 1 ? 0 : 1);
                     LambdaUpdateWrapper<WbsTreeContract> updateWrapper2 = new LambdaUpdateWrapper<>();
                     updateWrapper2
                             .eq(WbsTreeContract::getPKeyId, wbsTreeContract.getPKeyId())
-                            .set(WbsTreeContract::getStatus, wbsTreeContract.getStatus());
+                            .set(WbsTreeContract::getStatus, statusPrivate);
                     wbsTreeContractMapper.update(null, updateWrapper2);
                 }
             }