package com.vci.web.lifeCycle; import com.vci.constant.FrameWorkDefaultValueConstant; import com.vci.constant.VciFileLifeConstant; import com.vci.constant.FrameWorkDefaultValueConstant; import com.vci.starter.web.annotation.Transient; import com.vci.starter.web.annotation.VciLifeCycle; import com.vci.starter.web.annotation.VciLifeCycleTrans; import com.vci.starter.web.enumpck.BaseEnum; /** * 文件生命周期 * @author weidy * @date 2020/1/2 */ @VciLifeCycle(name= VciFileLifeConstant.FILE_LC,text = "文件生命周期",startStatus = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING, translations = { @VciLifeCycleTrans(source = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING, target = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_AUDITING,name="提交审批"), @VciLifeCycleTrans(source = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_AUDITING, target =FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_RELEASED,name="审批通过"), @VciLifeCycleTrans(source = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_AUDITING, target =FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING,name="审批不通过"), @VciLifeCycleTrans(source =FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING, target = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_RELEASED,name="直接生效"), @VciLifeCycleTrans(source = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING, target = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_OBSOLETED,name="直接报废"), @VciLifeCycleTrans(source = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_RELEASED, target =FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_OBSOLETED,name="发布后报废"), @VciLifeCycleTrans(source =FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_AUDITING, target = FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_OBSOLETED,name="审批中报废") }) @Transient public enum FileObjectLCStatus implements BaseEnum { /** * 编辑中 */ EDITING(FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING,"编辑中"), /** * 审批中 */ AUDITING(FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_AUDITING,"审批中"), /** * 已作废 */ OBSOLETED(FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_OBSOLETED,"已作废"), /** * 已发布 */ RELEASED(FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_RELEASED,"已发布"); /** * 枚举值 */ private String value; /** * 枚举显示值 */ private String text; /** * 获取枚举值 * @return 枚举值 */ @Override public String getValue() { return value; } /** * 设置枚举值 * @param value 枚举值 */ public void setValue(String value) { this.value = value; } /** * 获取显示文本 * @return 显示文本 */ @Override public String getText() { return text; } /** * 设置显示文本 * @param text 显示文本 */ public void setText(String text) { this.text = text; } /** * 枚举内部构造方法 * @param value 枚举值 * @param text 显示文本 */ private FileObjectLCStatus(String value, String text){ this.value = value; this.text = text; } /** * 根据枚举的值获取显示文本 * @param value 枚举值 * @return 显示文本 */ public static String getTextByValue(String value){ for(FileObjectLCStatus eu: FileObjectLCStatus.values()){ if(eu.value.equalsIgnoreCase(value)){ return eu.text; } } return ""; } /** * 根据枚举显示文本获取枚举值 * @param text 显示文本 * @return 枚举值 */ public static String getValueByText(String text){ for(FileObjectLCStatus eu: FileObjectLCStatus.values()){ if(eu.text.equalsIgnoreCase(text)){ return eu.value; } } return ""; } }