查询BOM 及其所需数量
This commit is contained in:
parent
b3f4c8dc8a
commit
fef1a3906e
@ -272,6 +272,21 @@ namespace DOAN.Admin.WebApi.Controllers
|
||||
return SUCCESS(response);
|
||||
|
||||
}
|
||||
|
||||
//TODO 查询BOM 及其所需数量
|
||||
/// <summary>
|
||||
/// 查询BOM 及其所需数量
|
||||
/// </summary>
|
||||
/// <param name="workorder_num">工单号</param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("search_BOM_num")]
|
||||
public IActionResult SearchBOMNum(string workorder_num) {
|
||||
if (string.IsNullOrEmpty(workorder_num)) { return SUCCESS(null); }
|
||||
|
||||
var response = _ProWorkorderService.SearchBOMNum(workorder_num);
|
||||
return SUCCESS(response);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -26,7 +26,7 @@ namespace DOAN.Model.MES.product.Dto
|
||||
|
||||
public class ProWorkorderQueryDto2
|
||||
{
|
||||
public DateTime WorkorderDate { get; set; }
|
||||
public DateTime WorkorderDate { get; set; }
|
||||
|
||||
}
|
||||
|
||||
@ -104,7 +104,7 @@ namespace DOAN.Model.MES.product.Dto
|
||||
/// <summary>
|
||||
/// 完成数量
|
||||
/// </summary>
|
||||
public int? FinishNum { get; set; }
|
||||
public int? FinishNum { get; set; }
|
||||
|
||||
public string Unit { get; set; }
|
||||
|
||||
@ -147,7 +147,7 @@ namespace DOAN.Model.MES.product.Dto
|
||||
/// <summary>
|
||||
/// 下一个工单号
|
||||
/// </summary>
|
||||
|
||||
|
||||
public string next_id { get; set; }
|
||||
public string Id { get; set; }
|
||||
|
||||
@ -205,9 +205,9 @@ namespace DOAN.Model.MES.product.Dto
|
||||
/// <summary>
|
||||
/// 缺少物料 (物料清单不存在)存在为值 不存在为null
|
||||
/// </summary>
|
||||
public string MaterialName { get; set; }
|
||||
|
||||
public string Specification { get; set; }
|
||||
public string MaterialName { get; set; }
|
||||
|
||||
public string Specification { get; set; }
|
||||
/// <summary>
|
||||
/// 缺少工艺路线 (工艺路线)存在为值 不存在为0
|
||||
/// </summary>
|
||||
@ -260,6 +260,39 @@ namespace DOAN.Model.MES.product.Dto
|
||||
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 工单BOM 及其所需数量
|
||||
/// </summary>
|
||||
|
||||
public class WorkOrderBom
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 子件编码
|
||||
/// </summary>
|
||||
|
||||
public string SubInvCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 子件名称
|
||||
/// </summary>
|
||||
|
||||
public string SubInvName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 使用数量
|
||||
/// </summary>
|
||||
|
||||
public string Iusequantity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// BOM版本号
|
||||
/// </summary>
|
||||
|
||||
public string BOMVersion { get; set; }
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -48,5 +48,7 @@ namespace DOAN.Service.MES.product.IService
|
||||
|
||||
List<GroupSchedule> GetGroupList(string route_code);
|
||||
|
||||
List<WorkOrderBom> SearchBOMNum(string workorder_num);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -29,6 +29,7 @@ using NPOI.Util;
|
||||
using DOAN.Model.MES.base_.Dto;
|
||||
using Aliyun.OSS;
|
||||
using DOAN.Model.MES.group;
|
||||
using Mapster;
|
||||
|
||||
namespace DOAN.Service.MES.product
|
||||
{
|
||||
@ -73,7 +74,7 @@ namespace DOAN.Service.MES.product
|
||||
MaterialName = m.Name,
|
||||
|
||||
Specification = m.Specification,
|
||||
Unit = m.Unit,
|
||||
Unit = q.Unit,
|
||||
}, true);
|
||||
var query2 = Context.Queryable(query1).LeftJoin<BaseWorkRoute>((q, r) => q.RouteId == r.Code)
|
||||
.Select((q, r) => new ProWorkorderDto3()
|
||||
@ -587,7 +588,7 @@ namespace DOAN.Service.MES.product
|
||||
// !string.IsNullOrEmpty(parm.CustomNo),
|
||||
// it => it.CustomName.Contains(parm.CustomNo)
|
||||
//)
|
||||
.And(it => it.Status ==1);
|
||||
.And(it => it.Status == 1);
|
||||
|
||||
var response = Context.Queryable<BaseCustom>()
|
||||
.Where(predicate.ToExpression())
|
||||
@ -595,7 +596,7 @@ namespace DOAN.Service.MES.product
|
||||
.Take(20)
|
||||
.ToList();
|
||||
return response;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -607,11 +608,17 @@ namespace DOAN.Service.MES.product
|
||||
/// <returns></returns>
|
||||
public List<BaseWorkRoute> GetProcessRoute(DateTime dateTime)
|
||||
{
|
||||
DateTime dataTO= dateTime.ToLocalTime().Date;
|
||||
var query= Context.Queryable<GroupSchedule>().Where(it => it.ScheduleDate == dataTO);
|
||||
DateTime dataTO = dateTime.ToLocalTime().Date;
|
||||
var query = Context.Queryable<GroupSchedule>().Where(it => it.ScheduleDate == dataTO);
|
||||
|
||||
return Context.Queryable(query).LeftJoin<BaseWorkRoute>((q, p) => q.FkBelongRouteCode == p.Code).Select((q, p) => p).Distinct().ToList();
|
||||
return Context
|
||||
.Queryable(query)
|
||||
.LeftJoin<BaseWorkRoute>((q, p) => q.FkBelongRouteCode == p.Code)
|
||||
.Select((q, p) => p)
|
||||
.Distinct()
|
||||
.ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取班组
|
||||
/// </summary>
|
||||
@ -620,8 +627,42 @@ namespace DOAN.Service.MES.product
|
||||
public List<GroupSchedule> GetGroupList(string route_code)
|
||||
{
|
||||
|
||||
return Context.Queryable<GroupSchedule>().Where(it => it.FkBelongRouteCode == route_code).ToList();
|
||||
return Context.Queryable<GroupSchedule>().Where(it => it.FkBelongRouteCode == route_code).ToList();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 查询BOM 及其所需数量
|
||||
/// </summary>
|
||||
/// <param name="workorder_num"></param>
|
||||
/// <returns></returns>
|
||||
public List<WorkOrderBom> SearchBOMNum(string workorder_num)
|
||||
{
|
||||
List<BaseMaterialBom> baseMaterialBoms = null;
|
||||
ProWorkorder proworkorder = Context.Queryable<ProWorkorder>().Where(it => it.Workorder == workorder_num).First();
|
||||
if (proworkorder != null)
|
||||
{
|
||||
baseMaterialBoms = Context.Queryable<BaseMaterialBom>().Where(it => it.InvCode == proworkorder.ProductionCode).ToList();
|
||||
|
||||
if (baseMaterialBoms != null && baseMaterialBoms
|
||||
.Count() > 0)
|
||||
{
|
||||
foreach (var item in baseMaterialBoms)
|
||||
{
|
||||
float num = float.Parse(item.Iusequantity) * proworkorder.DeliveryNum.Value;
|
||||
item.Iusequantity = num.ToString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
return baseMaterialBoms.Adapt<List<WorkOrderBom>>();
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user