Browse Source

[add] new WebApiService

master
贾荣国 3 years ago
parent
commit
4a0263b9f4
  1. 104
      ScpWebApiService/Win_in.Sfs.Scp.WebApi.sln
  2. 24
      ScpWebApiService/common.props
  3. 20
      ScpWebApiService/database/Dockerfile
  4. 12
      ScpWebApiService/database/entrypoint.sh
  5. 13
      ScpWebApiService/docker-compose.migrations.yml
  6. 29
      ScpWebApiService/docker-compose.override.yml
  7. 25
      ScpWebApiService/docker-compose.yml
  8. 18
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Dockerfile
  9. 21
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/EntityFrameworkCore/WebApiHttpApiHostMigrationsDbContext.cs
  10. 29
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/EntityFrameworkCore/WebApiHttpApiHostMigrationsDbContextFactory.cs
  11. 3
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/FodyWeavers.xml
  12. 30
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/FodyWeavers.xsd
  13. 12
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Properties/launchSettings.json
  14. 51
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Win_in.Sfs.Scp.WebApi.HttpApi.Host.csproj
  15. 20
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/appsettings.json
  16. 20
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/appsettings.secrets.json
  17. 4
      ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/yarn.lock
  18. 54
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNCreateDTO.cs
  19. 81
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNCreateOrUpdateDTOBase.cs
  20. 119
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNDTO.cs
  21. 132
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNDetailsDTO.cs
  22. 33
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNUpdateDTO.cs
  23. 14
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/IASNAppService.cs
  24. 3
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/FodyWeavers.xml
  25. 30
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/FodyWeavers.xsd
  26. 7
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelCreateDTO.cs
  27. 145
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelCreateOrUpdateDTOBase.cs
  28. 145
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelDTO.cs
  29. 7
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelUpdateDTO.cs
  30. 10
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/IASNLabelAppService.cs
  31. 20
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Permissions/WebApiPermissionDefinitionProvider.cs
  32. 17
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Permissions/WebApiPermissions.cs
  33. 13
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/ISupplierPartAppService.cs
  34. 39
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartCreateDTO.cs
  35. 39
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartCreateOrUpdateDTOBase.cs
  36. 61
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartDto.cs
  37. 18
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartUpdateDTO.cs
  38. 16
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/WebApiApplicationContractsModule.cs
  39. 36
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Win_in.Sfs.Scp.WebApi.Application.Contracts.csproj
  40. 998
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Win_in.Sfs.Scp.WebApi.Application.Contracts.xml
  41. 149
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/ASNs/ASNAppService.cs
  42. 3
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/FodyWeavers.xml
  43. 30
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/FodyWeavers.xsd
  44. 90
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/Labels/LabelAppService.cs
  45. 91
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/SupplierParts/SupplierPartAppService.cs
  46. 25
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/WebApiApplicationModule.cs
  47. 34
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/Win_in.Sfs.Scp.WebApi.Application.csproj
  48. 235
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/Win_in.Sfs.Scp.WebApi.Application.xml
  49. 3
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/FodyWeavers.xml
  50. 30
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/FodyWeavers.xsd
  51. 7
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/Localization/WebApi/en.json
  52. 7
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/Localization/WebApi/zh-Hans.json
  53. 37
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/WebApiDomainSharedModule.cs
  54. 7
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/WebApiErrorCodes.cs
  55. 26
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/Win_in.Sfs.Scp.WebApi.Domain.Shared.csproj
  56. 206
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/ASNs/ASN.cs
  57. 141
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/ASNs/ASNDetail.cs
  58. 9
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/ASNs/IASNRepository.cs
  59. 3
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/FodyWeavers.xml
  60. 30
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/FodyWeavers.xsd
  61. 145
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Labels/Label.cs
  62. 11
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Settings/WebApiSettings.cs
  63. 61
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/SupplierParts/SupplierPart.cs
  64. 10
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Suppliers/ISupplierRepository.cs
  65. 14
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/WebApiDomainModule.cs
  66. 27
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Win_in.Sfs.Scp.WebApi.Domain.csproj
  67. 34
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/EntityFrameworkCore/WebApiDbContext.cs
  68. 28
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/EntityFrameworkCore/WebApiEntityFrameworkCoreModule.cs
  69. 3
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/FodyWeavers.xml
  70. 30
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/FodyWeavers.xsd
  71. 15
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.csproj
  72. 3
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/FodyWeavers.xml
  73. 30
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/FodyWeavers.xsd
  74. 42
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/WebApiHttpApiModule.cs
  75. 20
      ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/Win_in.Sfs.Scp.WebApi.HttpApi.csproj
  76. 3
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Application.Tests/FodyWeavers.xml
  77. 30
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Application.Tests/FodyWeavers.xsd
  78. 10
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Application.Tests/WebApiApplicationTestBase.cs
  79. 3
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/FodyWeavers.xml
  80. 30
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/FodyWeavers.xsd
  81. 21
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/Samples/SampleManager_Tests.cs
  82. 10
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/WebApiDomainTestBase.cs
  83. 12
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/EntityFrameworkCore/Samples/SampleRepository_Tests.cs
  84. 10
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/EntityFrameworkCore/WebApiEntityFrameworkCoreTestBase.cs
  85. 43
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/EntityFrameworkCore/WebApiEntityFrameworkCoreTestModule.cs
  86. 3
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/FodyWeavers.xml
  87. 30
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/FodyWeavers.xsd
  88. 3
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/FodyWeavers.xml
  89. 30
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/FodyWeavers.xsd
  90. 27
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/Samples/SampleRepository_Tests.cs
  91. 33
      ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/WebApiDataSeedContributor.cs
  92. 0
      WebApiService/.gitattributes
  93. 13
      WebApiService/.gitignore
  94. 0
      WebApiService/.prettierrc
  95. 0
      WebApiService/NuGet.Config
  96. 123
      WebApiService/Win_in.Sfs.Scp.WebApi.sln
  97. 3
      WebApiService/Win_in.Sfs.Scp.WebApi.sln.DotSettings
  98. 15
      WebApiService/common.props
  99. 26
      WebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Parts/CreatePartDtoValidator.cs
  100. 2
      WebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Parts/IPartAppService.cs

104
ScpWebApiService/Win_in.Sfs.Scp.WebApi.sln

@ -1,104 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.29001.49
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Domain.Shared", "src\Win_in.Sfs.Scp.WebApi.Domain.Shared\Win_in.Sfs.Scp.WebApi.Domain.Shared.csproj", "{D64C1577-4929-4B60-939E-96DE1534891A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Domain", "src\Win_in.Sfs.Scp.WebApi.Domain\Win_in.Sfs.Scp.WebApi.Domain.csproj", "{F2840BC7-0188-4606-9126-DADD0F5ABF7A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Application.Contracts", "src\Win_in.Sfs.Scp.WebApi.Application.Contracts\Win_in.Sfs.Scp.WebApi.Application.Contracts.csproj", "{BD65D04F-08D5-40C1-8C24-77CA0BACB877}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Application", "src\Win_in.Sfs.Scp.WebApi.Application\Win_in.Sfs.Scp.WebApi.Application.csproj", "{78040F9E-3501-4A40-82DF-00A597710F35}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{649A3FFA-182F-4E56-9717-E6A9A2BEC545}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{CCD2960C-23CC-4AB4-B84D-60C7AAA52F4D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{E400416D-2895-4512-9D17-90681EEC7E0A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.EntityFrameworkCore", "src\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.csproj", "{0CE86223-D31D-4315-A1F5-87BA3EE1B844}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.HttpApi", "src\Win_in.Sfs.Scp.WebApi.HttpApi\Win_in.Sfs.Scp.WebApi.HttpApi.csproj", "{077AA5F8-8B61-420C-A6B5-0150A66FDB34}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.TestBase", "test\Win_in.Sfs.Scp.WebApi.TestBase\Win_in.Sfs.Scp.WebApi.TestBase.csproj", "{C5BB573D-3030-4BCB-88B7-F6A85C32766C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests", "test\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests.csproj", "{527F645C-C1FC-406E-8479-81386C8ECF13}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Domain.Tests", "test\Win_in.Sfs.Scp.WebApi.Domain.Tests\Win_in.Sfs.Scp.WebApi.Domain.Tests.csproj", "{E60895E5-79C4-447D-88B7-85CB5BA336A4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Application.Tests", "test\Win_in.Sfs.Scp.WebApi.Application.Tests\Win_in.Sfs.Scp.WebApi.Application.Tests.csproj", "{90CB5DC4-C040-45C7-8900-9688B26405BC}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.HttpApi.Host", "host\Win_in.Sfs.Scp.WebApi.HttpApi.Host\Win_in.Sfs.Scp.WebApi.HttpApi.Host.csproj", "{37B135B0-DAFE-4616-B25C-1BDF32FC44A2}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{D64C1577-4929-4B60-939E-96DE1534891A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D64C1577-4929-4B60-939E-96DE1534891A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D64C1577-4929-4B60-939E-96DE1534891A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D64C1577-4929-4B60-939E-96DE1534891A}.Release|Any CPU.Build.0 = Release|Any CPU
{F2840BC7-0188-4606-9126-DADD0F5ABF7A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F2840BC7-0188-4606-9126-DADD0F5ABF7A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F2840BC7-0188-4606-9126-DADD0F5ABF7A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F2840BC7-0188-4606-9126-DADD0F5ABF7A}.Release|Any CPU.Build.0 = Release|Any CPU
{BD65D04F-08D5-40C1-8C24-77CA0BACB877}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BD65D04F-08D5-40C1-8C24-77CA0BACB877}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BD65D04F-08D5-40C1-8C24-77CA0BACB877}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BD65D04F-08D5-40C1-8C24-77CA0BACB877}.Release|Any CPU.Build.0 = Release|Any CPU
{78040F9E-3501-4A40-82DF-00A597710F35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{78040F9E-3501-4A40-82DF-00A597710F35}.Debug|Any CPU.Build.0 = Debug|Any CPU
{78040F9E-3501-4A40-82DF-00A597710F35}.Release|Any CPU.ActiveCfg = Release|Any CPU
{78040F9E-3501-4A40-82DF-00A597710F35}.Release|Any CPU.Build.0 = Release|Any CPU
{0CE86223-D31D-4315-A1F5-87BA3EE1B844}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0CE86223-D31D-4315-A1F5-87BA3EE1B844}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0CE86223-D31D-4315-A1F5-87BA3EE1B844}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0CE86223-D31D-4315-A1F5-87BA3EE1B844}.Release|Any CPU.Build.0 = Release|Any CPU
{077AA5F8-8B61-420C-A6B5-0150A66FDB34}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{077AA5F8-8B61-420C-A6B5-0150A66FDB34}.Debug|Any CPU.Build.0 = Debug|Any CPU
{077AA5F8-8B61-420C-A6B5-0150A66FDB34}.Release|Any CPU.ActiveCfg = Release|Any CPU
{077AA5F8-8B61-420C-A6B5-0150A66FDB34}.Release|Any CPU.Build.0 = Release|Any CPU
{C5BB573D-3030-4BCB-88B7-F6A85C32766C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C5BB573D-3030-4BCB-88B7-F6A85C32766C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C5BB573D-3030-4BCB-88B7-F6A85C32766C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C5BB573D-3030-4BCB-88B7-F6A85C32766C}.Release|Any CPU.Build.0 = Release|Any CPU
{527F645C-C1FC-406E-8479-81386C8ECF13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{527F645C-C1FC-406E-8479-81386C8ECF13}.Debug|Any CPU.Build.0 = Debug|Any CPU
{527F645C-C1FC-406E-8479-81386C8ECF13}.Release|Any CPU.ActiveCfg = Release|Any CPU
{527F645C-C1FC-406E-8479-81386C8ECF13}.Release|Any CPU.Build.0 = Release|Any CPU
{E60895E5-79C4-447D-88B7-85CB5BA336A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E60895E5-79C4-447D-88B7-85CB5BA336A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E60895E5-79C4-447D-88B7-85CB5BA336A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E60895E5-79C4-447D-88B7-85CB5BA336A4}.Release|Any CPU.Build.0 = Release|Any CPU
{90CB5DC4-C040-45C7-8900-9688B26405BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{90CB5DC4-C040-45C7-8900-9688B26405BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{90CB5DC4-C040-45C7-8900-9688B26405BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{90CB5DC4-C040-45C7-8900-9688B26405BC}.Release|Any CPU.Build.0 = Release|Any CPU
{37B135B0-DAFE-4616-B25C-1BDF32FC44A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{37B135B0-DAFE-4616-B25C-1BDF32FC44A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{37B135B0-DAFE-4616-B25C-1BDF32FC44A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{37B135B0-DAFE-4616-B25C-1BDF32FC44A2}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{D64C1577-4929-4B60-939E-96DE1534891A} = {649A3FFA-182F-4E56-9717-E6A9A2BEC545}
{F2840BC7-0188-4606-9126-DADD0F5ABF7A} = {649A3FFA-182F-4E56-9717-E6A9A2BEC545}
{BD65D04F-08D5-40C1-8C24-77CA0BACB877} = {649A3FFA-182F-4E56-9717-E6A9A2BEC545}
{78040F9E-3501-4A40-82DF-00A597710F35} = {649A3FFA-182F-4E56-9717-E6A9A2BEC545}
{0CE86223-D31D-4315-A1F5-87BA3EE1B844} = {649A3FFA-182F-4E56-9717-E6A9A2BEC545}
{077AA5F8-8B61-420C-A6B5-0150A66FDB34} = {649A3FFA-182F-4E56-9717-E6A9A2BEC545}
{C5BB573D-3030-4BCB-88B7-F6A85C32766C} = {CCD2960C-23CC-4AB4-B84D-60C7AAA52F4D}
{527F645C-C1FC-406E-8479-81386C8ECF13} = {CCD2960C-23CC-4AB4-B84D-60C7AAA52F4D}
{E60895E5-79C4-447D-88B7-85CB5BA336A4} = {CCD2960C-23CC-4AB4-B84D-60C7AAA52F4D}
{90CB5DC4-C040-45C7-8900-9688B26405BC} = {CCD2960C-23CC-4AB4-B84D-60C7AAA52F4D}
{37B135B0-DAFE-4616-B25C-1BDF32FC44A2} = {E400416D-2895-4512-9D17-90681EEC7E0A}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {4324B3B4-B60B-4E3C-91D8-59576B4E26DD}
EndGlobalSection
EndGlobal

24
ScpWebApiService/common.props

@ -1,24 +0,0 @@
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Version>0.1.0</Version>
<NoWarn>$(NoWarn);CS1591</NoWarn>
<AbpProjectType>module</AbpProjectType>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="ConfigureAwait.Fody" Version="3.3.1" PrivateAssets="All" />
<PackageReference Include="Fody" Version="6.5.0">
<PrivateAssets>All</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>
<Target Name="NoWarnOnRazorViewImportedTypeConflicts" BeforeTargets="RazorCoreCompile">
<PropertyGroup>
<NoWarn>$(NoWarn);0436</NoWarn>
</PropertyGroup>
</Target>
</Project>

20
ScpWebApiService/database/Dockerfile

@ -1,20 +0,0 @@
FROM mcr.microsoft.com/dotnet/core/sdk:3.0-buster AS build
COPY . .
WORKDIR /templates/service/host/IdentityServerHost
RUN dotnet restore
RUN dotnet ef migrations script -i -o migrations-IdentityServerHost.sql
WORKDIR /templates/service/host/Win_in.Sfs.Scp.WebApi.Host
RUN dotnet restore
RUN dotnet ef migrations script -i -o migrations-WebApi.sql
FROM mcr.microsoft.com/mssql-tools AS final
WORKDIR /src
COPY --from=build /templates/service/host/IdentityServerHost/migrations-IdentityServerHost.sql migrations-IdentityServerHost.sql
COPY --from=build /templates/service/host/Win_in.Sfs.Scp.WebApi.Host/migrations-WebApi.sql migrations-WebApi.sql
COPY --from=build /templates/service/database/entrypoint.sh .
RUN /bin/bash -c "sed -i $'s/\r$//' entrypoint.sh"
RUN chmod +x ./entrypoint.sh
ENTRYPOINT ["./entrypoint.sh"]

12
ScpWebApiService/database/entrypoint.sh

@ -1,12 +0,0 @@
#!/bin/bash
until /opt/mssql-tools/bin/sqlcmd -S sqlserver -U SA -P $SA_PASSWORD -Q 'SELECT name FROM master.sys.databases'; do
>&2 echo "SQL Server is starting up"
sleep 1
done
/opt/mssql-tools/bin/sqlcmd -S sqlserver -U SA -P $SA_PASSWORD -Q "CREATE DATABASE [$IdentityServer_DB]"
/opt/mssql-tools/bin/sqlcmd -S sqlserver -U SA -P $SA_PASSWORD -Q "CREATE DATABASE [$WebApi_DB]"
/opt/mssql-tools/bin/sqlcmd -d $IdentityServer_DB -S sqlserver -U sa -P $SA_PASSWORD -i migrations-IdentityServerHost.sql
/opt/mssql-tools/bin/sqlcmd -d $WebApi_DB -S sqlserver -U sa -P $SA_PASSWORD -i migrations-WebApi.sql

13
ScpWebApiService/docker-compose.migrations.yml

@ -1,13 +0,0 @@
version: '3.4'
services:
migrations:
build:
context: ../../
dockerfile: templates/service/database/Dockerfile
depends_on:
- sqlserver
environment:
- IdentityServer_DB=WebApi_Identity
- WebApi_DB=WebApi_ModuleDb
- SA_PASSWORD=yourStrong(!)Password

29
ScpWebApiService/docker-compose.override.yml

@ -1,29 +0,0 @@
version: '3.4'
services:
sqlserver:
environment:
- SA_PASSWORD=yourStrong(!)Password
- ACCEPT_EULA=Y
ports:
- "51599:1433"
identity-server:
environment:
- ASPNETCORE_URLS=http://0.0.0.0:80
- ConnectionStrings__Default=Server=sqlserver;Database=WebApi_Identity;Trusted_Connection=True;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- ConnectionStrings__SqlServerCache=Server=sqlserver;Database=WebApi_Cache;Trusted_Connection=True;User=sa;Password=yourStrong(!)Password;Integrated Security=false
ports:
- "51600:80"
web-api:
environment:
- ASPNETCORE_URLS=http://0.0.0.0:80
- ConnectionStrings__Default=Server=sqlserver;Database=WebApi_ModuleDb;Trusted_Connection=True;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- ConnectionStrings__AbpSettingManagement=Server=sqlserver;Database=WebApi_Identity;Trusted_Connection=True;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- ConnectionStrings__AbpPermissionManagement=Server=sqlserver;Database=WebApi_Identity;Trusted_Connection=True;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- ConnectionStrings__AbpAuditLogging=Server=sqlserver;Database=WebApi_Identity;Trusted_Connection=True;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- ConnectionStrings__SqlServerCache=Server=sqlserver;Database=WebApi_Cache;Trusted_Connection=True;User=sa;Password=yourStrong(!)Password;Integrated Security=false
- AuthServer__Authority=http://identity-server
ports:
- "51601:80"

25
ScpWebApiService/docker-compose.yml

@ -1,25 +0,0 @@
version: '3.4'
services:
sqlserver:
image: mcr.microsoft.com/mssql/server
volumes:
- dbdata:/var/opt/mssql
identity-server:
build:
context: ../../
dockerfile: templates/service/host/IdentityServerHost/Dockerfile
depends_on:
- sqlserver
web-api:
build:
context: ../../
dockerfile: templates/service/host/Win_in.Sfs.Scp.WebApi.Host/Dockerfile
depends_on:
- sqlserver
- identity-server
volumes:
dbdata:

18
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Dockerfile

@ -1,18 +0,0 @@
FROM mcr.microsoft.com/dotnet/core/aspnet:3.0-buster-slim AS base
WORKDIR /app
EXPOSE 80
FROM mcr.microsoft.com/dotnet/core/sdk:3.0-buster AS build
WORKDIR /src
COPY . .
WORKDIR /src/templates/service/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host
RUN dotnet restore -nowarn:msb3202,nu1503
RUN dotnet build --no-restore -c Release -o /app
FROM build AS publish
RUN dotnet publish --no-restore -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "Win_in.Sfs.Scp.WebApi.HttpApi.Host.dll"]

21
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/EntityFrameworkCore/WebApiHttpApiHostMigrationsDbContext.cs

@ -1,21 +0,0 @@
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore;
namespace Win_in.Sfs.Scp.WebApi.EntityFrameworkCore
{
public class WebApiHttpApiHostMigrationsDbContext : AbpDbContext<WebApiHttpApiHostMigrationsDbContext>
{
public WebApiHttpApiHostMigrationsDbContext(DbContextOptions<WebApiHttpApiHostMigrationsDbContext> options)
: base(options)
{
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.ConfigureWebApi();
}
}
}

29
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/EntityFrameworkCore/WebApiHttpApiHostMigrationsDbContextFactory.cs

@ -1,29 +0,0 @@
using System.IO;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
using Microsoft.Extensions.Configuration;
namespace Win_in.Sfs.Scp.WebApi.EntityFrameworkCore
{
public class WebApiHttpApiHostMigrationsDbContextFactory : IDesignTimeDbContextFactory<WebApiHttpApiHostMigrationsDbContext>
{
public WebApiHttpApiHostMigrationsDbContext CreateDbContext(string[] args)
{
var configuration = BuildConfiguration();
var builder = new DbContextOptionsBuilder<WebApiHttpApiHostMigrationsDbContext>()
.UseSqlServer(configuration.GetConnectionString("WebApi"));
return new WebApiHttpApiHostMigrationsDbContext(builder.Options);
}
private static IConfigurationRoot BuildConfiguration()
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: false);
return builder.Build();
}
}
}

3
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

12
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Properties/launchSettings.json

@ -1,12 +0,0 @@
{
"profiles": {
"Win_in.Sfs.Scp.WebApi.DemoApp": {
"commandName": "Project",
"launchBrowser": true,
"applicationUrl": "https://localhost:9203",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}

51
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Win_in.Sfs.Scp.WebApi.HttpApi.Host.csproj

@ -1,51 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace>Win_in.Sfs.Scp.WebApi</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>Win_in.Sfs.Scp.WebApi-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DocumentationFile>..\..\host\Win_in.Sfs.Scp.WebApi.HttpApi.Host\bin\Debug\net5.0\Win_in.Sfs.Scp.WebApi.HttpApi.Host.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Serilog.AspNetCore" Version="4.1.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" />
<PackageReference Include="IdentityModel" Version="5.1.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="5.0.*" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="5.0.*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.*" />
<PackageReference Include="Volo.Abp.Autofac" Version="4.4.2" />
<PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="4.4.2" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy" Version="4.4.2" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.SqlServer" Version="4.4.2" />
<PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="4.4.2" />
<PackageReference Include="Volo.Abp.Swashbuckle" Version="4.4.2" />
<PackageReference Include="Volo.Abp.PermissionManagement.EntityFrameworkCore" Version="4.4.2" />
<PackageReference Include="Volo.Abp.SettingManagement.EntityFrameworkCore" Version="4.4.2" />
<PackageReference Include="Volo.Abp.AuditLogging.EntityFrameworkCore" Version="4.4.2" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\Win_in.Sfs.Scp.WebApi.HttpApi\Win_in.Sfs.Scp.WebApi.HttpApi.csproj" />
<ProjectReference Include="..\..\src\Win_in.Sfs.Scp.WebApi.Application\Win_in.Sfs.Scp.WebApi.Application.csproj" />
<ProjectReference Include="..\..\src\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.csproj" />
</ItemGroup>
<ItemGroup>
<Compile Remove="Logs\**" />
<Content Remove="Logs\**" />
<EmbeddedResource Remove="Logs\**" />
<None Remove="Logs\**" />
</ItemGroup>
<ItemGroup>
<Folder Include="Migrations\" />
</ItemGroup>
</Project>

20
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/appsettings.json

@ -1,20 +0,0 @@
{
"App": {
"CorsOrigins": "https://*.WebApi.com,http://localhost:4200,http://localhost:44307,https://localhost:44307"
},
"ConnectionStrings": {
"Default": "Server=127.0.0.1;Database=ScpWebApi_ABP;User ID=sa;Password=Microsoft2008;connection timeout=600",
"WebApi": "Server=127.0.0.1;Database=ScpWebApi_Module;User ID=sa;Password=Microsoft2008;connection timeout=600"
},
"Redis": {
"Configuration": "127.0.0.1"
},
"AuthServer": {
"Authority": "https://localhost:9000/",
"RequireHttpsMetadata": "false",
"SwaggerClientId": "WebApi_Swagger",
"SwaggerClientSecret": "1q2w3e*"
},
"IsMultiTenancy": true
}

20
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/appsettings.secrets.json

@ -1,20 +0,0 @@
{
"App": {
"CorsOrigins": "https://*.WebApi.com,http://localhost:4200,http://localhost:44307,https://localhost:44307"
},
"ConnectionStrings": {
"Default": "Server=119.3.213.202,13315;Database=WebApi_Module;User ID=sa;Password=ChangkeTec@2020;connection timeout=600",
"WebApi": "Server=119.3.213.202,13315;Database=WebApi_Module;User ID=sa;Password=ChangkeTec@2020;connection timeout=600"
},
"Redis": {
"Configuration": "127.0.0.1"
},
"AuthServer": {
"Authority": "https://localhost:9000/",
"RequireHttpsMetadata": "false",
"SwaggerClientId": "WebApi_Swagger",
"SwaggerClientSecret": "1q2w3e*"
},
"IsMultiTenancy": true
}

4
ScpWebApiService/host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/yarn.lock

@ -1,4 +0,0 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1

54
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNCreateDTO.cs

@ -1,54 +0,0 @@
using System.ComponentModel.DataAnnotations;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单新增DTO(ASN Create DTO)
/// </summary>
public class ASNCreateDTO : ASNCreateOrUpdateDTOBase
{
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Required]
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { set; get; }
/// <summary>
/// 要货计划单号(Request Plan Number)
/// </summary>
[Required]
[Display(Name = "要货计划单号(RpNumber)")]
public string RpNumber { set; get; }
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Required]
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { set; get; }
/// <summary>
/// 供应商代码(Supplier code)
/// </summary>
[Required]
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { set; get; }
/// <summary>
/// 地点(Site)
/// </summary>
[Required]
[Display(Name = "地点(Site)")]
public string Site { set; get; }
/// <summary>
/// 公司(IAC company code)
/// </summary>
[Required]
[Display(Name = "公司(Company)")]
public string Company { set; get; }
}
}

81
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNCreateOrUpdateDTOBase.cs

@ -1,81 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Data;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单创建更新基础Dto
/// </summary>
public abstract class ASNCreateOrUpdateDTOBase : EntityDto<Guid>,IHasExtraProperties
{
/// <summary>
/// 联系人(Contact person)
/// </summary>
[Display(Name = "联系人(ContactName)")]
public string ContactName { set; get; }
/// <summary>
/// 联系电话(Contact phone)
/// </summary>
[Display(Name = "联系电话(ContactPhone)")]
public string ContactPhone { set; get; }
/// <summary>
/// 版本(Car Number)
/// </summary>
[Display(Name = "车牌号(CarNumber)")]
public string CarNumber { set; get; }
/// <summary>
/// 仓库(Warehouse code)
/// </summary>
[Required]
[Display(Name = "仓库(Warehouse)")]
public string Warehouse { set; get; }
/// <summary>
/// 收货口(Warehouse Dock)
/// </summary>
[Required]
[Display(Name = "收货口(Dock)")]
public string Dock { set; get; }
/// <summary>
/// 时间窗口开始(Time Window Begin)
/// </summary>
[Required]
[Display(Name = "时间窗口开始(TimeWindowBegin)")]
public DateTime TimeWindowBegin { set; get; }
/// <summary>
/// 时间窗口结束(Time Window End)
/// </summary>
[Required]
[Display(Name = "时间窗口结束(TimeWindowEnd)")]
public DateTime TimeWindowEnd { set; get; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { set; get; }
/// <summary>
/// 明细列表(Detail list)
/// </summary>
[Required]
public virtual ICollection<ASNDetailsDTO> Details { get; set; }
/// <summary>
/// 扩展属性(Extra Properties)
/// </summary>
[Display(Name = "扩展属性(Extra Properties)")]
public ExtraPropertyDictionary ExtraProperties { get; set; }
}
}

119
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNDTO.cs

@ -1,119 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Data;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单DTO(ASN DTO)
/// </summary>
public class ASNDTO : AuditedEntityDto<Guid>,IHasExtraProperties
{
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { set; get; }
/// <summary>
/// 要货计划单号(Request Plan Number)
/// </summary>
[Display(Name = "要货计划单号(RpNumber)")]
public string RpNumber { set; get; }
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { set; get; }
/// <summary>
/// 供应商代码(Supplier code)
/// </summary>
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { set; get; }
/// <summary>
/// 状态(Status)
/// </summary>
[Display(Name = "状态(Status)")]
public int Status { set; get; }
/// <summary>
/// 联系人(Contact person)
/// </summary>
[Display(Name = "联系人(ContactName)")]
public string ContactName { set; get; }
/// <summary>
/// 联系电话(Contact phone)
/// </summary>
[Display(Name = "联系电话(ContactPhone)")]
public string ContactPhone { set; get; }
/// <summary>
/// 版本(Car Number)
/// </summary>
[Display(Name = "车牌号(CarNumber)")]
public string CarNumber { set; get; }
/// <summary>
/// 仓库(Warehouse code)
/// </summary>
[Display(Name = "仓库(Warehouse)")]
public string Warehouse { set; get; }
/// <summary>
/// 收货口(Warehouse Dock)
/// </summary>
[Display(Name = "收货口(Dock)")]
public string Dock { set; get; }
/// <summary>
/// 时间窗口开始(Time Window Begin)
/// </summary>
[Display(Name = "时间窗口开始(TimeWindowBegin)")]
public DateTime TimeWindowBegin { set; get; }
/// <summary>
/// 时间窗口结束(Time Window End)
/// </summary>
[Display(Name = "时间窗口结束(TimeWindowEnd)")]
public DateTime TimeWindowEnd { set; get; }
/// <summary>
/// 地点(Site)
/// </summary>
[Display(Name = "地点(Site)")]
public string Site { set; get; }
/// <summary>
/// 公司(IAC company code)
/// </summary>
[Display(Name = "公司(Company)")]
public string Company { set; get; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { set; get; }
/// <summary>
/// 是否已读(IsRead)
/// </summary>
[Display(Name = "是否已读(IsRead)")]
public bool IsRead { set; get; }
public virtual ICollection<ASNDetailsDTO> Details { get; set; }
/// <summary>
/// 扩展属性(Extra Properties)
/// </summary>
[Display(Name = "扩展属性(Extra Properties)")]
public ExtraPropertyDictionary ExtraProperties { get; set; }
}
}

132
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNDetailsDTO.cs

@ -1,132 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Data;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单明细DTO(ASN Detail DTO)
/// </summary>
public class ASNDetailsDTO : AuditedEntityDto<Guid>, IHasExtraProperties
{
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Required]
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { set; get; }
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Required]
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { set; get; }
/// <summary>
/// 订单行(Purchase order Line)
/// </summary>
[Required]
[Display(Name = "订单行(PoLine)")]
public string PoLine { set; get; }
/// <summary>
/// 零件号(PartCode)
/// </summary>
[Required]
[Display(Name = "零件号(PartCode)")]
public string PartCode { set; get; }
/// <summary>
/// 批次(Lot number)
/// </summary>
[Required]
[Display(Name = "批次(Lot)")]
public string Lot { set; get; }
/// <summary>
/// 供应商批次(Supplier Lot)
/// </summary>
[Required]
[Display(Name = "供应商批次(SupplierLot)")]
public string SupplierLot { set; get; }
/// <summary>
/// 生产日期(Produce Date)
/// </summary>
[Required]
[Display(Name = "生产日期(ProductionDate)")]
public DateTime ProductionDate { set; get; }
/// <summary>
/// 计量单位(Unit of measure)
/// </summary>
[Required]
[Display(Name = "计量单位(Uom)")]
public string Uom { set; get; }
/// <summary>
/// 发货数量(Delivery quantity)
/// </summary>
[Required]
[Display(Name = "发货数量(DeliverQty)")]
public decimal DeliverQty { set; get; }
/// <summary>
/// 标包计量单位(standard package um)
/// </summary>
[Required]
[Display(Name = "标包计量单位(Standard Pack Uom)")]
public string StdPackUom { set; get; }
/// <summary>
/// 标包数量(standard package quantity)
/// </summary>
[Required]
[Display(Name = "标包数量(Standard Pack Qty)")]
public decimal StdPackQty { set; get; }
/// <summary>
/// 供应商计量单位(Supplier UM)
/// </summary>
[Display(Name = "供应商计量单位(SupplierPackUom)")]
public string SupplierPackUom { set; get; }
/// <summary>
/// 供应商包装数量(Supplier package UM)
/// </summary>
[Display(Name = "供应商包装数量(SupplierPackQty)")]
public decimal SupplierPackQty { set; get; }
/// <summary>
/// 供应商包装转换率(UM conversion)
/// </summary>
[Display(Name = "供应商包装转换率(SupplierPackConvertRate)")]
public decimal SupplierPackConvertRate { set; get; }
/// <summary>
/// 标签代码(LabelCode)
/// </summary>
[Display(Name = "标签代码(LabelCode)")]
public string LabelCode { set; get; }
/// <summary>
/// 完整条码数据(BarCode)
/// </summary>
[Display(Name = "完整条码数据(BarCode)")]
public string BarCode { set; get; }
/// <summary>
/// 托标签号(PalletLabelCode)
/// </summary>
[Display(Name = "托标签号(PalletLabelCode)")]
public string PalletLabelCode { set; get; }
/// <summary>
/// 扩展属性(Extra Properties)
/// </summary>
[Display(Name = "扩展属性(Extra Properties)")]
public ExtraPropertyDictionary ExtraProperties { get; set; }
}
}

33
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/ASNUpdateDTO.cs

@ -1,33 +0,0 @@
using System.ComponentModel.DataAnnotations;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单更新DTO(ASN update DTO)
/// </summary>
public class ASNUpdateDTO : ASNCreateOrUpdateDTOBase
{
/// <summary>
/// 状态(Status)
/// </summary>
[Required]
[Display(Name = "状态(Status)")]
public int Status { set; get; }
/// <summary>
/// 是否已读(IsRead)
/// </summary>
[Required]
[Display(Name = "是否已读(IsRead)")]
public bool IsRead { set; get; }
/// <summary>
/// 并发时间戳(Concurrency Stamp)
/// </summary>
[Display(Name = "并发时间戳(Concurrency Stamp)")]
public string ConcurrencyStamp { get; set; }
}
}

14
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/ASNs/IASNAppService.cs

@ -1,14 +0,0 @@
using System;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
public interface IASNAppService:ICrudAppService<ASNDTO,Guid,RequestDTO,ASNCreateDTO, ASNUpdateDTO>
{
Task<ListResultDto<ASNDTO>> GetUnreadListAsync();
Task<ASNDTO> ReadAsync(Guid id);
Task<ASNDTO> UnreadAsync(Guid id);
}
}

3
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

7
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelCreateDTO.cs

@ -1,7 +0,0 @@
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
public class ASNLabelCreateDTO : ASNLabelCreateOrUpdateDTOBase
{
}
}

145
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelCreateOrUpdateDTOBase.cs

@ -1,145 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Application.Dtos;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单标签表创建更新基础Dto
/// </summary>
public abstract class ASNLabelCreateOrUpdateDTOBase : EntityDto<Guid>
{
/// <summary>
/// 标签代码(Label code)
/// </summary>
[Display(Name = "标签代码(LabelCode)")]
public string LabelCode { get; set; }
/// <summary>
/// 完整条码数据(Barcode barcode)
/// </summary>
[Display(Name = "完整条码数据(Barcode)")]
public string Barcode { get; set; }
/// <summary>
/// 零件号(Part code)
/// </summary>
[Display(Name = "零件号(PartCode)")]
public string PartCode { get; set; }
/// <summary>
/// 零件名称(Part Name)
/// </summary>
[Display(Name = "零件名称(PartName)")]
public string PartName { get; set; }
/// <summary>
/// 零件描述(Part desc)
/// </summary>
[Display(Name = "零件描述(PartDesc)")]
public string PartDesc { get; set; }
/// <summary>
/// 批次(Lot number)
/// </summary>
[Display(Name = "批次(Lot)")]
public bool Lot { get; set; }
/// <summary>
/// 计量单位(UM)
/// </summary>
[Display(Name = "计量单位(Uom)")]
public bool Uom { get; set; }
/// <summary>
/// 数量(Label quantity)
/// </summary>
[Display(Name = "数量(Qty)")]
public decimal Qty { get; set; }
/// <summary>
/// 标包计量单位(Package UM)
/// </summary>
[Display(Name = "标包计量单位(StdPackUom)")]
public string StdPackUom { get; set; }
/// <summary>
/// 标包数量(Package quantity)
/// </summary>
[Display(Name = "标包数量(StdPackQty)")]
public decimal StdPackQty { get; set; }
/// <summary>
/// 供应商代码(Supplier Code)
/// </summary>
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { get; set; }
/// <summary>
/// 供应商名称(Supplier Name)
/// </summary>
[Display(Name = "供应商名称(SupplierName)")]
public string SupplierName { get; set; }
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { get; set; }
/// <summary>
/// 订单行(Purchase order Line)
/// </summary>
[Display(Name = "订单行(PoLine)")]
public string PoLine { get; set; }
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { get; set; }
/// <summary>
/// 要货计划单号(Plan number)
/// </summary>
[Display(Name = "要货计划单号(RpNumber)")]
public string RpNumber { get; set; }
/// <summary>
/// 供应商批次(Supplier Lot)
/// </summary>
[Display(Name = "供应商批次(SupplierLot)")]
public string SupplierLot { get; set; }
/// <summary>
/// 生产日期(Produce Date)
/// </summary>
[Display(Name = "生产日期(ProduceDate)")]
public DateTime ProduceDate { get; set; }
/// <summary>
/// 托标签号(Pallet label number)
/// </summary>
[Display(Name = "托标签号(PalletLabelnumber)")]
public decimal PalletLabelnumber { get; set; }
/// <summary>
/// 地点(site)
/// </summary>
[Display(Name = "地点(Site)")]
public string Site { get; set; }
/// <summary>
/// 公司(IAC company code)
/// </summary>
[Display(Name = "公司(Company)")]
public decimal Company { get; set; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { get; set; }
}
}

145
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelDTO.cs

@ -1,145 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Application.Dtos;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单标签表DTO
/// </summary>
public class ASNLabelDTO : AuditedEntityDto<Guid>
{
/// <summary>
/// 标签代码(Label code)
/// </summary>
[Display(Name = "标签代码(LabelCode)")]
public string LabelCode { get; set; }
/// <summary>
/// 完整条码数据(Barcode barcode)
/// </summary>
[Display(Name = "完整条码数据(Barcode)")]
public string Barcode { get; set; }
/// <summary>
/// 零件号(Part code)
/// </summary>
[Display(Name = "零件号(PartCode)")]
public string PartCode { get; set; }
/// <summary>
/// 零件名称(Part Name)
/// </summary>
[Display(Name = "零件名称(PartName)")]
public string PartName { get; set; }
/// <summary>
/// 零件描述(Part desc)
/// </summary>
[Display(Name = "零件描述(PartDesc)")]
public string PartDesc { get; set; }
/// <summary>
/// 批次(Lot number)
/// </summary>
[Display(Name = "批次(Lot)")]
public bool Lot { get; set; }
/// <summary>
/// 计量单位(UM)
/// </summary>
[Display(Name = "计量单位(Uom)")]
public bool Uom { get; set; }
/// <summary>
/// 数量(Label quantity)
/// </summary>
[Display(Name = "数量(Qty)")]
public decimal Qty { get; set; }
/// <summary>
/// 标包计量单位(Package UM)
/// </summary>
[Display(Name = "标包计量单位(StdPackUom)")]
public string StdPackUom { get; set; }
/// <summary>
/// 标包数量(Package quantity)
/// </summary>
[Display(Name = "标包数量(StdPackQty)")]
public decimal StdPackQty { get; set; }
/// <summary>
/// 供应商代码(Supplier Code)
/// </summary>
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { get; set; }
/// <summary>
/// 供应商名称(Supplier Name)
/// </summary>
[Display(Name = "供应商名称(SupplierName)")]
public string SupplierName { get; set; }
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { get; set; }
/// <summary>
/// 订单行(Purchase order Line)
/// </summary>
[Display(Name = "订单行(PoLine)")]
public string PoLine { get; set; }
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { get; set; }
/// <summary>
/// 要货计划单号(Plan number)
/// </summary>
[Display(Name = "要货计划单号(RpNumber)")]
public string RpNumber { get; set; }
/// <summary>
/// 供应商批次(Supplier Lot)
/// </summary>
[Display(Name = "供应商批次(SupplierLot)")]
public string SupplierLot { get; set; }
/// <summary>
/// 生产日期(Produce Date)
/// </summary>
[Display(Name = "生产日期(ProduceDate)")]
public DateTime ProduceDate { get; set; }
/// <summary>
/// 托标签号(Pallet label number)
/// </summary>
[Display(Name = "托标签号(PalletLabelnumber)")]
public decimal PalletLabelnumber { get; set; }
/// <summary>
/// 地点(site)
/// </summary>
[Display(Name = "地点(Site)")]
public string Site { get; set; }
/// <summary>
/// 公司(IAC company code)
/// </summary>
[Display(Name = "公司(Company)")]
public decimal Company { get; set; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { get; set; }
}
}

7
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/ASNLabelUpdateDTO.cs

@ -1,7 +0,0 @@
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
public class ASNLabelUpdateDTO : ASNLabelCreateOrUpdateDTOBase
{
}
}

10
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Labels/IASNLabelAppService.cs

@ -1,10 +0,0 @@
using System;
using Volo.Abp.Application.Services;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
public interface IASNLabelAppService:ICrudAppService<ASNLabelDTO,Guid,InputDTO, ASNLabelCreateDTO, ASNLabelUpdateDTO>
{
}
}

20
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Permissions/WebApiPermissionDefinitionProvider.cs

@ -1,20 +0,0 @@
using Win_in.Sfs.Scp.WebApi.Localization;
using Volo.Abp.Authorization.Permissions;
using Volo.Abp.Localization;
namespace Win_in.Sfs.Scp.WebApi.Permissions
{
public class WebApiPermissionDefinitionProvider : PermissionDefinitionProvider
{
public override void Define(IPermissionDefinitionContext context)
{
var scpWebApi = context.AddGroup(WebApiPermissions.GroupName, L("Permission:WebApi"));
}
private static LocalizableString L(string name)
{
return LocalizableString.Create<WebApiResource>(name);
}
}
}

17
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Permissions/WebApiPermissions.cs

@ -1,17 +0,0 @@
using Volo.Abp.Reflection;
namespace Win_in.Sfs.Scp.WebApi.Permissions
{
public class WebApiPermissions
{
public const string GroupName = "WebApi";
public const string Create = "Create";
public const string Update = "Update";
public const string Delete = "Delete";
public static string[] GetAll()
{
return ReflectionHelper.GetPublicConstantsRecursively(typeof(WebApiPermissions));
}
}
}

13
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/ISupplierPartAppService.cs

@ -1,13 +0,0 @@
using System;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
using Win_in.Sfs.Scp.WebApi.SupplierParts;
namespace Win_in.Sfs.Scp.WebApi.Application.Contracts.SupplierParts
{
public interface ISupplierPartAppService : ICrudAppService<SupplierPartDTO,Guid,RequestDTO,SupplierPartCreateDTO, SupplierPartUpdateDTO>
{
}
}

39
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartCreateDTO.cs

@ -1,39 +0,0 @@
using System.ComponentModel.DataAnnotations;
namespace Win_in.Sfs.Scp.WebApi.SupplierParts
{
/// <summary>
/// 供应商零件新增DTO(Supplier part create DTO)
/// </summary>
public class SupplierPartCreateDTO : SupplierPartCreateOrUpdateDTOBase
{
/// <summary>
/// 供应商代码(SupplierCode)
/// </summary>
[Required]
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { set; get; }
/// <summary>
/// 零件号(PartCode)
/// </summary>
[Required]
[Display(Name = "零件号(PartCode)")]
public string PartCode { set; get; }
/// <summary>
/// 地点(Site)
/// </summary>
[Required]
[Display(Name = "地点")]
public string Site { get; set; }
/// <summary>
/// 公司(Company)
/// </summary>
[Required]
[Display(Name = "公司")]
public string Company { get; set; }
}
}

39
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartCreateOrUpdateDTOBase.cs

@ -1,39 +0,0 @@
using System;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Application.Dtos;
using Win_in.Sfs.Scp.WebApi.Domain.Shared;
namespace Win_in.Sfs.Scp.WebApi.SupplierParts
{
public abstract class SupplierPartCreateOrUpdateDTOBase : EntityDtoBase<Guid>
{
/// <summary>
/// 供应商零件号(SupplierPartCode)
/// </summary>
[Required]
[Display(Name = "供应商零件号(SupplierPartCode)")]
public string SupplierPartCode { set; get; }
/// <summary>
/// 供应商标包计量单位(SupplierStdPackUom)
/// </summary>
[Required]
[Display(Name = "供应商标包计量单位(SupplierStdPackUom)")]
public string SupplierStdPackUom { get; set; }
/// <summary>
/// 供应商标包数量
/// </summary>
[Required]
[Display(Name = "供应商标包数量(SupplierStdPackQty)")]
public decimal SupplierStdPackQty { get; set; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { get; set; }
}
}

61
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartDto.cs

@ -1,61 +0,0 @@
using System;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Application.Dtos;
using Win_in.Sfs.Scp.WebApi.Domain.Shared;
namespace Win_in.Sfs.Scp.WebApi.SupplierParts
{
/// <summary>
/// 供应商零件DTO(Supplier part DTO)
/// </summary>
public class SupplierPartDTO : EntityDtoBase<Guid>
{
/// <summary>
/// 供应商代码(SupplierCode)
/// </summary>
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { set; get; }
/// <summary>
/// 零件号(PartCode)
/// </summary>
[Display(Name = "零件号(PartCode)")]
public string PartCode { set; get; }
/// <summary>
/// 供应商零件号(SupplierPartCode)
/// </summary>
[Display(Name = "供应商零件号(SupplierPartCode)")]
public string SupplierPartCode { set; get; }
/// <summary>
/// 供应商标包计量单位(SupplierStdPackUom)
/// </summary>
[Display(Name = "供应商标包计量单位(SupplierStdPackUom)")]
public string SupplierStdPackUom { get; set; }
/// <summary>
/// 供应商标包数量
/// </summary>
[Display(Name = "供应商标包数量(SupplierStdPackQty)")]
public decimal SupplierStdPackQty { get; set; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { get; set; }
/// <summary>
/// 地点(Site)
/// </summary>
[Display(Name = "地点(Site)")]
public string Site { get; set; }
/// <summary>
/// 公司(Company)
/// </summary>
[Display(Name = "公司(Company)")]
public string Company { get; set; }
}
}

18
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/SupplierParts/SupplierPartUpdateDTO.cs

@ -1,18 +0,0 @@
using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Scp.WebApi.SupplierParts;
namespace Win_in.Sfs.Scp.WebApi.SupplierParts
{
/// <summary>
/// 供应商零件更新DTO(Supplier Part Update DTO)
/// </summary>
public class SupplierPartUpdateDTO : SupplierPartCreateOrUpdateDTOBase
{
/// <summary>
/// 并发时间戳(Concurrency Stamp)
/// </summary>
[Display(Name = "并发时间戳(Concurrency Stamp)")]
public string ConcurrencyStamp { get; set; }
}
}

16
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/WebApiApplicationContractsModule.cs

@ -1,16 +0,0 @@
using Volo.Abp.Application;
using Volo.Abp.Modularity;
using Volo.Abp.Authorization;
namespace Win_in.Sfs.Scp.WebApi
{
[DependsOn(
typeof(WebApiDomainSharedModule),
typeof(AbpDddApplicationContractsModule),
typeof(AbpAuthorizationModule)
)]
public class WebApiApplicationContractsModule : AbpModule
{
}
}

36
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Win_in.Sfs.Scp.WebApi.Application.Contracts.csproj

@ -1,36 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RootNamespace>Win_in.Sfs.Scp.WebApi</RootNamespace>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DocumentationFile>..\..\host\Win_in.Sfs.Scp.WebApi.HttpApi.Host\bin\Debug\net5.0\Win_in.Sfs.Scp.WebApi.Application.Contracts.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Compile Remove="ASNs\**" />
<Compile Remove="Labels\**" />
<Compile Remove="SupplierParts\**" />
<EmbeddedResource Remove="ASNs\**" />
<EmbeddedResource Remove="Labels\**" />
<EmbeddedResource Remove="SupplierParts\**" />
<None Remove="ASNs\**" />
<None Remove="Labels\**" />
<None Remove="SupplierParts\**" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="4.4.2" />
<PackageReference Include="Volo.Abp.Authorization" Version="4.4.2" />
<ProjectReference Include="..\Win_in.Sfs.Scp.WebApi.Domain.Shared\Win_in.Sfs.Scp.WebApi.Domain.Shared.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="Receipts\" />
</ItemGroup>
</Project>

998
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Win_in.Sfs.Scp.WebApi.Application.Contracts.xml

@ -1,998 +0,0 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Win_in.Sfs.Scp.WebApi.Application.Contracts</name>
</assembly>
<members>
<member name="T:Win_in.Sfs.Scp.WebApi.Parts.IPartAppService">
<summary>
Part接口
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.Parts.PartCreateDTO">
<summary>
零件创建Dto
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateDTO.Code">
<summary>
代码(Code)
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase">
<summary>
零件创建更新基础Dto
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Name">
<summary>
名称(Name)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Desc1">
<summary>
描述(Desc1)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Desc2">
<summary>
描述2(Desc2)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Status">
<summary>
状态(Status)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.IsMakePart">
<summary>
制造件(IsMakePart)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.IsBuyPart">
<summary>
采购件(IsBuyPart)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Uom">
<summary>
计量单位(Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.abcClass">
<summary>
ABC类(abcClass)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.productline">
<summary>
产品类(Product line)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Type">
<summary>
类型(Type)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.catalog">
<summary>
种类(Catalog)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Group">
<summary>
分组(Group)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Color">
<summary>
颜色(Color)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Configuration">
<summary>
配置(Configuration)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Project">
<summary>
项目(Project)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.version">
<summary>
版本(version)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Eco">
<summary>
工程变更通知单(Engineering change order)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.StdPackUom">
<summary>
标包计量单位(Standard Pack Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.StdPackQty">
<summary>
标包数量(Standard Pack Qty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.ExtPackUom">
<summary>
替代计量单位(Extra Pack UM)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.ExtPackQty">
<summary>
替代包装数量(Extra Pack Qty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Site">
<summary>
地点(Site)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartCreateOrUpdateDTOBase.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.Parts.PartDTO">
<summary>
零件Dto
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Code">
<summary>
代码(Code)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Name">
<summary>
名称(Name)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Desc1">
<summary>
描述(Desc1)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Desc2">
<summary>
描述2(Desc2)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Status">
<summary>
状态(Status)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.IsMakePart">
<summary>
制造件(IsMakePart)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.IsBuyPart">
<summary>
采购件(IsBuyPart)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Uom">
<summary>
计量单位(Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.abcClass">
<summary>
ABC类(abcClass)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.productline">
<summary>
产品类(Product line)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Type">
<summary>
类型(Type)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.catalog">
<summary>
种类(Catalog)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Group">
<summary>
分组(Group)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Color">
<summary>
颜色(Color)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Configuration">
<summary>
配置(Configuration)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Project">
<summary>
项目(Project)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.version">
<summary>
版本(version)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Eco">
<summary>
工程变更通知单(Engineering change order)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.StdPackUom">
<summary>
标包计量单位(Standard Pack Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.StdPackQty">
<summary>
标包数量(Standard Pack Qty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.ExtPackUom">
<summary>
替代计量单位(Extra Pack UM)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.ExtPackQty">
<summary>
替代包装数量(Extra Pack Qty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Site">
<summary>
地点(Site)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Parts.PartDTO.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.Parts.PartUpdateDTO">
<summary>
零件更新Dto
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.POs.IPOAppService">
<summary>
PO接口
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.POs.POCreateDTO">
<summary>
采购订单创建Dto
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase">
<summary>
采购订单创建更新基础Dto
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Code">
<summary>
代码(Code)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Name">
<summary>
简称(Name)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Desc">
<summary>
描述(Description)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Rank">
<summary>
级别(Rank)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Address">
<summary>
地址
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Country">
<summary>
国家(Country)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.City">
<summary>
城市(City)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Phone">
<summary>
电话(Phone)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Fax">
<summary>
传真(Fax)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.PostId">
<summary>
邮编(PostId)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.ContactName">
<summary>
联系人(ContactName)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Currency">
<summary>
货币(Currency)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.IsActive">
<summary>
是否激活(IsActive)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.POCreateOrUpdateDTOBase.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO">
<summary>
采购订单明细表Dto
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.PoNumber">
<summary>
订单号(PoNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.PoLine">
<summary>
订单行(PoLine)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.PartCode">
<summary>
零件号(PartCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.Uom">
<summary>
计量单位(Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.OrderQty">
<summary>
订单数量(OrderQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.StdPackUom">
<summary>
标包计量单位(Standard Pack Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.StdPackQty">
<summary>
标包数量(Standard Pack Qty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.SupplierPackUom">
<summary>
供应商计量单位(SupplierPackUom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.SupplierPackQty">
<summary>
供应商包装数量(SupplierPackQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.SupplierPackConvertRate">
<summary>
供应商包装转换率(SupplierPackConvertRate)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.IsConsignment">
<summary>
是否寄存订单(IsConsignment)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.LineStatus">
<summary>
订单行状态(LineStatus)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODetailDTO.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.POs.PODTO">
<summary>
采购订单主表Dto
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Code">
<summary>
代码(Code)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Name">
<summary>
简称(Name)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Desc">
<summary>
描述(Description)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Rank">
<summary>
级别(Rank)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Address">
<summary>
地址
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Country">
<summary>
国家(Country)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.City">
<summary>
城市(City)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Phone">
<summary>
电话(Phone)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Fax">
<summary>
传真(Fax)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.PostId">
<summary>
邮编(PostId)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.ContactName">
<summary>
联系人(ContactName)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Currency">
<summary>
货币(Currency)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.IsActive">
<summary>
是否激活(IsActive)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.POs.PODTO.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.POs.POUpdateDTO">
<summary>
采购订单更新Dto
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.RcNumber">
<summary>
发货单号(RcNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.AsnNumber">
<summary>
发货单号(AsnNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.RpNumber">
<summary>
要货计划单号(RpNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.PoNumber">
<summary>
订单号(PoNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.SupplierCode">
<summary>
供应商代码(PoNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.RcType">
<summary>
收货单类型(RcType)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.Warehouse">
<summary>
仓库(Warehouse)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.Dock">
<summary>
收货口(Dock)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.TimeWindowBegin">
<summary>
时间窗口开始(TimeWindowBegin)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.TimeWindowEnd">
<summary>
时间窗口结束(TimeWindowEnd)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.ReceiveTime">
<summary>
收货时间(ReceiveTime)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.Site">
<summary>
地点(Site)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.PoLine">
<summary>
订单行(PoLine)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.PartCode">
<summary>
零件号(PartCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.Lot">
<summary>
批次(Lot)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.SupplierLot">
<summary>
供应商批次(SupplierLot)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.ProductionDate">
<summary>
生产日期(ProductionDate)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.Uom">
<summary>
计量单位(Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.DeliverQty">
<summary>
发货数量(DeliverQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.ReceiveQty">
<summary>
收货数量(ReceiveQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.StdPackUom">
<summary>
标包计量单位(Standard Pack Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.StdPackQty">
<summary>
标包数量(Standard Pack Qty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.SupplierPackUom">
<summary>
供应商计量单位(SupplierPackUom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.SupplierPackQty">
<summary>
供应商包装数量(SupplierPackQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.SupplierPackConvertRate">
<summary>
供应商包装转换率(SupplierPackConvertRate)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateOrUpdateDTOBase.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.RcNumber">
<summary>
发货单号(RcNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.AsnNumber">
<summary>
发货单号(AsnNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.RpNumber">
<summary>
要货计划单号(RpNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.PoNumber">
<summary>
订单号(PoNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.SupplierCode">
<summary>
供应商代码(PoNumber)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.RcType">
<summary>
收货单类型(RcType)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.Warehouse">
<summary>
仓库(Warehouse)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.Dock">
<summary>
收货口(Dock)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.TimeWindowBegin">
<summary>
时间窗口开始(TimeWindowBegin)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.TimeWindowEnd">
<summary>
时间窗口结束(TimeWindowEnd)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.ReceiveTime">
<summary>
收货时间(ReceiveTime)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.Site">
<summary>
地点(Site)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.PoLine">
<summary>
订单行(PoLine)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.PartCode">
<summary>
零件号(PartCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.Lot">
<summary>
批次(Lot)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.SupplierLot">
<summary>
供应商批次(SupplierLot)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.ProductionDate">
<summary>
生产日期(ProductionDate)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.Uom">
<summary>
计量单位(Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.DeliverQty">
<summary>
发货数量(DeliverQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.ReceiveQty">
<summary>
收货数量(ReceiveQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.StdPackUom">
<summary>
标包计量单位(Standard Pack Uom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.StdPackQty">
<summary>
标包数量(Standard Pack Qty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.SupplierPackUom">
<summary>
供应商计量单位(SupplierPackUom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.SupplierPackQty">
<summary>
供应商包装数量(SupplierPackQty)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.SupplierPackConvertRate">
<summary>
供应商包装转换率(SupplierPackConvertRate)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptDTO.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartCreateOrUpdateDTOBase.SupplierCode">
<summary>
供应商代码(SupplierCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartCreateOrUpdateDTOBase.PartCode">
<summary>
零件号(PartCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartCreateOrUpdateDTOBase.SupplierPartCode">
<summary>
供应商零件号(SupplierPartCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartCreateOrUpdateDTOBase.SupplierStdPackUom">
<summary>
供应商标包计量单位(SupplierStdPackUom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartCreateOrUpdateDTOBase.SupplierStdPackQty">
<summary>
供应商标包数量
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartCreateOrUpdateDTOBase.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartDTO.SupplierCode">
<summary>
供应商代码(SupplierCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartDTO.PartCode">
<summary>
零件号(PartCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartDTO.SupplierPartCode">
<summary>
供应商零件号(SupplierPartCode)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartDTO.SupplierStdPackUom">
<summary>
供应商标包计量单位(SupplierStdPackUom)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartDTO.SupplierStdPackQty">
<summary>
供应商标包数量
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartDTO.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Code">
<summary>
代码(Code)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Name">
<summary>
简称(Name)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Desc">
<summary>
描述(Description)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Rank">
<summary>
级别(Rank)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Address">
<summary>
地址
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Country">
<summary>
国家(Country)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.City">
<summary>
城市(City)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Phone">
<summary>
电话(Phone)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Fax">
<summary>
传真(Fax)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.PostId">
<summary>
邮编(PostId)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.ContactName">
<summary>
联系人(ContactName)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Currency">
<summary>
货币(Currency)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.IsActive">
<summary>
是否激活(IsActive)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateOrUpdateDTOBase.Remark">
<summary>
备注(Remark)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Code">
<summary>
代码(Code)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Name">
<summary>
简称(Name)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Desc">
<summary>
描述(Description)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Rank">
<summary>
级别(Rank)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Address">
<summary>
地址
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Country">
<summary>
国家(Country)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.City">
<summary>
城市(City)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Phone">
<summary>
电话(Phone)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Fax">
<summary>
传真(Fax)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.PostId">
<summary>
邮编(PostId)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.ContactName">
<summary>
联系人(ContactName)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Currency">
<summary>
货币(Currency)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.IsActive">
<summary>
是否激活(IsActive)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Company">
<summary>
公司(Company)
</summary>
</member>
<member name="P:Win_in.Sfs.Scp.WebApi.Suppliers.SupplierDTO.Remark">
<summary>
备注(Remark)
</summary>
</member>
</members>
</doc>

149
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/ASNs/ASNAppService.cs

@ -1,149 +0,0 @@
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Dynamic.Core;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
using Volo.Abp.Domain.Repositories;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/// <summary>
/// 发货单服务
/// </summary>
[AllowAnonymous]
[Route("api/scp/asn")]
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.ScpWebApi)]
public class ASNAppService:CrudAppService<ASN,ASNDTO,Guid,RequestDTO,ASNCreateDTO,ASNUpdateDTO>, IASNAppService
{
private readonly IASNRepository _asnRepository;
public ASNAppService(IASNRepository repository) : base(repository)
{
_asnRepository = repository;
}
/// <summary>
/// 按ID获取发货单(Get ASN by ID)
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <returns></returns>
[HttpGet]
[Route("{id}")]
public override Task<ASNDTO> GetAsync(Guid id)
{
return base.GetAsync(id);
}
/// <summary>
/// 按条件获取发货单列表 (Get ASN list by request condition)
/// </summary>
/// <param name="requestDTO"></param>
/// <returns></returns>
[HttpGet]
[Route("")]
public override Task<PagedResultDto<ASNDTO>> GetListAsync(RequestDTO requestDTO)
{
return base.GetListAsync(requestDTO);
}
/// <summary>
/// 获取未读ASN列表 (Get unread ASN list)
/// </summary>
/// <returns>未读ASN列表 (Unread ASN list) </returns>
[HttpGet]
[Route("UnreadList")]
public async Task<ListResultDto<ASNDTO>> GetUnreadListAsync()
{
var unreadList =await _asnRepository.Where(p => p.IsRead == false).ToDynamicListAsync<ASN>();
var dtoList = ObjectMapper.Map<List<ASN>, List<ASNDTO>>(unreadList);
return new ListResultDto<ASNDTO>(dtoList);
}
/// <summary>
/// 新增发货单(Create New ASN)
/// </summary>
/// <returns></returns>
[HttpPost]
[Route("")]
public override Task<ASNDTO> CreateAsync(ASNCreateDTO asnCreateDTO)
{
return base.CreateAsync(asnCreateDTO);
}
/// <summary>
/// 修改发货单 (Modify ASN)
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <returns></returns>
[HttpPut]
[Route("{id}")]
public override Task<ASNDTO> UpdateAsync(Guid id, ASNUpdateDTO asnUpdateDTO)
{
return base.UpdateAsync(id, asnUpdateDTO);
}
/// <summary>
/// 修改ANS读取状态为已读 (Modify isRead status of ASN to true )
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <returns>ASN</returns>
[HttpPost]
[Route("Read")]
public async Task<ASNDTO> ReadAsync(Guid id)
{
var asn = await _asnRepository.GetAsync(id);
if (asn == null)
{
return null;
}
var dto = await UpdateAsnIsReadAsync(asn,true);
return dto;
}
private async Task<ASNDTO> UpdateAsnIsReadAsync(ASN asn,bool isRead)
{
asn.IsRead = isRead;
var result = await _asnRepository.UpdateAsync(asn);
var dto = ObjectMapper.Map<ASN, ASNDTO>(result);
return dto;
}
/// <summary>
/// 修改ANS读取状态为未读 (Modify isRead status of ASN to false )
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <returns>ASN</returns>
[HttpPost]
[Route("Unread")]
public async Task<ASNDTO> UnreadAsync(Guid id)
{
var asn = await _asnRepository.GetAsync(id);
if (asn == null)
{
return null;
}
var dto = await UpdateAsnIsReadAsync(asn, false);
return dto;
}
/// <summary>
/// 删除发货单 (Delete ASN)
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <returns>无</returns>
[HttpDelete]
[Route("{id}")]
public override Task DeleteAsync(Guid id)
{
return base.DeleteAsync(id);
}
}
}

3
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

90
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/Labels/LabelAppService.cs

@ -1,90 +0,0 @@
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
using Volo.Abp.Domain.Repositories;
using Win_in.Sfs.Scp.WebApi.ASNs;
namespace Win_in.Sfs.Scp.WebApi.ASNs
{
/*
/// <summary>
///零件服务
/// </summary>
[AllowAnonymous]
[Route("api/SCP/ASNLabel")]
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.Default)]
public class ASNLabelAppService : CrudAppService<ASNLabel, ASNLabelDTO, Guid,InputDTO, ASNLabelCreateDTO, ASNLabelUpdateDTO>, IASNLabelAppService
{
private readonly IASNLabelRepository _partRepository;
public ASNLabelAppService(IASNLabelRepository repository) : base(repository)
{
_partRepository = repository;
}
/// <summary>
///获取一条数据 (Get a piece of data)
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet]
[Route("{id}")]
public override Task<ASNLabelDTO> GetAsync(Guid id)
{
return base.GetAsync(id);
}
/// <summary>
///获取数据列表 (Get data list)
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpGet]
[Route("")]
public override Task<PagedResultDto<ASNLabelDTO>> GetListAsync(InputDTO input)
{
return base.GetListAsync(input);
}
/// <summary>
/// 新增实体 (Create New entity)
/// </summary>
/// <returns></returns>
[HttpPost]
[Route("")]
public override Task<ASNLabelDTO> CreateAsync(ASNLabelCreateDTO input)
{
return base.CreateAsync(input);
}
/// <summary>
/// 修改实体 (Modify entity)
/// </summary>
/// <returns></returns>
[HttpPut]
[Route("{id}")]
public override Task<ASNLabelDTO> UpdateAsync(Guid id, ASNLabelUpdateDTO input)
{
return base.UpdateAsync(id, input);
}
/// <summary>
/// 删除实体 (Delete entity)
/// </summary>
/// <param name="id">ID</param>
/// <returns>无</returns>
[HttpDelete]
[Route("{id}")]
public override Task DeleteAsync(Guid id)
{
return base.DeleteAsync(id);
}
}
*/
}

91
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/SupplierParts/SupplierPartAppService.cs

@ -1,91 +0,0 @@
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
using Win_in.Sfs.Scp.WebApi.Application.Contracts.SupplierParts;
namespace Win_in.Sfs.Scp.WebApi.SupplierParts
{
/// <summary>
/// 供应商零件服务
/// </summary>
[AllowAnonymous]
[Route("api/scp/supplier-part")]
[ApiExplorerSettings(GroupName = SwaggerGroupConsts.ScpWebApi)]
public class SupplierPartAppService : CrudAppService<SupplierPart, SupplierPartDTO, Guid, RequestDTO, SupplierPartCreateDTO, SupplierPartUpdateDTO>, ISupplierPartAppService
{
private readonly ISupplierPartRepository _partRepository;
public SupplierPartAppService(ISupplierPartRepository repository) : base(repository)
{
_partRepository = repository;
}
/// <summary>
/// 按ID获取供应商零件 (Get supplier part by Id)
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <returns></returns>
[HttpGet]
[Route("{id}")]
public override Task<SupplierPartDTO> GetAsync(Guid id)
{
return base.GetAsync(id);
}
/// <summary>
/// 按请求条件获取供应商零件列表 (Get supplier part by request condition)
/// </summary>
/// <param name="requestDTO"></param>
/// <returns></returns>
[HttpGet]
[Route("")]
public override Task<PagedResultDto<SupplierPartDTO>> GetListAsync(RequestDTO requestDTO)
{
return base.GetListAsync(requestDTO);
}
/// <summary>
/// 新增供应商零件(Create supplier part)
/// </summary>
/// <param name="supplierPartCreateDTO"></param>
/// <returns></returns>
[HttpPost]
[Route("")]
public override Task<SupplierPartDTO> CreateAsync(SupplierPartCreateDTO supplierPartCreateDTO)
{
return base.CreateAsync(supplierPartCreateDTO);
}
/// <summary>
/// 按ID更新供应商零件(Update supplier part by ID)
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <param name="supplierPartUpdateDTO"></param>
/// <returns></returns>
[HttpPut]
[Route("{id}")]
public override Task<SupplierPartDTO> UpdateAsync(Guid id, SupplierPartUpdateDTO supplierPartUpdateDTO)
{
return base.UpdateAsync(id, supplierPartUpdateDTO);
}
/// <summary>
/// 按ID删除供应商零件(Delete supplier part by ID)
/// </summary>
/// <param name="id">唯一ID(unique ID)</param>
/// <returns>无</returns>
[HttpDelete]
[Route("{id}")]
public override Task DeleteAsync(Guid id)
{
return base.DeleteAsync(id);
}
}
}

25
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/WebApiApplicationModule.cs

@ -1,25 +0,0 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.AutoMapper;
using Volo.Abp.Modularity;
using Volo.Abp.Application;
namespace Win_in.Sfs.Scp.WebApi
{
[DependsOn(
typeof(WebApiDomainModule),
typeof(WebApiApplicationContractsModule),
typeof(AbpDddApplicationModule),
typeof(AbpAutoMapperModule)
)]
public class WebApiApplicationModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
context.Services.AddAutoMapperObjectMapper<WebApiApplicationModule>();
Configure<AbpAutoMapperOptions>(options =>
{
options.AddMaps<WebApiApplicationModule>(validate: true);
});
}
}
}

34
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/Win_in.Sfs.Scp.WebApi.Application.csproj

@ -1,34 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RootNamespace>Win_in.Sfs.Scp.WebApi</RootNamespace>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DocumentationFile>..\..\host\Win_in.Sfs.Scp.WebApi.HttpApi.Host\bin\Debug\net5.0\Win_in.Sfs.Scp.WebApi.Application.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Compile Remove="ASNs\**" />
<Compile Remove="Labels\**" />
<Compile Remove="SupplierParts\**" />
<EmbeddedResource Remove="ASNs\**" />
<EmbeddedResource Remove="Labels\**" />
<EmbeddedResource Remove="SupplierParts\**" />
<None Remove="ASNs\**" />
<None Remove="Labels\**" />
<None Remove="SupplierParts\**" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="2.2.5" />
<PackageReference Include="Volo.Abp.AutoMapper" Version="4.4.2" />
<PackageReference Include="Volo.Abp.Ddd.Application" Version="4.4.2" />
<ProjectReference Include="..\Win_in.Sfs.Scp.WebApi.Application.Contracts\Win_in.Sfs.Scp.WebApi.Application.Contracts.csproj" />
<ProjectReference Include="..\Win_in.Sfs.Scp.WebApi.Domain\Win_in.Sfs.Scp.WebApi.Domain.csproj" />
</ItemGroup>
</Project>

235
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application/Win_in.Sfs.Scp.WebApi.Application.xml

@ -1,235 +0,0 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Win_in.Sfs.Scp.WebApi.Application</name>
</assembly>
<members>
<member name="M:Win_in.Sfs.Scp.WebApi.ASNs.ASNAppService.CreateAsync(Win_in.Sfs.Scp.WebApi.ASNs.ASNCreateDTO)">
<summary>
新增实体 (Create New entity)
</summary>
<param name="input"></param>
<returns></returns>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.Parts.PartAppService">
<summary>
零件服务
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Parts.PartAppService.GetAsync(System.Guid)">
<summary>
获取一条数据 (Get a piece of data)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Parts.PartAppService.GetListAsync(Win_in.Sfs.Scp.WebApi.InputDTO)">
<summary>
获取数据列表 (Get data list)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Parts.PartAppService.CreateAsync(Win_in.Sfs.Scp.WebApi.Parts.PartCreateDTO)">
<summary>
新增实体 (Create New entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Parts.PartAppService.UpdateAsync(System.Guid,Win_in.Sfs.Scp.WebApi.Parts.PartUpdateDTO)">
<summary>
修改实体 (Modify entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Parts.PartAppService.DeleteAsync(System.Guid)">
<summary>
删除实体 (Delete entity)
</summary>
<param name="id">ID</param>
<returns></returns>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.POs.POAppService">
<summary>
采购订单服务
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.POs.POAppService.GetAsync(System.Guid)">
<summary>
获取一条数据 (Get a piece of data)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.POs.POAppService.GetListAsync(Win_in.Sfs.Scp.WebApi.InputDTO)">
<summary>
获取数据列表 (Get data list)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.POs.POAppService.CreateAsync(Win_in.Sfs.Scp.WebApi.POs.POCreateDTO)">
<summary>
新增实体 (Create New entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.POs.POAppService.UpdateAsync(System.Guid,Win_in.Sfs.Scp.WebApi.POs.POUpdateDTO)">
<summary>
修改实体 (Modify entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.POs.POAppService.DeleteAsync(System.Guid)">
<summary>
删除实体 (Delete entity)
</summary>
<param name="id">ID</param>
<returns></returns>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptAppService">
<summary>
零件服务
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptAppService.GetAsync(System.Guid)">
<summary>
获取一条数据 (Get a piece of data)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptAppService.GetListAsync(Win_in.Sfs.Scp.WebApi.InputDTO)">
<summary>
获取数据列表 (Get data list)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptAppService.CreateAsync(Win_in.Sfs.Scp.WebApi.Receipts.ReceiptCreateDTO)">
<summary>
新增实体 (Create New entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptAppService.UpdateAsync(System.Guid,Win_in.Sfs.Scp.WebApi.Receipts.ReceiptUpdateDTO)">
<summary>
修改实体 (Modify entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Receipts.ReceiptAppService.DeleteAsync(System.Guid)">
<summary>
删除实体 (Delete entity)
</summary>
<param name="id">ID</param>
<returns></returns>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartAppService">
<summary>
零件服务
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartAppService.GetAsync(System.Guid)">
<summary>
获取一条数据 (Get a piece of data)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartAppService.GetListAsync(Win_in.Sfs.Scp.WebApi.InputDTO)">
<summary>
获取数据列表 (Get data list)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartAppService.CreateAsync(Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartCreateDTO)">
<summary>
新增实体 (Create New entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartAppService.UpdateAsync(System.Guid,Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartUpdateDTO)">
<summary>
修改实体 (Modify entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.SupplierParts.SupplierPartAppService.DeleteAsync(System.Guid)">
<summary>
删除实体 (Delete entity)
</summary>
<param name="id">ID</param>
<returns></returns>
</member>
<member name="T:Win_in.Sfs.Scp.WebApi.Suppliers.SuppliersAppService">
<summary>
零件服务
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Suppliers.SuppliersAppService.GetAsync(System.Guid)">
<summary>
获取一条数据 (Get a piece of data)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Suppliers.SuppliersAppService.GetListAsync(Win_in.Sfs.Scp.WebApi.InputDTO)">
<summary>
获取数据列表 (Get data list)
</summary>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Suppliers.SuppliersAppService.CreateAsync(Win_in.Sfs.Scp.WebApi.Suppliers.SupplierCreateDTO)">
<summary>
新增实体 (Create New entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Suppliers.SuppliersAppService.UpdateAsync(System.Guid,Win_in.Sfs.Scp.WebApi.Suppliers.SupplierUpdateDTO)">
<summary>
修改实体 (Modify entity)
</summary>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.Suppliers.SuppliersAppService.DeleteAsync(System.Guid)">
<summary>
删除实体 (Delete entity)
</summary>
<param name="id">ID</param>
<returns></returns>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.WebApiApplicationAutoMapperProfile.CreateMapPart">
<summary>
零件实体与Dto相互映射
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.WebApiApplicationAutoMapperProfile.CreateMapSupplier">
<summary>
供应商实体与Dto相互映射
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.WebApiApplicationAutoMapperProfile.CreateMapSupplierPart">
<summary>
供应商零件实体与Dto相互映射
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.WebApiApplicationAutoMapperProfile.CreateMapReceipt">
<summary>
收货单与退货单明细实体与Dto相互映射
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.WebApiApplicationAutoMapperProfile.CreateMapPO">
<summary>
采购订单主表映射
</summary>
</member>
<member name="M:Win_in.Sfs.Scp.WebApi.WebApiApplicationAutoMapperProfile.CreateMapPODetial">
<summary>
采购订单明细表映射
</summary>
</member>
</members>
</doc>

3
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

7
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/Localization/WebApi/en.json

@ -1,7 +0,0 @@
{
"culture": "en",
"texts": {
"MyAccount": "My account",
"SamplePageMessage": "A sample page for the WebApi module"
}
}

7
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/Localization/WebApi/zh-Hans.json

@ -1,7 +0,0 @@
{
"culture": "zh-Hans",
"texts": {
"MyAccount": "我的账户",
"SamplePageMessage": "WebApi模块的示例页面"
}
}

37
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/WebApiDomainSharedModule.cs

@ -1,37 +0,0 @@
using Volo.Abp.Modularity;
using Volo.Abp.Localization;
using Win_in.Sfs.Scp.WebApi.Localization;
using Volo.Abp.Localization.ExceptionHandling;
using Volo.Abp.Validation;
using Volo.Abp.Validation.Localization;
using Volo.Abp.VirtualFileSystem;
namespace Win_in.Sfs.Scp.WebApi
{
[DependsOn(
typeof(AbpValidationModule)
)]
public class WebApiDomainSharedModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
Configure<AbpVirtualFileSystemOptions>(options =>
{
options.FileSets.AddEmbedded<WebApiDomainSharedModule>();
});
Configure<AbpLocalizationOptions>(options =>
{
options.Resources
.Add<WebApiResource>("en")
.AddBaseTypes(typeof(AbpValidationResource))
.AddVirtualJson("/Localization/WebApi");
});
Configure<AbpExceptionLocalizationOptions>(options =>
{
options.MapCodeNamespace("WebApi", typeof(WebApiResource));
});
}
}
}

7
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/WebApiErrorCodes.cs

@ -1,7 +0,0 @@
namespace Win_in.Sfs.Scp.WebApi
{
public static class WebApiErrorCodes
{
//Add your business exception error codes here...
}
}

26
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain.Shared/Win_in.Sfs.Scp.WebApi.Domain.Shared.csproj

@ -1,26 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RootNamespace>Win_in.Sfs.Scp.WebApi</RootNamespace>
<GenerateEmbeddedFilesManifest>true</GenerateEmbeddedFilesManifest>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="4.4.2" />
<PackageReference Include="Volo.Abp.Ddd.Domain" Version="4.4.2" />
<PackageReference Include="Volo.Abp.Validation" Version="4.4.2" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="5.0.*" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Localization\WebApi\*.json" />
<Content Remove="Localization\WebApi\*.json" />
</ItemGroup>
</Project>

206
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/ASNs/ASN.cs

@ -1,206 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using Volo.Abp;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.Guids;
using Win_in.Sfs.Scp.WebApi.Domain.Shared;
namespace Win_in.Sfs.Scp.WebApi
{
/// <summary>
/// 发货单主表
/// </summary>
public class ASN: EntityBase<Guid>
{
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { set; get; }
/// <summary>
/// 要货计划单号(Request Plan Number)
/// </summary>
[Display(Name = "要货计划单号(RpNumber)")]
public string RpNumber { set; get; }
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { set; get; }
/// <summary>
/// 供应商代码(Supplier code)
/// </summary>
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { set; get; }
/// <summary>
/// 状态(Status)
/// </summary>
[Display(Name = "状态(Status)")]
public int Status { set; get; }
/// <summary>
/// 联系人(Contact person)
/// </summary>
[Display(Name = "联系人(ContactName)")]
public string ContactName { set; get; }
/// <summary>
/// 联系电话(Contact phone)
/// </summary>
[Display(Name = "联系电话(ContactPhone)")]
public string ContactPhone { set; get; }
/// <summary>
/// 版本(Car Number)
/// </summary>
[Display(Name = "车牌号(CarNumber)")]
public string CarNumber { set; get; }
/// <summary>
/// 仓库(Warehouse code)
/// </summary>
[Display(Name = "仓库(Warehouse)")]
public string Warehouse { set; get; }
/// <summary>
/// 收货口(Warehouse Dock)
/// </summary>
[Display(Name = "收货口(Dock)")]
public string Dock { set; get; }
/// <summary>
/// 时间窗口开始(Time Window Begin)
/// </summary>
[Display(Name = "时间窗口开始(TimeWindowBegin)")]
public DateTime TimeWindowBegin { set; get; }
/// <summary>
/// 时间窗口结束(Time Window End)
/// </summary>
[Display(Name = "时间窗口结束(TimeWindowEnd)")]
public DateTime TimeWindowEnd { set; get; }
/// <summary>
/// 地点(Site)
/// </summary>
[Display(Name = "地点(Site)")]
public string Site { set; get; }
/// <summary>
/// 公司(IAC company code)
/// </summary>
[Display(Name = "公司(Company)")]
public string Company { set; get; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { set; get; }
/// <summary>
/// 是否已读(IsRead)
/// </summary>
[Display(Name = "是否已读(IsRead)")]
public bool IsRead { set; get; }
public virtual List<ASNDetail> Details { get; set; }
protected ASN() { }
public ASN(string asnNumber,string rpNumber,string poNumber,string supplierCode, string site,
string company, string warehouse, string dock,DateTime timeWindowBegin,DateTime timeWindowEnd,
string contactName, string contactPhone, string carNumber, string remark)
{
AsnNumber = asnNumber;
RpNumber = rpNumber;
PoNumber = poNumber;
SupplierCode = supplierCode;
Site = site;
Company = company;
Warehouse = warehouse;
Dock = dock;
TimeWindowBegin = timeWindowBegin;
TimeWindowEnd = timeWindowEnd;
ContactName = contactName;
ContactPhone = contactPhone;
CarNumber = carNumber;
Remark = remark;
Status = 0;//TODO 改成枚举
IsRead = false;
Details = new List<ASNDetail>();
}
#region details handler
public virtual void AddDetail(IGuidGenerator guidGenerator, ASNDetail detail)
{
Check.NotNull(guidGenerator, nameof(guidGenerator));
Check.NotNull(detail, nameof(ASNDetail));
if (IsInDetails(detail.PoNumber, detail.PoLine))
{
throw new Exception(detail.PoNumber + detail.PoLine + "已经在明细中存在!");
}
Details.Add(new ASNDetail(guidGenerator.Create(), detail.AsnNumber, detail.PoNumber, detail.PoLine, detail.PartCode, detail.Lot, detail.SupplierLot, detail.ProductionDate,
detail.Uom, detail.DeliverQty, detail.StdPackUom, detail.StdPackQty, detail.SupplierPackUom,detail.SupplierPackQty,detail.SupplierPackConvertRate, detail.LabelCode,detail.BarCode,detail.PalletLabelCode));
}
public virtual void AddDetails(IGuidGenerator guidGenerator, IEnumerable<ASNDetail> details)
{
Check.NotNull(guidGenerator, nameof(guidGenerator));
foreach (var detail in details)
{
AddDetail(guidGenerator, detail);
}
}
public virtual bool IsInDetails(string ponumber, string poline)
{
return Details.Any(di => di.PoNumber == ponumber && di.PoLine == poline);
}
public virtual bool IsInDetails(Guid itemId)
{
return Details.Any(di => di.Id == itemId);
}
public virtual bool UpdateDetail(IGuidGenerator guidGenerator, ASNDetail detail)
{
Check.NotNull(detail, nameof(ASNDetail));
var item = FindDetail(detail.Id);
if (item == null)
{
AddDetail(guidGenerator, detail);
}
else
{
Check.NotNull(item, nameof(ASNDetail));
//item.Set(detail.Remark, detail.Enabled);
}
return true;
}
public virtual ASNDetail FindDetail(Guid itemId)
{
var item = Details.FirstOrDefault(p => p.Id == itemId);
return item;
}
#endregion
}
}

141
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/ASNs/ASNDetail.cs

@ -1,141 +0,0 @@
using System;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Domain.Entities.Auditing;
using Win_in.Sfs.Scp.WebApi.Domain.Shared;
namespace Win_in.Sfs.Scp.WebApi
{
/// <summary>
/// 发货单明细
/// </summary>
public class ASNDetail: EntityDetailBase<Guid>
{
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { set; get; }
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { set; get; }
/// <summary>
/// 订单行(Purchase order Line)
/// </summary>
[Display(Name = "订单行(PoLine)")]
public string PoLine { set; get; }
/// <summary>
/// 零件号(PartCode)
/// </summary>
[Display(Name = "零件号(PartCode)")]
public string PartCode { set; get; }
/// <summary>
/// 批次(Lot number)
/// </summary>
[Display(Name = "批次(Lot)")]
public string Lot { set; get; }
/// <summary>
/// 供应商批次(Supplier Lot)
/// </summary>
[Display(Name = "供应商批次(SupplierLot)")]
public string SupplierLot { set; get; }
/// <summary>
/// 生产日期(Produce Date)
/// </summary>
[Display(Name = "生产日期(ProductionDate)")]
public DateTime ProductionDate { set; get; }
/// <summary>
/// 计量单位(Unit of measure)
/// </summary>
[Display(Name = "计量单位(Uom)")]
public string Uom { set; get; }
/// <summary>
/// 发货数量(Delivery quantity)
/// </summary>
[Display(Name = "发货数量(DeliverQty)")]
public decimal DeliverQty { set; get; }
/// <summary>
/// 标包计量单位(standard package um)
/// </summary>
[Display(Name = "标包计量单位(Standard Pack Uom)")]
public string StdPackUom { set; get; }
/// <summary>
/// 标包数量(standard package quantity)
/// </summary>
[Display(Name = "标包数量(Standard Pack Qty)")]
public decimal StdPackQty { set; get; }
/// <summary>
/// 供应商计量单位(Supplier UM)
/// </summary>
[Display(Name = "供应商计量单位(SupplierPackUom)")]
public string SupplierPackUom { set; get; }
/// <summary>
/// 供应商包装数量(Supplier package UM)
/// </summary>
[Display(Name = "供应商包装数量(SupplierPackQty)")]
public decimal SupplierPackQty { set; get; }
/// <summary>
/// 供应商包装转换率(UM conversion)
/// </summary>
[Display(Name = "供应商包装转换率(SupplierPackConvertRate)")]
public decimal SupplierPackConvertRate { set; get; }
/// <summary>
/// 标签代码(LabelCode)
/// </summary>
[Display(Name = "标签代码(LabelCode)")]
public string LabelCode { set; get; }
/// <summary>
/// 完整条码数据(BarCode)
/// </summary>
[Display(Name = "完整条码数据(BarCode)")]
public string BarCode { set; get; }
/// <summary>
/// 托标签号(PalletLabelCode)
/// </summary>
[Display(Name = "托标签号(PalletLabelCode)")]
public string PalletLabelCode { set; get; }
protected ASNDetail() { }
public ASNDetail(
Guid id, string asnNumber,string poNumber, string poLine, string partCode, string lot, string supplierLot, DateTime productionDate, string uom,decimal deliverQty,
string stdPackUom, decimal stdPackQty, string supplierPackUom, decimal supplierPackQty, decimal supplierPackConvertRate,string labelCode,string barCode,string palletLabelCode) : base(id)
{
AsnNumber = asnNumber;
PoNumber = poNumber;
PoLine = poLine;
PartCode = partCode;
Lot = lot;
SupplierLot = supplierLot;
ProductionDate = productionDate;
Uom = uom;
DeliverQty = deliverQty;
StdPackUom = stdPackUom;
StdPackQty = stdPackQty;
SupplierPackUom = supplierPackUom;
SupplierPackQty = supplierPackQty;
SupplierPackConvertRate = supplierPackConvertRate;
LabelCode = labelCode;
BarCode = barCode;
PalletLabelCode = palletLabelCode;
}
}
}

9
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/ASNs/IASNRepository.cs

@ -1,9 +0,0 @@
using System;
using Volo.Abp.Domain.Repositories;
namespace Win_in.Sfs.Scp.WebApi
{
public interface IASNRepository : IRepository<ASN, Guid>
{
}
}

3
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

145
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Labels/Label.cs

@ -1,145 +0,0 @@
using System;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Domain.Entities.Auditing;
using Win_in.Sfs.Scp.WebApi.Domain.Shared;
namespace Win_in.Sfs.Scp.WebApi
{
/// <summary>
/// 标签表
/// </summary>
public class Label:EntityBase<Guid>
{
/// <summary>
/// 标签代码(Label code)
/// </summary>
[Display(Name = "标签代码(LabelCode)")]
public string LabelCode { get;set;}
/// <summary>
/// 完整条码数据(Full Barcode string)
/// </summary>
[Display(Name = "完整条码数据(Barcode)")]
public string Barcode { get;set;}
/// <summary>
/// 零件号(Part code)
/// </summary>
[Display(Name = "零件号(PartCode)")]
public string PartCode { get;set;}
/// <summary>
/// 零件名称(Part Name)
/// </summary>
[Display(Name = "零件名称(PartName)")]
public string PartName { get;set;}
/// <summary>
/// 零件描述(Part desc)
/// </summary>
[Display(Name = "零件描述(PartDesc)")]
public string PartDesc { get;set;}
/// <summary>
/// 批次(Lot number)
/// </summary>
[Display(Name = "批次(Lot)")]
public bool Lot { get;set;}
/// <summary>
/// 计量单位(UM)
/// </summary>
[Display(Name = "计量单位(Uom)")]
public bool Uom { get;set;}
/// <summary>
/// 数量(Label quantity)
/// </summary>
[Display(Name = "数量(Qty)")]
public decimal Qty { get;set;}
/// <summary>
/// 标包计量单位(Package UM)
/// </summary>
[Display(Name = "标包计量单位(Standard Pack Uom)")]
public string StdPackUom { get;set;}
/// <summary>
/// 标包数量(Package quantity)
/// </summary>
[Display(Name = "标包数量(Standard Pack Qty)")]
public decimal StdPackQty { get;set;}
/// <summary>
/// 供应商代码(Supplier Code)
/// </summary>
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { get;set;}
/// <summary>
/// 供应商名称(Supplier Name)
/// </summary>
[Display(Name = "供应商名称(SupplierName)")]
public string SupplierName { get;set;}
/// <summary>
/// 订单号(Purchase order number)
/// </summary>
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { get;set;}
/// <summary>
/// 订单行(Purchase order Line)
/// </summary>
[Display(Name = "订单行(PoLine)")]
public string PoLine { get;set;}
/// <summary>
/// 发货单号(ASN Number)
/// </summary>
[Display(Name = "发货单号(AsnNumber)")]
public string AsnNumber { get;set;}
/// <summary>
/// 要货计划单号(Plan number)
/// </summary>
[Display(Name = "要货计划单号(RpNumber)")]
public string RpNumber { get;set;}
/// <summary>
/// 供应商批次(Supplier Lot)
/// </summary>
[Display(Name = "供应商批次(SupplierLot)")]
public string SupplierLot { get;set;}
/// <summary>
/// 生产日期(Produce Date)
/// </summary>
[Display(Name = "生产日期(ProductionDate)")]
public DateTime ProductionDate { get;set;}
/// <summary>
/// 托标签号(Pallet label number)
/// </summary>
[Display(Name = "托标签号(PalletLabelCode)")]
public decimal PalletLabelCode { get;set;}
/// <summary>
/// 地点(site)
/// </summary>
[Display(Name = "地点(Site)")]
public string Site { get;set;}
/// <summary>
/// 公司(IAC company code)
/// </summary>
[Display(Name = "公司(Company)")]
public decimal Company { get;set;}
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { get;set;}
}
}

11
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Settings/WebApiSettings.cs

@ -1,11 +0,0 @@
namespace Win_in.Sfs.Scp.WebApi.Settings
{
public static class WebApiSettings
{
public const string GroupName = "ScpWebApi";
/* Add constants for setting names. Example:
* public const string MySettingName = GroupName + ".MySettingName";
*/
}
}

61
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/SupplierParts/SupplierPart.cs

@ -1,61 +0,0 @@
using System;
using System.ComponentModel.DataAnnotations;
using Volo.Abp.Domain.Entities.Auditing;
using Win_in.Sfs.Scp.WebApi.Domain.Shared;
namespace Win_in.Sfs.Scp.WebApi
{
/// <summary>
/// 供应商零件表
/// </summary>
public class SupplierPart: EntityBase<Guid>
{
/// <summary>
/// 供应商代码(SupplierCode)
/// </summary>
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { set; get; }
/// <summary>
/// 零件号(PartCode)
/// </summary>
[Display(Name = "零件号(PartCode)")]
public string PartCode { set; get; }
/// <summary>
/// 供应商零件号(SupplierPartCode)
/// </summary>
[Display(Name = "供应商零件号(SupplierPartCode)")]
public string SupplierPartCode { set; get; }
/// <summary>
/// 供应商标包计量单位(SupplierStdPackUom)
/// </summary>
[Display(Name = "供应商标包计量单位(SupplierStdPackUom)")]
public string SupplierStdPackUom { get; set; }
/// <summary>
/// 供应商标包数量
/// </summary>
[Display(Name = "供应商标包数量(SupplierStdPackQty)")]
public decimal SupplierStdPackQty { get; set; }
/// <summary>
/// 备注(Remark)
/// </summary>
[Display(Name = "备注(Remark)")]
public string Remark { get; set; }
/// <summary>
/// 地点(Site)
/// </summary>
[Display(Name = "地点")]
public string Site { get; set; }
/// <summary>
/// 公司(Company)
/// </summary>
[Display(Name = "公司")]
public string Company { get; set; }
}
}

10
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Suppliers/ISupplierRepository.cs

@ -1,10 +0,0 @@
using System;
using Volo.Abp.Domain.Repositories;
namespace Win_in.Sfs.Scp.WebApi
{
public interface ISupplierRepository : IRepository<Supplier, Guid>
{
}
}

14
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/WebApiDomainModule.cs

@ -1,14 +0,0 @@
using Volo.Abp.Domain;
using Volo.Abp.Modularity;
namespace Win_in.Sfs.Scp.WebApi
{
[DependsOn(
typeof(AbpDddDomainModule),
typeof(WebApiDomainSharedModule)
)]
public class WebApiDomainModule : AbpModule
{
}
}

27
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Domain/Win_in.Sfs.Scp.WebApi.Domain.csproj

@ -1,27 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RootNamespace>Win_in.Sfs.Scp.WebApi</RootNamespace>
</PropertyGroup>
<ItemGroup>
<Compile Remove="ASNs\**" />
<Compile Remove="Labels\**" />
<Compile Remove="SupplierParts\**" />
<EmbeddedResource Remove="ASNs\**" />
<EmbeddedResource Remove="Labels\**" />
<EmbeddedResource Remove="SupplierParts\**" />
<None Remove="ASNs\**" />
<None Remove="Labels\**" />
<None Remove="SupplierParts\**" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Ddd.Domain" Version="4.4.2" />
<ProjectReference Include="..\Win_in.Sfs.Scp.WebApi.Domain.Shared\Win_in.Sfs.Scp.WebApi.Domain.Shared.csproj" />
</ItemGroup>
</Project>

34
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/EntityFrameworkCore/WebApiDbContext.cs

@ -1,34 +0,0 @@
using Microsoft.EntityFrameworkCore;
using Volo.Abp.Data;
using Volo.Abp.EntityFrameworkCore;
namespace Win_in.Sfs.Scp.WebApi.EntityFrameworkCore
{
[ConnectionStringName(WebApiDbProperties.ConnectionStringName)]
public class WebApiDbContext : AbpDbContext<WebApiDbContext>, IWebApiDbContext
{
/* Add DbSet for each Aggregate Root here. Example:
* public DbSet<Question> Questions { get; set; }
*/
public virtual DbSet<Part> Parts { get; set; }
public virtual DbSet<Supplier> Suppliers { get; set; }
public virtual DbSet<PurchaseOrder> PurchaseOrders { get; set; }
public virtual DbSet<Receipt> Receipts { get; set; }
public WebApiDbContext(DbContextOptions<WebApiDbContext> options)
: base(options)
{
}
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.ConfigureWebApi();
}
}
}

28
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/EntityFrameworkCore/WebApiEntityFrameworkCoreModule.cs

@ -1,28 +0,0 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.EntityFrameworkCore;
using Volo.Abp.Modularity;
namespace Win_in.Sfs.Scp.WebApi.EntityFrameworkCore
{
[DependsOn(
typeof(WebApiDomainModule),
typeof(AbpEntityFrameworkCoreModule)
)]
public class WebApiEntityFrameworkCoreModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
context.Services.AddAbpDbContext<WebApiDbContext>(options =>
{
/* Add custom repositories here. Example:
* options.AddRepository<Question, EfCoreQuestionRepository>();
*/
options.AddRepository<Part, PartRepository>();
options.AddRepository<Supplier, SupplierRepository>();
options.AddRepository<Receipt, ReceiptRepository>();
options.AddRepository<PurchaseOrder, PurchaseOrderRepository>();
});
}
}
}

3
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

15
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.csproj

@ -1,15 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
<RootNamespace>Win_in.Sfs.Scp.WebApi</RootNamespace>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.EntityFrameworkCore" Version="4.4.2" />
<ProjectReference Include="..\Win_in.Sfs.Scp.WebApi.Domain\Win_in.Sfs.Scp.WebApi.Domain.csproj" />
</ItemGroup>
</Project>

3
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

42
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/WebApiHttpApiModule.cs

@ -1,42 +0,0 @@
using Localization.Resources.AbpUi;
using Win_in.Sfs.Scp.WebApi.Localization;
using Volo.Abp.AspNetCore.Mvc;
using Volo.Abp.Localization;
using Volo.Abp.Modularity;
using Microsoft.Extensions.DependencyInjection;
namespace Win_in.Sfs.Scp.WebApi
{
[DependsOn(
typeof(WebApiApplicationContractsModule),
typeof(AbpAspNetCoreMvcModule))]
public class WebApiHttpApiModule : AbpModule
{
public override void PreConfigureServices(ServiceConfigurationContext context)
{
PreConfigure<IMvcBuilder>(mvcBuilder =>
{
mvcBuilder.AddApplicationPartIfNotExists(typeof(WebApiHttpApiModule).Assembly);
});
}
public override void ConfigureServices(ServiceConfigurationContext context)
{
Configure<AbpLocalizationOptions>(options =>
{
options.Resources
.Get<WebApiResource>()
.AddBaseTypes(typeof(AbpUiResource));
});
Configure<AbpAspNetCoreMvcOptions>(options =>
{
options
.ConventionalControllers
.Create(typeof(WebApiApplicationModule).Assembly);
});
}
}
}

20
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.HttpApi/Win_in.Sfs.Scp.WebApi.HttpApi.csproj

@ -1,20 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace>Win_in.Sfs.Scp.WebApi</RootNamespace>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DocumentationFile></DocumentationFile>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="4.4.2" />
<ProjectReference Include="..\Win_in.Sfs.Scp.WebApi.Application.Contracts\Win_in.Sfs.Scp.WebApi.Application.Contracts.csproj" />
<ProjectReference Include="..\Win_in.Sfs.Scp.WebApi.Application\Win_in.Sfs.Scp.WebApi.Application.csproj" />
</ItemGroup>
</Project>

3
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Application.Tests/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Application.Tests/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

10
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Application.Tests/WebApiApplicationTestBase.cs

@ -1,10 +0,0 @@
namespace Win_in.Sfs.Scp.WebApi
{
/* Inherit from this class for your application layer tests.
* See SampleAppService_Tests for example.
*/
public abstract class WebApiApplicationTestBase : WebApiTestBase<WebApiApplicationTestModule>
{
}
}

3
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

21
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/Samples/SampleManager_Tests.cs

@ -1,21 +0,0 @@
using System.Threading.Tasks;
using Xunit;
namespace Win_in.Sfs.Scp.WebApi.Samples
{
public class SampleManager_Tests : WebApiDomainTestBase
{
//private readonly SampleManager _sampleManager;
public SampleManager_Tests()
{
//_sampleManager = GetRequiredService<SampleManager>();
}
[Fact]
public async Task Method1Async()
{
}
}
}

10
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.Domain.Tests/WebApiDomainTestBase.cs

@ -1,10 +0,0 @@
namespace Win_in.Sfs.Scp.WebApi
{
/* Inherit from this class for your domain layer tests.
* See SampleManager_Tests for example.
*/
public abstract class WebApiDomainTestBase : WebApiTestBase<WebApiDomainTestModule>
{
}
}

12
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/EntityFrameworkCore/Samples/SampleRepository_Tests.cs

@ -1,12 +0,0 @@
using Win_in.Sfs.Scp.WebApi.Samples;
namespace Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Samples
{
public class SampleRepository_Tests : SampleRepository_Tests<WebApiEntityFrameworkCoreTestModule>
{
/* Don't write custom repository tests here, instead write to
* the base class.
* One exception can be some specific tests related to EF core.
*/
}
}

10
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/EntityFrameworkCore/WebApiEntityFrameworkCoreTestBase.cs

@ -1,10 +0,0 @@
namespace Win_in.Sfs.Scp.WebApi.EntityFrameworkCore
{
/* This class can be used as a base class for EF Core integration tests,
* while SampleRepository_Tests uses a different approach.
*/
public abstract class WebApiEntityFrameworkCoreTestBase : WebApiTestBase<WebApiEntityFrameworkCoreTestModule>
{
}
}

43
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/EntityFrameworkCore/WebApiEntityFrameworkCoreTestModule.cs

@ -1,43 +0,0 @@
using Microsoft.Data.Sqlite;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage;
using Volo.Abp.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.Sqlite;
using Volo.Abp.Modularity;
namespace Win_in.Sfs.Scp.WebApi.EntityFrameworkCore
{
[DependsOn(
typeof(WebApiTestBaseModule),
typeof(WebApiEntityFrameworkCoreModule),
typeof(AbpEntityFrameworkCoreSqliteModule)
)]
public class WebApiEntityFrameworkCoreTestModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
var sqliteConnection = CreateDatabaseAndGetConnection();
Configure<AbpDbContextOptions>(options =>
{
options.Configure(abpDbContextConfigurationContext =>
{
abpDbContextConfigurationContext.DbContextOptions.UseSqlite(sqliteConnection);
});
});
}
private static SqliteConnection CreateDatabaseAndGetConnection()
{
var connection = new SqliteConnection("Data Source=:memory:");
connection.Open();
new WebApiDbContext(
new DbContextOptionsBuilder<WebApiDbContext>().UseSqlite(connection).Options
).GetService<IRelationalDatabaseCreator>().CreateTables();
return connection;
}
}
}

3
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

3
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/FodyWeavers.xml

@ -1,3 +0,0 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

30
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/FodyWeavers.xsd

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

27
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/Samples/SampleRepository_Tests.cs

@ -1,27 +0,0 @@
using System.Threading.Tasks;
using Volo.Abp.Modularity;
using Xunit;
namespace Win_in.Sfs.Scp.WebApi.Samples
{
/* Write your custom repository tests like that, in this project, as abstract classes.
* Then inherit these abstract classes from EF Core & MongoDB test projects.
* In this way, both database providers are tests with the same set tests.
*/
public abstract class SampleRepository_Tests<TStartupModule> : WebApiTestBase<TStartupModule>
where TStartupModule : IAbpModule
{
//private readonly ISampleRepository _sampleRepository;
protected SampleRepository_Tests()
{
//_sampleRepository = GetRequiredService<ISampleRepository>();
}
[Fact]
public async Task Method1Async()
{
}
}
}

33
ScpWebApiService/test/Win_in.Sfs.Scp.WebApi.TestBase/WebApiDataSeedContributor.cs

@ -1,33 +0,0 @@
using System.Threading.Tasks;
using Volo.Abp.Data;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy;
namespace Win_in.Sfs.Scp.WebApi
{
public class WebApiDataSeedContributor : IDataSeedContributor, ITransientDependency
{
private readonly IGuidGenerator _guidGenerator;
private readonly ICurrentTenant _currentTenant;
public WebApiDataSeedContributor(
IGuidGenerator guidGenerator, ICurrentTenant currentTenant)
{
_guidGenerator = guidGenerator;
_currentTenant = currentTenant;
}
public Task SeedAsync(DataSeedContext context)
{
/* Instead of returning the Task.CompletedTask, you can insert your test data
* at this point!
*/
using (_currentTenant.Change(context?.TenantId))
{
return Task.CompletedTask;
}
}
}
}

0
ScpWebApiService/.gitattributes → WebApiService/.gitattributes

13
ScpWebApiService/.gitignore → WebApiService/.gitignore

@ -252,8 +252,11 @@ paket-files/
*.sln.iml
# WebApi
host/Win_in.Sfs.Scp.WebApi.IdentityServer/Logs/logs.txt
host/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Logs/logs.txt
host/Win_in.Sfs.Scp.WebApi.Web.Host/Logs/logs.txt
host/Win_in.Sfs.Scp.WebApi.Web.Unified/Logs/logs.txt
host/Win_in.Sfs.Scp.WebApi.Blazor.Server.Host/Logs/logs.txt
src/Win_in.Sfs.Scp.WebApi.Web/Logs/*
src/Win_in.Sfs.Scp.WebApi.Web.Host/Logs/*
src/Win_in.Sfs.Scp.WebApi.IdentityServer/Logs/*
src/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Logs/*
src/Win_in.Sfs.Scp.WebApi.HttpApi.Host/Logs/*
src/Win_in.Sfs.Scp.WebApi.DbMigrator/Logs/*
src/Win_in.Sfs.Scp.WebApi.Blazor.Server/Logs/*
src/Win_in.Sfs.Scp.WebApi.Blazor.Server.Tiered/Logs/*

0
ScpWebApiService/.prettierrc → WebApiService/.prettierrc

0
ScpWebApiService/NuGet.Config → WebApiService/NuGet.Config

123
WebApiService/Win_in.Sfs.Scp.WebApi.sln

@ -0,0 +1,123 @@

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}") = "Win_in.Sfs.Scp.WebApi.Domain", "src\Win_in.Sfs.Scp.WebApi.Domain\Win_in.Sfs.Scp.WebApi.Domain.csproj", "{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Application", "src\Win_in.Sfs.Scp.WebApi.Application\Win_in.Sfs.Scp.WebApi.Application.csproj", "{1A94A50E-06DC-43C1-80B5-B662820EC3EB}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.EntityFrameworkCore", "src\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.csproj", "{C956DD76-69C8-4A9C-83EA-D17DF83340FD}"
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}") = "Win_in.Sfs.Scp.WebApi.Application.Tests", "test\Win_in.Sfs.Scp.WebApi.Application.Tests\Win_in.Sfs.Scp.WebApi.Application.Tests.csproj", "{50B2631D-129C-47B3-A587-029CCD6099BC}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Domain.Shared", "src\Win_in.Sfs.Scp.WebApi.Domain.Shared\Win_in.Sfs.Scp.WebApi.Domain.Shared.csproj", "{42F719ED-8413-4895-B5B4-5AB56079BC66}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Application.Contracts", "src\Win_in.Sfs.Scp.WebApi.Application.Contracts\Win_in.Sfs.Scp.WebApi.Application.Contracts.csproj", "{520659C8-C734-4298-A3DA-B539DB9DFC0B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.HttpApi", "src\Win_in.Sfs.Scp.WebApi.HttpApi\Win_in.Sfs.Scp.WebApi.HttpApi.csproj", "{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.HttpApi.Client", "src\Win_in.Sfs.Scp.WebApi.HttpApi.Client\Win_in.Sfs.Scp.WebApi.HttpApi.Client.csproj", "{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests", "test\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests\Win_in.Sfs.Scp.WebApi.EntityFrameworkCore.Tests.csproj", "{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.TestBase", "test\Win_in.Sfs.Scp.WebApi.TestBase\Win_in.Sfs.Scp.WebApi.TestBase.csproj", "{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.Domain.Tests", "test\Win_in.Sfs.Scp.WebApi.Domain.Tests\Win_in.Sfs.Scp.WebApi.Domain.Tests.csproj", "{E512F4D9-9375-480F-A2F6-A46509F9D824}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.HttpApi.Client.ConsoleTestApp", "test\Win_in.Sfs.Scp.WebApi.HttpApi.Client.ConsoleTestApp\Win_in.Sfs.Scp.WebApi.HttpApi.Client.ConsoleTestApp.csproj", "{EF480016-9127-4916-8735-D2466BDBC582}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.DbMigrator", "src\Win_in.Sfs.Scp.WebApi.DbMigrator\Win_in.Sfs.Scp.WebApi.DbMigrator.csproj", "{AA94D832-1CCC-4715-95A9-A483F23A1A5D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Win_in.Sfs.Scp.WebApi.HttpApi.Host", "src\Win_in.Sfs.Scp.WebApi.HttpApi.Host\Win_in.Sfs.Scp.WebApi.HttpApi.Host.csproj", "{748584B1-BA69-4F6A-81AA-F4BDE6BCE29D}"
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
{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
{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
{748584B1-BA69-4F6A-81AA-F4BDE6BCE29D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{748584B1-BA69-4F6A-81AA-F4BDE6BCE29D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{748584B1-BA69-4F6A-81AA-F4BDE6BCE29D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{748584B1-BA69-4F6A-81AA-F4BDE6BCE29D}.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}
{50B2631D-129C-47B3-A587-029CCD6099BC} = {04DBDB01-70F4-4E06-B468-8F87850B22BE}
{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}
{748584B1-BA69-4F6A-81AA-F4BDE6BCE29D} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {28315BFD-90E7-4E14-A2EA-F3D23AF4126F}
EndGlobalSection
EndGlobal

3
ScpWebApiService/Win_in.Sfs.Scp.WebApi.sln.DotSettings → WebApiService/Win_in.Sfs.Scp.WebApi.sln.DotSettings

@ -19,8 +19,5 @@
<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/=ASN/@EntryIndexedValue">ASN</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=DTO/@EntryIndexedValue">DTO</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=PO/@EntryIndexedValue">PO</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=SQL/@EntryIndexedValue">SQL</s:String>
</wpf:ResourceDictionary>

15
WebApiService/common.props

@ -0,0 +1,15 @@
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Version>1.0.0</Version>
<NoWarn>$(NoWarn);CS1591</NoWarn>
<AbpProjectType>app</AbpProjectType>
</PropertyGroup>
<Target Name="NoWarnOnRazorViewImportedTypeConflicts" BeforeTargets="RazorCoreCompile">
<PropertyGroup>
<NoWarn>$(NoWarn);0436</NoWarn>
</PropertyGroup>
</Target>
</Project>

26
WebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Parts/CreatePartDtoValidator.cs

@ -0,0 +1,26 @@
using FluentValidation;
namespace Win_in.Sfs.Scp.WebApi;
public class CreatePartDtoValidator : AbstractValidator<PartDTO>
{
public CreatePartDtoValidator()
{
RuleFor(x => x.Code).MaximumLength(64).NotEmpty();
RuleFor(x => x.Name).MaximumLength(64).NotEmpty();
RuleFor(x => x.Desc1).MaximumLength(1024);
RuleFor(x => x.Desc2).MaximumLength(1024);
RuleFor(x => x.Status).MaximumLength(64).NotEmpty();
RuleFor(x => x.IsMakePart).NotEmpty();
RuleFor(x => x.IsBuyPart).NotEmpty();
RuleFor(x => x.Uom).MaximumLength(64).NotEmpty();
RuleFor(x => x.AbcClass).MaximumLength(64).NotEmpty();
RuleFor(x => x.ProductLine).MaximumLength(64);
RuleFor(x => x.Type).MaximumLength(64);
RuleFor(x => x.Catalog).MaximumLength(64);
RuleFor(x => x.Group).MaximumLength(64);
RuleFor(x => x.Version).MaximumLength(64);
RuleFor(x => x.Site).MaximumLength(64).NotEmpty();
RuleFor(x => x.Company).MaximumLength(64).NotEmpty();
}
}

2
ScpWebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Parts/IPartAppService.cs → WebApiService/src/Win_in.Sfs.Scp.WebApi.Application.Contracts/Parts/IPartAppService.cs

@ -4,7 +4,7 @@ using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
namespace Win_in.Sfs.Scp.WebApi.Parts
namespace Win_in.Sfs.Scp.WebApi
{
/// <summary>
/// Part接口

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save