commit
06d83ecbf4
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
@ -0,0 +1,150 @@ |
|||||||
|
{ |
||||||
|
"Version": 1, |
||||||
|
"WorkspaceRootPath": "C:\\Projects\\staging\\AdminusaBackend\\", |
||||||
|
"Documents": [ |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\appsettings.staging.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\appsettings.staging.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\repository\\reportes\\reportesrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\repository\\reportes\\reportesrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\repository\\catalogos\\catrelacionprecuentacheques.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\repository\\catalogos\\catrelacionprecuentacheques.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\controllers\\catalogos\\catalogorelacionescontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\controllers\\catalogos\\catalogorelacionescontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\repository\\exelservices\\exelrepositoryprecta.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\repository\\exelservices\\exelrepositoryprecta.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\repository\\exelservices\\exelhourworking\\exelhours.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\repository\\exelservices\\exelhourworking\\exelhours.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\repository\\exelservices\\exelrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\repository\\exelservices\\exelrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"AbsoluteMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|c:\\projects\\staging\\adminusabackend\\adminusabackend\\controllers\\authcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", |
||||||
|
"RelativeMoniker": "D:0:0:{8E58CCFA-D856-4B9B-AA47-BC985F0BA3A7}|AdminusaBackend\\AdminusaBackend.csproj|solutionrelative:adminusabackend\\controllers\\authcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" |
||||||
|
} |
||||||
|
], |
||||||
|
"DocumentGroupContainers": [ |
||||||
|
{ |
||||||
|
"Orientation": 0, |
||||||
|
"VerticalTabListWidth": 256, |
||||||
|
"DocumentGroups": [ |
||||||
|
{ |
||||||
|
"DockedWidth": 200, |
||||||
|
"SelectedChildIndex": 0, |
||||||
|
"Children": [ |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 0, |
||||||
|
"Title": "appsettings.Staging.json", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\appsettings.Staging.json", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\appsettings.Staging.json", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\appsettings.Staging.json", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\appsettings.Staging.json", |
||||||
|
"ViewState": "AQIAAAAAAAAAAAAAAAAAAAYAAAAlAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|", |
||||||
|
"WhenOpened": "2024-09-18T21:19:14.988Z", |
||||||
|
"EditorCaption": "" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 3, |
||||||
|
"Title": "CatalogoRelacionesController.cs", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Controllers\\Catalogos\\CatalogoRelacionesController.cs", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\Controllers\\Catalogos\\CatalogoRelacionesController.cs", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Controllers\\Catalogos\\CatalogoRelacionesController.cs", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\Controllers\\Catalogos\\CatalogoRelacionesController.cs", |
||||||
|
"ViewState": "AQIAAAAAAAAAAAAAAAAAAB0AAAAAAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
||||||
|
"WhenOpened": "2024-09-18T20:45:12.815Z" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 7, |
||||||
|
"Title": "AuthController.cs", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Controllers\\AuthController.cs", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\Controllers\\AuthController.cs", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Controllers\\AuthController.cs", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\Controllers\\AuthController.cs", |
||||||
|
"ViewState": "AQIAAKQAAAAAAAAAAAAgwMQAAABqAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
||||||
|
"WhenOpened": "2024-09-18T20:33:41.6Z" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 2, |
||||||
|
"Title": "CatRelacionPrecuentaCheques.cs", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\Catalogos\\CatRelacionPrecuentaCheques.cs", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\Repository\\Catalogos\\CatRelacionPrecuentaCheques.cs", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\Catalogos\\CatRelacionPrecuentaCheques.cs", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\Repository\\Catalogos\\CatRelacionPrecuentaCheques.cs", |
||||||
|
"ViewState": "AQIAAEwAAAAAAAAAAAAiwBwAAAAJAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
||||||
|
"WhenOpened": "2024-09-18T20:27:49.884Z" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 1, |
||||||
|
"Title": "ReportesRepository.cs", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\Reportes\\ReportesRepository.cs", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\Repository\\Reportes\\ReportesRepository.cs", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\Reportes\\ReportesRepository.cs", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\Repository\\Reportes\\ReportesRepository.cs", |
||||||
|
"ViewState": "AQIAADUAAAAAAAAAAIAwwEgAAAAAAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
||||||
|
"WhenOpened": "2024-09-18T20:27:25.522Z", |
||||||
|
"EditorCaption": "" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 6, |
||||||
|
"Title": "ExelRepository.cs", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\ExelServices\\ExelRepository.cs", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\Repository\\ExelServices\\ExelRepository.cs", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\ExelServices\\ExelRepository.cs", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\Repository\\ExelServices\\ExelRepository.cs", |
||||||
|
"ViewState": "AQIAADYAAAAAAAAAAAApwE8AAAAIAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
||||||
|
"WhenOpened": "2024-09-18T20:26:57.606Z" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 4, |
||||||
|
"Title": "ExelRepositoryPrecta.cs", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\ExelServices\\ExelRepositoryPrecta.cs", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\Repository\\ExelServices\\ExelRepositoryPrecta.cs", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\ExelServices\\ExelRepositoryPrecta.cs", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\Repository\\ExelServices\\ExelRepositoryPrecta.cs", |
||||||
|
"ViewState": "AQIAACoAAAAAAAAAAAAYwEUAAAAqAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
||||||
|
"WhenOpened": "2024-09-18T20:26:58.26Z" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"$type": "Document", |
||||||
|
"DocumentIndex": 5, |
||||||
|
"Title": "ExelHours.cs", |
||||||
|
"DocumentMoniker": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\ExelServices\\ExelHourWorking\\ExelHours.cs", |
||||||
|
"RelativeDocumentMoniker": "AdminusaBackend\\Repository\\ExelServices\\ExelHourWorking\\ExelHours.cs", |
||||||
|
"ToolTip": "C:\\Projects\\staging\\AdminusaBackend\\AdminusaBackend\\Repository\\ExelServices\\ExelHourWorking\\ExelHours.cs", |
||||||
|
"RelativeToolTip": "AdminusaBackend\\Repository\\ExelServices\\ExelHourWorking\\ExelHours.cs", |
||||||
|
"ViewState": "AQIAAAAAAAAAAAAAAAAAAAkAAAAkAAAA", |
||||||
|
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", |
||||||
|
"WhenOpened": "2024-09-13T23:37:12.966Z" |
||||||
|
} |
||||||
|
] |
||||||
|
} |
||||||
|
] |
||||||
|
} |
||||||
|
] |
||||||
|
} |
Binary file not shown.
Binary file not shown.
@ -0,0 +1,32 @@ |
|||||||
|
{ |
||||||
|
"version": "0.2.0", |
||||||
|
"configurations": [ |
||||||
|
{ |
||||||
|
"name": ".NET Core Launch (web)", |
||||||
|
"type": "coreclr", |
||||||
|
"request": "launch", |
||||||
|
"preLaunchTask": "build", |
||||||
|
// If you have changed target frameworks, make sure to update the program path. |
||||||
|
"program": "${workspaceFolder}/bin/Debug/net7.0/AdminusaBackend.dll", |
||||||
|
"args": [], |
||||||
|
"cwd": "${workspaceFolder}", |
||||||
|
"stopAtEntry": false, |
||||||
|
"serverReadyAction": { |
||||||
|
"action": "openExternally", |
||||||
|
"pattern": "\\bNow listening on:\\s+https?://\\S+", |
||||||
|
"uriFormat": "https://localhost:5020/swagger/index.html" |
||||||
|
}, |
||||||
|
"env": { |
||||||
|
"ASPNETCORE_ENVIRONMENT": "Development" |
||||||
|
}, |
||||||
|
"sourceFileMap": { |
||||||
|
"/Views": "${workspaceFolder}/Views" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"name": ".NET Core Attach", |
||||||
|
"type": "coreclr", |
||||||
|
"request": "attach" |
||||||
|
} |
||||||
|
] |
||||||
|
} |
@ -0,0 +1,103 @@ |
|||||||
|
{ |
||||||
|
"version": "2.0.0", |
||||||
|
"tasks": [ |
||||||
|
{ |
||||||
|
"label": "build", |
||||||
|
"command": "dotnet", |
||||||
|
"type": "process", |
||||||
|
"args": [ |
||||||
|
"build", |
||||||
|
"${workspaceFolder} /AdminusaBackend/AdminusaBackend.csproj", |
||||||
|
"/property:GenerateFullPaths=true", |
||||||
|
"/consoleloggerparameters:NoSummary" |
||||||
|
], |
||||||
|
"problemMatcher": "$msCompile" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"label": "publish", |
||||||
|
"command": "dotnet", |
||||||
|
"type": "process", |
||||||
|
"args": [ |
||||||
|
"publish", |
||||||
|
"${workspaceFolder}/AdminusaBackend/AdminusaBackend.csproj", |
||||||
|
"/property:GenerateFullPaths=true", |
||||||
|
"/consoleloggerparameters:NoSummary" |
||||||
|
], |
||||||
|
"problemMatcher": "$msCompile" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"label": "watch", |
||||||
|
"command": "dotnet", |
||||||
|
"type": "process", |
||||||
|
"args": [ |
||||||
|
"watch", |
||||||
|
"run", |
||||||
|
"--project", |
||||||
|
"${workspaceFolder}/AdminusaBackend/AdminusaBackend.csproj" |
||||||
|
], |
||||||
|
"problemMatcher": "$msCompile" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"label": "publish for PRODUCTION", |
||||||
|
"command": "dotnet", |
||||||
|
"type": "process", |
||||||
|
"args": [ |
||||||
|
"publish", |
||||||
|
"/property:Configuration=Release", |
||||||
|
"/property:EnvironmentName=Production", |
||||||
|
"${workspaceFolder}/AdminusaBackend/AdminusaBackend.csproj", |
||||||
|
"/property:GenerateFullPaths=true", |
||||||
|
"/consoleloggerparameters:NoSummary" |
||||||
|
], |
||||||
|
"presentation": { |
||||||
|
"echo": true, |
||||||
|
"reveal": "always", |
||||||
|
"focus": false, |
||||||
|
"panel": "shared", |
||||||
|
"showReuseMessage": true, |
||||||
|
"clear": false, |
||||||
|
"close": true |
||||||
|
}, |
||||||
|
"problemMatcher": "$msCompile" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"label": "publish for QA", |
||||||
|
"command": "dotnet", |
||||||
|
"type": "process", |
||||||
|
"args": [ |
||||||
|
"publish", |
||||||
|
"/property:Configuration=Release", |
||||||
|
"/property:EnvironmentName=Staging", |
||||||
|
"${workspaceFolder}/AdminusaBackend/AdminusaBackend.csproj", |
||||||
|
"/property:GenerateFullPaths=true", |
||||||
|
"/consoleloggerparameters:NoSummary" |
||||||
|
], |
||||||
|
"presentation": { |
||||||
|
"echo": true, |
||||||
|
"reveal": "always", |
||||||
|
"focus": false, |
||||||
|
"panel": "shared", |
||||||
|
"showReuseMessage": true, |
||||||
|
"clear": false, |
||||||
|
"close": true |
||||||
|
}, |
||||||
|
"problemMatcher": "$msCompile" |
||||||
|
}, |
||||||
|
{ |
||||||
|
"label": "Clean & Build", |
||||||
|
"command": "dotnet clean; dotnet build", |
||||||
|
"type": "shell", |
||||||
|
"args": [ ], |
||||||
|
"presentation": { |
||||||
|
"echo": true, |
||||||
|
"reveal": "always", |
||||||
|
"focus": false, |
||||||
|
"panel": "shared", |
||||||
|
"showReuseMessage": true, |
||||||
|
"clear": false, |
||||||
|
"close": true |
||||||
|
}, |
||||||
|
"problemMatcher": "$msCompile" |
||||||
|
} |
||||||
|
] |
||||||
|
} |
@ -0,0 +1,402 @@ |
|||||||
|
## Ignore Visual Studio temporary files, build results, and |
||||||
|
## files generated by popular Visual Studio add-ons. |
||||||
|
## |
||||||
|
## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore |
||||||
|
|
||||||
|
# User-specific files |
||||||
|
*.rsuser |
||||||
|
*.suo |
||||||
|
*.user |
||||||
|
*.userosscache |
||||||
|
*.sln.docstates |
||||||
|
|
||||||
|
*.dll |
||||||
|
|
||||||
|
# User-specific files (MonoDevelop/Xamarin Studio) |
||||||
|
*.userprefs |
||||||
|
|
||||||
|
# Mono auto generated files |
||||||
|
mono_crash.* |
||||||
|
|
||||||
|
# Build results |
||||||
|
[Dd]ebug/ |
||||||
|
[Dd]ebugPublic/ |
||||||
|
[Rr]elease/ |
||||||
|
[Rr]eleases/ |
||||||
|
x64/ |
||||||
|
x86/ |
||||||
|
[Ww][Ii][Nn]32/ |
||||||
|
[Aa][Rr][Mm]/ |
||||||
|
[Aa][Rr][Mm]64/ |
||||||
|
bld/ |
||||||
|
bin/* |
||||||
|
Bin/* |
||||||
|
obj/* |
||||||
|
Obj/* |
||||||
|
[Ll]og/ |
||||||
|
[Ll]ogs/ |
||||||
|
|
||||||
|
# Visual Studio 2015/2017 cache/options directory |
||||||
|
.vs/ |
||||||
|
# Uncomment if you have tasks that create the project's static files in wwwroot |
||||||
|
#wwwroot/ |
||||||
|
|
||||||
|
# Visual Studio 2017 auto generated files |
||||||
|
Generated\ Files/ |
||||||
|
|
||||||
|
# MSTest test Results |
||||||
|
[Tt]est[Rr]esult*/ |
||||||
|
[Bb]uild[Ll]og.* |
||||||
|
|
||||||
|
# NUnit |
||||||
|
*.VisualState.xml |
||||||
|
TestResult.xml |
||||||
|
nunit-*.xml |
||||||
|
|
||||||
|
# Build Results of an ATL Project |
||||||
|
[Dd]ebugPS/ |
||||||
|
[Rr]eleasePS/ |
||||||
|
dlldata.c |
||||||
|
|
||||||
|
# Benchmark Results |
||||||
|
BenchmarkDotNet.Artifacts/ |
||||||
|
|
||||||
|
# .NET Core |
||||||
|
project.lock.json |
||||||
|
project.fragment.lock.json |
||||||
|
artifacts/ |
||||||
|
|
||||||
|
# ASP.NET Scaffolding |
||||||
|
ScaffoldingReadMe.txt |
||||||
|
|
||||||
|
# StyleCop |
||||||
|
StyleCopReport.xml |
||||||
|
|
||||||
|
# Files built by Visual Studio |
||||||
|
*_i.c |
||||||
|
*_p.c |
||||||
|
*_h.h |
||||||
|
*.ilk |
||||||
|
*.meta |
||||||
|
*.obj |
||||||
|
*.iobj |
||||||
|
*.pch |
||||||
|
*.pdb |
||||||
|
*.ipdb |
||||||
|
*.pgc |
||||||
|
*.pgd |
||||||
|
*.rsp |
||||||
|
*.sbr |
||||||
|
*.tlb |
||||||
|
*.tli |
||||||
|
*.tlh |
||||||
|
*.tmp |
||||||
|
*.tmp_proj |
||||||
|
*_wpftmp.csproj |
||||||
|
*.log |
||||||
|
*.tlog |
||||||
|
*.vspscc |
||||||
|
*.vssscc |
||||||
|
.builds |
||||||
|
*.pidb |
||||||
|
*.svclog |
||||||
|
*.scc |
||||||
|
|
||||||
|
# Chutzpah Test files |
||||||
|
_Chutzpah* |
||||||
|
|
||||||
|
# Visual C++ cache files |
||||||
|
ipch/ |
||||||
|
*.aps |
||||||
|
*.ncb |
||||||
|
*.opendb |
||||||
|
*.opensdf |
||||||
|
*.sdf |
||||||
|
*.cachefile |
||||||
|
*.VC.db |
||||||
|
*.VC.VC.opendb |
||||||
|
|
||||||
|
# Visual Studio profiler |
||||||
|
*.psess |
||||||
|
*.vsp |
||||||
|
*.vspx |
||||||
|
*.sap |
||||||
|
|
||||||
|
# Visual Studio Trace Files |
||||||
|
*.e2e |
||||||
|
|
||||||
|
# TFS 2012 Local Workspace |
||||||
|
$tf/ |
||||||
|
|
||||||
|
# Guidance Automation Toolkit |
||||||
|
*.gpState |
||||||
|
|
||||||
|
# ReSharper is a .NET coding add-in |
||||||
|
_ReSharper*/ |
||||||
|
*.[Rr]e[Ss]harper |
||||||
|
*.DotSettings.user |
||||||
|
|
||||||
|
# TeamCity is a build add-in |
||||||
|
_TeamCity* |
||||||
|
|
||||||
|
# DotCover is a Code Coverage Tool |
||||||
|
*.dotCover |
||||||
|
|
||||||
|
# AxoCover is a Code Coverage Tool |
||||||
|
.axoCover/* |
||||||
|
!.axoCover/settings.json |
||||||
|
|
||||||
|
# Coverlet is a free, cross platform Code Coverage Tool |
||||||
|
coverage*.json |
||||||
|
coverage*.xml |
||||||
|
coverage*.info |
||||||
|
|
||||||
|
# Visual Studio code coverage results |
||||||
|
*.coverage |
||||||
|
*.coveragexml |
||||||
|
|
||||||
|
# NCrunch |
||||||
|
_NCrunch_* |
||||||
|
.*crunch*.local.xml |
||||||
|
nCrunchTemp_* |
||||||
|
|
||||||
|
# MightyMoose |
||||||
|
*.mm.* |
||||||
|
AutoTest.Net/ |
||||||
|
|
||||||
|
# Web workbench (sass) |
||||||
|
.sass-cache/ |
||||||
|
|
||||||
|
# Installshield output folder |
||||||
|
[Ee]xpress/ |
||||||
|
|
||||||
|
# DocProject is a documentation generator add-in |
||||||
|
DocProject/buildhelp/ |
||||||
|
DocProject/Help/*.HxT |
||||||
|
DocProject/Help/*.HxC |
||||||
|
DocProject/Help/*.hhc |
||||||
|
DocProject/Help/*.hhk |
||||||
|
DocProject/Help/*.hhp |
||||||
|
DocProject/Help/Html2 |
||||||
|
DocProject/Help/html |
||||||
|
|
||||||
|
# Click-Once directory |
||||||
|
publish/ |
||||||
|
|
||||||
|
# Publish Web Output |
||||||
|
*.[Pp]ublish.xml |
||||||
|
*.azurePubxml |
||||||
|
# Note: Comment the next line if you want to checkin your web deploy settings, |
||||||
|
# but database connection strings (with potential passwords) will be unencrypted |
||||||
|
*.pubxml |
||||||
|
*.publishproj |
||||||
|
|
||||||
|
# Microsoft Azure Web App publish settings. Comment the next line if you want to |
||||||
|
# checkin your Azure Web App publish settings, but sensitive information contained |
||||||
|
# in these scripts will be unencrypted |
||||||
|
PublishScripts/ |
||||||
|
|
||||||
|
# NuGet Packages |
||||||
|
*.nupkg |
||||||
|
# NuGet Symbol Packages |
||||||
|
*.snupkg |
||||||
|
# The packages folder can be ignored because of Package Restore |
||||||
|
**/[Pp]ackages/* |
||||||
|
# except build/, which is used as an MSBuild target. |
||||||
|
!**/[Pp]ackages/build/ |
||||||
|
# Uncomment if necessary however generally it will be regenerated when needed |
||||||
|
#!**/[Pp]ackages/repositories.config |
||||||
|
# NuGet v3's project.json files produces more ignorable files |
||||||
|
*.nuget.props |
||||||
|
*.nuget.targets |
||||||
|
|
||||||
|
# Microsoft Azure Build Output |
||||||
|
csx/ |
||||||
|
*.build.csdef |
||||||
|
|
||||||
|
# Microsoft Azure Emulator |
||||||
|
ecf/ |
||||||
|
rcf/ |
||||||
|
|
||||||
|
# Windows Store app package directories and files |
||||||
|
AppPackages/ |
||||||
|
BundleArtifacts/ |
||||||
|
Package.StoreAssociation.xml |
||||||
|
_pkginfo.txt |
||||||
|
*.appx |
||||||
|
*.appxbundle |
||||||
|
*.appxupload |
||||||
|
|
||||||
|
# Visual Studio cache files |
||||||
|
# files ending in .cache can be ignored |
||||||
|
*.[Cc]ache |
||||||
|
# but keep track of directories ending in .cache |
||||||
|
!?*.[Cc]ache/ |
||||||
|
|
||||||
|
# Others |
||||||
|
ClientBin/ |
||||||
|
~$* |
||||||
|
*~ |
||||||
|
*.dbmdl |
||||||
|
*.dbproj.schemaview |
||||||
|
*.jfm |
||||||
|
*.pfx |
||||||
|
*.publishsettings |
||||||
|
orleans.codegen.cs |
||||||
|
|
||||||
|
# Including strong name files can present a security risk |
||||||
|
# (https://github.com/github/gitignore/pull/2483#issue-259490424) |
||||||
|
#*.snk |
||||||
|
|
||||||
|
# Since there are multiple workflows, uncomment next line to ignore bower_components |
||||||
|
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) |
||||||
|
#bower_components/ |
||||||
|
|
||||||
|
# RIA/Silverlight projects |
||||||
|
Generated_Code/ |
||||||
|
|
||||||
|
# Backup & report files from converting an old project file |
||||||
|
# to a newer Visual Studio version. Backup files are not needed, |
||||||
|
# because we have git ;-) |
||||||
|
_UpgradeReport_Files/ |
||||||
|
Backup*/ |
||||||
|
UpgradeLog*.XML |
||||||
|
UpgradeLog*.htm |
||||||
|
ServiceFabricBackup/ |
||||||
|
*.rptproj.bak |
||||||
|
|
||||||
|
# SQL Server files |
||||||
|
*.mdf |
||||||
|
*.ldf |
||||||
|
*.ndf |
||||||
|
|
||||||
|
# Business Intelligence projects |
||||||
|
*.rdl.data |
||||||
|
*.bim.layout |
||||||
|
*.bim_*.settings |
||||||
|
*.rptproj.rsuser |
||||||
|
*- [Bb]ackup.rdl |
||||||
|
*- [Bb]ackup ([0-9]).rdl |
||||||
|
*- [Bb]ackup ([0-9][0-9]).rdl |
||||||
|
|
||||||
|
# Microsoft Fakes |
||||||
|
FakesAssemblies/ |
||||||
|
|
||||||
|
# GhostDoc plugin setting file |
||||||
|
*.GhostDoc.xml |
||||||
|
|
||||||
|
# Node.js Tools for Visual Studio |
||||||
|
.ntvs_analysis.dat |
||||||
|
node_modules/ |
||||||
|
|
||||||
|
# Visual Studio 6 build log |
||||||
|
*.plg |
||||||
|
|
||||||
|
# Visual Studio 6 workspace options file |
||||||
|
*.opt |
||||||
|
|
||||||
|
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) |
||||||
|
*.vbw |
||||||
|
|
||||||
|
# Visual Studio 6 auto-generated project file (contains which files were open etc.) |
||||||
|
*.vbp |
||||||
|
|
||||||
|
# Visual Studio 6 workspace and project file (working project files containing files to include in project) |
||||||
|
*.dsw |
||||||
|
*.dsp |
||||||
|
|
||||||
|
# Visual Studio 6 technical files |
||||||
|
*.ncb |
||||||
|
*.aps |
||||||
|
|
||||||
|
# Visual Studio LightSwitch build output |
||||||
|
**/*.HTMLClient/GeneratedArtifacts |
||||||
|
**/*.DesktopClient/GeneratedArtifacts |
||||||
|
**/*.DesktopClient/ModelManifest.xml |
||||||
|
**/*.Server/GeneratedArtifacts |
||||||
|
**/*.Server/ModelManifest.xml |
||||||
|
_Pvt_Extensions |
||||||
|
|
||||||
|
# Paket dependency manager |
||||||
|
.paket/paket.exe |
||||||
|
paket-files/ |
||||||
|
|
||||||
|
# FAKE - F# Make |
||||||
|
.fake/ |
||||||
|
|
||||||
|
# CodeRush personal settings |
||||||
|
.cr/personal |
||||||
|
|
||||||
|
# Python Tools for Visual Studio (PTVS) |
||||||
|
__pycache__/ |
||||||
|
*.pyc |
||||||
|
|
||||||
|
# Cake - Uncomment if you are using it |
||||||
|
# tools/** |
||||||
|
# !tools/packages.config |
||||||
|
|
||||||
|
# Tabs Studio |
||||||
|
*.tss |
||||||
|
|
||||||
|
# Telerik's JustMock configuration file |
||||||
|
*.jmconfig |
||||||
|
|
||||||
|
# BizTalk build output |
||||||
|
*.btp.cs |
||||||
|
*.btm.cs |
||||||
|
*.odx.cs |
||||||
|
*.xsd.cs |
||||||
|
|
||||||
|
# OpenCover UI analysis results |
||||||
|
OpenCover/ |
||||||
|
|
||||||
|
# Azure Stream Analytics local run output |
||||||
|
ASALocalRun/ |
||||||
|
|
||||||
|
# MSBuild Binary and Structured Log |
||||||
|
*.binlog |
||||||
|
|
||||||
|
# NVidia Nsight GPU debugger configuration file |
||||||
|
*.nvuser |
||||||
|
|
||||||
|
# MFractors (Xamarin productivity tool) working folder |
||||||
|
.mfractor/ |
||||||
|
|
||||||
|
# Local History for Visual Studio |
||||||
|
.localhistory/ |
||||||
|
|
||||||
|
# Visual Studio History (VSHistory) files |
||||||
|
.vshistory/ |
||||||
|
|
||||||
|
# BeatPulse healthcheck temp database |
||||||
|
healthchecksdb |
||||||
|
|
||||||
|
# Backup folder for Package Reference Convert tool in Visual Studio 2017 |
||||||
|
MigrationBackup/ |
||||||
|
|
||||||
|
# Ionide (cross platform F# VS Code tools) working folder |
||||||
|
.ionide/ |
||||||
|
|
||||||
|
# Fody - auto-generated XML schema |
||||||
|
FodyWeavers.xsd |
||||||
|
|
||||||
|
# VS Code files for those working on multiple tools |
||||||
|
.vscode/* |
||||||
|
!.vscode/settings.json |
||||||
|
!.vscode/tasks.json |
||||||
|
!.vscode/launch.json |
||||||
|
!.vscode/extensions.json |
||||||
|
*.code-workspace |
||||||
|
|
||||||
|
# Local History for Visual Studio Code |
||||||
|
.history/ |
||||||
|
|
||||||
|
# Windows Installer files from build outputs |
||||||
|
*.cab |
||||||
|
*.msi |
||||||
|
*.msix |
||||||
|
*.msm |
||||||
|
*.msp |
||||||
|
|
||||||
|
# JetBrains Rider |
||||||
|
*.sln.iml |
@ -0,0 +1,19 @@ |
|||||||
|
<Project Sdk="Microsoft.NET.Sdk.Web"> |
||||||
|
|
||||||
|
<PropertyGroup> |
||||||
|
<TargetFramework>net7.0</TargetFramework> |
||||||
|
<Nullable>enable</Nullable> |
||||||
|
<ImplicitUsings>enable</ImplicitUsings> |
||||||
|
</PropertyGroup> |
||||||
|
|
||||||
|
<ItemGroup> |
||||||
|
<PackageReference Include="Dapper" Version="2.1.35" /> |
||||||
|
<PackageReference Include="EPPlus" Version="7.3.1" /> |
||||||
|
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.20" /> |
||||||
|
<PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="7.0.16" /> |
||||||
|
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.1.3" /> |
||||||
|
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> |
||||||
|
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" /> |
||||||
|
</ItemGroup> |
||||||
|
|
||||||
|
</Project> |
@ -0,0 +1,24 @@ |
|||||||
|
using AdminusaBackend.Clientes.Email; |
||||||
|
/*using ZINCBackend.Clientes.ZincInternacional.Model;*/ |
||||||
|
using AdminusaBackend.DTO; |
||||||
|
using AdminusaBackend.DTO.Usuario; |
||||||
|
|
||||||
|
namespace AdminusaBackend.Clientes.Contracts |
||||||
|
{ |
||||||
|
public interface ICatResponsablesRepository |
||||||
|
{ |
||||||
|
/* public Task<IEnumerable<I1868CatResponsables>> Get(); |
||||||
|
public Task<IEnumerable<I1868CatResponsableCorreos>> ResponsablesEmailsGetAll();*/ |
||||||
|
/*public Task<I1868CatResponsables> GetByUser(DTOLogin data);*/ |
||||||
|
/* public Task<int> searchResponsable(string Usuario);*/ |
||||||
|
public Task<IEnumerable<DTOPINData>> CreatePIN(int Id); |
||||||
|
public Task<Boolean> ValidatePIN(DTOPINUsuario data); |
||||||
|
public Task<DTOLogin> resetPassword(DTOResetPassword user); |
||||||
|
/* public Task<IEnumerable<I1868CatResponsableCorreos>> GetEmailsByResponsable(int id);*/ |
||||||
|
/*public Task<I1868CatResponsableCorreos> EmailAppend(I1868CatResponsableCorreos data);*/ |
||||||
|
/* public Task<Boolean> UserAppend(int id, String Usuario);*/ |
||||||
|
/* public Task<DTONotificacionTransportista> GetEmailsByIdDetalle(int id); |
||||||
|
public Task<DTONotificacionTransportista> GetEmailsByInvoice(int id);*/ |
||||||
|
/*public Task<Boolean> DeleteEmail(int id);*/ |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,10 @@ |
|||||||
|
|
||||||
|
namespace AdminusaBackend.Clientes.Email; |
||||||
|
|
||||||
|
public class DTOSendEmail |
||||||
|
{ |
||||||
|
public string To { get; set; } = null!; |
||||||
|
public string Subject { get; set; } = null!; |
||||||
|
public string Text { get; set; } = null!; |
||||||
|
public string Html { get; set; } = null!; |
||||||
|
} |
@ -0,0 +1,13 @@ |
|||||||
|
|
||||||
|
namespace AdminusaBackend.Clientes.Email |
||||||
|
{ |
||||||
|
public class DTOSendEmailBcc |
||||||
|
{ |
||||||
|
public string To { get; set; } = null!; |
||||||
|
public string Cc { get; set; } = null!; |
||||||
|
public string Bcc { get; set; } = null!; |
||||||
|
public string Subject { get; set; } = null!; |
||||||
|
public string Text { get; set; } = null!; |
||||||
|
public string Html { get; set; } = null!; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,163 @@ |
|||||||
|
using System.Data.Common; |
||||||
|
using System.ComponentModel.DataAnnotations.Schema; |
||||||
|
using Dapper; |
||||||
|
using Microsoft.AspNetCore.Server.IIS.Core; |
||||||
|
using System.Data; |
||||||
|
using AdminusaBackend.Clientes.Email; |
||||||
|
using AdminusaBackend.Clientes.Contracts; |
||||||
|
using AdminusaBackend.Context; |
||||||
|
using AdminusaBackend.Crypto; |
||||||
|
using AdminusaBackend.DTO; |
||||||
|
|
||||||
|
using AdminusaBackend.DTO.Usuario; |
||||||
|
|
||||||
|
namespace AdminusaBackend.Clientes.Repository |
||||||
|
{ |
||||||
|
public class CatResponsablesRepository : ICatResponsablesRepository |
||||||
|
{ |
||||||
|
|
||||||
|
private readonly DapperContext _context; |
||||||
|
public CatResponsablesRepository(DapperContext context) { _context = context; } |
||||||
|
|
||||||
|
/*public async Task<IEnumerable<I1868CatResponsables>> Get() |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Get]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<I1868CatResponsables>(query, new { }, commandType: CommandType.StoredProcedure); |
||||||
|
return entrada; |
||||||
|
} |
||||||
|
*//* |
||||||
|
public async Task<I1868CatResponsables> GetByUser(DTOLogin data) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.GetByUser]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var hashedPassword = CryptDecrypt.Encrypt(data.Contrasena); |
||||||
|
var entrada = await connection.QueryAsync<I1868CatResponsables>(query, new |
||||||
|
{ |
||||||
|
@data.Usuario, |
||||||
|
@Contrasena = hashedPassword |
||||||
|
}, commandType: CommandType.StoredProcedure); |
||||||
|
return entrada.First(); |
||||||
|
} |
||||||
|
*//* |
||||||
|
public async Task<int> searchResponsable(string Usuario) |
||||||
|
{ |
||||||
|
var query = "SELECT * FROM CatResponsables WHERE Usuario=@Usuario"; |
||||||
|
using (var connection = _context.CreateConnection()) |
||||||
|
{ |
||||||
|
var usuario = await connection.QueryAsync<I1868CatResponsables>(query, new { @Usuario }); |
||||||
|
return usuario.Count() > 0 ? usuario.First().id : 0; |
||||||
|
} |
||||||
|
} |
||||||
|
*/ |
||||||
|
|
||||||
|
public async Task<IEnumerable<DTOPINData>> CreatePIN(int Id) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.PIN.Create]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<DTOPINData>(query, new { @Id }, commandType: CommandType.StoredProcedure); |
||||||
|
return entrada; |
||||||
|
} |
||||||
|
|
||||||
|
public async Task<Boolean> ValidatePIN(DTOPINUsuario data) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.PIN.Validate]"; |
||||||
|
using (var connection = _context.CreateConnection()) |
||||||
|
{ |
||||||
|
var result = await connection.QueryAsync<DTOPINUsuario>(query, new { @data.PIN, @data.Usuario }, commandType: CommandType.StoredProcedure); |
||||||
|
if (result.Count() == 0) return false; |
||||||
|
return true; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public async Task<DTOLogin> resetPassword(DTOResetPassword user) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Password.Reset]"; |
||||||
|
DTOLogin userFound = new DTOLogin(); |
||||||
|
using (var connection = _context.CreateConnection()) |
||||||
|
{ |
||||||
|
var usuarios = await connection.QueryAsync<DTOLogin>(query, new |
||||||
|
{ |
||||||
|
@user.PIN, |
||||||
|
@Contrasena = user.Contrasena, |
||||||
|
@HashContrasena = CryptDecrypt.Encrypt(user.Contrasena), |
||||||
|
}, commandType: CommandType.StoredProcedure); |
||||||
|
if (usuarios.Count() > 0) userFound = usuarios.First(); |
||||||
|
} |
||||||
|
return userFound; |
||||||
|
} |
||||||
|
|
||||||
|
/*public async Task<I1868CatResponsableCorreos> EmailAppend(I1868CatResponsableCorreos data) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Correo.Append]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<I1868CatResponsableCorreos>(query, new |
||||||
|
{ |
||||||
|
@id = data.id, |
||||||
|
@IdResponsable = data.IdResponsable, |
||||||
|
@Correo = data.Correo |
||||||
|
}, commandType: CommandType.StoredProcedure); |
||||||
|
return entrada.First(); |
||||||
|
} |
||||||
|
*/ |
||||||
|
/* public async Task<Boolean> UserAppend(int id, String Usuario) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Usuario.Append]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<I1868CatResponsableCorreos>(query, new |
||||||
|
{ |
||||||
|
@id, |
||||||
|
@Usuario |
||||||
|
}, commandType: CommandType.StoredProcedure); |
||||||
|
return true; |
||||||
|
} |
||||||
|
*//* |
||||||
|
public async Task<IEnumerable<I1868CatResponsableCorreos>> GetEmailsByResponsable(int id) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Correo.Get]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<I1868CatResponsableCorreos>(query, new { @id }, commandType: CommandType.StoredProcedure); |
||||||
|
return entrada; |
||||||
|
}*/ |
||||||
|
/* |
||||||
|
public async Task<IEnumerable<I1868CatResponsableCorreos>> ResponsablesEmailsGetAll() |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Correo.GetAll]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<I1868CatResponsableCorreos>(query, new { }, commandType: CommandType.StoredProcedure); |
||||||
|
return entrada; |
||||||
|
} |
||||||
|
*/ |
||||||
|
/* public async Task<DTONotificacionTransportista> GetEmailsByIdDetalle(int id) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Correo.GetByIdDetalle]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<DTONotificacionTransportista>(query, new |
||||||
|
{ |
||||||
|
@id |
||||||
|
}, |
||||||
|
commandType: CommandType.StoredProcedure); |
||||||
|
return entrada.FirstOrDefault(new DTONotificacionTransportista { Correos = "", Pedido = "", Factura = "", Direccion = "", ResponsableCruce = "" }); |
||||||
|
}*/ |
||||||
|
/* |
||||||
|
public async Task<DTONotificacionTransportista> GetEmailsByInvoice(int id) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Correo.GetByInvoice]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<DTONotificacionTransportista>(query, new |
||||||
|
{ |
||||||
|
@id |
||||||
|
}, |
||||||
|
commandType: CommandType.StoredProcedure); |
||||||
|
return entrada.FirstOrDefault(new DTONotificacionTransportista { Correos = "", Pedido = "", Factura = "", Direccion = "", ResponsableCruce = "" }); |
||||||
|
}*/ |
||||||
|
|
||||||
|
/* public async Task<Boolean> DeleteEmail(int id) |
||||||
|
{ |
||||||
|
var query = "[CatResponsables.Correo.Delete]"; |
||||||
|
using var connection = _context.CreateConnection(); |
||||||
|
var entrada = await connection.QueryAsync<I1868CatResponsableCorreos>(query, new { @id }, commandType: CommandType.StoredProcedure); |
||||||
|
return true; |
||||||
|
}*/ |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,10 @@ |
|||||||
|
using AdminusaBackend.Models; |
||||||
|
|
||||||
|
namespace AdminusaBackend.Contracts |
||||||
|
{ |
||||||
|
public interface IMenuRepository |
||||||
|
{ |
||||||
|
public Task<IEnumerable<Menu>> GetItemsMenu(Usuarios user); |
||||||
|
public Task<IEnumerable<Menu>> GetItemsMenuTransportista(); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,19 @@ |
|||||||
|
using AdminusaBackend.DTO; |
||||||
|
using AdminusaBackend.DTO.Usuario; |
||||||
|
using AdminusaBackend.Models; |
||||||
|
|
||||||
|
namespace AdminusaBackend.Contracts |
||||||
|
{ |
||||||
|
public interface IPerfilesRepository |
||||||
|
{ |
||||||
|
public Task<IEnumerable<Perfiles>> getPerfiles(); |
||||||
|
public Task<Perfiles> PerfilGetById(int id); |
||||||
|
public Task<IEnumerable<Menu>> getMenu(); |
||||||
|
public Task<IEnumerable<PerfilesMenu>> getPerfilMenuById(int id); |
||||||
|
public Task<IEnumerable<PerfilesMenu>> getAllPerfilesMenu(); |
||||||
|
public Task<IEnumerable<DTOPerfilCreate>> createPerfil(DTOPerfilCreate data); |
||||||
|
public Task<IEnumerable<Menu>> createItemMenu(Menu data); |
||||||
|
public Task<IEnumerable<DTOItemMenuPerfil>> asignaItemMenuPerfil(DTOItemMenuPerfil data); |
||||||
|
|
||||||
|
} |
||||||
|
} |
@ -0,0 +1,167 @@ |
|||||||
|
using AdminusaBackend.Contracts; |
||||||
|
using AdminusaBackend.DTO; |
||||||
|
using AdminusaBackend.DTO.Usuario; |
||||||
|
using AdminusaBackend.Models; |
||||||
|
using Microsoft.AspNetCore.Mvc; |
||||||
|
using Microsoft.AspNetCore.Authorization; |
||||||
|
|
||||||
|
namespace AdminusaBackend.Controllers |
||||||
|
{ |
||||||
|
[Authorize] |
||||||
|
[Route("api/[controller]")]
|
||||||
|
[ApiController] |
||||||
|
public class PerfilesController : ControllerBase |
||||||
|
{ |
||||||
|
public IConfiguration _configuration; |
||||||
|
private readonly IUsuariosRepository _usuariosRepo; |
||||||
|
private readonly IMenuRepository _menuRepo; |
||||||
|
private readonly IPerfilesRepository _perfilesRepo; |
||||||
|
public PerfilesController(IConfiguration config, IUsuariosRepository usuariosRepo, IMenuRepository menuRepo, IPerfilesRepository perfilesRepo) |
||||||
|
{ |
||||||
|
_configuration = config; |
||||||
|
_usuariosRepo = usuariosRepo; |
||||||
|
_menuRepo = menuRepo; |
||||||
|
_perfilesRepo = perfilesRepo; |
||||||
|
} |
||||||
|
|
||||||
|
[Route("getPerfiles")] |
||||||
|
[HttpGet] |
||||||
|
public async Task<IActionResult> GetPerfiles() |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var perfiles = await _perfilesRepo.getPerfiles(); |
||||||
|
return Ok(perfiles); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
[Route("getMenu")] |
||||||
|
[HttpGet] |
||||||
|
public async Task<IActionResult> GetMenu() |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var perfiles = await _perfilesRepo.getMenu(); |
||||||
|
return Ok(perfiles); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
[Route("asignaItemMenu")] |
||||||
|
[HttpPost] |
||||||
|
public async Task<IActionResult> asignaItemMenu(DTOItemMenuPerfil data) |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var perfiles = await _perfilesRepo.asignaItemMenuPerfil(data); |
||||||
|
return Ok(perfiles); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
[Route("getAllPerfilesMenu")] |
||||||
|
[HttpGet] |
||||||
|
public async Task<IActionResult> GetAllPerfilesMenu() |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var perfiles = await _perfilesRepo.getAllPerfilesMenu(); |
||||||
|
return Ok(perfiles); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
[Route("getPerfilMenuById")] |
||||||
|
[HttpGet] |
||||||
|
public async Task<IActionResult> GetPerfilMenuBuId(int id) |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var perfiles = await _perfilesRepo.getPerfilMenuById(id); |
||||||
|
return Ok(perfiles); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
[Route("createPerfil")] |
||||||
|
[HttpPost] |
||||||
|
public async Task<IActionResult> createPerfil(DTOPerfilCreate data) |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var perfiles = await _perfilesRepo.createPerfil(data); |
||||||
|
return Ok(perfiles); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
[Route("createItemMenu")] |
||||||
|
[HttpPost] |
||||||
|
public async Task<IActionResult> createItemMenu(Menu data) |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var result = await _perfilesRepo.createItemMenu(data); |
||||||
|
return Ok(result); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
/* |
||||||
|
[Route("getAllTransportistas")] |
||||||
|
[HttpGet] |
||||||
|
public async Task<IActionResult> GetAllTransportistas(int id) |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var transportistas = await _perfilesRepo.getAllTransportistas(id); |
||||||
|
return Ok(transportistas); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
[Route("getAllProveedores")] |
||||||
|
[HttpGet] |
||||||
|
public async Task<IActionResult> GetAllProveedores(int id) |
||||||
|
{ |
||||||
|
try |
||||||
|
{ |
||||||
|
var proveedores = await _perfilesRepo.getAllProveedores(id); |
||||||
|
return Ok(proveedores); |
||||||
|
} |
||||||
|
catch (Exception ex) |
||||||
|
{ |
||||||
|
return StatusCode(500, ex.Message); |
||||||
|
} |
||||||
|
}*/ |
||||||
|
|
||||||
|
} |
||||||
|
} |
@ -0,0 +1,33 @@ |
|||||||
|
using Microsoft.AspNetCore.Mvc; |
||||||
|
|
||||||
|
namespace AdminusaBackend.Controllers |
||||||
|
{ |
||||||
|
[ApiController] |
||||||
|
[Route("[controller]")]
|
||||||
|
public class WeatherForecastController : ControllerBase |
||||||
|
{ |
||||||
|
private static readonly string[] Summaries = new[] |
||||||
|
{ |
||||||
|
"Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" |
||||||
|
}; |
||||||
|
|
||||||
|
private readonly ILogger<WeatherForecastController> _logger; |
||||||
|
|
||||||
|
public WeatherForecastController(ILogger<WeatherForecastController> logger) |
||||||
|
{ |
||||||
|
_logger = logger; |
||||||
|
} |
||||||
|
|
||||||
|
[HttpGet(Name = "GetWeatherForecast")] |
||||||
|
public IEnumerable<WeatherForecast> Get() |
||||||
|
{ |
||||||
|
return Enumerable.Range(1, 5).Select(index => new WeatherForecast |
||||||
|
{ |
||||||
|
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)), |
||||||
|
TemperatureC = Random.Shared.Next(-20, 55), |
||||||
|
Summary = Summaries[Random.Shared.Next(Summaries.Length)] |
||||||
|
}) |
||||||
|
.ToArray(); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,11 @@ |
|||||||
|
|
||||||
|
namespace AdminusaBackend.DTO |
||||||
|
{ |
||||||
|
public class DTORolesAsignados |
||||||
|
{ |
||||||
|
public int Id { get; set; } = 0; |
||||||
|
public int Usuario { get; set; } = 0; |
||||||
|
public int Rol { get; set; } = 0; |
||||||
|
public Boolean Activo { get; set; } = false; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,8 @@ |
|||||||
|
namespace AdminusaBackend.DTO.Usuario |
||||||
|
{ |
||||||
|
public class DTOPINData |
||||||
|
{ |
||||||
|
public int PIN { get; set; } = 0!; |
||||||
|
public string Correo { get; set; } = string.Empty; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,8 @@ |
|||||||
|
namespace AdminusaBackend.DTO.Usuario |
||||||
|
{ |
||||||
|
public class DTOPINUsuario |
||||||
|
{ |
||||||
|
public int PIN { get; set; } = 0!; |
||||||
|
public string Usuario { get; set; } = string.Empty; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,8 @@ |
|||||||
|
namespace AdminusaBackend.DTO.Usuario |
||||||
|
{ |
||||||
|
public class DTOResetPassword |
||||||
|
{ |
||||||
|
public int PIN { get; set; } = 0; |
||||||
|
public string Contrasena { get; set; } = null!; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,14 @@ |
|||||||
|
namespace AdminusaBackend.DTO.Usuario |
||||||
|
{ |
||||||
|
public class DTOUsuario |
||||||
|
{ |
||||||
|
public int Id { get; set; } = 0; |
||||||
|
public string Usuario { get; set; } = null!; |
||||||
|
public string Nombre { get; set; } = null!; |
||||||
|
public string? Contrasena { get; set; } = null!; |
||||||
|
public string Correo { get; set; } = null!; |
||||||
|
public int TipoUsuario { get; set; } = 0; |
||||||
|
public int IdPerfil { get; set; } = 0; |
||||||
|
public string? FechaAlta { get; set; } = null!; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,8 @@ |
|||||||
|
namespace AdminusaBackend.DTO.Usuario; |
||||||
|
|
||||||
|
public class DTOUsuariosPerfilParecido |
||||||
|
{ |
||||||
|
public int IdUsuario { get; set; } = 0; |
||||||
|
public string Nombre { get; set; } = null!; |
||||||
|
public string Perfil { get; set; } = null!; |
||||||
|
} |
@ -0,0 +1,9 @@ |
|||||||
|
namespace AdminusaBackend.Models |
||||||
|
{ |
||||||
|
public class CatRoles |
||||||
|
{ |
||||||
|
public int Id { set; get; } |
||||||
|
public string Rol { set; get; } = null!; |
||||||
|
public byte Activo { set; get; } |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,11 @@ |
|||||||
|
namespace AdminusaBackend.Models |
||||||
|
{ |
||||||
|
public class Menu |
||||||
|
{ |
||||||
|
public int Id { get; set; } |
||||||
|
public string Descripcion { get; set; } = null!; |
||||||
|
public int PadreId { get; set; } |
||||||
|
public int Posicion { get; set; } |
||||||
|
public string Url { get; set; } = null!; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,16 @@ |
|||||||
|
namespace AdminusaBackend.Models |
||||||
|
{ |
||||||
|
public class PerfilesMenu |
||||||
|
{ |
||||||
|
public int id { set; get; } |
||||||
|
public int IdPerfil { set; get; } |
||||||
|
public int itemMenu { set; get; } |
||||||
|
public string Perfil { set; get; } = null!; |
||||||
|
public string Descripcion { set; get; } = null!; |
||||||
|
public int PadreId { set; get; } |
||||||
|
public int Posicion { set; get; } |
||||||
|
public string Url { set; get; } = null!; |
||||||
|
public int Habilitado { set; get; } |
||||||
|
public int Agrupado { set; get; } |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,164 @@ |
|||||||
|
|
||||||
|
using AdminusaBackend.Context; |
||||||
|
using AdminusaBackend.Catalogos; |
||||||
|
using AdminusaBackend.Contracts; |
||||||
|
using AdminusaBackend.Contracts.Catalogos; |
||||||
|
|
||||||
|
|
||||||
|
using AdminusaBackend.Repository; |
||||||
|
using Microsoft.OpenApi.Models; |
||||||
|
using Microsoft.AspNetCore.Authentication.JwtBearer; |
||||||
|
using Microsoft.IdentityModel.Tokens; |
||||||
|
|
||||||
|
using System.Text; |
||||||
|
using AdminusaBackend.Clientes.Contracts; |
||||||
|
using AdminusaBackend.Clientes.Repository; |
||||||
|
using AdminusaBackend.Repository.ExelServices; |
||||||
|
using AdminusaBackend.Repository.ExcelServices; |
||||||
|
using AdminusaBackend.Contracts.Reportes; |
||||||
|
using AdminusaBackend.Repository.Reportes; |
||||||
|
using AdminusaBackend.Repository.EcxelServices.ExelHourWorking; |
||||||
|
|
||||||
|
|
||||||
|
internal class Program |
||||||
|
{ |
||||||
|
private static void Main(string[] args) |
||||||
|
{ |
||||||
|
var builder = WebApplication.CreateBuilder(args); |
||||||
|
|
||||||
|
// Add services to the container. |
||||||
|
builder.Services.AddSingleton<DapperContext>(); |
||||||
|
builder.Services.AddScoped<IUsuariosRepository, UsuariosRepository>(); |
||||||
|
builder.Services.AddScoped<IMenuRepository, MenuRepository>(); |
||||||
|
builder.Services.AddScoped<IPerfilesRepository, PerfilesRepository>(); |
||||||
|
builder.Services.AddScoped<ICatResponsablesRepository, CatResponsablesRepository>(); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Reportes |
||||||
|
builder.Services.AddScoped<IRptRepository, ReportesRepository>(); |
||||||
|
|
||||||
|
// Servivios Exel |
||||||
|
builder.Services.AddScoped<ExcelRepository>(); |
||||||
|
builder.Services.AddScoped<ExcelRepositoryPrecta>(); |
||||||
|
builder.Services.AddScoped<ExelHours>(); |
||||||
|
//Catalogos |
||||||
|
builder.Services.AddScoped<ICatChequesPrecuenta, CatRelacionPrecuentaCheques>(); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
builder.Services.AddControllers(); |
||||||
|
|
||||||
|
/* builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(options => |
||||||
|
{ |
||||||
|
options.RequireHttpsMetadata = false; |
||||||
|
options.SaveToken = true; |
||||||
|
options.TokenValidationParameters = new TokenValidationParameters() |
||||||
|
{ |
||||||
|
ValidateIssuer = true, |
||||||
|
ValidateAudience = true, |
||||||
|
ValidAudience = builder.Configuration["Jwt:Audience"], |
||||||
|
ValidIssuer = builder.Configuration["Jwt:Issuer"], |
||||||
|
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(builder.Configuration["Jwt:Key"])) |
||||||
|
}; |
||||||
|
});*/ |
||||||
|
|
||||||
|
|
||||||
|
builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) |
||||||
|
.AddJwtBearer(options => |
||||||
|
{ |
||||||
|
options.TokenValidationParameters = new TokenValidationParameters |
||||||
|
{ |
||||||
|
ValidateIssuer = true, |
||||||
|
ValidateAudience = true, |
||||||
|
ValidateLifetime = true, |
||||||
|
ValidateIssuerSigningKey = true, |
||||||
|
ValidIssuer = builder.Configuration["Jwt:Issuer"], |
||||||
|
ValidAudience = builder.Configuration["Jwt:Audience"], |
||||||
|
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(builder.Configuration["Jwt:Key"])) |
||||||
|
}; |
||||||
|
}); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var key = builder.Configuration["Jwt:Key"]; |
||||||
|
Console.WriteLine(key); |
||||||
|
|
||||||
|
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle |
||||||
|
builder.Services.AddEndpointsApiExplorer(); |
||||||
|
|
||||||
|
builder.Services.AddSwaggerGen(c => |
||||||
|
{ |
||||||
|
c.SwaggerDoc("v1", new OpenApiInfo |
||||||
|
{ |
||||||
|
Title = "Adminusa Backend", |
||||||
|
Version = "v1" |
||||||
|
}); |
||||||
|
c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme() |
||||||
|
{ |
||||||
|
Name = "Authorization", |
||||||
|
Type = SecuritySchemeType.ApiKey, |
||||||
|
Scheme = "Bearer", |
||||||
|
BearerFormat = "JWT", |
||||||
|
In = ParameterLocation.Header, |
||||||
|
Description = "JWT Authorization header using the Bearer scheme. \r\n\r\n Enter 'Bearer' [space] and then your token in the text input below.\r\n\r\nExample: \"Bearer 1safsfsdfdfd\"", |
||||||
|
}); |
||||||
|
c.AddSecurityRequirement(new OpenApiSecurityRequirement { |
||||||
|
{ |
||||||
|
new OpenApiSecurityScheme { |
||||||
|
Reference = new OpenApiReference { |
||||||
|
Type = ReferenceType.SecurityScheme, |
||||||
|
Id = "Bearer" |
||||||
|
} |
||||||
|
}, |
||||||
|
new string[] {} |
||||||
|
} |
||||||
|
}); |
||||||
|
}); |
||||||
|
|
||||||
|
//services cors |
||||||
|
builder.Services.AddCors(p => p.AddPolicy("corsapp", builder => |
||||||
|
{ |
||||||
|
if (Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT") == "Development") |
||||||
|
{ |
||||||
|
builder.WithOrigins("http://localhost:3000", |
||||||
|
"http://localhost:5263", |
||||||
|
"https://localhost:5020").AllowAnyMethod().AllowAnyHeader(); |
||||||
|
} |
||||||
|
else if (Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT") == "Staging") |
||||||
|
{ |
||||||
|
builder.WithOrigins( |
||||||
|
|
||||||
|
).AllowAnyMethod().AllowAnyHeader(); |
||||||
|
} |
||||||
|
else if (Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT") == "Production") |
||||||
|
{ |
||||||
|
builder.WithOrigins( |
||||||
|
|
||||||
|
).AllowAnyMethod().AllowAnyHeader(); |
||||||
|
} |
||||||
|
})); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var app = builder.Build(); |
||||||
|
|
||||||
|
// Configure the HTTP request pipeline. |
||||||
|
if (app.Environment.IsDevelopment()) |
||||||
|
{ |
||||||
|
app.UseSwagger(); |
||||||
|
app.UseSwaggerUI(); |
||||||
|
} |
||||||
|
|
||||||
|
app.UseHttpsRedirection(); |
||||||
|
app.UseCors("corsapp"); |
||||||
|
app.UseAuthorization(); |
||||||
|
|
||||||
|
app.MapControllers(); |
||||||
|
|
||||||
|
app.Run(); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,52 @@ |
|||||||
|
using System.Net.Mail; |
||||||
|
using System.Text; |
||||||
|
using Newtonsoft.Json; |
||||||
|
using AdminusaBackend.Clientes.Email; |
||||||
|
|
||||||
|
namespace AdminusaBackend.Services.Utilerias |
||||||
|
{ |
||||||
|
public class Utilerias |
||||||
|
{ |
||||||
|
private IConfiguration _config; |
||||||
|
|
||||||
|
public Utilerias(IConfiguration config) |
||||||
|
{ |
||||||
|
_config = config; |
||||||
|
} |
||||||
|
|
||||||
|
public static string Base64Encode(string plainText) |
||||||
|
{ |
||||||
|
var plainTextBytes = System.Text.Encoding.UTF8.GetBytes(plainText); |
||||||
|
return System.Convert.ToBase64String(plainTextBytes); |
||||||
|
} |
||||||
|
|
||||||
|
public async Task<Boolean> SendEmail(DTOSendEmail data) |
||||||
|
{ |
||||||
|
using var client = new HttpClient(); |
||||||
|
string EmailAPI = _config.GetValue<string>("EmailAPI"); |
||||||
|
client.BaseAddress = new Uri(EmailAPI); |
||||||
|
HttpContent body = new StringContent(JsonConvert.SerializeObject(data), Encoding.UTF8, "application/json"); |
||||||
|
var response = client.PostAsync("SendEmail", body).Result; |
||||||
|
if (response.IsSuccessStatusCode) |
||||||
|
{ |
||||||
|
var content = await response.Content.ReadAsStringAsync(); |
||||||
|
} |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
public async Task<Boolean> SendEmailBcc(DTOSendEmailBcc data) |
||||||
|
{ |
||||||
|
using var client = new HttpClient(); |
||||||
|
string EmailAPI = _config.GetValue<string>("EmailAPI"); |
||||||
|
client.BaseAddress = new Uri(EmailAPI); |
||||||
|
HttpContent body = new StringContent(JsonConvert.SerializeObject(data), Encoding.UTF8, "application/json"); |
||||||
|
var response = client.PostAsync("SendEmailBcc", body).Result; |
||||||
|
if (response.IsSuccessStatusCode) |
||||||
|
{ |
||||||
|
var content = await response.Content.ReadAsStringAsync(); |
||||||
|
} |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
} |
@ -0,0 +1,13 @@ |
|||||||
|
namespace AdminusaBackend |
||||||
|
{ |
||||||
|
public class WeatherForecast |
||||||
|
{ |
||||||
|
public DateOnly Date { get; set; } |
||||||
|
|
||||||
|
public int TemperatureC { get; set; } |
||||||
|
|
||||||
|
public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); |
||||||
|
|
||||||
|
public string? Summary { get; set; } |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,26 @@ |
|||||||
|
{ |
||||||
|
"ConnectionStrings": { |
||||||
|
"SqlConnection": "server=.; database=Adminusa; Integrated Security=true;TrustServerCertificate=True;Command Timeout=360" |
||||||
|
}, |
||||||
|
"Logging": { |
||||||
|
"LogLevel": { |
||||||
|
"Default": "Information", |
||||||
|
"Microsoft.AspNetCore": "Warning" |
||||||
|
} |
||||||
|
}, |
||||||
|
"DefaultUser": { |
||||||
|
"Password": "Bienvenido123!" |
||||||
|
}, |
||||||
|
"EmailServer": "gemcousa-com.mail.protection.outlook.com", |
||||||
|
"EmailPort": 25, |
||||||
|
"EmailPassword": "N#16rm87", |
||||||
|
"EmailAccount": "noreply@gemcousa.com", |
||||||
|
"pathArchivoElectronico": "C:\\downs\\ArchivoElectronicoSIR\\www.gemcousa.com\\SIR-GEMCO\\DOCS-SIR\\", |
||||||
|
"pathTemp": "C:\\downs\\temp\\", |
||||||
|
"Allfiles": "C:\\data\\", |
||||||
|
"Twilio_SID": "AC59baecf4872fa93e3c315180c96b4cc2", |
||||||
|
"Twilio_Token":"5416fe0460e9afaf5400697def878c04", |
||||||
|
"NodeAPI" : "https://nodeapi.gemcousa.mx/", |
||||||
|
|
||||||
|
"EmailAPI" : "https://pyapi.gemcousa.mx/" |
||||||
|
} |
@ -0,0 +1,25 @@ |
|||||||
|
{ |
||||||
|
"ConnectionStrings": { |
||||||
|
"SqlConnection": "server=.,14033;database=Adminusa;User Id=sa;Password=T3st1n93nv4Qa;TrustServerCertificate=True;" |
||||||
|
}, |
||||||
|
"Logging": { |
||||||
|
"LogLevel": { |
||||||
|
"Default": "Information", |
||||||
|
"Microsoft.AspNetCore": "Warning" |
||||||
|
} |
||||||
|
}, |
||||||
|
"DefaultUser": { |
||||||
|
"Password": "Bienvenido123!" |
||||||
|
}, |
||||||
|
"EmailServer": "gemcousa-com.mail.protection.outlook.com", |
||||||
|
"EmailPort": 25, |
||||||
|
"EmailPassword": "N#16rm87", |
||||||
|
"EmailAccount": "noreply@gemcousa.com", |
||||||
|
"pathArchivoElectronico": "D:\\data\\ArchivoElectronicoSIR\\www.gemcousa.com\\SIR-GEMCO\\DOCS-SIR\\", |
||||||
|
"pathTemp": "D:\\data\\temp\\", |
||||||
|
"AllFiles": "D:\\data\\", |
||||||
|
"Twilio_SID": "AC59baecf4872fa93e3c315180c96b4cc2", |
||||||
|
"Twilio_Token":"5416fe0460e9afaf5400697def878c04", |
||||||
|
"NodeAPI" : "https://nodeapi.gemcousa.mx/", |
||||||
|
"EmailAPI" : "https://pyapi.gemcousa.mx/" |
||||||
|
} |
@ -0,0 +1,36 @@ |
|||||||
|
{ |
||||||
|
"ConnectionStrings": { |
||||||
|
"SqlConnection": "server=.; database=Adminusa;User Id=sa;Password=Chispa10192;TrustServerCertificate=True;" |
||||||
|
}, |
||||||
|
"DefaultUser": { |
||||||
|
"Password": "Bienvenido123!" |
||||||
|
}, |
||||||
|
"Logging": { |
||||||
|
"LogLevel": { |
||||||
|
"Default": "Information", |
||||||
|
"Microsoft.AspNetCore": "Warning" |
||||||
|
} |
||||||
|
}, |
||||||
|
"AllowedHosts": "*", |
||||||
|
"Jwt": { |
||||||
|
"Key": "GFE1j5KLolZHDK9iKw5xK17Rz4ty7BlbXgnjPL6dNwVCCNQWU8uRGVyZmAZPWZMs4XX0phFMS849p25Lrwsn31Bi4J7GT2HQ9xeWlJLarJPDyoRZZvChpovwgrquQ9Pd", |
||||||
|
"Issuer": "JWTAuthenticationServer", |
||||||
|
"Audience": "JWTServicePostmanClient", |
||||||
|
"Subject": "JWTServiceAccessToken", |
||||||
|
"ExpirationHours": 4 |
||||||
|
}, |
||||||
|
"EmailServer": "gemcousa-com.mail.protection.outlook.com", |
||||||
|
"EmailPort": 25, |
||||||
|
"EmailPassword": "N#16rm87", |
||||||
|
"EmailAccount": "noreply@gemcousa.com", |
||||||
|
"pathArchivoElectronico": "D:\\data\\ArchivoElectronicoSIR\\www.gemcousa.com\\SIR-GEMCO\\DOCS-SIR\\", |
||||||
|
"pathTemp": "D:\\data\\temp\\", |
||||||
|
"pathFotosBodega": "D:\\data\\Bodega\\Fotos\\", |
||||||
|
"pathZipCorresponsales": "D:\\data\\Corresponsales\\Zips\\", |
||||||
|
"CorresponsalesFilePath": "D:\\data\\Corresponsales\\", |
||||||
|
"AllFiles": "D:\\data\\", |
||||||
|
"Twilio_SID": "AC59baecf4872fa93e3c315180c96b4cc2", |
||||||
|
"Twilio_Token":"5416fe0460e9afaf5400697def878c04", |
||||||
|
"NodeAPI" : "https://nodeapi.gemcousa.mx/", |
||||||
|
"EmailAPI" : "https://pyapi.gemcousa.mx/" |
||||||
|
} |
Loading…
Reference in new issue