package com.kingdee.eas.custom.projectbonus.web.vo; import com.kingdee.bos.BOSException; import com.kingdee.bos.Context; import com.kingdee.shr.base.syssetting.context.SHRContext; import com.kingdee.shr.base.syssetting.exception.SHRWebException; import com.kingdee.shr.base.syssetting.util.SHRBasicItemUtil; import com.kingdee.shr.base.syssetting.util.SHREnumUtils; import com.kingdee.shr.base.syssetting.util.SelectItem; import com.kingdee.util.StringUtils; import com.kingdee.util.enums.*; import com.kingdee.util.enums.Enum; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * @Description TODO * @Date 2024/4/28 10:38 * @Created by Heyuan */ public class EditOptions { // F7Json对象 private F7Json f7Json; //枚举对象 private SelectJson selectJson; //日期 private DatepickerJson datepickerjson; private Map enumSource; private String urlSource; // ValidateJson对象 private ValidateJson validateJson; public SelectJson getSelectJson() { if (selectJson == null) { this.selectJson = new SelectJson(); } return selectJson; } public void setSelectJson(SelectJson selectJson) { this.selectJson = selectJson; } public String getUrlSource() { return urlSource; } public void setUrlSource(String urlSource) throws BOSException, SHRWebException { this.urlSource = "/shr/selectEnum.do?method=getSelectEnumData&enumSource=" + urlSource; setEnumSource(urlSource); } public F7Json getF7Json() { if (f7Json == null) { this.f7Json = new F7Json(); } return f7Json; } public void setF7Json(F7Json f7Json) { this.f7Json = f7Json; } public ValidateJson getValidateJson() { if (validateJson == null) { this.validateJson = new ValidateJson(); } return validateJson; } public void setValidateJson(ValidateJson validateJson) { this.validateJson = validateJson; } public DatepickerJson getDatepickerjson() { if (datepickerjson == null) { this.datepickerjson = new DatepickerJson(); } return datepickerjson; } public void setDatepickerjson(DatepickerJson datepickerjson) { this.datepickerjson = datepickerjson; } public void setEnumSource(String entityName) throws SHRWebException, BOSException { if (enumSource == null) { enumSource = new HashMap(); } enumSource.put("result", "success"); if (StringUtils.isEmpty(entityName)) { throw new BOSException("entityName为空!"); } List list = new ArrayList(); Context ctx = SHRContext.getInstance().getContext(); SHRBasicItemUtil.getUsePolicySelectItem(entityName, list); if (null == list || list.size() <= 0) { if (!StringUtils.isEmpty(entityName)) { List enumList2 = EnumUtils.getEnumList(entityName); for (int i = 0; i < enumList2.size(); ++i) { Enum objEnum = (Enum) enumList2.get(i); Object value = null; if (objEnum instanceof StringEnum) { value = ((StringEnum) objEnum).getValue(); } else if (objEnum instanceof DynamicEnum) { value = ((DynamicEnum) objEnum).getValue(); } else if (objEnum instanceof LongEnum) { value = ((LongEnum) objEnum).getValue(); } else if (objEnum instanceof IntEnum) { value = ((IntEnum) objEnum).getValue(); } else if (objEnum instanceof FloatEnum) { value = ((FloatEnum) objEnum).getValue(); } else if (objEnum instanceof DoubleEnum) { value = ((DoubleEnum) objEnum).getValue(); } else { value = objEnum.getName(); } String alias = objEnum.getAlias(ctx.getLocale()); if (StringUtils.isEmpty(alias)) { alias = objEnum.getAlias(); } SelectItem item = new SelectItem(); item.setValue(value); item.setAlias(alias); item.setMultiAlias(SHREnumUtils.getMultiAlias(objEnum)); list.add(item); } } } enumSource.put("data", list); } }