package com.engine.organization.util; import com.api.browser.bean.BrowserBean; import com.api.browser.bean.SearchConditionItem; import com.api.browser.bean.SearchConditionOption; import com.api.browser.util.ConditionFactory; import com.api.browser.util.ConditionType; import weaver.hrm.User; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * @Author dxfeng * @description: * @Date 2022/5/9 * @Version V1.0 **/ public class OrganizationFormItemUtil { /** * 下拉框 * * @param user * @param selectOptions * @param colSpan * @param fieldcol * @param labelcol * @param isQuickSearch * @param label * @return */ public static SearchConditionItem selectItem(User user, List selectOptions, int colSpan, int fieldcol, int labelcol, boolean isQuickSearch, String label, String name) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem select = conditionFactory.createCondition(ConditionType.SELECT, 502327, name); select.setOptions(selectOptions); select.setColSpan(colSpan); select.setFieldcol(fieldcol); select.setLabelcol(labelcol); select.setIsQuickSearch(isQuickSearch); select.setLabel(label); return select; } /** * checkbox * * @param user * @param colSpan * @param fieldcol * @param viewAttr * @param isQuickSearch * @param label * @param name * @return */ public static SearchConditionItem checkboxItem(User user, int colSpan, int fieldcol, int viewAttr, boolean isQuickSearch, String label, String name) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem checkbox = conditionFactory.createCondition(ConditionType.CHECKBOX, 502327, name); checkbox.setColSpan(colSpan); checkbox.setFieldcol(fieldcol); checkbox.setViewAttr(viewAttr); checkbox.setIsQuickSearch(isQuickSearch); checkbox.setLabel(label); return checkbox; } /** * 输入框数字 * * @param user * @param colSpan * @param fieldcol * @param viewAttr * @param label * @return */ public static SearchConditionItem inputNumberItem(User user, int colSpan, int fieldcol, int viewAttr, String label, String name) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem inputnumber = conditionFactory.createCondition(ConditionType.INPUTNUMBER, 502327, name); inputnumber.setColSpan(colSpan); inputnumber.setFieldcol(fieldcol); inputnumber.setViewAttr(viewAttr); inputnumber.setLabel(label); return inputnumber; } /** * 输入框文本 * * @param user * @param colSpan * @param fieldcol * @param viewAttr * @param length * @param label * @return */ public static SearchConditionItem inputItem(User user, int colSpan, int fieldcol, int viewAttr, int length, String label, String name) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem input = conditionFactory.createCondition(ConditionType.INPUT, 25034, name); input.setColSpan(colSpan); input.setFieldcol(fieldcol); input.setViewAttr(viewAttr); input.setLength(length); input.setLabel(label); return input; } /** * 浏览按钮 * * @param user * @param colSpan * @param fieldcol * @param viewAttr * @param isQuickSearch * @param label * @param type * @param name * @param fieldDbType 数据展现集成标识 * @return */ public static SearchConditionItem browserItem(User user, int colSpan, int fieldcol, int viewAttr, boolean isQuickSearch, String label, String type, String name, String fieldDbType) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem browser = conditionFactory.createCondition(ConditionType.BROWSER, 502327, name, type); browser.setColSpan(colSpan); browser.setFieldcol(fieldcol); browser.setViewAttr(viewAttr); browser.setIsQuickSearch(isQuickSearch); browser.setLabel(label); if ("161".equals(type) || "162".equals(type)) { fieldDbType = "browser." + fieldDbType; BrowserBean browserBean = new BrowserBean(); // completeParams Map completeMap = new HashMap<>(); completeMap.put("f_weaver_belongto_usertype", 0); completeMap.put("type", type); completeMap.put("fielddbtype", fieldDbType); browserBean.setCompleteParams(completeMap); // conditionDataParams Map conditionDataMap = new HashMap<>(); conditionDataMap.put("f_weaver_belongto_usertype", 0); conditionDataMap.put("type", fieldDbType); conditionDataMap.put("fielddbtype", fieldDbType); browserBean.setConditionDataParams(conditionDataMap); // dataParams Map dataMap = new HashMap<>(); dataMap.put("f_weaver_belongto_usertype", 0); dataMap.put("type", fieldDbType); browserBean.setDataParams(dataMap); // destDataParams Map destDataMap = new HashMap<>(); destDataMap.put("f_weaver_belongto_usertype", 0); destDataMap.put("type", fieldDbType); browserBean.setDestDataParams(destDataMap); browserBean.setLinkUrl(""); browserBean.setMobileLinkUrl(""); browserBean.setPageSize(10); browserBean.setScrollx(true); browserBean.setTitle(label); browserBean.setType(type); browser.setBrowserConditionParam(browserBean); if ("162".equals(type)) { HashMap otherMap = new HashMap<>(); otherMap.put("isMultCheckbox", "true"); otherMap.put("icon", "icon-coms-integration"); browser.setOtherParams(otherMap); } } return browser; } /** * 日期区间 * * @param user * @param colSpan * @param fieldcol * @param viewAttr * @param label * @return */ public static SearchConditionItem rangeDateItem(User user, int colSpan, int fieldcol, int viewAttr , String label, String name1, String name2) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem rangeDate = conditionFactory.createCondition(ConditionType.TIMEPICKER, 502327, new String[]{name1, name2}); rangeDate.setColSpan(colSpan); rangeDate.setFieldcol(fieldcol); rangeDate.setViewAttr(viewAttr); rangeDate.setLabel(label); return rangeDate; } /** * 多行文本框 * * @param user * @param colSpan * @param fieldcol * @param isQuickSearch * @param viewAttr * @param length * @param label * @param name * @return */ public static SearchConditionItem textareaItem(User user, int colSpan, int fieldcol, boolean isQuickSearch, int viewAttr, int length, String label, String name) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem textarea = conditionFactory.createCondition(ConditionType.TEXTAREA, 502227, name); textarea.setColSpan(colSpan); textarea.setFieldcol(fieldcol); textarea.setIsQuickSearch(isQuickSearch); textarea.setViewAttr(viewAttr); textarea.setLength(length); textarea.setLabel(label); return textarea; } /** * 日期 * * @param user * @param colSpan * @param fieldcol * @param isQuickSearch * @param viewAttr * @param label * @param name * @return */ public static SearchConditionItem datePickerItem(User user, int colSpan, int fieldcol, boolean isQuickSearch, int viewAttr, String label, String name) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem datePicker = conditionFactory.createCondition(ConditionType.DATEPICKER, 502227, name); datePicker.setColSpan(colSpan); datePicker.setFieldcol(fieldcol); datePicker.setIsQuickSearch(isQuickSearch); datePicker.setViewAttr(viewAttr); datePicker.setLabel(label); return datePicker; } public static SearchConditionItem dateGroupItem(User user, int colSpan, int fieldcol, boolean isQuickSearch, int viewAttr, String label, String name) { ConditionFactory conditionFactory = new ConditionFactory(user); SearchConditionItem dateGroup = conditionFactory.createCondition(ConditionType.DATEGROUP, 502227, name); dateGroup.setColSpan(colSpan); dateGroup.setFieldcol(fieldcol); dateGroup.setIsQuickSearch(isQuickSearch); dateGroup.setViewAttr(viewAttr); dateGroup.setLabel(label); List datas = new ArrayList<>(); datas.add(new DateGroupData("全部","0")); datas.add(new DateGroupData("今天","1")); datas.add(new DateGroupData("本周","2")); datas.add(new DateGroupData("本月","3")); datas.add(new DateGroupData("本季","4")); datas.add(new DateGroupData("本年","5")); datas.add(new DateGroupData("上个月","7")); datas.add(new DateGroupData("上一年","8")); datas.add(new DateGroupData("指定日期范围","6")); List selectOperateDate = new ArrayList<>(); selectOperateDate.add(new SearchConditionOption("-1", "全部")); selectOperateDate.add(new SearchConditionOption("1", "今天")); selectOperateDate.add(new SearchConditionOption("2", "本周")); selectOperateDate.add(new SearchConditionOption("3", "本月")); selectOperateDate.add(new SearchConditionOption("4", "本季")); selectOperateDate.add(new SearchConditionOption("5", "本年")); selectOperateDate.add(new SearchConditionOption("7", "上个月")); selectOperateDate.add(new SearchConditionOption("9", "上一季")); selectOperateDate.add(new SearchConditionOption("8", "上一年")); selectOperateDate.add(new SearchConditionOption("6", "指定日期范围")); dateGroup.setDatas(selectOperateDate); dateGroup.setValue(new ArrayList<>()); dateGroup.setDateGroup(true); return dateGroup; } static class DateGroupData{ private String name; private String value; public DateGroupData(String name, String value) { this.name = name; this.value = value; } public String getName() { return name; } public String getValue() { return value; } } }