diff --git a/ZR.Admin.WebApi/Controllers/mes/wms/WmAGVController.cs b/ZR.Admin.WebApi/Controllers/mes/wms/WmAGVController.cs index fcb4f05e..92232747 100644 --- a/ZR.Admin.WebApi/Controllers/mes/wms/WmAGVController.cs +++ b/ZR.Admin.WebApi/Controllers/mes/wms/WmAGVController.cs @@ -6,6 +6,7 @@ using ZR.Model.MES.wms.Dto; using ZR.Service.Business.IBusinessService; using ZR.Service.mes.wms; using ZR.Service.mes.wms.IService; +using static System.Runtime.InteropServices.JavaScript.JSType; namespace ZR.Admin.WebApi.Controllers @@ -59,7 +60,64 @@ namespace ZR.Admin.WebApi.Controllers } + /// + /// 3.新增agv小车任务 + /// + /// + /// + [HttpPost("add_task")] + public IActionResult AddAGVTask(AgvTask task) + { + string msg = null; + if(task == null) + { + return SUCCESS(null); + } + task.ToCreate(); + int result= _WmAGVService.AddAGVTask(task); + if(result == 0) + { + msg = "插入失败"; + }else if(result == 1) + { + msg = "新增成功"; + } + else if (result == -1) + { + msg = "工单号为空"; + } + return ToResponse(new ApiResult(200, msg, result)); + } + + /// + /// 4.删除AGV小车任务 + /// + /// + /// + [HttpGet("deleteTask")] + public IActionResult DeleteTask(string taskId) + { + + if(string.IsNullOrEmpty(taskId)) + { + return SUCCESS(null); + } + + int data = _WmAGVService.DeleteTask(taskId); + return SUCCESS(data); + } + + /// + /// 5. 获取agv位置 + /// + /// + /// + [HttpGet("get_agv_position")] + public IActionResult GetTask(string taskId) + { + + } } } diff --git a/ZR.Model/MES/wms/Dto/AGVtaskDto.cs b/ZR.Model/MES/wms/Dto/AGVtaskDto.cs index e6b5bd69..5bdae9dd 100644 --- a/ZR.Model/MES/wms/Dto/AGVtaskDto.cs +++ b/ZR.Model/MES/wms/Dto/AGVtaskDto.cs @@ -1,4 +1,5 @@ -using System; +using MiniExcelLibs.Attributes; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -6,6 +7,11 @@ using System.Threading.Tasks; namespace ZR.Model.MES.wms.Dto { + + public class QueryAGVPosition + { + + } public class AGVtaskDto { @@ -27,10 +33,15 @@ namespace ZR.Model.MES.wms.Dto public class AGVWorkorderDto { /// - /// 工单id + /// 工单id(内部) /// public string Id { get; set; } + /// + /// 客户工单号 + /// + public string ClientWorkorder { get; set; } + /// /// 毛坯号 /// @@ -68,5 +79,9 @@ namespace ZR.Model.MES.wms.Dto + + + + } } diff --git a/ZR.Service/mes/wms/IService/IWmAGVService.cs b/ZR.Service/mes/wms/IService/IWmAGVService.cs index 836effa8..5c4f0efb 100644 --- a/ZR.Service/mes/wms/IService/IWmAGVService.cs +++ b/ZR.Service/mes/wms/IService/IWmAGVService.cs @@ -14,5 +14,8 @@ namespace ZR.Service.mes.wms.IService List QueryAGVTask(string workorder_id); + int AddAGVTask(AgvTask task); + + int DeleteTask(string taskId); } } diff --git a/ZR.Service/mes/wms/WmAGVService.cs b/ZR.Service/mes/wms/WmAGVService.cs index 4527833f..72a0e25b 100644 --- a/ZR.Service/mes/wms/WmAGVService.cs +++ b/ZR.Service/mes/wms/WmAGVService.cs @@ -21,6 +21,8 @@ namespace ZR.Service.Business [AppService(ServiceType = typeof(IWmAGVService), ServiceLifetime = LifeTime.Transient)] public class WmAGVService : BaseService, IWmAGVService { + + /// /// 1.获取工单列表 /// @@ -35,6 +37,7 @@ namespace ZR.Service.Business .AndIF(param.day > 0, it => it.Date == param.day); var response = Context.Queryable() + .Where(it=>it.Remark3=="是") .Where(predicate.ToExpression()).ToList(); foreach (var item in response) { @@ -42,6 +45,8 @@ namespace ZR.Service.Business } return aGVWorkorderDtos; } + + /// /// 2.获取当前工单下的所有AGV小车任务 /// @@ -52,5 +57,57 @@ namespace ZR.Service.Business { return Context.Queryable().Where(it => it.FkWorkorderId == workorder_id).OrderByDescending(it=>it.Sort).ToList(); } + + + + /// + /// 3.新增AGV小车任务 + /// + /// + /// + /// + public int AddAGVTask(AgvTask task) + { + int result = 0; + //TODO 1 判断agv小车task是否可以新增 + if(string.IsNullOrEmpty(task.FkWorkorderId)) + { + return -1; + } + ProWorkorder_v2 workorder = Context.Queryable() + .Where(it => it.Id == task.FkWorkorderId) + .First(); + + int require_num= workorder.PreviousNumber; + int all_require_num=Context.Queryable().Where(it => it.FkWorkorderId == workorder.Id).Sum(it => it.Number)??0; + + if(require_num>all_require_num) + { + task.Id = SnowFlakeSingle.Instance.NextId().ToString(); + result= Context.Insertable(task).ExecuteCommand(); + } + + + return result; + } + + + /// + /// 4.删除AGV小车任务 + /// + /// + /// + /// + public int DeleteTask(string taskId) + { + return Context.Deleteable().Where(it=>it.Id==taskId).ExecuteCommand(); + + } + + + + + + } }