From 2ec7567336189c4b0cfbacfb361c4ac2a66885c8 Mon Sep 17 00:00:00 2001 From: devezhao Date: Thu, 28 Mar 2019 18:18:00 +0800 Subject: [PATCH] Go Home --- .../server/business/charts/ChartData.java | 2 +- .../server/business/dataio/DataImporter.java | 2 +- .../metadata/entityhub/Field2Schema.java | 2 + .../server/portals/ClassificationManager.java | 29 +++++++++++ .../rebuild/server/portals/FormsManager.java | 4 +- .../portals/datalist/JSONQueryParser.java | 2 +- .../portals/value/FieldValueWrapper.java | 2 +- .../service/base/QuickCodeReindexTask.java | 2 +- .../server/service/query/AdvFilterParser.java | 4 +- .../entityhub/ClassificationControll.java | 17 +++++- .../admin/entityhub/FormDesignControll.java | 2 +- .../admin/entityhub/MetaEntityControll.java | 6 +-- .../admin/entityhub/MetaFieldControll.java | 4 +- src/main/resources/metadata-conf.xml | 4 +- src/main/webapp/_include/NavLeftAdmin.jsp | 2 +- .../admin/entityhub/classification/editor.jsp | 52 +++++++++++++++++++ .../classification/list.jsp} | 16 ++++-- .../{entity => entityhub}/entity-advanced.jsp | 0 .../{entity => entityhub}/entity-edit.jsp | 0 .../{entity => entityhub}/entity-grid.jsp | 0 .../{entity => entityhub}/entity-new.jsp | 0 .../{entity => entityhub}/field-edit.jsp | 0 .../admin/{entity => entityhub}/field-new.jsp | 0 .../admin/{entity => entityhub}/fields.jsp | 0 .../{entity => entityhub}/form-design.jsp | 0 .../{entity => entityhub}/picklist-config.jsp | 0 .../{entity => entityhub}/view-addons.jsp | 0 src/main/webapp/assets/css/rb-page.css | 5 ++ .../js/entity/classification-editor.jsx | 26 ++++++++++ .../assets/js/entity/classification.jsx | 38 ++++++++++++++ src/main/webapp/assets/js/sortable.js | 8 +-- .../java/com/rebuild/server/TestSupport.java | 2 + 32 files changed, 204 insertions(+), 27 deletions(-) create mode 100644 src/main/java/com/rebuild/server/portals/ClassificationManager.java create mode 100644 src/main/webapp/admin/entityhub/classification/editor.jsp rename src/main/webapp/admin/{classification/index.jsp => entityhub/classification/list.jsp} (59%) rename src/main/webapp/admin/{entity => entityhub}/entity-advanced.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/entity-edit.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/entity-grid.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/entity-new.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/field-edit.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/field-new.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/fields.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/form-design.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/picklist-config.jsp (100%) rename src/main/webapp/admin/{entity => entityhub}/view-addons.jsp (100%) create mode 100644 src/main/webapp/assets/js/entity/classification-editor.jsx create mode 100644 src/main/webapp/assets/js/entity/classification.jsx diff --git a/src/main/java/com/rebuild/server/business/charts/ChartData.java b/src/main/java/com/rebuild/server/business/charts/ChartData.java index 63b5197bb..5992b4ccf 100644 --- a/src/main/java/com/rebuild/server/business/charts/ChartData.java +++ b/src/main/java/com/rebuild/server/business/charts/ChartData.java @@ -241,7 +241,7 @@ public abstract class ChartData { DisplayType axisType = axisField.getDisplayType(); String label = null; - if (axisType == DisplayType.PICKLIST) { + if (axisType == DisplayType.PICKLIST) { // TODO CLASSIFICATION label = PickListManager.getLabel((ID) value); } else if (axisType == DisplayType.REFERENCE) { label = FieldValueWrapper.getLabel((ID) value); diff --git a/src/main/java/com/rebuild/server/business/dataio/DataImporter.java b/src/main/java/com/rebuild/server/business/dataio/DataImporter.java index a8c0a9a18..a5d358cef 100644 --- a/src/main/java/com/rebuild/server/business/dataio/DataImporter.java +++ b/src/main/java/com/rebuild/server/business/dataio/DataImporter.java @@ -203,7 +203,7 @@ public class DataImporter extends BulkTask { return cell.asDouble(); } else if (dt == DisplayType.DATE || dt == DisplayType.DATETIME) { return checkoutDateValue(field, cell); - } else if (dt == DisplayType.PICKLIST) { + } else if (dt == DisplayType.PICKLIST) { // TODO CLASSIFICATION return checkoutPickListValue(field, cell); } else if (dt == DisplayType.REFERENCE) { return checkoutReferenceValue(field, cell); diff --git a/src/main/java/com/rebuild/server/metadata/entityhub/Field2Schema.java b/src/main/java/com/rebuild/server/metadata/entityhub/Field2Schema.java index 3b4d3a589..acb3842cd 100644 --- a/src/main/java/com/rebuild/server/metadata/entityhub/Field2Schema.java +++ b/src/main/java/com/rebuild/server/metadata/entityhub/Field2Schema.java @@ -211,6 +211,8 @@ public class Field2Schema { if (displayType == DisplayType.PICKLIST) { refEntity = "PickList"; + } else if (displayType == DisplayType.CLASSIFICATION) { + refEntity = "ClassificationData"; } if (StringUtils.isNotBlank(refEntity)) { record.setString("refEntity", refEntity); diff --git a/src/main/java/com/rebuild/server/portals/ClassificationManager.java b/src/main/java/com/rebuild/server/portals/ClassificationManager.java new file mode 100644 index 000000000..04f856356 --- /dev/null +++ b/src/main/java/com/rebuild/server/portals/ClassificationManager.java @@ -0,0 +1,29 @@ +/* +rebuild - Building your system freely. +Copyright (C) 2019 devezhao + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +package com.rebuild.server.portals; + +/** + * TODO + * + * @author devezhao zhaofang123@gmail.com + * @since 2019/03/28 + */ +public class ClassificationManager implements PortalsManager { + +} diff --git a/src/main/java/com/rebuild/server/portals/FormsManager.java b/src/main/java/com/rebuild/server/portals/FormsManager.java index d23ef1eb8..bb1dca910 100644 --- a/src/main/java/com/rebuild/server/portals/FormsManager.java +++ b/src/main/java/com/rebuild/server/portals/FormsManager.java @@ -204,7 +204,7 @@ public class FormsManager extends BaseLayoutManager { int dateLength = -1; - if (dt == DisplayType.PICKLIST) { + if (dt == DisplayType.PICKLIST) { // TODO CLASSIFICATION JSONArray options = PickListManager.getPickList(fieldMeta); el.put("options", options); } @@ -342,7 +342,7 @@ public class FormsManager extends BaseLayoutManager { if (data.hasValue(fieldName)) { Object value = data.getObjectValue(fieldName); DisplayType dt = field.getDisplayType(); - if (dt == DisplayType.PICKLIST) { + if (dt == DisplayType.PICKLIST) { // TODO CLASSIFICATION ID pickValue = (ID) value; return onView ? pickValue.getLabel() : pickValue.toLiteral(); } diff --git a/src/main/java/com/rebuild/server/portals/datalist/JSONQueryParser.java b/src/main/java/com/rebuild/server/portals/datalist/JSONQueryParser.java index d002f387d..9136ca8fb 100644 --- a/src/main/java/com/rebuild/server/portals/datalist/JSONQueryParser.java +++ b/src/main/java/com/rebuild/server/portals/datalist/JSONQueryParser.java @@ -138,7 +138,7 @@ public class JSONQueryParser { StringBuffer sqlBase = new StringBuffer("select "); for (Field field : fieldList) { - if (EasyMeta.getDisplayType(field) == DisplayType.PICKLIST) { + if (EasyMeta.getDisplayType(field) == DisplayType.PICKLIST) { // TODO CLASSIFICATION sqlBase.append('&'); } sqlBase.append(field.getName()).append(','); diff --git a/src/main/java/com/rebuild/server/portals/value/FieldValueWrapper.java b/src/main/java/com/rebuild/server/portals/value/FieldValueWrapper.java index 5157e3aea..9106b70c3 100644 --- a/src/main/java/com/rebuild/server/portals/value/FieldValueWrapper.java +++ b/src/main/java/com/rebuild/server/portals/value/FieldValueWrapper.java @@ -77,7 +77,7 @@ public class FieldValueWrapper { return wrapDecimal(value, field); } else if (dt == DisplayType.REFERENCE) { return wrapReference(value, field); - } else if (dt == DisplayType.PICKLIST || dt == DisplayType.IMAGE || dt == DisplayType.FILE || dt == DisplayType.LOCATION) { + } else if (dt == DisplayType.PICKLIST || dt == DisplayType.IMAGE || dt == DisplayType.FILE || dt == DisplayType.LOCATION) { // TODO CLASSIFICATION // 无需处理 return value; } else if (dt == DisplayType.BOOL) { diff --git a/src/main/java/com/rebuild/server/service/base/QuickCodeReindexTask.java b/src/main/java/com/rebuild/server/service/base/QuickCodeReindexTask.java index 3c0cbee7e..e72a2f238 100644 --- a/src/main/java/com/rebuild/server/service/base/QuickCodeReindexTask.java +++ b/src/main/java/com/rebuild/server/service/base/QuickCodeReindexTask.java @@ -130,7 +130,7 @@ public class QuickCodeReindexTask extends BulkTask { String nameVal = null; if (dt == DisplayType.TEXT) { nameVal = record.getString(nameField.getName()); - } else if (dt == DisplayType.PICKLIST) { + } else if (dt == DisplayType.PICKLIST) { // TODO CLASSIFICATION ID plid = record.getID(nameField.getName()); nameVal = PickListManager.getLabel(plid); } diff --git a/src/main/java/com/rebuild/server/service/query/AdvFilterParser.java b/src/main/java/com/rebuild/server/service/query/AdvFilterParser.java index 71bbcae43..d373c8fdc 100644 --- a/src/main/java/com/rebuild/server/service/query/AdvFilterParser.java +++ b/src/main/java/com/rebuild/server/service/query/AdvFilterParser.java @@ -183,7 +183,7 @@ public class AdvFilterParser { } DisplayType fieldType = EasyMeta.getDisplayType(fieldMeta); - if (fieldType == DisplayType.PICKLIST || hasAndFlag) { + if (fieldType == DisplayType.PICKLIST || hasAndFlag) { // TODO CLASSIFICATION field = "&" + field; } @@ -379,7 +379,7 @@ public class AdvFilterParser { Field nameField = rootEntity.getNameField(); DisplayType dt = EasyMeta.getDisplayType(nameField); - if (dt == DisplayType.PICKLIST || dt == DisplayType.REFERENCE) { + if (dt == DisplayType.PICKLIST || dt == DisplayType.REFERENCE) { // TODO CLASSIFICATION fields.add("&" + nameField.getName()); } else if (dt == DisplayType.TEXT || dt == DisplayType.EMAIL || dt == DisplayType.URL || dt == DisplayType.PHONE || dt == DisplayType.SERIES) { fields.add(nameField.getName()); diff --git a/src/main/java/com/rebuild/web/admin/entityhub/ClassificationControll.java b/src/main/java/com/rebuild/web/admin/entityhub/ClassificationControll.java index dd0061d0d..61f0f7517 100644 --- a/src/main/java/com/rebuild/web/admin/entityhub/ClassificationControll.java +++ b/src/main/java/com/rebuild/web/admin/entityhub/ClassificationControll.java @@ -23,9 +23,11 @@ import java.io.IOException; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; +import com.rebuild.server.Application; import com.rebuild.web.BasePageControll; /** @@ -35,11 +37,22 @@ import com.rebuild.web.BasePageControll; * @since 2019/03/27 */ @Controller -@RequestMapping("/admin/") +@RequestMapping("/admin/entityhub/") public class ClassificationControll extends BasePageControll { @RequestMapping("classifications") public ModelAndView pageIndex(HttpServletRequest request) throws IOException { - return createModelAndView("/admin/classification/index.jsp"); + Object[][] array = Application.createQuery( + "select dataId,name,description from Classification order by name") + .array(); + request.setAttribute("classifications", array); + + return createModelAndView("/admin/entityhub/classification/list.jsp"); + } + + @RequestMapping("classification/{id}") + public ModelAndView pageData(@PathVariable String id, + HttpServletRequest request) throws IOException { + return createModelAndView("/admin/entityhub/classification/editor.jsp"); } } diff --git a/src/main/java/com/rebuild/web/admin/entityhub/FormDesignControll.java b/src/main/java/com/rebuild/web/admin/entityhub/FormDesignControll.java index 591385ac1..ebb3819d7 100644 --- a/src/main/java/com/rebuild/web/admin/entityhub/FormDesignControll.java +++ b/src/main/java/com/rebuild/web/admin/entityhub/FormDesignControll.java @@ -50,7 +50,7 @@ public class FormDesignControll extends BasePageControll implements PortalsConfi @RequestMapping("{entity}/form-design") public ModelAndView pageFormDesign(@PathVariable String entity, HttpServletRequest request) throws IOException { - ModelAndView mv = createModelAndView("/admin/entity/form-design.jsp"); + ModelAndView mv = createModelAndView("/admin/entityhub/form-design.jsp"); MetaEntityControll.setEntityBase(mv, entity); JSON cfg = FormsManager.getFormLayout(entity, getRequestUser(request)); if (cfg != null) { diff --git a/src/main/java/com/rebuild/web/admin/entityhub/MetaEntityControll.java b/src/main/java/com/rebuild/web/admin/entityhub/MetaEntityControll.java index 5f3a7bd76..1d99573e2 100644 --- a/src/main/java/com/rebuild/web/admin/entityhub/MetaEntityControll.java +++ b/src/main/java/com/rebuild/web/admin/entityhub/MetaEntityControll.java @@ -62,14 +62,14 @@ public class MetaEntityControll extends BasePageControll { @RequestMapping("entities") public ModelAndView pageList(HttpServletRequest request) throws IOException { - ModelAndView mv = createModelAndView("/admin/entity/entity-grid.jsp"); + ModelAndView mv = createModelAndView("/admin/entityhub/entity-grid.jsp"); mv.getModel().put("isSuperAdmin", UserHelper.isSuperAdmin(getRequestUser(request))); return mv; } @RequestMapping("entity/{entity}/base") public ModelAndView pageEntityBase(@PathVariable String entity, HttpServletRequest request) throws IOException { - ModelAndView mv = createModelAndView("/admin/entity/entity-edit.jsp"); + ModelAndView mv = createModelAndView("/admin/entityhub/entity-edit.jsp"); setEntityBase(mv, entity); Entity entityMeta = MetadataHelper.getEntity(entity); @@ -87,7 +87,7 @@ public class MetaEntityControll extends BasePageControll { } @RequestMapping("entity/{entity}/advanced") public ModelAndView pageEntityDanger(@PathVariable String entity, HttpServletRequest request) throws IOException { - ModelAndView mv = createModelAndView("/admin/entity/entity-advanced.jsp"); + ModelAndView mv = createModelAndView("/admin/entityhub/entity-advanced.jsp"); mv.getModel().put("isSuperAdmin", UserHelper.isSuperAdmin(getRequestUser(request))); setEntityBase(mv, entity); return mv; diff --git a/src/main/java/com/rebuild/web/admin/entityhub/MetaFieldControll.java b/src/main/java/com/rebuild/web/admin/entityhub/MetaFieldControll.java index 3be68daaf..99cf70040 100644 --- a/src/main/java/com/rebuild/web/admin/entityhub/MetaFieldControll.java +++ b/src/main/java/com/rebuild/web/admin/entityhub/MetaFieldControll.java @@ -63,7 +63,7 @@ public class MetaFieldControll extends BasePageControll { @RequestMapping("{entity}/fields") public ModelAndView pageEntityFields(@PathVariable String entity, HttpServletRequest request) throws IOException { - ModelAndView mv = createModelAndView("/admin/entity/fields.jsp"); + ModelAndView mv = createModelAndView("/admin/entityhub/fields.jsp"); MetaEntityControll.setEntityBase(mv, entity); String nameField = MetadataHelper.getNameField(entity).getName(); mv.getModel().put("nameField", nameField); @@ -101,7 +101,7 @@ public class MetaFieldControll extends BasePageControll { @RequestMapping("{entity}/field/{field}") public ModelAndView pageEntityField(@PathVariable String entity, @PathVariable String field, HttpServletRequest request) throws IOException { - ModelAndView mv = createModelAndView("/admin/entity/field-edit.jsp"); + ModelAndView mv = createModelAndView("/admin/entityhub/field-edit.jsp"); EasyMeta easyMeta = MetaEntityControll.setEntityBase(mv, entity); Field fieldMeta = ((Entity) easyMeta.getBaseMeta()).getField(field); diff --git a/src/main/resources/metadata-conf.xml b/src/main/resources/metadata-conf.xml index 164ea11c4..73e132e0b 100644 --- a/src/main/resources/metadata-conf.xml +++ b/src/main/resources/metadata-conf.xml @@ -145,6 +145,7 @@ + @@ -152,8 +153,9 @@ + - + diff --git a/src/main/webapp/_include/NavLeftAdmin.jsp b/src/main/webapp/_include/NavLeftAdmin.jsp index 67c2ed993..87f85e98a 100644 --- a/src/main/webapp/_include/NavLeftAdmin.jsp +++ b/src/main/webapp/_include/NavLeftAdmin.jsp @@ -27,7 +27,7 @@
  • 业务/实体
  • 实体管理
  • -
  • 分类数据
  • +
  • 分类数据
  • 数据审计
  • 数据导入
  • 用户
  • diff --git a/src/main/webapp/admin/entityhub/classification/editor.jsp b/src/main/webapp/admin/entityhub/classification/editor.jsp new file mode 100644 index 000000000..0741619fc --- /dev/null +++ b/src/main/webapp/admin/entityhub/classification/editor.jsp @@ -0,0 +1,52 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> + + + +<%@ include file="/_include/Head.jsp"%> +分类数据编辑 + + + + +<%@ include file="/_include/Foot.jsp"%> + + + + diff --git a/src/main/webapp/admin/classification/index.jsp b/src/main/webapp/admin/entityhub/classification/list.jsp similarity index 59% rename from src/main/webapp/admin/classification/index.jsp rename to src/main/webapp/admin/entityhub/classification/list.jsp index 9c53cd8b8..65df875ed 100644 --- a/src/main/webapp/admin/classification/index.jsp +++ b/src/main/webapp/admin/entityhub/classification/list.jsp @@ -1,9 +1,10 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ include file="/_include/Head.jsp"%> -审计日志 +分类数据 @@ -16,13 +17,20 @@
    +
    +
    分类数据
    +
    -

    暂未支持

    + +
    <%@ include file="/_include/Foot.jsp"%> - + diff --git a/src/main/webapp/admin/entity/entity-advanced.jsp b/src/main/webapp/admin/entityhub/entity-advanced.jsp similarity index 100% rename from src/main/webapp/admin/entity/entity-advanced.jsp rename to src/main/webapp/admin/entityhub/entity-advanced.jsp diff --git a/src/main/webapp/admin/entity/entity-edit.jsp b/src/main/webapp/admin/entityhub/entity-edit.jsp similarity index 100% rename from src/main/webapp/admin/entity/entity-edit.jsp rename to src/main/webapp/admin/entityhub/entity-edit.jsp diff --git a/src/main/webapp/admin/entity/entity-grid.jsp b/src/main/webapp/admin/entityhub/entity-grid.jsp similarity index 100% rename from src/main/webapp/admin/entity/entity-grid.jsp rename to src/main/webapp/admin/entityhub/entity-grid.jsp diff --git a/src/main/webapp/admin/entity/entity-new.jsp b/src/main/webapp/admin/entityhub/entity-new.jsp similarity index 100% rename from src/main/webapp/admin/entity/entity-new.jsp rename to src/main/webapp/admin/entityhub/entity-new.jsp diff --git a/src/main/webapp/admin/entity/field-edit.jsp b/src/main/webapp/admin/entityhub/field-edit.jsp similarity index 100% rename from src/main/webapp/admin/entity/field-edit.jsp rename to src/main/webapp/admin/entityhub/field-edit.jsp diff --git a/src/main/webapp/admin/entity/field-new.jsp b/src/main/webapp/admin/entityhub/field-new.jsp similarity index 100% rename from src/main/webapp/admin/entity/field-new.jsp rename to src/main/webapp/admin/entityhub/field-new.jsp diff --git a/src/main/webapp/admin/entity/fields.jsp b/src/main/webapp/admin/entityhub/fields.jsp similarity index 100% rename from src/main/webapp/admin/entity/fields.jsp rename to src/main/webapp/admin/entityhub/fields.jsp diff --git a/src/main/webapp/admin/entity/form-design.jsp b/src/main/webapp/admin/entityhub/form-design.jsp similarity index 100% rename from src/main/webapp/admin/entity/form-design.jsp rename to src/main/webapp/admin/entityhub/form-design.jsp diff --git a/src/main/webapp/admin/entity/picklist-config.jsp b/src/main/webapp/admin/entityhub/picklist-config.jsp similarity index 100% rename from src/main/webapp/admin/entity/picklist-config.jsp rename to src/main/webapp/admin/entityhub/picklist-config.jsp diff --git a/src/main/webapp/admin/entity/view-addons.jsp b/src/main/webapp/admin/entityhub/view-addons.jsp similarity index 100% rename from src/main/webapp/admin/entity/view-addons.jsp rename to src/main/webapp/admin/entityhub/view-addons.jsp diff --git a/src/main/webapp/assets/css/rb-page.css b/src/main/webapp/assets/css/rb-page.css index 86aedf449..079e25c09 100644 --- a/src/main/webapp/assets/css/rb-page.css +++ b/src/main/webapp/assets/css/rb-page.css @@ -1438,4 +1438,9 @@ form.dropzone .note { form.simple { max-width: 888px; +} + +.rb-left-sidebar .sidebar-elements>li>a .icon.x21, +.rb-left-sidebar .sidebar-elements .sub-menu li>a .icon.x21 { + font-size: 21px; } \ No newline at end of file diff --git a/src/main/webapp/assets/js/entity/classification-editor.jsx b/src/main/webapp/assets/js/entity/classification-editor.jsx new file mode 100644 index 000000000..f759b252c --- /dev/null +++ b/src/main/webapp/assets/js/entity/classification-editor.jsx @@ -0,0 +1,26 @@ +$(document).ready(function () { + let boxTmpl = $('.level-box>.col-md-3') + init_levelbox(boxTmpl) +}) + +var init_levelbox = function (box) { + box.find('.dd-list').sortable({ + placeholder: 'dd-placeholder', + handle: '.dd-handle', + axis: 'y', + }).disableSelection() + + box.find('.J_confirm').click(() => { + let name = box.find('.J_name').val() + if (name) { + render_unset([$random(), name], box.find('.dd-list')) + box.find('.J_name').val('') + } + return false + }) +} + +// Over sortable.js +render_unset_after = function (item, data) { + item.off('click') +} \ No newline at end of file diff --git a/src/main/webapp/assets/js/entity/classification.jsx b/src/main/webapp/assets/js/entity/classification.jsx new file mode 100644 index 000000000..9ebcefae4 --- /dev/null +++ b/src/main/webapp/assets/js/entity/classification.jsx @@ -0,0 +1,38 @@ +$(document).ready(function () { + $('.J_add').click(() => { + renderRbcomp() + }) +}) + +class DlgAddOne extends RbFormHandler { + constructor(props) { + super(props) + } + render() { + return ( +
    +
    + +
    + +
    +
    +
    +
    + +
    +
    +
    +
    ) + } + save() { + if (!this.state.name) { rb.highbar('请输入名称'); return } + let _data = { name: this.state.name } + _data.metadata = { entity: 'Classification' } + $.post(rb.baseUrl + '/app/entity/record-save', JSON.stringify(_data), (res) => { + if (res.error_code === 0) { + location.href = 'classification/' + res.data.id + } else rb.hberror(res.error_msg) + }) + } +} \ No newline at end of file diff --git a/src/main/webapp/assets/js/sortable.js b/src/main/webapp/assets/js/sortable.js index 0aaf59a81..ccfc37a9e 100644 --- a/src/main/webapp/assets/js/sortable.js +++ b/src/main/webapp/assets/js/sortable.js @@ -7,8 +7,8 @@ $(document).ready(function () { }).disableSelection() }) -const render_unset = function (data) { - let item = $('
  • ' + data[1] + '
  • ').appendTo('.unset-list') +const render_unset = function (data, target) { + let item = $('
  • ' + data[1] + '
  • ').appendTo(target || '.unset-list') item.click(function () { render_item(data) item.remove() @@ -20,8 +20,8 @@ let render_unset_after = function (item, data) { // 更多实现 } -const render_item = function (data) { - let item = $('
  • ' + data[1] + '
  • ').appendTo('.J_config') +const render_item = function (data, target) { + let item = $('
  • ' + data[1] + '
  • ').appendTo(target || '.J_config') let del = $('').appendTo(item) del.find('a').click(function () { data[1] = item.find('.dd3-content').text() diff --git a/src/test/java/com/rebuild/server/TestSupport.java b/src/test/java/com/rebuild/server/TestSupport.java index 6886392c3..8ac34b08a 100644 --- a/src/test/java/com/rebuild/server/TestSupport.java +++ b/src/test/java/com/rebuild/server/TestSupport.java @@ -89,5 +89,7 @@ public class TestSupport { new Field2Schema(UserService.ADMIN_USER).create(testEntity, "FILE", DisplayType.FILE, null, null); new Field2Schema(UserService.ADMIN_USER).create(testEntity, "PICKLIST", DisplayType.PICKLIST, null, null); new Field2Schema(UserService.ADMIN_USER).create(testEntity, "REFERENCE", DisplayType.REFERENCE, null, entityName); + new Field2Schema(UserService.ADMIN_USER).create(testEntity, "AVATAR", DisplayType.AVATAR, null, entityName); + new Field2Schema(UserService.ADMIN_USER).create(testEntity, "CLASSIFICATION", DisplayType.CLASSIFICATION, null, entityName); } }