package com.qianwen.smartman.modules.cps.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
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 com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import java.lang.invoke.SerializedLambda;
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Optional;
|
import java.util.stream.Collectors;
|
import com.qianwen.smartman.common.cache.RegionCache;
|
import com.qianwen.smartman.common.utils.MessageUtils;
|
import com.qianwen.core.log.exception.ServiceException;
|
import com.qianwen.core.mp.support.Condition;
|
import com.qianwen.core.mp.support.Query;
|
import com.qianwen.core.secure.utils.AuthUtil;
|
import com.qianwen.core.tool.utils.Func;
|
import com.qianwen.smartman.modules.cps.convert.MaintainProjectConvert;
|
import com.qianwen.smartman.modules.cps.entity.MaintainProject;
|
import com.qianwen.smartman.modules.cps.mapper.MaintainProjectMapper;
|
import com.qianwen.smartman.modules.cps.service.IMaintainProjectItemService;
|
import com.qianwen.smartman.modules.cps.service.IMaintainProjectService;
|
import com.qianwen.smartman.modules.cps.vo.MaintainPlanIdListVO;
|
import com.qianwen.smartman.modules.cps.vo.MaintainProjectAddVO;
|
import com.qianwen.smartman.modules.cps.vo.MaintainProjectItemVO;
|
import com.qianwen.smartman.modules.cps.vo.MaintainProjectUpdateVO;
|
import com.qianwen.smartman.modules.cps.vo.MaintainProjectVO;
|
import com.qianwen.smartman.modules.tpm.entity.MaintainPlan;
|
import com.qianwen.smartman.modules.tpm.enums.MaintainPlanStatusEnum;
|
import com.qianwen.smartman.modules.tpm.service.IMaintainPlanService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.context.annotation.Lazy;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
@Service
|
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/service/impl/MaintainProjectServiceImpl.class */
|
public class MaintainProjectServiceImpl extends ServiceImpl<MaintainProjectMapper, MaintainProject> implements IMaintainProjectService {
|
@Autowired
|
private IMaintainProjectItemService maintainProjectItemService;
|
@Autowired
|
@Lazy
|
private IMaintainPlanService maintainPlanService;
|
|
private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) {
|
String implMethodName = lambda.getImplMethodName();
|
boolean z = true;
|
switch (implMethodName.hashCode()) {
|
case -904436898:
|
if (implMethodName.equals("getProjectId")) {
|
z = true;
|
break;
|
}
|
break;
|
case -75622813:
|
if (implMethodName.equals("getCode")) {
|
z = true;
|
break;
|
}
|
break;
|
case 98245393:
|
if (implMethodName.equals("getId")) {
|
z = true;
|
break;
|
}
|
break;
|
case 112409713:
|
if (implMethodName.equals("getPlanStatus")) {
|
z = false;
|
break;
|
}
|
break;
|
case 731625057:
|
if (implMethodName.equals("getDeviceTypeId")) {
|
z = true;
|
break;
|
}
|
break;
|
case 771206363:
|
if (implMethodName.equals("getTenantId")) {
|
z = true;
|
break;
|
}
|
break;
|
}
|
switch (z) {
|
case false:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/tpm/entity/MaintainPlan") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) {
|
return (v0) -> {
|
return v0.getPlanStatus();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/cps/entity/MaintainProjectItem") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) {
|
return (v0) -> {
|
return v0.getProjectId();
|
};
|
}
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/tpm/entity/MaintainPlan") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) {
|
return (v0) -> {
|
return v0.getProjectId();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/cps/entity/MaintainProject") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) {
|
return (v0) -> {
|
return v0.getDeviceTypeId();
|
};
|
}
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/cps/entity/MaintainProject") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) {
|
return (v0) -> {
|
return v0.getDeviceTypeId();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/mp/base/BaseEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) {
|
return (v0) -> {
|
return v0.getId();
|
};
|
}
|
break;
|
case true:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/tenant/mp/TenantEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getTenantId();
|
};
|
}
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/tenant/mp/TenantEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getTenantId();
|
};
|
}
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/tenant/mp/TenantEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getTenantId();
|
};
|
}
|
break;
|
case RegionCache.VILLAGE_LEVEL /* 5 */:
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/cps/entity/MaintainProject") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getCode();
|
};
|
}
|
if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/cps/entity/MaintainProject") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
|
return (v0) -> {
|
return v0.getCode();
|
};
|
}
|
break;
|
}
|
throw new IllegalArgumentException("Invalid lambda deserialization");
|
}
|
|
@Override // org.springblade.modules.cps.service.IMaintainProjectService
|
@Transactional(rollbackFor = {Exception.class})
|
public MaintainProject createMaintainProject(MaintainProjectAddVO maintainProjectAddVO) {
|
if (checkCodeIsExist(maintainProjectAddVO.getCode(), null)) {
|
throw new ServiceException(MessageUtils.message("cps.common.duplicate.code.can.not.add", new Object[0]));
|
}
|
MaintainProject maintainProject = MaintainProjectConvert.INSTANCE.convert(maintainProjectAddVO);
|
save(maintainProject);
|
return maintainProject;
|
}
|
|
@Override // org.springblade.modules.cps.service.IMaintainProjectService
|
@Transactional(rollbackFor = {Exception.class})
|
public MaintainProject editMaintainProject(MaintainProjectUpdateVO maintainProjectUpdateVO) {
|
MaintainProject byId = (MaintainProject) getById(maintainProjectUpdateVO.getId());
|
if (!byId.getCode().equals(maintainProjectUpdateVO.getCode()) || !byId.getName().equals(maintainProjectUpdateVO.getName())) {
|
throw new ServiceException(MessageUtils.message("cps.tpm.code.or.name.not.match.id", new Object[0]));
|
}
|
if (checkCodeIsExist(maintainProjectUpdateVO.getCode(), maintainProjectUpdateVO.getId())) {
|
throw new ServiceException(MessageUtils.message("cps.common.duplicate.code.can.not.edit", new Object[0]));
|
}
|
MaintainProject maintainProject = MaintainProjectConvert.INSTANCE.convert(maintainProjectUpdateVO);
|
updateById(maintainProject);
|
return maintainProject;
|
}
|
|
@Override // org.springblade.modules.cps.service.IMaintainProjectService
|
public MaintainProjectVO queryMaintainProject(Long id) {
|
MaintainProject maintainProject = (MaintainProject) getById(id);
|
if (maintainProject == null) {
|
throw new ServiceException(MessageUtils.message("cps.common.the.current.object.does.not.exist", new Object[0]));
|
}
|
MaintainProjectVO maintainProjectVo = MaintainProjectConvert.INSTANCE.convert(maintainProject);
|
List<MaintainProjectItemVO> maintainProjectItemVoList = this.maintainProjectItemService.getMaintainProjectItemVoByProjectId(maintainProject.getId(), AuthUtil.getTenantId());
|
maintainProjectVo.setMaintainProjectItemVoList(maintainProjectItemVoList);
|
return maintainProjectVo;
|
}
|
|
@Override // org.springblade.modules.cps.service.IMaintainProjectService
|
public List<MaintainProjectVO> queryMaintainProjectList(Long deviceTypeId) {
|
List<MaintainProject> list = list(((LambdaQueryWrapper) Wrappers.query().lambda().eq((v0) -> {
|
return v0.getDeviceTypeId();
|
}, deviceTypeId)).eq(Func.isNotEmpty(AuthUtil.getTenantId()), (v0) -> {
|
return v0.getTenantId();
|
}, AuthUtil.getTenantId()));
|
return MaintainProjectConvert.INSTANCE.convert(list);
|
}
|
|
@Override // org.springblade.modules.cps.service.IMaintainProjectService
|
public IPage<MaintainProjectVO> queryMaintainProjectListPage(Long deviceTypeId, Query query) {
|
IPage<MaintainProject> pages = page(Condition.getPage(query), (Wrapper) Wrappers.query().lambda().eq(Func.isNotEmpty(AuthUtil.getTenantId()), (v0) -> {
|
return v0.getTenantId();
|
}, AuthUtil.getTenantId()).and(Func.isNotEmpty(deviceTypeId), i -> {
|
LambdaQueryWrapper lambdaQueryWrapper = (LambdaQueryWrapper) i.like((v0) -> {
|
return v0.getDeviceTypeId();
|
}, deviceTypeId);
|
}).orderByAsc((v0) -> {
|
return v0.getCode();
|
}));
|
return (IPage) Optional.ofNullable(pages).map(p -> {
|
Page page = new Page(p.getCurrent(), p.getSize(), p.getTotal());
|
page.setRecords(MaintainProjectConvert.INSTANCE.convert(p.getRecords()));
|
return page;
|
}).orElse(new Page());
|
}
|
|
@Override // org.springblade.modules.cps.service.IMaintainProjectService
|
@Transactional(rollbackFor = {Exception.class})
|
public Boolean deleteMaintainProject(Long id) {
|
removeById(id);
|
this.maintainProjectItemService.remove((Wrapper) Wrappers.query().lambda().eq((v0) -> {
|
return v0.getProjectId();
|
}, id));
|
return true;
|
}
|
|
private boolean checkCodeIsExist(String code, Long id) {
|
List<MaintainProject> maintainProjectList = this.baseMapper.selectList(((LambdaQueryWrapper) Wrappers.query().lambda().eq(Func.isNotEmpty(AuthUtil.getTenantId()), (v0) -> {
|
return v0.getTenantId();
|
}, AuthUtil.getTenantId()).and(wrapper -> {
|
LambdaQueryWrapper lambdaQueryWrapper = (LambdaQueryWrapper) wrapper.eq((v0) -> {
|
return v0.getCode();
|
}, code);
|
})).notIn(Func.isNotEmpty(id), (v0) -> {
|
return v0.getId();
|
}, new Object[]{id}));
|
return maintainProjectList != null && maintainProjectList.size() > 0;
|
}
|
|
private void deleteMaintainPlan(Long projectId) {
|
List<Integer> statusList = new ArrayList<>();
|
statusList.add(Integer.valueOf(MaintainPlanStatusEnum.T1.getType()));
|
statusList.add(Integer.valueOf(MaintainPlanStatusEnum.T2.getType()));
|
List<MaintainPlan> list = this.maintainPlanService.list((Wrapper) ((LambdaQueryWrapper) Wrappers.query().lambda().in((v0) -> {
|
return v0.getPlanStatus();
|
}, statusList)).eq((v0) -> {
|
return v0.getProjectId();
|
}, projectId));
|
List<Long> planIdList = (List) list.stream().map((v0) -> {
|
return v0.getId();
|
}).collect(Collectors.toList());
|
if (!planIdList.isEmpty()) {
|
MaintainPlanIdListVO maintainPlanIdListDTO = new MaintainPlanIdListVO();
|
maintainPlanIdListDTO.setIdList(planIdList);
|
this.maintainPlanService.deleteMaintainPlan(maintainPlanIdListDTO);
|
}
|
}
|
}
|