物资配置管理--优化循环逻辑
This commit is contained in:
parent
cdcba68d85
commit
0d779b47e6
|
|
@ -103,6 +103,66 @@ public class MaTypeConfigController extends BaseController {
|
||||||
|
|
||||||
// ------------------- 开启数据处理 ---------------------
|
// ------------------- 开启数据处理 ---------------------
|
||||||
|
|
||||||
|
// 4.循环所有物资类型,重型数据集合保障只循环一次,减少性能损失
|
||||||
|
for (MaTypeConfigVo typeConfigVo1 : list) {
|
||||||
|
|
||||||
|
// 1.外层 先对比维修班组
|
||||||
|
for (TypeRepair typeRepair : typeRepairList) {
|
||||||
|
// 2.判断当前维修配置信息中的物资类型id是否等于当前物资类型配置信息中的物资类型id
|
||||||
|
if (typeRepair.getTypeId().equals(typeConfigVo1.getTypeId())) {
|
||||||
|
// 3.如果相等,把维修员信息设置到物资类型配置信息中
|
||||||
|
typeConfigVo1.setRepairUserId(typeRepair.getUserId());
|
||||||
|
typeConfigVo1.setRepairUserName(typeRepair.getUserName());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 1.外层 再对比库管班组
|
||||||
|
for (TypeKeeper typeKeeper : typeKeeperList) {
|
||||||
|
// 2.判断当前库管配置信息中的物资类型id是否等于当前物资类型配置信息中的物资类型id
|
||||||
|
if (typeKeeper.getTypeId().equals(typeConfigVo1.getTypeId())) {
|
||||||
|
// 3.如果相等,把库管员信息设置到物资类型配置信息中
|
||||||
|
typeConfigVo1.setKeeperUserId(typeKeeper.getUserId());
|
||||||
|
typeConfigVo1.setKeeperUserName(typeKeeper.getUserName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 5.判断当前物资类型配置信息是否有子节点
|
||||||
|
if (typeConfigVo1.getChildren() != null) {
|
||||||
|
// 6.有子节点,继续循环子节点,判断子节点是否有维修配置信息
|
||||||
|
for (MaTypeConfigVo typeConfigVo2 : typeConfigVo1.getChildren()) {
|
||||||
|
// 7.有维修配置信息,把维修员信息设置到子节点中
|
||||||
|
for (TypeRepair typeRepair : typeRepairList) {
|
||||||
|
if (typeRepair.getTypeId().equals(typeConfigVo2.getTypeId())) {
|
||||||
|
typeConfigVo2.setRepairUserId(typeRepair.getUserId());
|
||||||
|
typeConfigVo2.setRepairUserName(typeRepair.getUserName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 8.有子节点,继续循环子节点,
|
||||||
|
for (MaTypeConfigVo typeConfigVo3 : typeConfigVo1.getChildren()) {
|
||||||
|
// 9.判断子节点是否有库管配置信息
|
||||||
|
for (TypeKeeper typeKeeper : typeKeeperList) {
|
||||||
|
if (typeKeeper.getTypeId().equals(typeConfigVo3.getTypeId())) {
|
||||||
|
typeConfigVo3.setKeeperUserId(typeKeeper.getUserId());
|
||||||
|
typeConfigVo3.setKeeperUserName(typeKeeper.getUserName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: 先暂时取消后续过滤流程
|
||||||
|
if (true) {
|
||||||
|
return success(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
// -------------------- NEW ----------------------------
|
||||||
|
|
||||||
// 4.1 先循环维修配置信息
|
// 4.1 先循环维修配置信息
|
||||||
for (TypeRepair typeRepair : typeRepairList) {
|
for (TypeRepair typeRepair : typeRepairList) {
|
||||||
// 4.循环维修配置信息,把维修员信息设置到物资类型配置信息中
|
// 4.循环维修配置信息,把维修员信息设置到物资类型配置信息中
|
||||||
|
|
@ -151,6 +211,7 @@ public class MaTypeConfigController extends BaseController {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ------------------- 数据过滤开始 ---------------------
|
// ------------------- 数据过滤开始 ---------------------
|
||||||
if (maTypeConfigDto == null || maTypeConfigDto.getUserId() == null || maTypeConfigDto.getUserId() == 0L) {
|
if (maTypeConfigDto == null || maTypeConfigDto.getUserId() == null || maTypeConfigDto.getUserId() == 0L) {
|
||||||
// 如果参数无效,则返回原始列表
|
// 如果参数无效,则返回原始列表
|
||||||
|
|
@ -160,9 +221,11 @@ public class MaTypeConfigController extends BaseController {
|
||||||
List<MaTypeConfigVo> filteredList = new ArrayList<>();
|
List<MaTypeConfigVo> filteredList = new ArrayList<>();
|
||||||
|
|
||||||
for (MaTypeConfigVo maTypeConfigVo : list) {
|
for (MaTypeConfigVo maTypeConfigVo : list) {
|
||||||
if (maTypeConfigVo.getKeeperUserId().equals(maTypeConfigDto.getUserId()) ||
|
if (
|
||||||
|
maTypeConfigVo.getKeeperUserId().equals(maTypeConfigDto.getUserId()) ||
|
||||||
maTypeConfigVo.getRepairUserId().equals(maTypeConfigDto.getUserId())
|
maTypeConfigVo.getRepairUserId().equals(maTypeConfigDto.getUserId())
|
||||||
) {
|
)
|
||||||
|
{
|
||||||
filteredList.add(maTypeConfigVo);
|
filteredList.add(maTypeConfigVo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -198,9 +261,9 @@ public class MaTypeConfigController extends BaseController {
|
||||||
TreeSelect treeSelect03 = new TreeSelect(13L, "宏源库管一班", 2, 5L);
|
TreeSelect treeSelect03 = new TreeSelect(13L, "宏源库管一班", 2, 5L);
|
||||||
|
|
||||||
// 3. 创建部门人员
|
// 3. 创建部门人员
|
||||||
TreeSelect treeSelect001 = new TreeSelect(111L, "王小明", 3, 11L);
|
TreeSelect treeSelect001 = new TreeSelect(117L, "袁泷", 3, 11L);
|
||||||
TreeSelect treeSelect002 = new TreeSelect(112L, "张小三", 3, 11L);
|
TreeSelect treeSelect002 = new TreeSelect(133L, "喵喵喵", 3, 11L);
|
||||||
TreeSelect treeSelect003 = new TreeSelect(113L, "李四", 3, 12L);
|
TreeSelect treeSelect003 = new TreeSelect(129L, "村上春树", 3, 12L);
|
||||||
|
|
||||||
// 4. 把子部门人员添加到子部门中
|
// 4. 把子部门人员添加到子部门中
|
||||||
treeSelect01.setChildren(Arrays.asList(treeSelect001, treeSelect002));
|
treeSelect01.setChildren(Arrays.asList(treeSelect001, treeSelect002));
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue