工单排产
This commit is contained in:
parent
900582f9bd
commit
8f16fd10d1
@ -38,5 +38,41 @@ namespace DOAN.Admin.WebApi.Controllers
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取工序
|
||||
/// </summary>
|
||||
/// <param name="WorkRouteID">工一路线id</param>
|
||||
/// <returns>工艺路线绑定的工序列表</returns>
|
||||
[HttpGet("get_work_process")]
|
||||
public IActionResult GetworkProcess(int WorkRouteID)
|
||||
{
|
||||
var response = _ProWorkorderSchedule.GetworkProcess(WorkRouteID);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取工位
|
||||
/// </summary>
|
||||
/// <param name="WorkRouteID">工序id</param>
|
||||
/// <returns>工序绑定的工位列表</returns>
|
||||
[HttpGet("get_work_station")]
|
||||
public IActionResult GetworkStation(int WorkProcessID)
|
||||
{
|
||||
var response = _ProWorkorderSchedule.GetworkStation(WorkProcessID);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取设备
|
||||
/// </summary>
|
||||
/// <param name="WorkRouteID">工序id</param>
|
||||
/// <returns>工序绑定的工位列表</returns>
|
||||
[HttpGet("get_work_device")]
|
||||
public IActionResult GetWorkDevice(int WorkStationID)
|
||||
{
|
||||
var response = _ProWorkorderSchedule.GetWorkDevice(WorkStationID);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -124,6 +124,9 @@ namespace DOAN.Model.MES.dev.Dto
|
||||
[ExcelColumnName("任务执行——结束时间")]
|
||||
public DateTime? EndTime { get; set; }
|
||||
|
||||
//耗时
|
||||
public double ConsumeTime { get; set; }
|
||||
|
||||
[ExcelColumn(Name = "状态")]
|
||||
[ExcelColumnName("状态")]
|
||||
public int? Status { get; set; }
|
||||
|
||||
@ -56,6 +56,18 @@ namespace DOAN.Service.MES.dev
|
||||
.Where(predicate.ToExpression())
|
||||
.ToPage<DeviceTaskExecute, DeviceTaskExecuteDto>(parm);
|
||||
|
||||
foreach (DeviceTaskExecuteDto item in response.Result)
|
||||
{
|
||||
if (item.StartTime > DateTime.MinValue && item.EndTime > DateTime.MinValue)
|
||||
{
|
||||
TimeSpan timeDifference = item.EndTime.Value - item.StartTime.Value;
|
||||
|
||||
double minutes = timeDifference.TotalMinutes;
|
||||
double roundedMinutes = Math.Round(minutes, 1);
|
||||
item.ConsumeTime = roundedMinutes;
|
||||
}
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using DOAN.Model;
|
||||
using DOAN.Model.MES.base_.Dto;
|
||||
using DOAN.Model.MES.product;
|
||||
using DOAN.Model.MES.product.Dto;
|
||||
using System;
|
||||
@ -13,5 +14,14 @@ namespace DOAN.Service.MES.product.IService
|
||||
public interface IProWorkorderSchedule : IBaseService<ProWorkorder>
|
||||
{
|
||||
PagedInfo<ProWorkorderDto> GetList(ProWorkorderQueryDto parm);
|
||||
|
||||
|
||||
|
||||
List<BaseWorkProcessesDto> GetworkProcess(int WorkRouteId);
|
||||
|
||||
List<BaseWorkStationDto> GetworkStation(int WorkProcessID);
|
||||
|
||||
|
||||
List<BaseDeviceDto> GetWorkDevice(int WorkStationID);
|
||||
}
|
||||
}
|
||||
|
||||
@ -10,6 +10,8 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using DOAN.Repository;
|
||||
using DOAN.Model.MES.base_.Dto;
|
||||
using Mapster;
|
||||
|
||||
|
||||
|
||||
@ -57,5 +59,46 @@ namespace DOAN.Service.MES.product
|
||||
return response;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取工序
|
||||
/// </summary>
|
||||
/// <param name="WorkRouteId"></param>
|
||||
/// <returns></returns>
|
||||
public List<BaseWorkProcessesDto> GetworkProcess(int WorkRouteId)
|
||||
{
|
||||
var query = Context.Queryable<BaseRelWorkRouteProcesses>().Where(it => it.FkWorkRoute == WorkRouteId);
|
||||
return Context.Queryable(query)
|
||||
.LeftJoin<BaseWorkProcesses>((q, p) => q.FkWorkProcesses == p.Id)
|
||||
.Select((q, p) => p)
|
||||
.ToList()
|
||||
.Adapt<List<BaseWorkProcessesDto>>();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取工位
|
||||
/// </summary>
|
||||
/// <param name="WorkProcessID"></param>
|
||||
/// <returns></returns>
|
||||
public List<BaseWorkStationDto> GetworkStation(int WorkProcessID)
|
||||
{
|
||||
return Context.Queryable<BaseWorkStation>()
|
||||
.Where(it => it.FkWorkProcesses == WorkProcessID)
|
||||
.ToList()
|
||||
.Adapt<List<BaseWorkStationDto>>();
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取设备
|
||||
/// </summary>
|
||||
/// <param name="WorkProcessID"></param>
|
||||
/// <returns></returns>
|
||||
public List<BaseDeviceDto> GetWorkDevice(int WorkStationID)
|
||||
{
|
||||
var query = Context.Queryable<BaseDevice>().Where(it => it.FkWorkStation == WorkStationID).ToList()
|
||||
.Adapt<List<BaseDeviceDto>>();
|
||||
|
||||
return query;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user