|
|
|
|
@ -5,6 +5,7 @@ import com.alibaba.nacos.common.utils.CollectionUtils; |
|
|
|
|
import com.alibaba.nacos.common.utils.StringUtils; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|
|
|
|
import lombok.AllArgsConstructor; |
|
|
|
|
import org.flowable.engine.HistoryService; |
|
|
|
|
@ -29,6 +30,7 @@ import org.springblade.plugin.operation.database.service.IModuleDatatableService |
|
|
|
|
import org.springblade.plugin.operation.system.entity.ProjectInfo; |
|
|
|
|
import org.springblade.plugin.operation.system.service.IModuleInfoService; |
|
|
|
|
import org.springblade.plugin.operation.system.service.IProjectInfoService; |
|
|
|
|
import org.springblade.plugin.operation.task.entity.TaskInfo; |
|
|
|
|
import org.springblade.plugin.operation.task.service.ITaskInfoService; |
|
|
|
|
import org.springblade.plugin.operation.workorder.entity.WorkOrder; |
|
|
|
|
import org.springblade.plugin.operation.workorder.excel.OrderExcel; |
|
|
|
|
@ -37,7 +39,10 @@ import org.springblade.plugin.operation.workorder.mapper.WorkOrderMapper; |
|
|
|
|
import org.springblade.plugin.operation.workorder.service.IWorkOrderService; |
|
|
|
|
import org.springblade.plugin.workflow.core.utils.WfTaskUtil; |
|
|
|
|
import org.springblade.system.cache.DictBizCache; |
|
|
|
|
import org.springblade.system.cache.SysCache; |
|
|
|
|
import org.springblade.system.feign.ISysClient; |
|
|
|
|
import org.springblade.system.user.cache.UserCache; |
|
|
|
|
import org.springblade.system.user.entity.User; |
|
|
|
|
import org.springblade.system.user.feign.IUserClient; |
|
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
|
|
@ -45,6 +50,9 @@ import javax.servlet.http.HttpServletResponse; |
|
|
|
|
import java.text.ParseException; |
|
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
|
import java.util.*; |
|
|
|
|
import java.util.function.Function; |
|
|
|
|
import java.util.regex.Matcher; |
|
|
|
|
import java.util.regex.Pattern; |
|
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
@ -96,11 +104,6 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
IPage<WorkOrder> page = new Page<>(); |
|
|
|
|
|
|
|
|
|
String taskUser = WfTaskUtil.getTaskUser(); |
|
|
|
|
// String taskGroup = WfTaskUtil.getCandidateGroup();
|
|
|
|
|
//当前获取登录人deptid
|
|
|
|
|
// String deptId = AuthUtil.getDeptId();
|
|
|
|
|
// List<Long> nowUserDepts = Func.toLongList(deptId);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TaskQuery taskQuery = taskService.createTaskQuery() |
|
|
|
|
.orderByTaskCreateTime() |
|
|
|
|
@ -108,13 +111,14 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
.taskTenantId(WfTaskUtil.getTenantId()) |
|
|
|
|
.active(); |
|
|
|
|
taskQuery.taskCandidateOrAssigned(taskUser); |
|
|
|
|
// long count = taskQuery.count();
|
|
|
|
|
|
|
|
|
|
// List<Task> listNeedDo = taskQuery.listPage((query.getCurrent() - 1) * query.getSize(), query.getSize());
|
|
|
|
|
List<Task> listNeedDo = taskQuery.list(); |
|
|
|
|
|
|
|
|
|
List<WorkOrder> workOrders = new ArrayList<>(); |
|
|
|
|
// List<User> users = userClient.allUser().getData();
|
|
|
|
|
List<ProjectDatabase> databases = dataBaseService.list(Wrappers.<ProjectDatabase>lambdaQuery().select(ProjectDatabase::getId, ProjectDatabase::getDatabaseProjectName)); |
|
|
|
|
Map<Long, ProjectDatabase> databaseMap = databases.stream().collect(Collectors.toMap(ProjectDatabase::getId, Function.identity())); |
|
|
|
|
|
|
|
|
|
List<WorkOrder> workOrders = new ArrayList<>(); |
|
|
|
|
Pattern pattern = Pattern.compile("[0-9]*"); |
|
|
|
|
for (Task task : listNeedDo) { |
|
|
|
|
HistoricProcessInstance historicProcessInstance = historyService.createHistoricProcessInstanceQuery().processInstanceId(task.getProcessInstanceId()).singleResult(); |
|
|
|
|
WorkOrder order = new WorkOrder(); |
|
|
|
|
@ -129,25 +133,27 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
order.setTaskParentName(DictBizCache.getById(Long.parseLong(variables.get("renwufulei").toString())).getDictValue()); |
|
|
|
|
|
|
|
|
|
// 操作模块
|
|
|
|
|
// ProjectInfo projectInfo = projectInfoService.getById(variables.get("xitongmingchengshujuku").toString());
|
|
|
|
|
// if (projectInfo != null) {
|
|
|
|
|
// order.setOperateSysName(projectInfo.getProjectName());
|
|
|
|
|
// } else {
|
|
|
|
|
ProjectDatabase byId = dataBaseService.getById(variables.get("xitongmingchengshujuku").toString()); |
|
|
|
|
if (byId != null) { |
|
|
|
|
order.setOperateSysName(byId.getDatabaseProjectName()); |
|
|
|
|
String sysData = variables.get("xitongmingchengshujuku").toString(); |
|
|
|
|
if (StringUtils.isNotBlank(sysData) && pattern.matcher(sysData).matches()) { |
|
|
|
|
ProjectDatabase byId = databaseMap.get(Long.parseLong(sysData)); |
|
|
|
|
// ProjectDatabase byId = dataBaseService.getById(varMap.get("xitongmingchengshujuku").toString());
|
|
|
|
|
if (byId != null) { |
|
|
|
|
order.setOperateSysName(byId.getDatabaseProjectName()); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
order.setOperateSysName(variables.get("xitongmingchengshujuku").toString()); |
|
|
|
|
} |
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// 当前责任人
|
|
|
|
|
order.setCurrentResponsiblePerson(userClient.userInfoById(Long.parseLong(task.getAssignee())).getData().getRealName()); |
|
|
|
|
order.setCurrentResponsiblePerson(UserCache.getUser(Long.parseLong(task.getAssignee())).getRealName()); |
|
|
|
|
// order.setCurrentResponsiblePerson(users.stream().filter(user -> Long.valueOf(task.getAssignee()).equals(user.getId())).map(User::getRealName).findAny().orElse(null));
|
|
|
|
|
order.setManagementName(variables.get("$guanlibumen").toString()); |
|
|
|
|
|
|
|
|
|
// 运维公司
|
|
|
|
|
order.setMaintenanceCompanyName(userClient.userInfoById(Long.parseLong(variables.get("yunweigongsi").toString())).getData().getRealName()); |
|
|
|
|
order.setApplyUserName(userClient.userInfoById(Long.parseLong(historicProcessInstance.getStartUserId())).getData().getRealName()); |
|
|
|
|
order.setMaintenanceCompanyName(UserCache.getUser(Long.parseLong(variables.get("yunweigongsi").toString())).getRealName()); |
|
|
|
|
// order.setMaintenanceCompanyName(users.stream().filter(user -> Long.valueOf(variables.get("yunweigongsi").toString()).equals(user.getId())).map(User::getRealName).findAny().orElse(null));
|
|
|
|
|
order.setApplyUserName(UserCache.getUser(Long.parseLong(historicProcessInstance.getStartUserId())).getRealName()); |
|
|
|
|
// order.setApplyUserName(users.stream().filter(user -> Long.valueOf(historicProcessInstance.getStartUserId()).equals(user.getId())).map(User::getRealName).findAny().orElse(null));
|
|
|
|
|
|
|
|
|
|
if (task.getName().contains("审批")) { |
|
|
|
|
order.setApprovalStatus("审批中"); |
|
|
|
|
@ -172,7 +178,6 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// 工单记录
|
|
|
|
|
// Page<WorkOrder> objectPage = new Page<>(query.getCurrent() - (workOrders.size() / query.getSize()), query.getSize());
|
|
|
|
|
LambdaQueryWrapper<WorkOrder> wrapper = new LambdaQueryWrapper<>(); |
|
|
|
|
wrapper.eq(WorkOrder::getMaintenanceCompany, AuthUtil.getUserId()); |
|
|
|
|
wrapper.eq(WorkOrder::getIsFinish, 0); |
|
|
|
|
@ -182,9 +187,6 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
wrapper.orderByDesc(WorkOrder::getCreateTime); |
|
|
|
|
List<WorkOrder> records = list(wrapper); |
|
|
|
|
|
|
|
|
|
// IPage<WorkOrder> iPage = page(objectPage, wrapper);
|
|
|
|
|
// List<WorkOrder> orders = iPage.getRecords();
|
|
|
|
|
|
|
|
|
|
setAllName(records); |
|
|
|
|
|
|
|
|
|
workOrders.addAll(records); |
|
|
|
|
@ -239,7 +241,6 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
|
|
|
|
|
// 分页
|
|
|
|
|
workOrders = workOrders.stream().skip((query.getCurrent() - 1) * query.getSize()).limit(query.getSize()).collect(Collectors.toList()); |
|
|
|
|
// workOrders = workOrders.stream().skip(0).limit(query.getSize()).collect(Collectors.toList());
|
|
|
|
|
|
|
|
|
|
// 数据
|
|
|
|
|
page.setRecords(workOrders); |
|
|
|
|
@ -428,7 +429,6 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
workOrders = getList(workOrder); |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
Calendar c = Calendar.getInstance(); |
|
|
|
|
//过去半年
|
|
|
|
|
c.setTime(new Date()); |
|
|
|
|
@ -449,6 +449,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
.processInstanceTenantId(WfTaskUtil.getTenantId()).list(); |
|
|
|
|
|
|
|
|
|
if (CollectionUtils.isNotEmpty(list)) { |
|
|
|
|
Pattern pattern = Pattern.compile("[0-9]*"); |
|
|
|
|
List<ProjectDatabase> databases = dataBaseService.list(Wrappers.<ProjectDatabase>lambdaQuery().select(ProjectDatabase::getId, ProjectDatabase::getDatabaseProjectName)); |
|
|
|
|
Map<Long, ProjectDatabase> databaseMap = databases.stream().collect(Collectors.toMap(ProjectDatabase::getId, Function.identity())); |
|
|
|
|
for (HistoricProcessInstance historicProcessInstance : list) { |
|
|
|
|
Map<String, Object> varMap = new HashMap<>(); |
|
|
|
|
List<HistoricVariableInstance> historicVars = historyService.createHistoricVariableInstanceQuery() |
|
|
|
|
@ -459,24 +462,26 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
// // 任务父类
|
|
|
|
|
varMap.put("renwufulei", DictBizCache.getById(Long.parseLong(varMap.get("renwufulei").toString())).getDictValue()); |
|
|
|
|
|
|
|
|
|
ProjectDatabase byId = dataBaseService.getById(varMap.get("xitongmingchengshujuku").toString()); |
|
|
|
|
if (StringUtils.isNotBlank(varMap.get("xitongmingchengshujuku").toString())) { |
|
|
|
|
String sysData = varMap.get("xitongmingchengshujuku").toString(); |
|
|
|
|
if (StringUtils.isNotBlank(sysData) && pattern.matcher(sysData).matches()) { |
|
|
|
|
ProjectDatabase byId = databaseMap.get(Long.parseLong(sysData)); |
|
|
|
|
// ProjectDatabase byId = dataBaseService.getById(varMap.get("xitongmingchengshujuku").toString());
|
|
|
|
|
if (byId != null) { |
|
|
|
|
varMap.put("xitongmingchengshujuku", byId.getDatabaseProjectName()); |
|
|
|
|
} else { |
|
|
|
|
varMap.put("xitongmingchengshujuku", varMap.get("xitongmingchengshujuku").toString()); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
varMap.put("xitongmingchengshujuku", "--"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// // 运维公司
|
|
|
|
|
varMap.put("yunweigongsi", userClient.userInfoById(Long.parseLong(varMap.get("yunweigongsi").toString())).getData().getRealName()); |
|
|
|
|
// varMap.put("yunweigongsi", userClient.userInfoById(Long.parseLong(varMap.get("yunweigongsi").toString())).getData().getRealName());
|
|
|
|
|
varMap.put("yunweigongsi", UserCache.getUser(Long.parseLong(varMap.get("yunweigongsi").toString())).getRealName()); |
|
|
|
|
|
|
|
|
|
Task task = taskService.createTaskQuery().processInstanceId(historicProcessInstance.getId()).singleResult(); |
|
|
|
|
if (task != null) { |
|
|
|
|
if (task.getAssignee() != null) { |
|
|
|
|
varMap.put("currentResponsiblePerson", userClient.userInfoById(Long.parseLong(task.getAssignee())).getData().getRealName()); |
|
|
|
|
// varMap.put("currentResponsiblePerson", userClient.userInfoById(Long.parseLong(task.getAssignee())).getData().getRealName());
|
|
|
|
|
varMap.put("currentResponsiblePerson", UserCache.getUser(Long.parseLong(task.getAssignee())).getRealName()); |
|
|
|
|
} else { |
|
|
|
|
varMap.put("currentResponsiblePerson", "--"); |
|
|
|
|
} |
|
|
|
|
@ -493,7 +498,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
} |
|
|
|
|
varMap.put("startTime", historicProcessInstance.getStartTime()); |
|
|
|
|
varMap.put("endTime", historicProcessInstance.getEndTime()); |
|
|
|
|
varMap.put("startUserId", userClient.userInfoById(Long.parseLong(historicProcessInstance.getStartUserId())).getData().getRealName()); |
|
|
|
|
varMap.put("startUserId", UserCache.getUser(Long.parseLong(historicProcessInstance.getStartUserId())).getRealName()); |
|
|
|
|
// varMap.put("startUserId", userClient.userInfoById(Long.parseLong(historicProcessInstance.getStartUserId())).getData().getRealName());
|
|
|
|
|
// varMap.put("processInstanceId", historicProcessInstance.getId());
|
|
|
|
|
// varMap.put("taskId", "");
|
|
|
|
|
workOrders.add(varMap); |
|
|
|
|
@ -535,8 +541,6 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
wrapper.in(WorkOrder::getManagement, Func.toStrList(AuthUtil.getDeptId())); |
|
|
|
|
if (workOrder.getStartTime() != null && workOrder.getEndTime() != null) { |
|
|
|
|
wrapper.between(WorkOrder::getCreateTime, workOrder.getStartTime(), workOrder.getEndTime()); |
|
|
|
|
// wrapper.ge(WorkOrder::getCreateTime, workOrder.getStartTime());
|
|
|
|
|
// wrapper.le(WorkOrder::getFinishTime, workOrder.getEndTime());
|
|
|
|
|
} |
|
|
|
|
wrapper.orderByDesc(WorkOrder::getCreateTime); |
|
|
|
|
IPage<WorkOrder> page = page(Condition.getPage(query), wrapper); |
|
|
|
|
@ -550,24 +554,56 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
List<OrderExcel> excels = new ArrayList<>(); |
|
|
|
|
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
|
|
|
|
if (CollectionUtils.isNotEmpty(workOrderList)) { |
|
|
|
|
// 数据库数据转map
|
|
|
|
|
List<String> strings = workOrderList.stream().map(WorkOrder::getOperateSys).distinct().collect(Collectors.toList()); |
|
|
|
|
List<ProjectDatabase> databases = dataBaseService.list(Wrappers.<ProjectDatabase>lambdaQuery() |
|
|
|
|
.select(ProjectDatabase::getId, ProjectDatabase::getDatabaseProjectName) |
|
|
|
|
.in(ProjectDatabase::getId, strings)); |
|
|
|
|
Map<Long, ProjectDatabase> databaseMap = databases.stream().collect(Collectors.toMap(ProjectDatabase::getId, Function.identity())); |
|
|
|
|
|
|
|
|
|
// 任务种类数据转map
|
|
|
|
|
List<String> taskInfoIds = workOrderList.stream().map(WorkOrder::getTaskType).distinct().collect(Collectors.toList()); |
|
|
|
|
List<TaskInfo> taskInfos = taskInfoService.list(Wrappers.<TaskInfo>lambdaQuery() |
|
|
|
|
.select(TaskInfo::getId, TaskInfo::getTaskTypeName) |
|
|
|
|
.in(TaskInfo::getId, taskInfoIds)); |
|
|
|
|
Map<Long, TaskInfo> taskInfoMap = taskInfos.stream().collect(Collectors.toMap(TaskInfo::getId, Function.identity())); |
|
|
|
|
|
|
|
|
|
Pattern pattern = Pattern.compile("[0-9]*"); |
|
|
|
|
// 循环赋值
|
|
|
|
|
for (WorkOrder record : workOrderList) { |
|
|
|
|
OrderExcel excel = new OrderExcel(); |
|
|
|
|
excel.setTaskType(taskInfoService.getById(record.getTaskType()).getTaskTypeName()); |
|
|
|
|
// excel.setTaskType(taskInfoService.getById(record.getTaskType()).getTaskTypeName());
|
|
|
|
|
excel.setTaskType(taskInfoMap.get(Long.parseLong(record.getTaskType())).getTaskTypeName()); |
|
|
|
|
excel.setTaskParent(DictBizCache.getById(Long.parseLong(record.getTaskParent())).getDictValue()); |
|
|
|
|
ProjectDatabase byId = dataBaseService.getById(record.getOperateSys()); |
|
|
|
|
if (StringUtils.isNotBlank(record.getOperateSys())) { |
|
|
|
|
// if (StringUtils.isNotBlank(record.getOperateSys())) {
|
|
|
|
|
//// ProjectDatabase byId = dataBaseService.getById(record.getOperateSys());
|
|
|
|
|
// ProjectDatabase byId = databaseMap.get(Long.parseLong(record.getOperateSys()));
|
|
|
|
|
// if (byId != null) {
|
|
|
|
|
// excel.setOperationModule(byId.getDatabaseProjectName());
|
|
|
|
|
// } else {
|
|
|
|
|
// excel.setOperationModule(record.getOperateSys());
|
|
|
|
|
// }
|
|
|
|
|
// } else {
|
|
|
|
|
// excel.setOperationModule("--");
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(record.getOperateSys()) && pattern.matcher(record.getOperateSys()).matches()) { |
|
|
|
|
// ProjectDatabase byId = dataBaseService.getById(record.getOperateSys());
|
|
|
|
|
ProjectDatabase byId = databaseMap.get(Long.parseLong(record.getOperateSys())); |
|
|
|
|
if (byId != null) { |
|
|
|
|
excel.setOperationModule(byId.getDatabaseProjectName()); |
|
|
|
|
} else { |
|
|
|
|
excel.setOperationModule(record.getOperateSys()); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
excel.setOperationModule("--"); |
|
|
|
|
} |
|
|
|
|
excel.setDept(sysClient.getDept(Long.parseLong(record.getManagement())).getData().getDeptName()); |
|
|
|
|
|
|
|
|
|
excel.setDept(SysCache.getDept(Long.parseLong(record.getManagement())).getDeptName()); |
|
|
|
|
// excel.setDept(sysClient.getDept(Long.parseLong(record.getManagement())).getData().getDeptName());
|
|
|
|
|
excel.setLevel(DictBizCache.getById(Long.parseLong(record.getTaskLevel())).getDictValue()); |
|
|
|
|
excel.setCompany(userClient.userInfoById(Long.parseLong(record.getMaintenanceCompany())).getData().getName()); |
|
|
|
|
excel.setSponsor(userClient.userInfoById(Long.parseLong(record.getApplyUser())).getData().getName()); |
|
|
|
|
excel.setCompany(UserCache.getUser(Long.parseLong(record.getMaintenanceCompany())).getName()); |
|
|
|
|
// excel.setCompany(userClient.userInfoById(Long.parseLong(record.getMaintenanceCompany())).getData().getName());
|
|
|
|
|
excel.setSponsor(UserCache.getUser(Long.parseLong(record.getApplyUser())).getName()); |
|
|
|
|
// excel.setSponsor(userClient.userInfoById(Long.parseLong(record.getApplyUser())).getData().getName());
|
|
|
|
|
if (record.getIsFinish() == 0) { |
|
|
|
|
excel.setApprovalStatus("待实施"); |
|
|
|
|
} else { |
|
|
|
|
@ -600,26 +636,26 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
if (CollectionUtils.isNotEmpty(records)) { |
|
|
|
|
for (WorkOrder record : records) { |
|
|
|
|
setData(record); |
|
|
|
|
// record.setTaskTypeName(taskInfoService.getById(record.getTaskType()).getTaskTypeName());
|
|
|
|
|
// record.setTaskParentName(DictBizCache.getById(Long.parseLong(record.getTaskParent())).getDictValue());
|
|
|
|
|
// record.setManagementName(sysClient.getDept(Long.parseLong(record.getManagement())).getData().getDeptName());
|
|
|
|
|
// record.setTaskLevelName(DictBizCache.getById(Long.parseLong(record.getTaskLevel())).getDictValue());
|
|
|
|
|
// record.setRepeatModeName(DictBizCache.getById(Long.parseLong(record.getRepeatMode())).getDictValue());
|
|
|
|
|
// record.setMaintenanceCompanyName(userClient.userInfoById(Long.parseLong(record.getMaintenanceCompany())).getData().getName());
|
|
|
|
|
// record.setApplyUserName(userClient.userInfoById(Long.parseLong(record.getApplyUser())).getData().getName());
|
|
|
|
|
// record.setCurrentResponsiblePerson(userClient.userInfoById(AuthUtil.getUserId()).getData().getName());
|
|
|
|
|
// record.setApprovalStatus("待实施");
|
|
|
|
|
// record.setUploadRecords(JSONObject.parseArray(record.getUploadRecord(), Map.class));
|
|
|
|
|
// ProjectDatabase database = dataBaseService.getById(record.getOperateSys());
|
|
|
|
|
// if (database != null) {
|
|
|
|
|
// record.setOperateSysName(database.getDatabaseProjectName());
|
|
|
|
|
// } else {
|
|
|
|
|
// record.setOperateSysName(record.getOperateSys());
|
|
|
|
|
// }
|
|
|
|
|
// ModuleDatatable datatable = dataTableService.getById(record.getOperateModule());
|
|
|
|
|
// if (datatable != null) {
|
|
|
|
|
// record.setOperateModuleName(datatable.getDatatableModuleName());
|
|
|
|
|
// }
|
|
|
|
|
record.setTaskTypeName(taskInfoService.getById(record.getTaskType()).getTaskTypeName()); |
|
|
|
|
record.setTaskParentName(DictBizCache.getById(Long.parseLong(record.getTaskParent())).getDictValue()); |
|
|
|
|
record.setManagementName(SysCache.getDeptName(Long.parseLong(record.getManagement()))); |
|
|
|
|
record.setTaskLevelName(DictBizCache.getById(Long.parseLong(record.getTaskLevel())).getDictValue()); |
|
|
|
|
record.setRepeatModeName(DictBizCache.getById(Long.parseLong(record.getRepeatMode())).getDictValue()); |
|
|
|
|
record.setMaintenanceCompanyName(UserCache.getUser(Long.parseLong(record.getApplyUser())).getName()); |
|
|
|
|
record.setApplyUserName(UserCache.getUser(Long.parseLong(record.getApplyUser())).getName()); |
|
|
|
|
record.setCurrentResponsiblePerson(UserCache.getUser(Long.parseLong(record.getApplyUser())).getName()); |
|
|
|
|
record.setApprovalStatus("待实施"); |
|
|
|
|
record.setUploadRecords(JSONObject.parseArray(record.getUploadRecord(), Map.class)); |
|
|
|
|
ProjectDatabase database = dataBaseService.getById(record.getOperateSys()); |
|
|
|
|
if (database != null) { |
|
|
|
|
record.setOperateSysName(database.getDatabaseProjectName()); |
|
|
|
|
} else { |
|
|
|
|
record.setOperateSysName(record.getOperateSys()); |
|
|
|
|
} |
|
|
|
|
ModuleDatatable datatable = dataTableService.getById(record.getOperateModule()); |
|
|
|
|
if (datatable != null) { |
|
|
|
|
record.setOperateModuleName(datatable.getDatatableModuleName()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -632,6 +668,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
|
|
|
|
|
List<Map<String, Object>> workOrders = new ArrayList<>(); |
|
|
|
|
if (CollectionUtils.isNotEmpty(list)) { |
|
|
|
|
// List<User> users = userClient.allUser().getData();
|
|
|
|
|
List<ProjectDatabase> databases = dataBaseService.list(Wrappers.<ProjectDatabase>lambdaQuery().select(ProjectDatabase::getId, ProjectDatabase::getDatabaseProjectName)); |
|
|
|
|
Map<Long, ProjectDatabase> databaseMap = databases.stream().collect(Collectors.toMap(ProjectDatabase::getId, Function.identity())); |
|
|
|
|
Pattern pattern = Pattern.compile("[0-9]*"); |
|
|
|
|
|
|
|
|
|
for (HistoricProcessInstance historicProcessInstance : list) { |
|
|
|
|
Map<String, Object> varMap = new HashMap<>(); |
|
|
|
|
List<HistoricVariableInstance> historicVars = historyService.createHistoricVariableInstanceQuery() |
|
|
|
|
@ -641,20 +682,24 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
// 任务父类
|
|
|
|
|
varMap.put("renwufulei", DictBizCache.getById(Long.parseLong(varMap.get("renwufulei").toString())).getDictValue()); |
|
|
|
|
|
|
|
|
|
ProjectDatabase byId = dataBaseService.getById(varMap.get("xitongmingchengshujuku").toString()); |
|
|
|
|
if (byId != null) { |
|
|
|
|
varMap.put("xitongmingchengshujuku", byId.getDatabaseProjectName()); |
|
|
|
|
} else { |
|
|
|
|
varMap.put("xitongmingchengshujuku", varMap.get("xitongmingchengshujuku").toString()); |
|
|
|
|
String sysData = varMap.get("xitongmingchengshujuku").toString(); |
|
|
|
|
if (StringUtils.isNotBlank(sysData) && pattern.matcher(sysData).matches()) { |
|
|
|
|
ProjectDatabase byId = databaseMap.get(Long.parseLong(sysData)); |
|
|
|
|
// ProjectDatabase byId = dataBaseService.getById(varMap.get("xitongmingchengshujuku").toString());
|
|
|
|
|
if (byId != null) { |
|
|
|
|
varMap.put("xitongmingchengshujuku", byId.getDatabaseProjectName()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// 运维公司
|
|
|
|
|
varMap.put("yunweigongsi", userClient.userInfoById(Long.parseLong(varMap.get("yunweigongsi").toString())).getData().getRealName()); |
|
|
|
|
varMap.put("yunweigongsi", UserCache.getUser(Long.parseLong(varMap.get("yunweigongsi").toString())).getRealName()); |
|
|
|
|
// varMap.put("yunweigongsi", users.stream().filter(user -> Long.valueOf(varMap.get("yunweigongsi").toString()).equals(user.getId())).map(User::getRealName).findAny().orElse(null));
|
|
|
|
|
|
|
|
|
|
Task task = taskService.createTaskQuery().processInstanceId(historicProcessInstance.getId()).singleResult(); |
|
|
|
|
if (task != null) { |
|
|
|
|
if (task.getAssignee() != null) { |
|
|
|
|
varMap.put("currentResponsiblePerson", userClient.userInfoById(Long.parseLong(task.getAssignee())).getData().getRealName()); |
|
|
|
|
varMap.put("currentResponsiblePerson", UserCache.getUser(Long.parseLong(task.getAssignee())).getRealName()); |
|
|
|
|
// varMap.put("currentResponsiblePerson", users.stream().filter(user -> Long.valueOf(task.getAssignee()).equals(user.getId())).map(User::getRealName).findAny().orElse(null));
|
|
|
|
|
} else { |
|
|
|
|
varMap.put("currentResponsiblePerson", "--"); |
|
|
|
|
} |
|
|
|
|
@ -675,7 +720,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
} |
|
|
|
|
varMap.put("startTime", historicProcessInstance.getStartTime()); |
|
|
|
|
varMap.put("endTime", historicProcessInstance.getEndTime()); |
|
|
|
|
varMap.put("startUserId", userClient.userInfoById(Long.parseLong(historicProcessInstance.getStartUserId())).getData().getRealName()); |
|
|
|
|
varMap.put("startUserId", UserCache.getUser(Long.parseLong(historicProcessInstance.getStartUserId())).getRealName()); |
|
|
|
|
// varMap.put("startUserId", users.stream().filter(user -> Long.valueOf(historicProcessInstance.getStartUserId()).equals(user.getId())).map(User::getRealName).findAny().orElse(null));
|
|
|
|
|
varMap.put("startDeptId", varMap.get("guanlibumen")); |
|
|
|
|
varMap.put("processInstanceId", historicProcessInstance.getId()); |
|
|
|
|
|
|
|
|
|
@ -760,12 +806,12 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
private void setData(WorkOrder record) { |
|
|
|
|
record.setTaskTypeName(taskInfoService.getById(record.getTaskType()).getTaskTypeName()); |
|
|
|
|
record.setTaskParentName(DictBizCache.getById(Long.parseLong(record.getTaskParent())).getDictValue()); |
|
|
|
|
record.setManagementName(sysClient.getDept(Long.parseLong(record.getManagement())).getData().getDeptName()); |
|
|
|
|
record.setManagementName(SysCache.getDeptName(Long.parseLong(record.getManagement()))); |
|
|
|
|
record.setTaskLevelName(DictBizCache.getById(Long.parseLong(record.getTaskLevel())).getDictValue()); |
|
|
|
|
record.setRepeatModeName(DictBizCache.getById(Long.parseLong(record.getRepeatMode())).getDictValue()); |
|
|
|
|
record.setMaintenanceCompanyName(userClient.userInfoById(Long.parseLong(record.getMaintenanceCompany())).getData().getName()); |
|
|
|
|
record.setApplyUserName(userClient.userInfoById(Long.parseLong(record.getApplyUser())).getData().getName()); |
|
|
|
|
record.setCurrentResponsiblePerson(userClient.userInfoById(AuthUtil.getUserId()).getData().getName()); |
|
|
|
|
record.setMaintenanceCompanyName(UserCache.getUser(Long.parseLong(record.getApplyUser())).getName()); |
|
|
|
|
record.setApplyUserName(UserCache.getUser(Long.parseLong(record.getApplyUser())).getName()); |
|
|
|
|
record.setCurrentResponsiblePerson(UserCache.getUser(Long.parseLong(record.getApplyUser())).getName()); |
|
|
|
|
record.setApprovalStatus("待实施"); |
|
|
|
|
record.setUploadRecords(JSONObject.parseArray(record.getUploadRecord(), Map.class)); |
|
|
|
|
ProjectDatabase database = dataBaseService.getById(record.getOperateSys()); |
|
|
|
|
|