From 4f39dcc195f28fa275fc2d065fbf1bf6a46c21b7 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 17 六月 2025 00:41:18 +0800 Subject: [PATCH] 优化出入库逻辑 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs | 132 ++++++++++++++++++++++++++++++++++--------- 1 files changed, 104 insertions(+), 28 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs" index 3e3820d..95d4feb 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs" @@ -8,7 +8,10 @@ using WIDESEA_IInboundService; using WIDESEA_IOutboundService; using WIDESEA_ITaskInfoService; +using System.IO; using WIDESEA_Model.Models; +using System; +using System.Net; namespace WIDESEA_WMSServer.Controllers { @@ -20,50 +23,121 @@ private readonly IOutboundService _outboundService; private readonly ITaskService _taskService; - public PDAController(ITaskService taskService, IInboundService inboundService,IOutboundService outboundService) + public PDAController(ITaskService taskService, IInboundService inboundService, IOutboundService outboundService) { _inboundService = inboundService; _outboundService = outboundService; _taskService = taskService; } - + /// <summary> + /// 缁戝畾璐т綅 + /// </summary> + /// <param name="qty"></param> + /// <param name="point"></param> + /// <returns></returns> + [HttpPost, Route("Bind"), AllowAnonymous] + public WebResponseContent Bind(string qty, string point) + { + return _taskService.Bind(qty, point); + } + /// <summary> + /// 閲婃斁缂撳瓨鐐� + /// </summary> + /// <param name="point"></param> + /// <returns></returns> + [HttpPost, Route("AcrossFloorCallMat"), AllowAnonymous] + public WebResponseContent AcrossFloorCallMat(string point) + { + return _taskService.AcrossFloorCallMat(point); + } + /// <summary> + /// 鍙枡 + /// </summary> + /// <param name="endPoint"></param> + /// <returns></returns> [HttpPost, Route("CallMateriel"), AllowAnonymous] - public WebResponseContent CallMateriel([FromBody] string endPoint) + public WebResponseContent CallMateriel(string endPoint) { return _taskService.CallMateriel(endPoint); } - + /// <summary> + /// 鎼繍 + /// </summary> + /// <param name="startPoint"></param> + /// <returns></returns> [HttpPost, Route("MaterielCarry"), AllowAnonymous] - public WebResponseContent MaterielCarry([FromBody] string startPoint) + public WebResponseContent MaterielCarry(string startPoint) { return _taskService.MaterielCarry(startPoint); } [HttpPost, Route("MaterielGroup")] - public WebResponseContent MaterielGroup([FromBody] MaterielGroupDTO materielGroupDTO) + public WebResponseContent MaterielGroup([FromBody] SaveModel saveModel) { - return _inboundService.InbounOrderService.MaterielGroup(materielGroupDTO); + return _inboundService.InbounOrderService.MaterielGroup(saveModel); } - + /// <summary> + /// 鏌ヨ鍏ュ簱鍗曡鎯� + /// </summary> + /// <param name="pageNo"></param> + /// <param name="orderNo"></param> + /// <returns></returns> + [HttpPost, Route("QueryOrderDetailInfo")] + public WebResponseContent QueryOrderDetailInfo(int pageNo, string orderNo) + { + return _inboundService.InbounOrderService.QueryOrderDetailInfo(pageNo, orderNo); + } + /// <summary> + /// 缁勭洏 + /// </summary> + /// <param name="materielGroupDTO"></param> + /// <returns></returns> + //[HttpPost, Route("MaterielGroup")] + //public WebResponseContent MaterielGroup([FromBody] MaterielGroupDTO materielGroupDTO) + //{ + // return _inboundService.InbounOrderService.MaterielGroup(materielGroupDTO); + //} + /// <summary> + /// 鏌ヨ鍏ュ簱鍗� + /// </summary> + /// <param name="pageNo"></param> + /// <param name="orderNo"></param> + /// <returns></returns> [HttpPost, Route("QueryOrderInfo")] public WebResponseContent QueryOrderInfo(int pageNo, string orderNo) { return _inboundService.InbounOrderService.QueryOrderInfo(pageNo, orderNo); } - //[HttpPost, HttpGet, Route("UploadApp"), AllowAnonymous] - //public WebResponseContent UploadApp(IEnumerable<IFormFile> fileInput) - //{ - - // //return PDAOperate.UploadApp(Request.Form.Files.ToList()); - //} + [HttpPost, HttpGet, Route("UploadApp"), AllowAnonymous] + public async Task<WebResponseContent> UploadApk(IEnumerable<IFormFile> fileInput) + { + // 妫�鏌ユ槸鍚︽湁鏂囦欢涓婁紶 + if (fileInput == null || !fileInput.Any()) + { + return WebResponseContent.Instance.Error("鏂囦欢鏈笂浼�"); + } + + var formFile = fileInput.First(); + var uploadFolder = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "Upload"); + Directory.CreateDirectory(uploadFolder); + + var fileName = $"WMS-PDA.apk"; + var filePath = Path.Combine(uploadFolder, fileName); + + using (var stream = new FileStream(filePath, FileMode.Create)) + { + await formFile.CopyToAsync(stream); + } + return WebResponseContent.Instance.OK("鏂囦欢涓婁紶鎴愬姛"); ; + } [HttpPost, HttpGet, Route("GetPDAVersion"), AllowAnonymous] public WebResponseContent GetPDAVersion(string version) { try { - string versionPDA = AppSettings.Configuration["PDAVersion"]; + string versionPDA = AppSettings.Configuration["PDAVersion"]; if (Convert.ToInt32(versionPDA) > Convert.ToInt32(version)) return WebResponseContent.Instance.OK(data: true); else return WebResponseContent.Instance.OK(data: false); @@ -74,18 +148,20 @@ } } - //[HttpPost, HttpGet, Route("DownLoadApp"), AllowAnonymous] - //public virtual ActionResult DownLoadApp() - //{ - // string path = $"Upload/App/".MapPath(); - // if (!Directory.Exists(path)) Directory.CreateDirectory(path); - // path += "WMS-PDA.apk"; - // byte[] fileBytes = System.IO.File.ReadAllBytes(path); - // return File( - // fileBytes, - // System.Net.Mime.MediaTypeNames.Application.Octet, - // System.IO.Path.GetFileName(path) - // ); - //} + [HttpPost, HttpGet, Route("DownLoadApp"), AllowAnonymous] + public virtual ActionResult DownLoadApp() + { + var filename = "WMS-PDA.apk"; + var filePath = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/Upload", filename); + + var memory = new MemoryStream(); + using (var stream = new FileStream(filePath, FileMode.Open)) + { + stream.CopyTo(memory); + } + memory.Position = 0; + var ext = Path.GetExtension(filePath).ToLowerInvariant(); + return File(memory, new Dictionary<string, string> { { ".apk", "application/vnd.android.package-archive" } }[ext], Path.GetFileName(filePath)); + } } } -- Gitblit v1.9.3