diff --git a/fast-develop-web/fast-develop-editor/src/fast-develop/src/config/application-gs-dev.yml b/fast-develop-web/fast-develop-editor/src/fast-develop/src/config/application-gs-dev.yml index 440c4ecd9d29bef38007e711aeb961280f7d59b9..1618c8e7d5a6ba89fe1546af563085af0ab1d6d0 100644 --- a/fast-develop-web/fast-develop-editor/src/fast-develop/src/config/application-gs-dev.yml +++ b/fast-develop-web/fast-develop-editor/src/fast-develop/src/config/application-gs-dev.yml @@ -32,4 +32,9 @@ moudle: saveApi: ${platformUrl}/api/v1/engine/design/map/${nodeid} fieldClassApi: ${platformUrl}/api/v1/engine/domainmodel/getFieldClass?fieldType=${type} + brms: +# initApi: ${platformUrl}/api/v1/engine/brms/models/json/${nodeid} + saveApi: ${platformUrl}/api/v1/engine/brms/models/json/${nodeid} + modelsApi: ${platformUrl}/api/v1/engine/brms/models/list?projectId=${projectId}&modelType=${type.value} + diff --git a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/fastDevelop.js b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/fastDevelop.js index d588e68c84ad03821a09513a50363172cb55830d..294ce28e519e90653fdca7e51c2bccfecbbecb5e 100644 --- a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/fastDevelop.js +++ b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/fastDevelop.js @@ -40,6 +40,12 @@ layui.config({ domain_design_business: "domain/domain_design_business", domain_design_default: "domain/domain_design_default", domain_design_vo: "domain/domain_design_vo", + brms_design: "brms/brms_design", + fact_design: "brms/fact_design", + object_design:"brms/object_design", + + open_domain: "editor/open_domain", + resource_properties: "editor/resource_properties", diff --git a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/brms/brms_design.js b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/brms/brms_design.js new file mode 100644 index 0000000000000000000000000000000000000000..a3355f15af60647f42c5189200cd47a0fa262b38 --- /dev/null +++ b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/brms/brms_design.js @@ -0,0 +1,142 @@ +layui.define(['element', 'api', 'fast_config', 'fact_design', 'amis', 'utils'], function(exports) { + "use strict"; + + /** + * Button component + * */ + var MOD_NAME = 'brms_design', + $ = layui.jquery, + api = layui.api, + fast_config = layui.fast_config, + fact_design = layui.fact_design, + utils = layui.utils, + amis = layui.amis + ; + + var brms_design = function(opt) { + this.option = opt; + }; + + function saveDesign(option){ + var grid_domain_vo_fields = option.grid_fact_design.option.grid.getData(); + var formObject = {}; + + formObject["fields"] = grid_domain_vo_fields; + + var optionApi = { + enableRootPath:true, + type: "POST", + url: fast_config.moudle.brms.saveApi.format({nodeid:option.treeNode.id}), + data: JSON.stringify(formObject), + contentType : 'application/json;charset=UTF-8', + success: function(data){ + layer.msg('操作成功'); + if(option.callback && option.callback.reloadtree && typeof option.callback.reloadtree === 'function'){ + option.callback.reloadtree(data); + } + } + }; + api.exec(optionApi) + } + + // function getModelData(option){ + // var modelJson=null; + // var optionApi = { + // enableRootPath:true, + // type: "GET", + // url: fast_config.moudle.brms.initApi.format({nodeid:option.treeNode.id}), + // success: function(data){ + // if(typeof data !== 'object' ){ + // modelJson = JSON.parse(data); + // } + // } + // }; + // + // api.exec(optionApi); + // + // return modelJson; + // } + + function appendElem(option){ + + //debugger + var id = option.treeNode.tId; + var domainContainerId = 'domainContainer_' + id; + var saveId = "saveDesignVo_" + id; + + var domainContainer = ` +
+
+ +
+
+
+
+
+
+
+ +
+ `; + + $(option.elem).append(domainContainer); + + $('#' + saveId).click(function(){ + saveDesign(option); + }); + } + + function getDomainVoFields(option){ + var id = option.treeNode.tId; + return 'domainVoFields_' + id; + } + + /** + * Button start loading + * */ + brms_design.prototype.render = function(opt) { + + var option = { + elem: opt.elem, + data: opt.data, + treeNode: opt.treeNode, + viewMode: opt.viewMode, + pearBody : opt.pearBody, + amisData: opt.amisData, + callback: opt.callback, + grid_fact_design: null + } + + render(option); + + return new brms_design(option); + } + + function render(option){ + + appendElem(option); + // var id = option.treeNode.tId; + var modelJson = JSON.parse(option.treeNode.data.design); + // debugger + + var initVoFields; + if(modelJson !=null){ + initVoFields = modelJson.fields; + } + + // grid; + option.grid_fact_design = fact_design.render({ + elem: '#' + getDomainVoFields(option), + initData: initVoFields, + treeData: option.treeNode.data + }); + } + + exports(MOD_NAME, new brms_design()); + +}); diff --git a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/brms/fact_design.js b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/brms/fact_design.js new file mode 100644 index 0000000000000000000000000000000000000000..49d1aaf276a85ab6384956042f52b0c994bdf007 --- /dev/null +++ b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/brms/fact_design.js @@ -0,0 +1,229 @@ +layui.define(['element', 'api', 'fast_config','object_design','utils','form'], function(exports) { + "use strict"; + + /** + * Button component + * */ + var MOD_NAME = 'fact_design', + $ = layui.jquery, + api = layui.api, + fast_config = layui.fast_config, + object_design = layui.object_design, + form = layui.form, + utils = layui.utils, + rowIndex + ; + + var fact_design = function(opt) { + this.option = opt; + }; + + var initFieldDate = function(option) { + option.fields = {}; + api.exec({ + enableRootPath:true, + type: "GET", + url: fast_config.moudle.brms.modelsApi.format(option.treeData), + success: function(data){ + let arr=[]; + for(let i=0;i复制 | 下移`; + } + if(ui.rowIndx==option.initData.length-1){ + return `复制 | 上移`; + } + if(ui.rowIndx>0 && ui.rowIndx复制 | 上移 | 下移`; + // return `\\ + // `; + } + }, + postRender: function (ui) { + + let copyData = {...{},...ui.rowData}, + copyIndx=ui.rowIndx+1, + grid = this, + $cell = grid.getCell(ui); + copyData.fieldComment = copyData.fieldComment+"copy"; + copyData.fieldName = copyData.fieldName+"copy"; + + if(copyData.columnName !== undefined && copyData.columnName !== "" ){ + copyData.columnName = copyData.columnName+"copy"; + } + copyData.pq_rowselect=undefined;copyData.state=false; + + //copy button + $cell.find(".copy_btn") + // .button({ icons: { primary: 'ui-icon-copy'} }) + .bind("click", function (evt) { + grid.addRow({ newRow: copyData, rowIndx: copyIndx }); + }); + + //up button + $cell.find(".up_btn") + // .button({ icons: { primary: 'ui-icon-arrowthick-1-n'} }) + .bind("click", function (evt) { + // debugger + let upIndx = ui.rowIndx-1,cruIndx = ui.rowIndx, + upData = grid.getRowData({rowIndx: upIndx}); + grid.deleteRow({rowIndx: upIndx}); + grid.addRow({newRow:upData,rowIndx:cruIndx}) + + }); + //down button + $cell.find(".down_btn") + // .button({ icons: { primary: 'ui-icon-arrowthick-1-s'} }) + .bind("click", function (evt) { + let downIndx = ui.rowIndx+1,cruIndx = ui.rowIndx, + downData = grid.getRowData({rowIndx: cruIndx}); + grid.deleteRow({rowIndx: cruIndx}); + grid.addRow({newRow:downData,rowIndx:downIndx}) + }); + } + } + + if(option.gridSetting.colModel.length>0 && option.gridSetting.colModel[option.gridSetting.colModel.length-1].title!=='操作'){ + option.gridSetting.colModel[option.gridSetting.colModel.length] = operationCol; + colums = option.gridSetting.colModel; + } + for(let i=0;i"+metaName+"", + history: function (evt, ui) { + var $tb = this.toolbar(); + if (ui.canUndo != null) { + $("button.changes", $tb).button("option", { disabled: !ui.canUndo }); + } + if (ui.canRedo != null) { + $("button:contains('Redo')", $tb).button("option", "disabled", !ui.canRedo); + } + $("button:contains('Undo')", $tb).button("option", { label: 'Undo (' + ui.num_undo + ')' }); + $("button:contains('Redo')", $tb).button("option", { label: 'Redo (' + ui.num_redo + ')' }); + }, + colModel: colums, + postRenderInterval: -1, //call postRender synchronously. + // pageModel: { type: "remote", rPP: 20 }, + create: function(){ + this.widget().pqTooltip(); + }, + dataModel:{data: option.initData} + }; + + var gridModel = function (){ + var self = this + self.editRow = function( rd ){ + self.reset(); + }; + + self.reset = function(){ + copy( master, self.company); + self.focus(true); + }; + } + + grid = pq.grid( option.elem, obj ); + + option.grid = grid; + + return new object_design(option); + } + + + exports(MOD_NAME, new object_design()); +}); diff --git a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/domain/domain_design_business.js b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/domain/domain_design_business.js index 4ebe6d9620c06458512c12995e2c7a7eff87aeee..13ea2dbbd63599e04b62473a3d8d6ff89a754a34 100644 --- a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/domain/domain_design_business.js +++ b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/domain/domain_design_business.js @@ -212,8 +212,8 @@ layui.define(['element', 'api', 'fast_config','utils','form'], function(exports) var types = [ {"id":"basic","value":"basic","name": "基础类型"}, - {"id":"dd","value":"basic", "name": "数据字典"}, - {"id":"mdm","value":"basic", "name": "基础数据"} + {"id":"dd","value":"dd", "name": "数据字典"}, + {"id":"mdm","value":"mdm", "name": "基础数据"} ]; var data=[]; diff --git a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/editor/resource_tree.js b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/editor/resource_tree.js index b1cbe1cc27b04a2072195f2cd877f96624599e23..5e5b5317d4d69df40c644c738a910e3e372d4af4 100644 --- a/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/editor/resource_tree.js +++ b/fast-develop-web/fast-develop-editor/src/fast-develop/src/js/module/editor/resource_tree.js @@ -1,5 +1,5 @@ layui.define(['element', 'api', 'amis', 'schema', 'listener', 'api', 'jqgrid', 'open_domain', -'domain_design', 'domain_design_vo','edropdown', 'form', 'resource_content', 'ztree', 'resource_properties','fast_config', 'utils', 'schema_render', 'resource_tabs' +'domain_design', 'domain_design_vo','brms_design','edropdown', 'form', 'resource_content', 'ztree', 'resource_properties','fast_config', 'utils', 'schema_render', 'resource_tabs' ], function(exports) { "use strict"; @@ -273,6 +273,25 @@ layui.define(['element', 'api', 'amis', 'schema', 'listener', 'api', 'jqgrid', ' }) } + function designBrms(data, target) { + var treeNode = contextmenuData; + var id = target.id; + + brms_design.render({ + elem: utils.getTabElem(id), + data:data, + treeNode: treeNode, + viewMode: viewMode, + pearBody : pearBody, + amisData: utils.getGlobalEnv(treeNode.data), + callback: { + reloadtree: function reloadCallback(data){ + selectedNode(data); + } + } + }) + } + function getFilePath(value){ var path; @@ -392,6 +411,10 @@ layui.define(['element', 'api', 'amis', 'schema', 'listener', 'api', 'jqgrid', ' designVo(data, target) } + function designBrmsListener(data,target){ + designBrms(data,target) + } + function createFolderListener(data) { createFolder() } @@ -415,6 +438,7 @@ layui.define(['element', 'api', 'amis', 'schema', 'listener', 'api', 'jqgrid', ' open_domain = layui.open_domain, domain_design = layui.domain_design, domain_design_vo = layui.domain_design_vo, + brms_design = layui.brms_design, edropdown = layui.edropdown, form = layui.form, laytpl = layui.laytpl, @@ -456,6 +480,7 @@ layui.define(['element', 'api', 'amis', 'schema', 'listener', 'api', 'jqgrid', ' designDomainListener:designDomainListener, designVoListener:designVoListener, openDomainListener:openDomainListener, + designBrmsListener:designBrmsListener, } ;