diff --git a/BasicData/Tnb.BasicData.Entities/Properties/launchSettings.json b/BasicData/Tnb.BasicData.Entities/Properties/launchSettings.json
new file mode 100644
index 00000000..60bc7990
--- /dev/null
+++ b/BasicData/Tnb.BasicData.Entities/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.BasicData.Entities": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50313;http://localhost:50314"
+ }
+ }
+}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData.Interfaces/Properties/launchSettings.json b/BasicData/Tnb.BasicData.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..1fcc5282
--- /dev/null
+++ b/BasicData/Tnb.BasicData.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.BasicData.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50305;http://localhost:50306"
+ }
+ }
+}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData/Properties/launchSettings.json b/BasicData/Tnb.BasicData/Properties/launchSettings.json
new file mode 100644
index 00000000..058fd70e
--- /dev/null
+++ b/BasicData/Tnb.BasicData/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.BasicData": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50307;http://localhost:50308"
+ }
+ }
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Properties/launchSettings.json b/EquipMgr/Tnb.EquipMgr.Entities/Properties/launchSettings.json
new file mode 100644
index 00000000..0685298d
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr.Entities/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.EquipMgr.Entities": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50299;http://localhost:50300"
+ }
+ }
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr.Interfaces/Properties/launchSettings.json b/EquipMgr/Tnb.EquipMgr.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..f4a42f30
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.EquipMgr.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50303;http://localhost:50304"
+ }
+ }
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr/Properties/launchSettings.json b/EquipMgr/Tnb.EquipMgr/Properties/launchSettings.json
new file mode 100644
index 00000000..52e54340
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.EquipMgr": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50301;http://localhost:50302"
+ }
+ }
+}
\ No newline at end of file
diff --git a/PerMgr/Tnb.PerMgr.Entities/Properties/launchSettings.json b/PerMgr/Tnb.PerMgr.Entities/Properties/launchSettings.json
new file mode 100644
index 00000000..54c1b4f2
--- /dev/null
+++ b/PerMgr/Tnb.PerMgr.Entities/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.PerMgr.Entities": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50319;http://localhost:50320"
+ }
+ }
+}
\ No newline at end of file
diff --git a/PerMgr/Tnb.PerMgr.Interfaces/Properties/launchSettings.json b/PerMgr/Tnb.PerMgr.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..4967ac13
--- /dev/null
+++ b/PerMgr/Tnb.PerMgr.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.PerMgr.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50321;http://localhost:50322"
+ }
+ }
+}
\ No newline at end of file
diff --git a/PerMgr/Tnb.PerMgr/Properties/launchSettings.json b/PerMgr/Tnb.PerMgr/Properties/launchSettings.json
new file mode 100644
index 00000000..6d85c6dd
--- /dev/null
+++ b/PerMgr/Tnb.PerMgr/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.PerMgr": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50317;http://localhost:50318"
+ }
+ }
+}
\ No newline at end of file
diff --git a/ProductionMgr/Tnb.ProductionMgr.Entities/Properties/launchSettings.json b/ProductionMgr/Tnb.ProductionMgr.Entities/Properties/launchSettings.json
new file mode 100644
index 00000000..a4a524d7
--- /dev/null
+++ b/ProductionMgr/Tnb.ProductionMgr.Entities/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.ProductionMgr.Entities": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50311;http://localhost:50312"
+ }
+ }
+}
\ No newline at end of file
diff --git a/ProductionMgr/Tnb.ProductionMgr.Interfaces/Properties/launchSettings.json b/ProductionMgr/Tnb.ProductionMgr.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..4dc4edc8
--- /dev/null
+++ b/ProductionMgr/Tnb.ProductionMgr.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.ProductionMgr.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50315;http://localhost:50316"
+ }
+ }
+}
\ No newline at end of file
diff --git a/ProductionMgr/Tnb.ProductionMgr/Properties/launchSettings.json b/ProductionMgr/Tnb.ProductionMgr/Properties/launchSettings.json
new file mode 100644
index 00000000..cce9bdec
--- /dev/null
+++ b/ProductionMgr/Tnb.ProductionMgr/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.ProductionMgr": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50309;http://localhost:50310"
+ }
+ }
+}
\ No newline at end of file
diff --git a/QcMgr/Tnb.QcMgr.Entities/Properties/launchSettings.json b/QcMgr/Tnb.QcMgr.Entities/Properties/launchSettings.json
new file mode 100644
index 00000000..a45ccc61
--- /dev/null
+++ b/QcMgr/Tnb.QcMgr.Entities/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.QcMgr.Entities": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50295;http://localhost:50296"
+ }
+ }
+}
\ No newline at end of file
diff --git a/QcMgr/Tnb.QcMgr.Interfaces/Properties/launchSettings.json b/QcMgr/Tnb.QcMgr.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..5f71dd6e
--- /dev/null
+++ b/QcMgr/Tnb.QcMgr.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.QcMgr.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50297;http://localhost:50298"
+ }
+ }
+}
\ No newline at end of file
diff --git a/QcMgr/Tnb.QcMgr/Properties/launchSettings.json b/QcMgr/Tnb.QcMgr/Properties/launchSettings.json
new file mode 100644
index 00000000..e8f5d84b
--- /dev/null
+++ b/QcMgr/Tnb.QcMgr/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.QcMgr": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50291;http://localhost:50292"
+ }
+ }
+}
\ No newline at end of file
diff --git a/Tnb.Server.sln b/Tnb.Server.sln
index 7d6c0e17..f7d31d69 100644
--- a/Tnb.Server.sln
+++ b/Tnb.Server.sln
@@ -94,6 +94,9 @@ EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "12-ProductionMgr", "12-ProductionMgr", "{ABE58B5E-610B-4159-BFF0-8B04BF700B3C}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "13-WarehouseMgr", "13-WarehouseMgr", "{D90E2789-189A-4F05-B081-27F2FABB2E7E}"
+ ProjectSection(SolutionItems) = preProject
+ WmsSignForDeliveryService.txt = WmsSignForDeliveryService.txt
+ EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "14-QcMgr", "14-QcMgr", "{D65B00D5-F40C-4FF2-8F8D-870772FAAA56}"
EndProject
@@ -131,11 +134,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tnb.ProductionMgr.Entities"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "16-PerMgr", "16-PerMgr", "{74AB6486-1090-4CC9-9D1A-F1245E3ECFC3}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tnb.PerMgr", "PerMgr\Tnb.PerMgr\Tnb.PerMgr.csproj", "{D41946CF-09C6-4CA4-A1F4-42E7E1538BF7}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tnb.PerMgr", "PerMgr\Tnb.PerMgr\Tnb.PerMgr.csproj", "{D41946CF-09C6-4CA4-A1F4-42E7E1538BF7}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tnb.PerMgr.Entities", "PerMgr\Tnb.PerMgr.Entities\Tnb.PerMgr.Entities.csproj", "{42AD083D-D199-4B09-ADD8-89251011C959}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tnb.PerMgr.Entities", "PerMgr\Tnb.PerMgr.Entities\Tnb.PerMgr.Entities.csproj", "{42AD083D-D199-4B09-ADD8-89251011C959}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tnb.PerMgr.Interfaces", "PerMgr\Tnb.PerMgr.Interfaces\Tnb.PerMgr.Interfaces.csproj", "{F3656494-27D3-4BD7-B831-8D909DFBD7B9}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tnb.PerMgr.Interfaces", "PerMgr\Tnb.PerMgr.Interfaces\Tnb.PerMgr.Interfaces.csproj", "{F3656494-27D3-4BD7-B831-8D909DFBD7B9}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Outputs/CarryInfoOutput.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Outputs/CarryInfoOutput.cs
new file mode 100644
index 00000000..279ad345
--- /dev/null
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Outputs/CarryInfoOutput.cs
@@ -0,0 +1,142 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Tnb.WarehouseMgr.Entities.Dto.Outputs
+{
+ ///
+ /// 载具信息输出类
+ ///
+ public class CarryInfoOutput
+ {
+ ///
+ /// 租户ID
+ ///
+ public string? tenant_id { get; set; }
+
+ ///
+ /// 所属组织ID
+ ///
+ public string? org_id { get; set; }
+
+ ///
+ /// 载具编号
+ ///
+ public string carry_code { get; set; } = string.Empty;
+
+ ///
+ /// 载具名称
+ ///
+ public string carry_name { get; set; } = string.Empty;
+
+ ///
+ /// 状态
+ ///
+ public int status { get; set; }
+
+ ///
+ /// 载具状态
+ ///
+ public string carry_status { get; set; }
+
+ ///
+ /// 载具分类ID
+ ///
+ public string carrystd_id { get; set; } = string.Empty;
+
+ ///
+ /// 载具库位ID
+ ///
+ public string? location_id { get; set; }
+
+ ///
+ /// 载具库位编号
+ ///
+ public string? location_code { get; set; }
+
+ ///
+ /// 是否锁定
+ ///
+ public int is_lock { get; set; }
+
+ ///
+ /// 出库类型
+ ///
+ public string out_status { get; set; }
+
+ ///
+ /// 是否检验
+ ///
+ public int is_check { get; set; }
+
+ ///
+ /// 来源单据ID
+ ///
+ public string? source_id { get; set; }
+
+ ///
+ /// 来源单据代码
+ ///
+ public string? source_code { get; set; }
+
+ ///
+ /// 创建用户
+ ///
+ public string create_id { get; set; } = string.Empty;
+
+ ///
+ /// 创建时间
+ ///
+ public DateTime create_time { get; set; } = DateTime.Now;
+
+ ///
+ /// 最后修改人员ID
+ ///
+ public string? modify_id { get; set; }
+
+ ///
+ /// 最后修改时间
+ ///
+ public DateTime? modify_time { get; set; }
+
+ ///
+ /// 扩展字段
+ ///
+ public string? extras { get; set; }
+
+ ///
+ /// 时间戳(用于并发控制)
+ ///
+ public DateTime? timestamp { get; set; }
+
+ ///
+ /// 打包号
+ ///
+ public string? bale_num { get; set; }
+
+ ///
+ /// 齐套搭配方案ID
+ ///
+ public string? collocation_scheme_id { get; set; }
+
+ ///
+ /// 齐套搭配方案编号
+ ///
+ public string? collocation_scheme_code { get; set; }
+ ///
+ /// 载具明细列表
+ ///
+ public List carryDetails { get; set; }=new List();
+ ///
+ /// 载具条码列表
+ ///
+ public List carryCodes { get; set; } = new List();
+ ///
+ /// 载具无聊分拣明细
+ ///
+ public List carryMats { get; set; } = new List();
+
+ }
+}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsSetsortingH.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsSetsortingH.cs
index 1a665b3a..b8001b33 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsSetsortingH.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsSetsortingH.cs
@@ -122,7 +122,7 @@ public partial class WmsSetsortingH : BaseEntity
///
/// 顺序号
///
- public int order { get; set; }
+ public int seq { get; set; }
///
/// 备注
@@ -152,11 +152,21 @@ public partial class WmsSetsortingH : BaseEntity
///
/// 修改用户
///
- public string modify_id { get; set; } = string.Empty;
+ public string? modify_id { get; set; }
///
/// 修改时间
///
- public DateTime modify_time { get; set; } = DateTime.Now;
+ public DateTime? modify_time { get; set; }
+
+ ///
+ /// 流程任务Id
+ ///
+ public string? f_flowtaskid { get; set; }
+
+ ///
+ /// 流程引擎Id
+ ///
+ public string? f_flowid { get; set; }
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsSetsortingH.part.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsSetsortingH.part.cs
new file mode 100644
index 00000000..0d34f784
--- /dev/null
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Entity/WmsSetsortingH.part.cs
@@ -0,0 +1,20 @@
+using JNPF.Common.Contracts;
+using JNPF.Common.Security;
+using SqlSugar;
+
+namespace Tnb.WarehouseMgr.Entities;
+
+///
+/// 齐套分拣主表
+///
+public partial class WmsSetsortingH
+{
+ ///
+ /// 载具ID
+ ///
+ [SugarColumn(IsIgnore = true)]
+ public string? carry_id { get; set; }
+
+ [SugarColumn(IsIgnore = true)]
+ public string? carry_code { get; set; }
+}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Properties/launchSettings.json b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Properties/launchSettings.json
new file mode 100644
index 00000000..190e0f72
--- /dev/null
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.WarehouseMgr.Entities": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50287;http://localhost:50288"
+ }
+ }
+}
\ No newline at end of file
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/Properties/launchSettings.json b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..e52cdd23
--- /dev/null
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.WarehouseMgr.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50293;http://localhost:50294"
+ }
+ }
+}
\ No newline at end of file
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryService.cs
index d7c079df..26f9547e 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryService.cs
@@ -18,6 +18,7 @@ using Tnb.Common.Utils;
using Tnb.WarehouseMgr.Entities;
using Tnb.WarehouseMgr.Entities.Consts;
using Tnb.WarehouseMgr.Entities.Dto;
+using Tnb.WarehouseMgr.Entities.Dto.Outputs;
using Tnb.WarehouseMgr.Entities.Enums;
using Tnb.WarehouseMgr.Interfaces;
@@ -35,11 +36,11 @@ namespace Tnb.WarehouseMgr
private readonly IRunService _runService;
private readonly IVisualDevService _visualDevService;
public WmsCarryService(
- ISqlSugarRepository repository,
- IUserManager userManager,
- IBillRullService billRullService,
+ ISqlSugarRepository repository,
+ IUserManager userManager,
+ IBillRullService billRullService,
IRunService runService,
- IVisualDevService visualDevService )
+ IVisualDevService visualDevService)
{
_db = repository.AsSugarClient();
_userManager = userManager;
@@ -49,6 +50,23 @@ namespace Tnb.WarehouseMgr
OverideFuncs.CreateAsync = ExchangeCarry;
}
+ ///
+ /// 根据载具ID获取载具信息
+ ///
+ ///
+ ///
+ [HttpGet]
+ public async Task GetCarryInfoById([FromRoute] string carryId)
+ {
+ var carryOutPut = await _db.Queryable().Where(it => it.id == carryId).Select().FirstAsync();
+ if (carryOutPut == null) throw new AppFriendlyException("找不到载具", 500);
+ carryOutPut.carryDetails = await _db.Queryable().Where(it=>it.carry_id == carryId).ToListAsync();
+ carryOutPut.carryCodes = await _db.Queryable().Where(it => it.carry_id == carryId).ToListAsync();
+ carryOutPut.carryMats = await _db.Queryable().Where(it => it.carry_id == carryId).ToListAsync();
+ return carryOutPut;
+ }
+
+
///
/// 更换载具
///
@@ -63,7 +81,7 @@ namespace Tnb.WarehouseMgr
///
private async Task ExchangeCarry(VisualDevModelDataCrInput input)
{
-
+
var isOk = false;
try
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs
index 2bb1f90e..a216fa8c 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs
@@ -82,7 +82,8 @@ namespace Tnb.WarehouseMgr
foreach (var os in outStockDList)
{
var carryCodesPart = await _db.Queryable().InnerJoin((a, b) => a.id == b.carry_id)
- .Where((a, b) => b.material_id == os.material_id && b.code_batch == os.code_batch && a.is_lock == 0 && !string.IsNullOrEmpty(a.location_id) && a.status == (int)EnumCarryStatus.占用)
+ .Where((a, b) => b.material_id == os.material_id && a.is_lock == 0 && !string.IsNullOrEmpty(a.location_id) && a.status == (int)EnumCarryStatus.占用)
+ .WhereIF(!string.IsNullOrEmpty(os.code_batch), (a, b) => b.code_batch == os.code_batch)
.Select()
.ToListAsync();
if (carryCodesPart?.Count > 0)
@@ -94,11 +95,10 @@ namespace Tnb.WarehouseMgr
throw new AppFriendlyException($"需要出库[{os.pr_qty}],实际库存{codeQty},数量不足", 500);
}
var partCarryMats = carryCodesPart.Adapt>();
- partCarryMats.ForEach(x =>
+ for (int i = 0; i < partCarryMats.Count; i++)
{
- x.need_qty = (int)os.pr_qty;
- x.real_qty = codeQty;
- });
+ partCarryMats[i].need_qty = carryCodesPart[i].codeqty;
+ }
carryMats.AddRange(partCarryMats);
}
}
@@ -109,12 +109,12 @@ namespace Tnb.WarehouseMgr
.Select(x =>
{
WmsCarryMat? carryMat = x.FirstOrDefault()!;
- carryMat.real_qty = x.Sum(d => d.real_qty);
+ carryMat.need_qty = x.Sum(d => d.need_qty);
return carryMat;
})
.ToList();
await _db.Insertable(carryMats).ExecuteCommandAsync();
- var dic = carryMats.DistinctBy(x => x.carry_id).ToDictionary(x => x.carry_id, x => x.real_qty);
+ var dic = carryMats.DistinctBy(x => x.carry_id).ToDictionary(x => x.carry_id, x => x.need_qty);
var allOutIds = new List();
var sortingOutIds = new List();
foreach (var pair in dic)
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAFeedingService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAFeedingService.cs
index 45fbce7b..f6e22dd9 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAFeedingService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAFeedingService.cs
@@ -87,26 +87,29 @@ namespace Tnb.WarehouseMgr
feedBox.qty = carryMaterial.qty;
feedBox.batch = carryMaterial?.code_batch!;
feedBox.status = carry.status;
- feedBox.create_id = _userManager.UserId;
- feedBox.create_time = DateTime.Now;
+ feedBox.modify_id = _userManager.UserId;
+ feedBox.modify_time = DateTime.Now;
var row = await _db.Updateable(feedBox).ExecuteCommandAsync();
//更新投料记录条码表
- foreach (var carryCode in carryCodes)
+ if (carryCodes != null)
{
- WmsFeedingrecordCode wmsFeedingrecordCode = new();
- wmsFeedingrecordCode.id = SnowflakeIdHelper.NextId();
- wmsFeedingrecordCode.org_id = _userManager.User.OrganizeId;
- wmsFeedingrecordCode.record_id = input.data["ReturnIdentity"]?.ToString()!;
- wmsFeedingrecordCode.material_id = carryCode.material_id;
- wmsFeedingrecordCode.material_code = carryCode.material_code;
- wmsFeedingrecordCode.barcode = carryCode.barcode;
- wmsFeedingrecordCode.code_batch = carryCode.code_batch;
- wmsFeedingrecordCode.codeqty = carryCode.codeqty;
- wmsFeedingrecordCode.unit_id = carryCode.unit_id;
- wmsFeedingrecordCode.unit_code = carryCode.unit_code;
- wmsFeedingrecordCode.create_id = _userManager.UserId;
- wmsFeedingrecordCode.create_time = DateTime.Now;
- row = await _db.Insertable(wmsFeedingrecordCode).ExecuteCommandAsync();
+ foreach (var carryCode in carryCodes)
+ {
+ WmsFeedingrecordCode wmsFeedingrecordCode = new();
+ wmsFeedingrecordCode.id = SnowflakeIdHelper.NextId();
+ wmsFeedingrecordCode.org_id = _userManager.User.OrganizeId;
+ wmsFeedingrecordCode.record_id = input.data["ReturnIdentity"]?.ToString()!;
+ wmsFeedingrecordCode.material_id = carryCode.material_id;
+ wmsFeedingrecordCode.material_code = carryCode.material_code;
+ wmsFeedingrecordCode.barcode = carryCode.barcode;
+ wmsFeedingrecordCode.code_batch = carryCode.code_batch;
+ wmsFeedingrecordCode.codeqty = carryCode.codeqty;
+ wmsFeedingrecordCode.unit_id = carryCode.unit_id;
+ wmsFeedingrecordCode.unit_code = carryCode.unit_code;
+ wmsFeedingrecordCode.create_id = _userManager.UserId;
+ wmsFeedingrecordCode.create_time = DateTime.Now;
+ row = await _db.Insertable(wmsFeedingrecordCode).ExecuteCommandAsync();
+ }
}
//更新载具
row = await UpdateNullCarry(carry);
@@ -117,11 +120,11 @@ namespace Tnb.WarehouseMgr
{
if (carry == null)
{
- throw new AppFriendlyException("没有可用的旧载具", 500);
+ throw new AppFriendlyException("没有可用的载具", 500);
}
if (feedBox == null)
{
- throw new AppFriendlyException("没有可用的新载具", 500);
+ throw new AppFriendlyException("没有可用的投料箱", 500);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsSetSortingService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsSetSortingService.cs
new file mode 100644
index 00000000..bd13a658
--- /dev/null
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsSetSortingService.cs
@@ -0,0 +1,189 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using JNPF.Common.Core.Manager;
+using JNPF.Common.Extension;
+using JNPF.Common.Security;
+using JNPF.FriendlyException;
+using JNPF.Systems.Interfaces.System;
+using Mapster;
+using Microsoft.AspNetCore.Mvc;
+using NPOI.SS.Formula;
+using SqlSugar;
+using Tnb.BasicData.Entities;
+using Tnb.WarehouseMgr.Entities;
+using Tnb.WarehouseMgr.Entities.Consts;
+using Tnb.WarehouseMgr.Entities.Dto;
+using Tnb.WarehouseMgr.Entities.Enums;
+using Tnb.WarehouseMgr.Interfaces;
+
+namespace Tnb.WarehouseMgr
+{
+ ///
+ /// 齐套分拣服务类
+ ///
+ public class WmsSetSortingService : BaseWareHouseService
+ {
+ private readonly ISqlSugarClient _db;
+ private readonly IWareHouseService _wareHouseService;
+ private readonly IBillRullService _billRullService;
+ private readonly IUserManager _userManager;
+
+ public WmsSetSortingService(ISqlSugarRepository repository, IWareHouseService wareHouseService, IUserManager userManager, IBillRullService billRullService)
+ {
+ _db = repository.AsSugarClient();
+ _wareHouseService = wareHouseService;
+ _billRullService = billRullService;
+ _userManager = userManager;
+ }
+
+ ///
+ /// 齐套分拣(新增状态)
+ ///
+ ///
+ [HttpPost]
+ public async Task PackSortingByAdd()
+ {
+ var setSortings = await _db.Queryable()
+ .Where(a => a.status == WmsWareHouseConst.BILLSTATUS_ADD_ID).OrderBy(a => a.seq)
+ .ToListAsync();
+ var items = await _db.Queryable().Where(it => it.status == WmsWareHouseConst.BILLSTATUS_ON_ID).ToListAsync();
+ var onFlag = items?.Count > 0;
+ if (setSortings?.Count > 0 && !onFlag)
+ {
+ var singleSorting = setSortings[^setSortings.Count];
+ var setSortingDList = await _db.Queryable().Where(it => it.bill_id == singleSorting.id).ToListAsync();
+ if (setSortingDList?.Count > 0)
+ {
+ List carryMats = new();
+ List carryCodes = new();
+ List carryIds = new();
+ foreach (var os in setSortingDList)
+ {
+ var carryCodesPart = await _db.Queryable().InnerJoin((a, b) => a.id == b.carry_id)
+ .Where((a, b) => b.material_id == os.material_id && a.is_lock == 0 && !string.IsNullOrEmpty(a.location_id) && a.status == (int)EnumCarryStatus.占用)
+ .WhereIF(!string.IsNullOrEmpty(os.code_batch), (a, b) => b.code_batch == os.code_batch)
+ .Select()
+ .ToListAsync();
+ if (carryCodesPart?.Count > 0)
+ {
+ carryCodes.AddRange(carryCodesPart);
+ var codeQty = carryCodes.Sum(x => x.codeqty);
+ if (codeQty < os.pr_qty)
+ {
+ throw new AppFriendlyException($"需要出库[{os.pr_qty}],实际库存{codeQty},数量不足", 500);
+ }
+ var partCarryMats = carryCodesPart.Adapt>();
+ for (int i = 0; i < partCarryMats.Count; i++)
+ {
+ partCarryMats[i].need_qty = carryCodesPart[i].codeqty;
+ }
+
+ carryMats.AddRange(partCarryMats);
+ }
+ }
+ if (carryMats.Count > 0)
+ {
+ carryMats.ForEach(x => x.id = SnowflakeIdHelper.NextId());
+ carryMats = carryMats.OrderBy(o => o.create_time).GroupBy(g => new { g.carry_id, g.material_id, g.code_batch })
+ .Select(x =>
+ {
+ WmsCarryMat? carryMat = x.FirstOrDefault()!;
+ carryMat.need_qty = x.Sum(d => d.need_qty);
+ return carryMat;
+ })
+ .ToList();
+ await _db.Insertable(carryMats).ExecuteCommandAsync();
+ var dic = carryMats.DistinctBy(x => x.carry_id).ToDictionary(x => x.carry_id, x => x.need_qty);
+
+ carryIds = carryMats.Select(x => x.carry_id).Distinct().ToList();
+ await _db.Updateable().SetColumns(it => new WmsCarryH { out_status = ((int)EnumOutStatus.全部出).ToString() }).Where(it => carryIds.Contains(it.id)).ExecuteCommandAsync();
+ //天益项目不需要
+ //await _db.Updateable().SetColumns(it => new WmsCarryH { out_status = ((int)EnumOutStatus.分拣出).ToString() }).Where(it => sortingOutIds.Contains(it.id)).ExecuteCommandAsync();
+ }
+ var carrys = await _db.Queryable().Where(it => carryIds.Contains(it.id)).ToArrayAsync();
+ if (carrys?.Length > 0)
+ {
+ List preTasks = new();
+ List locIds = new();
+ string firstLocationId = "27010980724501", secondLocationId = "27010987857941";
+ if (carrys.Length > 6)
+ {
+ var leftCarrys = carrys[..6];
+ var rightCarrys = carrys[6..];
+ await _genPreTask(leftCarrys, locIds, firstLocationId, singleSorting.id, singleSorting.bill_code, preTasks);
+ await _genPreTask(rightCarrys, locIds, secondLocationId, singleSorting.id, singleSorting.bill_code, preTasks);
+ }
+ else
+ {
+ await _genPreTask(carrys, locIds, firstLocationId, singleSorting.id, singleSorting.bill_code, preTasks);
+ }
+ var isOk = await _wareHouseService.GenPreTask(preTasks, null);
+ GenPreTaskUpInput genPreTaskAfterUpInput = new();
+ genPreTaskAfterUpInput.CarryIds = preTasks.Select(x => x.carry_id).ToList();
+ genPreTaskAfterUpInput.LocationIds = new HashSet(locIds).ToList();
+ await _wareHouseService.GenInStockTaskHandleAfter(genPreTaskAfterUpInput, it => new WmsCarryH { is_lock = 1 }, it => new BasLocation { is_lock = 1 });
+ }
+
+ }
+ }
+ }
+
+ private async Task _genPreTask(WmsCarryH[] carrys, List locIds, string eLocationId, string requireId, string requireCode, List preTasks)
+ {
+ var loc = await _db.Queryable().SingleAsync(it => it.id == eLocationId);
+ foreach (var carry in carrys)
+ {
+ WmsPointH sPoint = await _db.Queryable().FirstAsync(it => it.location_id == carry.location_id);
+ WmsPointH ePoint = await _db.Queryable().FirstAsync(it => it.location_id == eLocationId);
+
+ if (sPoint != null && ePoint != null)
+ {
+ var points = await _wareHouseService.PathAlgorithms(sPoint.id, ePoint.id);
+ locIds.AddRange(points.Select(x => x.location_id).ToList()!);
+ //根据获取的路径点生成预任务,生成顺序必须预路径算法返回的起终点的顺序一致(预任务顺序)
+ if (points?.Count > 0)
+ {
+ if (points.Count <= 2) throw new AppFriendlyException("该路径不存在", 500);
+ var curPreTasks = points.Where(it => !it.location_id.IsNullOrEmpty()).GroupBy(g => g.area_code).Select(it =>
+ {
+ var sPoint = it.FirstOrDefault();
+ var ePoint = it.LastOrDefault();
+
+ WmsPretaskH preTask = new();
+ preTask.org_id = _userManager.User.OrganizeId;
+ preTask.startlocation_id = sPoint?.location_id!;
+ preTask.startlocation_code = sPoint?.location_code!;
+ preTask.endlocation_id = ePoint?.location_id!;
+ preTask.endlocation_code = ePoint?.location_code!;
+ preTask.start_floor = sPoint?.floor.ToString();
+ preTask.end_floor = ePoint?.floor.ToString();
+ preTask.bill_code = _billRullService.GetBillNumber(WmsWareHouseConst.WMS_PRETASK_H_ENCODE).GetAwaiter().GetResult();
+ preTask.status = WmsWareHouseConst.PRETASK_BILL_STATUS_DXF_ID;
+ preTask.biz_type = WmsWareHouseConst.BIZTYPE_WMSOUTSTOCK_ID;
+ preTask.task_type = WmsWareHouseConst.WMS_PRETASK_OUTSTOCK_TYPE_ID;
+ preTask.carry_id = carry.id;
+ preTask.carry_code = carry.carry_code;
+ preTask.area_id = sPoint?.area_id!;
+ preTask.area_code = it.Key;
+ preTask.require_id = requireId;
+ preTask.require_code = requireCode;
+ preTask.create_id = _userManager.UserId;
+ preTask.create_time = DateTime.Now;
+ return preTask;
+ }).ToList();
+ if (loc.is_sign == 0)
+ {
+ curPreTasks[^1].is_sign = 0; // 修改最后一个元素的是否签收值
+ }
+ preTasks.AddRange(curPreTasks);
+
+ }
+ }
+ }
+ }
+
+ }
+}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs
new file mode 100644
index 00000000..e9c2809f
--- /dev/null
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using JNPF.Common.Enums;
+using JNPF.FriendlyException;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.CodeAnalysis.Operations;
+using SqlSugar;
+using Tnb.WarehouseMgr.Entities;
+using Tnb.WarehouseMgr.Entities.Consts;
+
+namespace Tnb.WarehouseMgr
+{
+ ///
+ /// 出库签收
+ ///
+ public class WmsSignForDeliveryService : BaseWareHouseService
+ {
+ private readonly ISqlSugarClient _db;
+
+ public WmsSignForDeliveryService(ISqlSugarRepository repository)
+ {
+ _db = repository.AsSugarClient();
+ }
+ ///
+ /// 根据载具ID获取,对应的执行任务记录
+ ///
+ ///
+ ///
+ [HttpGet]
+ public async Task GetDisTasksByCarryId([FromRoute] string carryId)
+ {
+ var item = await _db.Queryable().FirstAsync(it => it.carry_id == carryId && it.status == WmsWareHouseConst.TASK_BILL_STATUS_COMPLE_ID && it.is_sign == 0);
+ return item;
+ }
+ [HttpPost]
+ public async Task SaveData()
+ {
+
+ }
+ }
+}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmskittingOutService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmskittingOutService.cs
index d7ad3862..439a7bad 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmskittingOutService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmskittingOutService.cs
@@ -79,7 +79,7 @@ namespace Tnb.WarehouseMgr
var setSortingH = ko.Adapt();
setSortingH.id = SnowflakeIdHelper.NextId();
setSortingH.kittingout_id = ko.id;
- setSortingH.order = ko.seq;
+ setSortingH.seq = ko.seq;
setSortingH.org_id = _userManager.User.OrganizeId;
setSortingH.create_id = _userManager.UserId;
setSortingH.create_time = DateTime.Now;
@@ -131,9 +131,9 @@ namespace Tnb.WarehouseMgr
var locs = await _db.Queryable().Where(it => it.id == koGrp.Key && it.is_use == "0" && it.is_lock == 0).ToListAsync();
if (locs?.Count > 0)
{
+
var arr = koGrp.ToArray();
- Index start = ^arr.Length;
- var ko = arr[start];
+ var ko = arr[^arr.Length];
var carry = await _db.Queryable().SingleAsync(it => it.id == ko.carry_id);
if (carry != null)
{
diff --git a/WmsSignForDeliveryService.txt b/WmsSignForDeliveryService.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/app/Tnb.Apps.Interfaces/Properties/launchSettings.json b/app/Tnb.Apps.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..c8996f68
--- /dev/null
+++ b/app/Tnb.Apps.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Apps.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50247;http://localhost:50263"
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/Tnb.Apps/Properties/launchSettings.json b/app/Tnb.Apps/Properties/launchSettings.json
new file mode 100644
index 00000000..a07fb231
--- /dev/null
+++ b/app/Tnb.Apps/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Apps": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50240;http://localhost:50264"
+ }
+ }
+}
\ No newline at end of file
diff --git a/common/Tnb.CollectiveOAuth/Properties/launchSettings.json b/common/Tnb.CollectiveOAuth/Properties/launchSettings.json
new file mode 100644
index 00000000..67b55152
--- /dev/null
+++ b/common/Tnb.CollectiveOAuth/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.CollectiveOAuth": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50269;http://localhost:50270"
+ }
+ }
+}
\ No newline at end of file
diff --git a/common/Tnb.Common.Core/Properties/launchSettings.json b/common/Tnb.Common.Core/Properties/launchSettings.json
new file mode 100644
index 00000000..8467993c
--- /dev/null
+++ b/common/Tnb.Common.Core/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Common.Core": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50271;http://localhost:50273"
+ }
+ }
+}
\ No newline at end of file
diff --git a/common/Tnb.Common/Properties/launchSettings.json b/common/Tnb.Common/Properties/launchSettings.json
new file mode 100644
index 00000000..38603b70
--- /dev/null
+++ b/common/Tnb.Common/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Common": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50246;http://localhost:50267"
+ }
+ }
+}
\ No newline at end of file
diff --git a/common/Tnb.SqlSugar/Properties/launchSettings.json b/common/Tnb.SqlSugar/Properties/launchSettings.json
new file mode 100644
index 00000000..ce32dbb9
--- /dev/null
+++ b/common/Tnb.SqlSugar/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.SqlSugar": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50289;http://localhost:50290"
+ }
+ }
+}
\ No newline at end of file
diff --git a/common/Tnb.Thirdparty/Properties/launchSettings.json b/common/Tnb.Thirdparty/Properties/launchSettings.json
new file mode 100644
index 00000000..b2a75244
--- /dev/null
+++ b/common/Tnb.Thirdparty/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Thirdparty": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50276;http://localhost:50277"
+ }
+ }
+}
\ No newline at end of file
diff --git a/common/Tnb.WebSockets/Properties/launchSettings.json b/common/Tnb.WebSockets/Properties/launchSettings.json
new file mode 100644
index 00000000..c89e7e57
--- /dev/null
+++ b/common/Tnb.WebSockets/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.WebSockets": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50272;http://localhost:50274"
+ }
+ }
+}
\ No newline at end of file
diff --git a/extend/Tnb.Extend.Entitys/Properties/launchSettings.json b/extend/Tnb.Extend.Entitys/Properties/launchSettings.json
new file mode 100644
index 00000000..dca0860f
--- /dev/null
+++ b/extend/Tnb.Extend.Entitys/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Extend.Entitys": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50285;http://localhost:50286"
+ }
+ }
+}
\ No newline at end of file
diff --git a/extend/Tnb.Extend.Interfaces/Properties/launchSettings.json b/extend/Tnb.Extend.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..77266e9a
--- /dev/null
+++ b/extend/Tnb.Extend.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Extend.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50283;http://localhost:50284"
+ }
+ }
+}
\ No newline at end of file
diff --git a/message/Tnb.Message.Entitys/Properties/launchSettings.json b/message/Tnb.Message.Entitys/Properties/launchSettings.json
new file mode 100644
index 00000000..31331cbf
--- /dev/null
+++ b/message/Tnb.Message.Entitys/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Message.Entitys": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50244;http://localhost:50268"
+ }
+ }
+}
\ No newline at end of file
diff --git a/message/Tnb.Message.Interfaces/Properties/launchSettings.json b/message/Tnb.Message.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..6f24c200
--- /dev/null
+++ b/message/Tnb.Message.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Message.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50239;http://localhost:50259"
+ }
+ }
+}
\ No newline at end of file
diff --git a/message/Tnb.Message/Properties/launchSettings.json b/message/Tnb.Message/Properties/launchSettings.json
new file mode 100644
index 00000000..3aff95b9
--- /dev/null
+++ b/message/Tnb.Message/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Message": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50241;http://localhost:50262"
+ }
+ }
+}
\ No newline at end of file
diff --git a/system/Tnb.OAuth/Properties/launchSettings.json b/system/Tnb.OAuth/Properties/launchSettings.json
new file mode 100644
index 00000000..c7a7206a
--- /dev/null
+++ b/system/Tnb.OAuth/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.OAuth": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50278;http://localhost:50279"
+ }
+ }
+}
\ No newline at end of file
diff --git a/system/Tnb.Systems.Entitys/Properties/launchSettings.json b/system/Tnb.Systems.Entitys/Properties/launchSettings.json
new file mode 100644
index 00000000..c69f89f2
--- /dev/null
+++ b/system/Tnb.Systems.Entitys/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.Systems.Entitys": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50280;http://localhost:50281"
+ }
+ }
+}
\ No newline at end of file
diff --git a/taskschedule/Tnb.TaskScheduler.Entitys/Properties/launchSettings.json b/taskschedule/Tnb.TaskScheduler.Entitys/Properties/launchSettings.json
new file mode 100644
index 00000000..842c1c8a
--- /dev/null
+++ b/taskschedule/Tnb.TaskScheduler.Entitys/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.TaskScheduler.Entitys": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50245;http://localhost:50257"
+ }
+ }
+}
\ No newline at end of file
diff --git a/taskschedule/Tnb.TaskScheduler.Interfaces/Properties/launchSettings.json b/taskschedule/Tnb.TaskScheduler.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..4d593874
--- /dev/null
+++ b/taskschedule/Tnb.TaskScheduler.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.TaskScheduler.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50251;http://localhost:50258"
+ }
+ }
+}
\ No newline at end of file
diff --git a/taskschedule/Tnb.TaskScheduler/Properties/launchSettings.json b/taskschedule/Tnb.TaskScheduler/Properties/launchSettings.json
new file mode 100644
index 00000000..523f2c0b
--- /dev/null
+++ b/taskschedule/Tnb.TaskScheduler/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.TaskScheduler": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50250;http://localhost:50255"
+ }
+ }
+}
\ No newline at end of file
diff --git a/visualdev/Tnb.VisualDev.Engine/Properties/launchSettings.json b/visualdev/Tnb.VisualDev.Engine/Properties/launchSettings.json
new file mode 100644
index 00000000..6bf841cb
--- /dev/null
+++ b/visualdev/Tnb.VisualDev.Engine/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.VisualDev.Engine": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50248;http://localhost:50254"
+ }
+ }
+}
\ No newline at end of file
diff --git a/visualdev/Tnb.VisualDev.Entitys/Properties/launchSettings.json b/visualdev/Tnb.VisualDev.Entitys/Properties/launchSettings.json
new file mode 100644
index 00000000..6b871025
--- /dev/null
+++ b/visualdev/Tnb.VisualDev.Entitys/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.VisualDev.Entitys": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50243;http://localhost:50260"
+ }
+ }
+}
\ No newline at end of file
diff --git a/visualdev/Tnb.VisualDev.Interfaces/Properties/launchSettings.json b/visualdev/Tnb.VisualDev.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..a65fcf0f
--- /dev/null
+++ b/visualdev/Tnb.VisualDev.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.VisualDev.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50252;http://localhost:50256"
+ }
+ }
+}
\ No newline at end of file
diff --git a/visualdev/Tnb.VisualDev/Properties/launchSettings.json b/visualdev/Tnb.VisualDev/Properties/launchSettings.json
new file mode 100644
index 00000000..698c0500
--- /dev/null
+++ b/visualdev/Tnb.VisualDev/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.VisualDev": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50242;http://localhost:50266"
+ }
+ }
+}
\ No newline at end of file
diff --git a/workflow/Tnb.WorkFlow.Entitys/Properties/launchSettings.json b/workflow/Tnb.WorkFlow.Entitys/Properties/launchSettings.json
new file mode 100644
index 00000000..46607c9d
--- /dev/null
+++ b/workflow/Tnb.WorkFlow.Entitys/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.WorkFlow.Entitys": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50253;http://localhost:50261"
+ }
+ }
+}
\ No newline at end of file
diff --git a/workflow/Tnb.WorkFlow.Interfaces/Properties/launchSettings.json b/workflow/Tnb.WorkFlow.Interfaces/Properties/launchSettings.json
new file mode 100644
index 00000000..0d35553b
--- /dev/null
+++ b/workflow/Tnb.WorkFlow.Interfaces/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "profiles": {
+ "Tnb.WorkFlow.Interfaces": {
+ "commandName": "Project",
+ "launchBrowser": true,
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ },
+ "applicationUrl": "https://localhost:50249;http://localhost:50265"
+ }
+ }
+}
\ No newline at end of file