diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-ddd-module.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-ddd-module.png index eb266da625..dab89752ee 100644 Binary files a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-ddd-module.png and b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-ddd-module.png differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-empty-module-dialog.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-empty-module-dialog.png deleted file mode 100644 index 882323b4b6..0000000000 Binary files a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-empty-module-dialog.png and /dev/null differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-empty-module.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-empty-module.png deleted file mode 100644 index 53d453cd37..0000000000 Binary files a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-empty-module.png and /dev/null differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-additional-dialog.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-additional-dialog.png new file mode 100644 index 0000000000..fb142475df Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-additional-dialog.png differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-db-dialog.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-db-dialog.png new file mode 100644 index 0000000000..82b9e6b0d3 Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-db-dialog.png differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-dialog.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-dialog.png new file mode 100644 index 0000000000..6346b32b86 Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-dialog.png differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-ui-dialog.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-ui-dialog.png new file mode 100644 index 0000000000..5ca121b3c4 Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module-ui-dialog.png differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module.png b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module.png new file mode 100644 index 0000000000..06e4537cb0 Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/abp-studio-add-new-standard-module.png differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-modular-crm-with-standard-module.png b/docs/en/tutorials/modular-crm/images/abp-studio-modular-crm-with-standard-module.png new file mode 100644 index 0000000000..3632c9d6bd Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/abp-studio-modular-crm-with-standard-module.png differ diff --git a/docs/en/tutorials/modular-crm/images/abp-studio-modular-crm-with-two-modules.png b/docs/en/tutorials/modular-crm/images/abp-studio-modular-crm-with-two-modules.png deleted file mode 100644 index 3e04717081..0000000000 Binary files a/docs/en/tutorials/modular-crm/images/abp-studio-modular-crm-with-two-modules.png and /dev/null differ diff --git a/docs/en/tutorials/modular-crm/images/file-system-odering-module-initial-folder.png b/docs/en/tutorials/modular-crm/images/file-system-odering-module-initial-folder.png deleted file mode 100644 index eb10f3e26e..0000000000 Binary files a/docs/en/tutorials/modular-crm/images/file-system-odering-module-initial-folder.png and /dev/null differ diff --git a/docs/en/tutorials/modular-crm/images/file-system-ordering-module-initial-folder.png b/docs/en/tutorials/modular-crm/images/file-system-ordering-module-initial-folder.png new file mode 100644 index 0000000000..20b6ae2f93 Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/file-system-ordering-module-initial-folder.png differ diff --git a/docs/en/tutorials/modular-crm/images/ordering-module-visual-studio.png b/docs/en/tutorials/modular-crm/images/ordering-module-visual-studio.png new file mode 100644 index 0000000000..78ab7c8032 Binary files /dev/null and b/docs/en/tutorials/modular-crm/images/ordering-module-visual-studio.png differ diff --git a/docs/en/tutorials/modular-crm/part-04.md b/docs/en/tutorials/modular-crm/part-04.md index ea7e66cc8b..9d6a554fdc 100644 --- a/docs/en/tutorials/modular-crm/part-04.md +++ b/docs/en/tutorials/modular-crm/part-04.md @@ -16,25 +16,41 @@ In this part, you will build a new module for placing orders and install it in the main CRM application. -## Creating an Empty Module +## Creating a Standard Module -In this part, we have used the *DDD Module* template for the Product module and will use the *Empty Module* template for the Ordering module. +In this part, we have used the *DDD Module* template for the Product module and will use the *Standard Module* template for the Ordering module. -Right-click the `modules` folder on the *Solution Explorer* panel, and select the *Add* -> *New Module* -> *Empty Module* command: +Right-click the `modules` folder on the *Solution Explorer* panel, and select the *Add* -> *New Module* -> *Standard Module* command: -![abp-studio-add-new-empty-module](images/abp-studio-add-new-empty-module.png) +![abp-studio-add-new-standard-module](images/abp-studio-add-new-standard-module.png) That command opens a dialog to define the properties of the new module: -![abp-studio-add-new-empty-module-dialog](images/abp-studio-add-new-empty-module-dialog.png) +![abp-studio-add-new-standard-module-dialog](images/abp-studio-add-new-standard-module-dialog.png) -Set `ModularCrm.Ordering` as the *Module name*, leave the *Output folder* as is and click the *Create* button. It will create the new `ModularCrm.Ordering` module under the `modules` folder in the *Solution Explorer*: +Set `ModularCrm.Ordering` as the *Module name*, leave the *Output folder* as is and click the *Next* button. -![abp-studio-modular-crm-with-two-modules](images/abp-studio-modular-crm-with-two-modules.png) +![abp-studio-add-new-standard-module-ui-dialog](images/abp-studio-add-new-standard-module-ui-dialog.png) -Since we've created an empty module, it is really empty. If you open the `modules/modularcrm.ordering` in your file system, you can see the initial files: +Similar to DDD module creation, you can choose the type of UI you want to support in your module or select *No UI* if you don't need a user interface. In this example, we'll select the *MVC* option and click *Next*. One difference is that, for a standard module, you can only choose one UI type. -![file-system-odering-module-initial-folder](images/file-system-odering-module-initial-folder.png) +![abp-studio-add-new-standard-module-db-dialog](images/abp-studio-add-new-standard-module-db-dialog.png) + +The same limitation applies to the database selection. You can only choose one database provider for a standard module. Select the *Entity Framework Core* option and click *Next*. + +![abp-studio-add-new-standard-module-additional-dialog](images/abp-studio-add-new-standard-module-additional-dialog.png) + +You can uncheck the *Include Tests* option to keep the module simple. Click the *Create* button to create the module. + +![abp-studio-modular-crm-with-standard-module](images/abp-studio-modular-crm-with-standard-module.png) + +Since we've created a standard module, it doesn't have multiple layers like the DDD module. If you open the `modules/modularcrm.ordering` in your file system, you can see the initial files: + +![file-system-odering-module-initial-folder](images/file-system-ordering-module-initial-folder.png) + +Since only one UI package can be selected, the UI type doesn’t matter. This is why the package name is changed to *ModuleCrm.Ordering.UI*. Additionally, there are no *Domain*, *EntityFrameworkCore*, or *Http* layers like in the DDD module. We're going to use the `ModularCrm.Ordering` package for the domain business logic. You can open `ModularCrm.Ordering.sln` in your favorite IDE (e.g. Visual Studio): + +![ordering-module-visual-studio](images/ordering-module-visual-studio.png) ## Creating the Module Packages