using Newtonsoft.Json;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Comm.LogInfo;
using WIDESEA_Common;
using WIDESEA_Entity.DomainModels;
using WIDESEA_Entity.ToAGV;
using WIDESEA_WMS.IRepositories;
namespace WIDESEA_WMS.Common
{
public partial class AGVServer
{
///
/// 向AGV请求
///
public static Respone RequestAGV(Idt_agvtaskRepository agvtaskRepository, dt_agvtask agv_task, string postJson, string IP)
{
var report = Request.RequestData(postJson, IP);
var respone = JsonConvert.DeserializeObject(report);
if (respone.Success)
{
if (agv_task.agv_taskstate != AGVTaskStateEnum.Complete.ToString())
agv_task.agv_taskstate = AGVTaskStateEnum.SendOut.ToString();
if (agv_task.agv_taskstate == AGVTaskStateEnum.Complete.ToString())
agv_task.agv_completeBeginTime = DateTime.Now;
else
agv_task.agv_realesstime = DateTime.Now;
agvtaskRepository.Update(agv_task, true);
WriteWMSLog.LogAdd(agv_task.agv_tasknum, "成功 ", "AGV", "WMS", postJson, report, "下发AGV任务", "SendAGVTask", respone.Msg);
}
else
{
if (agv_task.agv_remark != respone.Msg)
agv_task.agv_remark = respone.Msg;
agvtaskRepository.Update(agv_task, true);
WriteWMSLog.LogAdd(agv_task.agv_tasknum, "失败 ", "AGV", "WMS", postJson, report, "下发AGV任务", "SendAGVTask", respone.Msg);
}
return respone;
}
}
}