dengjunjie
2025-03-12 f43b7df8400f4fcffc9f19dca0888d61e2b33d5f
ÏîÄ¿´úÂë/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs
@@ -3,6 +3,7 @@
using Microsoft.AspNetCore.Mvc;
using WIDESEA_Core;
using WIDESEA_Core.BaseController;
using WIDESEA_Core.Helper;
using WIDESEA_DTO.Inbound;
using WIDESEA_IInboundService;
using WIDESEA_IOutboundService;
@@ -19,11 +20,93 @@
        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>
        /// ä¸‹è½½PDA
        /// </summary>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("DownLoadApp"), AllowAnonymous]
        public virtual ActionResult DownLoadApp()
        {
            string path = $"{AppDomain.CurrentDomain.BaseDirectory}Upload/App/";
            if (!Directory.Exists(path)) Directory.CreateDirectory(path);
            path += "WMS-PDA.apk";
            if (System.IO.File.Exists(path))
            {
                byte[] fileBytes = System.IO.File.ReadAllBytes(path);
                return File(
                        fileBytes,
                        System.Net.Mime.MediaTypeNames.Application.Octet,
                        System.IO.Path.GetFileName(path)
                    );
            }
            else
            {
                return Json(WebResponseContent.Instance.Error($"未找到安装包"));
            }
        }
        /// <summary>
        /// ä¸Šä¼ PDA
        /// </summary>
        /// <param name="fileInput"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("UploadApp"), AllowAnonymous]
        [Consumes("multipart/form-data")]
        public WebResponseContent UploadApp(IEnumerable<IFormFile> fileInput)
        {
            try
            {
                List<IFormFile> files = fileInput.ToList();
                if (files == null || files.Count() == 0)
                    return new WebResponseContent { Status = true, Message = "请选择上传的文件" };
                IFormFile formFile = files[0];
                string dicPath = $"{AppDomain.CurrentDomain.BaseDirectory}Upload/App/";
                if (!Directory.Exists(dicPath)) Directory.CreateDirectory(dicPath);
                string path = $"{dicPath}WMS-PDA{DateTime.Now:yyyyMMddhhmmss}.apk";
                dicPath = $"{dicPath}WMS-PDA.apk";
                if (System.IO.File.Exists(dicPath))
                    System.IO.File.Move(dicPath, path);
                using (var stream = new FileStream(dicPath, FileMode.Create))
                {
                    formFile.CopyTo(stream);
                }
                return new WebResponseContent { Status = true, Message = "文件上传成功" };
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// PDA版本
        /// </summary>
        /// <param name="version"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("GetPDAVersion"), AllowAnonymous]
        public WebResponseContent GetPDAVersion(string version)
        {
            try
            {
                string PDAVersion = AppSettings.Configuration[nameof(PDAVersion)];
                if (Convert.ToInt32(PDAVersion) > Convert.ToInt32(version))
                    return WebResponseContent.Instance.OK(data: true);
                else return WebResponseContent.Instance.OK(data: false);
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        [HttpPost, Route("CallMateriel")]
@@ -44,6 +127,34 @@
            return _inboundService.InbounOrderService.MaterielGroup(materielGroupDTO);
        }
        [HttpPost, Route("PdaAddStockInfo")]
        public WebResponseContent PdaAddStockInfo([FromBody] PdaMaterielGroupDTO materielGroupDTO)
        {
            return _inboundService.InbounOrderService.PdaAddStockInfo(materielGroupDTO);
        }
        /// <summary>
        /// ç©ºæ‰˜å…¥åº“
        /// </summary>
        /// <param name="materielGroupDTO"></param>
        /// <returns></returns>
        [HttpPost, Route("InEmpty")]
        public WebResponseContent InEmpty(string barcode)
        {
            return _inboundService.InbounOrderService.PdaAddEmptyStockInfo(barcode);
        }
        /// <summary>
        /// ç©ºæ‰˜å‡ºåº“
        /// </summary>
        /// <param name="materielGroupDTO"></param>
        /// <returns></returns>
        [HttpPost, Route("OutEmpty")]
        public WebResponseContent OutEmpty()
        {
            return _outboundService.OutboundOrderService.PdaOutEmpty();
        }
        [HttpPost, Route("QueryOrderInfo")]
        public WebResponseContent QueryOrderInfo(int pageNo, string orderNo)
        {