using Rhea.Common;
|
using Microsoft.AspNetCore.Mvc;
|
using System;
|
using Tiger.IBusiness;
|
using System.Linq;
|
using System.Threading.Tasks;
|
using Tiger.Api.DbCache;
|
|
namespace Tiger.Api.Controllers.Base
|
{
|
public partial class CacheController : ControllerBase
|
{
|
/// <summary>
|
/// GetWorkBatch(OrderOrBatch)
|
/// 根据工单号或者工单批次号返回工单批次缓存对象列表
|
/// </summary>
|
/// <param name="OrderOrBatch"></param>
|
/// <returns></returns>
|
[HttpGet("WorkBatch/Get")]
|
public async Task<IActionResult> GetWorkBatch(string? OrderOrBatch)
|
{
|
var wbs = Cache.WorkBatch.GetWoBatchDic().Where(q => OrderOrBatch.IsNullOrEmpty() || q.Value.WO?.ORDER_NO == OrderOrBatch || q.Value.Batch?.BATCH_NO == OrderOrBatch).Select(q => q.Value).ToList();
|
return Ok(wbs);
|
}
|
|
/// <summary>
|
/// AddWo(WorkOrder)
|
/// 根据工单号,增加一个工单对象到工单批次字典中
|
/// </summary>
|
/// <param name="WorkOrder"></param>
|
/// <returns></returns>
|
[HttpGet("WorkBatch/AddWo")]
|
public async Task<IActionResult> AddWo(string WorkOrder)
|
{
|
var wb = Cache.WorkBatch.AddWo(WorkOrder);
|
return Ok(wb);
|
}
|
|
/// <summary>
|
/// AddBatch(WorkOrder, LineCode)
|
/// 根据工单号和产线,增加一个工单批次对象到工单批次字典中
|
/// </summary>
|
/// <param name="WorkOrder"></param>
|
/// <param name="LineCode"></param>
|
/// <returns></returns>
|
[HttpGet("WorkBatch/AddBatch")]
|
public async Task<IActionResult> AddBatch(string? WorkOrder, string? LineCode)
|
{
|
var wb = Cache.WorkBatch.AddBatch(WorkOrder, LineCode);
|
return Ok(wb);
|
}
|
|
/// <summary>
|
/// RemoveWo(WorkOrder)
|
/// 从工单批次字典中删除一个工单的所有批次对象
|
/// </summary>
|
/// <param name="WorkOrder"></param>
|
/// <returns></returns>
|
[HttpGet("WorkBatch/RemoveWo")]
|
public async Task<IActionResult> RemoveWo(string? WorkOrder)
|
{
|
var result = Cache.WorkBatch.RemoveWo(WorkOrder);
|
return Ok(result);
|
}
|
|
/// <summary>
|
/// RemoveBatch(BatchNo)
|
/// 从工单批次字典中删除一个工单批次对象
|
/// </summary>
|
/// <param name="BatchNo"></param>
|
/// <returns></returns>
|
[HttpGet("WorkBatch/RemoveBatch")]
|
public async Task<IActionResult> RemoveBatch(string? BatchNo)
|
{
|
var result = Cache.WorkBatch.RemoveBatch(BatchNo);
|
return Ok(result);
|
}
|
|
/// <summary>
|
/// Update(BatchNo)
|
/// 从工单批次字典中删除一个工单批次对象
|
/// </summary>
|
/// <param name="BatchNo"></param>
|
/// <returns></returns>
|
[HttpGet("WorkBatch/Update")]
|
public async Task<IActionResult> UpdateWorkBatch(string? BatchNo)
|
{
|
var wb = Cache.WorkBatch.GetWoBatchDic().Where(q => q.Value.Batch?.BATCH_NO == (BatchNo ?? "")).FirstOrDefault().Value;
|
if (!wb.IsNullOrEmpty())
|
{
|
wb.Update(true);
|
}
|
return Ok(wb);
|
}
|
}
|
}
|