diff --git a/BasicData/Tnb.BasicData.Entities/Consts/DictConst.cs b/BasicData/Tnb.BasicData.Entities/Consts/DictConst.cs
index ab870c7d..bbd98d72 100644
--- a/BasicData/Tnb.BasicData.Entities/Consts/DictConst.cs
+++ b/BasicData/Tnb.BasicData.Entities/Consts/DictConst.cs
@@ -129,5 +129,31 @@ public static class DictConst
/// 保养状态待保养Code
///
public const string UnMaintainStatusCode = "UnMaintain";
+ ///
+ /// 模具在库TypeId
+ ///
+ public const string ZKTypeId = "26149307089941";
+ ///
+ /// 模具生产TypeId
+ ///
+ public const string SCTypeId = "26149309121045";
+ ///
+ /// 模具保养TypeId
+ ///
+ public const string BYTypeId = "26149311082005";
+ ///
+ /// 模具报废TypeId
+ ///
+ public const string BFTypeId = "26149314425877";
+ ///
+ /// 模具外协TypeId
+ ///
+ public const string WXXTypeId = "26149312750101";
+ ///
+ /// 模具维修TypeId
+ ///
+ public const string WXTypeId = "26149320818965";
+
+
#endregion
}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData.Entities/Dto/BasDefect/DefectOutput.cs b/BasicData/Tnb.BasicData.Entities/Dto/BasDefect/DefectOutput.cs
index dcf2811c..aaf8b102 100644
--- a/BasicData/Tnb.BasicData.Entities/Dto/BasDefect/DefectOutput.cs
+++ b/BasicData/Tnb.BasicData.Entities/Dto/BasDefect/DefectOutput.cs
@@ -2,8 +2,8 @@ namespace Tnb.BasicData.Entities.Dto
{
public class DefectOutput
{
- public string id { get; set; }
- public string defect_code { get; set; }
- public string defect_name { get; set; }
+ public string id { get; set; } = string.Empty;
+ public string? defect_code { get; set; }
+ public string? defect_name { get; set; }
}
}
\ No newline at end of file
diff --git a/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomDataOutput.cs b/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomDataOutput.cs
index d7dd5b0d..1698923a 100644
--- a/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomDataOutput.cs
+++ b/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomDataOutput.cs
@@ -67,7 +67,7 @@ namespace Tnb.BasicData.Entities.Dto
public class MbomProcessOutDto
{
- public string id { get; set; }
+ public string id { get; set; } = string.Empty;
///
/// Desc:生产bomid
diff --git a/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomSaveDataInput.cs b/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomSaveDataInput.cs
index f024da98..4c6552a8 100644
--- a/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomSaveDataInput.cs
+++ b/BasicData/Tnb.BasicData.Entities/Dto/BasMbom/MbomSaveDataInput.cs
@@ -67,7 +67,7 @@ namespace Tnb.BasicData.Entities.Dto
public class MbomProcessDto
{
- public string id { get; set; }
+ public string id { get; set; } = string.Empty;
///
/// Desc:生产bomid
@@ -122,7 +122,7 @@ namespace Tnb.BasicData.Entities.Dto
///
/// 工艺路线子表id
///
- public string route_detail_id { get; set; }
+ public string route_detail_id { get; set; } = string.Empty;
///
/// Desc:投产方式
diff --git a/BasicData/Tnb.BasicData.Entities/Entity/BasMbomProcess.cs b/BasicData/Tnb.BasicData.Entities/Entity/BasMbomProcess.cs
index ccd51ced..8ee30b99 100644
--- a/BasicData/Tnb.BasicData.Entities/Entity/BasMbomProcess.cs
+++ b/BasicData/Tnb.BasicData.Entities/Entity/BasMbomProcess.cs
@@ -48,11 +48,11 @@ public partial class BasMbomProcess : BaseEntity
/// 投产方式
///
public string? production_method { get; set; }
-
+
///
/// 工艺路线子表id
///
- public string route_detail_id { get; set; }
+ public string route_detail_id { get; set; } = string.Empty;
///
/// 是否时最后一道工序
diff --git a/BasicData/Tnb.BasicData/BasDefectService.cs b/BasicData/Tnb.BasicData/BasDefectService.cs
index 01cd4c26..f75e0f46 100644
--- a/BasicData/Tnb.BasicData/BasDefectService.cs
+++ b/BasicData/Tnb.BasicData/BasDefectService.cs
@@ -36,7 +36,7 @@ namespace Tnb.BasicData
string processId = dic["processId"];
var db = _repository.AsSugarClient();
List defectIds = await db.Queryable().Where(x=>x.process_id==processId).Select(x=>x.defective_id).ToListAsync();
- List defectTypeIds = await db.Queryable().Where(x=>defectIds.Contains(x.id) && x.enabled==1).Select(x=>x.defect_type_id).ToListAsync();
+ List defectTypeIds = await db.Queryable().Where(x=>defectIds.Contains(x.id) && x.enabled==1).Select(x=>x.defect_type_id).ToListAsync();
return await _repository.AsSugarClient().Queryable()
.Where((a) => defectTypeIds.Contains(a.id))
.Select(a => new
diff --git a/BasicData/Tnb.BasicData/BasESopService.cs b/BasicData/Tnb.BasicData/BasESopService.cs
index 00d86f39..b52fc9d4 100644
--- a/BasicData/Tnb.BasicData/BasESopService.cs
+++ b/BasicData/Tnb.BasicData/BasESopService.cs
@@ -50,9 +50,9 @@ namespace Tnb.BasicData
{
var db = _repository.AsSugarClient();
Dictionary? queryJson = string.IsNullOrEmpty(input.queryJson) ? null : input.queryJson.ToObject>();
- string code = queryJson!=null && queryJson.ContainsKey("code") ? queryJson["code"].ToString() : "";
- string name = queryJson!=null && queryJson.ContainsKey("name") ? queryJson["name"].ToString() : "";
- string version = queryJson!=null && queryJson.ContainsKey("version") ? queryJson["version"].ToString() : "";
+ string? code = queryJson!=null && queryJson.ContainsKey("code") ? queryJson["code"].ToString() : "";
+ string? name = queryJson!=null && queryJson.ContainsKey("name") ? queryJson["name"].ToString() : "";
+ string? version = queryJson!=null && queryJson.ContainsKey("version") ? queryJson["version"].ToString() : "";
var list = await db.Queryable((a, b, c, d,e) => new object[]
{
JoinType.Left, a.mbom_id == b.id,
@@ -60,17 +60,17 @@ namespace Tnb.BasicData
JoinType.Left, a.create_id == d.Id,
JoinType.Left, c.process_id == e.id,
})
- .WhereIF(!string.IsNullOrEmpty(code), (a, b, c, d) => a.code.Contains(code))
- .WhereIF(!string.IsNullOrEmpty(name), (a, b, c, d) => a.name.Contains(name))
- .WhereIF(!string.IsNullOrEmpty(version), (a, b, c, d) => a.version.Contains(version))
+ .WhereIF(!string.IsNullOrEmpty(code), (a, b, c, d) => a.code.Contains(code!))
+ .WhereIF(!string.IsNullOrEmpty(name), (a, b, c, d) => a.name.Contains(name!))
+ .WhereIF(!string.IsNullOrEmpty(version), (a, b, c, d) => a.version.Contains(version!))
.Where((a,b,c)=>a.enabled==1)
.Select((a, b, c, d,e) => new ESopListOutput
{
id = a.id,
code = a.code,
name = a.name,
- mbom_id = b.version,
- mbom_process_id = e.process_name,
+ mbom_id = b.version!,
+ mbom_process_id = e.process_name!,
version = a.version,
enabled = a.enabled==1 ? "是" : "否",
attachment = a.attachment,
@@ -106,14 +106,14 @@ namespace Tnb.BasicData
.WhereIF(!string.IsNullOrEmpty(code), (a, b, c, d) => a.code.Contains(code))
.WhereIF(!string.IsNullOrEmpty(name), (a, b, c, d) => a.name.Contains(name))
.WhereIF(!string.IsNullOrEmpty(version), (a, b, c, d) => a.version.Contains(version))
- .Where((a,b,c)=>a.mbom_id==input.mbom_id && a.mbom_process_id==input.mbom_process_id)
+ .Where((a,b,c)=>a.mbom_id==input!.mbom_id && a.mbom_process_id==input!.mbom_process_id)
.Select((a, b, c, d,e) => new ESopListOutput
{
id = a.id,
code = a.code,
name = a.name,
- mbom_id = b.version,
- mbom_process_id = e.process_name,
+ mbom_id = b.version!,
+ mbom_process_id = e.process_name!,
version = a.version,
enabled = a.enabled==1 ? "是" : "否",
attachment = a.attachment,
@@ -135,7 +135,7 @@ namespace Tnb.BasicData
return await _repository.GetFirstAsync(x => x.mbom_process_id == mbomProcessId && x.enabled == 1);
}
- return null;
+ return null!;
}
[HttpPost]
diff --git a/BasicData/Tnb.BasicData/BasMaterialService.cs b/BasicData/Tnb.BasicData/BasMaterialService.cs
index 437833d4..7f2bceaa 100644
--- a/BasicData/Tnb.BasicData/BasMaterialService.cs
+++ b/BasicData/Tnb.BasicData/BasMaterialService.cs
@@ -187,16 +187,16 @@ namespace Tnb.BasicData
}
List typeList = new List();
- if(!string.IsNullOrEmpty(input.types))
+ if(!string.IsNullOrEmpty(input!.types))
{
- typeList = JsonConvert.DeserializeObject>(input.types);
+ typeList = JsonConvert.DeserializeObject>((input?.types??"")) ?? new List();
}
var query = db.Queryable()
.Where(x => x.state == "1")
- .WhereIF(queryJson != null && queryJson.ContainsKey("name"), a => a.name.Contains(queryJson["name"]))
- .WhereIF(queryJson != null && queryJson.ContainsKey("code"), a => a.code.Contains(queryJson["code"]))
+ .WhereIF(queryJson != null && queryJson.ContainsKey("name"), x => x.name.Contains(queryJson!["name"]))
+ .WhereIF(queryJson != null && queryJson.ContainsKey("code"), x => x.code.Contains(queryJson!["code"]))
.WhereIF(queryJson != null && queryJson.ContainsKey("material_standard"),
- a => a.material_standard.Contains(queryJson["material_standard"]))
+ x => x.material_standard!.Contains(queryJson!["material_standard"]))
.Select(x => x);
var list = new List>();
diff --git a/BasicData/Tnb.BasicData/BasMbomService.cs b/BasicData/Tnb.BasicData/BasMbomService.cs
index e4465534..48152663 100644
--- a/BasicData/Tnb.BasicData/BasMbomService.cs
+++ b/BasicData/Tnb.BasicData/BasMbomService.cs
@@ -297,15 +297,15 @@ namespace Tnb.BasicData
process_id = process?.process_id ?? "",
preparation_time = process?.preparation_time ?? 0,
station = process?.station ?? "",
- byproduct_status = process.byproduct_status,
- production_method = process.production_method,
- route_detail_id = process.route_detail_id,
+ byproduct_status = process?.byproduct_status ?? 0,
+ production_method = process?.production_method,
+ route_detail_id = process?.route_detail_id ?? "",
ordinal = ++index,
is_last = index==mbomSaveDataInput.processes.Count ? 1 : 0,
});
- if (process.inputs != null)
+ if (process!.inputs != null)
{
foreach (var input in process.inputs)
{
@@ -415,12 +415,12 @@ namespace Tnb.BasicData
decimal preparation_time = process?.preparation_time ?? 0;
await _repository.AsSugarClient().Updateable()
.SetColumns(x => x.preparation_time == preparation_time)
- .SetColumns(x => x.station == process.station)
- .SetColumns(x => x.byproduct_status == process.byproduct_status)
- .SetColumns(x => x.production_method == process.production_method)
- .Where(x => x.id == process.id).ExecuteCommandAsync();
+ .SetColumns(x => x.station == process!.station)
+ .SetColumns(x => x.byproduct_status == process!.byproduct_status)
+ .SetColumns(x => x.production_method == process!.production_method)
+ .Where(x => x.id == process!.id).ExecuteCommandAsync();
- if (process.inputs != null)
+ if (process!.inputs != null)
{
foreach (var input in process.inputs)
{
@@ -572,14 +572,14 @@ namespace Tnb.BasicData
process_id = process?.process_id ?? "",
preparation_time = process?.preparation_time ?? 0,
station = process?.station ?? "",
- byproduct_status = process.byproduct_status,
- production_method = process.production_method,
- route_detail_id = process.route_detail_id,
+ byproduct_status = process!.byproduct_status,
+ production_method = process!.production_method,
+ route_detail_id = process!.route_detail_id,
ordinal = ++index,
is_last = index==mbomSaveDataInput.processes.Count ? 1 : 0,
- no = process.no,
- last_process_no = process.last_process_no,
- next_process_no = process.next_process_no,
+ no = process!.no,
+ last_process_no = process!.last_process_no,
+ next_process_no = process!.next_process_no,
});
@@ -693,12 +693,12 @@ namespace Tnb.BasicData
decimal preparation_time = process?.preparation_time ?? 0;
await _repository.AsSugarClient().Updateable()
.SetColumns(x => x.preparation_time == preparation_time)
- .SetColumns(x => x.station == process.station)
- .SetColumns(x => x.byproduct_status == process.byproduct_status)
- .SetColumns(x => x.production_method == process.production_method)
- .Where(x => x.id == process.id).ExecuteCommandAsync();
+ .SetColumns(x => x.station == process!.station)
+ .SetColumns(x => x.byproduct_status == process!.byproduct_status)
+ .SetColumns(x => x.production_method == process!.production_method)
+ .Where(x => x.id == process!.id).ExecuteCommandAsync();
- if (process.inputs != null)
+ if (process!.inputs != null)
{
foreach (var input in process.inputs)
{
diff --git a/BasicData/Tnb.BasicData/BasPushRuleLogService.cs b/BasicData/Tnb.BasicData/BasPushRuleLogService.cs
index fa07ccda..9f164ef4 100644
--- a/BasicData/Tnb.BasicData/BasPushRuleLogService.cs
+++ b/BasicData/Tnb.BasicData/BasPushRuleLogService.cs
@@ -17,17 +17,11 @@ namespace Tnb.BasicData
public class BasPushRuleLogService : IBasPushRuleLogService, IDynamicApiController, ITransient
{
private readonly ISqlSugarRepository _repository;
- private readonly DataBaseManager _dbManager;
- private readonly IUserManager _userManager;
- private readonly IRunService _runService;
- private readonly IVisualDevService _visualDevService;
public BasPushRuleLogService(
- ISqlSugarRepository repository,
- IUserManager userManager)
+ ISqlSugarRepository repository)
{
_repository = repository;
- _userManager = userManager;
}
[HttpPost]
diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipDaqQueryOutput.cs b/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipDaqQueryOutput.cs
index a70f922b..9f61c3c5 100644
--- a/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipDaqQueryOutput.cs
+++ b/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipDaqQueryOutput.cs
@@ -4,7 +4,7 @@ namespace Tnb.EquipMgr.Entities.Dto
{
public string? id { get; set; }
public string? data_source { get; set; }
- public string create_id { get; set; }
+ public string create_id { get; set; } = string.Empty;
public string? create_time { get; set; }
public string? data_type { get; set; }
public string? enabled { get; set; }
diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipRepairRefuseInput.cs b/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipRepairRefuseInput.cs
index 3c30a548..798b7056 100644
--- a/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipRepairRefuseInput.cs
+++ b/EquipMgr/Tnb.EquipMgr.Entities/Dto/EquipRepairRefuseInput.cs
@@ -2,8 +2,8 @@ namespace Tnb.EquipMgr.Entities.Dto
{
public class EquipRepairRefuseInput
{
- public string id { get; set; }
- public string reason { get; set; }
+ public string id { get; set; } = string.Empty;
+ public string reason { get; set; } = string.Empty;
}
}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Dto/ToolMoldRequisitionListOutput.cs b/EquipMgr/Tnb.EquipMgr.Entities/Dto/ToolMoldRequisitionListOutput.cs
new file mode 100644
index 00000000..e4911dba
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr.Entities/Dto/ToolMoldRequisitionListOutput.cs
@@ -0,0 +1,15 @@
+namespace Tnb.EquipMgr.Entities.Dto
+{
+ public class ToolMoldRequisitionListOutput
+ {
+ public string id { get; set; } = string.Empty;
+ public string? code { get; set; } = string.Empty;
+ public string? mold_id { get; set; } = string.Empty;
+ public string? mo_task_id { get; set; } = string.Empty;
+ public string? equip_id { get; set; } = string.Empty;
+ public string? recipient_id { get; set; } = string.Empty;
+ public string? estimated_return_time { get; set; } = string.Empty;
+ public string? requisition_time { get; set; } = string.Empty;
+ public string? remark { get; set; } = string.Empty;
+ }
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Entity/ToolMoldRequisition.cs b/EquipMgr/Tnb.EquipMgr.Entities/Entity/ToolMoldRequisition.cs
new file mode 100644
index 00000000..f977b131
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr.Entities/Entity/ToolMoldRequisition.cs
@@ -0,0 +1,97 @@
+using JNPF.Common.Contracts;
+using JNPF.Common.Security;
+using SqlSugar;
+
+namespace Tnb.EquipMgr.Entities;
+
+///
+/// 模具领用
+///
+[SugarTable("tool_mold_requisition")]
+public partial class ToolMoldRequisition : BaseEntity
+{
+ public ToolMoldRequisition()
+ {
+ id = SnowflakeIdHelper.NextId();
+ }
+ ///
+ /// 领用编号
+ ///
+ public string? code { get; set; }
+
+ ///
+ /// 模具ID
+ ///
+ public string? mold_id { get; set; }
+
+ ///
+ /// 领用人
+ ///
+ public string? recipient_id { get; set; }
+
+ ///
+ /// 创建用户
+ ///
+ public string? create_id { get; set; }
+
+ ///
+ /// 创建时间
+ ///
+ public DateTime? create_time { get; set; }
+
+ ///
+ /// 修改用户
+ ///
+ public string? modify_id { get; set; }
+
+ ///
+ /// 修改时间
+ ///
+ public DateTime? modify_time { get; set; }
+
+ ///
+ /// 生产任务单编号
+ ///
+ public string? mo_task_code { get; set; }
+
+ ///
+ /// 生产任务单id
+ ///
+ public string? mo_task_id { get; set; }
+
+ ///
+ /// 预计归还日期
+ ///
+ public DateTime? estimated_return_time { get; set; }
+
+ ///
+ /// 所属组织
+ ///
+ public string? org_id { get; set; }
+
+ ///
+ /// 领用时间
+ ///
+ public DateTime? requisition_time { get; set; }
+
+ ///
+ /// 用于设备
+ ///
+ public string? equip_id { get; set; }
+
+ ///
+ /// 流程任务Id
+ ///
+ public string? f_flowtaskid { get; set; }
+
+ ///
+ /// 流程引擎Id
+ ///
+ public string? f_flowid { get; set; }
+
+ ///
+ /// 备注
+ ///
+ public string? remark { get; set; }
+
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Entity/ToolMoldReturn.cs b/EquipMgr/Tnb.EquipMgr.Entities/Entity/ToolMoldReturn.cs
new file mode 100644
index 00000000..d8ef0ab1
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr.Entities/Entity/ToolMoldReturn.cs
@@ -0,0 +1,87 @@
+using JNPF.Common.Contracts;
+using JNPF.Common.Security;
+using SqlSugar;
+
+namespace Tnb.EquipMgr.Entities;
+
+///
+/// 模具归还
+///
+[SugarTable("tool_mold_return")]
+public partial class ToolMoldReturn : BaseEntity
+{
+ public ToolMoldReturn()
+ {
+ id = SnowflakeIdHelper.NextId();
+ }
+ ///
+ /// 归还编号
+ ///
+ public string? code { get; set; }
+
+ ///
+ /// 模具ID
+ ///
+ public string? mold_id { get; set; }
+
+ ///
+ /// 归还人
+ ///
+ public string? return_id { get; set; }
+
+ ///
+ /// 创建用户
+ ///
+ public string? create_id { get; set; }
+
+ ///
+ /// 创建时间
+ ///
+ public DateTime? create_time { get; set; }
+
+ ///
+ /// 修改用户
+ ///
+ public string? modify_id { get; set; }
+
+ ///
+ /// 修改时间
+ ///
+ public DateTime? modify_time { get; set; }
+
+ ///
+ /// 所属组织
+ ///
+ public string? org_id { get; set; }
+
+ ///
+ /// 归还时间
+ ///
+ public DateTime? return_time { get; set; }
+
+ ///
+ /// 用于设备
+ ///
+ public string? equip_id { get; set; }
+
+ ///
+ /// 流程任务Id
+ ///
+ public string? f_flowtaskid { get; set; }
+
+ ///
+ /// 流程引擎Id
+ ///
+ public string? f_flowid { get; set; }
+
+ ///
+ /// 备注
+ ///
+ public string? remark { get; set; }
+
+ ///
+ /// 归还库位id
+ ///
+ public string? location_id { get; set; }
+
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr.Interfaces/IToolMoldRequisitionService.cs b/EquipMgr/Tnb.EquipMgr.Interfaces/IToolMoldRequisitionService.cs
new file mode 100644
index 00000000..15fbd54c
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr.Interfaces/IToolMoldRequisitionService.cs
@@ -0,0 +1,10 @@
+namespace Tnb.EquipMgr.Interfaces
+{
+ ///
+ /// 模具领用服务
+ ///
+ public interface IToolMoldRequisitionService
+ {
+
+ }
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr.Interfaces/IToolMoldReturnService.cs b/EquipMgr/Tnb.EquipMgr.Interfaces/IToolMoldReturnService.cs
new file mode 100644
index 00000000..0f9485db
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr.Interfaces/IToolMoldReturnService.cs
@@ -0,0 +1,9 @@
+namespace Tnb.EquipMgr.Interfaces
+{
+ ///
+ /// 模具归还服务
+ ///
+ public interface IToolMoldReturnService
+ {
+ }
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr/ToolMoldRequisitionService.cs b/EquipMgr/Tnb.EquipMgr/ToolMoldRequisitionService.cs
new file mode 100644
index 00000000..6b8b554e
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr/ToolMoldRequisitionService.cs
@@ -0,0 +1,116 @@
+using JNPF.Common.Dtos.VisualDev;
+using JNPF.Common.Enums;
+using JNPF.Common.Extension;
+using JNPF.Common.Filter;
+using JNPF.Common.Security;
+using JNPF.DependencyInjection;
+using JNPF.DynamicApiController;
+using JNPF.FriendlyException;
+using JNPF.Systems.Entitys.Permission;
+using JNPF.VisualDev;
+using JNPF.VisualDev.Entitys;
+using JNPF.VisualDev.Entitys.Dto.VisualDevModelData;
+using JNPF.VisualDev.Interfaces;
+using Microsoft.AspNetCore.Mvc;
+using Newtonsoft.Json;
+using SqlSugar;
+using Tnb.EquipMgr.Entities;
+using Tnb.EquipMgr.Entities.Dto;
+using Tnb.EquipMgr.Interfaces;
+using Tnb.ProductionMgr.Entities;
+
+namespace Tnb.EquipMgr
+{
+ ///
+ /// 模具领用接口
+ ///
+ [ApiDescriptionSettings(Tag = ModuleConsts.Tag, Area = ModuleConsts.Area, Order = 700)]
+ [Route("api/[area]/[controller]/[action]")]
+ [OverideVisualDev(ModuleId)]
+ public class ToolMoldRequisitionService : IOverideVisualDevService, IToolMoldRequisitionService,
+ IDynamicApiController, ITransient
+ {
+ private const string ModuleId = "27254745336853";
+ private readonly ISqlSugarClient _db;
+ private readonly IRunService _runService;
+ private readonly IVisualDevService _visualDevService;
+ public OverideVisualDevFunc OverideFuncs { get; } = new OverideVisualDevFunc();
+
+ public ToolMoldRequisitionService(
+ ISqlSugarRepository repository,
+ IRunService runService,
+ IVisualDevService visualDevService
+ )
+ {
+ _db = repository.AsSugarClient();
+ _runService = runService;
+ _visualDevService = visualDevService;
+ OverideFuncs.GetListAsync = GetList;
+ OverideFuncs.CreateAsync = Create;
+ }
+
+ private async Task GetList(VisualDevModelListQueryInput input)
+ {
+ Dictionary? queryJson = new Dictionary();
+ string requisitionCode = "";
+ DateTime[] requisitionTimeArr = null;
+ DateTime[] estimatedReturnArr = null;
+ if (input!=null && !string.IsNullOrEmpty(input.queryJson))
+ {
+ queryJson = JsonConvert.DeserializeObject>(input?.queryJson ?? "");
+ }
+
+ if (queryJson.TryGetValue("requisition_code", out var value))
+ {
+ requisitionCode = value.ToString();
+ }
+ if (queryJson.TryGetValue("requisition_time", out var value1))
+ {
+ requisitionTimeArr = value1.ToObject().Select(x=>DateTimeOffset.FromUnixTimeSeconds(x/1000).ToLocalTime().DateTime).ToArray();
+ }
+ if (queryJson.TryGetValue("estimated_return_time", out var value2))
+ {
+ estimatedReturnArr = value2.ToObject().Select(x=>DateTimeOffset.FromUnixTimeSeconds(x/1000).ToLocalTime().DateTime).ToArray();
+ }
+
+ var result = await _db.Queryable()
+ .LeftJoin((a, b) => a.mo_task_id == b.id)
+ .LeftJoin((a, b, c) => a.equip_id == c.id)
+ .LeftJoin((a, b, c, d) => a.recipient_id == d.Id)
+ .LeftJoin((a,b,c,d,e)=>a.mold_id==e.id)
+ .WhereIF(!string.IsNullOrEmpty(requisitionCode), (a, b, c, d) => a.code.Contains(requisitionCode))
+ .WhereIF(requisitionTimeArr!=null, (a, b, c, d) => a.requisition_time>=requisitionTimeArr[0] && a.requisition_time<=requisitionTimeArr[1])
+ .WhereIF(estimatedReturnArr!=null, (a, b, c, d) => a.estimated_return_time>=estimatedReturnArr[0] && a.estimated_return_time<=estimatedReturnArr[1])
+ .Select((a, b, c, d,e) => new ToolMoldRequisitionListOutput
+ {
+ id = a.id,
+ code = a.code,
+ mold_id = e.mold_code,
+ mo_task_id = b.mo_task_code,
+ equip_id = c.code+"/"+c.name,
+ recipient_id = d.RealName,
+ estimated_return_time = a.estimated_return_time==null ? "" : a.estimated_return_time.Value.ToString("yyyy-MM-dd"),
+ requisition_time = a.requisition_time==null ? "" : a.requisition_time.Value.ToString("yyyy-MM-dd"),
+ remark = a.remark
+ }).ToPagedListAsync(input.currentPage, input.pageSize);
+
+ return PageResult.SqlSugarPageResult(result);
+ }
+
+ private async Task Create(VisualDevModelDataCrInput input)
+ {
+ DbResult result = await _db.Ado.UseTranAsync(async () =>
+ {
+ VisualDevEntity? templateEntity = await _visualDevService.GetInfoById(ModuleId, true);
+ await _runService.Create(templateEntity, input);
+
+
+ await _db.Updateable().SetColumns(x => x.mold_status == Tnb.BasicData.DictConst.SCTypeId)
+ .Where(X => X.id == input.data["mold_id"]).ExecuteCommandAsync();
+ });
+
+ if (!result.IsSuccess) throw Oops.Oh(ErrorCode.COM1008);
+ return result.IsSuccess ? "保存成功" : result.ErrorMessage;
+ }
+ }
+}
\ No newline at end of file
diff --git a/EquipMgr/Tnb.EquipMgr/ToolMoldReturnService.cs b/EquipMgr/Tnb.EquipMgr/ToolMoldReturnService.cs
new file mode 100644
index 00000000..9f64db8e
--- /dev/null
+++ b/EquipMgr/Tnb.EquipMgr/ToolMoldReturnService.cs
@@ -0,0 +1,67 @@
+using JNPF.Common.Dtos.VisualDev;
+using JNPF.Common.Enums;
+using JNPF.DependencyInjection;
+using JNPF.DynamicApiController;
+using JNPF.FriendlyException;
+using JNPF.VisualDev;
+using JNPF.VisualDev.Entitys;
+using JNPF.VisualDev.Interfaces;
+using Microsoft.AspNetCore.Mvc;
+using SqlSugar;
+using Tnb.EquipMgr.Entities;
+using Tnb.EquipMgr.Entities.Dto;
+using Tnb.EquipMgr.Interfaces;
+using Tnb.ProductionMgr.Entities;
+
+namespace Tnb.EquipMgr
+{
+ ///
+ /// 模具归还接口
+ ///
+ [ApiDescriptionSettings(Tag = ModuleConsts.Tag, Area = ModuleConsts.Area, Order = 700)]
+ [Route("api/[area]/[controller]/[action]")]
+ [OverideVisualDev(ModuleId)]
+ public class ToolMoldReturnService : IOverideVisualDevService, IToolMoldReturnService,IDynamicApiController, ITransient
+ {
+ private const string ModuleId = "27275901607701";
+ private readonly ISqlSugarClient _db;
+ private readonly IRunService _runService;
+ private readonly IVisualDevService _visualDevService;
+ public OverideVisualDevFunc OverideFuncs { get; } = new OverideVisualDevFunc();
+
+ public ToolMoldReturnService(
+ ISqlSugarRepository repository,
+ IRunService runService,
+ IVisualDevService visualDevService
+ )
+ {
+ _db = repository.AsSugarClient();
+ _runService = runService;
+ _visualDevService = visualDevService;
+ OverideFuncs.CreateAsync = Create;
+ }
+
+ private async Task Create(VisualDevModelDataCrInput input)
+ {
+ DbResult result = await _db.Ado.UseTranAsync(async () =>
+ {
+ VisualDevEntity? templateEntity = await _visualDevService.GetInfoById(ModuleId, true);
+ await _runService.Create(templateEntity, input);
+
+
+ string locationId = "";
+ if (input.data.TryGetValue("location_id", out var value))
+ {
+ locationId = value.ToString();
+ }
+ await _db.Updateable()
+ .SetColumns(x => x.mold_status == Tnb.BasicData.DictConst.ZKTypeId)
+ .SetColumnsIF(!string.IsNullOrEmpty(locationId),x=>x.location_id==locationId)
+ .Where(X => X.id == input.data["mold_id"]).ExecuteCommandAsync();
+ });
+
+ if (!result.IsSuccess) throw Oops.Oh(ErrorCode.COM1008);
+ return result.IsSuccess ? "保存成功" : result.ErrorMessage;
+ }
+ }
+}
\ No newline at end of file
diff --git a/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdMoListTreeOutput.cs b/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdMoListTreeOutput.cs
index 13b260bd..7636d120 100644
--- a/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdMoListTreeOutput.cs
+++ b/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdMoListTreeOutput.cs
@@ -18,7 +18,7 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
/// 工单id
///
- public string mo_id { get; set; }
+ public string mo_id { get; set; } = string.Empty;
///
/// 工单代码
@@ -32,11 +32,11 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
///
/// 物料名称
///
- public string material_name { get; set; }
+ public string material_name { get; set; } = string.Empty;
///
/// 物料规格型号
///
- public string material_standard { get; set; }
+ public string material_standard { get; set; } = string.Empty;
///
/// 工单类型:1-正常工单、2-返工工单、3-试制工单
@@ -51,37 +51,37 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
///
/// 计划生产数量
///
- public string plan_qty { get; set; }
+ public string plan_qty { get; set; } = string.Empty;
///
/// 已投入数量
///
- public string input_qty { get; set; }
+ public string input_qty { get; set; } = string.Empty;
///
/// 已完工数量
///
- public string complete_qty { get; set; }
+ public string complete_qty { get; set; } = string.Empty;
///
/// 报废数量
///
- public string scrap_qty { get; set; }
+ public string scrap_qty { get; set; } = string.Empty;
///
/// 计划开始时间
///
- public string plan_start_date { get; set; }
+ public string plan_start_date { get; set; } = string.Empty;
///
/// 计划结束时间
///
- public string plan_end_date { get; set; }
+ public string plan_end_date { get; set; } = string.Empty;
///
/// 是否生派工单
///
- public string is_create_dispatch { get; set; }
+ public string is_create_dispatch { get; set; } = string.Empty;
///
@@ -92,7 +92,7 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
///
/// 是否合并
///
- public string is_merge { get; set; }
+ public string is_merge { get; set; } = string.Empty;
///
/// 组合工单
@@ -112,7 +112,7 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
///
/// 创建时间
///
- public string create_time { get; set; }
+ public string create_time { get; set; } = string.Empty;
///
/// 修改用户
@@ -122,7 +122,7 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
///
/// 修改时间
///
- public string modify_time { get; set; }
+ public string modify_time { get; set; } = string.Empty;
///
/// 物料ID
///
@@ -131,23 +131,23 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
///
/// 已排产数量
///
- public string scheduled_qty { get; set; }
+ public string scheduled_qty { get; set; } = string.Empty;
///
/// 父工单id
///
- public string parent_id { get; set; }
+ public string parent_id { get; set; } = string.Empty;
///
/// 获取节点id.
///
///
- public string id { get; set; }
+ public string id { get; set; } = string.Empty;
///
/// 获取节点父id.
///
///
- public string parentId { get; set; }
+ public string parentId { get; set; } = string.Empty;
///
/// 是否有子级.
diff --git a/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdTaskManageListOutput.cs b/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdTaskManageListOutput.cs
index 6bea2d0d..42f333f4 100644
--- a/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdTaskManageListOutput.cs
+++ b/ProductionMgr/Tnb.ProductionMgr.Entities/Dto/PrdManage/PrdTaskManageListOutput.cs
@@ -2,16 +2,16 @@ namespace Tnb.ProductionMgr.Entities.Dto.PrdManage
{
public class PrdTaskManageListOutput
{
- public string id { get; set; }
- public string mo_task_code { get; set; }
- public string material_id { get; set; }
- public string mold_id { get; set; }
- public string eqp_id { get; set; }
- public string plan_start_date { get; set; }
- public string plan_end_date { get; set; }
+ public string id { get; set; } = string.Empty;
+ public string mo_task_code { get; set; } = string.Empty;
+ public string material_id { get; set; } = string.Empty;
+ public string mold_id { get; set; } = string.Empty;
+ public string eqp_id { get; set; } = string.Empty;
+ public string plan_start_date { get; set; } = string.Empty;
+ public string plan_end_date { get; set; } = string.Empty;
public int? plan_qty { get; set; }
public int? complete_qty { get; set; }
- public string mo_task_status { get; set; }
- public string schedule_type { get; set; }
+ public string mo_task_status { get; set; } = string.Empty;
+ public string schedule_type { get; set; } = string.Empty;
}
}
\ No newline at end of file
diff --git a/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpEquipCheckPlanTimeWorker.cs b/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpEquipCheckPlanTimeWorker.cs
index cb606392..b2742ceb 100644
--- a/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpEquipCheckPlanTimeWorker.cs
+++ b/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpEquipCheckPlanTimeWorker.cs
@@ -21,7 +21,7 @@ namespace JNPF.TaskScheduler.Listener
{
var db = _repository.AsSugarClient();
- List ids = _repository.GetList(x => x.status == "0").Select(x => x.equip_id).Distinct()
+ List ids = _repository.GetList(x => x.status == "0").Select(x => x.equip_id).Distinct()
.ToList();
List list = db.Queryable().GroupBy(x=>new
@@ -35,7 +35,7 @@ namespace JNPF.TaskScheduler.Listener
})
.MergeTable()
- .LeftJoin((x,y)=>x.equip_id==y.equip_id && x.create_time.Value.ToString("yyyy-MM-dd")==y.create_time.Value.ToString("yyyy-MM-dd"))
+ .LeftJoin((x,y)=>x.equip_id==y.equip_id && x.create_time!.Value.ToString("yyyy-MM-dd")==y.create_time!.Value.ToString("yyyy-MM-dd"))
.Select((x,y)=>y)
.ToList();
@@ -48,7 +48,7 @@ namespace JNPF.TaskScheduler.Listener
{
if (item.warn_unit == "1")
{
- if (item.end_time.Value.AddMonths(-item.warm_time.Value).ToString("yyyy-MM-dd") ==
+ if (item.end_time.Value.AddMonths(-item.warm_time!.Value).ToString("yyyy-MM-dd") ==
DateTime.Now.ToString("yyyy-MM-dd"))
{
insertList.Add(new EqpSpEquipCheckRecord()
@@ -61,7 +61,7 @@ namespace JNPF.TaskScheduler.Listener
}else if (item.warn_unit == "2")
{
- if (item.end_time.Value.AddDays(-item.warm_time.Value).ToString("yyyy-MM-dd") ==
+ if (item.end_time.Value.AddDays(-item.warm_time!.Value).ToString("yyyy-MM-dd") ==
DateTime.Now.ToString("yyyy-MM-dd"))
{
insertList.Add(new EqpSpEquipCheckRecord()
diff --git a/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpotInspectionPlanTimeWorker.cs b/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpotInspectionPlanTimeWorker.cs
index 37857265..044515eb 100644
--- a/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpotInspectionPlanTimeWorker.cs
+++ b/taskschedule/Tnb.TaskScheduler/Listener/GenerateSpotInspectionPlanTimeWorker.cs
@@ -180,13 +180,5 @@ namespace JNPF.TaskScheduler.Listener
Log.Information("----------------------结束生成点巡检计划----------------------");
}
- ///
- /// 最后一个点巡检记录
- ///
- private class SpotInsRecordLastDTO
- {
- public string spot_ins_tem_equip_id { get; set; }
- public DateTime create_time { get; set; }
- }
}
}
\ No newline at end of file
diff --git a/taskschedule/Tnb.TaskScheduler/TimeTaskService.cs b/taskschedule/Tnb.TaskScheduler/TimeTaskService.cs
index 8e4b6bd2..e626badc 100644
--- a/taskschedule/Tnb.TaskScheduler/TimeTaskService.cs
+++ b/taskschedule/Tnb.TaskScheduler/TimeTaskService.cs
@@ -449,7 +449,6 @@ public class TimeTaskService : ITimeTaskService, IDynamicApiController, ITransie
})).ToList();
await _cacheManager.SetAsync(CommonConst.CACHEKEYTIMERJOB, taskMethods);
return taskMethods;
- return new List();
}
#endregion