2024-11-22 调试通过
This commit is contained in:
parent
ad19053505
commit
585f0e256e
|
|
@ -71,6 +71,7 @@ public class SendWmsTaskStatus(AppWmsTaskDao wmsTaskDao, WmsBaseWebApi wmsWebApi
|
|||
return;
|
||||
}
|
||||
ConsoleLog.Error($"【异常】发送WMS[任务异常]失败,WMS返回异常,任务号:{wmsTask.TaskId},载具号:{wmsTask.VehicleNo},参考信息:{responseObj.Message}");
|
||||
return;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -249,6 +250,7 @@ public class SendWmsTaskStatus(AppWmsTaskDao wmsTaskDao, WmsBaseWebApi wmsWebApi
|
|||
return;
|
||||
}
|
||||
ConsoleLog.Error($"【异常】发送WMS[开始执行]失败,WMS返回异常,任务号:{wmsTask.TaskId},载具号:{wmsTask.VehicleNo},参考信息:{responseObj.Message}");
|
||||
return;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -309,6 +311,7 @@ public class SendWmsTaskStatus(AppWmsTaskDao wmsTaskDao, WmsBaseWebApi wmsWebApi
|
|||
return;
|
||||
}
|
||||
ConsoleLog.Error($"【异常】发送WMS[任务完成]失败,WMS返回异常,任务号:{wmsTask.TaskId},载具号:{wmsTask.VehicleNo},参考信息:{responseObj.Message}");
|
||||
return;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -350,6 +353,7 @@ public class SendWmsTaskStatus(AppWmsTaskDao wmsTaskDao, WmsBaseWebApi wmsWebApi
|
|||
return;
|
||||
}
|
||||
ConsoleLog.Error($"【异常】发送WMS[任务离开起始位置]失败,WMS返回异常,任务号:{wmsTask.TaskId},载具号:{wmsTask.VehicleNo},参考信息:{responseObj.Message}");
|
||||
return;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public class WmsTaskController(WmsTaskService wmsTaskService) : ControllerBase
|
|||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("setStackerTask")]
|
||||
public WmsApiResponse<List<GetStackerRequest>> GetStackerTask([FromBody] List<GetStackerRequest> request) => wmsTaskService.GetStackerTask(request);
|
||||
public WmsApiResponse<List<GetStackerRequest>> GetStackerTask([FromBody] GetStackerRequest request) => wmsTaskService.GetStackerTask(request);
|
||||
|
||||
/// <summary>
|
||||
/// Wms向Wcs请求修改任务状态
|
||||
|
|
|
|||
|
|
@ -4,11 +4,15 @@ using WcsMain.Constant.Enum.Stacker;
|
|||
using WcsMain.DataBase.Dao;
|
||||
using WcsMain.DataBase.TableEntity;
|
||||
using WcsMain.Constant.WcsAttribute.AutoFacAttribute;
|
||||
using WcsMain.ApiClient.WMS;
|
||||
using WcsMain.ApiClient.WMS.Dto;
|
||||
using WcsMain.Common;
|
||||
using WcsMain.Constant.ExtendMethod;
|
||||
|
||||
namespace WcsMain.ApiServe.Service.ContainerService;
|
||||
|
||||
[Service]
|
||||
public class ContainerService(AppWmsTaskDao wmsTaskDao, WCSTaskExecuteEvent taskExecuteEvent)
|
||||
public class ContainerService(AppWmsTaskDao wmsTaskDao, WCSTaskExecuteEvent taskExecuteEvent, WmsBaseWebApi wmsBaseWebApi)
|
||||
{
|
||||
/// <summary>
|
||||
/// 请求四向车任务
|
||||
|
|
@ -23,13 +27,35 @@ public class ContainerService(AppWmsTaskDao wmsTaskDao, WCSTaskExecuteEvent task
|
|||
return new() { Code = "400", Message = "缺少必须参数" };
|
||||
}
|
||||
List<AppWmsTask>? wmsTasks = wmsTaskDao.Select(new() { VehicleNo = request.PalleetNo, TaskStatus = (int)WmsTaskStatusEnum.arriveMid })?.OrderByDescending(o => o.CreateTime).ToList();
|
||||
if(wmsTasks == null)
|
||||
if (wmsTasks == null)
|
||||
{
|
||||
return new() { Code = "400", Message = "数据连接失败,请重试" };
|
||||
}
|
||||
if(wmsTasks.Count == 0)
|
||||
if (wmsTasks.Count == 0)
|
||||
{
|
||||
return new() { Code = "400", Message = "该载具暂无待执行的任务" };
|
||||
/* 请求WMS获取任务 */
|
||||
ApplyInRequest applyInRequest = new()
|
||||
{
|
||||
Point = request.FormCellNo,
|
||||
VehicleNo = request.PalleetNo,
|
||||
};
|
||||
var response = wmsBaseWebApi.HttpPost<ApplyInRequest, WmsResponse>(applyInRequest, CommonData.AppApiBaseInfos.GetAddress("ApplyEnterApiAddress") ?? "");
|
||||
if(response.IsSend && response.ResponseEntity != null && response.ResponseEntity.Code == 0)
|
||||
{
|
||||
int i = 0;
|
||||
while(i < 5)
|
||||
{
|
||||
i++;
|
||||
Thread.Sleep(1000);
|
||||
wmsTasks = wmsTaskDao.Select(new() { VehicleNo = request.PalleetNo, TaskStatus = (int)WmsTaskStatusEnum.create })?.OrderByDescending(o => o.CreateTime).ToList();
|
||||
if (wmsTasks == null || wmsTasks.Count < 1) continue;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(wmsTasks == default || wmsTasks.Count < 1)
|
||||
{
|
||||
return new() { Code = "400", Message = "无任务,请重试" };
|
||||
}
|
||||
AppWmsTask wmsTask = wmsTasks.First();
|
||||
/* 更新状态为前往终点 */
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ using WcsMain.Utils.Plugins;
|
|||
using WcsMain.Constant.WcsAttribute.AutoFacAttribute;
|
||||
using WcsMain.Constant.ExtendMethod;
|
||||
using WcsMain.Common.DataService;
|
||||
using WcsMain.DataBase.MixDao;
|
||||
|
||||
namespace WcsMain.ApiServe.Service.WmsService;
|
||||
|
||||
|
|
@ -27,70 +28,67 @@ public class WmsTaskService(WmsTaskAction wmsTaskAction, AppWmsTaskDao wmsTaskDa
|
|||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
public WmsApiResponse<List<GetStackerRequest>> GetStackerTask(List<GetStackerRequest> request)
|
||||
public WmsApiResponse<List<GetStackerRequest>> GetStackerTask(GetStackerRequest request)
|
||||
{
|
||||
if (request.Count < 1 || request.Count > 20) return WmsApiResponseFactory.RequestErr<List<GetStackerRequest>>(null, "请求的任务数量只能在 1 至 20 范围内");
|
||||
//if (request.Count < 1 || request.Count > 20) return WmsApiResponseFactory.RequestErr<List<GetStackerRequest>>(null, "请求的任务数量只能在 1 至 20 范围内");
|
||||
List<GetStackerRequest> errRequest = []; // 存放错误的请求
|
||||
/* 插入库存信息 */ // ---- 库存由WMS管理,数据库表也无需操作
|
||||
List<AppWmsTask> wmsTasks = [];
|
||||
foreach (var taskData in request)
|
||||
/* 检验传入的数据格式 */
|
||||
bool checkData = CheckData.CheckDataRules(request);
|
||||
if (!checkData)
|
||||
{
|
||||
/* 检验传入的数据格式 */
|
||||
bool checkData = CheckData.CheckDataRules(taskData);
|
||||
if (!checkData)
|
||||
{
|
||||
var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(taskData);
|
||||
errRequest.Add(errorRequest);
|
||||
}
|
||||
/* 检验起点和终点是否正常 */
|
||||
if(taskData.TaskType == (int)WmsTaskTypeEnum.moveTask)
|
||||
{
|
||||
var existOringin = CommonData.AppLocations.ExistWmsLocation(taskData.Origin);
|
||||
var existDestination = CommonData.AppLocations.ExistWmsLocation(taskData.Destination);
|
||||
if (!existOringin || !existDestination)
|
||||
{
|
||||
var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(taskData);
|
||||
errRequest.Add(errorRequest);
|
||||
}
|
||||
}
|
||||
else if(taskData.TaskType == (int)WmsTaskTypeEnum.inTask)
|
||||
{
|
||||
var existDestination = CommonData.AppLocations.ExistWmsLocation(taskData.Destination);
|
||||
if (!existDestination)
|
||||
{
|
||||
var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(taskData);
|
||||
errRequest.Add(errorRequest);
|
||||
}
|
||||
}
|
||||
else if(taskData.TaskType == (int)WmsTaskTypeEnum.outTask)
|
||||
{
|
||||
var existOringin = CommonData.AppLocations.ExistWmsLocation(taskData.Origin);
|
||||
if (!existOringin)
|
||||
{
|
||||
var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(taskData);
|
||||
errRequest.Add(errorRequest);
|
||||
}
|
||||
}
|
||||
/* 构造任务 */
|
||||
wmsTasks.Add(new AppWmsTask()
|
||||
{
|
||||
TaskId = taskData.TaskId,
|
||||
WcsId = dataBaseData.GetNewUUID2(),
|
||||
TaskType = taskData.TaskType,
|
||||
TaskStatus = (int)WmsTaskStatusEnum.create,
|
||||
Priority = taskData.Priority ?? -1,
|
||||
Origin = taskData.Origin,
|
||||
MidPoint = taskData.Midpoint,
|
||||
Destination = taskData.Destination,
|
||||
VehicleNo = taskData.VehicleNo,
|
||||
VehicleSize = taskData.VehicleSize ?? -1,
|
||||
Weight = taskData.Weight ?? -1,
|
||||
CreateTime = DateTime.Now,
|
||||
ModifyTime = DateTime.Now,
|
||||
CreatePerson = StaticString.WMS,
|
||||
});
|
||||
var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(request);
|
||||
errRequest.Add(errorRequest);
|
||||
}
|
||||
if(errRequest.Count > 0) // 如果有错误请求,则返回错误请求
|
||||
///* 检验起点和终点是否正常 */
|
||||
//if (request.TaskType == (int)WmsTaskTypeEnum.moveTask)
|
||||
//{
|
||||
// var existOringin = CommonData.AppLocations.ExistWmsLocation(request.Origin);
|
||||
// var existDestination = CommonData.AppLocations.ExistWmsLocation(request.Destination);
|
||||
// if (!existOringin || !existDestination)
|
||||
// {
|
||||
// var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(request);
|
||||
// errRequest.Add(errorRequest);
|
||||
// }
|
||||
//}
|
||||
//else if (request.TaskType == (int)WmsTaskTypeEnum.inTask)
|
||||
//{
|
||||
// var existDestination = CommonData.AppLocations.ExistWmsLocation(request.Destination);
|
||||
// if (!existDestination)
|
||||
// {
|
||||
// var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(request);
|
||||
// errRequest.Add(errorRequest);
|
||||
// }
|
||||
//}
|
||||
//else if (request.TaskType == (int)WmsTaskTypeEnum.outTask)
|
||||
//{
|
||||
// var existOringin = CommonData.AppLocations.ExistWmsLocation(request.Origin);
|
||||
// if (!existOringin)
|
||||
// {
|
||||
// var errorRequest = ObjectCopy.CopyProperties<GetStackerRequest, GetStackerRequest>(request);
|
||||
// errRequest.Add(errorRequest);
|
||||
// }
|
||||
//}
|
||||
/* 构造任务 */
|
||||
wmsTasks.Add(new AppWmsTask()
|
||||
{
|
||||
TaskId = request.TaskId,
|
||||
WcsId = dataBaseData.GetNewUUID2(),
|
||||
TaskType = request.TaskType,
|
||||
TaskStatus = (int)WmsTaskStatusEnum.create,
|
||||
Priority = request.Priority ?? -1,
|
||||
Origin = request.Origin,
|
||||
MidPoint = request.Midpoint,
|
||||
Destination = request.Destination,
|
||||
VehicleNo = request.VehicleNo,
|
||||
VehicleSize = request.VehicleSize ?? -1,
|
||||
Weight = request.Weight ?? -1,
|
||||
CreateTime = DateTime.Now,
|
||||
ModifyTime = DateTime.Now,
|
||||
CreatePerson = StaticString.WMS,
|
||||
});
|
||||
if (errRequest.Count > 0) // 如果有错误请求,则返回错误请求
|
||||
{
|
||||
return WmsApiResponseFactory.RequestErr(errRequest, "请求的任务数据存在异常");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -215,7 +215,9 @@ public class ExecuteWmsTask(AppWmsTaskDao wmsTaskDao, StackerConveyOperation sta
|
|||
if (liftInfo.LiftMode != 2) continue;
|
||||
}
|
||||
/* 获取这个站台的任务.没有占用任务即可重新使用 */
|
||||
List<AppWmsTask>? tasks = wmsTaskDao.Select(new() { MidPoint = liftInfo.Tag, TaskStatus = (int)WmsTaskStatusEnum.toMid });
|
||||
List<AppWmsTask> tasks = [];
|
||||
tasks.AddRange(wmsTaskDao.Select(new() { MidPoint = liftInfo.Tag!.Split(',')[0], TaskStatus = (int)WmsTaskStatusEnum.toMid }) ?? []);
|
||||
tasks.AddRange(wmsTaskDao.Select(new() { MidPoint = liftInfo.Tag!.Split(',')[1], TaskStatus = (int)WmsTaskStatusEnum.toMid }) ?? []);
|
||||
if (tasks == default || tasks.Count > 0) continue;
|
||||
string location = "";
|
||||
if (!string.IsNullOrEmpty(liftInfo.Tag))
|
||||
|
|
@ -253,7 +255,9 @@ public class ExecuteWmsTask(AppWmsTaskDao wmsTaskDao, StackerConveyOperation sta
|
|||
if (liftInfo.LiftMode == 2) continue;
|
||||
}
|
||||
/* 获取这个站台的任务.并计数 */
|
||||
List<AppWmsTask>? tasks = wmsTaskDao.Select(new() { MidPoint = liftInfo.Tag, TaskStatus = (int)WmsTaskStatusEnum.toMid });
|
||||
List<AppWmsTask> tasks = [];
|
||||
tasks.AddRange(wmsTaskDao.Select(new() { MidPoint = liftInfo.Tag!.Split(',')[0], TaskStatus = (int)WmsTaskStatusEnum.toMid }) ?? []);
|
||||
tasks.AddRange(wmsTaskDao.Select(new() { MidPoint = liftInfo.Tag!.Split(',')[1], TaskStatus = (int)WmsTaskStatusEnum.toMid }) ?? []);
|
||||
if (tasks == default) continue;
|
||||
string location = "";
|
||||
if(!string.IsNullOrEmpty(liftInfo.Tag))
|
||||
|
|
|
|||
|
|
@ -88,6 +88,7 @@ public class AppWmsTaskDao
|
|||
.WhereIF(appWmsTask.TaskType != null, w => w.TaskType == appWmsTask.TaskType)
|
||||
.WhereIF(appWmsTask.TaskStatus != null, w => w.TaskStatus == appWmsTask.TaskStatus)
|
||||
.WhereIF(!string.IsNullOrEmpty(appWmsTask.Origin), w => w.Origin == appWmsTask.Origin)
|
||||
.WhereIF(!string.IsNullOrEmpty(appWmsTask.MidPoint), w => w.MidPoint == appWmsTask.MidPoint)
|
||||
.WhereIF(!string.IsNullOrEmpty(appWmsTask.Destination),
|
||||
w => w.Destination == appWmsTask.Destination)
|
||||
.WhereIF(!string.IsNullOrEmpty(appWmsTask.VehicleNo), w => w.VehicleNo == appWmsTask.VehicleNo)
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
|
|||
<Project>
|
||||
<PropertyGroup>
|
||||
<_PublishTargetUrl>F:\A开发项目\A菲达宝开项目\2024-08_上汽试制仓\应用程序\WcsService\WcsMain\bin\Release\net8.0\publish\</_PublishTargetUrl>
|
||||
<History>True|2024-11-20T09:08:23.7162943Z||;True|2024-11-20T16:54:01.3629057+08:00||;True|2024-11-20T16:40:49.6894280+08:00||;True|2024-11-20T16:37:47.3670812+08:00||;False|2024-11-20T16:37:04.0777763+08:00||;True|2024-11-20T16:25:26.3145915+08:00||;True|2024-11-20T16:10:13.7558526+08:00||;True|2024-11-20T16:07:37.8681228+08:00||;True|2024-11-20T15:55:28.7196074+08:00||;True|2024-11-20T15:52:40.6653904+08:00||;True|2024-11-20T15:30:21.5138564+08:00||;True|2024-11-20T15:24:40.6286995+08:00||;True|2024-11-18T21:16:47.1821173+08:00||;True|2024-11-18T21:14:40.1209255+08:00||;True|2024-11-18T21:11:32.0010536+08:00||;True|2024-11-18T21:10:56.2142485+08:00||;True|2024-11-18T20:59:50.6846634+08:00||;True|2024-11-16T14:31:14.2653894+08:00||;True|2024-11-16T14:16:17.4271635+08:00||;True|2024-11-16T14:16:08.1284507+08:00||;True|2024-11-16T14:08:02.8639352+08:00||;True|2024-11-16T14:07:06.6785776+08:00||;True|2024-11-16T13:14:33.8282571+08:00||;True|2024-11-16T13:14:09.9233077+08:00||;True|2024-11-16T12:49:45.5891890+08:00||;True|2024-11-16T12:19:05.5997384+08:00||;True|2024-11-16T11:49:43.2660430+08:00||;True|2024-11-16T11:49:12.7318514+08:00||;True|2024-11-16T11:43:41.8128931+08:00||;True|2024-11-16T10:39:25.1387254+08:00||;True|2024-11-16T10:24:19.4879139+08:00||;True|2024-11-15T17:47:10.4630939+08:00||;True|2024-11-15T17:42:25.6985733+08:00||;True|2024-11-15T17:39:43.9409305+08:00||;True|2024-11-15T17:26:18.2886475+08:00||;True|2024-11-15T17:23:05.3112513+08:00||;True|2024-11-15T17:16:40.2960771+08:00||;True|2024-11-15T17:14:12.3416383+08:00||;True|2024-11-15T17:09:43.2642034+08:00||;True|2024-11-15T17:05:04.4694932+08:00||;False|2024-11-15T17:04:34.2335564+08:00||;False|2024-11-15T17:04:12.5281280+08:00||;True|2024-11-15T17:01:49.4325408+08:00||;False|2024-11-15T17:01:29.1872712+08:00||;True|2024-11-15T16:00:18.8617729+08:00||;True|2024-11-15T15:56:13.9285180+08:00||;True|2024-11-15T15:50:53.6121456+08:00||;True|2024-11-15T15:17:41.0508047+08:00||;True|2024-11-15T13:50:06.8021767+08:00||;True|2024-11-15T13:17:48.2695650+08:00||;True|2023-12-21T15:04:28.6290873+08:00||;True|2023-12-21T14:59:03.4454135+08:00||;True|2023-12-21T14:51:08.6690406+08:00||;True|2023-12-21T14:26:42.6801144+08:00||;False|2023-12-21T14:26:14.3256943+08:00||;True|2023-12-21T14:13:42.5511801+08:00||;True|2023-12-21T13:56:38.5871005+08:00||;True|2023-12-19T12:19:57.9900187+08:00||;True|2023-12-19T11:53:33.6930379+08:00||;True|2023-12-17T12:51:32.6510827+08:00||;False|2023-12-17T12:49:32.9022541+08:00||;</History>
|
||||
<History>True|2024-11-21T08:33:23.0082958Z||;True|2024-11-21T16:21:46.1852307+08:00||;True|2024-11-21T13:56:06.5543719+08:00||;True|2024-11-21T11:41:50.4634584+08:00||;True|2024-11-21T11:30:54.9747290+08:00||;False|2024-11-21T11:30:18.2738127+08:00||;True|2024-11-21T10:45:42.5524544+08:00||;True|2024-11-20T17:08:23.7162943+08:00||;True|2024-11-20T16:54:01.3629057+08:00||;True|2024-11-20T16:40:49.6894280+08:00||;True|2024-11-20T16:37:47.3670812+08:00||;False|2024-11-20T16:37:04.0777763+08:00||;True|2024-11-20T16:25:26.3145915+08:00||;True|2024-11-20T16:10:13.7558526+08:00||;True|2024-11-20T16:07:37.8681228+08:00||;True|2024-11-20T15:55:28.7196074+08:00||;True|2024-11-20T15:52:40.6653904+08:00||;True|2024-11-20T15:30:21.5138564+08:00||;True|2024-11-20T15:24:40.6286995+08:00||;True|2024-11-18T21:16:47.1821173+08:00||;True|2024-11-18T21:14:40.1209255+08:00||;True|2024-11-18T21:11:32.0010536+08:00||;True|2024-11-18T21:10:56.2142485+08:00||;True|2024-11-18T20:59:50.6846634+08:00||;True|2024-11-16T14:31:14.2653894+08:00||;True|2024-11-16T14:16:17.4271635+08:00||;True|2024-11-16T14:16:08.1284507+08:00||;True|2024-11-16T14:08:02.8639352+08:00||;True|2024-11-16T14:07:06.6785776+08:00||;True|2024-11-16T13:14:33.8282571+08:00||;True|2024-11-16T13:14:09.9233077+08:00||;True|2024-11-16T12:49:45.5891890+08:00||;True|2024-11-16T12:19:05.5997384+08:00||;True|2024-11-16T11:49:43.2660430+08:00||;True|2024-11-16T11:49:12.7318514+08:00||;True|2024-11-16T11:43:41.8128931+08:00||;True|2024-11-16T10:39:25.1387254+08:00||;True|2024-11-16T10:24:19.4879139+08:00||;True|2024-11-15T17:47:10.4630939+08:00||;True|2024-11-15T17:42:25.6985733+08:00||;True|2024-11-15T17:39:43.9409305+08:00||;True|2024-11-15T17:26:18.2886475+08:00||;True|2024-11-15T17:23:05.3112513+08:00||;True|2024-11-15T17:16:40.2960771+08:00||;True|2024-11-15T17:14:12.3416383+08:00||;True|2024-11-15T17:09:43.2642034+08:00||;True|2024-11-15T17:05:04.4694932+08:00||;False|2024-11-15T17:04:34.2335564+08:00||;False|2024-11-15T17:04:12.5281280+08:00||;True|2024-11-15T17:01:49.4325408+08:00||;False|2024-11-15T17:01:29.1872712+08:00||;True|2024-11-15T16:00:18.8617729+08:00||;True|2024-11-15T15:56:13.9285180+08:00||;True|2024-11-15T15:50:53.6121456+08:00||;True|2024-11-15T15:17:41.0508047+08:00||;True|2024-11-15T13:50:06.8021767+08:00||;True|2024-11-15T13:17:48.2695650+08:00||;True|2023-12-21T15:04:28.6290873+08:00||;True|2023-12-21T14:59:03.4454135+08:00||;True|2023-12-21T14:51:08.6690406+08:00||;True|2023-12-21T14:26:42.6801144+08:00||;False|2023-12-21T14:26:14.3256943+08:00||;True|2023-12-21T14:13:42.5511801+08:00||;True|2023-12-21T13:56:38.5871005+08:00||;True|2023-12-19T12:19:57.9900187+08:00||;True|2023-12-19T11:53:33.6930379+08:00||;True|2023-12-17T12:51:32.6510827+08:00||;False|2023-12-17T12:49:32.9022541+08:00||;</History>
|
||||
<LastFailureDetails />
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
Loading…
Reference in New Issue
Block a user