using Microsoft.AspNetCore.Authorization;
|
using Microsoft.AspNetCore.Http;
|
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;
|
using WIDESEA_ITaskInfoService;
|
using System.IO;
|
using WIDESEA_Model.Models;
|
using System;
|
using System.Net;
|
|
namespace WIDESEA_WMSServer.Controllers
|
{
|
[Route("api/PDA")]
|
[Authorize, ApiController]
|
public class PDAController : Controller
|
{
|
private readonly IInboundService _inboundService;
|
private readonly IOutboundService _outboundService;
|
private readonly ITaskService _taskService;
|
|
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(string endPoint)
|
{
|
return _taskService.CallMateriel(endPoint);
|
}
|
/// <summary>
|
/// 搬运
|
/// </summary>
|
/// <param name="startPoint"></param>
|
/// <returns></returns>
|
[HttpPost, Route("MaterielCarry"), AllowAnonymous]
|
public WebResponseContent MaterielCarry(string startPoint)
|
{
|
return _taskService.MaterielCarry(startPoint);
|
}
|
|
[HttpPost, Route("MaterielGroup")]
|
public WebResponseContent MaterielGroup([FromBody] SaveModel saveModel)
|
{
|
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 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"];
|
if (Convert.ToInt32(versionPDA) > 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, 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));
|
}
|
}
|
}
|