一次合格品记录
This commit is contained in:
@@ -1,6 +1,10 @@
|
|||||||
using Infrastructure.Attribute;
|
using Infrastructure.Attribute;
|
||||||
using SqlSugar;
|
using SqlSugar;
|
||||||
|
using System.Linq;
|
||||||
|
using System;
|
||||||
using ZR.Model;
|
using ZR.Model;
|
||||||
|
using ZR.Model.Business;
|
||||||
|
using ZR.Model.MES.qc;
|
||||||
using ZR.Model.MES.wms;
|
using ZR.Model.MES.wms;
|
||||||
using ZR.Model.MES.wms.Dto;
|
using ZR.Model.MES.wms.Dto;
|
||||||
using ZR.Repository;
|
using ZR.Repository;
|
||||||
@@ -115,18 +119,152 @@ namespace ZR.Service.mes.wms
|
|||||||
/// <exception cref="global::System.NotImplementedException"></exception>
|
/// <exception cref="global::System.NotImplementedException"></exception>
|
||||||
public int GenerateWmOneTimeRecord(WmOneTimeRecordGenerateDto parm)
|
public int GenerateWmOneTimeRecord(WmOneTimeRecordGenerateDto parm)
|
||||||
{
|
{
|
||||||
//TODO 入库条件1 产线合格品qc_quality_statistics_first,合格数,其中去除(倒车雷达)
|
|
||||||
|
if (parm == null || parm.StartTime == null || parm.StartTime.Value == DateTime.MinValue)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
#region 查询需要的数据
|
||||||
|
//TODO 入库条件1 产线合格品qc_quality_statistics_first,合格数,其中去除(倒车雷达)
|
||||||
|
List<QcQualityStatisticsFirst> qcQualityStatisticsFirsts = Context
|
||||||
|
.Queryable<QcQualityStatisticsFirst>()
|
||||||
|
.WhereIF(
|
||||||
|
!string.IsNullOrEmpty(parm.Partnumber),
|
||||||
|
it => it.FinishedPartNumber == parm.Partnumber
|
||||||
|
)
|
||||||
|
.Where(it => !it.ProductDescription.Contains("倒车雷达"))
|
||||||
|
.Where(it => it.StartTime >= parm.StartTime)
|
||||||
|
.Where(it => it.PaoguangTotal > 0)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
//TODO 入库条件2 抛光合格品 wm_polish_work_quality_statistics 合格数
|
//TODO 入库条件2 抛光合格品 wm_polish_work_quality_statistics 合格数
|
||||||
|
List<WmPolishWorkQualityStatistics> wmPolishWorkQualityStatistics = Context
|
||||||
|
.Queryable<WmPolishWorkQualityStatistics>()
|
||||||
|
.WhereIF(
|
||||||
|
!string.IsNullOrEmpty(parm.Partnumber),
|
||||||
|
it => it.Partnumber == parm.Partnumber
|
||||||
|
)
|
||||||
|
.Where(it => it.StartTime >= parm.StartTime)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
//TODO 出库条件1 GP12 (新) 触摸屏 qc_gp12_service_statistics 投入数
|
//TODO 出库条件1 GP12 (新) 触摸屏 qc_gp12_service_statistics 投入数
|
||||||
|
List<QcGp12ServiceStatistics> qcGp12ServiceStatistics = Context
|
||||||
|
.Queryable<QcGp12ServiceStatistics>()
|
||||||
|
.WhereIF(
|
||||||
|
!string.IsNullOrEmpty(parm.Partnumber),
|
||||||
|
it => it.PartNumber == parm.Partnumber
|
||||||
|
)
|
||||||
|
.Where(it => it.StartTime >= parm.StartTime)
|
||||||
|
.Where(it => it.GroupSort == 1)
|
||||||
|
.Where(it => it.PolishNumber > 0)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
//TODO 出库条件2 后道 wm_polish_quality_statistics 投入数
|
//TODO 出库条件2 后道 wm_polish_quality_statistics 投入数
|
||||||
|
List<WmPolishQualityStatistics> wmPolishQualityStatistics = Context
|
||||||
|
.Queryable<WmPolishQualityStatistics>()
|
||||||
|
.WhereIF(
|
||||||
|
!string.IsNullOrEmpty(parm.Partnumber),
|
||||||
|
it => it.Partnumber == parm.Partnumber
|
||||||
|
)
|
||||||
|
.Where(it => it.StartTime >= parm.StartTime)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
// wm_one_time_record
|
#endregion
|
||||||
|
|
||||||
|
#region 组装 WmOneTimeRecord 实体
|
||||||
|
|
||||||
|
List<WmOneTimeRecord> wmOneTimeRecords = new List<WmOneTimeRecord>();
|
||||||
|
|
||||||
throw new global::System.NotImplementedException();
|
foreach (var item in qcQualityStatisticsFirsts)
|
||||||
}
|
{
|
||||||
|
wmOneTimeRecords.Add(
|
||||||
|
new WmOneTimeRecord
|
||||||
|
{
|
||||||
|
Id = SnowFlakeSingle.Instance.NextId().ToString(),
|
||||||
|
FkInventoryId = item.Id,
|
||||||
|
Code = "自动",
|
||||||
|
Partnumber = item.FinishedPartNumber,
|
||||||
|
ChangeType = 1,
|
||||||
|
ChangeQuantity = item.PaoguangTotal,
|
||||||
|
ActionTime = item.StartTime,
|
||||||
|
Status = 1,
|
||||||
|
Remark = "产线合格品 合格数"
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var item in wmPolishWorkQualityStatistics)
|
||||||
|
{
|
||||||
|
wmOneTimeRecords.Add(
|
||||||
|
new WmOneTimeRecord
|
||||||
|
{
|
||||||
|
Id = SnowFlakeSingle.Instance.NextId().ToString(),
|
||||||
|
FkInventoryId = item.Id,
|
||||||
|
Code = "自动",
|
||||||
|
Partnumber = item.Partnumber,
|
||||||
|
ChangeType = 1,
|
||||||
|
ChangeQuantity = item.,
|
||||||
|
ActionTime = item.StartTime,
|
||||||
|
Status = 1,
|
||||||
|
Remark = "抛光合格品 合格数"
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var item in qcGp12ServiceStatistics)
|
||||||
|
{
|
||||||
|
wmOneTimeRecords.Add(
|
||||||
|
new WmOneTimeRecord
|
||||||
|
{
|
||||||
|
Id = SnowFlakeSingle.Instance.NextId().ToString(),
|
||||||
|
FkInventoryId = item.Id,
|
||||||
|
Code = "自动",
|
||||||
|
Partnumber = item.PartNumber,
|
||||||
|
ChangeType = 2,
|
||||||
|
ChangeQuantity = item.PolishNumber,
|
||||||
|
ActionTime = item.StartTime,
|
||||||
|
Status = 1,
|
||||||
|
Remark = "触摸屏投入数"
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var item in wmPolishQualityStatistics)
|
||||||
|
{
|
||||||
|
wmOneTimeRecords.Add(
|
||||||
|
new WmOneTimeRecord
|
||||||
|
{
|
||||||
|
Id = SnowFlakeSingle.Instance.NextId().ToString(),
|
||||||
|
FkInventoryId = item.Id,
|
||||||
|
Code = "自动",
|
||||||
|
Partnumber = item.Partnumber,
|
||||||
|
ChangeType = 2,
|
||||||
|
ChangeQuantity = item.PaoguangTotal,
|
||||||
|
ActionTime = item.StartTime,
|
||||||
|
Status = 1,
|
||||||
|
Remark = "后道投入数"
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
//如果有这个时间段的数据,要删除
|
||||||
|
List<WmOneTimeRecord> delwmOneTimeRecords = Context
|
||||||
|
.Queryable<WmOneTimeRecord>()
|
||||||
|
.Where(it => it.Code == "自动")
|
||||||
|
.Where(it => it.ActionTime >= parm.StartTime)
|
||||||
|
.ToList();
|
||||||
|
Context.Deleteable(delwmOneTimeRecords).ExecuteCommand();
|
||||||
|
if (delwmOneTimeRecords.Any())
|
||||||
|
{
|
||||||
|
Context.Insertable(wmOneTimeRecords).ExecuteCommand();
|
||||||
|
}
|
||||||
|
|
||||||
|
return wmOneTimeRecords.Count; // 返回插入的记录数
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user