Commit b023c729 authored by wangqiang's avatar wangqiang

标准入库功能开发

parent 4d064ad2
package com.yonde.dcs.plan.common.vo;
import javax.validation.constraints.NotBlank;
import java.util.Date;
import java.time.LocalDateTime;
import java.util.ArrayList;
import cn.hutool.core.convert.Convert;
import com.yonde.dex.basedata.entity.annotation.XmlElementProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.annotation.JsonUnwrapped;
import lombok.ToString;
import com.fasterxml.jackson.annotation.JsonIgnore;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import java.math.BigInteger;
import org.springframework.data.annotation.Transient;
import lombok.experimental.Delegate;
import javax.xml.bind.annotation.*;
import javax.xml.bind.annotation.XmlAttribute;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotNull;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.yonde.dex.basedata.entity.xmladapters.LocalDateTimeXmlAdapter;
import lombok.Data;
import com.yonde.dex.basedata.entity.annotation.*;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import com.yonde.dex.basedata.entity.vo.IdOnlyVO;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.lang.TypeReference;
import com.yonde.dex.basedata.entity.data.VersionRelationType;
import com.yonde.dex.basedata.entity.vo.DxIdVOEmbeddable;
import com.yonde.dex.secretcode.plugin.common.entity.DxSecretVOHolder;
import com.yonde.dex.context.plugin.common.entity.DxContextVOEmbeddable;
import com.yonde.dex.dfs.objfilelink.plugin.common.entity.DxObjFileLinkVOHolder;
import com.yonde.dex.context.plugin.common.entity.DxContextVOHolder;
import com.yonde.dex.container.folder.plugin.common.entity.DxObjFolderVOEmbeddable;
import com.yonde.dex.version.plugin.common.entity.DxIterationVOEmbeddable;
import com.yonde.dex.basedata.entity.users.DxUserVO;
import com.yonde.dex.lcycle.plugin.common.entity.DxLifecycleManageBaseVOHolder;
import com.yonde.dex.lcycle.plugin.common.entity.DxLifecycleManageBaseVOEmbeddable;
import com.yonde.dex.basedata.entity.vo.IdVO;
import com.yonde.dex.secretcode.plugin.common.entity.DxSecretVOEmbeddable;
import com.yonde.dex.container.folder.plugin.common.entity.DxObjFolderVOHolder;
import com.yonde.dex.dfs.objfilelink.plugin.common.entity.DxObjFileLinkVOEmbeddable;
import com.yonde.dex.version.plugin.common.entity.DxIterationVOHolder;
/**
* @description: ExtStandard-VO
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
@JsonTypeInfo( use = JsonTypeInfo.Id.CLASS, property = "dxClassname", visible = true, defaultImpl = ExtStandardVO.class)
@EqualsAndHashCode(callSuper = true)
@Data
@ToString(callSuper = true)
public class ExtStandardVO extends IdOnlyVO implements IdVO ,DxContextVOHolder ,DxLifecycleManageBaseVOHolder ,DxObjFileLinkVOHolder ,DxObjFolderVOHolder ,DxIterationVOHolder<ExtStandardVO> ,DxSecretVOHolder{
public static final String DX_CONTEXT_EMBEDDABLE_PROP_NAME = "dxContextEmbeddable";
public static final String DX_OBJ_FILE_LINK_EMBEDDABLE_PROP_NAME = "dxObjFileLinkEmbeddable";
public static final String DX_OBJ_FOLDER_EMBEDDABLE_PROP_NAME = "dxObjFolderEmbeddable";
public static final String DX_LIFECYCLE_MANAGE_BASE_EMBEDDABLE_PROP_NAME = "dxLifecycleManageBaseEmbeddable";
public static final String DX_ID_EMBEDDABLE_PROP_NAME = "dxIdEmbeddable";
public static final String DX_SECRET_EMBEDDABLE_PROP_NAME = "dxSecretEmbeddable";
public static final String DX_ITERATION_EMBEDDABLE_PROP_NAME = "dxIterationEmbeddable";
public static final String IMPLEMENTATION_DATE_PROP_NAME = "implementationDate";
public static final String OBSOLETE_DATE_PROP_NAME = "obsoleteDate";
public static final String RELEASE_DATE_PROP_NAME = "releaseDate";
public static final String RELEASE_ORGANIZATION_PROP_NAME = "releaseOrganization";
public static final String STANDARD_CLASSIFY_PROP_NAME = "standardClassify";
public static final String STANDARD_CONTENT_PROP_NAME = "standardContent";
public static final String STANDARD_NAME_PROP_NAME = "standardName";
public static final String STANDARD_NUMBER_PROP_NAME = "standardNumber";
public static final String STANDARD_TYPE_PROP_NAME = "standardType";
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxContextVOEmbeddable dxContextEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxObjFileLinkVOEmbeddable dxObjFileLinkEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxObjFolderVOEmbeddable dxObjFolderEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLifecycleManageBaseVOEmbeddable dxLifecycleManageBaseEmbeddable;
/**
* dao扩展对象
*/
@DexEmbedded()
@JsonIgnore
private DxIdVOEmbeddable dxIdEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxSecretVOEmbeddable dxSecretEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxIterationVOEmbeddable<ExtStandardVO> dxIterationEmbeddable;
/**
* 实施日期
*/
private LocalDateTime implementationDate;
/**
* 作废日期
*/
private LocalDateTime obsoleteDate;
/**
* 发布日期
*/
private LocalDateTime releaseDate;
/**
* 发布单位
*/
private Integer releaseOrganization;
/**
* 标准分类
*/
private Integer standardClassify;
/**
* 标准内容
*/
private String standardContent;
/**
* 标准名称
*/
private String standardName;
/**
* 标准号
*/
private String standardNumber;
/**
* 标准类型
*/
private String standardType;
}
package com.yonde.dcs.plan.core.controller;
import org.springframework.stereotype.Controller;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import java.util.List;
import com.yonde.dcs.plan.common.vo.ExtStandardVO;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Autowired;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.*;
import com.yonde.dcs.plan.core.service.ExtStandardService;
import com.yonde.dex.basedata.entity.api.ApiResult;
import com.yonde.dcs.plan.core.controller.shadow.ExtStandardControllerShadow;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
/**
* @description: ExtStandard-Controller
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
@Api(tags = "ExtStandard管理服务")
@RequestMapping("/ExtStandard")
@ResponseBody()
@Controller(ExtStandardController.BEAN_NAME)
public class ExtStandardController<V extends ExtStandardVO, S extends ExtStandardService<V>> extends ExtStandardControllerShadow<V, S> {
}
package com.yonde.dcs.plan.core.controller.shadow;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import java.util.List;
import com.yonde.dcs.plan.common.vo.ExtStandardVO;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Autowired;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.*;
import com.yonde.dcs.plan.core.service.ExtStandardService;
import com.yonde.dcs.plan.core.service.impl.ExtStandardServiceImpl;
import com.yonde.dex.basedata.entity.api.ApiResult;
import javax.annotation.Resource;
import com.yonde.dex.basedata.auth.annos.PermissionObject;
import com.yonde.dex.version.plugin.core.controller.AbstractVersionBaseController;
import com.yonde.dex.basedata.auth.annos.SubPermission;
import com.yonde.entity.annotation.SandBoxOpen;
import com.yonde.dex.container.folder.plugin.core.controller.DxObjFolderPluginController;
import org.springframework.web.bind.annotation.*;
import com.yonde.dex.dfs.objfilelink.plugin.core.controller.DxObjFileLinkController;
import com.yonde.dex.version.plugin.common.entity.DxIterationVOHolder;
import com.yonde.dex.lcycle.plugin.core.controller.AbstractLifecycleBaseController;
import com.yonde.dex.baseweb.AbstractBaseController;
import com.yonde.dex.basedata.entity.api.ApiResult;
/**
* @description: ExtStandard-Controller
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
public class ExtStandardControllerShadow<V extends ExtStandardVO, S extends ExtStandardService<V>> implements AbstractBaseController<V, S> ,AbstractLifecycleBaseController<V, S> ,AbstractVersionBaseController<V, S> ,DxObjFileLinkController<V, S> ,DxObjFolderPluginController<V, S>{
public static final String BEAN_NAME = "extStandardController";
/**
* 注入
*/
@Resource(name = ExtStandardServiceImpl.BEAN_NAME)
private ExtStandardService<V> extStandardService;
/**
* getService
*/
@Override
public S getService() {
return (S)this.extStandardService;
}
}
package com.yonde.dcs.plan.core.repository;
import com.yonde.dcs.plan.entity.po.ExtStandard;
import com.yonde.dcs.plan.core.repository.shadow.ExtStandardRepositoryShadow;
/**
* @description: ExtStandard-repository
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
public interface ExtStandardRepository<P extends ExtStandard> extends ExtStandardRepositoryShadow<P> {
}
package com.yonde.dcs.plan.core.repository.shadow;
import com.yonde.dcs.plan.entity.po.ExtStandard;
import org.springframework.data.repository.NoRepositoryBean;
import com.yonde.dex.context.plugin.core.repository.DxContextPluginRepository;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.container.folder.plugin.core.repository.DxObjFolderPluginRepository;
import com.yonde.dex.secretcode.plugin.core.repositroy.DxSecretCodePluginRepository;
import com.yonde.dex.version.plugin.core.repository.DxIterationRepository;
import com.yonde.dex.lcycle.plugin.core.repository.DxLifecycleManageBaseRepository;
import com.yonde.dex.dfs.objfilelink.plugin.core.repository.DxObjFileLinkPluginRepository;
/**
* @description: ExtStandard-repository
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
@NoRepositoryBean
public interface ExtStandardRepositoryShadow<P extends ExtStandard> extends DxContextPluginRepository<P> ,DxObjFileLinkPluginRepository<P> ,DxObjFolderPluginRepository<P> ,DxLifecycleManageBaseRepository<P> ,BaseRepository<P> ,DxSecretCodePluginRepository<P> ,DxIterationRepository<P> {
String BEAN_NAME = "extStandardRepository";
}
package com.yonde.dcs.plan.core.service;
import com.yonde.dcs.plan.common.vo.ExtStandardVO;
import com.yonde.dcs.plan.core.service.shadow.ExtStandardServiceShadow;
/**
* @description: ExtStandard-service
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
public interface ExtStandardService<V extends ExtStandardVO> extends ExtStandardServiceShadow<V> {
}
package com.yonde.dcs.plan.core.service.impl;
import org.springframework.stereotype.Service;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import com.yonde.dcs.plan.common.vo.ExtStandardVO;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Autowired;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import com.yonde.dcs.plan.core.service.ExtStandardService;
import com.yonde.dcs.plan.core.repository.ExtStandardRepository;
import com.yonde.dcs.plan.entity.po.ExtStandard;
import javax.annotation.Resource;
/**
* @description: ExtStandard-ServiceImpl
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
@Slf4j
@Service(ExtStandardServiceImpl.BEAN_NAME)
public class ExtStandardServiceImpl<V extends ExtStandardVO> implements ExtStandardService<V>{
public static final String BEAN_NAME = "extStandardServiceImpl";
@Autowired
ExtStandardRepository<ExtStandard> extStandardRepository;
}
package com.yonde.dcs.plan.core.service.shadow;
import com.yonde.dcs.plan.common.vo.ExtStandardVO;
import com.yonde.dcs.plan.feign.ExtStandardServiceFeign;
import com.yonde.dex.dao.service.BaseIdEntityService;
import com.yonde.dex.secretcode.plugin.core.service.SecretCodePluginService;
import com.yonde.dex.version.plugin.core.service.IterationService;
import com.yonde.dex.context.plugin.core.service.ContextPluginService;
import com.yonde.dex.lcycle.plugin.core.service.LifecycleBaseService;
import com.yonde.dex.dfs.objfilelink.plugin.core.service.ObjFileLinkPluginService;
import com.yonde.dex.container.folder.plugin.core.service.DxObjFolderPluginService;
/**
* @description: ExtStandard-service
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
public interface ExtStandardServiceShadow<V extends ExtStandardVO> extends ExtStandardServiceFeign<V>, ContextPluginService<V> ,ObjFileLinkPluginService<V> ,DxObjFolderPluginService<V> ,LifecycleBaseService<V> ,BaseIdEntityService<V> ,SecretCodePluginService<V> ,IterationService<V> {
}
package com.yonde.dcs.plan.entity.po;
import org.springframework.data.annotation.CreatedBy;
import javax.persistence.UniqueConstraint;
import java.util.Date;
import java.time.LocalDateTime;
import lombok.EqualsAndHashCode;
import org.springframework.data.annotation.LastModifiedDate;
import com.yonde.dex.dao.entity.base.IdEntity;
import org.springframework.data.annotation.LastModifiedBy;
import javax.persistence.Column;
import org.springframework.data.annotation.CreatedDate;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import lombok.Data;
import com.yonde.dex.basedata.entity.annotation.*;
import java.math.BigInteger;
import javax.persistence.*;
import java.math.BigDecimal;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
import com.yonde.dex.lcycle.plugin.entities.DxLifecycleManageBaseEmbeddable;
import com.yonde.dex.container.folder.plugin.entities.DxObjFolderEmbeddable;
import com.yonde.dex.context.plugin.entities.DxContextHolder;
import com.yonde.dex.dfs.objfilelink.plugin.entities.DxObjFileLinkHolder;
import com.yonde.dex.dfs.objfilelink.plugin.entities.DxObjFileLinkEmbeddable;
import com.yonde.dex.context.plugin.entities.DxContextEmbeddable;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.version.plugin.entities.DxIterationHolder;
import com.yonde.dex.container.folder.plugin.entities.DxObjFolderHolder;
import com.yonde.dex.dao.entity.base.IdEntity;
import javax.persistence.Column;
import com.yonde.dex.secretcode.plugin.entities.DxSecretHolder;
import com.yonde.dex.lcycle.plugin.entities.DxLifecycleManageBaseHolder;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.secretcode.plugin.entities.DxSecretEmbeddable;
import com.yonde.dex.version.plugin.entities.DxIterationEmbeddable;
/**
* @description: ExtStandard-PO实体
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
@Entity
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
@Data
@Table(name = "EXT_STANDARD")
public class ExtStandard extends IdOnlyEntity implements DxContextHolder ,DxObjFileLinkHolder ,DxObjFolderHolder ,DxLifecycleManageBaseHolder ,IdEntity ,DxSecretHolder ,DxIterationHolder{
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxContextEmbeddable dxContextEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxObjFileLinkEmbeddable dxObjFileLinkEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxObjFolderEmbeddable dxObjFolderEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLifecycleManageBaseEmbeddable dxLifecycleManageBaseEmbeddable;
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxSecretEmbeddable dxSecretEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxIterationEmbeddable dxIterationEmbeddable;
/**
* 实施日期
*/
private LocalDateTime implementationDate;
/**
* 作废日期
*/
private LocalDateTime obsoleteDate;
/**
* 发布日期
*/
private LocalDateTime releaseDate;
/**
* 发布单位
*/
private Integer releaseOrganization;
/**
* 标准分类
*/
private Integer standardClassify;
/**
* 标准内容
*/
private String standardContent;
/**
* 标准名称
*/
private String standardName;
/**
* 标准号
*/
private String standardNumber;
/**
* 标准类型
*/
private String standardType;
}
package com.yonde.dcs.plan.feign;
import com.yonde.dcs.plan.common.vo.ExtStandardVO;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import com.yonde.dcs.plan.feign.shadow.ExtStandardServiceFeignShadow;
/**
* @description: ExtStandard-Feign
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
@Api(tags = "ExtStandard-FEIGN")
@FeignClient(value = "${dcs.feign.INET-PLAN}", path = "/ExtStandard")
public interface ExtStandardServiceFeign<V extends ExtStandardVO> extends ExtStandardServiceFeignShadow<V> {
}
package com.yonde.dcs.plan.feign.shadow;
import com.yonde.dcs.plan.common.vo.ExtStandardVO;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import com.yonde.dex.lcycle.plugin.feign.BaseLifecycleManageFeign;
import com.yonde.dex.dao.service.remotes.BaseFeign;
import com.yonde.dex.secretcode.plugin.feign.SecretCodeFeign;
import com.yonde.dex.container.folder.plugin.feign.DxObjFolderPluginFeign;
import com.yonde.dex.version.plugin.feign.BaseVersionFeign;
import org.springframework.web.bind.annotation.*;
import com.yonde.dex.version.plugin.common.entity.DxIterationVOHolder;
import com.yonde.dex.context.plugin.feign.ContextPluginFeign;
/**
* @description: ExtStandard-Feign
* @author: dexadmin
* @version: V
* @date: 2024-10-25 11:13:36
**/
public interface ExtStandardServiceFeignShadow<V extends ExtStandardVO> extends ContextPluginFeign<V> ,DxObjFolderPluginFeign<V> ,BaseLifecycleManageFeign<V> ,BaseFeign<V> ,SecretCodeFeign<V> ,BaseVersionFeign<V> {
String BEAN_NAME = "extStandardServiceFeign";
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment