fangdawei
1 year ago
1417 changed files with 1687 additions and 342711 deletions
@ -1 +0,0 @@ |
|||
**/wwwroot/libs/** linguist-vendored |
@ -1,262 +0,0 @@ |
|||
## Ignore Visual Studio temporary files, build results, and |
|||
## files generated by popular Visual Studio add-ons. |
|||
|
|||
# User-specific files |
|||
*.suo |
|||
*.user |
|||
*.userosscache |
|||
*.sln.docstates |
|||
|
|||
# User-specific files (MonoDevelop/Xamarin Studio) |
|||
*.userprefs |
|||
|
|||
# Build results |
|||
[Dd]ebug/ |
|||
[Dd]ebugPublic/ |
|||
[Rr]elease/ |
|||
[Rr]eleases/ |
|||
x64/ |
|||
x86/ |
|||
bld/ |
|||
[Bb]in/ |
|||
[Oo]bj/ |
|||
[Ll]og/ |
|||
|
|||
# Visual Studio 2015 cache/options directory |
|||
.vs/ |
|||
# Uncomment if you have tasks that create the project's static files in wwwroot |
|||
#wwwroot/ |
|||
|
|||
# MSTest test Results |
|||
[Tt]est[Rr]esult*/ |
|||
[Bb]uild[Ll]og.* |
|||
|
|||
# NUNIT |
|||
*.VisualState.xml |
|||
TestResult.xml |
|||
|
|||
# Build Results of an ATL Project |
|||
[Dd]ebugPS/ |
|||
[Rr]eleasePS/ |
|||
dlldata.c |
|||
|
|||
# DNX |
|||
project.lock.json |
|||
artifacts/ |
|||
|
|||
*_i.c |
|||
*_p.c |
|||
*_i.h |
|||
*.ilk |
|||
*.meta |
|||
*.obj |
|||
*.pch |
|||
*.pdb |
|||
*.pgc |
|||
*.pgd |
|||
*.rsp |
|||
*.sbr |
|||
*.tlb |
|||
*.tli |
|||
*.tlh |
|||
*.tmp |
|||
*.tmp_proj |
|||
*.log |
|||
*.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 |
|||
|
|||
# TFS 2012 Local Workspace |
|||
$tf/ |
|||
|
|||
# Guidance Automation Toolkit |
|||
*.gpState |
|||
|
|||
# ReSharper is a .NET coding add-in |
|||
_ReSharper*/ |
|||
*.[Rr]e[Ss]harper |
|||
*.DotSettings.user |
|||
|
|||
# JustCode is a .NET coding add-in |
|||
.JustCode |
|||
|
|||
# TeamCity is a build add-in |
|||
_TeamCity* |
|||
|
|||
# DotCover is a Code Coverage Tool |
|||
*.dotCover |
|||
|
|||
# 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 |
|||
# TODO: 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 |
|||
# The packages folder can be ignored because of Package Restore |
|||
**/packages/* |
|||
# except build/, which is used as an MSBuild target. |
|||
!**/packages/build/ |
|||
# Uncomment if necessary however generally it will be regenerated when needed |
|||
#!**/packages/repositories.config |
|||
# NuGet v3's project.json files produces more ignoreable 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 |
|||
|
|||
# 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 |
|||
*.pfx |
|||
*.publishsettings |
|||
node_modules/ |
|||
orleans.codegen.cs |
|||
|
|||
# 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 |
|||
|
|||
# SQL Server files |
|||
*.mdf |
|||
*.ldf |
|||
|
|||
# Business Intelligence projects |
|||
*.rdl.data |
|||
*.bim.layout |
|||
*.bim_*.settings |
|||
|
|||
# Microsoft Fakes |
|||
FakesAssemblies/ |
|||
|
|||
# GhostDoc plugin setting file |
|||
*.GhostDoc.xml |
|||
|
|||
# Node.js Tools for Visual Studio |
|||
.ntvs_analysis.dat |
|||
|
|||
# Visual Studio 6 build log |
|||
*.plg |
|||
|
|||
# Visual Studio 6 workspace options file |
|||
*.opt |
|||
|
|||
# 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/ |
|||
|
|||
# JetBrains Rider |
|||
.idea/ |
|||
*.sln.iml |
|||
|
|||
# NewJit |
|||
src/WY.NewJit.Web/Logs/* |
|||
src/WY.NewJit.Web.Host/Logs/* |
|||
src/WY.NewJit.IdentityServer/Logs/* |
|||
src/WY.NewJit.HttpApi.Host/Logs/* |
|||
src/WY.NewJit.HttpApi.HostWithIds/Logs/* |
|||
src/WY.NewJit.DbMigrator/Logs/* |
|||
src/WY.NewJit.Blazor.Server/Logs/* |
|||
src/WY.NewJit.Blazor.Server.Tiered/Logs/* |
@ -1,5 +0,0 @@ |
|||
{ |
|||
"singleQuote": true, |
|||
"useTabs": false, |
|||
"tabWidth": 4 |
|||
} |
@ -1,6 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<configuration> |
|||
<packageSources> |
|||
<add key="BlazoriseMyGet" value="https://www.myget.org/F/blazorise/api/v3/index.json" /> |
|||
</packageSources> |
|||
</configuration> |
@ -1,137 +0,0 @@ |
|||
|
|||
Microsoft Visual Studio Solution File, Format Version 12.00 |
|||
# Visual Studio Version 16 |
|||
VisualStudioVersion = 16.0.29020.237 |
|||
MinimumVisualStudioVersion = 10.0.40219.1 |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Domain", "src\WY.NewJit.Domain\WY.NewJit.Domain.csproj", "{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Application", "src\WY.NewJit.Application\WY.NewJit.Application.csproj", "{1A94A50E-06DC-43C1-80B5-B662820EC3EB}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.EntityFrameworkCore", "src\WY.NewJit.EntityFrameworkCore\WY.NewJit.EntityFrameworkCore.csproj", "{C956DD76-69C8-4A9C-83EA-D17DF83340FD}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Web", "src\WY.NewJit.Web\WY.NewJit.Web.csproj", "{068855E8-9240-4F1A-910B-CF825794513B}" |
|||
EndProject |
|||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{CA9AC87F-097E-4F15-8393-4BC07735A5B0}" |
|||
EndProject |
|||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{04DBDB01-70F4-4E06-B468-8F87850B22BE}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Application.Tests", "test\WY.NewJit.Application.Tests\WY.NewJit.Application.Tests.csproj", "{50B2631D-129C-47B3-A587-029CCD6099BC}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Web.Tests", "test\WY.NewJit.Web.Tests\WY.NewJit.Web.Tests.csproj", "{5F1B28C6-8D0C-4155-92D0-252F7EA5F674}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.EntityFrameworkCore.DbMigrations", "src\WY.NewJit.EntityFrameworkCore.DbMigrations\WY.NewJit.EntityFrameworkCore.DbMigrations.csproj", "{0372FA84-C517-4EB3-9A9F-B9ACAC0CA5E0}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Domain.Shared", "src\WY.NewJit.Domain.Shared\WY.NewJit.Domain.Shared.csproj", "{42F719ED-8413-4895-B5B4-5AB56079BC66}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Application.Contracts", "src\WY.NewJit.Application.Contracts\WY.NewJit.Application.Contracts.csproj", "{520659C8-C734-4298-A3DA-B539DB9DFC0B}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.HttpApi", "src\WY.NewJit.HttpApi\WY.NewJit.HttpApi.csproj", "{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.HttpApi.Client", "src\WY.NewJit.HttpApi.Client\WY.NewJit.HttpApi.Client.csproj", "{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.EntityFrameworkCore.Tests", "test\WY.NewJit.EntityFrameworkCore.Tests\WY.NewJit.EntityFrameworkCore.Tests.csproj", "{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.TestBase", "test\WY.NewJit.TestBase\WY.NewJit.TestBase.csproj", "{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.Domain.Tests", "test\WY.NewJit.Domain.Tests\WY.NewJit.Domain.Tests.csproj", "{E512F4D9-9375-480F-A2F6-A46509F9D824}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.HttpApi.Client.ConsoleTestApp", "test\WY.NewJit.HttpApi.Client.ConsoleTestApp\WY.NewJit.HttpApi.Client.ConsoleTestApp.csproj", "{EF480016-9127-4916-8735-D2466BDBC582}" |
|||
EndProject |
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WY.NewJit.DbMigrator", "src\WY.NewJit.DbMigrator\WY.NewJit.DbMigrator.csproj", "{AA94D832-1CCC-4715-95A9-A483F23A1A5D}" |
|||
EndProject |
|||
Global |
|||
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
|||
Debug|Any CPU = Debug|Any CPU |
|||
Release|Any CPU = Release|Any CPU |
|||
EndGlobalSection |
|||
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
|||
{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{068855E8-9240-4F1A-910B-CF825794513B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{068855E8-9240-4F1A-910B-CF825794513B}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{068855E8-9240-4F1A-910B-CF825794513B}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{068855E8-9240-4F1A-910B-CF825794513B}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{50B2631D-129C-47B3-A587-029CCD6099BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{50B2631D-129C-47B3-A587-029CCD6099BC}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{50B2631D-129C-47B3-A587-029CCD6099BC}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{50B2631D-129C-47B3-A587-029CCD6099BC}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{5F1B28C6-8D0C-4155-92D0-252F7EA5F674}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{5F1B28C6-8D0C-4155-92D0-252F7EA5F674}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{5F1B28C6-8D0C-4155-92D0-252F7EA5F674}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{5F1B28C6-8D0C-4155-92D0-252F7EA5F674}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{0372FA84-C517-4EB3-9A9F-B9ACAC0CA5E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{0372FA84-C517-4EB3-9A9F-B9ACAC0CA5E0}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{0372FA84-C517-4EB3-9A9F-B9ACAC0CA5E0}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{0372FA84-C517-4EB3-9A9F-B9ACAC0CA5E0}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{42F719ED-8413-4895-B5B4-5AB56079BC66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{42F719ED-8413-4895-B5B4-5AB56079BC66}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{42F719ED-8413-4895-B5B4-5AB56079BC66}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{42F719ED-8413-4895-B5B4-5AB56079BC66}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{520659C8-C734-4298-A3DA-B539DB9DFC0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{520659C8-C734-4298-A3DA-B539DB9DFC0B}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{520659C8-C734-4298-A3DA-B539DB9DFC0B}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{520659C8-C734-4298-A3DA-B539DB9DFC0B}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{E512F4D9-9375-480F-A2F6-A46509F9D824}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{E512F4D9-9375-480F-A2F6-A46509F9D824}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{E512F4D9-9375-480F-A2F6-A46509F9D824}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{E512F4D9-9375-480F-A2F6-A46509F9D824}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{EF480016-9127-4916-8735-D2466BDBC582}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{EF480016-9127-4916-8735-D2466BDBC582}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{EF480016-9127-4916-8735-D2466BDBC582}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{EF480016-9127-4916-8735-D2466BDBC582}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
{AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|||
{AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|||
{AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|||
{AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Release|Any CPU.Build.0 = Release|Any CPU |
|||
EndGlobalSection |
|||
GlobalSection(SolutionProperties) = preSolution |
|||
HideSolutionNode = FALSE |
|||
EndGlobalSection |
|||
GlobalSection(NestedProjects) = preSolution |
|||
{554AD327-6DBA-4F8F-96F8-81CE7A0C863F} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{1A94A50E-06DC-43C1-80B5-B662820EC3EB} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{C956DD76-69C8-4A9C-83EA-D17DF83340FD} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{068855E8-9240-4F1A-910B-CF825794513B} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{50B2631D-129C-47B3-A587-029CCD6099BC} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} |
|||
{5F1B28C6-8D0C-4155-92D0-252F7EA5F674} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} |
|||
{0372FA84-C517-4EB3-9A9F-B9ACAC0CA5E0} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{42F719ED-8413-4895-B5B4-5AB56079BC66} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{520659C8-C734-4298-A3DA-B539DB9DFC0B} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{4164BDF7-F527-4E85-9CE6-E3C2D7426A27} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{3B5A0094-670D-4BB1-BFDD-61B88A8773DC} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} |
|||
{91853F21-9CD9-4132-BC29-A7D5D84FFFE7} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} |
|||
{E512F4D9-9375-480F-A2F6-A46509F9D824} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} |
|||
{EF480016-9127-4916-8735-D2466BDBC582} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} |
|||
{AA94D832-1CCC-4715-95A9-A483F23A1A5D} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} |
|||
EndGlobalSection |
|||
GlobalSection(ExtensibilityGlobals) = postSolution |
|||
SolutionGuid = {28315BFD-90E7-4E14-A2EA-F3D23AF4126F} |
|||
EndGlobalSection |
|||
EndGlobal |
@ -1,23 +0,0 @@ |
|||
<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"> |
|||
<s:Boolean x:Key="/Default/CodeEditing/Intellisense/CodeCompletion/IntelliSenseCompletingCharacters/CSharpCompletingCharacters/UpgradedFromVSSettings/@EntryValue">True</s:Boolean> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceDoWhileStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceFixedStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceForeachStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceForStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceIfStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceLockStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceUsingStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=EnforceWhileStatementBraces/@EntryIndexedValue">WARNING</s:String> |
|||
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_FOR/@EntryValue">Required</s:String> |
|||
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_FOREACH/@EntryValue">Required</s:String> |
|||
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_IFELSE/@EntryValue">Required</s:String> |
|||
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_FOR_WHILE/@EntryValue">Required</s:String> |
|||
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/BRACES_REDUNDANT/@EntryValue">False</s:Boolean> |
|||
<s:Boolean x:Key="/Default/CodeStyle/Generate/=Implementations/@KeyIndexDefined">True</s:Boolean> |
|||
<s:String x:Key="/Default/CodeStyle/Generate/=Implementations/Options/=Async/@EntryIndexedValue">False</s:String> |
|||
<s:String x:Key="/Default/CodeStyle/Generate/=Implementations/Options/=Mutable/@EntryIndexedValue">False</s:String> |
|||
<s:Boolean x:Key="/Default/CodeStyle/Generate/=Overrides/@KeyIndexDefined">True</s:Boolean> |
|||
<s:String x:Key="/Default/CodeStyle/Generate/=Overrides/Options/=Async/@EntryIndexedValue">False</s:String> |
|||
<s:String x:Key="/Default/CodeStyle/Generate/=Overrides/Options/=Mutable/@EntryIndexedValue">False</s:String> |
|||
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=SQL/@EntryIndexedValue">SQL</s:String> |
|||
</wpf:ResourceDictionary> |
@ -1,8 +0,0 @@ |
|||
<Project> |
|||
<PropertyGroup> |
|||
<LangVersion>latest</LangVersion> |
|||
<Version>1.0.0</Version> |
|||
<NoWarn>$(NoWarn);CS1591;CS0436</NoWarn> |
|||
<AbpProjectType>app</AbpProjectType> |
|||
</PropertyGroup> |
|||
</Project> |
@ -1,16 +0,0 @@ |
|||
using System; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.Books |
|||
{ |
|||
public class BookDto : EntityDto<Guid> |
|||
{ |
|||
public string Name { get; set; } |
|||
|
|||
public BookType Type { get; set; } |
|||
|
|||
public DateTime PublishDate { get; set; } |
|||
|
|||
public float Price { get; set; } |
|||
} |
|||
} |
@ -1,22 +0,0 @@ |
|||
using System; |
|||
using System.ComponentModel.DataAnnotations; |
|||
|
|||
namespace WY.NewJit.Books |
|||
{ |
|||
public class CreateUpdateBookDto |
|||
{ |
|||
[Required] |
|||
[StringLength(128)] |
|||
public string Name { get; set; } |
|||
|
|||
[Required] |
|||
public BookType Type { get; set; } = BookType.Undefined; |
|||
|
|||
[Required] |
|||
[DataType(DataType.Date)] |
|||
public DateTime PublishDate { get; set; } = DateTime.Now; |
|||
|
|||
[Required] |
|||
public float Price { get; set; } |
|||
} |
|||
} |
@ -1,16 +0,0 @@ |
|||
using System; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
|
|||
namespace WY.NewJit.Books |
|||
{ |
|||
public interface IBookAppService : |
|||
ICrudAppService< //定义了常见的CRUD方法:GetAsync,GetListAsync,CreateAsync,UpdateAsync和DeleteAsync
|
|||
BookDto, //Used to show books
|
|||
Guid, //Primary key of the book entity
|
|||
PagedAndSortedResultRequestDto, //Used for paging/sorting
|
|||
CreateUpdateBookDto> //Used to create/update a book
|
|||
{ |
|||
|
|||
} |
|||
} |
@ -1,40 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class AssemblyCfgErp2PartDto : EntityDto |
|||
{ |
|||
/// <summary>
|
|||
/// Erp总成ID
|
|||
/// </summary>
|
|||
public Guid ErpAssemblyId { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件ID
|
|||
/// </summary>
|
|||
public Guid PartId { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 是否Key件
|
|||
/// </summary>
|
|||
public bool IsKey { get; set; } |
|||
|
|||
} |
|||
} |
|||
|
@ -1,49 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// ERP总成
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "总成信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class AssemblyCfgErpDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// ERP总成编码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "ERP总成编码")] |
|||
[ImporterHeader(Name = "ERP总成编码")] |
|||
public string ErpAssemblyCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// ERP总成名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "ERP总成名称")] |
|||
[ImporterHeader(Name = "ERP总成名称")] |
|||
public string ErpAssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// ERP总成版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "ERP总成版本")] |
|||
[ImporterHeader(Name = "ERP总成版本")] |
|||
public int ErpAssemblyVersion { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型")] |
|||
[ImporterHeader(Name = "车型")] |
|||
public virtual string VehicleModel { get; set; } |
|||
|
|||
|
|||
public List<AssemblyCfgPartDto> Details { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,45 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 总成和零件关系表
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "ERP总成-结算件子表", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class AssemblyCfgPartDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件代码")] |
|||
[ImporterHeader(Name = "客户零件代码")] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件数量")] |
|||
[ImporterHeader(Name = "客户零件数量")] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 是否Key件
|
|||
/// </summary>
|
|||
public bool IsKey { get; set; } |
|||
|
|||
} |
|||
} |
|||
|
@ -1,40 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class AssemblyCfgVehicle2PartDto : EntityDto |
|||
{ |
|||
/// <summary>
|
|||
/// 整车总成ID
|
|||
/// </summary>
|
|||
public Guid VehicleAssemblyId { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件ID
|
|||
/// </summary>
|
|||
public Guid PartId { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 是否Key件
|
|||
/// </summary>
|
|||
public bool IsKey { get; set; } |
|||
|
|||
} |
|||
} |
|||
|
@ -1,46 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateAssemblyCfgErpDto |
|||
{ |
|||
/// <summary>
|
|||
/// ERP总成编码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(20)] |
|||
public string ErpAssemblyCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// ERP总成名称
|
|||
/// </summary>
|
|||
[StringLength(50)] |
|||
public string ErpAssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型
|
|||
/// </summary>
|
|||
[StringLength(20)] |
|||
public virtual string VehicleModel { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 是否覆盖上一个版本
|
|||
/// </summary>
|
|||
public bool IsCover { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上一个版本的ERP总成ID
|
|||
/// </summary>
|
|||
public Guid? PreviousVersionId { get; set; } |
|||
|
|||
public List<CreateUpdateAssemblyCfgPartDto> Details { get; set; } |
|||
|
|||
|
|||
} |
|||
} |
@ -1,37 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateAssemblyCfgPartDto |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[Required] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[StringLength(200)] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 是否Key件
|
|||
/// </summary>
|
|||
public bool IsKey { get; set; } |
|||
|
|||
} |
|||
|
|||
} |
@ -1,27 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class QueryAssemblyCfgErpDto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// ERP总成编码
|
|||
/// </summary>
|
|||
public string ErpAssemblyCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成名称
|
|||
/// </summary>
|
|||
public string ErpAssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
} |
|||
} |
@ -1,73 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
public interface IAssemblyCfgErpAppService : IApplicationService |
|||
{ |
|||
#region 总成和产品关系
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="assemblyCfgId">主键</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<AssemblyCfgErpDto>> GetErpAssemblyListAsync(QueryAssemblyCfgErpDto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<AssemblyCfgErpDto>> GetErpAssemblyAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateErpAssemblyAsync(CreateUpdateAssemblyCfgErpDto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateErpAssemblyAsync(Guid id, CreateUpdateAssemblyCfgErpDto input); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteErpAssemblyAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出ERP总成
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
Task<ObjectResultDto<string>> ExportErpAssemblyAsync(QueryAssemblyCfgErpDto input); |
|||
|
|||
/// <summary>
|
|||
/// 校验ERP总成
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
//Task<ObjectResultDto> CheckErpAssembly(CreateUpdateAssemblyCfgErpDto input);
|
|||
|
|||
/// <summary>
|
|||
/// 系统初始化时使用,去掉重复的ERP总成
|
|||
/// </summary>
|
|||
/// <param name="takeCount"></param>
|
|||
/// <returns></returns>
|
|||
Task<ObjectResultDto> RemoveRepeatErpAssembly(int takeCount); |
|||
|
|||
|
|||
#endregion
|
|||
} |
|||
} |
@ -1,51 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
public interface IAssemblyCfgPartAppService |
|||
{ |
|||
#region 产品和零件关系
|
|||
|
|||
/// 取实体列表
|
|||
/// </summary>
|
|||
/// <param name="assemblyProductID">主键</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<ListResultDto<AssemblyCfgPartDto>> GetPartListAsync(Guid assemblyProductID); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<AssemblyCfgPartDto>> GetPartAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreatePartAsync(CreateUpdateAssemblyCfgPartDto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdatePartAsync(Guid id, CreateUpdateAssemblyCfgPartDto input); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeletePartAsync(string id); |
|||
|
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,17 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
|
|||
namespace WY.NewJit.MsgBaseData.AssemblyCfgs |
|||
{ |
|||
public interface IAssemblyCfgVehicleAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 根据整车总成Id取Erp总成列表
|
|||
/// </summary>W
|
|||
/// <param name="vehicleAssemblyId">整车总成Id</param>
|
|||
/// <returns>Erp总成列表</returns>
|
|||
Task<List<AssemblyCfgErpDto>> GetErpAssemblyListAsync(Guid vehicleAssemblyId); |
|||
} |
|||
} |
@ -1,31 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 通用字典信息DTO
|
|||
/// </summary>
|
|||
[Serializable] |
|||
public class DicItemDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 字典类别代码
|
|||
/// </summary>
|
|||
public string DicTypeCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 字典项代码
|
|||
/// </summary>
|
|||
public string DicItemCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 字典项名称
|
|||
/// </summary>
|
|||
public string DicItemName { get; set; } |
|||
} |
|||
} |
@ -1,22 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
public interface IDicAppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据字典类型名称取通用字典信息列表
|
|||
/// </summary>
|
|||
/// <param name="dicTypeName">字典类型名称</param>
|
|||
/// <returns>返回符合条件字典信息列表</returns>
|
|||
Task<ListResultDto<DicItemDto>> GetDicListAsync(string dicTypeName); |
|||
|
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,33 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateExcludePartCfgDto |
|||
{ |
|||
/// <summary>
|
|||
/// 车型代码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(20)] |
|||
public string VehicleModelCode { get; set; } |
|||
/// <summary>
|
|||
/// 客户零件号
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 排除原因
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(200)] |
|||
public string ExcludeReason { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,52 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class ExcludePartCfgDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 车型代码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
/// <summary>
|
|||
/// 客户零件号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件号")] |
|||
[ImporterHeader(Name = "客户零件号")] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 排除原因
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "排除原因")] |
|||
[ImporterHeader(Name = "排除原因")] |
|||
public string ExcludeReason { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型名称")] |
|||
[ImporterHeader(Name = "车型名称")] |
|||
public string VehicleModelName { get; set; } |
|||
/// <summary>
|
|||
/// 客户零件名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件名称")] |
|||
[ImporterHeader(Name = "客户零件名称")] |
|||
public string PartName { get; set; } |
|||
|
|||
|
|||
} |
|||
} |
@ -1,21 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class QueryExcludePartCfgDto : PagedAndSortedBase//: PagedAndSortedResultRequestDto
|
|||
{ |
|||
/// <summary>
|
|||
/// 车型代码
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
/// <summary>
|
|||
/// 客户零件号
|
|||
/// </summary>
|
|||
public string PartCode { get; set; } |
|||
} |
|||
} |
@ -1,66 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
public interface IExcludePartCfgAppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<ExcludePartCfgDto>> GetListAsync(QueryExcludePartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<ExcludePartCfgDto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateExcludePartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateExcludePartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryExcludePartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,47 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateLogRemindDto |
|||
{ |
|||
|
|||
/// <summary>
|
|||
/// 日志类别(1 报文传输异常、2 报文转换异常、3 报文解析、校验异常)
|
|||
/// </summary>
|
|||
[Required] |
|||
public LogTypeEnum LogType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志标题
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(200)] |
|||
public string LogTitle { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志描述
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(4000)] |
|||
public string LogDesc { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 严重程度(1 轻微 2 一般、3 严重)
|
|||
/// </summary>
|
|||
[Required] |
|||
public SeriousLevelEnum SeriousLevel { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志状态
|
|||
/// </summary>
|
|||
[Required] |
|||
public virtual LogStatusEnum LogStatus { get; set; } |
|||
|
|||
|
|||
} |
|||
} |
@ -1,54 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "日志提醒", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class LogRemindDto: AuditedEntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 日志类别(1 报文传输异常、2 报文转换异常、3 报文解析、校验异常)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "日志类别")] |
|||
[ImporterHeader(Name = "日志类别")] |
|||
public LogTypeEnum LogType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志标题
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "日志标题")] |
|||
[ImporterHeader(Name = "日志标题")] |
|||
public string LogTitle { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "日志描述")] |
|||
[ImporterHeader(Name = "日志描述")] |
|||
public string LogDesc { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 严重程度(1 轻微 2 一般、3 严重)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "严重程度")] |
|||
[ImporterHeader(Name = "严重程度")] |
|||
public SeriousLevelEnum SeriousLevel { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志状态
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "日志状态")] |
|||
[ImporterHeader(Name = "日志状态")] |
|||
public virtual LogStatusEnum LogStatus { get; set; } |
|||
|
|||
|
|||
} |
|||
} |
@ -1,32 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class QueryLogRemindDto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 日志类别(1 报文传输异常、2 报文转换异常、3 报文解析、校验异常)
|
|||
/// </summary>
|
|||
public LogTypeEnum LogType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志标题
|
|||
/// </summary>
|
|||
public string LogTitle { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 严重程度(1 轻微 2 一般、3 严重)
|
|||
/// </summary>
|
|||
public SeriousLevelEnum SeriousLevel { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 日志状态 0 1 2
|
|||
/// </summary>
|
|||
public LogStatusEnum LogStatus { get; set; } |
|||
} |
|||
} |
@ -1,81 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
public interface ILogRemindAppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<LogRemindDto>> GetListAsync(QueryLogRemindDto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<LogRemindDto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateLogRemindDto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateLogRemindDto input); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryLogRemindDto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
|
|||
/// <summary>
|
|||
/// 执行处理
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DoProcessAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 执行忽略
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DoIgnoreAsync(Guid id); |
|||
|
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,64 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdatePartCfgDto |
|||
{ |
|||
/// <summary>
|
|||
/// 零件编码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string PartCode { get; set; } |
|||
/// <summary>
|
|||
/// 零件名称
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(200)] |
|||
public string PartName { get; set; } |
|||
/// <summary>
|
|||
/// 零件类型(取通用字典)
|
|||
/// </summary>
|
|||
[StringLength(10)] |
|||
public string PartType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件子类型(取通用字典)
|
|||
/// </summary>
|
|||
public virtual string PartChildType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[StringLength(200)] |
|||
public string Description { get; set; } |
|||
|
|||
#region 派格扩展
|
|||
/// <summary>
|
|||
/// 门板代号
|
|||
/// </summary>
|
|||
public string DoorPlankCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// SAP物料号
|
|||
/// </summary>
|
|||
public string SAPMaterialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 物料描述(大小量纲、物料描述字段值同时存在时,优先显示大小量纲)
|
|||
/// </summary>
|
|||
public string MaterialDescription { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大小量纲(大小量纲、物料描述字段值同时存在时,优先显示大小量纲)
|
|||
/// </summary>
|
|||
public string DaXiaoLiangGang { get; set; } |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,73 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class PartCfgDto: AuditedEntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 零件编码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "零件编码")] |
|||
[ImporterHeader(Name = "零件编码")] |
|||
public string PartCode { get; set; } |
|||
/// <summary>
|
|||
/// 零件名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "零件名称")] |
|||
[ImporterHeader(Name = "零件名称")] |
|||
public string PartName { get; set; } |
|||
/// <summary>
|
|||
/// 零件类型(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "零件类型")] |
|||
[ImporterHeader(Name = "零件类型")] |
|||
public string PartType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件子类型(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "零件子类型")] |
|||
[ImporterHeader(Name = "零件子类型")] |
|||
public virtual string PartChildType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
#region 派格扩展
|
|||
/// <summary>
|
|||
/// 门板代号
|
|||
/// </summary>
|
|||
public string DoorPlankCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// SAP物料号
|
|||
/// </summary>
|
|||
public string SAPMaterialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 物料描述(大小量纲、物料描述字段值同时存在时,优先显示大小量纲)
|
|||
/// </summary>
|
|||
public string MaterialDescription { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大小量纲(大小量纲、物料描述字段值同时存在时,优先显示大小量纲)
|
|||
/// </summary>
|
|||
public string DaXiaoLiangGang { get; set; } |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,31 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class QueryPartCfgDto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 零件编码
|
|||
/// </summary>
|
|||
public string PartCode { get; set; } |
|||
/// <summary>
|
|||
/// 零件名称
|
|||
/// </summary>
|
|||
public string PartName { get; set; } |
|||
/// <summary>
|
|||
/// 零件类型(取通用字典)
|
|||
/// </summary>
|
|||
public string PartType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件子类型(取通用字典)
|
|||
/// </summary>
|
|||
public string PartChildType { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,66 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
public interface IPartCfgAppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<PartCfgDto>> GetListAsync(QueryPartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<PartCfgDto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdatePartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdatePartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryPartCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,33 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdatePartSwitchDto |
|||
{ |
|||
/// <summary>
|
|||
/// 零件编码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public virtual string SourcePartCode { get; set; } |
|||
/// <summary>
|
|||
/// 切换为零件编码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public virtual string TargetPartCode { get; set; } |
|||
/// <summary>
|
|||
/// 生效开始时间
|
|||
/// </summary>
|
|||
public virtual DateTime? ActiveBeginTime { get; set; } |
|||
/// <summary>
|
|||
/// 生效结束时间
|
|||
/// </summary>
|
|||
public virtual DateTime? ActiveEndTime { get; set; } |
|||
} |
|||
} |
@ -1,57 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class PartSwitchDto: AuditedEntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 零件编码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "零件编码")] |
|||
[ImporterHeader(Name = "零件编码")] |
|||
public virtual string SourcePartCode { get; set; } |
|||
/// <summary>
|
|||
/// 零件名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "零件名称")] |
|||
[ImporterHeader(Name = "零件名称")] |
|||
public virtual string SourcePartName { get; set; } |
|||
/// <summary>
|
|||
/// 切换为零件编码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "切换为零件编码")] |
|||
[ImporterHeader(Name = "切换为零件编码")] |
|||
public virtual string TargetPartCode { get; set; } |
|||
/// <summary>
|
|||
/// 切换为零件名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "切换为零件名称")] |
|||
[ImporterHeader(Name = "切换为零件名称")] |
|||
public virtual string TargetPartName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生效开始时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "生效开始时间")] |
|||
[ImporterHeader(Name = "生效开始时间")] |
|||
public virtual DateTime? ActiveBeginTime { get; set; } |
|||
/// <summary>
|
|||
/// 生效结束时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "生效结束时间")] |
|||
[ImporterHeader(Name = "生效结束时间")] |
|||
public virtual DateTime? ActiveEndTime { get; set; } |
|||
|
|||
|
|||
} |
|||
} |
@ -1,34 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
[Serializable] |
|||
public class QueryPartSwitchDto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 零件编码
|
|||
/// </summary>
|
|||
public virtual string SourcePartCode { get; set; } |
|||
/// <summary>
|
|||
/// 零件名称
|
|||
/// </summary>
|
|||
public virtual string SourcePartName { get; set; } |
|||
/// <summary>
|
|||
/// 切换为零件编码
|
|||
/// </summary>
|
|||
public virtual string TargetPartCode { get; set; } |
|||
/// <summary>
|
|||
/// 切换为零件名称
|
|||
/// </summary>
|
|||
public virtual string TargetPartName { get; set; } |
|||
/// <summary>
|
|||
/// 是否有效
|
|||
/// </summary>
|
|||
public virtual bool? IsValid { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,66 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
public interface IPartSwitchAppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<PartSwitchDto>> GetListAsync(QueryPartSwitchDto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<PartSwitchDto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdatePartSwitchDto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdatePartSwitchDto input); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryPartSwitchDto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,128 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "M100单据", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class BillM100Dto: AuditedEntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 流水号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "流水号")] |
|||
[ImporterHeader(Name = "流水号")] |
|||
public int? SerialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "底牌号")] |
|||
[ImporterHeader(Name = "底牌号")] |
|||
public string VIN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成ID")] |
|||
[ImporterHeader(Name = "总成ID")] |
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "上线时间")] |
|||
[ImporterHeader(Name = "上线时间")] |
|||
public DateTime? OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = " 生产线")] |
|||
[ImporterHeader(Name = " 生产线")] |
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "接收时间")] |
|||
[ImporterHeader(Name = "接收时间")] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布;-1 预批量)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "单据状态")] |
|||
[ImporterHeader(Name = "单据状态")] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 涂装重复单据包含的零件列表
|
|||
/// </summary>
|
|||
public List<BillM100PartDto> BillM100Parts { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 手工操作类型:0 none,1 手工添加,2 手工修改
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "手工操作类型")] |
|||
[ImporterHeader(Name = "手工操作类型")] |
|||
public ManualOperationTypeEnum OperationType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 手工操作员
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "手工操作员")] |
|||
[ImporterHeader(Name = "手工操作员")] |
|||
public string Operator { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 手工操作日期
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "手工操作日期")] |
|||
[ImporterHeader(Name = "手工操作日期")] |
|||
public DateTime? OperationTime { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,38 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "M100单据包含的零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class BillM100PartDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件代码")] |
|||
[ImporterHeader(Name = "客户零件代码")] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件数量")] |
|||
[ImporterHeader(Name = "客户零件数量")] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
} |
|||
} |
@ -1,105 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateBillM100Dto |
|||
{ |
|||
|
|||
/// <summary>
|
|||
/// 流水号#
|
|||
/// </summary>
|
|||
public int? SerialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[Required] |
|||
public int? HostSN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号#
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string VIN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[Required] |
|||
public DateTime? OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[Required] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[Required] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布)
|
|||
/// </summary>
|
|||
[Required] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(200)] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 涂装重复单据包含的零件列表
|
|||
/// </summary>
|
|||
public virtual List<CreateUpdateBillM100PartDto> BillM100Parts { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 手工操作类型:0 none,1 手工添加,2 手工修改
|
|||
/// </summary>
|
|||
public ManualOperationTypeEnum OperationType { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 手工操作员
|
|||
/// </summary>
|
|||
public string Operator { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 手工操作日期
|
|||
/// </summary>
|
|||
public DateTime? OperationTime { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,32 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateBillM100PartDto |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[Required] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[StringLength(200)] |
|||
public string Description { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,19 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using WY.NewJit.MsgBaseData; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public class CreateUpdateNewM100Dto |
|||
{ |
|||
public CreateUpdateBillM100Dto M100Bill { get; set; } |
|||
|
|||
public List<CreateUpdateAssemblyCfgErpDto> ErpAssemblyList { get; set; } |
|||
|
|||
public CreateUpdateNewM100Dto() |
|||
{ |
|||
ErpAssemblyList = new List<CreateUpdateAssemblyCfgErpDto>(); |
|||
} |
|||
} |
|||
} |
@ -1,18 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public class MenBanPrintInfo |
|||
{ |
|||
public PrintTypeEnum PrintType { get; set; } |
|||
} |
|||
|
|||
public enum PrintTypeEnum |
|||
{ |
|||
初次打印, |
|||
重新打印, |
|||
补打 |
|||
} |
|||
} |
@ -1,19 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using WY.NewJit.MsgBaseData; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public class NewM100Dto |
|||
{ |
|||
public BillM100Dto M100Bill { get; set; } |
|||
|
|||
public List<AssemblyCfgErpDto> ErpAssemblyList { get; set; } |
|||
|
|||
public NewM100Dto() |
|||
{ |
|||
ErpAssemblyList = new List<AssemblyCfgErpDto>(); |
|||
} |
|||
} |
|||
} |
@ -1,104 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class QueryBillM100Dto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 流水号起
|
|||
/// </summary>
|
|||
public int? SerialNumBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 流水号止
|
|||
/// </summary>
|
|||
public int? SerialNumEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号起
|
|||
/// </summary>
|
|||
public int? HostSNBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号止
|
|||
/// </summary>
|
|||
public int? HostSNEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR起
|
|||
/// </summary>
|
|||
public string KNRBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR止
|
|||
/// </summary>
|
|||
public string KNREnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号起
|
|||
/// </summary>
|
|||
public string VINBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号止
|
|||
/// </summary>
|
|||
public string VINEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间起
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间止
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeEnd { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间起
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间止
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布)
|
|||
/// </summary>
|
|||
public BillStatusEnum? BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 是否单据维护
|
|||
/// </summary>
|
|||
public bool? IsBillMaintenance { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,139 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "M100单据查询结果", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class ResultBillM100Dto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 流水号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "流水号")] |
|||
[ImporterHeader(Name = "流水号")] |
|||
public int? SerialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "底牌号")] |
|||
[ImporterHeader(Name = "底牌号")] |
|||
public string VIN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成ID")] |
|||
[ImporterHeader(Name = "总成ID")] |
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "上线时间")] |
|||
[ImporterHeader(Name = "上线时间")] |
|||
public DateTime? OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "接收时间")] |
|||
[ImporterHeader(Name = "接收时间")] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 单据状态【0 空;1 未匹配;2 已匹配;3 已发布】
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "单据状态")] |
|||
[ImporterHeader(Name = "单据状态")] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
///// <summary>
|
|||
///// 涂装重复单据包含的零件列表
|
|||
///// </summary>
|
|||
//public List<BillM100PartDto> M100BillParts { get; set; }
|
|||
|
|||
/// <summary>
|
|||
/// 总成名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成名称")] |
|||
[ImporterHeader(Name = "总成名称")] |
|||
public string AssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型名称(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型名称")] |
|||
[ImporterHeader(Name = "车型名称")] |
|||
public string VehicleModelName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// R100总成名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "R100总成名称")] |
|||
[ImporterHeader(Name = "R100总成名称")] |
|||
public string R100AssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// R100上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "R100上线时间")] |
|||
[ImporterHeader(Name = "R100上线时间")] |
|||
public DateTime? R100OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 打印时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "打印时间")] |
|||
[ImporterHeader(Name = "打印时间")] |
|||
public virtual DateTime? PrintTime { get; set; } |
|||
} |
|||
} |
@ -1,12 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public class ZhuHuBanPrintInfo |
|||
{ |
|||
public PrintTypeEnum PrintType { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,82 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public interface IBillM100AppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<ResultBillM100Dto>> GetListAsync(QueryBillM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<BillM100Dto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateBillM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateBillM100Dto input); |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryBillM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
|
|||
/// <summary>
|
|||
/// 打印门板
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> PrintMenBan(MenBanPrintInfo input); |
|||
|
|||
/// <summary>
|
|||
/// 打印柱护板
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> PrintZhuHuBan(ZhuHuBanPrintInfo input); |
|||
|
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,76 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.MsgBaseData; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public interface INewM100AppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<ResultBillM100Dto>> GetListAsync(QueryBillM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<NewM100Dto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateNewM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateNewM100Dto input); |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryBillM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
|
|||
/// <summary>
|
|||
/// 根据KNR取ERP总成列表
|
|||
/// </summary>
|
|||
/// <param name="knr"></param>
|
|||
/// <returns></returns>
|
|||
Task<ListResultDto<AssemblyCfgErpDto>> GetErpAssemblyListAsync(string knr); |
|||
|
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,94 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "R100单据", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class BillR100Dto: AuditedEntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成ID")] |
|||
[ImporterHeader(Name = "总成ID")] |
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "上线时间")] |
|||
[ImporterHeader(Name = "上线时间")] |
|||
public DateTime? OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "接收时间")] |
|||
[ImporterHeader(Name = "接收时间")] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = " 生产线")] |
|||
[ImporterHeader(Name = " 生产线")] |
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "单据状态")] |
|||
[ImporterHeader(Name = "单据状态")] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 焊装重复单据包含的零件列表
|
|||
/// </summary>
|
|||
public List<BillR100PartDto> BillR100Parts { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,38 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "R100单据包含的零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class BillR100PartDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件代码")] |
|||
[ImporterHeader(Name = "客户零件代码")] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件数量")] |
|||
[ImporterHeader(Name = "客户零件数量")] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
} |
|||
} |
@ -1,80 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateBillR100Dto |
|||
{ |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[Required] |
|||
public int? HostSN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
[Required] |
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[Required] |
|||
public DateTime? OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[Required] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[Required] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布)
|
|||
/// </summary>
|
|||
[Required] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(200)] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 焊装重复单据包含的零件列表
|
|||
/// </summary>
|
|||
public List<CreateUpdateBillR100PartDto> BillR100Parts { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,32 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class CreateUpdateBillR100PartDto |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[Required] |
|||
[StringLength(100)] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[Required] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[StringLength(200)] |
|||
public string Description { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,77 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class QueryBillR100Dto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 大众顺序号起
|
|||
/// </summary>
|
|||
public int? HostSNBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号止
|
|||
/// </summary>
|
|||
public int? HostSNEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR起
|
|||
/// </summary>
|
|||
public string KNRBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR止
|
|||
/// </summary>
|
|||
public string KNREnd { get; set; } |
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间起
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间止
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间起
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间止
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布)
|
|||
/// </summary>
|
|||
public BillStatusEnum? BillStatus { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,123 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "R100单据查询结果", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class ResultBillR100Dto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 一个或多个ERP总成编码(逗号分隔)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成编码")] |
|||
[ImporterHeader(Name = "总成编码")] |
|||
public string ErpAssemblyCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 一个或多个ERP总成名称(逗号分隔)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成名称")] |
|||
[ImporterHeader(Name = "总成名称")] |
|||
public string ErpAssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// ERP总成数量
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成数量")] |
|||
[ImporterHeader(Name = "总成数量")] |
|||
public int ErpAssemblyNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "上线时间")] |
|||
[ImporterHeader(Name = "上线时间")] |
|||
public DateTime? OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "接收时间")] |
|||
[ImporterHeader(Name = "接收时间")] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "生产线")] |
|||
[ImporterHeader(Name = "生产线")] |
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 单据状态【0 空;1 未匹配;2 已匹配;3 已发布】
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "单据状态")] |
|||
[ImporterHeader(Name = "单据状态")] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成名称
|
|||
/// </summary>
|
|||
public string AssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型名称(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 打印时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "打印时间")] |
|||
[ImporterHeader(Name = "打印时间")] |
|||
public virtual DateTime? PrintTime { get; set; } |
|||
} |
|||
} |
@ -1,74 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public interface IBillR100AppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<ResultBillR100Dto>> GetListAsync(QueryBillR100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<BillR100Dto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateBillR100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateBillR100Dto input); |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryBillR100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 导出包含ERP总成编码的信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportErpAssemblyCodeAsync(QueryBillR100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,33 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public interface IR100M100CompareAppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<ResultCompareDto>> GetListAsync(QueryCompareDto input); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryCompareDto input); |
|||
|
|||
|
|||
|
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,114 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class QueryCompareDto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 流水号起
|
|||
/// </summary>
|
|||
public int? SerialNumBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 流水号止
|
|||
/// </summary>
|
|||
public int? SerialNumEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号起
|
|||
/// </summary>
|
|||
public int? HostSNBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号止
|
|||
/// </summary>
|
|||
public int? HostSNEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR起
|
|||
/// </summary>
|
|||
public string KNRBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR止
|
|||
/// </summary>
|
|||
public string KNREnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号起
|
|||
/// </summary>
|
|||
public string VINBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号止
|
|||
/// </summary>
|
|||
public string VINEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间起
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间止
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeEnd { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间起
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间止
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布)
|
|||
/// </summary>
|
|||
public BillStatusEnum? BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 是否单据维护
|
|||
/// </summary>
|
|||
public bool? IsBillMaintenance { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 有焊装无总装
|
|||
/// </summary>
|
|||
public bool HasR100NotHasM100 { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 有焊装有总装
|
|||
/// </summary>
|
|||
public bool HasR100HasM100 { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,116 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "焊装总装对比", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class ResultCompareDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// R100单据状态
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "R100单据状态")] |
|||
[ImporterHeader(Name = "R100单据状态")] |
|||
public string R100BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// R100上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "R100上线时间")] |
|||
[ImporterHeader(Name = "R100上线时间")] |
|||
public DateTime? R100OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// R100接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "R100接收时间")] |
|||
[ImporterHeader(Name = "R100接收时间")] |
|||
public DateTime? R100ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
|
|||
//---------------------------M100
|
|||
/// <summary>
|
|||
/// 流水号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "流水号")] |
|||
[ImporterHeader(Name = "流水号")] |
|||
public int? SerialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "底牌号")] |
|||
[ImporterHeader(Name = "底牌号")] |
|||
public string VIN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// M100上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "M100上线时间")] |
|||
[ImporterHeader(Name = "M100上线时间")] |
|||
public DateTime? M100OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// M100接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "M100接收时间")] |
|||
[ImporterHeader(Name = "M100接收时间")] |
|||
public DateTime? M100ReceiveTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// M100单据状态【0 空;1 未匹配;2 已匹配;3 已发布】
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "M100单据状态")] |
|||
[ImporterHeader(Name = "M100单据状态")] |
|||
public BillStatusEnum M100BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// R100一个或多个ERP总成编码(逗号分隔)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "R100总成编码")] |
|||
[ImporterHeader(Name = "R100总成编码")] |
|||
public string R100ErpAssemblyCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// R100一个或多个ERP总成名称(逗号分隔)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "R100总成名称")] |
|||
[ImporterHeader(Name = "R100总成名称")] |
|||
public string R100ErpAssemblyName { get; set; } |
|||
} |
|||
} |
@ -1,85 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Collections.ObjectModel; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Domain.Entities.Auditing; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 涂装重复单据
|
|||
/// </summary>
|
|||
[Serializable] |
|||
public class CreateUpdateRepeatM100Dto |
|||
{ |
|||
/// <summary>
|
|||
/// 报文接收ID,对应报文接收表主键
|
|||
/// </summary>
|
|||
public Guid MessageFileReceiveID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 流水号#
|
|||
/// </summary>
|
|||
public int? SerialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
public int? HostSN { get; set; } |
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号#
|
|||
/// </summary>
|
|||
public string VIN { get; set; } |
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
public Guid? AssemblyID { get; set; } |
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
public DateTime? OnlineTime { get; set; } |
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTime { get; set; } |
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
/// <summary>
|
|||
/// 单据状态【0 空;1 未匹配;2 已匹配;3 已发布】【暂不用所以不用枚举】
|
|||
/// </summary>
|
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
public virtual string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 涂装重复单据包含的零件列表
|
|||
/// </summary>
|
|||
public virtual List<CreateUpdateRepeatM100PartDto> M100RepeatParts { get; set; } |
|||
|
|||
public CreateUpdateRepeatM100Dto() |
|||
{ } |
|||
|
|||
} |
|||
} |
@ -1,35 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Domain.Entities.Auditing; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 涂装重复单据和零件关系表
|
|||
/// </summary>
|
|||
[Serializable] |
|||
public class CreateUpdateRepeatM100PartDto |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
public string Description { get; set; } |
|||
|
|||
public CreateUpdateRepeatM100PartDto() |
|||
{ } |
|||
|
|||
} |
|||
} |
@ -1,87 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class QueryRepeatM100Dto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 大众顺序号起
|
|||
/// </summary>
|
|||
public int? HostSNBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号止
|
|||
/// </summary>
|
|||
public int? HostSNEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR起
|
|||
/// </summary>
|
|||
public string KNRBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR止
|
|||
/// </summary>
|
|||
public string KNREnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号起
|
|||
/// </summary>
|
|||
public string VINBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号止
|
|||
/// </summary>
|
|||
public string VINEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
//public Guid? AssemblyID { get; set; }
|
|||
|
|||
/// <summary>
|
|||
/// 上线时间起
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间止
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeEnd { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间起
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间止
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeEnd { get; set; } |
|||
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,115 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "M100重复报文", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class RepeatM100Dto: AuditedEntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 流水号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "流水号")] |
|||
[ImporterHeader(Name = "流水号")] |
|||
public int? SerialNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "底牌号")] |
|||
[ImporterHeader(Name = "底牌号")] |
|||
public string VIN { get; set; } |
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成ID")] |
|||
[ImporterHeader(Name = "总成ID")] |
|||
public Guid? AssemblyID { get; set; } |
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "上线时间")] |
|||
[ImporterHeader(Name = "上线时间")] |
|||
public DateTime? OnlineTime { get; set; } |
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "接收时间")] |
|||
[ImporterHeader(Name = "接收时间")] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "生产线")] |
|||
[ImporterHeader(Name = "生产线")] |
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
/// <summary>
|
|||
/// 单据状态【0 空;1 未匹配;2 已匹配;3 已发布】【暂不用所以不用枚举】
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "单据状态")] |
|||
[ImporterHeader(Name = "单据状态")] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 涂装重复单据包含的零件列表
|
|||
/// </summary>
|
|||
public List<RepeatM100PartDto> M100RepeatParts { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成名称")] |
|||
[ImporterHeader(Name = "总成名称")] |
|||
public string AssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型名称(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型名称")] |
|||
[ImporterHeader(Name = "车型名称")] |
|||
public string VehicleModelName { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,38 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "M100重复报文包含的零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class RepeatM100PartDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件代码")] |
|||
[ImporterHeader(Name = "客户零件代码")] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件数量")] |
|||
[ImporterHeader(Name = "客户零件数量")] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
} |
|||
} |
@ -1,58 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public interface IRepeatM100AppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<RepeatM100Dto>> GetListAsync(QueryRepeatM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<RepeatM100Dto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateRepeatM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryRepeatM100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,51 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
public interface IRepeatR100AppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<RepeatR100Dto>> GetListAsync(QueryRepeatR100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<RepeatR100Dto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryRepeatR100Dto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,76 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
[Serializable] |
|||
public class QueryRepeatR100Dto : PagedAndSortedBase |
|||
{ |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号起
|
|||
/// </summary>
|
|||
public int? HostSNBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号止
|
|||
/// </summary>
|
|||
public int? HostSNEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR起
|
|||
/// </summary>
|
|||
public string KNRBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR止
|
|||
/// </summary>
|
|||
public string KNREnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
//public Guid? AssemblyID { get; set; }
|
|||
|
|||
/// <summary>
|
|||
/// 上线时间起
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间止
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeEnd { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间起
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 接收时间止
|
|||
/// </summary>
|
|||
public DateTime? ReceiveTimeEnd { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,101 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "R100重复报文", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class RepeatR100Dto: AuditedEntityDto<Guid> |
|||
{ |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成ID")] |
|||
[ImporterHeader(Name = "总成ID")] |
|||
public Guid? AssemblyID { get; set; } |
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "上线时间")] |
|||
[ImporterHeader(Name = "上线时间")] |
|||
public DateTime? OnlineTime { get; set; } |
|||
/// <summary>
|
|||
/// 接收时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "接收时间")] |
|||
[ImporterHeader(Name = "接收时间")] |
|||
public DateTime? ReceiveTime { get; set; } |
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
/// <summary>
|
|||
/// 单据状态【0 空;1 未匹配;2 已匹配;3 已发布】【暂不用所以不用枚举】
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "单据状态")] |
|||
[ImporterHeader(Name = "单据状态")] |
|||
public BillStatusEnum BillStatus { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 涂装重复单据包含的零件列表
|
|||
/// </summary>
|
|||
public List<RepeatR100PartDto> R100RepeatParts { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成名称")] |
|||
[ImporterHeader(Name = "总成名称")] |
|||
public string AssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型名称(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型名称")] |
|||
[ImporterHeader(Name = "车型名称")] |
|||
public string VehicleModelName { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,38 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "R100重复报文包含的零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class RepeatR100PartDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件代码")] |
|||
[ImporterHeader(Name = "客户零件代码")] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件数量")] |
|||
[ImporterHeader(Name = "客户零件数量")] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "描述")] |
|||
[ImporterHeader(Name = "描述")] |
|||
public string Description { get; set; } |
|||
} |
|||
} |
@ -1,23 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using WY.NewJit.MsgBaseData; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
[Serializable] |
|||
public class AddAssemblyCfgDto |
|||
{ |
|||
/// <summary>
|
|||
/// 单据ID
|
|||
/// </summary>
|
|||
public Guid BillID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 扫描点:R100 M100
|
|||
/// </summary>
|
|||
public string ScanPoint { get; set; } |
|||
|
|||
public List<CreateUpdateAssemblyCfgErpDto> ErpAssemblyCfgList { get; set; } |
|||
} |
|||
} |
@ -1,16 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
public class BatchParseParam |
|||
{ |
|||
public int TakeCount { get; set; } |
|||
|
|||
public DateTime? BeginDate { get; set; } |
|||
|
|||
public DateTime? EndDate { get; set; } |
|||
} |
|||
|
|||
} |
@ -1,21 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
[Serializable] |
|||
public class QueryBillInfoDto |
|||
{ |
|||
/// <summary>
|
|||
/// 单据ID
|
|||
/// </summary>
|
|||
public Guid BillID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 扫描点:R100 M100
|
|||
/// </summary>
|
|||
public string ScanPoint { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,95 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
[Serializable] |
|||
public class QueryUnknownAssemblyDto : PagedAndSortedBase |
|||
{ |
|||
/// <summary>
|
|||
/// 扫描点:R100 M100
|
|||
/// </summary>
|
|||
public string ScanPoint { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号起
|
|||
/// </summary>
|
|||
public int? HostSNBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号止
|
|||
/// </summary>
|
|||
public int? HostSNEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR起
|
|||
/// </summary>
|
|||
public string KNRBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// KNR止
|
|||
/// </summary>
|
|||
public string KNREnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号起
|
|||
/// </summary>
|
|||
public string VINBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号止
|
|||
/// </summary>
|
|||
public string VINEnd { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成ID
|
|||
/// </summary>
|
|||
public Guid? AssemblyID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间起
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeBegin { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间止
|
|||
/// </summary>
|
|||
public DateTime? OnlineTimeEnd { get; set; } |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
public string Version { get; set; } |
|||
|
|||
///// <summary>
|
|||
///// 接收时间起
|
|||
///// </summary>
|
|||
//public DateTime? ReceiveTimeBegin { get; set; }
|
|||
|
|||
///// <summary>
|
|||
///// 接收时间止
|
|||
///// </summary>
|
|||
//public DateTime? ReceiveTimeEnd { get; set; }
|
|||
|
|||
///// <summary>
|
|||
///// 单据状态(0 空;1 未匹配;2 已匹配;3 已发布)
|
|||
///// </summary>
|
|||
//public BillStatusEnum? BillStatus { get; set; }
|
|||
|
|||
} |
|||
} |
@ -1,100 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "未知总成", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class ResultUnknownAssemblyDto : EntityDto<Guid> |
|||
{ |
|||
|
|||
/// <summary>
|
|||
/// 大众顺序号
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "大众顺序号")] |
|||
[ImporterHeader(Name = "大众顺序号")] |
|||
public int? HostSN { get; set; } |
|||
/// <summary>
|
|||
/// KNR
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "KNR")] |
|||
[ImporterHeader(Name = "KNR")] |
|||
public string KNR { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 底牌号#
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "底牌号")] |
|||
[ImporterHeader(Name = "底牌号")] |
|||
public string VIN { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型代码(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型代码")] |
|||
[ImporterHeader(Name = "车型代码")] |
|||
public string VehicleModelCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 生产线(派格按生产线分类)
|
|||
/// </summary>
|
|||
public virtual string ProductLine { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 车型名称(取通用字典)
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "车型名称")] |
|||
[ImporterHeader(Name = "车型名称")] |
|||
public string VehicleModelName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 扫描点
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "扫描点")] |
|||
[ImporterHeader(Name = "扫描点")] |
|||
public string ScanPoint { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 上线时间
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "上线时间")] |
|||
[ImporterHeader(Name = "上线时间")] |
|||
public DateTime? OnlineTime { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 版本
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "版本")] |
|||
[ImporterHeader(Name = "版本")] |
|||
public string Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 总成名称
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "总成名称")] |
|||
[ImporterHeader(Name = "总成名称")] |
|||
public string AssemblyName { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "客户零件数量")] |
|||
[ImporterHeader(Name = "客户零件数量")] |
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 文件名
|
|||
/// </summary>
|
|||
[ExporterHeader(DisplayName = "文件名")] |
|||
[ImporterHeader(Name = "文件名")] |
|||
public string FileName { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,21 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
[Serializable] |
|||
public class ToParseInParam |
|||
{ |
|||
/// <summary>
|
|||
/// 是否选中全部
|
|||
/// </summary>
|
|||
public bool IsSelectAll { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 部分选中列表
|
|||
/// </summary>
|
|||
public List<Guid> UnknownAssemblyIdList { get; set; } |
|||
|
|||
} |
|||
} |
@ -1,42 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "M100重复报文", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class UnknownAssemblyDto: AuditedEntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 单据ID
|
|||
/// </summary>
|
|||
public Guid BillID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 扫描点:R100 M100
|
|||
/// </summary>
|
|||
public string ScanPoint { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
public string Description { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 未知总成包含的零件列表
|
|||
/// </summary>
|
|||
public List<UnknownAssemblyPartDto> UnknownAssemblyParts { get; set; } |
|||
} |
|||
} |
@ -1,32 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
/// <summary>
|
|||
/// 零件查询结果DTO
|
|||
/// </summary>
|
|||
[ExcelExporter(Name = "M100重复报文包含的零件信息", AutoFitAllColumn = true, MaxRowNumberOnASheet = 1000)] //一个Sheet最大允许的行数,设置了之后将输出多个Sheet
|
|||
[Serializable] |
|||
public class UnknownAssemblyPartDto : EntityDto<Guid> |
|||
{ |
|||
/// <summary>
|
|||
/// 客户零件代码
|
|||
/// </summary>
|
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 客户零件数量
|
|||
/// </summary>
|
|||
public double? PartNum { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 描述
|
|||
/// </summary>
|
|||
public string Description { get; set; } |
|||
} |
|||
} |
@ -1,79 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgCheck.UnknownAssemblys |
|||
{ |
|||
public interface IUnknownAssemblyAppService |
|||
{ |
|||
#region 接口方法
|
|||
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
Task<PagedResultDto<ResultUnknownAssemblyDto>> GetListAsync(QueryUnknownAssemblyDto input); |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
Task<ObjectResultDto<UnknownAssemblyDto>> GetAsync(Guid id); |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> DeleteAsync(string id); |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto<string>> ExportAsync(QueryUnknownAssemblyDto input); |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ImportAsync(Byte[] input); |
|||
|
|||
/// <summary>
|
|||
/// 添加总成:根据未知总成中的结算件生成新的总成【客户端自己构造】
|
|||
/// </summary>
|
|||
/// <param name="input">总成、分总成、零件三级关系实体</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> AddAssemblyAsync(AddAssemblyCfgDto input); |
|||
|
|||
/// <summary>
|
|||
/// 重新解析
|
|||
/// </summary>
|
|||
/// <param name="input">总成、分总成、零件三级关系实体</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
Task<ObjectResultDto> ToParseAsync(ToParseInParam input); |
|||
|
|||
/// <summary>
|
|||
/// 系统初始化时使用,批量解析
|
|||
/// </summary>
|
|||
/// <param name="takeCount"></param>
|
|||
/// <returns></returns>
|
|||
ObjectResultDto<string> BatchParseAsync(BatchParseParam input); |
|||
|
|||
/// <summary>
|
|||
/// 根据vin从天合mes系统中取erp总成编码列表
|
|||
/// </summary>
|
|||
/// <param name="vin"></param>
|
|||
/// <returns></returns>
|
|||
Task<ObjectResultDto<List<string>>> GetErpAssemblyCodeByMesAsync(string vin); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,15 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgConversion |
|||
{ |
|||
public interface IMsgConversionAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 报文转换
|
|||
/// </summary>
|
|||
/// <param name="messageReceiveId"></param>
|
|||
void DoConversionMessage(Guid messageReceiveId); |
|||
} |
|||
} |
@ -1,17 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgTransmission |
|||
{ |
|||
public interface IMsgTransmissionAppService |
|||
{ |
|||
#region 接口方法
|
|||
ObjectResultDto TransmissionMessageAsync(TransmissionParamDto input); |
|||
#endregion
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,16 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.EventBus; |
|||
using WY.NewJit.MsgBaseData; |
|||
|
|||
namespace WY.NewJit.MsgTransmission.TianHe |
|||
{ |
|||
[EventName("WY.NewJit.SettleAccountFis.AssemblySync")] |
|||
public class AssemblySyncEto |
|||
{ |
|||
public AssemblySyncOperationTypeEnum OperationType { get; set; } |
|||
|
|||
public List<CreateUpdateAssemblyCfgErpDto> AssemblyCfgList { get; set; } |
|||
} |
|||
} |
@ -1,17 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel; |
|||
using System.Text; |
|||
|
|||
namespace WY.NewJit.MsgTransmission.TianHe |
|||
{ |
|||
public enum AssemblySyncOperationTypeEnum |
|||
{ |
|||
[Description("添加")] |
|||
Add, |
|||
[Description("修改")] |
|||
Update, |
|||
[Description("删除")] |
|||
Delete |
|||
} |
|||
} |
@ -1,33 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace WY.NewJit.MsgTransmission |
|||
{ |
|||
public class TransmissionParamDto : EntityDto |
|||
{ |
|||
private int _takeRecordCount = 2; |
|||
|
|||
/// <summary>
|
|||
/// 读取记录数
|
|||
/// </summary>
|
|||
public int TakeRecordCount |
|||
{ |
|||
get |
|||
{ |
|||
return _takeRecordCount; |
|||
} |
|||
set |
|||
{ |
|||
_takeRecordCount = value; |
|||
} |
|||
} |
|||
|
|||
public TransmissionParamDto(int takeRecordCount) |
|||
{ |
|||
_takeRecordCount = takeRecordCount; |
|||
} |
|||
|
|||
} |
|||
} |
@ -1,29 +0,0 @@ |
|||
using Volo.Abp.Account; |
|||
using Volo.Abp.FeatureManagement; |
|||
using Volo.Abp.Identity; |
|||
using Volo.Abp.Modularity; |
|||
using Volo.Abp.ObjectExtending; |
|||
using Volo.Abp.PermissionManagement; |
|||
using Volo.Abp.SettingManagement; |
|||
using Volo.Abp.TenantManagement; |
|||
|
|||
namespace WY.NewJit |
|||
{ |
|||
[DependsOn( |
|||
typeof(NewJitDomainSharedModule), |
|||
typeof(AbpAccountApplicationContractsModule), |
|||
typeof(AbpFeatureManagementApplicationContractsModule), |
|||
typeof(AbpIdentityApplicationContractsModule), |
|||
typeof(AbpPermissionManagementApplicationContractsModule), |
|||
typeof(AbpSettingManagementApplicationContractsModule), |
|||
typeof(AbpTenantManagementApplicationContractsModule), |
|||
typeof(AbpObjectExtendingModule) |
|||
)] |
|||
public class NewJitApplicationContractsModule : AbpModule |
|||
{ |
|||
public override void PreConfigureServices(ServiceConfigurationContext context) |
|||
{ |
|||
NewJitDtoExtensions.Configure(); |
|||
} |
|||
} |
|||
} |
@ -1,29 +0,0 @@ |
|||
using Volo.Abp.Identity; |
|||
using Volo.Abp.ObjectExtending; |
|||
using Volo.Abp.Threading; |
|||
|
|||
namespace WY.NewJit |
|||
{ |
|||
public static class NewJitDtoExtensions |
|||
{ |
|||
private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner(); |
|||
|
|||
public static void Configure() |
|||
{ |
|||
OneTimeRunner.Run(() => |
|||
{ |
|||
/* You can add extension properties to DTOs |
|||
* defined in the depended modules. |
|||
* |
|||
* Example: |
|||
* |
|||
* ObjectExtensionManager.Instance |
|||
* .AddOrUpdateProperty<IdentityRoleDto, string>("Title"); |
|||
* |
|||
* See the documentation for more: |
|||
* https://docs.abp.io/en/abp/latest/Object-Extensions
|
|||
*/ |
|||
}); |
|||
} |
|||
} |
|||
} |
@ -1,22 +0,0 @@ |
|||
using WY.NewJit.Localization; |
|||
using Volo.Abp.Authorization.Permissions; |
|||
using Volo.Abp.Localization; |
|||
|
|||
namespace WY.NewJit.Permissions |
|||
{ |
|||
public class NewJitPermissionDefinitionProvider : PermissionDefinitionProvider |
|||
{ |
|||
public override void Define(IPermissionDefinitionContext context) |
|||
{ |
|||
var myGroup = context.AddGroup(NewJitPermissions.GroupName); |
|||
|
|||
//Define your own permissions here. Example:
|
|||
//myGroup.AddPermission(NewJitPermissions.MyPermission1, L("Permission:MyPermission1"));
|
|||
} |
|||
|
|||
private static LocalizableString L(string name) |
|||
{ |
|||
return LocalizableString.Create<NewJitResource>(name); |
|||
} |
|||
} |
|||
} |
@ -1,10 +0,0 @@ |
|||
namespace WY.NewJit.Permissions |
|||
{ |
|||
public static class NewJitPermissions |
|||
{ |
|||
public const string GroupName = "NewJit"; |
|||
|
|||
//Add your own permission names. Example:
|
|||
//public const string MyPermission1 = GroupName + ".MyPermission1";
|
|||
} |
|||
} |
@ -1,34 +0,0 @@ |
|||
<Project Sdk="Microsoft.NET.Sdk"> |
|||
|
|||
<Import Project="..\..\common.props" /> |
|||
|
|||
<PropertyGroup> |
|||
<TargetFramework>netstandard2.0</TargetFramework> |
|||
<RootNamespace>WY.NewJit</RootNamespace> |
|||
</PropertyGroup> |
|||
|
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'"> |
|||
<DocumentationFile>D:\~LYF\~源码\新版JIT或JIS系统\src\Modules\新版JIT或JIS系统服务端\src\WY.NewJit.Application.Contracts\WY.NewJit.Application.Contracts.xml</DocumentationFile> |
|||
<WarningLevel>0</WarningLevel> |
|||
</PropertyGroup> |
|||
|
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'"> |
|||
<DocumentationFile>D:\~LYF\~源码\新版JIT或JIS系统\src\Modules\新版JIT或JIS系统服务端\src\WY.NewJit.Application.Contracts\WY.NewJit.Application.Contracts.xml</DocumentationFile> |
|||
</PropertyGroup> |
|||
|
|||
<ItemGroup> |
|||
<ProjectReference Include="..\WY.NewJit.Domain.Shared\WY.NewJit.Domain.Shared.csproj" /> |
|||
</ItemGroup> |
|||
|
|||
<ItemGroup> |
|||
<PackageReference Include="Magicodes.IE.Excel" Version="2.5.4.9" /> |
|||
<PackageReference Include="Volo.Abp.ObjectExtending" Version="4.3.3" /> |
|||
<PackageReference Include="Volo.Abp.Account.Application.Contracts" Version="4.3.3" /> |
|||
<PackageReference Include="Volo.Abp.Identity.Application.Contracts" Version="4.3.3" /> |
|||
<PackageReference Include="Volo.Abp.PermissionManagement.Application.Contracts" Version="4.3.3" /> |
|||
<PackageReference Include="Volo.Abp.TenantManagement.Application.Contracts" Version="4.3.3" /> |
|||
<PackageReference Include="Volo.Abp.FeatureManagement.Application.Contracts" Version="4.3.3" /> |
|||
<PackageReference Include="Volo.Abp.SettingManagement.Application.Contracts" Version="4.3.3" /> |
|||
</ItemGroup> |
|||
|
|||
</Project> |
File diff suppressed because it is too large
@ -1,27 +0,0 @@ |
|||
using System; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using WY.NewJit.Books; |
|||
|
|||
namespace Acme.BookStore.Books |
|||
{ |
|||
/// <summary>
|
|||
/// BookAppService使用IObjectMapper将Book对象转换为BookDto对象, 将CreateUpdateBookDto对象转换为Book对象
|
|||
/// </summary>
|
|||
public class BookAppService : |
|||
CrudAppService< |
|||
Book, //The Book entity
|
|||
BookDto, //Used to show books
|
|||
Guid, //Primary key of the book entity
|
|||
PagedAndSortedResultRequestDto, //Used for paging/sorting
|
|||
CreateUpdateBookDto>, //Used to create/update a book
|
|||
IBookAppService //implement the IBookAppService
|
|||
{ |
|||
public BookAppService(IRepository<Book, Guid> repository) |
|||
: base(repository) |
|||
{ |
|||
|
|||
} |
|||
} |
|||
} |
@ -1,461 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using WY.NewJit.Common; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using Shouldly; |
|||
using Volo.Abp.BlobStoring; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 总成配置应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/assembly-cfg-erp")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class AssemblyCfgErpAppService : ApplicationService, IAssemblyCfgErpAppService |
|||
{ |
|||
/// <summary>
|
|||
/// ERP总成仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<AssemblyCfgErp, Guid> _assemblyCfgErpRepository; |
|||
|
|||
/// <summary>
|
|||
/// 结算件仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<AssemblyCfgPart, Guid> _assemblyCfgPartRepos; |
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<AssemblyCfgErpAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// Dapper仓储
|
|||
/// </summary>
|
|||
private readonly NewJitDapperRepository _newJitDapperRepository; |
|||
|
|||
/// <summary>
|
|||
/// BLOB存储
|
|||
/// </summary>
|
|||
private readonly IBlobContainer<OurFileContainer> _blobContainer; |
|||
|
|||
/// <summary>
|
|||
/// 总成领域服务
|
|||
/// </summary>
|
|||
private readonly AssemblyDomainService _assemblyDomainService; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public AssemblyCfgErpAppService( |
|||
IRepository<AssemblyCfgErp, Guid> assemblyCfgErpRepository, |
|||
ILogger<AssemblyCfgErpAppService> logger, |
|||
NewJitDapperRepository newJitDapperRepository, |
|||
IRepository<AssemblyCfgPart, Guid> assemblyCfgPartRepos, |
|||
IBlobContainer<OurFileContainer> blobContainer, |
|||
AssemblyDomainService assemblyDomainService |
|||
) |
|||
{ |
|||
_assemblyCfgErpRepository = assemblyCfgErpRepository; |
|||
_logger = logger; |
|||
_newJitDapperRepository = newJitDapperRepository; |
|||
_assemblyCfgPartRepos = assemblyCfgPartRepos; |
|||
_blobContainer = blobContainer; |
|||
_assemblyDomainService = assemblyDomainService; |
|||
} |
|||
|
|||
#region 私有方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取实体列表
|
|||
/// </summary>
|
|||
private async Task<PagedResultDto<AssemblyCfgErpDto>> QueryByConditionAsync(QueryAssemblyCfgErpDto input, PagedAndSortedBase page) |
|||
{ |
|||
PagedResultDto<AssemblyCfgErpDto> ret = new PagedResultDto<AssemblyCfgErpDto>(); |
|||
|
|||
string sqlCnt = @"
|
|||
select * from |
|||
( |
|||
select count(*) as cnt |
|||
from FisAssemblyCfgErp a |
|||
where IsDeleted <> 1 and PreviousVersionId is null {0} |
|||
) t |
|||
";
|
|||
|
|||
string sql = @"
|
|||
select * from |
|||
( |
|||
select ROW_NUMBER() OVER(order by a.[CreationTime]) as row_number, |
|||
a.* |
|||
from FisAssemblyCfgErp a |
|||
where IsDeleted <> 1 and PreviousVersionId is null {0} |
|||
) t where row_number between {1} and {2} |
|||
";
|
|||
string where = ""; |
|||
if (!string.IsNullOrEmpty(input.ErpAssemblyName)) |
|||
{ |
|||
where += string.Format(" and a.ErpAssemblyName like '%{0}%'", input.ErpAssemblyName); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.ErpAssemblyCode)) |
|||
{ |
|||
where += string.Format(" and a.ErpAssemblyCode like '%{0}%'", input.ErpAssemblyCode); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.VehicleModelCode)) |
|||
{ |
|||
where += string.Format(" and a.VehicleModel = '{0}'", input.VehicleModelCode); |
|||
} |
|||
sqlCnt = string.Format(sqlCnt, where); |
|||
ret.TotalCount = await _newJitDapperRepository.GetSingleBySqlAsync<int>(sqlCnt); |
|||
|
|||
//计算分页
|
|||
int fromRec = page.SkipCount + 1; |
|||
int ToRec = page.SkipCount + page.MaxResultCount; |
|||
sql = string.Format(sql, where, fromRec, ToRec); |
|||
var lst = await _newJitDapperRepository.GetListBySqlAsync<AssemblyCfgErpDto>(sql); |
|||
ret.Items = lst; |
|||
return ret; |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 两个集合比较
|
|||
/// </summary>
|
|||
/// <param name="sourceLst"></param>
|
|||
/// <param name="targetLst"></param>
|
|||
/// <returns></returns>
|
|||
private bool CompareTwoCollection(List<AssemblyCfgPart> sourceLst, List<AssemblyCfgPart> targetLst) |
|||
{ |
|||
if (sourceLst == null || targetLst == null || sourceLst.Count == 0 || targetLst.Count == 0) |
|||
{ |
|||
return false; |
|||
} |
|||
if (sourceLst.Count != targetLst.Count) |
|||
{ |
|||
return false; |
|||
} |
|||
//将目标对象转换成和源对象一样的类型 AssemblyCfgErp2PartDto to BillM100Part
|
|||
var srcOrdLst = sourceLst.OrderBy(itm => itm.PartCode).ThenBy(itm => itm.PartNum).ToList(); |
|||
var tarOrdLst = targetLst.OrderBy(itm => itm.PartCode).ThenBy(itm => itm.PartNum).ToList(); |
|||
|
|||
bool isEqual = srcOrdLst.SequenceEqual(tarOrdLst, new AssemblyCfgPartListEquality()); |
|||
return isEqual; |
|||
} |
|||
|
|||
#endregion
|
|||
|
|||
|
|||
#region 公共方法
|
|||
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<PagedResultDto<AssemblyCfgErpDto>> GetErpAssemblyListAsync(QueryAssemblyCfgErpDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetErpAssemblyListAsync 进入"); |
|||
try |
|||
{ |
|||
PagedResultDto<AssemblyCfgErpDto> ret = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetErpAssemblyListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new PagedResultDto<AssemblyCfgErpDto>(0, new List<AssemblyCfgErpDto>()); |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id"></param>
|
|||
/// <returns></returns>
|
|||
[HttpGet] |
|||
[Route("{id}")]//obj/
|
|||
public virtual async Task<ObjectResultDto<AssemblyCfgErpDto>> GetErpAssemblyAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetAsync 进入"); |
|||
ObjectResultDto<AssemblyCfgErpDto> ret = new ObjectResultDto<AssemblyCfgErpDto>(); |
|||
try |
|||
{ |
|||
AssemblyCfgErp sourceObj = await _assemblyCfgErpRepository.GetAsync(id); |
|||
AssemblyCfgErpDto targetObj = ObjectMapper.Map<AssemblyCfgErp, AssemblyCfgErpDto>(sourceObj); |
|||
ret.Item = targetObj; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "GetAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost] |
|||
[UnitOfWork] |
|||
[Route("")]//create
|
|||
public virtual async Task<ObjectResultDto<Guid>> CreateErpAssemblyAsync(CreateUpdateAssemblyCfgErpDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "CreateAsync 进入"); |
|||
ObjectResultDto<Guid> ret = new ObjectResultDto<Guid>(); |
|||
try |
|||
{ |
|||
int maxVer = _assemblyCfgErpRepository.Any() ? _assemblyCfgErpRepository.Max(itm => itm.ErpAssemblyVersion) : 0; |
|||
|
|||
AssemblyCfgErp obj = ObjectMapper.Map<CreateUpdateAssemblyCfgErpDto, AssemblyCfgErp>(input); |
|||
obj.SetErpAssemblyVersion(++maxVer); |
|||
foreach (var childObj in obj.Details) |
|||
{ |
|||
childObj.SetId(GuidGenerator.Create()); |
|||
} |
|||
|
|||
AssemblyCfgErp obj2 = await _assemblyCfgErpRepository.InsertAsync(obj); |
|||
ret.Item = obj2.Id; //返回添加对象的主键
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "CreateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id"></param>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPut] |
|||
[UnitOfWork] |
|||
[Route("{id}")]//update/
|
|||
public virtual async Task<ObjectResultDto> UpdateErpAssemblyAsync(Guid id, CreateUpdateAssemblyCfgErpDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "UpdateAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
AssemblyCfgErp targetObj = await _assemblyCfgErpRepository.GetAsync(id); |
|||
await _assemblyCfgPartRepos.DeleteManyAsync(targetObj.Details); //先删除子实体列表
|
|||
ObjectMapper.Map<CreateUpdateAssemblyCfgErpDto, AssemblyCfgErp>(input, targetObj); |
|||
await _assemblyCfgErpRepository.UpdateAsync(targetObj); |
|||
await _assemblyCfgPartRepos.InsertManyAsync(targetObj.Details); //再添加子实体列表
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "UpdateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id"></param>
|
|||
/// <returns></returns>
|
|||
[UnitOfWork] |
|||
[HttpDelete] |
|||
[Route("{id}")]//delete/
|
|||
public virtual async Task<ObjectResultDto> DeleteErpAssemblyAsync(string id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DeleteAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
List<Guid> idLst = ServerHelper.GetGuidListByStr(id); |
|||
foreach (Guid item in idLst) |
|||
{ |
|||
var sourceObj = await _assemblyCfgErpRepository.GetAsync(item); |
|||
if (sourceObj != null) |
|||
{ |
|||
await _assemblyCfgPartRepos.DeleteManyAsync(sourceObj.Details); |
|||
await _assemblyCfgErpRepository.DeleteAsync(item); |
|||
} |
|||
} |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DeleteAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork(false)] |
|||
[HttpPost] |
|||
[Route("export")] |
|||
public virtual async Task<ObjectResultDto<string>> ExportErpAssemblyAsync(QueryAssemblyCfgErpDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "ExportErpAssemblyAsync 进入"); |
|||
ObjectResultDto<string> ret = new ObjectResultDto<string>(); |
|||
try |
|||
{ |
|||
input.SkipCount = 0; |
|||
input.MaxResultCount = 50000; |
|||
PagedResultDto<AssemblyCfgErpDto> query = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
List<AssemblyCfgErpDto> items = query.Items.ToList(); |
|||
//将实体列表转换成excel文件流
|
|||
IExporter exporter = new ExcelExporter(); |
|||
byte[] byteArr = await exporter.ExportAsByteArray<AssemblyCfgErpDto>(items); |
|||
byteArr.ShouldNotBeNull(); |
|||
//将excel文件流保存到服务器端文件系统
|
|||
string fileName = string.Format("ERP总成配置_{0}.xlsx", Guid.NewGuid().ToString()); |
|||
await _blobContainer.SaveAsync(fileName, byteArr); |
|||
|
|||
ret.Item = fileName; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "ExportErpAssemblyAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 校验ERP总成:是否版本覆盖
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
//[UnitOfWork]
|
|||
//[HttpPost]
|
|||
//[Route("check")]
|
|||
//public virtual async Task<ObjectResultDto> CheckErpAssembly(CreateUpdateAssemblyCfgErpDto input)
|
|||
//{
|
|||
// _logger.LogDebug(_errorMessagePrefix + "CheckErpAssembly 进入");
|
|||
|
|||
// ObjectResultDto ret = new ObjectResultDto();
|
|||
// if (input.IsCover == true && input.PreviousVersionId != null)
|
|||
// {
|
|||
// Guid gu = (Guid)input.PreviousVersionId;
|
|||
// await _assemblyCfgErpRepository.GetAsync(gu);
|
|||
// }
|
|||
// else
|
|||
// {
|
|||
// Guid gu = (Guid)input.PreviousVersionId;
|
|||
// await _assemblyCfgErpRepository.GetAsync(gu);
|
|||
// }
|
|||
// _logger.LogDebug(_errorMessagePrefix + "CheckErpAssembly 完成");
|
|||
|
|||
// return ret;
|
|||
//}
|
|||
|
|||
/// <summary>
|
|||
/// 系统初始化时使用,去掉重复的ERP总成
|
|||
/// </summary>
|
|||
/// <param name="takeCount"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost] |
|||
[Route("remove-repeat")] |
|||
public virtual async Task<ObjectResultDto> RemoveRepeatErpAssembly(int takeCount) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "RemoveRepeatErpAssembly 进入"); |
|||
|
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
await _newJitDapperRepository.ExecuteSqlAsync("update FisAssemblyCfgErp set PreviousVersionId = null", null, true); |
|||
|
|||
//取Erp总成
|
|||
List<AssemblyCfgErp> allLst = await _assemblyCfgErpRepository.GetListAsync(true); |
|||
|
|||
List<AssemblyCfgErp> ordLst = allLst.OrderByDescending(itm => itm.ErpAssemblyVersion).ToList(); |
|||
|
|||
foreach (AssemblyCfgErp ordItm in ordLst) |
|||
{ |
|||
var filterLst = allLst.Where(itm => itm.ErpAssemblyVersion < ordItm.ErpAssemblyVersion); |
|||
foreach (AssemblyCfgErp filterItm in filterLst) |
|||
{ |
|||
//if (filterItm.PreviousVersionId != null)
|
|||
//{
|
|||
// continue;
|
|||
//}
|
|||
bool isSame = CompareTwoCollection(ordItm.Details, filterItm.Details); |
|||
if (isSame) |
|||
{ |
|||
await _assemblyDomainService.UpdatePreviousVersionId(filterItm.Id, ordItm.Id); //更新历史数据PreviousVersionId字段
|
|||
} |
|||
} |
|||
} |
|||
|
|||
_logger.LogDebug(_errorMessagePrefix + "RemoveRepeatErpAssembly 完成"); |
|||
|
|||
ret.Status = true; |
|||
return ret; |
|||
|
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "RemoveRepeatErpAssembly 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 同步ERP总成(从结算系统)(天合版本)
|
|||
/// </summary>
|
|||
/// <param name="takeRecordCount"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost] |
|||
[Route("sync-erp-assembly")] |
|||
public virtual void SyncErpAssemblyAsync(int takeRecordCount) |
|||
{ |
|||
_assemblyDomainService.SyncErpAssemblyAsync(takeRecordCount).GetAwaiter().GetResult(); |
|||
RemoveRepeatErpAssembly(takeRecordCount).GetAwaiter().GetResult(); |
|||
} |
|||
|
|||
#endregion
|
|||
|
|||
|
|||
|
|||
} |
|||
} |
@ -1,205 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 总成配置应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/assembly-cfg-part")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class AssemblyCfgPartAppService : ApplicationService, IAssemblyCfgPartAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<AssemblyCfgPart, Guid> _assemblyCfgPartRepository; |
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<AssemblyCfgPartAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public AssemblyCfgPartAppService( |
|||
IRepository<AssemblyCfgPart, Guid> assemblyCfgPartRepository, |
|||
ILogger<AssemblyCfgPartAppService> logger |
|||
) |
|||
{ |
|||
_assemblyCfgPartRepository = assemblyCfgPartRepository; |
|||
_logger = logger; |
|||
} |
|||
|
|||
#region 公共方法
|
|||
|
|||
/// <summary>
|
|||
/// 根据ID获取实体列表
|
|||
/// </summary>
|
|||
/// <param name="erpAssemblyId">Erp总成Id</param>
|
|||
/// <returns></returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<ListResultDto<AssemblyCfgPartDto>> GetPartListAsync(Guid erpAssemblyId) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetListAsync 进入"); |
|||
try |
|||
{ |
|||
var query = _assemblyCfgPartRepository.Where(itm => itm.Id != Guid.Empty); |
|||
List<AssemblyCfgPart> lst = await query.ToListAsync(); |
|||
|
|||
List<AssemblyCfgPartDto> items = |
|||
ObjectMapper.Map<List<AssemblyCfgPart>, List<AssemblyCfgPartDto>>(lst); |
|||
|
|||
return new ListResultDto<AssemblyCfgPartDto>(items); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new ListResultDto<AssemblyCfgPartDto>(new List<AssemblyCfgPartDto>()); |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id"></param>
|
|||
/// <returns></returns>
|
|||
[HttpGet] |
|||
[Route("{id}")]//obj/
|
|||
public virtual async Task<ObjectResultDto<AssemblyCfgPartDto>> GetPartAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetAsync 进入"); |
|||
ObjectResultDto<AssemblyCfgPartDto> ret = new ObjectResultDto<AssemblyCfgPartDto>(); |
|||
try |
|||
{ |
|||
AssemblyCfgPart sourceObj = await _assemblyCfgPartRepository.GetAsync(id); |
|||
AssemblyCfgPartDto targetObj = ObjectMapper.Map<AssemblyCfgPart, AssemblyCfgPartDto>(sourceObj); |
|||
ret.Item = targetObj; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "GetAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost] |
|||
[UnitOfWork] |
|||
[Route("")]//create
|
|||
public virtual async Task<ObjectResultDto<Guid>> CreatePartAsync(CreateUpdateAssemblyCfgPartDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "CreateAsync 进入"); |
|||
ObjectResultDto<Guid> ret = new ObjectResultDto<Guid>(); |
|||
try |
|||
{ |
|||
AssemblyCfgPart obj = ObjectMapper.Map<CreateUpdateAssemblyCfgPartDto, AssemblyCfgPart>(input); |
|||
AssemblyCfgPart obj2 = await _assemblyCfgPartRepository.InsertAsync(obj); |
|||
ret.Item = obj2.Id; //返回添加对象的主键
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "CreateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id"></param>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPut] |
|||
[UnitOfWork] |
|||
[Route("{id}")]//update/
|
|||
public virtual async Task<ObjectResultDto> UpdatePartAsync(Guid id, CreateUpdateAssemblyCfgPartDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "UpdateAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
AssemblyCfgPart targetObj = await _assemblyCfgPartRepository.GetAsync(id); |
|||
ObjectMapper.Map<CreateUpdateAssemblyCfgPartDto, AssemblyCfgPart>(input, targetObj); |
|||
await _assemblyCfgPartRepository.UpdateAsync(targetObj); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "UpdateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id"></param>
|
|||
/// <returns></returns>
|
|||
[UnitOfWork] |
|||
[HttpDelete] |
|||
[Route("{id}")]//delete/
|
|||
public virtual async Task<ObjectResultDto> DeletePartAsync(string id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DeleteAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
List<Guid> idLst = ServerHelper.GetGuidListByStr(id); |
|||
await _assemblyCfgPartRepository.DeleteManyAsync(idLst, true); |
|||
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DeleteAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,141 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using WY.NewJit.Common; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using Shouldly; |
|||
using Volo.Abp.BlobStoring; |
|||
|
|||
namespace WY.NewJit.MsgBaseData.AssemblyCfgs |
|||
{ |
|||
/// <summary>
|
|||
/// 总成配置应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/assembly-cfg-vehicle")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class AssemblyCfgVehicleAppService : ApplicationService, IAssemblyCfgVehicleAppService |
|||
{ |
|||
/// <summary>
|
|||
/// ERP总成仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<AssemblyCfgErp, Guid> _assemblyCfgErpRepository; |
|||
|
|||
/// <summary>
|
|||
/// 结算件仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<AssemblyCfgPart, Guid> _assemblyCfgPartRepos; |
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<AssemblyCfgVehicleAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// Dapper仓储
|
|||
/// </summary>
|
|||
private readonly NewJitDapperRepository _newJitDapperRepository; |
|||
|
|||
/// <summary>
|
|||
/// BLOB存储
|
|||
/// </summary>
|
|||
private readonly IBlobContainer<OurFileContainer> _blobContainer; |
|||
|
|||
/// <summary>
|
|||
/// 整车总成配置仓库
|
|||
/// </summary>
|
|||
private readonly IRepository<AssemblyCfgVehicle, Guid> _assemblyCfgVehicleRepository; |
|||
|
|||
/// <summary>
|
|||
/// Erp总成应用服务
|
|||
/// </summary>
|
|||
private readonly AssemblyCfgErpAppService _assemblyCfgErpAppService; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public AssemblyCfgVehicleAppService( |
|||
IRepository<AssemblyCfgErp, Guid> assemblyCfgProductRepository, |
|||
ILogger<AssemblyCfgVehicleAppService> logger, |
|||
NewJitDapperRepository newJitDapperRepository, |
|||
IRepository<AssemblyCfgPart, Guid> assemblyCfgPartRepos, |
|||
IBlobContainer<OurFileContainer> blobContainer, |
|||
IRepository<AssemblyCfgVehicle, Guid> assemblyCfgVehicleRepository, |
|||
AssemblyCfgErpAppService assemblyCfgErpAppService |
|||
) |
|||
{ |
|||
_assemblyCfgErpRepository = assemblyCfgProductRepository; |
|||
_logger = logger; |
|||
_newJitDapperRepository = newJitDapperRepository; |
|||
_assemblyCfgPartRepos = assemblyCfgPartRepos; |
|||
_blobContainer = blobContainer; |
|||
_assemblyCfgVehicleRepository = assemblyCfgVehicleRepository; |
|||
_assemblyCfgErpAppService = assemblyCfgErpAppService; |
|||
} |
|||
|
|||
#region 公共方法
|
|||
|
|||
/// <summary>
|
|||
/// 根据Id获取实体列表
|
|||
/// </summary>
|
|||
/// <param name="vehicleAssemblyId">整车总成ID</param>
|
|||
/// <returns>Erp总成实体列表</returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<List<AssemblyCfgErpDto>> GetErpAssemblyListAsync(Guid vehicleAssemblyId) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetErpAssemblyListAsync 进入"); |
|||
List<AssemblyCfgErpDto> ret = new List<AssemblyCfgErpDto>(); |
|||
try |
|||
{ |
|||
AssemblyCfgVehicle vobj = await _assemblyCfgVehicleRepository.GetAsync(vehicleAssemblyId); |
|||
if (vobj != null && vobj.AssemblyCfgVehicleChilds != null && vobj.AssemblyCfgVehicleChilds.Count > 0) |
|||
{ |
|||
List<AssemblyCfgVehicleChild> vehicleChildLst = vobj.AssemblyCfgVehicleChilds; |
|||
|
|||
foreach (AssemblyCfgVehicleChild vehicleChildItem in vehicleChildLst) |
|||
{ |
|||
ObjectResultDto<AssemblyCfgErpDto> erpAssemblyObj = await _assemblyCfgErpAppService.GetErpAssemblyAsync(vehicleChildItem.ErpAssemblyId); |
|||
ret.Add(erpAssemblyObj.Item); |
|||
} |
|||
return ret; |
|||
} |
|||
else |
|||
{ |
|||
return new List<AssemblyCfgErpDto>(); |
|||
} |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetErpAssemblyListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new List<AssemblyCfgErpDto>(); |
|||
} |
|||
} |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,95 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using Volo.Abp.Domain.Repositories.Dapper; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using WY.NewJit.Common; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 通用字典应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/dic")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class DicAppService : ApplicationService, IDicAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 字典领域服务
|
|||
/// </summary>
|
|||
private readonly DicDomainService _dicDomainService; |
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<PartCfgAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public DicAppService( |
|||
DicDomainService dicDomainService, |
|||
ILogger<PartCfgAppService> logger |
|||
) |
|||
{ |
|||
_dicDomainService = dicDomainService; |
|||
_logger = logger; |
|||
} |
|||
|
|||
|
|||
#region 公共方法
|
|||
|
|||
/// <summary>
|
|||
/// 根据字典类型名称取通用字典信息列表
|
|||
/// </summary>
|
|||
/// <param name="dicTypeName">字典类型名称</param>
|
|||
/// <returns>返回符合条件字典信息列表</returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<ListResultDto<DicItemDto>> GetDicListAsync(string dicTypeName) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetDicListAsync 进入"); |
|||
try |
|||
{ |
|||
List<DicItem> lst = _dicDomainService.GetDicItems(dicTypeName); |
|||
|
|||
List<DicItemDto> items = |
|||
ObjectMapper.Map<List<DicItem>, List<DicItemDto>>(lst); |
|||
|
|||
return new ListResultDto<DicItemDto>(items); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetDicListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new ListResultDto<DicItemDto>(new List<DicItemDto>()); |
|||
} |
|||
} |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,370 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using WY.NewJit.Common; |
|||
using Shouldly; |
|||
using Volo.Abp.BlobStoring; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 排除零件配置服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/exclude-part-cfg")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class ExcludePartCfgAppService : ApplicationService, IExcludePartCfgAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<ExcludePartCfg, Guid> _excludePartCfgRepository; |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<ExcludePartCfgAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// 通用字典领域服务
|
|||
/// </summary>
|
|||
private DicDomainService _dicDomainSrv; |
|||
|
|||
/// <summary>
|
|||
/// 零件仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<PartCfg, Guid> _partCfgRepository; |
|||
|
|||
/// <summary>
|
|||
/// Dapper仓储
|
|||
/// </summary>
|
|||
private readonly NewJitDapperRepository _newJitDapperRepository; |
|||
/// <summary>
|
|||
/// BLOB存储
|
|||
/// </summary>
|
|||
private readonly IBlobContainer<OurFileContainer> _blobContainer; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public ExcludePartCfgAppService( |
|||
IRepository<ExcludePartCfg, Guid> excludePartCfgRepository, |
|||
ILogger<ExcludePartCfgAppService> logger, |
|||
DicDomainService dicDomainSrv, |
|||
IRepository<PartCfg, Guid> partCfgRepository, |
|||
NewJitDapperRepository newJitDapperRepository, |
|||
IBlobContainer<OurFileContainer> blobContainer |
|||
) |
|||
{ |
|||
_excludePartCfgRepository = excludePartCfgRepository; |
|||
_logger = logger; |
|||
_dicDomainSrv = dicDomainSrv; |
|||
_partCfgRepository = partCfgRepository; |
|||
_newJitDapperRepository = newJitDapperRepository; |
|||
_blobContainer = blobContainer; |
|||
} |
|||
|
|||
#region 私有方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取实体列表
|
|||
/// </summary>
|
|||
private async Task<PagedResultDto<ExcludePartCfgDto>> QueryByConditionAsync(QueryExcludePartCfgDto input, PagedAndSortedBase page) |
|||
{ |
|||
PagedResultDto<ExcludePartCfgDto> ret = new PagedResultDto<ExcludePartCfgDto>(); |
|||
|
|||
string sqlCnt = @"
|
|||
with d as |
|||
( |
|||
select * from FisDicItem where DicTypeCode in (select DicTypeCode from FisDicType where DicTypeName = '车型') |
|||
) |
|||
select * from |
|||
( |
|||
select count(*) as cnt |
|||
from FisExcludePartCfg e |
|||
left join d on e.VehicleModelCode = d.DicItemCode |
|||
left join FisPartCfg p on e.PartCode = p.PartCode |
|||
where e.IsDeleted <> 1 {0} |
|||
) t |
|||
";
|
|||
string sql = @"
|
|||
with d as |
|||
( |
|||
select * from FisDicItem where DicTypeCode in (select DicTypeCode from FisDicType where DicTypeName = '车型') |
|||
) |
|||
select * from |
|||
( |
|||
select ROW_NUMBER() OVER({3}) as row_number, |
|||
e.*, d.DicItemName as VehicleModelName, p.PartName |
|||
from FisExcludePartCfg e |
|||
left join d on e.VehicleModelCode = d.DicItemCode |
|||
left join FisPartCfg p on e.PartCode = p.PartCode |
|||
where e.IsDeleted <> 1 {0} |
|||
) t where row_number between {1} and {2} |
|||
";
|
|||
string where = ""; |
|||
if (!string.IsNullOrEmpty(input.VehicleModelCode)) |
|||
{ |
|||
where += string.Format(" and VehicleModelCode like '%{0}%'", input.VehicleModelCode); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.PartCode)) |
|||
{ |
|||
where += string.Format(" and e.PartCode like '%{0}%'", input.PartCode); |
|||
} |
|||
#region 排序
|
|||
string order = "order by e.VehicleModelCode, e.PartCode"; |
|||
if (string.IsNullOrEmpty(page.Sorting) == false) |
|||
{ |
|||
string[] arr = page.Sorting.Split(" "); |
|||
if (arr.Length == 2) |
|||
{ |
|||
string sortField = ""; |
|||
string sortType = ""; |
|||
if (arr[0].EquaIgnoreCase("PartCode")) |
|||
{ |
|||
sortField = "e." + arr[0]; |
|||
} |
|||
else |
|||
{ |
|||
sortField = arr[0]; |
|||
} |
|||
if (arr[1] == "ascending") |
|||
{ |
|||
sortType = "asc"; |
|||
} |
|||
else if (arr[1] == "descending") |
|||
{ |
|||
sortType = "desc"; |
|||
} |
|||
order = $"order by {sortField} {sortType}"; |
|||
} |
|||
} |
|||
#endregion
|
|||
sqlCnt = string.Format(sqlCnt, where); |
|||
ret.TotalCount = await _newJitDapperRepository.GetSingleBySqlAsync<int>(sqlCnt); |
|||
|
|||
//计算分页
|
|||
int fromRec = page.SkipCount + 1; |
|||
int ToRec = page.SkipCount + page.MaxResultCount; |
|||
sql = string.Format(sql, where, fromRec, ToRec, order); |
|||
var lst = await _newJitDapperRepository.GetListBySqlAsync<ExcludePartCfgDto>(sql); |
|||
ret.Items = lst; |
|||
return ret; |
|||
} |
|||
#endregion
|
|||
|
|||
#region 公共方法
|
|||
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<PagedResultDto<ExcludePartCfgDto>> GetListAsync(QueryExcludePartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetListAsync 进入"); |
|||
try |
|||
{ |
|||
PagedResultDto<ExcludePartCfgDto> ret = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new PagedResultDto<ExcludePartCfgDto>(0, new List<ExcludePartCfgDto>()); |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
[HttpGet] |
|||
[Route("{id}")]//obj/
|
|||
public virtual async Task<ObjectResultDto<ExcludePartCfgDto>> GetAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetAsync 进入"); |
|||
ObjectResultDto<ExcludePartCfgDto> ret = new ObjectResultDto<ExcludePartCfgDto>(); |
|||
try |
|||
{ |
|||
ExcludePartCfg sourceObj = await _excludePartCfgRepository.GetAsync(id); |
|||
ExcludePartCfgDto targetObj = ObjectMapper.Map<ExcludePartCfg, ExcludePartCfgDto>(sourceObj); |
|||
ret.Item = targetObj; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "GetAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPost] |
|||
[UnitOfWork] |
|||
[Route("")]//create
|
|||
public virtual async Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateExcludePartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "CreateAsync 进入"); |
|||
ObjectResultDto<Guid> ret = new ObjectResultDto<Guid>(); |
|||
try |
|||
{ |
|||
ExcludePartCfg obj = ObjectMapper.Map<CreateUpdateExcludePartCfgDto, ExcludePartCfg>(input); |
|||
ExcludePartCfg obj2 = await _excludePartCfgRepository.InsertAsync(obj); |
|||
ret.Item = obj2.Id; //返回添加对象的主键
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "CreateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPut] |
|||
[UnitOfWork] |
|||
[Route("{id}")]//update/
|
|||
public virtual async Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateExcludePartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "UpdateAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
ExcludePartCfg targetObj = await _excludePartCfgRepository.GetAsync(id); |
|||
ObjectMapper.Map<CreateUpdateExcludePartCfgDto, ExcludePartCfg>(input, targetObj); |
|||
await _excludePartCfgRepository.UpdateAsync(targetObj); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "UpdateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpDelete] |
|||
[Route("{id}")]//delete/
|
|||
public virtual async Task<ObjectResultDto> DeleteAsync(string id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DeleteAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
List<Guid> idLst = ServerHelper.GetGuidListByStr(id); |
|||
await _excludePartCfgRepository.DeleteManyAsync(idLst, true); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DeleteAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork(false)] |
|||
[HttpPost] |
|||
[Route("export")] |
|||
public virtual async Task<ObjectResultDto<string>> ExportAsync(QueryExcludePartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "ExportAsync 进入"); |
|||
ObjectResultDto<string> ret = new ObjectResultDto<string>(); |
|||
try |
|||
{ |
|||
input.SkipCount = 0; |
|||
input.MaxResultCount = 50000; |
|||
PagedResultDto<ExcludePartCfgDto> query = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
List<ExcludePartCfgDto> items = query.Items.ToList(); |
|||
//将实体列表转换成excel文件流
|
|||
IExporter exporter = new ExcelExporter(); |
|||
byte[] byteArr = await exporter.ExportAsByteArray<ExcludePartCfgDto>(items); |
|||
byteArr.ShouldNotBeNull(); |
|||
//将excel文件流保存到服务器端文件系统
|
|||
string fileName = string.Format("排除零件配置_{0}.xlsx", Guid.NewGuid().ToString()); |
|||
await _blobContainer.SaveAsync(fileName, byteArr); |
|||
|
|||
ret.Item = fileName; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "ExportAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("import")] |
|||
public virtual async Task<ObjectResultDto> ImportAsync(byte[] input) |
|||
{ |
|||
throw new NotImplementedException("暂不实现所有导入"); |
|||
} |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,376 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using Volo.Abp.Domain.Repositories.Dapper; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using WY.NewJit.Common; |
|||
using Shouldly; |
|||
using Volo.Abp.BlobStoring; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 日志提醒应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/log-remind")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class LogRemindAppService : ApplicationService, ILogRemindAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<LogRemind, Guid> _logRemindRepository; |
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<LogRemindAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// Dapper仓储
|
|||
/// </summary>
|
|||
private readonly NewJitDapperRepository _newJitDapperRepository; |
|||
|
|||
/// <summary>
|
|||
/// BLOB存储
|
|||
/// </summary>
|
|||
private readonly IBlobContainer<OurFileContainer> _blobContainer; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public LogRemindAppService( |
|||
IRepository<LogRemind, Guid> logRemindRepository, |
|||
ILogger<LogRemindAppService> logger, |
|||
NewJitDapperRepository newJitDapperRepository, |
|||
IBlobContainer<OurFileContainer> blobContainer |
|||
) |
|||
{ |
|||
_logRemindRepository = logRemindRepository; |
|||
_logger = logger; |
|||
_newJitDapperRepository = newJitDapperRepository; |
|||
_blobContainer = blobContainer; |
|||
} |
|||
|
|||
#region 私有方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取实体列表
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
private IQueryable<LogRemind> QueryByCondition(QueryLogRemindDto input) |
|||
{ |
|||
StringBuilder strBuild = new StringBuilder("1=1"); |
|||
if (input.LogType != LogTypeEnum.None) |
|||
{ |
|||
strBuild.AppendFormat(" and LogType = {0}", ((int)input.LogType).ToString()); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.LogTitle)) |
|||
{ |
|||
strBuild.AppendFormat(" and LogTitle.Contains(\"{0}\")", input.LogTitle); |
|||
} |
|||
if (input.SeriousLevel != SeriousLevelEnum.None) |
|||
{ |
|||
strBuild.AppendFormat(" and SeriousLevel = {0}", ((int)input.SeriousLevel).ToString()); |
|||
} |
|||
var qry1 = _logRemindRepository.Where(strBuild.ToString()); |
|||
if (input.LogStatus != LogStatusEnum.None) |
|||
{ |
|||
qry1 = qry1.Where(itm => itm.LogStatus == input.LogStatus); |
|||
} |
|||
return qry1; |
|||
} |
|||
#endregion
|
|||
|
|||
#region 公共方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<PagedResultDto<LogRemindDto>> GetListAsync(QueryLogRemindDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetListAsync 进入"); |
|||
var page = (PagedAndSortedBase)input; |
|||
try |
|||
{ |
|||
IQueryable<LogRemind> qry1 = QueryByCondition(input); |
|||
if (string.IsNullOrEmpty(page.Sorting)) |
|||
{ |
|||
page.Sorting = "CreationTime"; |
|||
} |
|||
if (qry1.Count() == 0) |
|||
{ |
|||
return new PagedResultDto<LogRemindDto>(0, new List<LogRemindDto>()); |
|||
} |
|||
var query = qry1 |
|||
.OrderBy(page.Sorting) |
|||
.Skip(page.SkipCount) |
|||
.Take(page.MaxResultCount); |
|||
|
|||
int totalCount = await query.CountAsync(); |
|||
List<LogRemind> lst = await query.ToListAsync(); |
|||
|
|||
List<LogRemindDto> items = |
|||
ObjectMapper.Map<List<LogRemind>, List<LogRemindDto>>(lst); |
|||
|
|||
return new PagedResultDto<LogRemindDto>(totalCount, items); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new PagedResultDto<LogRemindDto>(0, new List<LogRemindDto>()); |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
[HttpGet] |
|||
[Route("{id}")]//obj/
|
|||
public virtual async Task<ObjectResultDto<LogRemindDto>> GetAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetAsync 进入"); |
|||
ObjectResultDto<LogRemindDto> ret = new ObjectResultDto<LogRemindDto>(); |
|||
try |
|||
{ |
|||
LogRemind sourceObj = await _logRemindRepository.GetAsync(id); |
|||
LogRemindDto targetObj = ObjectMapper.Map<LogRemind, LogRemindDto>(sourceObj); |
|||
ret.Item = targetObj; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "GetAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPost] |
|||
[UnitOfWork] |
|||
[Route("")]//create
|
|||
public virtual async Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateLogRemindDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "CreateAsync 进入"); |
|||
ObjectResultDto<Guid> ret = new ObjectResultDto<Guid>(); |
|||
try |
|||
{ |
|||
LogRemind obj = ObjectMapper.Map<CreateUpdateLogRemindDto, LogRemind>(input); |
|||
LogRemind obj2 = await _logRemindRepository.InsertAsync(obj); |
|||
ret.Item = obj2.Id; //返回添加对象的主键
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "CreateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPut] |
|||
[UnitOfWork] |
|||
[Route("{id}")]//update/
|
|||
public virtual async Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateLogRemindDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "UpdateAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
LogRemind targetObj = await _logRemindRepository.GetAsync(id); |
|||
ObjectMapper.Map<CreateUpdateLogRemindDto, LogRemind>(input, targetObj); |
|||
await _logRemindRepository.UpdateAsync(targetObj); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "UpdateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpDelete] |
|||
[Route("{id}")]//delete/
|
|||
public virtual async Task<ObjectResultDto> DeleteAsync(string id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DeleteAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
List<Guid> idLst = ServerHelper.GetGuidListByStr(id); |
|||
await _logRemindRepository.DeleteManyAsync(idLst, true); |
|||
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DeleteAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork(false)] |
|||
[HttpPost] |
|||
[Route("export")] |
|||
public virtual async Task<ObjectResultDto<string>> ExportAsync(QueryLogRemindDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "ExportAsync 进入"); |
|||
ObjectResultDto<string> ret = new ObjectResultDto<string>(); |
|||
try |
|||
{ |
|||
IQueryable<LogRemind> query = QueryByCondition(input); |
|||
List<LogRemind> lst = await query.ToListAsync(); |
|||
List<LogRemindDto> items = |
|||
ObjectMapper.Map<List<LogRemind>, List<LogRemindDto>>(lst); |
|||
//将实体列表转换成excel文件流
|
|||
IExporter exporter = new ExcelExporter(); |
|||
byte[] byteArr = await exporter.ExportAsByteArray<LogRemindDto>(items); |
|||
byteArr.ShouldNotBeNull(); |
|||
//将excel文件流保存到服务器端文件系统
|
|||
string fileName = string.Format("日志提醒_{0}.xlsx", Guid.NewGuid().ToString()); |
|||
await _blobContainer.SaveAsync(fileName, byteArr); |
|||
|
|||
ret.Item = fileName; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "ExportAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("import")] |
|||
public virtual async Task<ObjectResultDto> ImportAsync(byte[] input) |
|||
{ |
|||
throw new NotImplementedException("暂不实现所有导入"); |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 执行处理
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("do-process")] |
|||
public virtual async Task<ObjectResultDto> DoProcessAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DoProcessAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
LogRemind obj = await _logRemindRepository.GetAsync(id); |
|||
obj.LogStatus = LogStatusEnum.Process; |
|||
await _logRemindRepository.UpdateAsync(obj); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DoProcessAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 执行忽略
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("do-ignore")] |
|||
public virtual async Task<ObjectResultDto> DoIgnoreAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DoIgnoreAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
LogRemind obj = await _logRemindRepository.GetAsync(id); |
|||
obj.LogStatus = LogStatusEnum.Ignore; |
|||
await _logRemindRepository.UpdateAsync(obj); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DoIgnoreAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,318 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using Volo.Abp.Domain.Repositories.Dapper; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using WY.NewJit.Common; |
|||
using Shouldly; |
|||
using Volo.Abp.BlobStoring; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 零件管理应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/part-cfg")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class PartCfgAppService : ApplicationService, IPartCfgAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<PartCfg, Guid> _partCfgRepository; |
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<PartCfgAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// Dapper仓储
|
|||
/// </summary>
|
|||
private readonly NewJitDapperRepository _newJitDapperRepository; |
|||
|
|||
/// <summary>
|
|||
/// BLOB存储
|
|||
/// </summary>
|
|||
private readonly IBlobContainer<OurFileContainer> _blobContainer; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public PartCfgAppService( |
|||
IRepository<PartCfg, Guid> partCfgRepository, |
|||
ILogger<PartCfgAppService> logger, |
|||
NewJitDapperRepository newJitDapperRepository, |
|||
IBlobContainer<OurFileContainer> blobContainer |
|||
) |
|||
{ |
|||
_partCfgRepository = partCfgRepository; |
|||
_logger = logger; |
|||
_newJitDapperRepository = newJitDapperRepository; |
|||
_blobContainer = blobContainer; |
|||
} |
|||
|
|||
#region 私有方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取实体列表
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
private IQueryable<PartCfg> QueryByCondition(QueryPartCfgDto input) |
|||
{ |
|||
IQueryable<PartCfg> ret = _partCfgRepository.Where(itm => 1 == 1); |
|||
if (!string.IsNullOrEmpty(input.PartCode)) |
|||
{ |
|||
ret = ret.Where(itm => itm.PartCode.Contains(input.PartCode)); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.PartName)) |
|||
{ |
|||
ret = ret.Where(itm => itm.PartName.Contains(input.PartName)); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.PartType)) |
|||
{ |
|||
ret = ret.Where(itm => itm.PartType == input.PartType); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.PartChildType)) |
|||
{ |
|||
ret = ret.Where(itm => itm.PartChildType == input.PartChildType); |
|||
} |
|||
return ret; |
|||
} |
|||
#endregion
|
|||
|
|||
#region 公共方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<PagedResultDto<PartCfgDto>> GetListAsync(QueryPartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetListAsync 进入"); |
|||
try |
|||
{ |
|||
var page = (PagedAndSortedBase)input; |
|||
IQueryable<PartCfg> qry1 = QueryByCondition(input); |
|||
if (string.IsNullOrEmpty(page.Sorting)) |
|||
{ |
|||
page.Sorting = "PartCode"; |
|||
} |
|||
if (qry1.Count() == 0) |
|||
{ |
|||
return new PagedResultDto<PartCfgDto>(0, new List<PartCfgDto>()); |
|||
} |
|||
var query = qry1 |
|||
.OrderBy(page.Sorting) |
|||
.Skip(page.SkipCount) |
|||
.Take(page.MaxResultCount); |
|||
|
|||
int totalCount = await qry1.CountAsync(); //返回总记录数而不是当前页记录数
|
|||
List<PartCfg> lst = await query.ToListAsync(); |
|||
|
|||
List<PartCfgDto> items = |
|||
ObjectMapper.Map<List<PartCfg>, List<PartCfgDto>>(lst); |
|||
|
|||
return new PagedResultDto<PartCfgDto>(totalCount, items); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new PagedResultDto<PartCfgDto>(0, new List<PartCfgDto>()); |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
[HttpGet] |
|||
[Route("{id}")]//obj/
|
|||
public virtual async Task<ObjectResultDto<PartCfgDto>> GetAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetAsync 进入"); |
|||
ObjectResultDto<PartCfgDto> ret = new ObjectResultDto<PartCfgDto>(); |
|||
try |
|||
{ |
|||
PartCfg sourceObj = await _partCfgRepository.GetAsync(id); |
|||
PartCfgDto targetObj = ObjectMapper.Map<PartCfg, PartCfgDto>(sourceObj); |
|||
ret.Item = targetObj; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "GetAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPost] |
|||
[UnitOfWork] |
|||
[Route("")]//create
|
|||
public virtual async Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdatePartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "CreateAsync 进入"); |
|||
ObjectResultDto<Guid> ret = new ObjectResultDto<Guid>(); |
|||
try |
|||
{ |
|||
PartCfg obj = ObjectMapper.Map<CreateUpdatePartCfgDto, PartCfg>(input); |
|||
PartCfg obj2 = await _partCfgRepository.InsertAsync(obj); |
|||
ret.Item = obj2.Id; //返回添加对象的主键
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "CreateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPut] |
|||
[UnitOfWork] |
|||
[Route("{id}")]//update/
|
|||
public virtual async Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdatePartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "UpdateAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
PartCfg targetObj = await _partCfgRepository.GetAsync(id); |
|||
ObjectMapper.Map<CreateUpdatePartCfgDto, PartCfg>(input, targetObj); |
|||
await _partCfgRepository.UpdateAsync(targetObj); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "UpdateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpDelete] |
|||
[Route("{id}")]//delete/
|
|||
public virtual async Task<ObjectResultDto> DeleteAsync(string id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DeleteAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
List<Guid> idLst = ServerHelper.GetGuidListByStr(id); |
|||
await _partCfgRepository.DeleteManyAsync(idLst, true); |
|||
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DeleteAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork(false)] |
|||
[HttpPost] |
|||
[Route("export")] |
|||
public virtual async Task<ObjectResultDto<string>> ExportAsync(QueryPartCfgDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "ExportAsync 进入"); |
|||
ObjectResultDto<string> ret = new ObjectResultDto<string>(); |
|||
try |
|||
{ |
|||
IQueryable<PartCfg> query = QueryByCondition(input); |
|||
List<PartCfg> lst = await query.ToListAsync(); |
|||
List<PartCfgDto> items = |
|||
ObjectMapper.Map<List<PartCfg>, List<PartCfgDto>>(lst); |
|||
//将实体列表转换成excel文件流
|
|||
IExporter exporter = new ExcelExporter(); |
|||
byte[] byteArr = await exporter.ExportAsByteArray<PartCfgDto>(items); |
|||
byteArr.ShouldNotBeNull(); |
|||
//将excel文件流保存到服务器端文件系统
|
|||
string fileName = string.Format("零件配置_{0}.xlsx", Guid.NewGuid().ToString()); |
|||
await _blobContainer.SaveAsync(fileName, byteArr); |
|||
|
|||
ret.Item = fileName; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "ExportAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("import")] |
|||
public virtual async Task<ObjectResultDto> ImportAsync(byte[] input) |
|||
{ |
|||
throw new NotImplementedException("暂不实现所有导入"); |
|||
} |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,342 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using Volo.Abp.Domain.Repositories.Dapper; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using WY.NewJit.Common; |
|||
using Shouldly; |
|||
using Volo.Abp.BlobStoring; |
|||
|
|||
namespace WY.NewJit.MsgBaseData |
|||
{ |
|||
/// <summary>
|
|||
/// 零件切换应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/part-switch")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.基础数据)] |
|||
public class PartSwitchAppService : ApplicationService, IPartSwitchAppService |
|||
{ |
|||
/// <summary>
|
|||
/// 仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<PartSwitch, Guid> _partCfgRepository; |
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<PartSwitchAppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// Dapper仓储
|
|||
/// </summary>
|
|||
private readonly NewJitDapperRepository _newJitDapperRepository; |
|||
|
|||
/// <summary>
|
|||
/// BLOB存储
|
|||
/// </summary>
|
|||
private readonly IBlobContainer<OurFileContainer> _blobContainer; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public PartSwitchAppService( |
|||
IRepository<PartSwitch, Guid> partCfgRepository, |
|||
ILogger<PartSwitchAppService> logger, |
|||
NewJitDapperRepository newJitDapperRepository, |
|||
IBlobContainer<OurFileContainer> blobContainer |
|||
) |
|||
{ |
|||
_partCfgRepository = partCfgRepository; |
|||
_logger = logger; |
|||
_newJitDapperRepository = newJitDapperRepository; |
|||
_blobContainer = blobContainer; |
|||
} |
|||
|
|||
#region 私有方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取实体列表
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
private async Task<PagedResultDto<PartSwitchDto>> QueryByConditionAsync(QueryPartSwitchDto input, PagedAndSortedBase page) |
|||
{ |
|||
PagedResultDto<PartSwitchDto> ret = new PagedResultDto<PartSwitchDto>(); |
|||
|
|||
string sqlCnt = @"
|
|||
select * from |
|||
( |
|||
select count(*) as cnt |
|||
from PartSwitch a |
|||
left join PartCfg c1 on a.SourcePartCode = c1.PartCode |
|||
left join PartCfg c2 on a.TargetPartCode = c2.PartCode |
|||
where IsDeleted <> 1 {0} |
|||
) t |
|||
";
|
|||
|
|||
string sql = @"
|
|||
select * from |
|||
( |
|||
select ROW_NUMBER() OVER(order by a.[CreationTime]) as row_number, |
|||
a.*, c1.PartName as SourcePartName, c2.PartName as TargetPartName |
|||
from PartSwitch a |
|||
left join PartCfg c1 on a.SourcePartCode = c1.PartCode |
|||
left join PartCfg c2 on a.TargetPartCode = c2.PartCode |
|||
where IsDeleted <> 1 {0} |
|||
) t where row_number between {1} and {2} |
|||
";
|
|||
string where = ""; |
|||
if (!string.IsNullOrEmpty(input.SourcePartCode)) |
|||
{ |
|||
where += string.Format(" and a.SourcePartCode like '%{0}%'", input.SourcePartCode); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.SourcePartName)) |
|||
{ |
|||
where += string.Format(" and c1.SourcePartName like '%{0}%'", input.SourcePartName); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.TargetPartCode)) |
|||
{ |
|||
where += string.Format(" and a.TargetPartCode like '%{0}%'", input.TargetPartCode); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.TargetPartName)) |
|||
{ |
|||
where += string.Format(" and c2.TargetPartName like '%{0}%'", input.TargetPartName); |
|||
} |
|||
if (input.IsValid != null) |
|||
{ |
|||
if (input.IsValid == true) |
|||
{ |
|||
//有效//??
|
|||
} |
|||
else |
|||
{ |
|||
//无效
|
|||
} |
|||
} |
|||
sqlCnt = string.Format(sqlCnt, where); |
|||
ret.TotalCount = await _newJitDapperRepository.GetSingleBySqlAsync<int>(sqlCnt); |
|||
|
|||
//计算分页
|
|||
int fromRec = page.SkipCount + 1; |
|||
int ToRec = page.SkipCount + page.MaxResultCount; |
|||
sql = string.Format(sql, where, fromRec, ToRec); |
|||
var lst = await _newJitDapperRepository.GetListBySqlAsync<PartSwitchDto>(sql); |
|||
ret.Items = lst; |
|||
return ret; |
|||
} |
|||
#endregion
|
|||
|
|||
#region 公共方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<PagedResultDto<PartSwitchDto>> GetListAsync(QueryPartSwitchDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetListAsync 进入"); |
|||
try |
|||
{ |
|||
PagedResultDto<PartSwitchDto> ret = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetErpAssemblyListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new PagedResultDto<PartSwitchDto>(0, new List<PartSwitchDto>()); |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
[HttpGet] |
|||
[Route("{id}")]//obj/
|
|||
public virtual async Task<ObjectResultDto<PartSwitchDto>> GetAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetAsync 进入"); |
|||
ObjectResultDto<PartSwitchDto> ret = new ObjectResultDto<PartSwitchDto>(); |
|||
try |
|||
{ |
|||
PartSwitch sourceObj = await _partCfgRepository.GetAsync(id); |
|||
PartSwitchDto targetObj = ObjectMapper.Map<PartSwitch, PartSwitchDto>(sourceObj); |
|||
ret.Item = targetObj; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "GetAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPost] |
|||
[UnitOfWork] |
|||
[Route("")]//create
|
|||
public virtual async Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdatePartSwitchDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "CreateAsync 进入"); |
|||
ObjectResultDto<Guid> ret = new ObjectResultDto<Guid>(); |
|||
try |
|||
{ |
|||
PartSwitch obj = ObjectMapper.Map<CreateUpdatePartSwitchDto, PartSwitch>(input); |
|||
PartSwitch obj2 = await _partCfgRepository.InsertAsync(obj); |
|||
ret.Item = obj2.Id; //返回添加对象的主键
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "CreateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPut] |
|||
[UnitOfWork] |
|||
[Route("{id}")]//update/
|
|||
public virtual async Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdatePartSwitchDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "UpdateAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
PartSwitch targetObj = await _partCfgRepository.GetAsync(id); |
|||
ObjectMapper.Map<CreateUpdatePartSwitchDto, PartSwitch>(input, targetObj); |
|||
await _partCfgRepository.UpdateAsync(targetObj); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "UpdateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpDelete] |
|||
[Route("{id}")]//delete/
|
|||
public virtual async Task<ObjectResultDto> DeleteAsync(string id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DeleteAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
List<Guid> idLst = ServerHelper.GetGuidListByStr(id); |
|||
await _partCfgRepository.DeleteManyAsync(idLst, true); |
|||
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DeleteAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork(false)] |
|||
[HttpPost] |
|||
[Route("export")] |
|||
public virtual async Task<ObjectResultDto<string>> ExportAsync(QueryPartSwitchDto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "ExportAsync 进入"); |
|||
ObjectResultDto<string> ret = new ObjectResultDto<string>(); |
|||
try |
|||
{ |
|||
input.SkipCount = 0; |
|||
input.MaxResultCount = 50000; |
|||
PagedResultDto<PartSwitchDto> query = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
List<PartSwitchDto> lst = query.Items.ToList(); |
|||
//将实体列表转换成excel文件流
|
|||
IExporter exporter = new ExcelExporter(); |
|||
byte[] byteArr = await exporter.ExportAsByteArray<PartSwitchDto>(lst); |
|||
byteArr.ShouldNotBeNull(); |
|||
//将excel文件流保存到服务器端文件系统
|
|||
string fileName = string.Format("零件切换_{0}.xlsx", Guid.NewGuid().ToString()); |
|||
await _blobContainer.SaveAsync(fileName, byteArr); |
|||
|
|||
ret.Item = fileName; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "ExportAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("import")] |
|||
public virtual async Task<ObjectResultDto> ImportAsync(byte[] input) |
|||
{ |
|||
throw new NotImplementedException("暂不实现所有导入"); |
|||
} |
|||
#endregion
|
|||
|
|||
} |
|||
} |
@ -1,480 +0,0 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using Magicodes.ExporterAndImporter.Excel; |
|||
using Microsoft.EntityFrameworkCore; |
|||
using Microsoft.Extensions.Logging; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Linq.Dynamic.Core; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Volo.Abp.Uow; |
|||
using Volo.Abp.Domain.Repositories.Dapper; |
|||
using WY.NewJit.EntityFrameworkCore; |
|||
using WY.NewJit.Common; |
|||
using Shouldly; |
|||
using Volo.Abp.BlobStoring; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
|
|||
namespace WY.NewJit.MsgCheck |
|||
{ |
|||
/// <summary>
|
|||
/// M100单据管理应用服务实现
|
|||
/// </summary>
|
|||
[Route("api/newjit/bill-m100")] |
|||
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.报文解析及校验)] |
|||
public class BillM100AppService : ApplicationService, IBillM100AppService |
|||
{ |
|||
/// <summary>
|
|||
/// 仓储
|
|||
/// </summary>
|
|||
private readonly IRepository<BillM100, Guid> _billM100Repository; |
|||
|
|||
private readonly IRepository<BillM100Part, Guid> _billM100PartRepository; |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 日志
|
|||
/// </summary>
|
|||
private ILogger<BillM100AppService> _logger; |
|||
|
|||
/// <summary>
|
|||
/// Dapper仓储
|
|||
/// </summary>
|
|||
private readonly NewJitDapperRepository _newJitDapperRepository; |
|||
|
|||
/// <summary>
|
|||
/// BLOB存储
|
|||
/// </summary>
|
|||
private readonly IBlobContainer<OurFileContainer> _blobContainer; |
|||
|
|||
/// <summary>
|
|||
/// 错误信息前缀
|
|||
/// </summary>
|
|||
private string _errorMessagePrefix |
|||
{ |
|||
get |
|||
{ |
|||
return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "."; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 构造函数
|
|||
/// </summary>
|
|||
public BillM100AppService( |
|||
IRepository<BillM100, Guid> BillM100Repository, |
|||
IRepository<BillM100Part, Guid> BillM100PartRepository, |
|||
ILogger<BillM100AppService> logger, |
|||
NewJitDapperRepository newJitDapperRepository, |
|||
IBlobContainer<OurFileContainer> blobContainer |
|||
) |
|||
{ |
|||
_billM100Repository = BillM100Repository; |
|||
_billM100PartRepository = BillM100PartRepository; |
|||
_logger = logger; |
|||
_newJitDapperRepository = newJitDapperRepository; |
|||
_blobContainer = blobContainer; |
|||
} |
|||
|
|||
#region 私有方法
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取实体列表
|
|||
/// </summary>
|
|||
private async Task<PagedResultDto<ResultBillM100Dto>> QueryByConditionAsync(QueryBillM100Dto input, PagedAndSortedBase page) |
|||
{ |
|||
PagedResultDto<ResultBillM100Dto> ret = new PagedResultDto<ResultBillM100Dto>(); |
|||
|
|||
string sqlCnt = @"
|
|||
with d as |
|||
( |
|||
select * from FisDicItem where DicTypeCode in (select DicTypeCode from FisDicType where DicTypeName = '车型') |
|||
) |
|||
, r as |
|||
( |
|||
select rr.KNR, aa.AssemblyName, rr.OnlineTime from FisBillR100 rr left join FisAssemblyCfgVehicle aa on rr.AssemblyID = aa.Id |
|||
) |
|||
select * from |
|||
( |
|||
select count(*) as cnt |
|||
from FisBillM100 b |
|||
left join d on b.VehicleModelCode = d.DicItemCode |
|||
left join FisAssemblyCfgVehicle a on b.AssemblyID = a.Id |
|||
left join r on b.KNR = r.KNR |
|||
where 1=1 {0} |
|||
) t |
|||
";
|
|||
|
|||
string sql = @"
|
|||
with d as |
|||
( |
|||
select * from FisDicItem where DicTypeCode in (select DicTypeCode from FisDicType where DicTypeName = '车型') |
|||
) |
|||
, r as |
|||
( |
|||
select rr.KNR, aa.AssemblyName, rr.OnlineTime from FisBillR100 rr left join FisAssemblyCfgVehicle aa on rr.AssemblyID = aa.Id |
|||
) |
|||
select * from |
|||
( |
|||
select ROW_NUMBER() OVER(order by b.SerialNum, b.HostSN) as row_number, |
|||
b.*, d.DicItemName as VehicleModelName, a.AssemblyName, r.AssemblyName as R100AssemblyName, r.OnlineTime as R100OnlineTime |
|||
from FisBillM100 b |
|||
left join d on b.VehicleModelCode = d.DicItemCode |
|||
left join FisAssemblyCfgVehicle a on b.AssemblyID = a.Id |
|||
left join r on b.KNR = r.KNR |
|||
where 1=1 {0} |
|||
) t where row_number between {1} and {2} |
|||
";
|
|||
string where = ""; |
|||
//if (!string.IsNullOrEmpty(input.VehicleModelCode))
|
|||
//{
|
|||
// where += string.Format(" and d.DicItemName = '{0}'", input.VehicleModelCode);
|
|||
//}
|
|||
if (input.SerialNumBegin != null) |
|||
{ |
|||
where += string.Format(" and b.SerialNum >= {0}", input.SerialNumBegin); |
|||
} |
|||
if (input.SerialNumEnd != null) |
|||
{ |
|||
where += string.Format(" and b.SerialNum <= {0}", input.SerialNumEnd); |
|||
} |
|||
if (input.HostSNBegin != null) |
|||
{ |
|||
where += string.Format(" and b.HostSN >= {0}", input.HostSNBegin); |
|||
} |
|||
if (input.HostSNEnd != null) |
|||
{ |
|||
where += string.Format(" and b.HostSN <= {0}", input.HostSNEnd); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.KNRBegin)) |
|||
{ |
|||
where += string.Format(" and b.KNR >= '{0}'", input.KNRBegin); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.KNREnd)) |
|||
{ |
|||
where += string.Format(" and b.KNR <= '{0}'", input.KNREnd); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.VINBegin)) |
|||
{ |
|||
where += string.Format(" and b.VIN >= '{0}'", input.VINBegin); |
|||
} |
|||
if (!string.IsNullOrEmpty(input.VINEnd)) |
|||
{ |
|||
where += string.Format(" and b.VIN <= '{0}'", input.VINEnd); |
|||
} |
|||
if (input.AssemblyID != null) |
|||
{ |
|||
where += string.Format(" and b.AssemblyID = '{0}'", input.AssemblyID.ToString()); |
|||
} |
|||
if (input.OnlineTimeBegin != null) |
|||
{ |
|||
where += string.Format(" and b.OnlineTime >= '{0}'", ((DateTime)input.OnlineTimeBegin).ToString("yyyy-MM-dd HH:mm:ss")); |
|||
} |
|||
if (input.OnlineTimeEnd != null) |
|||
{ |
|||
where += string.Format(" and b.OnlineTime <= '{0}'", ((DateTime)input.OnlineTimeEnd).ToString("yyyy-MM-dd HH:mm:ss")); |
|||
} |
|||
if (input.VehicleModelCode != null) |
|||
{ |
|||
where += string.Format(" and b.VehicleModelCode like '%{0}%'", input.VehicleModelCode); |
|||
} |
|||
if (input.ProductLine != null) |
|||
{ |
|||
where += string.Format(" and b.ProductLine = '{0}'", input.ProductLine); |
|||
} |
|||
if (input.Version != null) |
|||
{ |
|||
where += string.Format(" and b.Version like '%{0}%'", input.Version); |
|||
} |
|||
if (input.ReceiveTimeBegin != null) |
|||
{ |
|||
where += string.Format(" and b.ReceiveTime >= '{0}'", ((DateTime)input.ReceiveTimeBegin).ToString("yyyy-MM-dd HH:mm:ss")); |
|||
} |
|||
if (input.ReceiveTimeEnd != null) |
|||
{ |
|||
where += string.Format(" and b.ReceiveTime <= '{0}'", ((DateTime)input.ReceiveTimeEnd).ToString("yyyy-MM-dd HH:mm:ss")); |
|||
} |
|||
if (input.BillStatus != null && input.BillStatus != BillStatusEnum.None) |
|||
{ |
|||
where += string.Format(" and b.BillStatus = {0}", ((int)input.BillStatus).ToString()); |
|||
} |
|||
where += " and b.BillStatus in (2,3)"; //单据状态是已生效、已发布
|
|||
if (input.IsBillMaintenance == true) //M100单据信息维护模块使用
|
|||
{ |
|||
where += " and b.Operator is not null"; |
|||
} |
|||
|
|||
sqlCnt = string.Format(sqlCnt, where); |
|||
ret.TotalCount = await _newJitDapperRepository.GetSingleBySqlAsync<int>(sqlCnt); |
|||
|
|||
//计算分页
|
|||
int fromRec = page.SkipCount + 1; |
|||
int ToRec = page.SkipCount + page.MaxResultCount; |
|||
sql = string.Format(sql, where, fromRec, ToRec); |
|||
var lst = await _newJitDapperRepository.GetListBySqlAsync<ResultBillM100Dto>(sql); |
|||
ret.Items = lst; |
|||
return ret; |
|||
} |
|||
#endregion
|
|||
|
|||
#region 公共方法
|
|||
|
|||
/// <summary>
|
|||
/// 根据筛选条件获取分页实体列表
|
|||
/// </summary>
|
|||
/// <param name="input">输入查询条件</param>
|
|||
/// <param name="page">输入分页条件</param>
|
|||
/// <returns>返回符合条件的排序分页列表</returns>
|
|||
[HttpGet] |
|||
[UnitOfWork(false)] |
|||
[Route("list")] |
|||
public virtual async Task<PagedResultDto<ResultBillM100Dto>> GetListAsync(QueryBillM100Dto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetListAsync 进入"); |
|||
try |
|||
{ |
|||
PagedResultDto<ResultBillM100Dto> ret = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
string errMsg = _errorMessagePrefix + "GetListAsync 执行出错:" + ex; |
|||
_logger.LogError(errMsg); |
|||
return new PagedResultDto<ResultBillM100Dto>(0, new List<ResultBillM100Dto>()); |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 按主键获取唯一实体
|
|||
/// </summary>
|
|||
/// <param name="id">主键</param>
|
|||
/// <returns>实体信息</returns>
|
|||
[HttpGet] |
|||
[Route("{id}")]//obj/
|
|||
public virtual async Task<ObjectResultDto<BillM100Dto>> GetAsync(Guid id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "GetAsync 进入"); |
|||
ObjectResultDto<BillM100Dto> ret = new ObjectResultDto<BillM100Dto>(); |
|||
try |
|||
{ |
|||
BillM100 sourceObj = await _billM100Repository.GetAsync(id); |
|||
BillM100Dto targetObj = ObjectMapper.Map<BillM100, BillM100Dto>(sourceObj); |
|||
ret.Item = targetObj; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "GetAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 添加实体
|
|||
/// </summary>
|
|||
/// <param name="input">添加内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPost] |
|||
[UnitOfWork] |
|||
[Route("")]//create
|
|||
public virtual async Task<ObjectResultDto<Guid>> CreateAsync(CreateUpdateBillM100Dto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "CreateAsync 进入"); |
|||
ObjectResultDto<Guid> ret = new ObjectResultDto<Guid>(); |
|||
try |
|||
{ |
|||
//取M100单据 最大流水号
|
|||
int billMaxSN = _billM100Repository.Max(itm => itm.SerialNum) ?? 0; |
|||
|
|||
BillM100 obj = ObjectMapper.Map<CreateUpdateBillM100Dto, BillM100>(input); |
|||
#region 主子表主键Id赋值
|
|||
foreach (var item in obj.BillM100Parts) |
|||
{ |
|||
item.SetId(GuidGenerator.Create()); |
|||
} |
|||
#endregion
|
|||
obj.SetSerialNum(++billMaxSN); |
|||
BillM100 obj2 = await _billM100Repository.InsertAsync(obj); |
|||
ret.Item = obj2.Id; //返回添加对象的主键
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "CreateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改实体
|
|||
/// </summary>
|
|||
/// <param name="id">更新主键</param>
|
|||
/// <param name="input">修改内容</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[HttpPut] |
|||
[UnitOfWork] |
|||
[Route("{id}")]//update/
|
|||
public virtual async Task<ObjectResultDto> UpdateAsync(Guid id, CreateUpdateBillM100Dto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "UpdateAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
BillM100 targetObj = await _billM100Repository.GetAsync(id); |
|||
await _billM100PartRepository.DeleteManyAsync(targetObj.BillM100Parts); //先删除子实体列表
|
|||
ObjectMapper.Map<CreateUpdateBillM100Dto, BillM100>(input, targetObj); |
|||
await _billM100Repository.UpdateAsync(targetObj); |
|||
await _billM100PartRepository.InsertManyAsync(targetObj.BillM100Parts); //再添加子实体列表
|
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "UpdateAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除实体
|
|||
/// </summary>
|
|||
/// <param name="id">删除主键</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpDelete] |
|||
[Route("{id}")]//delete/
|
|||
public virtual async Task<ObjectResultDto> DeleteAsync(string id) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "DeleteAsync 进入"); |
|||
ObjectResultDto ret = new ObjectResultDto(); |
|||
try |
|||
{ |
|||
List<Guid> idLst = ServerHelper.GetGuidListByStr(id); |
|||
foreach (Guid item in idLst) |
|||
{ |
|||
BillM100 sourceObj = await _billM100Repository.GetAsync(item); |
|||
if (sourceObj != null) |
|||
{ |
|||
await _billM100PartRepository.DeleteManyAsync(sourceObj.BillM100Parts); |
|||
await _billM100Repository.DeleteAsync(item); |
|||
} |
|||
} |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "DeleteAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导出信息
|
|||
/// </summary>
|
|||
/// <param name="input">导出查询条件</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork(false)] |
|||
[HttpPost] |
|||
[Route("export")] |
|||
public virtual async Task<ObjectResultDto<string>> ExportAsync(QueryBillM100Dto input) |
|||
{ |
|||
_logger.LogDebug(_errorMessagePrefix + "ExportAsync 进入"); |
|||
ObjectResultDto<string> ret = new ObjectResultDto<string>(); |
|||
try |
|||
{ |
|||
input.SkipCount = 0; |
|||
input.MaxResultCount = 50000; |
|||
PagedResultDto<ResultBillM100Dto> query = await QueryByConditionAsync(input, (PagedAndSortedBase)input); |
|||
List<ResultBillM100Dto> items = query.Items.ToList(); |
|||
//将实体列表转换成excel文件流
|
|||
IExporter exporter = new ExcelExporter(); |
|||
byte[] byteArr = await exporter.ExportAsByteArray<ResultBillM100Dto>(items); |
|||
byteArr.ShouldNotBeNull(); |
|||
//将excel文件流保存到服务器端文件系统
|
|||
string fileName = string.Format("单据M100_{0}.xlsx", Guid.NewGuid().ToString()); |
|||
await _blobContainer.SaveAsync(fileName, byteArr); |
|||
|
|||
ret.Item = fileName; |
|||
return ret; |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
ret.Status = false; |
|||
ret.Message = _errorMessagePrefix + "ExportAsync 执行出错:" + ex; |
|||
_logger.LogError(ret.Message); |
|||
return ret; |
|||
} |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导入信息
|
|||
/// </summary>
|
|||
/// <param name="input">导入文件流</param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("import")] |
|||
public virtual async Task<ObjectResultDto> ImportAsync(byte[] input) |
|||
{ |
|||
throw new NotImplementedException("暂不实现所有导入"); |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 打印门板
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("print-menban")] |
|||
public virtual async Task<ObjectResultDto> PrintMenBan(MenBanPrintInfo input) |
|||
{ |
|||
//??待开发
|
|||
/* |
|||
* 发货排序单中的“装箱单号”是自增号 |
|||
* 装箱单号规则 1开头,11位,自增顺序号 |
|||
* 发货排序单:提供重新打印功能;提供针对重新解析后单据的补打功能 |
|||
* 排序单默认打印2份 |
|||
*/ |
|||
//先打印门板, 后打印柱护板,打印完成柱护板后,更新“已打印”状态
|
|||
return null; |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 打印柱护板
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns>执行成功返回真</returns>
|
|||
[UnitOfWork] |
|||
[HttpPost] |
|||
[Route("print-zhuhuban")] |
|||
public virtual async Task<ObjectResultDto> PrintZhuHuBan(ZhuHuBanPrintInfo input) |
|||
{ |
|||
//??待开发
|
|||
//生成打印单号
|
|||
//PrintBillNum
|
|||
//将导出的单据状态更新为“已打印”
|
|||
string where = " and 1 = 2"; |
|||
if (where.Length > 0) |
|||
{ |
|||
string updateSql = "update b set BillStatus = 2, PrintTime = GETDATE() from FisBillM100 b where 1=1"; |
|||
updateSql = string.Format(updateSql, where); |
|||
await _newJitDapperRepository.ExecuteSqlAsync(updateSql); |
|||
} |
|||
return null; |
|||
} |
|||
|
|||
|
|||
#endregion
|
|||
} |
|||
} |
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue