From 6e8866830ef12fc7ae99d8f160cbb37c0f08c3bd Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期六, 11 一月 2025 11:38:24 +0800 Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs | 6 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/WarehouseService.cs | 10 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs | 14 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs | 2 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs | 27 代码管理/WMS/WIDESEA_WMSClient/src/views/system/Sys_User.vue | 8 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs | 37 + 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs | 2 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/WarehouseService.cs | 25 + 代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fd74bb5f-bac3-4a5b-970e-230b01eb2be9.vsidx | 0 代码管理/WMS/WIDESEA_WMSClient/src/extension/basic/palletCodeInfo.js | 12 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs | 14 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Completed.cs | 37 ++ 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_ISystemService/ISys_RoleService.cs | 2 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Properties/PublishProfiles/FolderProfile1.pubxml | 17 + 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs | 14 代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b0001941-8c45-456e-a7be-53676400c6a8.vsidx | 0 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/IUser.cs | 8 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IRecordService/IStockQuantityChangeRecordService.cs | 2 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/板材仓/StackerCraneJob_BC.cs | 17 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json | 2 代码管理/WMS/WIDESEA_WMSClient/src/api/http.js | 2 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs | 17 + 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/板材仓/RGVJob_BC.cs | 2 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IPalletCodeInfoService.cs | 16 + 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Task/WCSTaskDTO.cs | 92 ++++++ 代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fe16cacc-0308-47f8-a849-c42e92c6fea9.vsidx | 0 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/WarehouseController.cs | 11 代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d5a3168f-61c4-46c2-a7e5-00e778c348c5.vsidx | 0 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs | 2 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs | 2 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_RecordService/Service/StockQuantityChangeRecordService.cs | 16 代码管理/WMS/WIDESEA_WMSClient/src/views/Index.vue | 8 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_DTO/System/DictionaryDTO.cs | 29 + 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IWarehouseService.cs | 6 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs | 73 ++++ 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/PalletCodeInfoController.cs | 21 + 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 3 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs | 2 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/干膜仓/ConveyorLineJob_GM.cs | 13 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/PermissionDataHostService.cs | 45 +++ 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json | 7 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs | 18 /dev/null | 0 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/板材仓/ConveyorLineJob_BC.cs | 16 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs | 5 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_UserService.cs | 47 +++ 代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3ba3019c-440c-48eb-82b3-06cc25ec7301.vsidx | 0 代码管理/WMS/WIDESEA_WMSClient/src/extension/basic/extend/palletCodeAdd.vue | 169 +++++++++++ 49 files changed, 766 insertions(+), 112 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/9e5bb932-a2ae-42b5-8ed0-09de9b346dc6.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/9e5bb932-a2ae-42b5-8ed0-09de9b346dc6.vsidx" deleted file mode 100644 index 859b039..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/9e5bb932-a2ae-42b5-8ed0-09de9b346dc6.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/f8288fd8-10a9-42d7-ac09-8c962aedebb7.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/f8288fd8-10a9-42d7-ac09-8c962aedebb7.vsidx" deleted file mode 100644 index e84e8f7..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/f8288fd8-10a9-42d7-ac09-8c962aedebb7.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fd74bb5f-bac3-4a5b-970e-230b01eb2be9.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fd74bb5f-bac3-4a5b-970e-230b01eb2be9.vsidx" new file mode 100644 index 0000000..ad34a56 --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fd74bb5f-bac3-4a5b-970e-230b01eb2be9.vsidx" Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fe16cacc-0308-47f8-a849-c42e92c6fea9.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fe16cacc-0308-47f8-a849-c42e92c6fea9.vsidx" new file mode 100644 index 0000000..7879ab4 --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/fe16cacc-0308-47f8-a849-c42e92c6fea9.vsidx" Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/read.lock" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/read.lock" deleted file mode 100644 index e69de29..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/read.lock" +++ /dev/null diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" index d364d1a..cd1e7e5 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" @@ -164,13 +164,13 @@ /// <summary> /// 鏇存柊浠诲姟淇℃伅鍙婃坊鍔犱换鍔℃槑缁嗚褰� /// </summary> - /// <param name="task"></param> - /// <param name="deviceCode"></param> - /// <param name="sourceAddress"></param> - /// <param name="targetAddress"></param> - /// <param name="currentAddress"></param> - /// <param name="nextAddress"></param> - /// <param name="taskStatus"></param> + /// <param name="task">浠诲姟鍘熷璞″疄渚�(鏈慨鏀圭殑鏁版嵁瀵硅薄)</param> + /// <param name="taskStatus">淇敼鍚庣殑浠诲姟鐘舵��</param> + /// <param name="deviceCode">淇敼鍚庣殑璁惧缂栧彿</param> + /// <param name="sourceAddress">淇敼鍚庣殑璧峰鍦板潃</param> + /// <param name="targetAddress">淇敼鍚庣殑鐩爣鍦板潃</param> + /// <param name="currentAddress">淇敼鍚庣殑褰撳墠鍦板潃</param> + /// <param name="nextAddress">淇敼鍚庣殑涓嬩竴鍦板潃</param> void UpdateTask(Dt_Task task, TaskStatusEnum taskStatus, string deviceCode = "", string sourceAddress = "", string targetAddress = "", string currentAddress = "", string nextAddress = ""); /// <summary> diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Properties/PublishProfiles/FolderProfile1.pubxml" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Properties/PublishProfiles/FolderProfile1.pubxml" new file mode 100644 index 0000000..36847ea --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Properties/PublishProfiles/FolderProfile1.pubxml" @@ -0,0 +1,17 @@ +锘�<?xml version="1.0" encoding="utf-8"?> +<!-- +https://go.microsoft.com/fwlink/?LinkID=208121. +--> +<Project> + <PropertyGroup> + <DeleteExistingFiles>false</DeleteExistingFiles> + <ExcludeApp_Data>false</ExcludeApp_Data> + <LaunchSiteAfterPublish>true</LaunchSiteAfterPublish> + <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration> + <LastUsedPlatform>Any CPU</LastUsedPlatform> + <PublishProvider>FileSystem</PublishProvider> + <PublishUrl>bin\Release\net6.0\publish\</PublishUrl> + <WebPublishMethod>FileSystem</WebPublishMethod> + <_TargetId>Folder</_TargetId> + </PropertyGroup> +</Project> \ No newline at end of file diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json" index e04bb50..2ba493c 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json" @@ -13,7 +13,7 @@ //杩炴帴瀛楃涓� //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=", //"ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWCS_HUAIAN;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", - "ConnectionString": "Data Source=.;Initial Catalog=TestWCS_TC;User ID=sa;Password=duo123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", + "ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWCS_HUAIAN;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", "WMSConnectionStrings": "Data Source=.;Initial Catalog=WIDESEAWMS_HUAIAN;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", //璺ㄥ煙 "Cors": { diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" index 9d72778..64d5cae 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" @@ -181,7 +181,7 @@ return WebResponseContent.Instance.Error($"鏈壘鍒扮珯鍙伴厤缃俊鎭�"); } - List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && (item.SourceAddress == x.StartPosi || item.RoadWay == x.StartPosi || item.RoadWay == x.ChildPosiDeviceCode || item.RoadWay == x.ChildPosi)); + List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && (item.SourceAddress == x.StartPosi || item.RoadWay == x.StartPosi /*|| item.RoadWay == x.ChildPosiDeviceCode || item.RoadWay == x.ChildPosi*/)); router = routers.FirstOrDefault(); if (router == null) { @@ -199,6 +199,7 @@ { task.NextAddress = router.NextPosi; task.DeviceCode = stationManger.StackerCraneCode; + task.TaskState = TaskStatusEnum.SC_Execute.ObjToInt(); } else { diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs" index 20b791c..0d1cc07 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService_Operate.cs" @@ -14,6 +14,16 @@ { public partial class TaskService { + /// <summary> + /// 鏇存柊浠诲姟淇℃伅鍙婃坊鍔犱换鍔℃槑缁嗚褰� + /// </summary> + /// <param name="task">浠诲姟鍘熷璞″疄渚�(鏈慨鏀圭殑鏁版嵁瀵硅薄)</param> + /// <param name="taskStatus">淇敼鍚庣殑浠诲姟鐘舵��</param> + /// <param name="deviceCode">淇敼鍚庣殑璁惧缂栧彿</param> + /// <param name="sourceAddress">淇敼鍚庣殑璧峰鍦板潃</param> + /// <param name="targetAddress">淇敼鍚庣殑鐩爣鍦板潃</param> + /// <param name="currentAddress">淇敼鍚庣殑褰撳墠鍦板潃</param> + /// <param name="nextAddress">淇敼鍚庣殑涓嬩竴鍦板潃</param> public void UpdateTask(Dt_Task task, TaskStatusEnum taskStatus, string deviceCode = "", string sourceAddress = "", string targetAddress = "", string currentAddress = "", string nextAddress = "") { StringBuilder stringBuilder = new StringBuilder(App.User?.UserId == 0 ? $"绯荤粺鑷姩娴佺▼" : "浜哄伐鎵嬪姩娴佺▼"); @@ -82,6 +92,13 @@ _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskNum, stringBuilder.ToString()); + string address = AppSettings.Get("WMSApiAddress"); + if (!string.IsNullOrEmpty(address)) + { + HttpHelper.Post($"{address}/api/Task/UpdateTaskInfo", task.Serialize()); + } + + } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\271\262\350\206\234\344\273\223/ConveyorLineJob_GM.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\271\262\350\206\234\344\273\223/ConveyorLineJob_GM.cs" index 1cf5e15..94217b8 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\271\262\350\206\234\344\273\223/ConveyorLineJob_GM.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\345\271\262\350\206\234\344\273\223/ConveyorLineJob_GM.cs" @@ -87,10 +87,7 @@ Dt_Task task = _taskRepository.QueryFirst(x => x.CurrentAddress == item.StationCode && x.PalletCode == conveyorLineInfoRead.Barcode && x.DeviceCode == item.StationDeviceCode); if (task != null) { - task.CurrentAddress = item.StackerCraneStationCode; - task.TaskState = TaskStatusEnum.SC_Execute.ObjToInt(); - task.DeviceCode = item.StackerCraneCode; - _taskRepository.UpdateData(task); + _taskService.UpdateTask(task, TaskStatusEnum.SC_Execute, currentAddress: item.StackerCraneStationCode); } device.SetValue(W_ConveyorLineDB.ACK, false, item.StationCode); @@ -116,13 +113,13 @@ Dt_StationManger? stationManger = stationMangers.FirstOrDefault(x => x.StationCode == item.StationCode); if (stationManger == null) { - WriteInfo(item.StationName, $"鏈壘鍒板搴旂珯鍙颁俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); + WriteError(item.StationName, $"鏈壘鍒板搴旂珯鍙颁俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); continue; } string? locationCode = _taskService.RequestAssignLocation(task.TaskNum, stationManger.StackerCraneCode); if (string.IsNullOrEmpty(locationCode)) { - WriteInfo(item.StationName, $"璇锋眰鍒嗛厤璐т綅杩斿洖淇℃伅閿欒,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); + WriteError(item.StationName, $"璇锋眰鍒嗛厤璐т綅杩斿洖淇℃伅閿欒,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); continue; } _taskService.UpdateTask(task, TaskStatusEnum.SC_Execute, currentAddress: stationManger.StackerCraneStationCode, targetAddress: locationCode, nextAddress: locationCode, deviceCode: stationManger.StackerCraneCode); @@ -145,14 +142,14 @@ Dt_StationManger? stationManger = stationMangers.FirstOrDefault(x => x.StationCode == item.StationCode); if (stationManger == null) { - WriteInfo(item.StationName, $"鏈壘鍒板搴旂珯鍙颁俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); + WriteError(item.StationName, $"鏈壘鍒板搴旂珯鍙颁俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); continue; } Dt_Router router = _routerRepository.QueryFirst(x => x.InOutType == task.TaskType && (task.CurrentAddress == x.StartPosi)); if (router == null) { - WriteInfo(item.StationName, $"鏈壘鍒拌矾鐢遍厤缃俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); + WriteError(item.StationName, $"鏈壘鍒拌矾鐢遍厤缃俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); continue; } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/ConveyorLineJob_BC.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/ConveyorLineJob_BC.cs" index 2e763fc..cffd0bb 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/ConveyorLineJob_BC.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/ConveyorLineJob_BC.cs" @@ -116,13 +116,25 @@ Dt_Task task = _taskRepository.QueryFirst(x => x.CurrentAddress == item.StationCode && _taskService.TaskOutboundTypes.Contains(x.TaskType) && x.DeviceCode == item.StationDeviceCode && x.TaskState == TaskStatusEnum.Line_Execute.ObjToInt()); if (task != null) { - _taskService.UpdateTask(task, TaskStatusEnum.SC_Execute); + _taskService.UpdateTask(task, TaskStatusEnum.Line_Executing); device.SetValue(W_ConveyorLineDB.TaskNum, task.TaskNum, item.StationCode); device.SetValue(W_ConveyorLineDB.StartPos, task.CurrentAddress, item.StationCode); device.SetValue(W_ConveyorLineDB.EndPos, task.NextAddress, item.StationCode); device.SetValue(W_ConveyorLineDB.Spare1, ConveyorWorkTypeEnum.Outbound.ObjToInt(), item.StationCode); device.SetValue(W_ConveyorLineDB.STB, true, item.StationCode); + } + else + { + task = _taskRepository.QueryFirst(x => x.CurrentAddress == item.StationCode && _taskService.TaskInboundTypes.Contains(x.TaskType) && string.IsNullOrEmpty(x.DeviceCode) && x.TaskState == TaskStatusEnum.New.ObjToInt()); + if (task != null) + { + Dt_StationManger stationManger = _stationMangerRepository.QueryFirst(x => x.StationCode == task.CurrentAddress); + if (stationManger != null) + { + _taskService.UpdateTask(task, TaskStatusEnum.SC_Execute, deviceCode: stationManger.StackerCraneCode, currentAddress: stationManger.StackerCraneStationCode, nextAddress: task.TargetAddress); + } + } } } else if (!conveyorLineSignalRead.STB && conveyorLineSignalRead.ACK && conveyorLineStatus.Online && conveyorLineStatus.Goods && !conveyorLineStatus.Alarm && conveyorLineSignalWrite.STB && !conveyorLineSignalWrite.ACK) @@ -155,7 +167,7 @@ } else { - WriteInfo(device.DeviceName, $"鏈壘鍒拌澶囧瓙缂栧彿{item.StationCode}鐨勫崗璁俊鎭�"); + WriteError(device.DeviceName, $"鏈壘鍒拌澶囧瓙缂栧彿{item.StationCode}鐨勫崗璁俊鎭�"); } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/RGVJob_BC.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/RGVJob_BC.cs" index 71585c2..06d054b 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/RGVJob_BC.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/RGVJob_BC.cs" @@ -85,7 +85,7 @@ Dt_StationManger? stationManger = stationMangers.FirstOrDefault(x => x.StationCode == item.StationCode); if (stationManger == null) { - WriteInfo(item.StationName, $"鏈壘鍒板搴旂珯鍙颁俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); + WriteError(item.StationName, $"鏈壘鍒板搴旂珯鍙颁俊鎭�,璁惧缂栧彿:{item.StationCode},浠诲姟鍙�:{task.TaskNum}"); continue; } List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == task.TaskType && (task.Roadway == x.ChildPosiDeviceCode || task.Roadway == x.ChildPosi)); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs" index b79bd18..3263fcf 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/\346\235\277\346\235\220\344\273\223/StackerCraneJob_BC.cs" @@ -26,6 +26,8 @@ using WIDESEAWCS_Core.Caches; using Newtonsoft.Json; using WIDESEAWCS_TaskInfoService; +using WIDESEAWCS_Tasks.ConveyorLineJob; +using WIDESEAWCS_QuartzJob.Repository; namespace WIDESEAWCS_Tasks { @@ -38,9 +40,10 @@ private readonly ITaskRepository _taskRepository; private readonly IRouterService _routerService; private readonly IStationMangerRepository _stationMangerRepository; + private readonly IRouterRepository _routerRepository; private List<Dt_ApiInfo> apiInfos; - public StackerCraneJob_BC(ITaskService taskService, ICacheService cacheService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IRouterService routerService, IStationMangerRepository stationMangerRepository) + public StackerCraneJob_BC(ITaskService taskService, ICacheService cacheService, ITaskExecuteDetailService taskExecuteDetailService, ITaskRepository taskRepository, IRouterService routerService, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository) { _taskService = taskService; _taskExecuteDetailService = taskExecuteDetailService; @@ -48,6 +51,7 @@ _routerService = routerService; _stationMangerRepository = stationMangerRepository; _cacheService = cacheService; + _routerRepository = routerRepository; string? apiInfoStr = _cacheService.Get("apiInfos"); if (!string.IsNullOrEmpty(apiInfoStr)) @@ -138,6 +142,14 @@ _taskService.UpdateTaskExceptionMessage(taskNum, $"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}"); return WebResponseContent.Instance.Error($"杈撻�佺嚎鍑哄簱绔欑偣鏈厤缃�,{task.NextAddress}"); } + Dt_Router router = _routerRepository.QueryFirst(x => x.InOutType == task.TaskType && x.StartPosi == stationManger.StationCode); + if (router == null) + { + _taskExecuteDetailService.AddTaskExecuteDetail(taskNum, $"鏈壘鍒拌矾鐢变俊鎭�,{task.NextAddress}"); + _taskService.UpdateTaskExceptionMessage(taskNum, $"鏈壘鍒拌矾鐢变俊鎭�,{task.NextAddress}"); + return WebResponseContent.Instance.Error($"鏈壘鍒拌矾鐢变俊鎭�,{task.NextAddress}"); + } + _taskService.UpdateTask(task, TaskStatusEnum.Line_Execute, deviceCode: stationManger.StationDeviceCode, currentAddress: stationManger.StationCode, nextAddress: task.TargetAddress); } else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup || task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup) @@ -250,11 +262,10 @@ if (device != null) { OtherDevice client = (OtherDevice)device; - if (client.GetValue<GroundStationDBName, bool>(GroundStationDBName.R_IsCanPut, stationManger.StationCode))//鍑哄簱绔欏彴鏈鍗犵敤 + if (!client.GetValue<R_ConveyorLineDB, bool>(R_ConveyorLineDB.Goods, stationManger.StationCode))//鍑哄簱绔欏彴鏈鍗犵敤 { task.NextAddress = stationManger.StackerCraneStationCode; _taskRepository.UpdateData(task); - client.SetValue(GroundStationDBName.R_IsCanPut, true, stationManger.StationCode); return task; } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/api/http.js" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/api/http.js" index 70a500f..23d4a39 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/api/http.js" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/api/http.js" @@ -12,7 +12,7 @@ let loadingInstance; let loadingStatus = false; if (process.env.NODE_ENV == 'development') { - axios.defaults.baseURL = window.webConfig.webApiBaseUrl; + axios.defaults.baseURL = 'http://10.30.100.52:9293/'; } else if (process.env.NODE_ENV == 'debug') { axios.defaults.baseURL = 'http://127.0.0.1:8098/'; diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/extend/palletCodeAdd.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/extend/palletCodeAdd.vue" new file mode 100644 index 0000000..7ad7205 --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/extend/palletCodeAdd.vue" @@ -0,0 +1,169 @@ +<template> + <div> + <vol-box + v-model="showDetialBox" + :lazy="true" + width="600px" + :padding="15" + title="鎵撳嵃" + > + <div> + <el-form> + <el-form-item required label="璇烽�夋嫨浠撳簱锛�"> + <el-select + v-model="warehouseId" + filterable + placeholder="璇烽�夋嫨" + @change="getPalletType" + > + <el-option + v-for="item in warehouses" + :key="item.key" + :label="item.value" + :value="item.key" + > + <span style="float: left">{{ item.value }}</span> + <span style="float: right; color: #8492a6; font-size: 13px">{{ + item.key + }}</span> + </el-option> + </el-select> + </el-form-item> + <el-form-item required label="璇疯緭鍏ユ暟閲忥細" + ><el-input-number + v-model="num" + :min="1" + :max="100" + label="璇疯緭鍏ユ暟閲�" + ></el-input-number> + </el-form-item> + <el-form-item + required + label="璇烽�夋嫨鎵樼洏绫诲瀷锛�" + v-show="warehouseId != ''" + > + <el-radio-group v-model="palletType"> + <el-radio + v-for="item in palletTypes" + :key="item.key" + :label="item" + >{{ item.value }}</el-radio + > + </el-radio-group> + </el-form-item> + </el-form> + </div> + <template #footer> + <el-button type="primary" size="small" @click="submit">纭</el-button> + <el-button type="danger" size="small" @click="close">鍏抽棴</el-button> + </template> + </vol-box> + </div> +</template> + + <script> +import VolBox from "@/components/basic/VolBox.vue"; +export default { + components: { VolBox }, + data() { + return { + showDetialBox: false, + warehouses: [], + warehouseId: "", + palletType: "", + palletTypes: [], + num: 1, + }; + }, + methods: { + open() { + if (this.warehouses.length == 0) { + this.getWarehouseInfos(); + } + if (this.warehouses.length == 1) { + this.warehouseId = this.warehouses[0].key; + } + this.showDetialBox = true; + }, + getWarehouseInfos() { + this.http + .post("api/Warehouse/GetWarehouseDicByUser", null, "鏁版嵁澶勭悊涓�") + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.warehouses = x.data; + if (this.warehouses.length == 1) { + this.warehouseId = this.warehouses[0].key; + } + }); + }, + getPalletType() { + this.palletTypes = this.warehouses.find( + (x) => x.key == this.warehouseId + ).extra; + }, + close() { + this.showDetialBox = false; + if (this.warehouses.length > 1) { + this.warehouseId = ""; + } + this.palletType = ""; + }, + submit() { + this.http + .post( + `api/PalletCodeInfo/AddPalletCodeData?count=${this.num}&warehouseId=${this.warehouseId}&palletTypeId=${this.palletType.key}`, + null, + "鏁版嵁澶勭悊涓�" + ) + .then((x) => { + if (!x.status) return this.$message.error(x.message); + this.$message.success("鎿嶄綔鎴愬姛"); + this.$parent.refresh(); + this.close(); + }); + }, + }, + created() {}, +}; +</script> + + <style scoped> +.el-col { + border-radius: 4px; +} + +.grid-content { + border-radius: 4px; + min-height: 36px; +} + +.content-text { + display: flex; + align-items: center; + justify-content: center; +} + +.right-text { + display: flex; + align-items: center; + justify-content: flex-end; +} +</style> + <style> +.el-table .warning-row { + background: #e6a23c; +} + +.el-table .success-row { + background: #f0f9eb; +} + +.el-table .error-row { + background: #f56c6c; +} + +canvas { + display: block; + margin: auto; +} +</style> \ No newline at end of file diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/palletCodeInfo.js" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/palletCodeInfo.js" index 786d497..6c2dee4 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/palletCodeInfo.js" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/palletCodeInfo.js" @@ -1,9 +1,10 @@ //姝s鏂囦欢鏄敤鏉ヨ嚜瀹氫箟鎵╁睍涓氬姟浠g爜锛屽彲浠ユ墿灞曚竴浜涜嚜瀹氫箟椤甸潰鎴栬�呴噸鏂伴厤缃敓鎴愮殑浠g爜 import gridBody from './extend/printView.vue' +import gridHeader from './extend/palletCodeAdd.vue' let extension = { components: { //鏌ヨ鐣岄潰鎵╁睍缁勪欢 - gridHeader: '', + gridHeader: gridHeader, gridBody: gridBody, gridFooter: '', //鏂板缓銆佺紪杈戝脊鍑烘鎵╁睍缁勪欢 @@ -15,7 +16,14 @@ buttons: { view: [], box: [], detail: [] }, //鎵╁睍鐨勬寜閽� methods: { //涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄� - onInit() { //妗嗘灦鍒濆鍖栭厤缃墠锛� + onInit() { + let addBtn = this.buttons.find(x => x.value == 'Add'); + if (addBtn) { + addBtn.onClick = function () { + this.$refs.gridHeader.open(); + } + } + //妗嗘灦鍒濆鍖栭厤缃墠锛� this.columns.push({ field: '鎿嶄綔', title: '鎿嶄綔', diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/Index.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/Index.vue" index db301d8..a087196 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/Index.vue" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/Index.vue" @@ -71,7 +71,7 @@ <img class="user-header" :src="userImg" :onerror="errorImg" /> </div> <div class="user"> - <span>{{ userName }}</span> + <span>{{ userTrueName }}</span> <span id="index-date"></span> </div> <div class="settings"> @@ -281,6 +281,7 @@ //2022.05.29澧炲姞tab閫夐」涓庤彍鍗曡仈鍔ㄥ姛鑳� const currentMenuId = ref(0); const userName = ref("--"); + const userTrueName = ref("--"); const userInfo = ref({}); const visibleItem = reactive({ left: false, @@ -598,8 +599,8 @@ let _userInfo = store.getters.getUserInfo(); if (_userInfo) { - console.log(_userInfo); - userName.value = _userInfo.trueNmae; + userName.value = _userInfo.userName; + userTrueName.value = _userInfo.userTrueName; if (_userInfo.img) { userImg.value = _config.base.getImgSrc(_userInfo.img, http.ipAddress); } @@ -661,6 +662,7 @@ errorImg, userInfo, userName, + userTrueName, userImg, selectId, selectMenuIndex, diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/system/Sys_User.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/system/Sys_User.vue" index f3f8885..b53cf53 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/system/Sys_User.vue" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/system/Sys_User.vue" @@ -19,18 +19,18 @@ export default defineComponent({ setup() { const table = ref({ - key: "user_Id", + key: "userId", footer: "Foots", cnName: "鐢ㄦ埛绠$悊", name: "Sys_User", url: "/User/", - sortName: "user_Id", + sortName: "userId", }); const editFormFields = ref({ systemType: "0", userName: "", userTrueName: "", - roleId: [], + roleId: "", deptIds: "", enable: "", gender: "", @@ -47,7 +47,7 @@ title: "瑙掕壊", required: true, field: "roleId", - type: "cascader", + type: "select", }, ], // [ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/157ae1fd-6c00-4a8d-bfe7-e0b23990d57b.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/157ae1fd-6c00-4a8d-bfe7-e0b23990d57b.vsidx" deleted file mode 100644 index 363e52e..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/157ae1fd-6c00-4a8d-bfe7-e0b23990d57b.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/24d336e2-4ecf-49a4-b35f-69e0e3bc8d65.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/24d336e2-4ecf-49a4-b35f-69e0e3bc8d65.vsidx" deleted file mode 100644 index 290d52a..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/24d336e2-4ecf-49a4-b35f-69e0e3bc8d65.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3ae4399a-b674-44c1-b399-de956d3e1f8a.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3ae4399a-b674-44c1-b399-de956d3e1f8a.vsidx" deleted file mode 100644 index 715da9b..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3ae4399a-b674-44c1-b399-de956d3e1f8a.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3ba3019c-440c-48eb-82b3-06cc25ec7301.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3ba3019c-440c-48eb-82b3-06cc25ec7301.vsidx" new file mode 100644 index 0000000..249ddd8 --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3ba3019c-440c-48eb-82b3-06cc25ec7301.vsidx" Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/872f6857-ecdf-4715-ac7a-765ab4769441.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/872f6857-ecdf-4715-ac7a-765ab4769441.vsidx" deleted file mode 100644 index 6e724b6..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/872f6857-ecdf-4715-ac7a-765ab4769441.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b0001941-8c45-456e-a7be-53676400c6a8.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b0001941-8c45-456e-a7be-53676400c6a8.vsidx" new file mode 100644 index 0000000..aac3b1f --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b0001941-8c45-456e-a7be-53676400c6a8.vsidx" Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d5a3168f-61c4-46c2-a7e5-00e778c348c5.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d5a3168f-61c4-46c2-a7e5-00e778c348c5.vsidx" new file mode 100644 index 0000000..8430a0f --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d5a3168f-61c4-46c2-a7e5-00e778c348c5.vsidx" Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/e1699c03-c050-4a8a-9e44-918bffcfc3ce.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/e1699c03-c050-4a8a-9e44-918bffcfc3ce.vsidx" deleted file mode 100644 index 11b5b65..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/e1699c03-c050-4a8a-9e44-918bffcfc3ce.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/fe4c888c-4628-47ca-995c-f8221d13ee48.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/fe4c888c-4628-47ca-995c-f8221d13ee48.vsidx" deleted file mode 100644 index 38bc46e..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/fe4c888c-4628-47ca-995c-f8221d13ee48.vsidx" +++ /dev/null Binary files differ diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock" deleted file mode 100644 index e69de29..0000000 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock" +++ /dev/null diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/WarehouseService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/WarehouseService.cs" index f241f34..c0777b0 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/WarehouseService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/WarehouseService.cs" @@ -11,13 +11,19 @@ using WIDESEA_Model.Models; using WIDESEA_Core.Helper; using WIDESEA_Common.CommonEnum; +using WIDESEA_Core.Caches; namespace WIDESEA_BasicService { public partial class WarehouseService : ServiceBase<Dt_Warehouse, IWarehouseRepository>, IWarehouseService { - public WarehouseService(IWarehouseRepository BaseDal) : base(BaseDal) + private readonly ICacheService _cacheService; + private readonly IPalletTypeInfoRepository _palletTypeInfoRepository; + + public WarehouseService(IWarehouseRepository BaseDal,ICacheService cacheService, IPalletTypeInfoRepository palletTypeInfoRepository) : base(BaseDal) { + _cacheService = cacheService; + _palletTypeInfoRepository = palletTypeInfoRepository; } public IWarehouseRepository Repository => BaseDal; @@ -75,5 +81,7 @@ { return WarehouseDisableStatus(new int[] { key }); } + + } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs" index 220c2a5..e93ce7b 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs" @@ -18,9 +18,12 @@ public class PalletCodeInfoService : ServiceBase<Dt_PalletCodeInfo, IPalletCodeInfoRepository>, IPalletCodeInfoService { private readonly IWarehouseRepository _warehouseRepository; - public PalletCodeInfoService(IPalletCodeInfoRepository BaseDal, IWarehouseRepository warehouseRepository) : base(BaseDal) + private readonly IPalletTypeInfoRepository _palletTypeInfoRepository; + + public PalletCodeInfoService(IPalletCodeInfoRepository BaseDal, IWarehouseRepository warehouseRepository, IPalletTypeInfoRepository palletTypeInfoRepository) : base(BaseDal) { _warehouseRepository = warehouseRepository; + _palletTypeInfoRepository = palletTypeInfoRepository; } static object locker = new object(); @@ -51,9 +54,9 @@ { serialNo = 1; } - Dt_Warehouse _Warehouse = _warehouseRepository.QueryFirst(x=>x.WarehouseId== warehouseId); - - string uplen = _Warehouse.WarehouseCode switch + Dt_Warehouse _Warehouse = _warehouseRepository.QueryFirst(x => x.WarehouseId == warehouseId); + string uplen = ""; + switch (_Warehouse.WarehouseCode) { "HA57" => "B", "HA58" => "P", @@ -67,11 +70,11 @@ }; for (int i = 0; i < count; i++) { - + palletCodeInfos.Add(new Dt_PalletCodeInfo { SerialNo = serialNo, - PalletCode = uplen+now.ToString("yyyyMMdd") + serialNo.ToString().PadLeft(3, '0'), + PalletCode = uplen + now.ToString("yyyyMMdd") + serialNo.ToString().PadLeft(3, '0'), PalletType = 1, PalletTypeId = 0, WarehouseId = warehouseId, @@ -84,13 +87,65 @@ return base.AddData(palletCodeInfos); } } + + public WebResponseContent AddData(int warehouseId, int count, int palletTypeId) + { + try + { + Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.Id == palletTypeId && x.WarehouseId == warehouseId); + if (palletTypeInfo == null) + { + return WebResponseContent.Instance.Error($"鏈壘鍒版墭鐩樼被鍨嬮厤缃俊鎭�"); + } + lock (locker) + { + List<Dt_PalletCodeInfo> palletCodeInfos = new List<Dt_PalletCodeInfo>(); + int serialNo = 0; + DateTime now = DateTime.Now; + Dt_PalletCodeInfo palletCodeInfo = BaseDal.QueryFirst(x => x.WarehouseId == warehouseId, new Dictionary<string, OrderByType> { { nameof(Dt_PalletCodeInfo.SerialNo), OrderByType.Desc } }); + if (palletCodeInfo != null && palletCodeInfo.CreateDate.Year == now.Year && palletCodeInfo.CreateDate.Month == now.Month && palletCodeInfo.CreateDate.Day == now.Day) + { + serialNo = palletCodeInfo.SerialNo + 1; + + } + else + { + serialNo = 1; + } + + for (int i = 0; i < count; i++) + { + + palletCodeInfos.Add(new Dt_PalletCodeInfo + { + SerialNo = serialNo, + PalletCode = palletTypeInfo.CodeStartStr + now.ToString("yyyyMMdd") + serialNo.ToString().PadLeft(3, '0'), + PalletType = 1, + PalletTypeId = 0, + WarehouseId = warehouseId, + Status = 0, + Size = 0 + }); + + serialNo = serialNo + 1; + } + BaseDal.AddData(palletCodeInfos); + } + return WebResponseContent.Instance.OK(); + } + catch(Exception ex) + { + return WebResponseContent.Instance.Error(ex.Message); + } + } + public WebResponseContent PrintStatusUp(string printCode) { WebResponseContent content = new WebResponseContent(); try { - Dt_PalletCodeInfo palletCodeInfo = BaseDal.QueryFirst(x=>x.PalletCode==printCode); - if (palletCodeInfo==null) + Dt_PalletCodeInfo palletCodeInfo = BaseDal.QueryFirst(x => x.PalletCode == printCode); + if (palletCodeInfo == null) { return content.Error("鎵撳嵃鐨勬墭鐩樼爜涓嶅瓨鍦�"); } @@ -100,7 +155,7 @@ } catch (Exception ex) { - content.Error("閿欒:"+ex.Message); + content.Error("閿欒:" + ex.Message); } return content; } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/WarehouseService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/WarehouseService.cs" index 1353a56..768ee2f 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/WarehouseService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/WarehouseService.cs" @@ -3,14 +3,37 @@ using System.Linq; using System.Text; using System.Threading.Tasks; +using WIDESEA_Core; using WIDESEA_Core.BaseServices; +using WIDESEA_Core.Helper; +using WIDESEA_Core.HostedService; +using WIDESEA_DTO.System; using WIDESEA_IBasicRepository; using WIDESEA_IBasicService; using WIDESEA_Model.Models; namespace WIDESEA_BasicService { - public partial class WarehouseService : ServiceBase<Dt_Warehouse, IWarehouseRepository>, IWarehouseService + public partial class WarehouseService { + public WebResponseContent GetWarehouseDicByUser() + { + try + { + List<int> warehouseIds = Db.Queryable<Sys_RoleDataPermission>().Where(x => x.RoleId == App.User.RoleId).Select(x => x.WarehouseId).ToList(); + List<DictionaryDTO> dic = Repository.QueryData(x => new DictionaryDTO { Key = x.WarehouseId, Value = x.WarehouseName + $"({x.WarehouseCode})" }, x => warehouseIds.Contains(x.WarehouseId)).ToList(); + List<Dt_PalletTypeInfo> palletTypeInfos = _palletTypeInfoRepository.QueryData();//x => x.TypeName + $"({x.CodeStartStr})", x => true + dic.ForEach(x => + { + x.Extra = palletTypeInfos.Where(v => v.WarehouseId == x.Key.ObjToInt()).Select(x => new DictionaryDTO { Key = x.Id, Value = x.TypeName + $"({x.CodeStartStr})" }).ToList(); + }); + + return WebResponseContent.Instance.OK(data: dic); + } + catch (Exception ex) + { + return WebResponseContent.Instance.Error(ex.Message); + } + } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" index fed318a..41c5bd7 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseRepository/RepositoryBase.cs" @@ -908,7 +908,8 @@ } } } - _db.InsertableByObject(obj).AS(type.Name + "_Hty").ExecuteCommand(); + if (obj != null) + _db.InsertableByObject(obj).AS(type.Name + "_Hty").ExecuteCommand(); } } return DeleteData(entity); @@ -960,7 +961,8 @@ list.Add(obj); } } - _db.InsertableByObject(list).AS(type.Name + "_Hty").ExecuteCommand(); + if (list.Count > 0) + _db.InsertableByObject(list).AS(type.Name + "_Hty").ExecuteCommand(); } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs" index 23c0f6a..98d28b2 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseServices/ServiceBase.cs" @@ -80,7 +80,7 @@ return pageGridData; } - void ValidatePageOptions(PageDataOptions options, PropertyInfo[] entityProperties, ref ISugarQueryable<TEntity> sugarQueryable) + protected void ValidatePageOptions(PageDataOptions options, PropertyInfo[] entityProperties, ref ISugarQueryable<TEntity> sugarQueryable) { string where = string.Empty; List<SearchParameters> searchParametersList = new List<SearchParameters>(); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/PermissionDataHostService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/PermissionDataHostService.cs" index 1656f81..0ff7fb6 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/PermissionDataHostService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HostedService/PermissionDataHostService.cs" @@ -87,6 +87,51 @@ return userRoles; } + public static List<UserRole> GetUserRoles(ISqlSugarClient db, int userId) + { + List<ExpandoObject> roles = db.Queryable("Sys_Role", "x").Select(RoleSelectModes).ToList(); + List<dynamic> roleDynamics = new List<dynamic>(); + foreach (var item in roles) + { + roleDynamics.Add(item); + } + + List<dynamic> roleDataDynamics = new List<dynamic>(); + List<ExpandoObject> roleDatas = db.Queryable("Sys_RoleDataPermission", "x").Select(RoleDataSelectModes).ToList(); + foreach (var item in roleDatas) + { + roleDataDynamics.Add(item); + } + + List<ExpandoObject> users = db.Queryable("Sys_User", "x").Where($"UserId={userId}").Select(UserSelectModes).ToList(); + + List<UserRole> userRoles = new List<UserRole>(); + foreach (var item in users) + { + dynamic user = item; + dynamic? role = roleDynamics.FirstOrDefault(x => x.RoleId == user.RoleId); + List<object> warehouseIds = roleDataDynamics.Where(x => x.RoleId == user.RoleId).Select(x => x.WarehouseId).ToList(); + List<int> ids = new List<int>(); + for (int i = 0; i < warehouseIds.Count; i++) + { + ids.Add(Convert.ToInt32(warehouseIds[i])); + } + if (role != null) + { + userRoles.Add(new UserRole + { + RoleId = role.RoleId, + RoleName = role.RoleName, + ParentId = role.ParentId, + UserId = user.UserId, + UserName = user.UserName, + WarehouseIds = ids + }); + } + } + return userRoles; + } + static List<SelectModel> RoleSelectModes = new List<SelectModel>() { new SelectModel() diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs" index 4ad30c7..87092e2 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs" @@ -86,6 +86,8 @@ public bool IsSuperAdmin => IsRoleIdSuperAdmin(RoleId); + public bool IsHighestRole => UserId == 1; + public List<string> GetUserInfoFromToken(string ClaimType) { var jwtHandler = new JwtSecurityTokenHandler(); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/IUser.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/IUser.cs" index 1c3acbe..0c40736 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/IUser.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/IUser.cs" @@ -24,11 +24,11 @@ /// </summary> long TenantId { get; } - int RoleId { get;} + int RoleId { get; } string Token { get; } - int MenuType { get; } + int MenuType { get; } void UpdateToke(string token); @@ -46,7 +46,9 @@ List<string> GetUserInfoFromToken(string ClaimType); - bool IsSuperAdmin { get; } + bool IsSuperAdmin { get; } + + bool IsHighestRole { get; } bool IsRoleIdSuperAdmin(int roleId); } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs" index e576b3d..a6c169c 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/ApiLogMiddleware.cs" @@ -1,6 +1,7 @@ 锘縰sing Microsoft.AspNetCore.Http; using Microsoft.Extensions.Logging; using Newtonsoft.Json; +using Org.BouncyCastle.Asn1.Ocsp; using System; using System.Collections.Generic; using System.Linq; @@ -83,28 +84,36 @@ private string RequestDataLog(HttpContext context) { var request = context.Request; - var sr = new StreamReader(request.Body); - - object obj = new + if (request.ContentType?.ToLower() != "multipart/form-data" && request.ContentLength <= 100000) { - QueryString = request.QueryString.ToString(), - BodyData = sr.ReadToEndAsync().Result - }; + var sr = new StreamReader(request.Body); - string data = JsonConvert.SerializeObject(obj); + object obj = new + { + QueryString = request.QueryString.ToString(), + BodyData = sr.ReadToEndAsync().Result + }; - request.Body.Position = 0; + string data = JsonConvert.SerializeObject(obj); - return data; + request.Body.Position = 0; + + return data; + } + return ""; } private string ResponseDataLog(HttpResponse response) { - response.Body.Position = 0; - using StreamReader stream = new StreamReader(response.Body, leaveOpen: true); - string body = stream.ReadToEnd(); - response.Body.Position = 0; - return body; + if (response.ContentType?.ToLower() != "multipart/form-data" && response.ContentLength <= 100000) + { + response.Body.Position = 0; + using StreamReader stream = new StreamReader(response.Body, leaveOpen: true); + string body = stream.ReadToEnd(); + response.Body.Position = 0; + return body; + } + return ""; } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/System/DictionaryDTO.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/System/DictionaryDTO.cs" new file mode 100644 index 0000000..c914b41 --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/System/DictionaryDTO.cs" @@ -0,0 +1,29 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WIDESEA_DTO.System +{ + /// <summary> + /// + /// </summary> + public class DictionaryDTO + { + /// <summary> + /// + /// </summary> + public object Key { get; set; } + + /// <summary> + /// + /// </summary> + public object Value { get; set; } + + /// <summary> + /// + /// </summary> + public object Extra { get; set; } + } +} diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Task/WCSTaskDTO.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Task/WCSTaskDTO.cs" index 5e6fe8e..570a8c1 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Task/WCSTaskDTO.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Task/WCSTaskDTO.cs" @@ -1,4 +1,6 @@ -锘縰sing System; +锘縰sing Magicodes.ExporterAndImporter.Core; +using SqlSugar; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -11,6 +13,92 @@ /// </summary> public class WCSTaskDTO { - // public int Task + /// <summary> + /// 涓婚敭 + /// </summary> + public int TaskId { get; set; } + + /// <summary> + /// 浠诲姟鍙� + /// </summary> + public int TaskNum { get; set; } + /// <summary> + /// AGV浠诲姟鍙� + /// </summary> + public string AgvTaskNum { get; set; } + /// <summary> + /// 鎵樼洏缂栧彿 + /// </summary> + public string PalletCode { get; set; } + + /// <summary> + /// 鎵樼洏绫诲瀷 + /// </summary> + public int PalletType { get; set; } + + /// <summary> + /// 璁惧缂栧彿 + /// </summary> + public string DeviceCode { get; set; } + + /// <summary> + /// 宸烽亾鍙� + /// </summary> + public string Roadway { get; set; } + + /// <summary> + /// 浠诲姟绫诲瀷 + /// </summary> + public int TaskType { get; set; } + + /// <summary> + /// 浠诲姟鐘舵�� + /// </summary> + public int TaskState { get; set; } + + /// <summary> + /// 璧峰鍦板潃 + /// </summary> + public string SourceAddress { get; set; } + + /// <summary> + /// 鐩爣鍦板潃 + /// </summary> + public string TargetAddress { get; set; } + + /// <summary> + /// 褰撳墠浣嶇疆 + /// </summary> + public string CurrentAddress { get; set; } + + /// <summary> + /// 涓嬩竴鍦板潃 + /// </summary> + public string NextAddress { get; set; } + + /// <summary> + /// 寮傚父淇℃伅 + /// </summary> + public string? ExceptionMessage { get; set; } + + /// <summary> + /// 浼樺厛绾� + /// </summary> + public int Grade { get; set; } + + /// <summary> + /// WMS浠诲姟涓婚敭 + /// </summary> + public int WMSId { get; set; } + + /// <summary> + /// 浠诲姟涓嬪彂鏃堕棿 + /// </summary> + public DateTime? Dispatchertime { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public string Remark { get; set; } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IPalletCodeInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IPalletCodeInfoService.cs" index 51916de..1961cf4 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IPalletCodeInfoService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IPalletCodeInfoService.cs" @@ -11,7 +11,21 @@ { public interface IPalletCodeInfoService : IService<Dt_PalletCodeInfo> { - //鏇存柊鎵撳嵃鐘舵�� + + /// <summary> + /// + /// </summary> + /// <param name="warehouseId"></param> + /// <param name="count"></param> + /// <param name="palletTypeId"></param> + /// <returns></returns> + WebResponseContent AddData(int warehouseId, int count, int palletTypeId); + + /// <summary> + /// 鏇存柊鎵撳嵃鐘舵�� + /// </summary> + /// <param name="printCode"></param> + /// <returns></returns> WebResponseContent PrintStatusUp(string printCode); } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IWarehouseService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IWarehouseService.cs" index b004d66..fbe0142 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IWarehouseService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IWarehouseService.cs" @@ -41,5 +41,11 @@ /// <param name="key">浠撳簱涓婚敭</param> /// <returns></returns> WebResponseContent WarehouseDisableStatus(int key); + + /// <summary> + /// + /// </summary> + /// <returns></returns> + WebResponseContent GetWarehouseDicByUser(); } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IRecordService/IStockQuantityChangeRecordService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IRecordService/IStockQuantityChangeRecordService.cs" index 2630049..a71ba42 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IRecordService/IStockQuantityChangeRecordService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IRecordService/IStockQuantityChangeRecordService.cs" @@ -17,6 +17,6 @@ void AddStockChangeRecord(Dt_StockInfo stockInfo, List<Dt_StockInfoDetail> stockInfoDetails, float beforeQuantity, float totalQuantity, StockChangeTypeEnum changeType, int? taskNum = null); - void AddStockChangeRecord(Dt_StockInfo stockInfo, List<Dt_StockInfoDetail> updateDetails, List<Dt_StockInfoDetail> deleteDetails, StockChangeTypeEnum changeType, int? taskNum = null); + void AddStockChangeRecord(Dt_StockInfo stockInfo, List<Dt_StockInfoDetail> residueDetailList, List<Dt_StockInfoDetail> updateDetails, List<Dt_StockInfoDetail> deleteDetails, StockChangeTypeEnum changeType, int? taskNum = null); } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ISystemService/ISys_RoleService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ISystemService/ISys_RoleService.cs" index ecf033c..f99e354 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ISystemService/ISys_RoleService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ISystemService/ISys_RoleService.cs" @@ -16,6 +16,8 @@ { ISys_RoleRepository Repository { get; } + List<int> GetAllChildrenRoleId(int roleId); + List<RoleNodes> GetAllChildren(int roleId); WebResponseContent GetCurrentTreePermission(); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs" index 41ecf7e..021df9b 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs" @@ -30,6 +30,7 @@ using WIDESEA_DTO.ERP; using WIDESEA_DTO.MES; using WIDESEA_DTO.Stock; +using WIDESEA_DTO.Task; using WIDESEA_ITaskInfoRepository; using WIDESEA_Model.Models; @@ -196,6 +197,19 @@ /// <returns></returns> MesResponseContent SubstrateBack(SubstrateBackModel model); + /// <summary> + /// 鍒嗛厤宸烽亾 + /// </summary> + /// <param name="taskNum"></param> + /// <param name="roadwayNos"></param> + /// <returns></returns> WebResponseContent AssignRoadway(int taskNum, List<string> roadwayNos); + + /// <summary> + /// 淇敼浠诲姟鐘舵�� + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + WebResponseContent UpdateTaskInfo(WCSTaskDTO task); } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs" index 07384b3..79b47fc 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs" @@ -36,7 +36,11 @@ { return WebResponseContent.Instance.Error($"璇ユ墭鐩樿繕鏈嚭搴撳畬鎴�"); } - List<Dt_OutStockLockInfo> outStockLockInfos = Repository.QueryData(x => x.PalletCode == palletCode); + List<Dt_OutStockLockInfo> outStockLockInfos = Repository.QueryData(x => x.PalletCode == palletCode && x.Status == OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt()); + if (outStockLockInfos == null || outStockLockInfos.Count == 0) + { + return WebResponseContent.Instance.Error("璇ユ墭鐩樺凡鍏ㄩ儴鍒嗘嫞瀹屾垚"); + } for (int i = 0; i < outStockLockInfos.Count; i++) { outStockLockInfos[i].Status = OutLockStockStatusEnum.鎷i�夊畬鎴�.ObjToInt(); @@ -44,6 +48,7 @@ List<Dt_StockInfoDetail> beforeDetaile = stockInfo.Details.GroupBy(x => x.MaterielCode).Select(x => new Dt_StockInfoDetail { MaterielCode = x.Key, StockQuantity = x.Sum(v => v.StockQuantity) }).ToList(); List<Dt_StockInfoDetail> updateDetailList = new List<Dt_StockInfoDetail>(); List<Dt_StockInfoDetail> deleteDetailList = new List<Dt_StockInfoDetail>(); + List<Dt_StockInfoDetail> residueDetailList = new List<Dt_StockInfoDetail>(); for (int i = 0; i < stockInfo.Details.Count; i++) { if (stockInfo.Details[i].OutboundQuantity > 0) @@ -58,30 +63,26 @@ deleteDetailList.Add(stockInfo.Details[i]); } } + else + { + residueDetailList.Add(stockInfo.Details[i]); + } } List<string> mCodes = stockInfo.Details.GroupBy(x => x.MaterielCode).Select(x => x.Key).ToList(); _unitOfWorkManage.BeginTran(); foreach (string code in mCodes) { - _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, updateDetailList, deleteDetailList, StockChangeTypeEnum.Outbound); + _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, residueDetailList, updateDetailList, deleteDetailList, StockChangeTypeEnum.Outbound); } updateDetailList.ForEach(x => { x.OutboundQuantity = 0; }); - stockInfo.StockStatus = StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt(); - //_stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(deleteDetailList, OperateTypeEnum.鑷姩瀹屾垚); - if (stockInfo.Details.Sum(x=>x.StockQuantity)== stockInfo.Details.Sum(x => x.OutboundQuantity)) - { - _stockService.StockInfoService.Repository.DeleteData(stockInfo); - } - else - { - _stockService.StockInfoService.Repository.UpdateData(stockInfo); - } + + _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(deleteDetailList, OperateTypeEnum.鑷姩瀹屾垚); _stockService.StockInfoDetailService.Repository.UpdateData(updateDetailList); - _stockService.StockInfoDetailService.Repository.DeleteData(deleteDetailList); + //_stockService.StockInfoDetailService.Repository.DeleteData(deleteDetailList); BaseDal.UpdateData(outStockLockInfos); _unitOfWorkManage.BeginTran(); return WebResponseContent.Instance.OK(); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_RecordService/Service/StockQuantityChangeRecordService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_RecordService/Service/StockQuantityChangeRecordService.cs" index 685992d..adf306a 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_RecordService/Service/StockQuantityChangeRecordService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_RecordService/Service/StockQuantityChangeRecordService.cs" @@ -54,7 +54,7 @@ } } - public void AddStockChangeRecord(Dt_StockInfo stockInfo, List<Dt_StockInfoDetail> updateDetails, List<Dt_StockInfoDetail> deleteDetails, StockChangeTypeEnum changeType, int? taskNum = null) + public void AddStockChangeRecord(Dt_StockInfo stockInfo, List<Dt_StockInfoDetail> residueDetailList, List<Dt_StockInfoDetail> updateDetails, List<Dt_StockInfoDetail> deleteDetails, StockChangeTypeEnum changeType, int? taskNum = null) { try { @@ -62,12 +62,15 @@ int index1 = 0; List<Dt_StockQuantityChangeRecord> records1 = _mapper.Map<List<Dt_StockQuantityChangeRecord>>(updateDetails); + float beforeQuantity = updateDetails.Sum(x => x.OutboundQuantity + x.StockQuantity) + deleteDetails.Sum(x => x.StockQuantity) + residueDetailList.Sum(x => x.StockQuantity); + records1.ForEach(x => { x.PalleCode = stockInfo.PalletCode; - x.BeforeQuantity = deleteDetails[index1].StockQuantity + deleteDetails[index1].OutboundQuantity; - x.ChangeQuantity = -deleteDetails[index1].OutboundQuantity; - x.AfterQuantity = deleteDetails[index1].StockQuantity; + x.BeforeQuantity = beforeQuantity; + x.ChangeQuantity = -updateDetails[index1].OutboundQuantity; + x.AfterQuantity = beforeQuantity + x.ChangeQuantity; + beforeQuantity -= updateDetails[index1].OutboundQuantity; index1++; }); stockQuantityChangeRecords.AddRange(records1); @@ -76,9 +79,10 @@ records2.ForEach(x => { x.PalleCode = stockInfo.PalletCode; - x.BeforeQuantity = deleteDetails[index2].StockQuantity; + x.BeforeQuantity = beforeQuantity; x.ChangeQuantity = -deleteDetails[index2].StockQuantity; - x.AfterQuantity = 0; + x.AfterQuantity = beforeQuantity + x.ChangeQuantity; + beforeQuantity -= deleteDetails[index2].StockQuantity; index2++; }); stockQuantityChangeRecords.AddRange(records2); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" index b71749e..db45659 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" @@ -124,6 +124,11 @@ return WebResponseContent.Instance.OK(); } + public List<int> GetAllChildrenRoleId(int roleId) + { + return GetAllChildren(roleId).Select(x => x.Id).ToList(); + } + public List<RoleNodes> GetAllChildren(int roleId) { if (roleId <= 0) return new List<RoleNodes>() { }; diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_UserService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_UserService.cs" index fe09cc4..9dbed5c 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_UserService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_UserService.cs" @@ -14,6 +14,11 @@ using SqlSugar; using ICacheService = WIDESEA_Core.Caches.ICacheService; using HslCommunication.WebSocket; +using System.Drawing.Drawing2D; +using System.Linq; +using MailKit.Search; +using OrderByType = SqlSugar.OrderByType; +using System.Drawing.Printing; namespace WIDESEA_SystemService { @@ -22,14 +27,16 @@ private readonly IUnitOfWorkManage _unitOfWorkManage; private readonly ICacheService _cacheService; private readonly ISys_MenuService _menuService; + private readonly ISys_RoleService _roleService; public ISys_UserRepository Repository => BaseDal; - public Sys_UserService(ISys_UserRepository repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService) : base(repository) + public Sys_UserService(ISys_UserRepository repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService, ISys_RoleService roleService) : base(repository) { _unitOfWorkManage = unitOfWorkManage; _cacheService = cacheService; _menuService = menuService; + _roleService = roleService; } public WebResponseContent Login(LoginInfo loginInfo) @@ -74,8 +81,10 @@ }); _cacheService.AddOrUpdate(user.UserId.ToString(), token); + if (PermissionDataHostService.UserRoles.FirstOrDefault(x => x.UserId == user.UserId) == null) + PermissionDataHostService.UserRoles.AddRange(PermissionDataHostService.GetUserRoles(Db, user.UserId)); - content = WebResponseContent.Instance.OK(data: new { token, userName = user.UserName, img = user.HeadImageUrl,trueNmae=user.UserTrueName }); + content = WebResponseContent.Instance.OK(data: new { token, userName = user.UserName, img = user.HeadImageUrl, user.UserTrueName }); } else { @@ -103,6 +112,40 @@ return base.UpdateData(saveModel); } + public override PageGridData<Sys_User> GetPageData(PageDataOptions options) + { + int roleId = -1; + //鏍戝舰鑿滃崟浼犳煡璇㈣鑹蹭笅鎵�鏈夌敤鎴� + if (options.Value != null) + { + roleId = options.Value.ObjToInt(); + } + + if (roleId <= 0) + { + if (App.User.IsHighestRole) return base.GetPageData(options); + roleId = App.User.RoleId; + } + int totalCount = 0; + List<int> roleIds = _roleService.GetAllChildrenRoleId(roleId).Where(x => x != roleId).ToList(); + ISugarQueryable<Sys_User> sugarQueryable = Db.Queryable<Sys_User>(); + ValidatePageOptions(options, TProperties, ref sugarQueryable); + + Dictionary<string, OrderByType> orderbyDic = options.GetPageDataSort(TProperties); + List<OrderByModel> orderByModels = new List<OrderByModel>(); + foreach (var item in orderbyDic) + { + OrderByModel orderByModel = new OrderByModel() + { + FieldName = item.Key, + OrderByType = item.Value + }; + orderByModels.Add(orderByModel); + } + List<Sys_User> users = sugarQueryable.Where(x => roleIds.Contains(x.RoleId) || x.UserId == App.User.UserId).OrderBy(orderByModels).ToPageList(options.Page, options.Rows, ref totalCount); + return new PageGridData<Sys_User> { Rows = users, Total = totalCount }; + } + public override WebResponseContent AddData(SaveModel saveModel) { string pwd = "123456"; diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs" index 5580db0..ba1c709 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs" @@ -18,7 +18,7 @@ /// 鍏ュ簱浠诲姟鐢宠鍒嗛厤璐т綅 /// </summary> /// <param name="taskNum">浠诲姟鍙�</param> - /// <param name="roadwayNo">宸烽亾鍙�</param> + /// <param name="roadwayNos">宸烽亾鍙�</param> /// <returns></returns> public WebResponseContent AssignRoadway(int taskNum, List<string> roadwayNos) { diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" index 36030d6..b7e9b28 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" @@ -112,12 +112,12 @@ { x.AGVArea = agvDescription; }); - string address = AppSettings.Get("WCSApiAddress"); - if (string.IsNullOrEmpty(address)) + string url = AppSettings.Get("WCS"); + if(string.IsNullOrEmpty(url)) { - return WebResponseContent.Instance.Error($"鏈壘鍒癢CSApi鍦板潃"); + throw new Exception($"鏈壘鍒癢CSAApi鍦板潃,璇锋鏌ラ厤缃枃浠�"); } - string response = HttpHelper.Post($"{address}/api/Task/ReceiveTask", taskDTOs.Serialize()); + string response = HttpHelper.Post($"{url}/api/Task/ReceiveTask", taskDTOs.Serialize()); return JsonConvert.DeserializeObject<WebResponseContent>(response) ?? WebResponseContent.Instance.Error("杩斿洖閿欒"); } @@ -135,12 +135,12 @@ { try { - string address = AppSettings.Get("WCSApiAddress"); - if (string.IsNullOrEmpty(address)) + string url = AppSettings.Get("WCS"); + if (string.IsNullOrEmpty(url)) { - return WebResponseContent.Instance.Error($"鏈壘鍒癢CSApi鍦板潃"); + throw new Exception($"鏈壘鍒癢CSAApi鍦板潃,璇锋鏌ラ厤缃枃浠�"); } - string response = HttpHelper.Post($"{address}/api/CTU_AGV/PutFinish?code=" + code); + string response = HttpHelper.Post($"{url}/api/CTU_AGV/PutFinish", code); return JsonConvert.DeserializeObject<WebResponseContent>(response) ?? WebResponseContent.Instance.Error("杩斿洖閿欒"); } @@ -352,7 +352,7 @@ { if (task.TaskType == TaskTypeEnum.MesOutbound.ObjToInt()) { - Dt_MesOutboundOrder mesOutboundOrder = _outboundService.MesOutboundOrderService.Repository.QueryFirst(x => x.Id == item.OrderDetailId); + Dt_MesOutboundOrder mesOutboundOrder = _outboundService.MesOutboundOrderService.Repository.QueryFirst(x => x.TaskNo == item.OrderNo); if (mesOutboundOrder != null) { mesOutboundOrder.OverOutQuantity = item.AssignQuantity; diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Completed.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Completed.cs" index 54f6266..d5025b0 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Completed.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Completed.cs" @@ -69,7 +69,13 @@ { x.AGVArea = agvDescription; }); - string response = HttpHelper.Post("http://127.0.0.1:9281/api/Task/ReceiveTask", taskDTOs.Serialize()); + + string url = AppSettings.Get("WCS"); + if (string.IsNullOrEmpty(url)) + { + throw new Exception($"鏈壘鍒癢CSAApi鍦板潃,璇锋鏌ラ厤缃枃浠�"); + } + string response = HttpHelper.Post($"{url}/api/Task/ReceiveTask", taskDTOs.Serialize()); return JsonConvert.DeserializeObject<WebResponseContent>(response) ?? WebResponseContent.Instance.Error("杩斿洖閿欒"); } @@ -79,9 +85,30 @@ } } - //public WebResponseContent UpdateTaskInfo(WCSTaskDTO taskDTO) - //{ - - //} + /// <summary> + /// 淇敼浠诲姟鐘舵�� + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + public WebResponseContent UpdateTaskInfo(WCSTaskDTO task) + { + try + { + Dt_Task wmsTask = BaseDal.QueryFirst(x=>x.TaskNum == task.TaskNum); + if (wmsTask != null) + { + wmsTask.TaskStatus = task.TaskState; + wmsTask.CurrentAddress = task.CurrentAddress; + wmsTask.NextAddress = task.NextAddress; + wmsTask.Dispatchertime = task.Dispatchertime; + BaseDal.UpdateData(wmsTask); + } + return WebResponseContent.Instance.OK(); + } + catch(Exception ex) + { + return WebResponseContent.Instance.Error(ex.Message); + } + } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/PalletCodeInfoController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/PalletCodeInfoController.cs" index 24276b1..3830023 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/PalletCodeInfoController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/PalletCodeInfoController.cs" @@ -14,7 +14,26 @@ public PalletCodeInfoController(IPalletCodeInfoService service) : base(service) { } - [HttpPost,Route("PrintStatusUp")] + + /// <summary> + /// + /// </summary> + /// <param name="warehouseId"></param> + /// <param name="count"></param> + /// <param name="palletTypeId"></param> + /// <returns></returns> + [HttpPost, Route("AddPalletCodeData")] + public WebResponseContent AddData(int warehouseId, int count, int palletTypeId) + { + return Service.AddData(warehouseId, count, palletTypeId); + } + + /// <summary> + /// + /// </summary> + /// <param name="printCode"></param> + /// <returns></returns> + [HttpPost, Route("PrintStatusUp")] public WebResponseContent PrintStatusUp(string printCode) { return Service.PrintStatusUp(printCode); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/WarehouseController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/WarehouseController.cs" index a6659dc..239218e 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/WarehouseController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/WarehouseController.cs" @@ -1,5 +1,6 @@ 锘縰sing Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; +using WIDESEA_Core; using WIDESEA_Core.BaseController; using WIDESEA_IBasicService; using WIDESEA_Model.Models; @@ -16,5 +17,15 @@ public WarehouseController(IWarehouseService service) : base(service) { } + + /// <summary> + /// 鏍规嵁鐢ㄦ埛鑾峰彇浠撳簱瀛楀吀 + /// </summary> + /// <returns></returns> + [HttpPost, HttpGet, Route("GetWarehouseDicByUser")] + public WebResponseContent GetWarehouseDicByUser() + { + return Service.GetWarehouseDicByUser(); + } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs" index 112ea5c..dd6e86c 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs" @@ -34,7 +34,7 @@ /// </summary> /// <param name="palletCode"></param> /// <returns></returns> - [HttpPost, HttpGet, Route("MaterialPick"), AllowAnonymous] + [HttpPost, HttpGet, Route("MaterialPick")] public WebResponseContent MaterialPick(string palletCode) { return Service.MaterialPick(palletCode); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs" index 4f09979..b5f0c14 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs" @@ -5,6 +5,7 @@ using WIDESEA_Core; using WIDESEA_Core.BaseController; using WIDESEA_DTO.Stock; +using WIDESEA_DTO.Task; using WIDESEA_ITaskInfoService; using WIDESEA_Model.Models; @@ -181,9 +182,20 @@ /// <param name="roadwayNos"></param> /// <returns></returns> [HttpPost, Route("AssignRoadway"), AllowAnonymous] - public WebResponseContent AssignRoadway(int taskNum, [FromBody]List<string> roadwayNos) + public WebResponseContent AssignRoadway(int taskNum, [FromBody] List<string> roadwayNos) { return Service.AssignRoadway(taskNum, roadwayNos); } + + /// <summary> + /// 淇敼浠诲姟鐘舵�� + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + [HttpPost, Route("UpdateTaskInfo"), AllowAnonymous] + public WebResponseContent UpdateTaskInfo([FromBody] WCSTaskDTO task) + { + return Service.UpdateTaskInfo(task); + } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs" index d6f884a..c8b83e9 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/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(); diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json" index 7b50cb5..0476243 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json" @@ -12,8 +12,8 @@ "MainDB": "DB_WIDESEA", //褰撳墠椤圭洰鐨勪富搴擄紝鎵�瀵瑰簲鐨勮繛鎺ュ瓧绗︿覆鐨凟nabled蹇呴』涓簍rue //杩炴帴瀛楃涓� //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=", - "ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWMS_HUAIAN;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", - //"ConnectionString": "Data Source=10.30.4.92;Initial Catalog=TestWMS_CTUAGV;User ID=sa;Password=duo123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", + "ConnectionString": "Data Source=.;Initial Catalog=WMS_TC;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", + //"ConnectionString": "Data Source=.;Initial Catalog=TestWMS_TC;User ID=sa;Password=duo123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", //鏃MS鏁版嵁搴撹繛鎺� "TeConnectionString": "Data Source=10.30.4.92;Initial Catalog=TeChuang;User ID=sa;Password=duo123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", //璺ㄥ煙 @@ -25,8 +25,7 @@ "IPs": "http://127.0.0.1:8080,http://localhost:8080,http://127.0.0.1:8081,http://localhost:8081" }, - "WCS": "http://localhost:9291/api/Task/", - "WCSApiAddress": "http://127.0.0.1:9291",//"http://127.0.0.1:9281",姝e紡鐜鍦板潃 + "WCS": "http://localhost:9291", "LogAopEnable": false, "PrintSql": true, //鎵撳嵃SQL璇彞 "ApiName": "WIDESEA", -- Gitblit v1.9.3