From 4559800d63ef312b2fdbb4dd678a9d09f341a1ae Mon Sep 17 00:00:00 2001
From: chenwenkai <1084072318@qq.com>
Date: Tue, 12 Nov 2024 16:23:26 +0800
Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E8=A3=85=E7=94=9F=E4=BA=A7=E4=BB=BB?=
=?UTF-8?q?=E5=8A=A1=E5=A2=9E=E5=8A=A0=E5=BC=80=E5=B7=A5=E6=97=A5=E6=9C=9F?=
=?UTF-8?q?=E5=92=8C=E5=A4=B1=E6=95=88=E6=97=A5=E6=9C=9F=EF=BC=8C=E8=B4=B4?=
=?UTF-8?q?=E6=A0=87=E5=92=8C=E5=96=B7=E7=A0=81=E5=A4=B1=E6=95=88=E6=97=B6?=
=?UTF-8?q?=E9=97=B4=E5=8F=96=E5=A4=B1=E6=95=88=E6=97=A5=E6=9C=9F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../PackSechelToBeIssueListOutput.cs | 12 ++++++++++
.../Entity/PrdMoTask.cs | 4 ++++
.../Tnb.ProductionMgr/PrdMoTaskService.cs | 22 ++++++++++++++-----
3 files changed, 32 insertions(+), 6 deletions(-)
diff --git a/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PackSechelToBeIssueListOutput.cs b/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PackSechelToBeIssueListOutput.cs
index c502f0d0..baf74243 100644
--- a/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PackSechelToBeIssueListOutput.cs
+++ b/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PackSechelToBeIssueListOutput.cs
@@ -115,6 +115,18 @@
public string? material_standard { get; set; }
public string batch { get; set; }
+ ///
+ /// udi码
+ ///
+ public string udi { get; set; }
+ ///
+ /// 失效日期
+ ///
+ public DateTime? expire_end_date { get; set; }
+ ///
+ /// 第一次开工日期
+ ///
+ public DateTime? first_start_date { get; set; }
}
}
diff --git a/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/PrdMoTask.cs b/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/PrdMoTask.cs
index 9efa7256..d6201972 100644
--- a/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/PrdMoTask.cs
+++ b/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/PrdMoTask.cs
@@ -265,4 +265,8 @@ public partial class PrdMoTask : BaseEntity
/// 是否手动设置批号
///
public int is_hand_set_batch { get; set; } = 0;
+ ///
+ /// 失效日期
+ ///
+ public DateTime? expire_end_date { get; set; }
}
diff --git a/ProductionMgr/Tnb.ProductionMgr/PrdMoTaskService.cs b/ProductionMgr/Tnb.ProductionMgr/PrdMoTaskService.cs
index a8b22004..c663576b 100644
--- a/ProductionMgr/Tnb.ProductionMgr/PrdMoTaskService.cs
+++ b/ProductionMgr/Tnb.ProductionMgr/PrdMoTaskService.cs
@@ -481,6 +481,7 @@ namespace Tnb.ProductionMgr
mo_task_code = a.mo_task_code,
material_code = b.code,
material_name = b.name,
+ udi=b.di,
workline_code = c.EnCode,
workline_name = c.FullName,
mo_task_status = a.mo_task_status,
@@ -499,6 +500,8 @@ namespace Tnb.ProductionMgr
dayshiftafter_worker_id = a.dayshiftafter_worker_id,
nightshift_worker_id = a.nightshift_worker_id,
nightshiftafter_worker_id = a.nightshiftafter_worker_id,
+ expire_end_date=a.expire_end_date,
+ first_start_date=a.first_start_date
})
.Mapper(it => it.mo_task_status = dic.ContainsKey(it.mo_task_status) ? dic[it.mo_task_status].ToString()! : "")
.OrderBy(a => a.mo_task_code, OrderByType.Asc)
@@ -1603,12 +1606,14 @@ namespace Tnb.ProductionMgr
string batch = $"{organizeEntity.EnCode.Substring(organizeEntity.EnCode.Length - 2, 2)}{DateTime.Now.ToString("yyMMdd")}";
PrdMoTask parent = await _db.Queryable().SingleAsync(x => x.id == item.parent_id);
+ if (parent.is_hand_set_batch == 1)
+ batch = parent.batch;
BasMaterial basMaterial = await _db.Queryable().SingleAsync(x=>x.id==parent.material_id);
BasMbom basMbom = await _db.Queryable().SingleAsync(x => x.id == item.bom_id);
-
+
//string code = $"(01){basMaterial.di ?? ""}(11){DateTime.Now.ToString("yyMMdd")}(17){DateTime.Now.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyMMdd")}(10){batch}#{basMaterial.material_specification}*{batch}*{DateTime.Now.ToString("yyyyMMdd")}*{DateTime.Now.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyyyMMdd")}*{basMaterial.container_no}";
- string code1 = $"(01){basMaterial.di ?? ""}*(11){item.act_start_date.Value.ToString("yyMMdd")}*(17){item.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyMMdd")}*(10){batch}";
- string code2 = $"{basMaterial.material_specification}*{batch}*{item.act_start_date.Value.ToString("yyyyMMdd")}*{item.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyyyMMdd")}*{basMaterial.material_standard}";
+ string code1 = $"(01){basMaterial.di ?? ""}*(11){item.act_start_date.Value.ToString("yyMMdd")}*(17){(item.expire_end_date.HasValue ? item.expire_end_date.Value.ToString("yyyyMMdd") : item.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyMMdd"))}*(10){batch}";
+ string code2 = $"{basMaterial.material_specification}*{batch}*{item.act_start_date.Value.ToString("yyyyMMdd")}*{(item.expire_end_date.HasValue ? item.expire_end_date.Value.ToString("yyyyMMdd") : item.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyyyMMdd"))}*{basMaterial.material_standard}";
Dictionary dicCommand1 = new(StringComparer.OrdinalIgnoreCase)
{
["DevName"] = "外包装箱码垛线",
@@ -4070,7 +4075,8 @@ namespace Tnb.ProductionMgr
BasMaterial basMaterial = await _db.Queryable().SingleAsync(x=>x.id==prdMoTask.material_id);
string batch = prdMoTask.batch;
- string code = $"(01){basMaterial.di ?? ""}*(11){prdMoTask.act_start_date.Value.ToString("yyMMdd")}*(17){prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyMMdd")}*(10){batch}#{basMaterial.material_specification}*{batch}*{prdMoTask.act_start_date.Value.ToString("yyyyMMdd")}*{prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyyyMMdd")}*{basMaterial.material_standard}";
+ //2024/11/12 失效日期:把第一次开工日期换成实际开工日期
+ string code = $"(01){basMaterial.di ?? ""}*(11){prdMoTask.act_start_date.Value.ToString("yyMMdd")}*(17){prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyMMdd")}*(10){batch}#{basMaterial.material_specification}*{batch}*{prdMoTask.act_start_date.Value.ToString("yyyyMMdd")}*{(prdMoTask.expire_end_date.HasValue ? prdMoTask.expire_end_date.Value.ToString("yyyyMMdd") : prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyyyMMdd"))}*{basMaterial.material_standard}";
return code;
}
}
@@ -4137,8 +4143,12 @@ namespace Tnb.ProductionMgr
string ids = input.GetOrDefault("ids");
string[] idList = ids.Split(",");
string batch = input.GetOrDefault("batch");
+ DateTime prdDate = Convert.ToDateTime(input.GetOrDefault("prd_date"));//生产日期
+ DateTime expireEndDate = Convert.ToDateTime(input.GetOrDefault("expire_end_date"));//失效日期
int row = await _db.Updateable()
.SetColumns(x => x.batch == batch)
+ .SetColumns(x=>x.expire_end_date==expireEndDate)
+ .SetColumns(x=>x.first_start_date==prdDate)
.SetColumns(x => x.is_hand_set_batch == 1)
.Where(x => idList.Contains(x.id))
.ExecuteCommandAsync();
@@ -4148,8 +4158,8 @@ namespace Tnb.ProductionMgr
if (prdMoTask.mo_task_status == DictConst.InProgressEnCode && prdMoTask.schedule_type==2)
{
BasMaterial basMaterial = await _db.Queryable().Where(x=>x.id==prdMoTask.material_id).SingleAsync();
- string code1 = $"(01){basMaterial.di ?? ""}*(11){prdMoTask.act_start_date.Value.ToString("yyMMdd")}*(17){prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyMMdd")}*(10){batch}";
- string code2 = $"{basMaterial.material_specification}*{batch}*{prdMoTask.act_start_date.Value.ToString("yyyyMMdd")}*{prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyyyMMdd")}*{basMaterial.material_standard}";
+ string code1 = $"(01){basMaterial.di ?? ""}*(11){prdMoTask.act_start_date.Value.ToString("yyMMdd")}*(17){(prdMoTask.expire_end_date.HasValue ? prdMoTask.expire_end_date.Value.ToString("yyyyMMdd") : prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyMMdd"))}*(10){batch}";
+ string code2 = $"{basMaterial.material_specification}*{batch}*{prdMoTask.act_start_date.Value.ToString("yyyyMMdd")}*{(prdMoTask.expire_end_date.HasValue ? prdMoTask.expire_end_date.Value.ToString("yyyyMMdd") : prdMoTask.first_start_date.Value.AddMonths(basMaterial.quality_guarantee_period ?? 0).ToString("yyyyMMdd"))}*{basMaterial.material_standard}";
Dictionary dicCommand1 = new(StringComparer.OrdinalIgnoreCase)
{
["DevName"] = "外包装箱码垛线",