feat(oa): 增加任务时间筛选功能并优化项目节点排序
- 在 ISysOaTaskService 接口及其实现类中增加 startTime 和 endTime 参数, 用于筛选指定时间范围内的任务 - 在 OaProjectScheduleStepServiceImpl 中增加创建时间字段设置 - 优化个人报表查询逻辑,根据奖金池时间范围筛选项目步骤和任务 - 更新 TableDataConstantUtil 中多个项目节点的排序编号,确保节点顺序正确 - 调整部分项目阶段描述内容,使信息更加完整准确
This commit is contained in:
@@ -9,6 +9,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
|
|||||||
import com.ruoyi.common.core.domain.PageQuery;
|
import com.ruoyi.common.core.domain.PageQuery;
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -120,6 +121,6 @@ public interface ISysOaTaskService {
|
|||||||
* @param projectIds 项目ID列表
|
* @param projectIds 项目ID列表
|
||||||
* @return 符合条件的任务列表
|
* @return 符合条件的任务列表
|
||||||
*/
|
*/
|
||||||
List<SysOaTask> getTasksByNicknameAndProjectIds(String nickName, List<Long> projectIds);
|
List<SysOaTask> getTasksByNicknameAndProjectIds(String nickName, List<Long> projectIds, Date startTime,Date endTime);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,9 +17,7 @@ import com.ruoyi.oa.domain.*;
|
|||||||
import com.ruoyi.oa.domain.bo.BatchBo;
|
import com.ruoyi.oa.domain.bo.BatchBo;
|
||||||
import com.ruoyi.oa.domain.dto.NodeDTO;
|
import com.ruoyi.oa.domain.dto.NodeDTO;
|
||||||
import com.ruoyi.oa.domain.dto.PersonalReportDTO;
|
import com.ruoyi.oa.domain.dto.PersonalReportDTO;
|
||||||
import com.ruoyi.oa.mapper.OaBonusProjectRelMapper;
|
import com.ruoyi.oa.mapper.*;
|
||||||
import com.ruoyi.oa.mapper.OaProjectScheduleMapper;
|
|
||||||
import com.ruoyi.oa.mapper.SysOaProjectMapper;
|
|
||||||
import com.ruoyi.oa.service.ISysOaTaskService;
|
import com.ruoyi.oa.service.ISysOaTaskService;
|
||||||
import com.ruoyi.system.mapper.SysUserMapper;
|
import com.ruoyi.system.mapper.SysUserMapper;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@@ -27,7 +25,6 @@ import org.flowable.job.service.impl.ServiceImpl;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.ruoyi.oa.domain.bo.OaProjectScheduleStepBo;
|
import com.ruoyi.oa.domain.bo.OaProjectScheduleStepBo;
|
||||||
import com.ruoyi.oa.domain.vo.OaProjectScheduleStepVo;
|
import com.ruoyi.oa.domain.vo.OaProjectScheduleStepVo;
|
||||||
import com.ruoyi.oa.mapper.OaProjectScheduleStepMapper;
|
|
||||||
import com.ruoyi.oa.service.IOaProjectScheduleStepService;
|
import com.ruoyi.oa.service.IOaProjectScheduleStepService;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
@@ -47,6 +44,8 @@ public class OaProjectScheduleStepServiceImpl implements IOaProjectScheduleStepS
|
|||||||
|
|
||||||
private final OaProjectScheduleStepMapper baseMapper;
|
private final OaProjectScheduleStepMapper baseMapper;
|
||||||
|
|
||||||
|
private final OaBonusPoolMapper bonusPoolMapper;
|
||||||
|
|
||||||
private final OaProjectScheduleMapper scheduleMapper;
|
private final OaProjectScheduleMapper scheduleMapper;
|
||||||
|
|
||||||
private final SysUserMapper sysUserMapper;
|
private final SysUserMapper sysUserMapper;
|
||||||
@@ -277,6 +276,7 @@ public class OaProjectScheduleStepServiceImpl implements IOaProjectScheduleStepS
|
|||||||
step.setStepOrder((long) stepOrder.getAndIncrement()); // 步骤序号(非空,递增生成)
|
step.setStepOrder((long) stepOrder.getAndIncrement()); // 步骤序号(非空,递增生成)
|
||||||
step.setStepName(node.getStepName());// 步骤名称(非空,从NodeDTO获取,建议用二级节点名)
|
step.setStepName(node.getStepName());// 步骤名称(非空,从NodeDTO获取,建议用二级节点名)
|
||||||
step.setSortNum(node.getSortNum());
|
step.setSortNum(node.getSortNum());
|
||||||
|
step.setCreateTime(new Date());
|
||||||
return step;
|
return step;
|
||||||
}).collect(Collectors.toList());
|
}).collect(Collectors.toList());
|
||||||
|
|
||||||
@@ -342,6 +342,13 @@ public class OaProjectScheduleStepServiceImpl implements IOaProjectScheduleStepS
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public PersonalReportDTO personalReport(Long poolId, String nickName) {
|
public PersonalReportDTO personalReport(Long poolId, String nickName) {
|
||||||
|
// 查询奖金池信息(获取开始时间和结束时间)
|
||||||
|
OaBonusPool bonusPool = bonusPoolMapper.selectById(poolId);
|
||||||
|
if (bonusPool == null) {
|
||||||
|
throw new RuntimeException("未找到奖金池:" + poolId);
|
||||||
|
}
|
||||||
|
Date startTime = bonusPool.getStartDate();
|
||||||
|
Date endTime = bonusPool.getEndDate();
|
||||||
// 查询用户基本信息
|
// 查询用户基本信息
|
||||||
SysUser user = sysUserMapper.selectOne(
|
SysUser user = sysUserMapper.selectOne(
|
||||||
Wrappers.<SysUser>lambdaQuery()
|
Wrappers.<SysUser>lambdaQuery()
|
||||||
@@ -401,6 +408,7 @@ public class OaProjectScheduleStepServiceImpl implements IOaProjectScheduleStepS
|
|||||||
.eq(OaProjectScheduleStep::getNodeHeader, nickName)
|
.eq(OaProjectScheduleStep::getNodeHeader, nickName)
|
||||||
.eq(OaProjectScheduleStep::getDelFlag, "0")
|
.eq(OaProjectScheduleStep::getDelFlag, "0")
|
||||||
.eq(OaProjectScheduleStep::getUseFlag, 1)
|
.eq(OaProjectScheduleStep::getUseFlag, 1)
|
||||||
|
.between(OaProjectScheduleStep::getUpdateTime, startTime, endTime) // 时间范围筛选
|
||||||
);
|
);
|
||||||
|
|
||||||
// 为每个步骤设置对应的项目ID
|
// 为每个步骤设置对应的项目ID
|
||||||
@@ -428,7 +436,7 @@ public class OaProjectScheduleStepServiceImpl implements IOaProjectScheduleStepS
|
|||||||
.filter(step -> step.getEndTime().isAfter(step.getOriginalEndTime()))
|
.filter(step -> step.getEndTime().isAfter(step.getOriginalEndTime()))
|
||||||
.count());
|
.count());
|
||||||
// 查询用户相关任务
|
// 查询用户相关任务
|
||||||
List<SysOaTask> tasks = sysOaTaskService.getTasksByNicknameAndProjectIds(nickName, projectIds);
|
List<SysOaTask> tasks = sysOaTaskService.getTasksByNicknameAndProjectIds(nickName, projectIds,startTime, endTime);
|
||||||
// 封装返回DTO
|
// 封装返回DTO
|
||||||
PersonalReportDTO result = new PersonalReportDTO();
|
PersonalReportDTO result = new PersonalReportDTO();
|
||||||
result.setUserInfo(user);
|
result.setUserInfo(user);
|
||||||
|
|||||||
@@ -314,8 +314,7 @@ public class SysOaTaskServiceImpl implements ISysOaTaskService {
|
|||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<SysOaTask> getTasksByNicknameAndProjectIds(String nickName, List<Long> projectIds) {
|
public List<SysOaTask> getTasksByNicknameAndProjectIds(String nickName, List<Long> projectIds, Date startTime, Date endTime) {
|
||||||
// 假设已有用户Mapper可以查询ID
|
|
||||||
SysUser user = userMapper.selectOne(Wrappers.<SysUser>lambdaQuery()
|
SysUser user = userMapper.selectOne(Wrappers.<SysUser>lambdaQuery()
|
||||||
.eq(SysUser::getNickName, nickName)
|
.eq(SysUser::getNickName, nickName)
|
||||||
.eq(SysUser::getDelFlag, "0"));
|
.eq(SysUser::getDelFlag, "0"));
|
||||||
@@ -324,12 +323,10 @@ public class SysOaTaskServiceImpl implements ISysOaTaskService {
|
|||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询条件:
|
// 增加任务开始时间在奖金池时间范围内的筛选
|
||||||
// 1. 任务执行人ID = 当前用户ID
|
|
||||||
// 2. 任务所属项目ID在奖金池关联的项目列表中
|
|
||||||
// 3. 未删除
|
|
||||||
return baseMapper.selectList(Wrappers.<SysOaTask>lambdaQuery()
|
return baseMapper.selectList(Wrappers.<SysOaTask>lambdaQuery()
|
||||||
.eq(SysOaTask::getWorkerId, user.getUserId()) // 执行人ID匹配
|
.eq(SysOaTask::getWorkerId, user.getUserId())
|
||||||
.in(projectIds != null && !projectIds.isEmpty(), SysOaTask::getProjectId, projectIds)); // 项目ID在列表中
|
.in(projectIds != null && !projectIds.isEmpty(), SysOaTask::getProjectId, projectIds)
|
||||||
|
.between(SysOaTask::getBeginTime, startTime, endTime)); // 任务开始时间筛选
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,28 +31,28 @@ public class TableDataConstantUtil {
|
|||||||
"一、技术审查",
|
"一、技术审查",
|
||||||
"传动单线图",
|
"传动单线图",
|
||||||
null,
|
null,
|
||||||
2
|
3
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"一、技术审查",
|
"一、技术审查",
|
||||||
"MCC单线图",
|
"MCC单线图",
|
||||||
null,
|
null,
|
||||||
3
|
5
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"一、技术审查",
|
"一、技术审查",
|
||||||
"变压器清单",
|
"变压器清单",
|
||||||
null,
|
null,
|
||||||
4
|
7
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"一、技术审查",
|
"一、技术审查",
|
||||||
"电气室布置图",
|
"电气室布置图",
|
||||||
null,
|
null,
|
||||||
5
|
9
|
||||||
),
|
),
|
||||||
|
|
||||||
// 自动化设计阶段
|
// 自动化设计阶段
|
||||||
@@ -61,28 +61,28 @@ public class TableDataConstantUtil {
|
|||||||
"一、技术审查",
|
"一、技术审查",
|
||||||
"操作台面板布置图",
|
"操作台面板布置图",
|
||||||
null,
|
null,
|
||||||
6
|
11
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"二、自动化设计",
|
"二、自动化设计",
|
||||||
"马达元器件检测清单",
|
"马达元器件检测清单",
|
||||||
null,
|
null,
|
||||||
1
|
13
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"二、自动化设计",
|
"二、自动化设计",
|
||||||
"自动化网络配置图",
|
"自动化网络配置图",
|
||||||
null,
|
null,
|
||||||
2
|
15
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"二、自动化设计",
|
"二、自动化设计",
|
||||||
"图纸详细设计完成",
|
"图纸详细设计完成",
|
||||||
null,
|
null,
|
||||||
3
|
17
|
||||||
),
|
),
|
||||||
|
|
||||||
//程序设计提资完成
|
//程序设计提资完成
|
||||||
@@ -91,35 +91,35 @@ public class TableDataConstantUtil {
|
|||||||
"三、程序开发",
|
"三、程序开发",
|
||||||
"功能说明书",
|
"功能说明书",
|
||||||
null,
|
null,
|
||||||
1
|
19
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"三、程序开发",
|
"三、程序开发",
|
||||||
"程序设计",
|
"程序设计",
|
||||||
null,
|
null,
|
||||||
2
|
21
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"三、程序开发",
|
"三、程序开发",
|
||||||
"程序仿真",
|
"程序仿真",
|
||||||
null,
|
null,
|
||||||
3
|
23
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"三、程序开发",
|
"三、程序开发",
|
||||||
"程序在线测试",
|
"程序在线测试",
|
||||||
null,
|
null,
|
||||||
4
|
25
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"三、程序开发",
|
"三、程序开发",
|
||||||
"画面设计",
|
"画面设计",
|
||||||
null,
|
null,
|
||||||
5
|
27
|
||||||
),
|
),
|
||||||
|
|
||||||
//现场调试
|
//现场调试
|
||||||
@@ -128,21 +128,21 @@ public class TableDataConstantUtil {
|
|||||||
"四、现场调试",
|
"四、现场调试",
|
||||||
"单动",
|
"单动",
|
||||||
null,
|
null,
|
||||||
1
|
29
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"四、现场调试",
|
"四、现场调试",
|
||||||
"传动优化",
|
"传动优化",
|
||||||
null,
|
null,
|
||||||
2
|
31
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"自动化设计",
|
"自动化设计",
|
||||||
"四、现场调试",
|
"四、现场调试",
|
||||||
"联动",
|
"联动",
|
||||||
null,
|
null,
|
||||||
3
|
33
|
||||||
),
|
),
|
||||||
|
|
||||||
//考核验证通过
|
//考核验证通过
|
||||||
@@ -151,7 +151,7 @@ public class TableDataConstantUtil {
|
|||||||
"五、项目收尾",
|
"五、项目收尾",
|
||||||
null,
|
null,
|
||||||
null,
|
null,
|
||||||
1
|
35
|
||||||
),
|
),
|
||||||
|
|
||||||
//采购,库房表
|
//采购,库房表
|
||||||
@@ -161,35 +161,35 @@ public class TableDataConstantUtil {
|
|||||||
"一、一次配线",
|
"一、一次配线",
|
||||||
"采购审核",
|
"采购审核",
|
||||||
"接收由项目部或技术部发出的、经过审核的《物料清单(BOM)》及技术规范,并对其进行采购可行性(品牌、货期、替代品、成本)评审。",
|
"接收由项目部或技术部发出的、经过审核的《物料清单(BOM)》及技术规范,并对其进行采购可行性(品牌、货期、替代品、成本)评审。",
|
||||||
1
|
37
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"采购、库房",
|
"采购、库房",
|
||||||
"一、一次配线",
|
"一、一次配线",
|
||||||
"采购计划与询价、定标",
|
"采购计划与询价、定标",
|
||||||
"根据项目计划制定《采购作业计划》,向合格供应商进行询价、比价、议价,并最终确定供应商,提交审批。",
|
"根据项目计划制定《采购作业计划》,向合格供应商进行询价、比价、议价,并最终确定供应商,提交审批。",
|
||||||
2
|
39
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"采购、库房",
|
"采购、库房",
|
||||||
"一、一次配线",
|
"一、一次配线",
|
||||||
"采购订单下达与合同签订",
|
"采购订单下达与合同签订",
|
||||||
"向选定的供应商下达正式《采购订单》或签订《采购合同》,明确物料规格、数量、价格、交期、付款方式、验收标准等所有细节。",
|
"向选定的供应商下达正式《采购订单》或签订《采购合同》,明确物料规格、数量、价格、交期、付款方式、验收标准等所有细节。",
|
||||||
3
|
41
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"采购、库房",
|
"采购、库房",
|
||||||
"一、一次配线",
|
"一、一次配线",
|
||||||
"采购过程跟催与交期确认",
|
"采购过程跟催与交期确认",
|
||||||
"主动、定期地与供应商沟通,跟踪生产/备货进度,确认并确保物料能按承诺日期送达。这是应对长周期物料和避免延期的最关键节点。",
|
"主动、定期地与供应商沟通,跟踪生产/备货进度,确认并确保物料能按承诺日期送达。这是应对长周期物料和避免延期的最关键节点。",
|
||||||
4
|
43
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"采购、库房",
|
"采购、库房",
|
||||||
"一、一次配线",
|
"一、一次配线",
|
||||||
"到货报验与问题处理",
|
"到货报验与问题处理",
|
||||||
"物料到达后,采购员协同库房、质检员(IQC)对物料进行数量、外观、型号规格的初步核对,并处理任何与订单不符的问题(如数量短缺、型号错误、损坏等)。",
|
"物料到达后,采购员协同库房、质检员(IQC)对物料进行数量、外观、型号规格的初步核对,并处理任何与订单不符的问题(如数量短缺、型号错误、损坏等)。",
|
||||||
5
|
45
|
||||||
),
|
),
|
||||||
|
|
||||||
// 二、库房管理节点 阶段
|
// 二、库房管理节点 阶段
|
||||||
@@ -198,21 +198,21 @@ public class TableDataConstantUtil {
|
|||||||
"二、库房管理节点",
|
"二、库房管理节点",
|
||||||
"进货检验(IQC)",
|
"进货检验(IQC)",
|
||||||
"质检人员根据检验标准和物料清单,对送达的物料进行质量检验,包括功能测试、电气参数测量、证件核查等。",
|
"质检人员根据检验标准和物料清单,对送达的物料进行质量检验,包括功能测试、电气参数测量、证件核查等。",
|
||||||
1
|
47
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"采购、库房",
|
"采购、库房",
|
||||||
"二、库房管理节点",
|
"二、库房管理节点",
|
||||||
"物料入库与上架",
|
"物料入库与上架",
|
||||||
"对通过IQC检验的合格物料,办理正式入库手续,包括系统数据录入、贴码、分类,并放置到指定货位。",
|
"对通过IQC检验的合格物料,办理正式入库手续,包括系统数据录入、贴码、分类,并放置到指定货位。",
|
||||||
2
|
49
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"采购、库房",
|
"采购、库房",
|
||||||
"二、库房管理节点",
|
"二、库房管理节点",
|
||||||
"生产领料与发料(齐套性检查)",
|
"生产领料与发料(齐套性检查)",
|
||||||
"根据生产任务单和BOM,为车间准备所需物料。关键环节是进行“齐套性检查”,即确认一个订单所需的所有物料是否均已备齐,避免生产线因缺料停滞。",
|
"根据生产任务单和BOM,为车间准备所需物料。关键环节是进行“齐套性检查”,即确认一个订单所需的所有物料是否均已备齐,避免生产线因缺料停滞。",
|
||||||
3
|
51
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"采购、库房",
|
"采购、库房",
|
||||||
@@ -222,7 +222,7 @@ public class TableDataConstantUtil {
|
|||||||
"对在库物料进行全面盘点,\n" +
|
"对在库物料进行全面盘点,\n" +
|
||||||
"确保账、物、卡一致。\n" +
|
"确保账、物、卡一致。\n" +
|
||||||
"同时对关键物料设置最低库存预警,触发补货机制。\n",
|
"同时对关键物料设置最低库存预警,触发补货机制。\n",
|
||||||
4
|
53
|
||||||
),
|
),
|
||||||
|
|
||||||
//车间设计制造表
|
//车间设计制造表
|
||||||
@@ -232,35 +232,35 @@ public class TableDataConstantUtil {
|
|||||||
"一、一次线装配",
|
"一、一次线装配",
|
||||||
"图纸审核",
|
"图纸审核",
|
||||||
null,
|
null,
|
||||||
1
|
55
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"一、一次线装配",
|
"一、一次线装配",
|
||||||
"安装导轨/安装梁",
|
"安装导轨/安装梁",
|
||||||
"根据布局图安装",
|
"根据布局图安装",
|
||||||
2
|
57
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"一、一次线装配",
|
"一、一次线装配",
|
||||||
"安装元器件",
|
"安装元器件",
|
||||||
"安装断路器、接触器、变频器等一次元件。",
|
"安装断路器、接触器、变频器等一次元件。",
|
||||||
3
|
59
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"一、一次线装配",
|
"一、一次线装配",
|
||||||
"母排加工与安装",
|
"母排加工与安装",
|
||||||
"制作并安装铜排或铝排,连接处需搪锡或镀银处理。",
|
"制作并安装铜排或铝排,连接处需搪锡或镀银处理。",
|
||||||
4
|
61
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"一、一次线装配",
|
"一、一次线装配",
|
||||||
"一次线接线",
|
"一次线接线",
|
||||||
"使用规定颜色的线缆(通常为黑、棕、灰)连接主回路。",
|
"使用规定颜色的线缆(通常为黑、棕、灰)连接主回路。",
|
||||||
5
|
63
|
||||||
),
|
),
|
||||||
|
|
||||||
// 二、二次线装配 阶段
|
// 二、二次线装配 阶段
|
||||||
@@ -269,21 +269,21 @@ public class TableDataConstantUtil {
|
|||||||
"二、二次线装配",
|
"二、二次线装配",
|
||||||
"安装端子排、线槽、继电器等二次元件。",
|
"安装端子排、线槽、继电器等二次元件。",
|
||||||
null,
|
null,
|
||||||
1
|
65
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"二、二次线装配",
|
"二、二次线装配",
|
||||||
"下线与套标",
|
"下线与套标",
|
||||||
"根据接线图,使用不同颜色的导线(通常为蓝、黄绿、红等)进行测量、裁剪、压接端子并套上打印好的线号管。",
|
"根据接线图,使用不同颜色的导线(通常为蓝、黄绿、红等)进行测量、裁剪、压接端子并套上打印好的线号管。",
|
||||||
2
|
67
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"二、二次线装配",
|
"二、二次线装配",
|
||||||
"布线与接线",
|
"布线与接线",
|
||||||
"将线缆整齐地放入线槽,按照图纸接到对应的端子和元件上。要求横平竖直,牢固可靠。",
|
"将线缆整齐地放入线槽,按照图纸接到对应的端子和元件上。要求横平竖直,牢固可靠。",
|
||||||
3
|
69
|
||||||
),
|
),
|
||||||
|
|
||||||
// 三、调试、检验与包装发货 阶段
|
// 三、调试、检验与包装发货 阶段
|
||||||
@@ -292,35 +292,35 @@ public class TableDataConstantUtil {
|
|||||||
"三、调试、检验与包装发货",
|
"三、调试、检验与包装发货",
|
||||||
"接线检查",
|
"接线检查",
|
||||||
"对照图纸,进行100%的接线正确性检查。",
|
"对照图纸,进行100%的接线正确性检查。",
|
||||||
1
|
71
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"三、调试、检验与包装发货",
|
"三、调试、检验与包装发货",
|
||||||
"接地连续性测试",
|
"接地连续性测试",
|
||||||
"确保所有接地连接可靠。",
|
"确保所有接地连接可靠。",
|
||||||
2
|
73
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"三、调试、检验与包装发货",
|
"三、调试、检验与包装发货",
|
||||||
"绝缘电阻测试",
|
"绝缘电阻测试",
|
||||||
"使用兆欧表测量相间、相对地的绝缘电阻,确保符合标准(通常>1MΩ)。",
|
"使用兆欧表测量相间、相对地的绝缘电阻,确保符合标准(通常>1MΩ)。",
|
||||||
3
|
75
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"三、调试、检验与包装发货",
|
"三、调试、检验与包装发货",
|
||||||
"耐压测试",
|
"耐压测试",
|
||||||
"施加高于额定电压的测试电压,持续一定时间,检测是否存在绝缘击穿风险。",
|
"施加高于额定电压的测试电压,持续一定时间,检测是否存在绝缘击穿风险。",
|
||||||
4
|
77
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"三、调试、检验与包装发货",
|
"三、调试、检验与包装发货",
|
||||||
"功能模拟调试",
|
"功能模拟调试",
|
||||||
"在不接通主电源的情况下,通过外部电源模拟信号,测试控制回路的逻辑是否正确。然后接通主电源,进行空载和带载运行测试。",
|
"在不接通主电源的情况下,通过外部电源模拟信号,测试控制回路的逻辑是否正确。然后接通主电源,进行空载和带载运行测试。",
|
||||||
5
|
79
|
||||||
),
|
),
|
||||||
|
|
||||||
// 四、清理与包装 阶段
|
// 四、清理与包装 阶段
|
||||||
@@ -329,21 +329,21 @@ public class TableDataConstantUtil {
|
|||||||
"四、清理与包装",
|
"四、清理与包装",
|
||||||
"清理柜内灰尘、线头等。",
|
"清理柜内灰尘、线头等。",
|
||||||
null,
|
null,
|
||||||
1
|
81
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"四、清理与包装",
|
"四、清理与包装",
|
||||||
"张贴铭牌、警告标识、一次系统图等。",
|
"张贴铭牌、警告标识、一次系统图等。",
|
||||||
null,
|
null,
|
||||||
2
|
83
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"四、清理与包装",
|
"四、清理与包装",
|
||||||
"使用塑料膜、气泡袋、护角、木箱等对产品进行防护包装,防止运输途中损坏。",
|
"使用塑料膜、气泡袋、护角、木箱等对产品进行防护包装,防止运输途中损坏。",
|
||||||
null,
|
null,
|
||||||
3
|
85
|
||||||
),
|
),
|
||||||
|
|
||||||
// 五、文件整理与发货 阶段
|
// 五、文件整理与发货 阶段
|
||||||
@@ -352,14 +352,14 @@ public class TableDataConstantUtil {
|
|||||||
"五、文件整理与发货",
|
"五、文件整理与发货",
|
||||||
"整理随柜文件,通常包括:合格证、出厂检验报告、电气原理图、接线图、元器件说明书等。",
|
"整理随柜文件,通常包括:合格证、出厂检验报告、电气原理图、接线图、元器件说明书等。",
|
||||||
null,
|
null,
|
||||||
1
|
87
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"车间设计制造",
|
"车间设计制造",
|
||||||
"五、文件整理与发货",
|
"五、文件整理与发货",
|
||||||
"安排物流,准时发货给客户。",
|
"安排物流,准时发货给客户。",
|
||||||
null,
|
null,
|
||||||
2
|
89
|
||||||
),
|
),
|
||||||
|
|
||||||
//现场实施设计表
|
//现场实施设计表
|
||||||
@@ -371,7 +371,7 @@ public class TableDataConstantUtil {
|
|||||||
"条件:在计划时间点前完成测试,接地电阻值完全符合设计要求(通常≤1Ω或按图纸规定),测试报告(含现场照片、测试仪读数、测试人、时间地点)清晰、规范、完整,并准时上传至公司项目管理平台。\n" +
|
"条件:在计划时间点前完成测试,接地电阻值完全符合设计要求(通常≤1Ω或按图纸规定),测试报告(含现场照片、测试仪读数、测试人、时间地点)清晰、规范、完整,并准时上传至公司项目管理平台。\n" +
|
||||||
"主动发现并解决问题:测试结果初次不合格,但团队能主动、快速地分析原因(如土壤问题、连接点腐蚀等),提出整改方案并实施,最终使电阻值达标。此举避免了项目后期更大的延误和成本。\n" +
|
"主动发现并解决问题:测试结果初次不合格,但团队能主动、快速地分析原因(如土壤问题、连接点腐蚀等),提出整改方案并实施,最终使电阻值达标。此举避免了项目后期更大的延误和成本。\n" +
|
||||||
"提供优化建议:在测试过程中,发现了设计图中未考虑到的接地隐患,或提出了被采纳的接地系统优化建议,提升了整体安全性",
|
"提供优化建议:在测试过程中,发现了设计图中未考虑到的接地隐患,或提出了被采纳的接地系统优化建议,提升了整体安全性",
|
||||||
1
|
91
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"现场实施设计",
|
"现场实施设计",
|
||||||
@@ -379,7 +379,7 @@ public class TableDataConstantUtil {
|
|||||||
"现场接线安装及规范",
|
"现场接线安装及规范",
|
||||||
"核心目标: 所有电气接线工作100%符合图纸与规范,布线整齐、标识清晰、现场安全整洁,为后续调试奠定坚实的硬件基础,实现“零隐患”移交。\n" +
|
"核心目标: 所有电气接线工作100%符合图纸与规范,布线整齐、标识清晰、现场安全整洁,为后续调试奠定坚实的硬件基础,实现“零隐患”移交。\n" +
|
||||||
"考核维度: 正确性、规范性、安全性、进度。",
|
"考核维度: 正确性、规范性、安全性、进度。",
|
||||||
2
|
93
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"现场实施设计",
|
"现场实施设计",
|
||||||
@@ -387,7 +387,7 @@ public class TableDataConstantUtil {
|
|||||||
"PLC打点",
|
"PLC打点",
|
||||||
"核心目标: 高效、准确地验证并确认PLC的每一个输入/输出(I/O)点与现场对应的传感器、执行器动作完全一致,确保硬件层与软件层信号通道100%正确、可靠。\n" +
|
"核心目标: 高效、准确地验证并确认PLC的每一个输入/输出(I/O)点与现场对应的传感器、执行器动作完全一致,确保硬件层与软件层信号通道100%正确、可靠。\n" +
|
||||||
"考核维度: 准确性、完整性、效率、文档记录。",
|
"考核维度: 准确性、完整性、效率、文档记录。",
|
||||||
3
|
95
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"现场实施设计",
|
"现场实施设计",
|
||||||
@@ -395,7 +395,7 @@ public class TableDataConstantUtil {
|
|||||||
"传动优化",
|
"传动优化",
|
||||||
"核心目标: 通过参数整定、特性调试,使所有传动设备(如变频器、伺服驱动器、直流调速器等)的输出特性完全满足甚至超越工艺要求,确保系统运行平稳、高效、可靠。\n" +
|
"核心目标: 通过参数整定、特性调试,使所有传动设备(如变频器、伺服驱动器、直流调速器等)的输出特性完全满足甚至超越工艺要求,确保系统运行平稳、高效、可靠。\n" +
|
||||||
"考核维度: 性能指标、稳定性、效率、技术创新",
|
"考核维度: 性能指标、稳定性、效率、技术创新",
|
||||||
4
|
97
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"现场实施设计",
|
"现场实施设计",
|
||||||
@@ -403,7 +403,7 @@ public class TableDataConstantUtil {
|
|||||||
"联动调试",
|
"联动调试",
|
||||||
"核心目标: 在“单动”和“传动优化”完成的基础上,使整个自动化系统按预设的工艺流程、联锁逻辑和安全策略,自动、稳定、可靠地连续运行,实现项目的最终功能。\n" +
|
"核心目标: 在“单动”和“传动优化”完成的基础上,使整个自动化系统按预设的工艺流程、联锁逻辑和安全策略,自动、稳定、可靠地连续运行,实现项目的最终功能。\n" +
|
||||||
"考核维度: 系统稳定性、逻辑正确性、故障率、团队协作、最终用户满意度",
|
"考核维度: 系统稳定性、逻辑正确性、故障率、团队协作、最终用户满意度",
|
||||||
5
|
99
|
||||||
),
|
),
|
||||||
|
|
||||||
// 五、项目收尾 阶段
|
// 五、项目收尾 阶段
|
||||||
@@ -413,7 +413,7 @@ public class TableDataConstantUtil {
|
|||||||
"收尾",
|
"收尾",
|
||||||
"核心目标: 成功通过客户或最终用户的正式验收,所有技术指标、性能要求和文档资料均满足合同要求,项目正式移交,并取得关键的验收证明文件。\n" +
|
"核心目标: 成功通过客户或最终用户的正式验收,所有技术指标、性能要求和文档资料均满足合同要求,项目正式移交,并取得关键的验收证明文件。\n" +
|
||||||
"考核维度: 客户满意度、验收一次性通过率、文档完整性、项目尾款触发",
|
"考核维度: 客户满意度、验收一次性通过率、文档完整性、项目尾款触发",
|
||||||
1
|
101
|
||||||
)
|
)
|
||||||
|
|
||||||
);
|
);
|
||||||
@@ -426,92 +426,92 @@ public class TableDataConstantUtil {
|
|||||||
"需求分析",
|
"需求分析",
|
||||||
"需求调研",
|
"需求调研",
|
||||||
"用户访谈、业务场景梳理、现有系统调研",
|
"用户访谈、业务场景梳理、现有系统调研",
|
||||||
null,
|
"主要是与高总进行内容确认包括不限于:运营流程梳理、人员招募培训、信息系统开发、信息系统优化、独立站建设、独立站内容撰写、相关设施采购。",
|
||||||
1
|
1
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"需求分析",
|
"需求分析",
|
||||||
"需求梳理",
|
"需求梳理",
|
||||||
"功能需求清单编写",
|
"功能需求清单编写",
|
||||||
null,
|
"已完成初步系统开发、独立站建设摸索、初步团队建设及培训。后续进度依据实际情况进行推进。",
|
||||||
1
|
3
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"需求分析",
|
"需求分析",
|
||||||
"需求评审",
|
"需求评审",
|
||||||
"内部评审(团队对齐)、外部评审(客户 / 用户确认)、需求文档定稿(PRD)",
|
"内部评审(团队对齐)、外部评审(客户 / 用户确认)、需求文档定稿(PRD)",
|
||||||
null,
|
null,
|
||||||
1
|
5
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"设计阶段",
|
"设计阶段",
|
||||||
"架构设计",
|
"架构设计",
|
||||||
"技术架构选型、系统交互流程图设计、核心模块划分",
|
"技术架构选型、系统交互流程图设计、核心模块划分",
|
||||||
null,
|
null,
|
||||||
1
|
7
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"设计阶段",
|
"设计阶段",
|
||||||
"数据库设计",
|
"数据库设计",
|
||||||
"数据模型设计(ER 图)、表结构定义、索引设计",
|
"数据模型设计(ER 图)、表结构定义、索引设计",
|
||||||
null,
|
"要求留存全部库表,库表说明详尽。",
|
||||||
1
|
9
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"设计阶段",
|
"设计阶段",
|
||||||
"界面与交互设计",
|
"界面与交互设计",
|
||||||
"UI 设计(原型图 / 视觉稿)、交互逻辑设计、前端页面结构规划",
|
"UI 设计(原型图 / 视觉稿)、交互逻辑设计、前端页面结构规划",
|
||||||
null,
|
"要求典型设计进行留存记录。",
|
||||||
1
|
11
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"开发阶段",
|
"开发阶段",
|
||||||
"前端开发",
|
"前端开发",
|
||||||
"技术选型(框架 / 库)、开发环境搭建、页面开发、前端逻辑实现",
|
"技术选型(框架 / 库)、开发环境搭建、页面开发、前端逻辑实现",
|
||||||
null,
|
"全部代码留存。",
|
||||||
1
|
13
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"开发阶段",
|
"开发阶段",
|
||||||
"后端开发",
|
"后端开发",
|
||||||
"技术栈确定(语言 / 框架)、开发环境搭建、核心业务逻辑开发、数据库交互实现、接口开发",
|
"技术栈确定(语言 / 框架)、开发环境搭建、核心业务逻辑开发、数据库交互实现、接口开发",
|
||||||
null,
|
"全部代码留存。",
|
||||||
1
|
15
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"开发阶段",
|
"开发阶段",
|
||||||
"移动端开发",
|
"移动端开发",
|
||||||
"原生 / 跨平台技术选型、开发环境配置、页面开发、原生功能集成(相机 / 定位等)、接口联调",
|
"原生 / 跨平台技术选型、开发环境配置、页面开发、原生功能集成(相机 / 定位等)、接口联调",
|
||||||
null,
|
null,
|
||||||
1
|
17
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"测试阶段",
|
"测试阶段",
|
||||||
"功能测试",
|
"功能测试",
|
||||||
"单元测试验证、集成测试(模块间交互)、系统测试(全流程功能)、回归测试(Bug 修复后)",
|
"单元测试验证、集成测试(模块间交互)、系统测试(全流程功能)、回归测试(Bug 修复后)",
|
||||||
null,
|
"要求出具测试报告,严格遵循公司标准。",
|
||||||
1
|
19
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"部署上线",
|
"部署上线",
|
||||||
"环境准备",
|
"环境准备",
|
||||||
"生产环境配置(服务器 / 数据库 / 中间件)、配置文件梳理、安全合规检查(权限 / 加密等)",
|
"生产环境配置(服务器 / 数据库 / 中间件)、配置文件梳理、安全合规检查(权限 / 加密等)",
|
||||||
null,
|
"要求出具项目技术收口报告,严格遵循公司标准。",
|
||||||
1
|
21
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"部署上线",
|
"部署上线",
|
||||||
"部署执行",
|
"部署执行",
|
||||||
"部署脚本编写、版本打包与发布、灰度发布策略(若需)、监控工具部署(日志 / 告警)",
|
"部署脚本编写、版本打包与发布、灰度发布策略(若需)、监控工具部署(日志 / 告警)",
|
||||||
null,
|
"要求出具使用说明书,严格遵循公司标准。",
|
||||||
1
|
23
|
||||||
),
|
),
|
||||||
createNode(
|
createNode(
|
||||||
"部署上线",
|
"部署上线",
|
||||||
"上线验证",
|
"上线验证",
|
||||||
"功能冒烟测试、数据一致性校验、性能监控(首小时 / 首日)、回滚方案准备",
|
"功能冒烟测试、数据一致性校验、性能监控(首小时 / 首日)、回滚方案准备",
|
||||||
null,
|
"与客户确认技术成果,完成项目收口。",
|
||||||
1
|
25
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user