´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/0397a60b-c71f-4284-85ef-52044ecfbb47.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/182750cd-850d-4516-a67b-7253ac4fb232.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/43baaa76-d5f1-4df1-9f57-25cfd3fe3186.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/55c55350-83b6-4489-98a3-f1f310d14b68.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/63f25530-00aa-456a-969e-f1c0f63b3c3e.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/671f6735-50dc-4160-a801-1403c5554dc0.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/6ddb89a1-3fb5-42aa-a799-c08181483993.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/beef5092-aeef-4199-ba40-4b3d6192ea2d.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/cc3915a8-59aa-4f44-9ac1-1573b19314bd.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/d02ec307-551b-4de2-b989-3f41b8cc227f.vsidxBinary files differ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/WIDESEAWCS_BasicInfoService.csproj
@@ -7,7 +7,7 @@ </PropertyGroup> <ItemGroup> <PackageReference Include="WIDESEAWCS_QuartzJob" Version="1.0.0" /> <PackageReference Include="WIDESEAWCS_QuartzJob" Version="3.0.1" /> </ItemGroup> <ItemGroup> ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskTypeEnum.cs
@@ -52,6 +52,12 @@ InQuality = 540, /// <summary> /// çäº§éæ /// </summary> [Description("ç产éæ")] ProductionReturn = 550, /// <summary> /// å··éå ç§»åº /// </summary> [Description("å··éå ç§»åº")] ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/WareHouseEnum/WarehouseEnum.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,76 @@ using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WIDESEAWCS_Common.WareHouseEnum { /// <summary> /// ä»åº /// HA57 = æ·®å®äºå - æ¿æä»<br/> /// HA58 = æ·®å®äºå - PPä»<br/> /// HA60 = æ·®å®äºå - è¾ æä»<br/> /// HA64 = æ·®å®äºå - æµè¯æ¶ä»<br/> /// HA71 = æ·®å®äºå - æåä»<br/> /// HA72 = æ·®å®äºå - å°¾æ°ä»<br/> /// HA73 = æ·®å®äºå - ç åä»<br/> /// HA101 = æ·®å®äºå - æåä»å¹³åº<br/> /// HA152 = æ·®å®äºå - å¹²èä»<br/> /// HA153 = æ·®å®äºå - 油墨ä»<br/> /// </summary> public enum WarehouseEnum { /// <summary> /// æ¿æä» /// </summary> [Description("æ¿æä»")] HA57, /// <summary> /// PPä» /// </summary> [Description("PPä»")] HA58, /// <summary> /// è¾ æä» /// </summary> [Description("è¾ æä»")] HA60, /// <summary> /// æµè¯æ¶ä» /// </summary> [Description("æµè¯æ¶ä»")] HA64, /// <summary> /// æåä» /// </summary> [Description("æåä»")] HA71, /// <summary> /// å°¾æ°ä» /// </summary> [Description("å°¾æ°ä»")] HA72, /// <summary> /// ç åä» /// </summary> [Description("ç åä»")] HA73, /// <summary> /// æåä»å¹³åº /// </summary> [Description("æåä»å¹³åº")] HA101, /// <summary> /// å¹²èä» /// </summary> [Description("å¹²èä»")] HA152, /// <summary> /// æ²¹å¢¨ä» /// </summary> [Description("油墨ä»")] HA153 } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/TaskInfo/WMSTaskDTO.cs
@@ -52,5 +52,9 @@ /// ä¼å 级 /// </summary> public int Grade { get; set; } public int WarehouseId { get; set; } public string AGVArea { get; set; } } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/WIDESEAWCS_DTO.csproj
@@ -10,4 +10,8 @@ <ProjectReference Include="..\WIDESEAWCS_Model\WIDESEAWCS_Model.csproj" /> </ItemGroup> <ItemGroup> <Folder Include="BasicInfo\" /> </ItemGroup> </Project> ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_Warehouse.cs
ÎļþÃû´Ó ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/BasicInfo/WarehouseDTO.cs ÐÞ¸Ä @@ -4,15 +4,20 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEAWCS_Core.DB.Models; namespace WIDESEAWCS_DTO.BasicInfo namespace WIDESEAWCS_Model.Models { public class WarehouseDTO /// <summary> /// ä»åºä¿¡æ¯ /// </summary> [SugarTable(nameof(Dt_Warehouse), "ä»åºä¿¡æ¯")] public class Dt_Warehouse : BaseEntity { /// <summary> /// ä¸»é® /// </summary> [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "主é®")] [SugarColumn(IsPrimaryKey = true, ColumnDescription = "主é®")] public int WarehouseId { get; set; } /// <summary> ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_WarehouseDevice.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,62 @@ using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEAWCS_Core.DB.Models; namespace WIDESEAWCS_Model.Models { [SugarTable(nameof(Dt_WarehouseDevice))] public class Dt_WarehouseDevice : BaseEntity { /// <summary> /// ä¸»é® /// </summary> [SugarColumn(IsIdentity = true, IsPrimaryKey = true)] public int Id { get; set; } /// <summary> /// 设å¤ä¸»é® /// </summary> [SugarColumn(IsNullable = false, ColumnDescription = "")] public int DeviceId { get; set; } /// <summary> /// 设å¤ç¼å· /// </summary> [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "")] public string DeviceCode { get; set; } /// <summary> /// 设å¤åç§° /// </summary> [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "")] public string DeviceName { get; set; } /// <summary> /// ä»åºä¸»é® /// </summary> [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "")] public int WarehouseId { get; set; } /// <summary> /// ä»åºç¼å· /// </summary> [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "")] public string WarehouseCode { get; set; } /// <summary> /// ä»åºåç§° /// </summary> [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "")] public string WarehouseName { get; set; } /// <summary> /// 夿³¨ /// </summary> [SugarColumn(IsNullable = true, ColumnDescription = "")] public string Remark { get; set; } } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/HostedService/WarehouseHostedService.cs
@@ -1,12 +1,24 @@  using SqlSugar; using WIDESEAWCS_Core.Helper; using WIDESEAWCS_Core.Seed; using WIDESEAWCS_DTO.BasicInfo; using WIDESEAWCS_Model.Models; using ICacheService = WIDESEAWCS_Core.Caches.ICacheService; namespace WIDESEAWCS_Server.HostedService { public class WarehouseHostedService : IHostedService { private readonly ICacheService _cacheService; private readonly DBContext _dbContext; public WarehouseHostedService(ICacheService cacheService, DBContext dbContext) { _cacheService = cacheService; _dbContext = dbContext; } public Task StartAsync(CancellationToken cancellationToken) { string connStr = AppSettings.GetValue("WMSConnectionStrings"); @@ -14,14 +26,18 @@ { throw new Exception("WMSè¿æ¥å符串é误"); } SqlSugarClient sugarClient = new SqlSugarClient(new ConnectionConfig() SqlSugarClient sugarClient = new(new ConnectionConfig() { ConnectionString = connStr, IsAutoCloseConnection = true, DbType = DbType.SqlServer }); List<WarehouseDTO> warehouses = sugarClient.Queryable<WarehouseDTO>().ToList(); List<Dt_Warehouse> warehouses = sugarClient.Queryable<Dt_Warehouse>().ToList(); _dbContext.Db.Deleteable<Dt_Warehouse>().ExecuteCommand(); _dbContext.Db.Insertable(warehouses).ExecuteCommand(); return Task.CompletedTask; } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Program.cs
@@ -21,6 +21,7 @@ using Autofac.Core; using WIDESEAWCS_QuartzJob.QuartzExtensions; using Microsoft.AspNetCore.Builder; using WIDESEAWCS_Server.HostedService; var builder = WebApplication.CreateBuilder(args); @@ -46,8 +47,9 @@ builder.Services.AddInitializationHostServiceSetup();//åºç¨åå§åæå¡æ³¨å ¥ builder.Services.AddDbSetup();//Db å¯å¨æå¡ builder.Services.AddScoped<QuartzJobCreateDataTabel>(); builder.Services.AddHostedService<QuartzJobDataTableHostedService>(); //builder.Services.AddScoped<QuartzJobCreateDataTabel>(); builder.Services.AddHostedService<WarehouseHostedService>(); //builder.Services.AddHostedService<QuartzJobDataTableHostedService>(); builder.Services.AddAutoMapperSetup(); @@ -61,7 +63,7 @@ builder.Services.AddHttpContextSetup(); builder.Services.AddHostedService<QuartzJobHostedService>(); //builder.Services.AddHostedService<QuartzJobHostedService>(); builder.Services.AddMvc(options => { ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -32,23 +32,28 @@ using WIDESEAWCS_Core.BaseServices; using WIDESEAWCS_Core.Enums; using WIDESEAWCS_Core.Helper; using WIDESEAWCS_DTO.BasicInfo; using WIDESEAWCS_DTO.TaskInfo; using WIDESEAWCS_IBasicInfoRepository; using WIDESEAWCS_ITaskInfoRepository; using WIDESEAWCS_ITaskInfoService; using WIDESEAWCS_Model.Models; using WIDESEAWCS_QuartzJob.Models; using WIDESEAWCS_QuartzJob.Repository; using WIDESEAWCS_QuartzJob.Service; using ICacheService = WIDESEAWCS_Core.Caches.ICacheService; namespace WIDESEAWCS_TaskInfoService { public partial class TaskService : ServiceBase<Dt_Task, ITaskRepository>, ITaskService { private readonly IMapper _mapper; private readonly ICacheService _cacheService; private readonly IRouterService _routerService; private readonly ITaskExecuteDetailService _taskExecuteDetailService; private readonly ITaskExecuteDetailRepository _taskExecuteDetailRepository; private readonly IMapper _mapper; private readonly IStationMangerRepository _stationMangerRepository; private readonly IRouterRepository _routerRepository; private Dictionary<string, OrderByType> _taskOrderBy = new() { @@ -56,20 +61,33 @@ {nameof(Dt_Task.CreateDate),OrderByType.Asc}, }; private List<Dt_Warehouse>? Warehouses = new List<Dt_Warehouse>(); public Dictionary<string, OrderByType> TaskOrderBy { get { return _taskOrderBy; } set { _taskOrderBy = value; } } public List<int> TaskInboundTypes => typeof(TaskTypeEnum).GetEnumIndexList().Where(x => x >= 100 && x < 500).ToList(); public List<int> TaskOutboundTypes => typeof(TaskTypeEnum).GetEnumIndexList().Where(x => x >= 500 && x < 900).ToList(); public TaskService(ITaskRepository BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, IStationMangerRepository stationMangerRepository) : base(BaseDal) public TaskService(ITaskRepository BaseDal, IMapper mapper, ICacheService cacheService, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository) : base(BaseDal) { _mapper = mapper; _cacheService = cacheService; _routerService = routerService; _taskExecuteDetailService = taskExecuteDetailService; _taskExecuteDetailRepository = taskExecuteDetailRepository; _mapper = mapper; _stationMangerRepository = stationMangerRepository; _routerRepository = routerRepository; string? cacheStr = _cacheService.Get(nameof(Dt_Warehouse)); if (!string.IsNullOrEmpty(cacheStr)) { Warehouses = JsonConvert.DeserializeObject<List<Dt_Warehouse>>(cacheStr); } } /// <summary> /// æ¥æ¶WMSä»»å¡ä¿¡æ¯ @@ -81,10 +99,11 @@ WebResponseContent content = new WebResponseContent(); try { List<Dt_WarehouseDevice> warehouseDevices = Db.Queryable<Dt_WarehouseDevice>().ToList(); List<Dt_Task> tasks = new List<Dt_Task>(); foreach (var item in taskDTOs) { if (BaseDal.QueryFirst(x => x.TaskNum == item.TaskNum || x.PalletCode == item.PalletCode) != null) { continue; @@ -95,6 +114,23 @@ task.CurrentAddress = item.SourceAddress; task.NextAddress = item.TargetAddress; List<Dt_WarehouseDevice> wades = warehouseDevices.Where(x => x.WarehouseId == item.WarehouseId).ToList(); if (string.IsNullOrEmpty(item.AGVArea)) { Dt_StationManger stationManger = _stationMangerRepository.QueryFirst(x => x.StationCode == item.SourceAddress || x.StackerCraneCode == item.RoadWay); //stationManger.AGVStationCode //stationManger.StackerCraneCode //stationManger.StationDeviceCode List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && (stationManger.StationDeviceCode == x.StartPosi || stationManger.StackerCraneCode == x.StartPosi)); } else { List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && item.AGVArea == x.StartPosi); } tasks.Add(task); } BaseDal.AddData(tasks); ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/PP²Ö/StackerCraneJob_PP.cs
@@ -19,7 +19,7 @@ using WIDESEAWCS_QuartzJob.StackerCrane.Enum; using WIDESEAWCS_Tasks.HoisterJob; using WIDESEAWCS_Tasks.StackerCraneJob; using WIDESEAWCS_Tasks.é»çä»; using WIDESEAWCS_Tasks; namespace WIDESEAWCS_Tasks { ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/WIDESEAWCS_Tasks.csproj
@@ -7,7 +7,7 @@ </PropertyGroup> <ItemGroup> <PackageReference Include="WIDESEAWCS_QuartzJob" Version="3.0.0" /> <PackageReference Include="WIDESEAWCS_QuartzJob" Version="3.0.1" /> </ItemGroup> <ItemGroup> ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/°å²Ä²Ö/StackerCraneJob_BC.cs
@@ -19,7 +19,7 @@ using WIDESEAWCS_QuartzJob.StackerCrane.Enum; using WIDESEAWCS_Tasks.HoisterJob; using WIDESEAWCS_Tasks.StackerCraneJob; using WIDESEAWCS_Tasks.é»çä»; using WIDESEAWCS_Tasks; namespace WIDESEAWCS_Tasks { ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/×躸²Ö/StackerCraneJob_ZH.cs
@@ -19,7 +19,7 @@ using WIDESEAWCS_QuartzJob.StackerCrane.Enum; using WIDESEAWCS_Tasks.HoisterJob; using WIDESEAWCS_Tasks.StackerCraneJob; using WIDESEAWCS_Tasks.é»çä»; using WIDESEAWCS_Tasks; namespace WIDESEAWCS_Tasks { ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/6fda0a96-bb99-45b9-93e3-b00b1e75fd10.vsidxBinary files differ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/SeedDataHostedService.cs
@@ -14,8 +14,8 @@ namespace WIDESEA_Core { public sealed class SeedDataHostedService : IHostedService { private readonly DBContext _dbContext; { private readonly DBContext _dbContext; private readonly ILogger<SeedDataHostedService> _logger; private readonly string _webRootPath; ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Task/WMSTaskDTO.cs
@@ -53,5 +53,9 @@ /// </summary> public int Grade { get; set; } public int WarehouseId { get; set; } public string AGVArea { get; set; } } } ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs
@@ -43,7 +43,7 @@ builder.Services.AddWebSocketSetup(); builder.Services.AddSqlsugarSetup();//SqlSugar å¯å¨æå¡ builder.Services.AddDbSetup();//Db å¯å¨æå¡ //builder.Services.AddInitializationHostServiceSetup();//åºç¨åå§åæå¡æ³¨å ¥ builder.Services.AddInitializationHostServiceSetup();//åºç¨åå§åæå¡æ³¨å ¥ builder.Services.AddHostedService<PermissionDataHostService>();//åºç¨åå§åæå¡æ³¨å ¥ builder.Services.AddAutoMapperSetup();