From b4ad3d26e283b5b4a182ab149c0666fdd08e6061 Mon Sep 17 00:00:00 2001
From: zhoukeda <1315948824@qq.com>
Date: Mon, 8 May 2023 17:42:07 +0800
Subject: [PATCH] =?UTF-8?q?=E7=89=A9=E6=96=99=E5=A2=9E=E5=8A=A0=E4=BF=A1?=
=?UTF-8?q?=E6=81=AF=20=E5=B7=A5=E8=89=BA=E8=B7=AF=E7=BA=BF=E5=BC=B9?=
=?UTF-8?q?=E7=AA=97=E5=A2=9E=E5=8A=A0=E8=BF=87=E6=BB=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Dto/BasRoute/VaildRouteOutput.cs | 15 ++++
.../Tnb.BasicData.Entities/Entity/BasEbomD.cs | 8 +++
.../Entity/BasMaterial.cs | 70 +++++++++++++++++++
.../BasMaterialIntoFactorySpecifications.cs | 39 +++++++++++
.../IBasRouteService.cs | 8 +++
BasicData/Tnb.BasicData/BasMaterialService.cs | 10 ++-
BasicData/Tnb.BasicData/BasProcessService.cs | 2 +-
BasicData/Tnb.BasicData/BasRouteService.cs | 27 +++++++
8 files changed, 177 insertions(+), 2 deletions(-)
create mode 100644 BasicData/Tnb.BasicData.Entities/Dto/BasRoute/VaildRouteOutput.cs
create mode 100644 BasicData/Tnb.BasicData.Entities/Entity/BasMaterialIntoFactorySpecifications.cs
diff --git a/BasicData/Tnb.BasicData.Entities/Dto/BasRoute/VaildRouteOutput.cs b/BasicData/Tnb.BasicData.Entities/Dto/BasRoute/VaildRouteOutput.cs
new file mode 100644
index 00000000..a8dcc418
--- /dev/null
+++ b/BasicData/Tnb.BasicData.Entities/Dto/BasRoute/VaildRouteOutput.cs
@@ -0,0 +1,15 @@
+namespace Tnb.BasicData.Entities.Dto
+{
+ public class VaildRouteOutput
+ {
+ public string id { get; set; }
+
+ public string code { get; set; }
+
+ public string name { get; set; }
+
+ public DateTime? start_time { get; set; }
+
+ public DateTime? end_time { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData.Entities/Entity/BasEbomD.cs b/BasicData/Tnb.BasicData.Entities/Entity/BasEbomD.cs
index 31ca2af2..a759581f 100644
--- a/BasicData/Tnb.BasicData.Entities/Entity/BasEbomD.cs
+++ b/BasicData/Tnb.BasicData.Entities/Entity/BasEbomD.cs
@@ -101,6 +101,14 @@ namespace Tnb.BasicData.Entities
///
[SugarColumn(ColumnName="route_id")]
public string route_id {get;set;}
+
+ ///
+ /// Desc:工艺路线名称
+ /// Default:NULL::character varying
+ /// Nullable:True
+ ///
+ [SugarColumn(ColumnName="route_id")]
+ public string route_name {get;set;}
}
}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData.Entities/Entity/BasMaterial.cs b/BasicData/Tnb.BasicData.Entities/Entity/BasMaterial.cs
index 34df5803..397026ad 100644
--- a/BasicData/Tnb.BasicData.Entities/Entity/BasMaterial.cs
+++ b/BasicData/Tnb.BasicData.Entities/Entity/BasMaterial.cs
@@ -34,6 +34,76 @@ namespace Tnb.BasicData.Entities
///
public string attachment { get; set; }
+ ///
+ /// Desc:先进先出 0否 1是
+ /// Default:
+ /// Nullable:True
+ ///
+ public int? first_in_out { get; set; }
+
+ ///
+ /// Desc:存储有效期(天)
+ /// Default:
+ /// Nullable:True
+ ///
+ public int? storage_valid_day { get; set; }
+
+ ///
+ /// Desc:预警提前期(天)
+ /// Default:
+ /// Nullable:True
+ ///
+ public int? early_warn_day { get; set; }
+
+ ///
+ /// Desc:安全库存
+ /// Default:
+ /// Nullable:True
+ ///
+ public int? safe_stock { get; set; }
+
+ ///
+ /// Desc:发料仓库id
+ /// Default:
+ /// Nullable:True
+ ///
+ public string send_warehouse_id { get; set; }
+
+ ///
+ /// Desc:入厂单位id
+ /// Default:
+ /// Nullable:True
+ ///
+ public string into_factory_unit_id { get; set; }
+
+ ///
+ /// Desc:安全库存包含状态
+ /// Default:NULL::character varying
+ /// Nullable:True
+ ///
+ public string safe_stock_stauts { get; set; }
+
+ ///
+ /// Desc:投料单位
+ /// Default:
+ /// Nullable:True
+ ///
+ public string material_in_unit_id { get; set; }
+
+ ///
+ /// Desc:产出单位
+ /// Default:
+ /// Nullable:True
+ ///
+ public string material_out_unit_id { get; set; }
+
+ ///
+ /// Desc:请料方式 1按计划排程请料 2自行管控
+ /// Default:
+ /// Nullable:True
+ ///
+ public string material_request_method { get; set; }
+
///
/// Desc:物料代码
/// Default:
diff --git a/BasicData/Tnb.BasicData.Entities/Entity/BasMaterialIntoFactorySpecifications.cs b/BasicData/Tnb.BasicData.Entities/Entity/BasMaterialIntoFactorySpecifications.cs
new file mode 100644
index 00000000..c3d03adb
--- /dev/null
+++ b/BasicData/Tnb.BasicData.Entities/Entity/BasMaterialIntoFactorySpecifications.cs
@@ -0,0 +1,39 @@
+using SqlSugar;
+using Tnb.Common.Contracts;
+
+namespace Tnb.BasicData.Entities
+{
+ ///
+ ///物料入场规格
+ ///
+ [SugarTable("bas_material_into_factory_specifications")]
+ public class BasMaterialIntoFactorySpecifications : BaseEntity
+ {
+ public BasMaterialIntoFactorySpecifications(){
+
+
+ }
+
+ ///
+ /// Desc:物料id
+ /// Default:
+ /// Nullable:False
+ ///
+ public string material_id {get;set;}
+
+ ///
+ /// Desc:单位id
+ /// Default:
+ /// Nullable:False
+ ///
+ public string unit_id {get;set;}
+
+ ///
+ /// Desc:数量
+ /// Default:
+ /// Nullable:False
+ ///
+ public decimal num {get;set;}
+
+ }
+}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData.Interfaces/IBasRouteService.cs b/BasicData/Tnb.BasicData.Interfaces/IBasRouteService.cs
index e986bd82..ae2ee1de 100644
--- a/BasicData/Tnb.BasicData.Interfaces/IBasRouteService.cs
+++ b/BasicData/Tnb.BasicData.Interfaces/IBasRouteService.cs
@@ -1,3 +1,5 @@
+using JNPF.Common.Filter;
+
namespace Tnb.BasicData.Interfaces
{
public interface IBasRouteService
@@ -13,5 +15,11 @@ namespace Tnb.BasicData.Interfaces
///
/// 工艺路线id id
public Task Copy(Dictionary parameters);
+
+ ///
+ /// 获取有效的已发布的工艺路线
+ ///
+ ///
+ public Task GetValidRouteList(PageInputBase pageInputBase);
}
}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData/BasMaterialService.cs b/BasicData/Tnb.BasicData/BasMaterialService.cs
index 35a78ab4..db96bd82 100644
--- a/BasicData/Tnb.BasicData/BasMaterialService.cs
+++ b/BasicData/Tnb.BasicData/BasMaterialService.cs
@@ -43,6 +43,7 @@ namespace Tnb.BasicData
BasMaterial basMaterial = await _repository.GetByIdAsync(id);
List materialUnits = await _repository.AsSugarClient().Queryable().Where(x => x.material_id == id).ToListAsync();
+ List materialIntoFactorySpecifications = await _repository.AsSugarClient().Queryable().Where(x => x.material_id == id).ToListAsync();
string newId = SnowflakeIdHelper.NextId();
basMaterial.id = newId;
@@ -57,15 +58,22 @@ namespace Tnb.BasicData
basMaterialUnit.id = SnowflakeIdHelper.NextId();
basMaterialUnit.material_id = newId;
}
+
+ foreach (BasMaterialIntoFactorySpecifications basMaterialIntoFactorySpecification in materialIntoFactorySpecifications)
+ {
+ basMaterialIntoFactorySpecification.id = SnowflakeIdHelper.NextId();
+ basMaterialIntoFactorySpecification.material_id = newId;
+ }
await _repository.AsSugarClient().Insertable(materialUnits).ExecuteCommandAsync();
+ await _repository.AsSugarClient().Insertable(materialIntoFactorySpecifications).ExecuteCommandAsync();
});
return result.IsSuccess ? "复制成功" : result.ErrorMessage;
}
///
- /// 获取物料清单所有自己物料信息
+ /// 获取物料清单所有子集物料信息
///
///
///
diff --git a/BasicData/Tnb.BasicData/BasProcessService.cs b/BasicData/Tnb.BasicData/BasProcessService.cs
index 0abbbe49..6dd4ac2a 100644
--- a/BasicData/Tnb.BasicData/BasProcessService.cs
+++ b/BasicData/Tnb.BasicData/BasProcessService.cs
@@ -51,7 +51,7 @@ namespace Tnb.BasicData
_runService = runService;
_visualDevService = visualDevService;
OverideFuncs.CreateAsync = Create;
- OverideFuncs.GetListAsync = GetList;
+ // OverideFuncs.GetListAsync = GetList;
}
///
diff --git a/BasicData/Tnb.BasicData/BasRouteService.cs b/BasicData/Tnb.BasicData/BasRouteService.cs
index 1a1f37fb..d54c644c 100644
--- a/BasicData/Tnb.BasicData/BasRouteService.cs
+++ b/BasicData/Tnb.BasicData/BasRouteService.cs
@@ -1,4 +1,5 @@
using JNPF.Common.Core.Manager;
+using JNPF.Common.Filter;
using JNPF.Common.Security;
using JNPF.DependencyInjection;
using JNPF.DynamicApiController;
@@ -6,6 +7,7 @@ using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using Tnb.BasicData.Entities;
using Tnb.BasicData.Interfaces;
+using Tnb.BasicData.Entities.Dto;
namespace Tnb.BasicData
{
@@ -72,5 +74,30 @@ namespace Tnb.BasicData
return result.IsSuccess ? "复制成功" : result.ErrorMessage;
}
+
+ ///
+ /// 获取有效的已发布的工艺路线
+ ///
+ ///
+ [HttpPost]
+ public async Task GetValidRouteList([FromBody]PageInputBase pageInputBase)
+ {
+ var db = _repository.AsSugarClient();
+ var result = await db.Queryable()
+ .Where(x => x.status == "1" && ((x.start_time != null && x.start_time.Value <= DateTime.Now && x.end_time != null && x.end_time.Value>=DateTime.Now)
+ || (x.start_time==null && x.end_time>=DateTime.Now)
+ || (x.end_time==null && x.start_time<=DateTime.Now)
+ || (x.start_time == null && x.end_time == null)
+ ))
+ .Select(x=>new VaildRouteOutput()
+ {
+ id = x.id,
+ code = x.code,
+ name = x.name,
+ start_time = x.start_time,
+ end_time = x.end_time,
+ }).ToPagedListAsync(pageInputBase.currentPage, pageInputBase.pageSize);
+ return PageResult.SqlSugarPageResult(result);
+ }
}
}
\ No newline at end of file