123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- package com.shkpr.service.alambizplugin.dto;
- import com.shkpr.service.alambizplugin.apiparam.GisSurveyCheckParams;
- import com.shkpr.service.alambizplugin.constants.GisSurveyCheckTypeEnum;
- import lombok.AllArgsConstructor;
- import lombok.Getter;
- import lombok.ToString;
- import java.util.Arrays;
- import java.util.Objects;
- /**
- * 系统检查id
- *
- * @author 欧阳劲驰
- * @since 1.0.0
- */
- @Getter
- @AllArgsConstructor
- @ToString
- public class GisSurveySystemCheckId {
- /**
- * 检查类型:0:项目,1:任务
- */
- private final GisSurveyCheckTypeEnum checkType;
- /**
- * 标识(项目code/任务code)
- */
- private final String code;
- /**
- * 生成任务id
- *
- * @param params 系统检查参数
- * @return 系统检查id
- */
- public static GisSurveySystemCheckId generateId(GisSurveyCheckParams params) {
- //获取枚举
- GisSurveyCheckTypeEnum checkTypeEnum = Arrays.stream(GisSurveyCheckTypeEnum.values())
- .filter(enumeration -> Objects.equals(params.getCheckType(), enumeration.getCode()))
- .findFirst().orElse(null);
- if (checkTypeEnum == null) return null;
- //项目维度
- if (checkTypeEnum.equals(GisSurveyCheckTypeEnum.PROJECT)) {
- return new GisSurveySystemCheckId(GisSurveyCheckTypeEnum.PROJECT, params.getProjId());
- }
- //任务维度
- else if (checkTypeEnum.equals(GisSurveyCheckTypeEnum.JOB)) {
- return new GisSurveySystemCheckId(GisSurveyCheckTypeEnum.PROJECT, params.getJobId());
- }
- return null;
- }
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
- GisSurveySystemCheckId that = (GisSurveySystemCheckId) o;
- return Objects.equals(checkType, that.checkType) && Objects.equals(code, that.code);
- }
- @Override
- public int hashCode() {
- return Objects.hash(checkType, code);
- }
- }
|