image_1.pngCopyright©2024 Yonyou Group All Rights Reserved.Without the written permission of Yonyou Group, no part of this user manual may be copied, reproduced, translated, or reduced for any purpose. The content of this user manual may change without notice, please stay informed.Please note: The content of this user manual does not represent a commitment made by Yonyou Network.Yonsuite_MDD FrameworkFunction DescriptionMDD (Model Driven Development) is a commonly used development model in enterprise development, primarily utilizing highly abstract domain business models as components to achieve code transformation or support various model-driven engine configurations, reducing development costs and addressing complex requirement changes.The MDD development framework is a set of development frameworks implemented by UFIDA Cloud based on the concept of enterprise digital middle platform. Starting from the core problem domain of enterprise cloud services, it summarizes and refines best practices, forming unified standards and specifications. It is dedicated to supporting the rapid incubation of middle platform capabilities, creating a link between various capabilities of the middle platform, and ultimately achieving the reconstruction of enterprise digital business and rapid development of innovation based on the middle platform.The main purpose of the framework is to achieve the separation of the model and the technical framework, allowing both the business and technical parts of the system to evolve independently without affecting each other. This enables developers to focus more on the business aspect and allows junior developers to quickly develop complex business functions, while the framework encapsulates and hides technical details, reducing technical difficulty, thus saving labor costs, shortening project cycles, and improving software security and quality. At the same time, through the accumulation of various business models, it can also contribute to the technical accumulation for the realization of business in enterprises, aiding in business analysis.Key CompetenciesMdd Scaffolding ConstructionPull the scaffold code;Modify the application.properties file;Configure the data source such as Redis and other settings in the YMS console.Local project startup.Mdd Scaffolding CapabilitySupport the basic functions of adding, deleting, modifying, and querying that are defaulted in page modeling.Support service capabilities for interfacing standards, such as metadata, UI templates, permissions, formulas, workflows, business flows, printing, importing, exporting, coding rules, task scheduling, event center, business logs, etc.Main Support Service DescriptionField NameDescriptionMetadataPlatform data modeling capability, defines data structureUI TemplatePlatform page modeling capability, defines page displayData PermissionsFilters data based on permissionsFunction PermissionsFilters buttons based on permissionsFormulaFormula calculation capabilityWorkflowApproval flow workflow capabilityBusiness FlowTransfer capability between multiple businessesImportExcel batch import capabilityExportExcel batch export capabilityMain Operation InstructionsAdd framework dependenciesBoth the scaffold template is available for direct download; you can also add the parent yonbip-2nd-parent in the POM and depend on iuap-ap-mdd-starter to have the standard capabilities of the MDD framework.Expand development capabilitiesNew rules can be added to the rule chain of the standard action that you want to extend for business expansion.Yonsuite_MDF FrameworkFunction DescriptionMDF (Model Driven Framework: Front-end Application Architecture) is a metadata-based model-driven development framework. It supports the automatic generation and rendering of pages through standardized configuration, inheriting the supporting services and capabilities of the bpass business middle platform.Web development and mobile development share a common development framework, a set of extension scripts, and support for extension development across different dimensions (such as JS extension scripts, new Metaui extension components, and the extension and configuration of component styles and interactions). It features a layered architecture, decoupled packaging, and flexible architecture.MDF Core ModulePackage NamePackage Descriptionmdf-cubeCube Core SDK -- Includes ViewModelmdf-baseuiPublic interaction layer based on the tinper-next component librarymdf-baseui-mobilePublic interaction layer based on the antd-mobile component librarymdf-metaui-mobileMetaUI component package (Mobile interaction style)mdf-metaui-webMetaUI component package (Web interaction style)mdf-middlewares-authBFF service: Permission verification KOA middlewaremdf-middlewares-log4jsBFF service: Log KOA middlewaremdf-plugin-metaBFF service: UI metadata, front-end JS code generationTerminology ExplanationNounDescriptionMetadataData that describes other dataViewModelA programming model where all programmable operation objects are viewmodels. Everything from a small component to a large UI template is a viewModel object.UI TemplateA patterned page generated based on metadata configuration, where a template is abstractly described by entity metadata and UI metadata.Node LayerA BFF middleware based on NodeJS that can achieve capabilities such as microservice interface aggregation, forwarding, cross-domain, resource hosting, and automatic generation of template-level viewmodels (executable JS code).BFFBackend For Frontend: A user experience adaptation layer. (Domain models and page data represent two different thinking modes, and BFF can effectively decouple them, allowing each to be more specialized and efficient.)Main Operation InstructionsMDF Extension Development MechanismThe extension script is expanded in src/business;The extension components are expanded in src/client/web|mobile/components.Extend reducers in src/client/mobile/redux/reducers.jsx;The extended routes are in src/client/mobile/routes/index.jsx;The extended styles are expanded in src/client/mobile/styles;Expand in Actionsrc/client/common/biz/actions.js;In src/client/web|mobile.jsx, multilingual resources and variables can also be injected.Yonsuite_YNF FrameworkFunction DescriptionWith the rapid development of the YonBIP product, there is an increasing demand for interaction effects related to product experience, layout flexibility, and extensible development.In terms of product intelligence and improving R&D efficiency, it is necessary to provide important front-end technical support to achieve an AI-friendly and intelligent product experience.The demand for the expansion of original product capabilities and custom business development from developers in fields such as domains, industries, projects, and ISVs is strong. The front-end programming model needs to be more developer-friendly, making it easier for developers to learn and understand, and to possess more extensible and programmable capabilities.The original intention of the YNF unified front-end framework capability design is to start from the requirements, begin with the underlying design, and gradually build a complete front-end development system based on protocols and specifications.YNF CharacteristicsResponsive programming style: Introduce MobX reactive data solution to reduce business complexity and standardize development.Layered Design: The framework only implements the necessary core functions, with a reasonable layered design and implementation, and provides default extensions.Lowering the development threshold: The framework significantly reduces the number of framework method properties, allowing developers to avoid mastering a large number of framework APIs.Empower program autonomy: Domain business development is less constrained by the framework, increasing domain development's control over the code and enabling innovation;Flexible and Versatile Interface: Achieve flexibility in page layout, upgrading the rendering mode from template-based generation to component-based generation.Terminology ExplanationYNF stands for Yonyou New-generation Front-end-framework, which is Yonyou's new generation unified front-end framework.MobX is a simple and scalable state management library that makes state management easy and extensible through the use of transparent functional reactive programming.TinperNext is a new generation web front-end component library based on React technology.ArcUI is a mobile basic component library implemented based on React technology.TNS stands for Tinper Next Server, which supports unified deployment of the YonBIP front end, unified management of third-party packages for the front end, and other common capabilities.YonDesign is the abbreviation for Yonyou Design System, specifically referring to the unified design language system of YonBIP.YPD stands for Yonyou Platform Development, referring to the next-generation YonBIP platform development framework.Main Operation InstructionsYNF Extension Development MechanismCreate an extension script project;Action Expansion Plan;Reaction Extension Plan;Store Expansion Plan;Public Extension Plan for Pages;Style Extension Plan.Help Manual_Yonsuite_YPD FrameworkFunction DescriptionThe YPD framework is a commonly used development model in enterprise development, primarily utilizing highly abstract domain business models as components to achieve code transformation implementation or support various model-driven engine configurations, reducing development costs and addressing complex requirement changes.The YPD development framework is a set of development frameworks implemented by Yonyou Cloud based on the concept of enterprise digitalization middle platform. Starting from the core problem domain of enterprise cloud services, it summarizes and refines best practices, forming unified standards and specifications. It is dedicated to supporting the rapid incubation of middle platform capabilities, creating a link between various capabilities of the middle platform, and ultimately achieving the reconstruction of enterprise digital business and rapid development of innovation based on the middle platform.The main purpose of the framework is to achieve the separation of the model and the technical framework, allowing both the business and technical parts of the system to evolve independently without affecting each other. This enables developers to focus more on the business aspect and allows junior developers to quickly develop complex business functions, while the framework encapsulates and hides technical details, reducing technical difficulty, thereby saving labor costs, shortening project cycles, and improving software security and quality. At the same time, through the accumulation of various business models, it can also contribute to the technical accumulation for the realization of business in enterprises, aiding in business analysis.Key CompetenciesYPD Scaffolding SetupPull the scaffold code;Modify the application.properties file;Configure the data source such as Redis and other settings in the YMS console.Start the project locally.YPD Scaffolding CapabilitySupport the basic functions of adding, deleting, modifying, and querying, which are default features of page modeling.Support service capabilities for interface standards, such as metadata, UI templates, permissions, formulas, workflows, business processes, printing, import, export, coding rules, task scheduling, event center, business logs, etc.Main Support Service DescriptionField NameDescriptionMetadataPlatform data modeling capability, defines data structureUI TemplatePlatform page modeling capability, defines page displayData PermissionsFilters data based on permissionsFunction PermissionsFilters buttons based on permissionsFormulaFormula calculation capabilityWorkflowApproval flow workflow capabilityBusiness FlowTransfer capability between multiple businessesImportExcel batch import capabilityExportExcel batch export capabilityMain Operation InstructionsAdd framework dependenciesBoth the scaffold template is available for direct download; you can also add the parent yonbip-2nd-parent in the POM, and by depending on iuap-ap-ypd-starter, you will have the standard capabilities of the YPD framework.Expand development capabilitiesBusiness extensions can be made in the pre or post extension point plugins of the standard action that you want to extend.