Skip to content

Commit 8a19ee4

Browse files
LucioPelinsongumbarrosivanilson22lucioAndreSequinel
authored
JJMasterData 3.1 - Saturn Version 🪐 (#37)
Co-authored-by: Gustavo Mauricio de Barros <gustavomauriciodebarros@gmail.com> Co-authored-by: Ivan <ivanilsonsantosoliveira@gmail.com> Co-authored-by: lucio <lucio.pelinson@hotmail.com> Co-authored-by: André Luis Sequinel <100393691+AndreSequinel@users.noreply.github.com> Co-authored-by: ygor.silva <ygor.silva@jjconsulting.combr> Co-authored-by: AndreSequinel <andresequinel@gmail.com>
1 parent c86fb87 commit 8a19ee4

File tree

753 files changed

+31783
-48770
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

753 files changed

+31783
-48770
lines changed

.github/workflows/dotnet.yml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,23 @@ on:
88

99
jobs:
1010
build:
11-
1211
runs-on: ubuntu-latest
1312

1413
steps:
1514
- uses: actions/checkout@v3
1615
- name: Setup .NET
17-
uses: actions/setup-dotnet@v2
16+
uses: actions/setup-dotnet@v3
1817
with:
19-
dotnet-version: 7.0.x
18+
dotnet-version: 7.0.100
19+
2020
- name: Setup NodeJS
2121
uses: actions/setup-node@v3.4.1
22-
23-
- name: Restore dependencies
24-
run: dotnet restore
22+
2523
- name: Restore TypeScript dependencies
2624
run: |
2725
cd src/JJMasterData.Web
2826
npm install
2927
cd ../../..
28+
3029
- name: Build
31-
run: dotnet build --no-restore
30+
run: dotnet build

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,10 +342,12 @@ ASALocalRun/
342342
healthchecksdb
343343

344344
#Custom
345-
/doc/JJMasterData.Doc/Help/**
345+
/doc/JJMasterData.Documentation/lib/**
346+
/doc/JJMasterData.Documentation/_site/**
346347

347348
# Dangerous values to public source control
348349
appsettings.json
349350

350351
# Ignore default JJConsulting logs
351352
*_applog.txt
353+
*.DS_Store

JJMasterData.sln

Lines changed: 156 additions & 43 deletions
Large diffs are not rendered by default.

JJMasterData.sln.DotSettings

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,10 @@
11
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
2-
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=JJ/@EntryIndexedValue">JJ</s:String></wpf:ResourceDictionary>
2+
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=DAO/@EntryIndexedValue">DAO</s:String>
3+
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=DB/@EntryIndexedValue">DB</s:String>
4+
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=IO/@EntryIndexedValue">IO</s:String>
5+
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=JJ/@EntryIndexedValue">JJ</s:String>
6+
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=MSSQL/@EntryIndexedValue">MSSQL</s:String>
7+
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=SQ/@EntryIndexedValue">SQ</s:String>
8+
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=UI/@EntryIndexedValue">UI</s:String>
9+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Pelinson/@EntryIndexedValue">True</s:Boolean>
10+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Protheus/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

README.md

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
<a href="https://img.shields.io/badge/Microsoft_SQL_Server-CC2927">
1717
<img src="https://img.shields.io/badge/SQL_Server-CC2927?logo=microsoft-sql-server&logoColor=white" alt="TS">
1818
</a>
19-
<a href="https://img.shields.io/badge/Python">
20-
<img src="https://img.shields.io/badge/Python-3776AB?logo=python&logoColor=white" alt="SQL Server">
21-
</a>
2219
<a href="https://www.nuget.org/profiles/jjconsulting">
2320
<img src="https://img.shields.io/nuget/v/JJMasterData.Web.svg?color=004880" alt="NuGet">
2421
</a>
@@ -30,16 +27,10 @@
3027
JJMasterData is an open-source .NET library to help you create dynamic CRUDs quickly from data dictionaries (database metadata), along with other boilerplate-intensive things like exporting and importing data.
3128

3229
## Features
33-
- Complete CRUD operations ✅
34-
- Pages generated at runtime ✅
35-
- Data export & import ✅
36-
- Hangfire support ✅
37-
- Database script generation ✅
38-
- IronPython support ✅
39-
- Bootstrap 3,4 & 5 support ✅
40-
- Log interface ✅
41-
- xUnit library ✅
42-
30+
- Pages generated at runtime 🔥
31+
- Data exportation & importation ↔️
32+
- Database script generation ✍️
33+
- Plugins support by [interfaces](https://portal.jjconsulting.com.br/jjdoc/articles/plugins/intro.html) 🪄
4334
<br>
4435

4536
# Demo
@@ -62,6 +53,30 @@ See all steps in [documentation](https://portal.jjconsulting.tech/jjdoc/articles
6253

6354
<br>
6455

56+
## Building from source 🧰
57+
1. Install [.NET 7](https://dotnet.microsoft.com/en-us/download/dotnet/7.0)
58+
59+
2. Install [NodeJS](https://nodejs.org/en/download/)
60+
61+
3. Clone this git repository
62+
63+
4. Open `JJMasterData.sln `file at your IDE
64+
65+
5. Set the `JJMasterData.WebExample` as startup project
66+
67+
6. At `src/JJMasterData.Web` run at your terminal
68+
```bash
69+
npm i
70+
```
71+
7. It will be necessary to add a database of your choice. You will need add a ConnectionString at your `IConfiguration` source.<br>
72+
![image](https://user-images.githubusercontent.com/100393691/203789109-ef71f492-3f90-4739-8c41-8a92890c72dc.png)
73+
74+
8. Run the project
75+
76+
9. This is the expected output <br>
77+
![image](https://user-images.githubusercontent.com/52143624/205990349-fc9c24d1-c9e6-4729-a334-4d0487222d29.png)
78+
79+
6580
## Special Thanks
6681

6782
#### Code contributors
@@ -72,7 +87,7 @@ See all steps in [documentation](https://portal.jjconsulting.tech/jjdoc/articles
7287

7388
<br>
7489

75-
## Bugs and feature requests
90+
## Bugs and feature requests 🐛
7691
Have a bug or a feature request?
7792
Please first search for existing and closed issues.</br>
7893
If your problem or idea is not addressed yet, [please open a new issue](https://github.com/jjconsulting/JJMasterData/issues/new).

appsettings.json

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
{
2+
"AllowedHosts": "*",
3+
4+
"ConnectionStrings": {
5+
"ConnectionString": "data source=(localdb)\\MSSQLLocalDB;database=JJMasterData"
6+
},
7+
"ConnectionProviders": {
8+
"ConnectionString": "System.Data.SqlClient"
9+
},
10+
"JJMasterData": {
11+
"DataDictionary" : {
12+
"FolderPath" : "Metadata"
13+
},
14+
"MongoDB": {
15+
"ConnectionString": "mongodb://localhost:27017",
16+
"DatabaseName": "jjmasterdata",
17+
"CollectionName": "metadata"
18+
},
19+
"DataDictionaryTableName": "tb_masterdata",
20+
"ResourcesTableName": "tb_masterdata_resources",
21+
"PrefixGetProc": "sp_{tablename}_get",
22+
"PrefixSetProc": "sp_{tablename}_set",
23+
"LayoutPath": "_Layout",
24+
"BootstrapVersion": 5,
25+
"Theme": "dark-blue"
26+
},
27+
"Logging": {
28+
"LogLevel": {
29+
"Default": "Information",
30+
"Microsoft.AspNetCore": "Warning"
31+
},
32+
"Console": {
33+
"LogLevel": {
34+
"Default": "Debug"
35+
}
36+
},
37+
"Database": {
38+
"LogLevel": {
39+
"Default": "Trace",
40+
"Microsoft.AspNetCore": "None"
41+
},
42+
"TableName": "JJMasterDataLogger"
43+
},
44+
"File": {
45+
"FileName": "Log/AppLog-yyyyMMdd.txt"
46+
}
47+
}
48+
}

doc/JJMasterData.Documentation/JJMasterData.Documentation.csproj

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,20 @@
55
</PropertyGroup>
66

77
<ItemGroup>
8-
<Compile Remove="JJMasterData.Sample\**" />
98
<Compile Remove="lib\**" />
10-
<EmbeddedResource Remove="JJMasterData.Sample\**" />
119
<EmbeddedResource Remove="lib\**" />
12-
<None Remove="JJMasterData.Sample\**" />
1310
<None Remove="lib\**" />
11+
<Compile Remove="restapi\**" />
12+
<EmbeddedResource Remove="restapi\**" />
13+
<None Remove="restapi\**" />
1414
</ItemGroup>
1515

1616
<ItemGroup>
17-
<PackageReference Include="docfx.console" Version="2.58.9">
17+
<None Remove="server.bat" />
18+
</ItemGroup>
19+
20+
<ItemGroup>
21+
<PackageReference Include="docfx.console" Version="2.59.4">
1822
<PrivateAssets>all</PrivateAssets>
1923
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2024
</PackageReference>

doc/JJMasterData.Documentation/articles/authentication.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ builder.Services.AddAuthorization(options =>
3939
});
4040
```
4141

42-
If you want to protect specific actions or fields in your DataDictionary, you will need to implement your own [JJFormView](articles/components/form_view.md) in your custom View or use the [IFormEvent](articles/form_events/intro.md) interface in the method OnInstanceCreated, customizing your JJFormView object.
42+
If you want to protect specific actions or fields in your DataDictionary, you will need to implement your own [JJFormView](components/form_view.md) in your custom View or use the <xref:JJMasterData.Core.FormEvents.Abstractions.IFormEvent> interface in the method OnInstanceCreated, customizing your JJFormView object.
4343
<br>
4444
[Learn more here.](custom_rules.md)
4545

doc/JJMasterData.Documentation/articles/components/jjAlert.md renamed to doc/JJMasterData.Documentation/articles/components/alert.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ quickly provide matching colored icons on any alert.
3535

3636
<img alt="Importing" src="../../media/SimpleExampleIconJJAlert.png"/>
3737

38-
**Button Close** Set whether to display the close alert button.
38+
**Close Button** Set whether to display the close alert button.
3939

4040
```csharp
4141
alert.Messages.Add("A simple info alert with icon and close button - check it out! - check it out!");
@@ -47,8 +47,20 @@ quickly provide matching colored icons on any alert.
4747

4848
<img alt="Importing" src="../../media/SimpleExampleButtonCloseJJAlert.png"/>
4949

50+
## TagHelper
51+
52+
JJAlert also have a TagHelper
53+
54+
```html
55+
<jj-alert
56+
title="Success"
57+
message="Connection successfully estabilished."
58+
icon="@IconType.CheckCircle"
59+
color="@PanelColor.Success"/>
60+
```
61+
5062
> [!TIP]
51-
> JJAlert does not consider internationalization, so the end user must pay attention to the translation using the Translate.Key(string) method as shown below
63+
> JJAlert does consider internationalization.
5264
5365

5466
You can check all JJAlert properties in our [API Reference](https://portal.jjconsulting.com.br/jjdoc/lib/JJMasterData.Core.WebComponents.JJAlert.html)
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# JJLinkButton
2+
3+
Represents a clickable button.
4+
5+
## Usage
6+
7+
```html
8+
<jj-link-button
9+
icon="@Home"
10+
url-action="http://www.jjconsulting.tech"
11+
text="JJ Consulting"/>
12+
```
13+
14+
## Customization
15+
16+
You can check all properties from JJLinkButton at our [API Reference](https://portal.jjconsulting.com.br/jjdoc/lib/JJMasterData.Core.WebComponents.JJLinkButton.html)

0 commit comments

Comments
 (0)