diff --git a/ZR.Admin.WebApi/Controllers/mes/wms/WmPolishRecordController.cs b/ZR.Admin.WebApi/Controllers/mes/wms/WmPolishRecordController.cs
index c4a06898..857281a2 100644
--- a/ZR.Admin.WebApi/Controllers/mes/wms/WmPolishRecordController.cs
+++ b/ZR.Admin.WebApi/Controllers/mes/wms/WmPolishRecordController.cs
@@ -108,7 +108,7 @@ namespace ZR.Admin.WebApi.Controllers
/// 根据日期获取抛光记录表数据
///
///
- [HttpPost]
+ [HttpPost("GetWmPolishRecordByDate")]
public IActionResult GetWmPolishRecordByDate([FromBody] WmPolishRecordGenerateDto parm)
{
diff --git a/ZR.Service/mes/wms/WmPolishRecordService.cs b/ZR.Service/mes/wms/WmPolishRecordService.cs
index 1ce9fd05..15b287e8 100644
--- a/ZR.Service/mes/wms/WmPolishRecordService.cs
+++ b/ZR.Service/mes/wms/WmPolishRecordService.cs
@@ -13,263 +13,284 @@ using ZR.Service.mes.wms.IService;
namespace ZR.Service.mes.wms
{
- ///
- /// 工艺路线-抛光 库存变动表Service业务层处理
- ///
- [AppService(ServiceType = typeof(IWmPolishRecordService), ServiceLifetime = LifeTime.Transient)]
- public class WmPolishRecordService : BaseService, IWmPolishRecordService
- {
- ///
- /// 查询工艺路线-抛光 库存变动表列表
- ///
- ///
- ///
- public PagedInfo GetList(WmPolishRecordQueryDto parm)
- {
- DateTime startTime = parm.StartActionTime ?? DateTime.MinValue;
- DateTime endTime = parm.EndActionTime ?? DateTime.MinValue;
- var predicate = Expressionable
- .Create()
- .AndIF(
- !string.IsNullOrEmpty(parm.Partnumber),
- it => it.Partnumber.Contains(parm.Partnumber)
- )
- .AndIF(
- !string.IsNullOrEmpty(parm.BlankNum),
- it => it.BlankNum.Contains(parm.BlankNum)
- )
- .AndIF(
- !string.IsNullOrEmpty(parm.Remark),
- it => it.Remark.Contains(parm.Remark)
- )
- .AndIF(!string.IsNullOrEmpty(parm.Code), it => it.Code.Contains(parm.Code))
- .AndIF(
- !string.IsNullOrEmpty(parm.FkInventoryId),
- it => it.FkInventoryId == parm.FkInventoryId
- )
- .AndIF(!string.IsNullOrEmpty(parm.Id), it => it.Id == parm.Id)
- .AndIF(parm.ChangeType > -1, it => it.ChangeType == parm.ChangeType)
- .AndIF(
- startTime > DateTime.MinValue,
- it => startTime <= it.ActionTime
- )
- .AndIF(
- endTime > DateTime.MinValue,
- it => endTime >= it.ActionTime
- );
+ ///
+ /// 工艺路线-抛光 库存变动表Service业务层处理
+ ///
+ [AppService(ServiceType = typeof(IWmPolishRecordService), ServiceLifetime = LifeTime.Transient)]
+ public class WmPolishRecordService : BaseService, IWmPolishRecordService
+ {
+ ///
+ /// 查询工艺路线-抛光 库存变动表列表
+ ///
+ ///
+ ///
+ public PagedInfo GetList(WmPolishRecordQueryDto parm)
+ {
+ DateTime startTime = parm.StartActionTime ?? DateTime.MinValue;
+ DateTime endTime = parm.EndActionTime ?? DateTime.MinValue;
+ var predicate = Expressionable
+ .Create()
+ .AndIF(
+ !string.IsNullOrEmpty(parm.Partnumber),
+ it => it.Partnumber.Contains(parm.Partnumber)
+ )
+ .AndIF(
+ !string.IsNullOrEmpty(parm.BlankNum),
+ it => it.BlankNum.Contains(parm.BlankNum)
+ )
+ .AndIF(!string.IsNullOrEmpty(parm.Remark), it => it.Remark.Contains(parm.Remark))
+ .AndIF(!string.IsNullOrEmpty(parm.Code), it => it.Code.Contains(parm.Code))
+ .AndIF(
+ !string.IsNullOrEmpty(parm.FkInventoryId),
+ it => it.FkInventoryId == parm.FkInventoryId
+ )
+ .AndIF(!string.IsNullOrEmpty(parm.Id), it => it.Id == parm.Id)
+ .AndIF(parm.ChangeType > -1, it => it.ChangeType == parm.ChangeType)
+ .AndIF(startTime > DateTime.MinValue, it => startTime <= it.ActionTime)
+ .AndIF(endTime > DateTime.MinValue, it => endTime >= it.ActionTime);
- var response = Queryable()
- .Where(predicate.ToExpression())
- .OrderByDescending(it => it.ActionTime)
- .ToPage(parm);
+ var response = Queryable()
+ .Where(predicate.ToExpression())
+ .OrderByDescending(it => it.ActionTime)
+ .ToPage(parm);
- return response;
- }
+ return response;
+ }
- ///
- /// 获取详情
- ///
- ///
- ///
- public WmPolishRecord GetInfo(string Id)
- {
- var response = Queryable().Where(x => x.Id == Id).First();
+ ///
+ /// 获取详情
+ ///
+ ///
+ ///
+ public WmPolishRecord GetInfo(string Id)
+ {
+ var response = Queryable().Where(x => x.Id == Id).First();
- return response;
- }
+ return response;
+ }
- ///
- /// 添加工艺路线-抛光 库存变动表
- ///
- ///
- ///
- public WmPolishRecord AddWmPolishRecord(WmPolishRecord model)
- {
- return Context.Insertable(model).ExecuteReturnEntity();
- }
+ ///
+ /// 添加工艺路线-抛光 库存变动表
+ ///
+ ///
+ ///
+ public WmPolishRecord AddWmPolishRecord(WmPolishRecord model)
+ {
+ return Context.Insertable(model).ExecuteReturnEntity();
+ }
- ///
- /// 修改工艺路线-抛光 库存变动表
- ///
- ///
- ///
- public int UpdateWmPolishRecord(WmPolishRecord model)
- {
- //var response = Update(w => w.Id == model.Id, it => new WmPolishRecord()
- //{
- // Code = model.Code,
- // Partnumber = model.Partnumber,
- // BlankNum = model.BlankNum,
- // ChangeType = model.ChangeType,
- // ChangeQuantity = model.ChangeQuantity,
- // ActionTime = model.ActionTime,
- // Status = model.Status,
- // Remark = model.Remark,
- // CreatedBy = model.CreatedBy,
- // CreatedTime = model.CreatedTime,
- // UpdatedBy = model.UpdatedBy,
- // UpdatedTime = model.UpdatedTime,
- //});
- //return response;
- return Update(model, true);
- }
+ ///
+ /// 修改工艺路线-抛光 库存变动表
+ ///
+ ///
+ ///
+ public int UpdateWmPolishRecord(WmPolishRecord model)
+ {
+ //var response = Update(w => w.Id == model.Id, it => new WmPolishRecord()
+ //{
+ // Code = model.Code,
+ // Partnumber = model.Partnumber,
+ // BlankNum = model.BlankNum,
+ // ChangeType = model.ChangeType,
+ // ChangeQuantity = model.ChangeQuantity,
+ // ActionTime = model.ActionTime,
+ // Status = model.Status,
+ // Remark = model.Remark,
+ // CreatedBy = model.CreatedBy,
+ // CreatedTime = model.CreatedTime,
+ // UpdatedBy = model.UpdatedBy,
+ // UpdatedTime = model.UpdatedTime,
+ //});
+ //return response;
+ return Update(model, true);
+ }
- ///
- /// 根据日期获取抛光记录表数据
- ///
- ///
- ///
- public int GenerateWmPolishRecord(WmPolishRecordGenerateDto parm)
- {
+ ///
+ /// 根据日期获取抛光记录表数据
+ ///
+ ///
+ ///
+ public int GenerateWmPolishRecord(WmPolishRecordGenerateDto parm)
+ {
+ if (
+ parm == null
+ || parm.StartTime == null
+ || parm.EndTime == null
+ || parm.StartTime.Value == DateTime.MinValue
+ || parm.EndTime.Value == DateTime.MinValue
+ )
+ {
+ return -1;
+ }
+ else
+ {
+ #region 查询需要的数据
+ //三入
+ // 产线报表 根据日期范围 去取产线抛光的数据 qc_quality_statistics_first
+ List qcQualityStatisticsFirsts = Context
+ .Queryable()
+ .WhereIF(
+ !string.IsNullOrEmpty(parm.Partnumber),
+ it => it.FinishedPartNumber == parm.Partnumber
+ )
+ .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
+ .ToList();
- if (parm == null || parm.StartTime == null || parm.EndTime == null || parm.StartTime.Value >= DateTime.MinValue || parm.EndTime.Value >= DateTime.MinValue)
- {
- return -1;
- }
- else
- {
- #region 查询需要的数据
- //三入
- // 产线报表 根据日期范围 去取产线抛光的数据 qc_quality_statistics_first
- List qcQualityStatisticsFirsts = Context
- .Queryable()
- .WhereIF(!string.IsNullOrEmpty(parm.Partnumber), it => it.FinishedPartNumber == parm.Partnumber)
- .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
- .ToList();
+ // 后道报表 根据日期范围 去取后道反抛光的数据 wm_polish_quality_statistics
+ List wmPolishQualityStatistics = Context
+ .Queryable()
+ .WhereIF(
+ !string.IsNullOrEmpty(parm.Partnumber),
+ it => it.Partnumber == parm.Partnumber
+ )
+ .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
+ .ToList();
+
+ // GP12报表 根据日期范围 去取gp12反抛光的数据 qc_gp12_service_statistics GP12(new) wm_gp12_quality_statistics(old)
+ List qcGp12ServiceStatistics = Context
+ .Queryable()
+ .WhereIF(
+ !string.IsNullOrEmpty(parm.Partnumber),
+ it => it.PartNumber == parm.Partnumber
+ )
+ .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
+ .Where(it => it.GroupSort == 1)
+ .ToList();
+ //qcGp12ServiceStatistics = qcGp12ServiceStatistics.DistinctBy(o => o.PartNumber).ToList();
+
+ List wmGp12QualityStatistics = Context
+ .Queryable()
+ .WhereIF(
+ !string.IsNullOrEmpty(parm.Partnumber),
+ it => it.Partnumber == parm.Partnumber
+ )
+ .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
+ .ToList();
+
+ //二出(同一张表)wm_polish_work_quality_statistics 根据日期范围 去取抛光操作出库的数据
+ List wmPolishWorkQualityStatistics = Context
+ .Queryable()
+ .WhereIF(
+ !string.IsNullOrEmpty(parm.Partnumber),
+ it => it.Partnumber == parm.Partnumber
+ )
+ .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
+ .ToList();
+ #endregion
- // 后道报表 根据日期范围 去取后道反抛光的数据 wm_polish_quality_statistics
- List wmPolishQualityStatistics = Context
- .Queryable()
- .WhereIF(!string.IsNullOrEmpty(parm.Partnumber), it => it.Partnumber == parm.Partnumber)
- .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
- .ToList();
+ #region 组装 WmPolishRecord 实体
+ // 组装 WmPolishRecord 实体
+ List wmPolishRecords = new List();
- // GP12报表 根据日期范围 去取gp12反抛光的数据 qc_gp12_service_statistics GP12(new) wm_gp12_quality_statistics(old)
- List qcGp12ServiceStatistics = Context
- .Queryable()
-
- .WhereIF(!string.IsNullOrEmpty(parm.Partnumber), it => it.PartNumber == parm.Partnumber)
- .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
- .GroupBy(o => o.GroupCode)
- .ToList();
- //qcGp12ServiceStatistics = qcGp12ServiceStatistics.DistinctBy(o => o.PartNumber).ToList();
+ foreach (var item in qcQualityStatisticsFirsts)
+ {
+ wmPolishRecords.Add(
+ new WmPolishRecord
+ {
+ Id = SnowFlakeSingle.Instance.NextId().ToString(),
+ FkInventoryId = SnowFlakeSingle.Instance.NextId().ToString(),
+ Code = "自动",
+ Partnumber = item.FinishedPartNumber,
+ ChangeType = 1,
+ ChangeQuantity = item.PaoguangTotal,
+ ActionTime = item.StartTime,
+ Status = 1,
+ Remark = "产线报表 根据日期范围 去取产线抛光的数据"
+ }
+ );
+ }
- List wmGp12QualityStatistics = Context
- .Queryable()
- .WhereIF(!string.IsNullOrEmpty(parm.Partnumber), it => it.Partnumber == parm.Partnumber)
- .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
- .ToList();
+ foreach (var item in wmPolishQualityStatistics)
+ {
+ wmPolishRecords.Add(
+ new WmPolishRecord
+ {
+ Id = SnowFlakeSingle.Instance.NextId().ToString(),
+ FkInventoryId = SnowFlakeSingle.Instance.NextId().ToString(),
+ Code = "自动",
+ Partnumber = item.Partnumber,
+ ChangeType = 1,
+ ChangeQuantity = item.PaoguangTotal,
+ ActionTime = item.StartTime,
+ Status = 1,
+ Remark = "后道报表 根据日期范围 去取后道反抛光的数据"
+ }
+ );
+ }
- //二出(同一张表)wm_polish_work_quality_statistics 根据日期范围 去取抛光操作出库的数据
- List wmPolishWorkQualityStatistics = Context
- .Queryable()
- .WhereIF(!string.IsNullOrEmpty(parm.Partnumber) ,it => it.Partnumber == parm.Partnumber)
- .Where(it => it.StartTime >= parm.StartTime && it.StartTime <= parm.EndTime)
- .ToList();
- #endregion
+ foreach (var item in qcGp12ServiceStatistics)
+ {
+ wmPolishRecords.Add(
+ new WmPolishRecord
+ {
+ Id = SnowFlakeSingle.Instance.NextId().ToString(),
+ FkInventoryId = SnowFlakeSingle.Instance.NextId().ToString(),
+ Code = "自动",
+ Partnumber = item.PartNumber,
+ ChangeType = 1,
+ ChangeQuantity = item.PolishNumber,
+ ActionTime = item.StartTime,
+ Status = 1,
+ Remark = " GP12报表(new) 根据日期范围 去取gp12反抛光的数据"
+ }
+ );
+ }
+
+ foreach (var item in wmGp12QualityStatistics)
+ {
+ wmPolishRecords.Add(
+ new WmPolishRecord
+ {
+ Id = SnowFlakeSingle.Instance.NextId().ToString(),
+ FkInventoryId = SnowFlakeSingle.Instance.NextId().ToString(),
+ Code = "自动",
+ Partnumber = item.Partnumber,
+ ChangeType = 1,
+ ChangeQuantity = item.PaoguangTotal,
+ ActionTime = item.StartTime,
+ Status = 1,
+ Remark = " GP12报表(old) 根据日期范围 去取gp12反抛光的数据"
+ }
+ );
+ }
+
+ foreach (var item in wmPolishWorkQualityStatistics)
+ {
+ wmPolishRecords.Add(
+ new WmPolishRecord
+ {
+ Id = SnowFlakeSingle.Instance.NextId().ToString(),
+ FkInventoryId = SnowFlakeSingle.Instance.NextId().ToString(),
+ Code = "自动",
+ Partnumber = item.Partnumber,
+ ChangeType = 2,
+ ChangeQuantity = item.RequireNumber,
+ ActionTime = item.StartTime,
+ Status = 1,
+ Remark = " 根据日期范围 去取抛光操作出库的数据"
+ }
+ );
+ }
+ #endregion
- #region 组装 WmPolishRecord 实体
- // 组装 WmPolishRecord 实体
- List wmPolishRecords = new List();
+ // 批量插入到 wm_polish_record 表
+ //如果有这个时间段的数据,要删除
+ List delwmPolishRecords = Context
+ .Queryable()
+ .Where(it => it.Code == "自动")
+ .Where(it => it.CreatedTime >= parm.StartTime && it.CreatedTime <= parm.EndTime)
+ .ToList();
+ Context.Deleteable(delwmPolishRecords).ExecuteCommand();
- foreach (var item in qcQualityStatisticsFirsts)
- {
- wmPolishRecords.Add(new WmPolishRecord
- {
- Id = null,
- Code= "自动",
- Partnumber=item.FinishedPartNumber,
- ChangeType=1,
- ChangeQuantity=item.PaoguangTotal,
- ActionTime=item.StartTime,
- Status=1,
- Remark= "产线报表 根据日期范围 去取产线抛光的数据"
- });
- }
+ if (wmPolishRecords.Any())
+ {
+ Context.Insertable(wmPolishRecords).ExecuteCommand();
+ }
- foreach (var item in wmPolishQualityStatistics)
- {
- wmPolishRecords.Add(new WmPolishRecord
- {
- Id = null,
- Code = "自动",
- Partnumber = item.Partnumber,
- ChangeType = 1,
- ChangeQuantity = item.PaoguangTotal,
- ActionTime = item.StartTime,
- Status = 1,
- Remark = "后道报表 根据日期范围 去取后道反抛光的数据"
- });
- }
-
- foreach (var item in qcGp12ServiceStatistics)
- {
- wmPolishRecords.Add(new WmPolishRecord
- {
- Id = null,
- Code = "自动",
- Partnumber = item.PartNumber,
- ChangeType = 1,
- ChangeQuantity = item.PolishNumber,
- ActionTime = item.StartTime,
- Status = 1,
- Remark = " GP12报表(new) 根据日期范围 去取gp12反抛光的数据"
- });
- }
-
- foreach (var item in wmGp12QualityStatistics)
- {
- wmPolishRecords.Add(new WmPolishRecord
- {
- Id = null,
- Code = "自动",
- Partnumber = item.Partnumber,
- ChangeType = 1,
- ChangeQuantity = item.PaoguangTotal,
- ActionTime = item.StartTime,
- Status = 1,
- Remark = " GP12报表(old) 根据日期范围 去取gp12反抛光的数据"
- });
- }
-
- foreach (var item in wmPolishWorkQualityStatistics)
- {
- wmPolishRecords.Add(new WmPolishRecord
- {
- Id = null,
- Code = "自动",
- Partnumber = item.Partnumber,
- ChangeType = 2,
- ChangeQuantity = item.RequireNumber,
- ActionTime = item.StartTime,
- Status = 1,
- Remark = " 根据日期范围 去取抛光操作出库的数据"
- });
- }
- #endregion
-
-
- // 批量插入到 wm_polish_record 表
- //如果有这个时间段的数据,要删除
- List delwmPolishRecords = Context
- .Queryable()
- .Where(it => it.Code =="自动")
- .Where(it => it.CreatedTime >= parm.StartTime && it.CreatedTime <= parm.EndTime)
- .ToList();
- Context.Deleteable(delwmPolishRecords).ExecuteCommand();
-
- if (wmPolishRecords.Any())
- {
- Context.Insertable(wmPolishRecords).ExecuteCommand();
- }
-
- return wmPolishRecords.Count; // 返回插入的记录数
- }
-
-
- }
-
- }
+ return wmPolishRecords.Count; // 返回插入的记录数
+ }
+ }
+ }
}