From fdf4cdbf9723d9d05938fe56d2014769dd7ece4c Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周六, 10 5月 2025 12:17:19 +0800 Subject: [PATCH] 修复 模糊查询bug --- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs | 288 +- Weben_CMS专用代码生成器/Code/Utility/ListHelper.cs | 2 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/MapperProfiles/WorkPlanAutoMapperProfile.cs | 3 PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMS.Plugin.PipeLineLems.csproj | 6 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRootForRecord.cs | 94 + PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.Designer.cs | 385 +++++ Weben_CMS专用代码生成器/Code/GenerateCode_WeiBen_CMS.csproj | 3 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRoot.cs | 136 + Weben_CMS专用代码生成器/Code/Generate/Web/Controllers/EntityModeDrawer_Generate.cs | 6 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanExportModel.cs | 288 +-- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensions.cs | 114 + PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMSPluginEntry.cs | 2 Weben_CMS专用代码生成器/Code/Utility/StructStrHelper.cs | 80 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/WorkPlan/WorkPlan.cs | 275 +-- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanDto.cs | 311 +-- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs | 306 +-- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanCreateOrUpdateDtoBase.cs | 242 +- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs | 783 ++++----- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/GetWorkPlanInput.cs | 570 +++---- CommonDLL/CmsQueryExtensions.dll | 0 Weben_CMS专用代码生成器/Code/Utility/CommonHelper.cs | 13 /dev/null | 142 - Weben_CMS专用代码生成器/Code/MainForm.cs | 12 Weben_CMS专用代码生成器/queryExtensions/CmsQueryExtensions/Extension/DynamicSearchParameters/PredicateExtensions/PredicateExtensions.cs | 102 + PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WorkPlan.cs | 93 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensionsForRecord.cs | 96 + PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.cs | 178 ++ Weben_CMS专用代码生成器/Code/File/GenerateCodeConfigParamFiles/祥子的作业计划表配置文本(模糊查询自动版).txt | 14 PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Resources/Templates/WorkPlan导出模板.xlsx | 0 Weben_CMS专用代码生成器/Code/MainForm.Designer.cs | 17 PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Repositories/EfCoreWorkPlanRepository.cs | 2 31 files changed, 2,641 insertions(+), 1,922 deletions(-) diff --git a/CommonDLL/CmsQueryExtensions.dll b/CommonDLL/CmsQueryExtensions.dll index f0ee850..813fc1b 100644 --- a/CommonDLL/CmsQueryExtensions.dll +++ b/CommonDLL/CmsQueryExtensions.dll Binary files differ diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/GetWorkPlanInput.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/GetWorkPlanInput.cs index 1209f34..e97ec45 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/GetWorkPlanInput.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/GetWorkPlanInput.cs @@ -54,14 +54,134 @@ public SearchFilterModeEnum TaskCode_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// 鍘熸枡缂栧彿 + /// 鍘熸枡鏍囪瘑 /// </summary> - public string OrgMaterialCode { get; set; } + public string DataIdentifier { get; set; } /// <summary> - /// 鍘熸枡缂栧彿-鏌ヨ鍏崇郴杩愮畻绗� + /// 鍘熸枡鏍囪瘑-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public SearchFilterModeEnum OrgMaterialCode_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + public SearchFilterModeEnum DataIdentifier_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 鍘熸枡鍨嬪彿 + /// </summary> + public string MaterialMode { get; set; } + + /// <summary> + /// 鍘熸枡鍨嬪彿-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum MaterialMode_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 闀垮害(mm) + /// </summary> + public decimal? Length { get; set; } + + /// <summary> + /// 闀垮害(mm)-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum Length_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 鎵撶爜鍐呭 + /// </summary> + public string MarkingContent { get; set; } + + /// <summary> + /// 鎵撶爜鍐呭-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum MarkingContent_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 鎵撶爜浣嶇疆 + /// </summary> + public decimal? MarkingPosition { get; set; } + + /// <summary> + /// 鎵撶爜浣嶇疆-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum MarkingPosition_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 鍒囧壊浣嶇疆 + /// </summary> + public decimal? CuttingPosition { get; set; } + + /// <summary> + /// 鍒囧壊浣嶇疆-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum CuttingPosition_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 绠℃鏁伴噺 + /// </summary> + public int? Quantity { get; set; } + + /// <summary> + /// 绠℃鏁伴噺-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum Quantity_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 娉曞叞鍘氬害(mm) + /// </summary> + public decimal? FlangeThickness { get; set; } + + /// <summary> + /// 娉曞叞鍘氬害(mm)-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum FlangeThickness_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 娉曞叞鐩村緞(mm) + /// </summary> + public decimal? FlangeInnerDiameter { get; set; } + + /// <summary> + /// 娉曞叞鐩村緞(mm)-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum FlangeInnerDiameter_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 娉曞叞鍏О鍘嬪姏 + /// </summary> + public string WeldingHeatInput { get; set; } + + /// <summary> + /// 娉曞叞鍏О鍘嬪姏-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum WeldingHeatInput_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 娉曞叞鍐茬爜鍐呭 + /// </summary> + public string PipeAllowableStress { get; set; } + + /// <summary> + /// 娉曞叞鍐茬爜鍐呭-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum PipeAllowableStress_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 濂楃闀垮害(mm) + /// </summary> + public decimal? PipeDiameter { get; set; } + + /// <summary> + /// 濂楃闀垮害(mm)-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum PipeDiameter_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 濂楃鐩村緞(mm) + /// </summary> + public decimal? PipeWallThickness { get; set; } + + /// <summary> + /// 濂楃鐩村緞(mm)-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum PipeWallThickness_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; /// <summary> /// 宸ュ巶浠g爜 @@ -144,22 +264,12 @@ public SearchFilterModeEnum PreSerialNumber_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// 鍘熸枡鏍囪瘑 - /// </summary> - public string DataIdentifier { get; set; } - - /// <summary> - /// 鍘熸枡鏍囪瘑-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum DataIdentifier_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 绠¤鏍肩爜 + /// 绠℃缂栫爜 /// </summary> public string PipeSpecCode { get; set; } /// <summary> - /// 绠¤鏍肩爜-鏌ヨ鍏崇郴杩愮畻绗� + /// 绠℃缂栫爜-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> public SearchFilterModeEnum PipeSpecCode_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; @@ -174,24 +284,24 @@ public SearchFilterModeEnum PipeSectionName_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// 澶栧緞 + /// 澶栧緞(mm) /// </summary> - public string OuterDiameter { get; set; } + public decimal? OuterDiameter { get; set; } /// <summary> - /// 澶栧緞-鏌ヨ鍏崇郴杩愮畻绗� + /// 澶栧緞(mm)-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public SearchFilterModeEnum OuterDiameter_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + public SearchFilterModeEnum OuterDiameter_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; /// <summary> - /// 鍧″彛 + /// 澹佸帤(mm) /// </summary> - public string Bevel { get; set; } + public decimal? Thickness { get; set; } /// <summary> - /// 鍧″彛-鏌ヨ鍏崇郴杩愮畻绗� + /// 澹佸帤(mm)-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public SearchFilterModeEnum Bevel_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + public SearchFilterModeEnum Thickness_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; /// <summary> /// 鏉愯川 @@ -204,252 +314,22 @@ public SearchFilterModeEnum Material_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// 闀垮害 - /// </summary> - public string Length { get; set; } - - /// <summary> - /// 闀垮害-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum Length_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鎵撳瓟浣� - /// </summary> - public string DrillingPosition { get; set; } - - /// <summary> - /// 鎵撳瓟浣�-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum DrillingPosition_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鐩歌疮 - /// </summary> - public string Intersecting { get; set; } - - /// <summary> - /// 鐩歌疮-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum Intersecting_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鎺ュ彛瑕佹眰 - /// </summary> - public string InterfaceRequirement { get; set; } - - /// <summary> - /// 鎺ュ彛瑕佹眰-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum InterfaceRequirement_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鏄惁鏈変富绛� + /// 鏄惁涓绘敮绠� /// </summary> public bool? HasMainSignature { get; set; } /// <summary> - /// 鏄惁鏈変富绛�-鏌ヨ鍏崇郴杩愮畻绗� + /// 鏄惁涓绘敮绠�-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> public SearchFilterModeEnum HasMainSignature_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; /// <summary> - /// 鍖呮嫭鏁伴噺 - /// </summary> - public int? Quantity { get; set; } - - /// <summary> - /// 鍖呮嫭鏁伴噺-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum Quantity_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; - - /// <summary> - /// 鎵撶爜鍐呭 - /// </summary> - public string MarkingContent { get; set; } - - /// <summary> - /// 鎵撶爜鍐呭-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum MarkingContent_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鍒囧壊鏂囦欢 - /// </summary> - public string CuttingFile { get; set; } - - /// <summary> - /// 鍒囧壊鏂囦欢-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum CuttingFile_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鏀寰� - /// </summary> - public string BranchOuterDiameter { get; set; } - - /// <summary> - /// 鏀寰�-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum BranchOuterDiameter_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鏀澹佸帤 - /// </summary> - public string BranchWallThickness { get; set; } - - /// <summary> - /// 鏀澹佸帤-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum BranchWallThickness_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鏀鏉愯川 - /// </summary> - public string BranchMaterial { get; set; } - - /// <summary> - /// 鏀鏉愯川-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum BranchMaterial_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鏀绔彛鏇茬巼鍗婂緞 - /// </summary> - public string BranchPortRadius { get; set; } - - /// <summary> - /// 鏀绔彛鏇茬巼鍗婂緞-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum BranchPortRadius_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鏀绔彛瑙掑害 - /// </summary> - public string BranchPortAngle { get; set; } - - /// <summary> - /// 鏀绔彛瑙掑害-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum BranchPortAngle_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鏀绔彛瑕佹眰 - /// </summary> - public string BranchPortRequirement { get; set; } - - /// <summary> - /// 鏀绔彛瑕佹眰-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum BranchPortRequirement_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鐩歌疮绾跨被鍨� - /// </summary> - public string IntersectingLineType { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍨�-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum IntersectingLineType_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鐩歌疮绾跨被鍒� - /// </summary> - public string IntersectingLineCategory { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍒�-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum IntersectingLineCategory_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鎴愬搧鍥惧箙 - /// </summary> - public string FinishedProductScale { get; set; } - - /// <summary> - /// 鎴愬搧鍥惧箙-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum FinishedProductScale_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 娉曞叞鍘氬害 - /// </summary> - public string FlangeThickness { get; set; } - - /// <summary> - /// 娉曞叞鍘氬害-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum FlangeThickness_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 娉曞叞鍐呭緞 - /// </summary> - public string FlangeInnerDiameter { get; set; } - - /// <summary> - /// 娉曞叞鍐呭緞-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum FlangeInnerDiameter_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 鐒婃帴鐑緭鍏� - /// </summary> - public string WeldingHeatInput { get; set; } - - /// <summary> - /// 鐒婃帴鐑緭鍏�-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum WeldingHeatInput_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 绠¢亾鍏佽搴斿姏 - /// </summary> - public string PipeAllowableStress { get; set; } - - /// <summary> - /// 绠¢亾鍏佽搴斿姏-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum PipeAllowableStress_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 绠″緞 - /// </summary> - public string PipeDiameter { get; set; } - - /// <summary> - /// 绠″緞-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum PipeDiameter_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 绠¢亾澹佸帤 - /// </summary> - public string PipeWallThickness { get; set; } - - /// <summary> - /// 绠¢亾澹佸帤-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum PipeWallThickness_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// VR鏁版嵁 - /// </summary> - public string VRData { get; set; } - - /// <summary> - /// VR鏁版嵁-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum VRData_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// 宸ヨ壓璺嚎缂栧彿 + /// 宸ヨ壓娴佸悜缂栧彿 /// </summary> public string ProcessRouteNumber { get; set; } /// <summary> - /// 宸ヨ壓璺嚎缂栧彿-鏌ヨ鍏崇郴杩愮畻绗� + /// 宸ヨ壓娴佸悜缂栧彿-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> public SearchFilterModeEnum ProcessRouteNumber_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; @@ -470,44 +350,128 @@ /// <summary> - /// 鏃堕棿淇℃伅 + /// 鐝粍淇℃伅 /// </summary> - public string TimeInfo { get; set; } + public string TeamInfo { get; set; } /// <summary> - /// 鏃堕棿淇℃伅-鏌ヨ鍏崇郴杩愮畻绗� + /// 鐝粍淇℃伅-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public SearchFilterModeEnum TimeInfo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + public SearchFilterModeEnum TeamInfo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// + /// 鏃堕棿鎴� /// </summary> - public string RedundantField1 { get; set; } + public string Timestamp { get; set; } /// <summary> - /// -鏌ヨ鍏崇郴杩愮畻绗� + /// 鏃堕棿鎴�-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public SearchFilterModeEnum RedundantField1_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + public SearchFilterModeEnum Timestamp_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// + /// 鍒涘缓鏃堕棿 /// </summary> - public string RedundantField2 { get; set; } + //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规�� + [HighSearchRangeAttribute] + public List<string> CreationTime { get; set; } + /// <summary> - /// -鏌ヨ鍏崇郴杩愮畻绗� + /// 鍒涘缓浜篒D /// </summary> - public SearchFilterModeEnum RedundantField2_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + public string CreatorId { get; set; } /// <summary> - /// + /// 鍒涘缓浜篒D-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public string RedundantField3 { get; set; } + public SearchFilterModeEnum CreatorId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// -鏌ヨ鍏崇郴杩愮畻绗� + /// 淇敼鏃堕棿 /// </summary> - public SearchFilterModeEnum RedundantField3_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规�� + [HighSearchRangeAttribute] + public List<string> LastModificationTime { get; set; } + + + /// <summary> + /// 淇敼浜篒D + /// </summary> + public string LastModifierId { get; set; } + + /// <summary> + /// 淇敼浜篒D-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum LastModifierId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 鏄惁鍒犻櫎 + /// </summary> + public bool? IsDeleted { get; set; } + + /// <summary> + /// 鏄惁鍒犻櫎-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum IsDeleted_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; + + /// <summary> + /// 鍒犻櫎浜篒D + /// </summary> + public string DeleterId { get; set; } + + /// <summary> + /// 鍒犻櫎浜篒D-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum DeleterId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 鍒犻櫎鏃堕棿 + /// </summary> + //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规�� + [HighSearchRangeAttribute] + public List<string> DeletionTime { get; set; } + + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public string CreatorName { get; set; } + + /// <summary> + /// 鍒涘缓浜�-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum CreatorName_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 淇敼浜� + /// </summary> + public string LastModifierName { get; set; } + + /// <summary> + /// 淇敼浜�-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum LastModifierName_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 鎿嶄綔澶囨敞 + /// </summary> + public string OperationRemark { get; set; } + + /// <summary> + /// 鎿嶄綔澶囨敞-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum OperationRemark_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + + /// <summary> + /// 鍒犻櫎澶囨敞 + /// </summary> + public string DeleteRemark { get; set; } + + /// <summary> + /// 鍒犻櫎澶囨敞-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum DeleteRemark_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> /// 鎺掑簭 @@ -540,68 +504,34 @@ public SearchFilterModeEnum IsDisabled_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; /// <summary> - /// + /// 鎵╁睍瀛楁1 /// </summary> - //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规�� - [HighSearchRangeAttribute] - public List<string> CreationTime { get; set; } - + public string ExtraField1 { get; set; } /// <summary> - /// + /// 鎵╁睍瀛楁1-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public string CreatorId { get; set; } + public SearchFilterModeEnum ExtraField1_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// -鏌ヨ鍏崇郴杩愮畻绗� + /// 鎵╁睍瀛楁2 /// </summary> - public SearchFilterModeEnum CreatorId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + public string ExtraField2 { get; set; } /// <summary> - /// + /// 鎵╁睍瀛楁2-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规�� - [HighSearchRangeAttribute] - public List<string> LastModificationTime { get; set; } - + public SearchFilterModeEnum ExtraField2_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> - /// + /// 鎵╁睍瀛楁3 /// </summary> - public string LastModifierId { get; set; } + public string ExtraField3 { get; set; } /// <summary> - /// -鏌ヨ鍏崇郴杩愮畻绗� + /// 鎵╁睍瀛楁3-鏌ヨ鍏崇郴杩愮畻绗� /// </summary> - public SearchFilterModeEnum LastModifierId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// - /// </summary> - public bool? IsDeleted { get; set; } - - /// <summary> - /// -鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum IsDeleted_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ; - - /// <summary> - /// - /// </summary> - public string DeleterId { get; set; } - - /// <summary> - /// -鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum DeleterId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; - - /// <summary> - /// - /// </summary> - //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规�� - [HighSearchRangeAttribute] - public List<string> DeletionTime { get; set; } - + public SearchFilterModeEnum ExtraField3_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; } diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanCreateOrUpdateDtoBase.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanCreateOrUpdateDtoBase.cs index 29d0c69..a120975 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanCreateOrUpdateDtoBase.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanCreateOrUpdateDtoBase.cs @@ -15,9 +15,69 @@ public string TaskCode { get; set; } /// <summary> - /// 鍘熸枡缂栧彿 + /// 鍘熸枡鏍囪瘑 /// </summary> - public string OrgMaterialCode { get; set; } + public string? DataIdentifier { get; set; } + + /// <summary> + /// 鍘熸枡鍨嬪彿 + /// </summary> + public string? MaterialMode { get; set; } + + /// <summary> + /// 闀垮害(mm) + /// </summary> + public decimal Length { get; set; } + + /// <summary> + /// 鎵撶爜鍐呭 + /// </summary> + public string? MarkingContent { get; set; } + + /// <summary> + /// 鎵撶爜浣嶇疆 + /// </summary> + public decimal MarkingPosition { get; set; } + + /// <summary> + /// 鍒囧壊浣嶇疆 + /// </summary> + public decimal CuttingPosition { get; set; } + + /// <summary> + /// 绠℃鏁伴噺 + /// </summary> + public int Quantity { get; set; } + + /// <summary> + /// 娉曞叞鍘氬害(mm) + /// </summary> + public decimal FlangeThickness { get; set; } + + /// <summary> + /// 娉曞叞鐩村緞(mm) + /// </summary> + public decimal FlangeInnerDiameter { get; set; } + + /// <summary> + /// 娉曞叞鍏О鍘嬪姏 + /// </summary> + public string? WeldingHeatInput { get; set; } + + /// <summary> + /// 娉曞叞鍐茬爜鍐呭 + /// </summary> + public string? PipeAllowableStress { get; set; } + + /// <summary> + /// 濂楃闀垮害(mm) + /// </summary> + public decimal PipeDiameter { get; set; } + + /// <summary> + /// 濂楃鐩村緞(mm) + /// </summary> + public decimal PipeWallThickness { get; set; } /// <summary> /// 宸ュ巶浠g爜 @@ -60,12 +120,7 @@ public string? PreSerialNumber { get; set; } /// <summary> - /// 鍘熸枡鏍囪瘑 - /// </summary> - public string? DataIdentifier { get; set; } - - /// <summary> - /// 绠¤鏍肩爜 + /// 绠℃缂栫爜 /// </summary> public string? PipeSpecCode { get; set; } @@ -75,14 +130,14 @@ public string? PipeSectionName { get; set; } /// <summary> - /// 澶栧緞 + /// 澶栧緞(mm) /// </summary> - public string? OuterDiameter { get; set; } + public decimal OuterDiameter { get; set; } /// <summary> - /// 鍧″彛 + /// 澹佸帤(mm) /// </summary> - public string? Bevel { get; set; } + public decimal Thickness { get; set; } /// <summary> /// 鏉愯川 @@ -90,127 +145,12 @@ public string? Material { get; set; } /// <summary> - /// 闀垮害 - /// </summary> - public string? Length { get; set; } - - /// <summary> - /// 鎵撳瓟浣� - /// </summary> - public string? DrillingPosition { get; set; } - - /// <summary> - /// 鐩歌疮 - /// </summary> - public string? Intersecting { get; set; } - - /// <summary> - /// 鎺ュ彛瑕佹眰 - /// </summary> - public string? InterfaceRequirement { get; set; } - - /// <summary> - /// 鏄惁鏈変富绛� + /// 鏄惁涓绘敮绠� /// </summary> public bool HasMainSignature { get; set; } /// <summary> - /// 鍖呮嫭鏁伴噺 - /// </summary> - public int Quantity { get; set; } - - /// <summary> - /// 鎵撶爜鍐呭 - /// </summary> - public string? MarkingContent { get; set; } - - /// <summary> - /// 鍒囧壊鏂囦欢 - /// </summary> - public string? CuttingFile { get; set; } - - /// <summary> - /// 鏀寰� - /// </summary> - public string? BranchOuterDiameter { get; set; } - - /// <summary> - /// 鏀澹佸帤 - /// </summary> - public string? BranchWallThickness { get; set; } - - /// <summary> - /// 鏀鏉愯川 - /// </summary> - public string? BranchMaterial { get; set; } - - /// <summary> - /// 鏀绔彛鏇茬巼鍗婂緞 - /// </summary> - public string? BranchPortRadius { get; set; } - - /// <summary> - /// 鏀绔彛瑙掑害 - /// </summary> - public string? BranchPortAngle { get; set; } - - /// <summary> - /// 鏀绔彛瑕佹眰 - /// </summary> - public string? BranchPortRequirement { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍨� - /// </summary> - public string? IntersectingLineType { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍒� - /// </summary> - public string? IntersectingLineCategory { get; set; } - - /// <summary> - /// 鎴愬搧鍥惧箙 - /// </summary> - public string? FinishedProductScale { get; set; } - - /// <summary> - /// 娉曞叞鍘氬害 - /// </summary> - public string? FlangeThickness { get; set; } - - /// <summary> - /// 娉曞叞鍐呭緞 - /// </summary> - public string? FlangeInnerDiameter { get; set; } - - /// <summary> - /// 鐒婃帴鐑緭鍏� - /// </summary> - public string? WeldingHeatInput { get; set; } - - /// <summary> - /// 绠¢亾鍏佽搴斿姏 - /// </summary> - public string? PipeAllowableStress { get; set; } - - /// <summary> - /// 绠″緞 - /// </summary> - public string? PipeDiameter { get; set; } - - /// <summary> - /// 绠¢亾澹佸帤 - /// </summary> - public string? PipeWallThickness { get; set; } - - /// <summary> - /// VR鏁版嵁 - /// </summary> - public string? VRData { get; set; } - - /// <summary> - /// 宸ヨ壓璺嚎缂栧彿 + /// 宸ヨ壓娴佸悜缂栧彿 /// </summary> public string? ProcessRouteNumber { get; set; } @@ -225,24 +165,39 @@ public DateTime? PlannedEndTime { get; set; } /// <summary> - /// 鏃堕棿淇℃伅 + /// 鐝粍淇℃伅 /// </summary> - public string? TimeInfo { get; set; } + public string? TeamInfo { get; set; } /// <summary> - /// + /// 鏃堕棿鎴� /// </summary> - public string? RedundantField1 { get; set; } + public string? Timestamp { get; set; } /// <summary> - /// + /// 鍒涘缓浜篒D /// </summary> - public string? RedundantField2 { get; set; } + public string? CreatorId { get; set; } /// <summary> - /// + /// 淇敼浜篒D /// </summary> - public string? RedundantField3 { get; set; } + public string? LastModifierId { get; set; } + + /// <summary> + /// 鍒犻櫎鏃堕棿 + /// </summary> + public DateTime? DeletionTime { get; set; } + + /// <summary> + /// 鎿嶄綔澶囨敞 + /// </summary> + public string? OperationRemark { get; set; } + + /// <summary> + /// 鍒犻櫎澶囨敞 + /// </summary> + public string? DeleteRemark { get; set; } /// <summary> /// 鎺掑簭 @@ -260,14 +215,19 @@ public bool? IsDisabled { get; set; } /// <summary> - /// + /// 鎵╁睍瀛楁1 /// </summary> - public string? CreatorId { get; set; } + public string? ExtraField1 { get; set; } /// <summary> - /// + /// 鎵╁睍瀛楁2 /// </summary> - public string? LastModifierId { get; set; } + public string? ExtraField2 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁3 + /// </summary> + public string? ExtraField3 { get; set; } diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanDto.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanDto.cs index 6a2355d..ad1517d 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanDto.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanDto.cs @@ -18,9 +18,69 @@ public string TaskCode { get; set; } /// <summary> - /// 鍘熸枡缂栧彿 + /// 鍘熸枡鏍囪瘑 /// </summary> - public string OrgMaterialCode { get; set; } + public string? DataIdentifier { get; set; } + + /// <summary> + /// 鍘熸枡鍨嬪彿 + /// </summary> + public string? MaterialMode { get; set; } + + /// <summary> + /// 闀垮害(mm) + /// </summary> + public decimal Length { get; set; } + + /// <summary> + /// 鎵撶爜鍐呭 + /// </summary> + public string? MarkingContent { get; set; } + + /// <summary> + /// 鎵撶爜浣嶇疆 + /// </summary> + public decimal MarkingPosition { get; set; } + + /// <summary> + /// 鍒囧壊浣嶇疆 + /// </summary> + public decimal CuttingPosition { get; set; } + + /// <summary> + /// 绠℃鏁伴噺 + /// </summary> + public int Quantity { get; set; } + + /// <summary> + /// 娉曞叞鍘氬害(mm) + /// </summary> + public decimal FlangeThickness { get; set; } + + /// <summary> + /// 娉曞叞鐩村緞(mm) + /// </summary> + public decimal FlangeInnerDiameter { get; set; } + + /// <summary> + /// 娉曞叞鍏О鍘嬪姏 + /// </summary> + public string? WeldingHeatInput { get; set; } + + /// <summary> + /// 娉曞叞鍐茬爜鍐呭 + /// </summary> + public string? PipeAllowableStress { get; set; } + + /// <summary> + /// 濂楃闀垮害(mm) + /// </summary> + public decimal PipeDiameter { get; set; } + + /// <summary> + /// 濂楃鐩村緞(mm) + /// </summary> + public decimal PipeWallThickness { get; set; } /// <summary> /// 宸ュ巶浠g爜 @@ -63,12 +123,7 @@ public string? PreSerialNumber { get; set; } /// <summary> - /// 鍘熸枡鏍囪瘑 - /// </summary> - public string? DataIdentifier { get; set; } - - /// <summary> - /// 绠¤鏍肩爜 + /// 绠℃缂栫爜 /// </summary> public string? PipeSpecCode { get; set; } @@ -78,14 +133,14 @@ public string? PipeSectionName { get; set; } /// <summary> - /// 澶栧緞 + /// 澶栧緞(mm) /// </summary> - public string? OuterDiameter { get; set; } + public decimal OuterDiameter { get; set; } /// <summary> - /// 鍧″彛 + /// 澹佸帤(mm) /// </summary> - public string? Bevel { get; set; } + public decimal Thickness { get; set; } /// <summary> /// 鏉愯川 @@ -93,127 +148,12 @@ public string? Material { get; set; } /// <summary> - /// 闀垮害 - /// </summary> - public string? Length { get; set; } - - /// <summary> - /// 鎵撳瓟浣� - /// </summary> - public string? DrillingPosition { get; set; } - - /// <summary> - /// 鐩歌疮 - /// </summary> - public string? Intersecting { get; set; } - - /// <summary> - /// 鎺ュ彛瑕佹眰 - /// </summary> - public string? InterfaceRequirement { get; set; } - - /// <summary> - /// 鏄惁鏈変富绛� + /// 鏄惁涓绘敮绠� /// </summary> public bool HasMainSignature { get; set; } /// <summary> - /// 鍖呮嫭鏁伴噺 - /// </summary> - public int Quantity { get; set; } - - /// <summary> - /// 鎵撶爜鍐呭 - /// </summary> - public string? MarkingContent { get; set; } - - /// <summary> - /// 鍒囧壊鏂囦欢 - /// </summary> - public string? CuttingFile { get; set; } - - /// <summary> - /// 鏀寰� - /// </summary> - public string? BranchOuterDiameter { get; set; } - - /// <summary> - /// 鏀澹佸帤 - /// </summary> - public string? BranchWallThickness { get; set; } - - /// <summary> - /// 鏀鏉愯川 - /// </summary> - public string? BranchMaterial { get; set; } - - /// <summary> - /// 鏀绔彛鏇茬巼鍗婂緞 - /// </summary> - public string? BranchPortRadius { get; set; } - - /// <summary> - /// 鏀绔彛瑙掑害 - /// </summary> - public string? BranchPortAngle { get; set; } - - /// <summary> - /// 鏀绔彛瑕佹眰 - /// </summary> - public string? BranchPortRequirement { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍨� - /// </summary> - public string? IntersectingLineType { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍒� - /// </summary> - public string? IntersectingLineCategory { get; set; } - - /// <summary> - /// 鎴愬搧鍥惧箙 - /// </summary> - public string? FinishedProductScale { get; set; } - - /// <summary> - /// 娉曞叞鍘氬害 - /// </summary> - public string? FlangeThickness { get; set; } - - /// <summary> - /// 娉曞叞鍐呭緞 - /// </summary> - public string? FlangeInnerDiameter { get; set; } - - /// <summary> - /// 鐒婃帴鐑緭鍏� - /// </summary> - public string? WeldingHeatInput { get; set; } - - /// <summary> - /// 绠¢亾鍏佽搴斿姏 - /// </summary> - public string? PipeAllowableStress { get; set; } - - /// <summary> - /// 绠″緞 - /// </summary> - public string? PipeDiameter { get; set; } - - /// <summary> - /// 绠¢亾澹佸帤 - /// </summary> - public string? PipeWallThickness { get; set; } - - /// <summary> - /// VR鏁版嵁 - /// </summary> - public string? VRData { get; set; } - - /// <summary> - /// 宸ヨ壓璺嚎缂栧彿 + /// 宸ヨ壓娴佸悜缂栧彿 /// </summary> public string? ProcessRouteNumber { get; set; } @@ -228,24 +168,79 @@ public DateTime? PlannedEndTime { get; set; } /// <summary> - /// 鏃堕棿淇℃伅 + /// 鐝粍淇℃伅 /// </summary> - public string? TimeInfo { get; set; } + public string? TeamInfo { get; set; } /// <summary> - /// + /// 鏃堕棿鎴� /// </summary> - public string? RedundantField1 { get; set; } + public string? Timestamp { get; set; } /// <summary> - /// + /// 鎵╁睍灞炴�� /// </summary> - public string? RedundantField2 { get; set; } + public ExtraPropertyDictionary? ExtraProperties { get; set; } /// <summary> - /// + /// 骞跺彂鎴� /// </summary> - public string? RedundantField3 { get; set; } + public string? ConcurrencyStamp { get; set; } + + /// <summary> + /// 鍒涘缓鏃堕棿 + /// </summary> + public DateTime CreationTime { get; set; } + + /// <summary> + /// 鍒涘缓浜篒D + /// </summary> + public string? CreatorId { get; set; } + + /// <summary> + /// 淇敼鏃堕棿 + /// </summary> + public DateTime? LastModificationTime { get; set; } + + /// <summary> + /// 淇敼浜篒D + /// </summary> + public string? LastModifierId { get; set; } + + /// <summary> + /// 鏄惁鍒犻櫎 + /// </summary> + public bool IsDeleted { get; set; } + + /// <summary> + /// 鍒犻櫎浜篒D + /// </summary> + public string? DeleterId { get; set; } + + /// <summary> + /// 鍒犻櫎鏃堕棿 + /// </summary> + public DateTime? DeletionTime { get; set; } + + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public string? CreatorName { get; set; } + + /// <summary> + /// 淇敼浜� + /// </summary> + public string? LastModifierName { get; set; } + + /// <summary> + /// 鎿嶄綔澶囨敞 + /// </summary> + public string? OperationRemark { get; set; } + + /// <summary> + /// 鍒犻櫎澶囨敞 + /// </summary> + public string? DeleteRemark { get; set; } /// <summary> /// 鎺掑簭 @@ -263,49 +258,19 @@ public bool? IsDisabled { get; set; } /// <summary> - /// + /// 鎵╁睍瀛楁1 /// </summary> - public ExtraPropertyDictionary? ExtraProperties { get; set; } + public string? ExtraField1 { get; set; } /// <summary> - /// + /// 鎵╁睍瀛楁2 /// </summary> - public string? ConcurrencyStamp { get; set; } + public string? ExtraField2 { get; set; } /// <summary> - /// + /// 鎵╁睍瀛楁3 /// </summary> - public DateTime CreationTime { get; set; } - - /// <summary> - /// - /// </summary> - public string? CreatorId { get; set; } - - /// <summary> - /// - /// </summary> - public DateTime? LastModificationTime { get; set; } - - /// <summary> - /// - /// </summary> - public string? LastModifierId { get; set; } - - /// <summary> - /// - /// </summary> - public bool IsDeleted { get; set; } - - /// <summary> - /// - /// </summary> - public string? DeleterId { get; set; } - - /// <summary> - /// - /// </summary> - public DateTime? DeletionTime { get; set; } + public string? ExtraField3 { get; set; } diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanExportModel.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanExportModel.cs index 8232fa8..56e8498 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanExportModel.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/WorkPlanExportModel.cs @@ -17,10 +17,82 @@ public string TaskCode { get; set; } /// <summary> - /// 鍘熸枡缂栧彿 + /// 鍘熸枡鏍囪瘑 /// </summary> - [ExcelColumn(Name = "鍘熸枡缂栧彿", Width = 25)] - public string OrgMaterialCode { get; set; } + [ExcelColumn(Name = "鍘熸枡鏍囪瘑", Width = 25)] + public string DataIdentifier { get; set; } + + /// <summary> + /// 鍘熸枡鍨嬪彿 + /// </summary> + [ExcelColumn(Name = "鍘熸枡鍨嬪彿", Width = 25)] + public string MaterialMode { get; set; } + + /// <summary> + /// 闀垮害(mm) + /// </summary> + [ExcelColumn(Name = "闀垮害(mm)", Width = 25)] + public decimal Length { get; set; } + + /// <summary> + /// 鎵撶爜鍐呭 + /// </summary> + [ExcelColumn(Name = "鎵撶爜鍐呭", Width = 25)] + public string MarkingContent { get; set; } + + /// <summary> + /// 鎵撶爜浣嶇疆 + /// </summary> + [ExcelColumn(Name = "鎵撶爜浣嶇疆", Width = 25)] + public decimal MarkingPosition { get; set; } + + /// <summary> + /// 鍒囧壊浣嶇疆 + /// </summary> + [ExcelColumn(Name = "鍒囧壊浣嶇疆", Width = 25)] + public decimal CuttingPosition { get; set; } + + /// <summary> + /// 绠℃鏁伴噺 + /// </summary> + [ExcelColumn(Name = "绠℃鏁伴噺", Width = 25)] + public int Quantity { get; set; } + + /// <summary> + /// 娉曞叞鍘氬害(mm) + /// </summary> + [ExcelColumn(Name = "娉曞叞鍘氬害(mm)", Width = 25)] + public decimal FlangeThickness { get; set; } + + /// <summary> + /// 娉曞叞鐩村緞(mm) + /// </summary> + [ExcelColumn(Name = "娉曞叞鐩村緞(mm)", Width = 25)] + public decimal FlangeInnerDiameter { get; set; } + + /// <summary> + /// 娉曞叞鍏О鍘嬪姏 + /// </summary> + [ExcelColumn(Name = "娉曞叞鍏О鍘嬪姏", Width = 25)] + public string WeldingHeatInput { get; set; } + + /// <summary> + /// 娉曞叞鍐茬爜鍐呭 + /// </summary> + [ExcelColumn(Name = "娉曞叞鍐茬爜鍐呭", Width = 25)] + public string PipeAllowableStress { get; set; } + + /// <summary> + /// 濂楃闀垮害(mm) + /// </summary> + [ExcelColumn(Name = "濂楃闀垮害(mm)", Width = 25)] + public decimal PipeDiameter { get; set; } + + /// <summary> + /// 濂楃鐩村緞(mm) + /// </summary> + [ExcelColumn(Name = "濂楃鐩村緞(mm)", Width = 25)] + public decimal PipeWallThickness { get; set; } /// <summary> /// 宸ュ巶浠g爜 @@ -71,15 +143,9 @@ public string PreSerialNumber { get; set; } /// <summary> - /// 鍘熸枡鏍囪瘑 + /// 绠℃缂栫爜 /// </summary> - [ExcelColumn(Name = "鍘熸枡鏍囪瘑", Width = 25)] - public string DataIdentifier { get; set; } - - /// <summary> - /// 绠¤鏍肩爜 - /// </summary> - [ExcelColumn(Name = "绠¤鏍肩爜", Width = 25)] + [ExcelColumn(Name = "绠℃缂栫爜", Width = 25)] public string PipeSpecCode { get; set; } /// <summary> @@ -89,16 +155,16 @@ public string PipeSectionName { get; set; } /// <summary> - /// 澶栧緞 + /// 澶栧緞(mm) /// </summary> - [ExcelColumn(Name = "澶栧緞", Width = 25)] - public string OuterDiameter { get; set; } + [ExcelColumn(Name = "澶栧緞(mm)", Width = 25)] + public decimal OuterDiameter { get; set; } /// <summary> - /// 鍧″彛 + /// 澹佸帤(mm) /// </summary> - [ExcelColumn(Name = "鍧″彛", Width = 25)] - public string Bevel { get; set; } + [ExcelColumn(Name = "澹佸帤(mm)", Width = 25)] + public decimal Thickness { get; set; } /// <summary> /// 鏉愯川 @@ -107,153 +173,15 @@ public string Material { get; set; } /// <summary> - /// 闀垮害 + /// 鏄惁涓绘敮绠� /// </summary> - [ExcelColumn(Name = "闀垮害", Width = 25)] - public string Length { get; set; } - - /// <summary> - /// 鎵撳瓟浣� - /// </summary> - [ExcelColumn(Name = "鎵撳瓟浣�", Width = 25)] - public string DrillingPosition { get; set; } - - /// <summary> - /// 鐩歌疮 - /// </summary> - [ExcelColumn(Name = "鐩歌疮", Width = 25)] - public string Intersecting { get; set; } - - /// <summary> - /// 鎺ュ彛瑕佹眰 - /// </summary> - [ExcelColumn(Name = "鎺ュ彛瑕佹眰", Width = 25)] - public string InterfaceRequirement { get; set; } - - /// <summary> - /// 鏄惁鏈変富绛� - /// </summary> - [ExcelColumn(Name = "鏄惁鏈変富绛�", Width = 25)] + [ExcelColumn(Name = "鏄惁涓绘敮绠�", Width = 25)] public bool HasMainSignature { get; set; } /// <summary> - /// 鍖呮嫭鏁伴噺 + /// 宸ヨ壓娴佸悜缂栧彿 /// </summary> - [ExcelColumn(Name = "鍖呮嫭鏁伴噺", Width = 25)] - public int Quantity { get; set; } - - /// <summary> - /// 鎵撶爜鍐呭 - /// </summary> - [ExcelColumn(Name = "鎵撶爜鍐呭", Width = 25)] - public string MarkingContent { get; set; } - - /// <summary> - /// 鍒囧壊鏂囦欢 - /// </summary> - [ExcelColumn(Name = "鍒囧壊鏂囦欢", Width = 25)] - public string CuttingFile { get; set; } - - /// <summary> - /// 鏀寰� - /// </summary> - [ExcelColumn(Name = "鏀寰�", Width = 25)] - public string BranchOuterDiameter { get; set; } - - /// <summary> - /// 鏀澹佸帤 - /// </summary> - [ExcelColumn(Name = "鏀澹佸帤", Width = 25)] - public string BranchWallThickness { get; set; } - - /// <summary> - /// 鏀鏉愯川 - /// </summary> - [ExcelColumn(Name = "鏀鏉愯川", Width = 25)] - public string BranchMaterial { get; set; } - - /// <summary> - /// 鏀绔彛鏇茬巼鍗婂緞 - /// </summary> - [ExcelColumn(Name = "鏀绔彛鏇茬巼鍗婂緞", Width = 25)] - public string BranchPortRadius { get; set; } - - /// <summary> - /// 鏀绔彛瑙掑害 - /// </summary> - [ExcelColumn(Name = "鏀绔彛瑙掑害", Width = 25)] - public string BranchPortAngle { get; set; } - - /// <summary> - /// 鏀绔彛瑕佹眰 - /// </summary> - [ExcelColumn(Name = "鏀绔彛瑕佹眰", Width = 25)] - public string BranchPortRequirement { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍨� - /// </summary> - [ExcelColumn(Name = "鐩歌疮绾跨被鍨�", Width = 25)] - public string IntersectingLineType { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍒� - /// </summary> - [ExcelColumn(Name = "鐩歌疮绾跨被鍒�", Width = 25)] - public string IntersectingLineCategory { get; set; } - - /// <summary> - /// 鎴愬搧鍥惧箙 - /// </summary> - [ExcelColumn(Name = "鎴愬搧鍥惧箙", Width = 25)] - public string FinishedProductScale { get; set; } - - /// <summary> - /// 娉曞叞鍘氬害 - /// </summary> - [ExcelColumn(Name = "娉曞叞鍘氬害", Width = 25)] - public string FlangeThickness { get; set; } - - /// <summary> - /// 娉曞叞鍐呭緞 - /// </summary> - [ExcelColumn(Name = "娉曞叞鍐呭緞", Width = 25)] - public string FlangeInnerDiameter { get; set; } - - /// <summary> - /// 鐒婃帴鐑緭鍏� - /// </summary> - [ExcelColumn(Name = "鐒婃帴鐑緭鍏�", Width = 25)] - public string WeldingHeatInput { get; set; } - - /// <summary> - /// 绠¢亾鍏佽搴斿姏 - /// </summary> - [ExcelColumn(Name = "绠¢亾鍏佽搴斿姏", Width = 25)] - public string PipeAllowableStress { get; set; } - - /// <summary> - /// 绠″緞 - /// </summary> - [ExcelColumn(Name = "绠″緞", Width = 25)] - public string PipeDiameter { get; set; } - - /// <summary> - /// 绠¢亾澹佸帤 - /// </summary> - [ExcelColumn(Name = "绠¢亾澹佸帤", Width = 25)] - public string PipeWallThickness { get; set; } - - /// <summary> - /// VR鏁版嵁 - /// </summary> - [ExcelColumn(Name = "VR鏁版嵁", Width = 25)] - public string VRData { get; set; } - - /// <summary> - /// 宸ヨ壓璺嚎缂栧彿 - /// </summary> - [ExcelColumn(Name = "宸ヨ壓璺嚎缂栧彿", Width = 25)] + [ExcelColumn(Name = "宸ヨ壓娴佸悜缂栧彿", Width = 25)] public string ProcessRouteNumber { get; set; } /// <summary> @@ -269,46 +197,46 @@ public DateTime PlannedEndTime { get; set; } /// <summary> - /// 鏃堕棿淇℃伅 + /// 鐝粍淇℃伅 /// </summary> - [ExcelColumn(Name = "鏃堕棿淇℃伅", Width = 25)] - public string TimeInfo { get; set; } + [ExcelColumn(Name = "鐝粍淇℃伅", Width = 25)] + public string TeamInfo { get; set; } /// <summary> - /// + /// 鏃堕棿鎴� /// </summary> - [ExcelColumn(Name = "", Width = 25)] - public string RedundantField1 { get; set; } + [ExcelColumn(Name = "鏃堕棿鎴�", Width = 25)] + public string Timestamp { get; set; } /// <summary> - /// + /// 鍒涘缓鏃堕棿 /// </summary> - [ExcelColumn(Name = "", Width = 25)] - public string RedundantField2 { get; set; } + [ExcelColumn(Name = "鍒涘缓鏃堕棿", Width = 25)] + public DateTime CreationTime { get; set; } /// <summary> - /// + /// 淇敼鏃堕棿 /// </summary> - [ExcelColumn(Name = "", Width = 25)] - public string RedundantField3 { get; set; } + [ExcelColumn(Name = "淇敼鏃堕棿", Width = 25)] + public DateTime LastModificationTime { get; set; } /// <summary> - /// 鎺掑簭 + /// 鍒涘缓浜� /// </summary> - [ExcelColumn(Name = "鎺掑簭", Width = 25)] - public int Sort { get; set; } + [ExcelColumn(Name = "鍒涘缓浜�", Width = 25)] + public string CreatorName { get; set; } + + /// <summary> + /// 淇敼浜� + /// </summary> + [ExcelColumn(Name = "淇敼浜�", Width = 25)] + public string LastModifierName { get; set; } /// <summary> /// 澶囨敞 /// </summary> [ExcelColumn(Name = "澶囨敞", Width = 25)] public string Remark { get; set; } - - /// <summary> - /// 鏄惁绂佺敤 - /// </summary> - [ExcelColumn(Name = "鏄惁绂佺敤", Width = 25)] - public bool? IsDisabled { get; set; } diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs index 5c02bf7..ab32c0c 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/MesAppService.cs @@ -1,164 +1,164 @@ -using CMS.Plugin.FormulaManagement.Abstractions; -using CMS.Plugin.OrderManagement.Abstractions; -using CMS.Plugin.OrderManagement.Abstractions.Enums; -using CMS.Plugin.OrderManagement.Abstractions.Models; -using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; -using CMS.Plugin.PipeLineLems.Application.Contracts.Services; -using CMS.Plugin.PipeLineLems.Domain.WorkPlan; -using CMS.Plugin.ProductManagement.Abstractions; -using Microsoft.Extensions.DependencyInjection; -using Volo.Abp; +//using CMS.Plugin.FormulaManagement.Abstractions; +//using CMS.Plugin.OrderManagement.Abstractions; +//using CMS.Plugin.OrderManagement.Abstractions.Enums; +//using CMS.Plugin.OrderManagement.Abstractions.Models; +//using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; +//using CMS.Plugin.PipeLineLems.Application.Contracts.Services; +//using CMS.Plugin.PipeLineLems.Domain.WorkPlan; +//using CMS.Plugin.ProductManagement.Abstractions; +//using Microsoft.Extensions.DependencyInjection; +//using Volo.Abp; -namespace CMS.Plugin.PipeLineLems.Application.Implements; +//namespace CMS.Plugin.PipeLineLems.Application.Implements; -public class MesAppService : CMSPluginAppService, IMesAppService -{ - private readonly IServiceProvider _serviceProvider; - private readonly IWorkPlanAppService _workPlanAppService; +//public class MesAppService : CMSPluginAppService, IMesAppService +//{ +// private readonly IServiceProvider _serviceProvider; +// private readonly IWorkPlanAppService _workPlanAppService; - //private readonly IEventBus _eventBus; +// //private readonly IEventBus _eventBus; - public MesAppService(IServiceProvider serviceProvider - , IWorkPlanAppService workPlanAppService - //, IEventBus eventBus - ) - { - _serviceProvider = serviceProvider; - // _eventBus = eventBus; - _workPlanAppService = workPlanAppService; - } +// public MesAppService(IServiceProvider serviceProvider +// , IWorkPlanAppService workPlanAppService +// //, IEventBus eventBus +// ) +// { +// _serviceProvider = serviceProvider; +// // _eventBus = eventBus; +// _workPlanAppService = workPlanAppService; +// } - public async Task<MesOrderResponse> CreateAsync(List<WorkPlanInput> input) - { - if (input == null) - { - throw new UserFriendlyException("杈撳叆鍙傛暟涓嶈兘涓虹┖"); - } +// public async Task<MesOrderResponse> CreateAsync(List<WorkPlanInput> input) +// { +// if (input == null) +// { +// throw new UserFriendlyException("杈撳叆鍙傛暟涓嶈兘涓虹┖"); +// } - if (input.Count == 0) - { - throw new UserFriendlyException("杈撳叆鍙傛暟Data涓嶈兘涓虹┖"); - } +// if (input.Count == 0) +// { +// throw new UserFriendlyException("杈撳叆鍙傛暟Data涓嶈兘涓虹┖"); +// } - var orderManager = _serviceProvider.GetRequiredService<IOrderManager>(); - var productProvider = _serviceProvider.GetRequiredService<IProductProvider>(); - var formulaProvider = _serviceProvider.GetRequiredService<IFormulaProvider>(); - List<OrderModel> orderModels = new List<OrderModel>(); - //鎸夌収浠诲姟缂栧彿鍒嗙粍 - var groupTask = input.GroupBy(x => x.TaskCode); - foreach (var gTask in groupTask) - { - var taskCode = gTask.Key; - var order = await orderManager.GetByCodeAsync(taskCode); - if (order != null) - { - throw new UserFriendlyException($"浠诲姟缂栧彿[{taskCode}]宸插瓨鍦�"); - } +// var orderManager = _serviceProvider.GetRequiredService<IOrderManager>(); +// var productProvider = _serviceProvider.GetRequiredService<IProductProvider>(); +// var formulaProvider = _serviceProvider.GetRequiredService<IFormulaProvider>(); +// List<OrderModel> orderModels = new List<OrderModel>(); +// //鎸夌収浠诲姟缂栧彿鍒嗙粍 +// var groupTask = input.GroupBy(x => x.TaskCode); +// foreach (var gTask in groupTask) +// { +// var taskCode = gTask.Key; +// var order = await orderManager.GetByCodeAsync(taskCode); +// if (order != null) +// { +// throw new UserFriendlyException($"浠诲姟缂栧彿[{taskCode}]宸插瓨鍦�"); +// } - //var product = await productProvider.FindByNameAsync(orderItem.PipeSectionName); - //if (product == null) - //{ - // throw new UserFriendlyException($"浜у搧鍚嶇О[{orderItem.PipeSectionName}]涓嶅瓨鍦�"); - //} +// //var product = await productProvider.FindByNameAsync(orderItem.PipeSectionName); +// //if (product == null) +// //{ +// // throw new UserFriendlyException($"浜у搧鍚嶇О[{orderItem.PipeSectionName}]涓嶅瓨鍦�"); +// //} - //var formula = await formulaProvider.GetFormulaAsync(product.Id); - //if (formula == null) - //{ - // throw new UserFriendlyException($"浜у搧鍨嬪彿[{orderItem.MaterialCode}]鏃犲叧鑱旈厤鏂�"); - //} - //棣栧厛瑕佸垱寤� 鎵撶爜鍒囧壊鐨勫伐鍗� - var productForCut = await productProvider.FindByNameAsync("鍒囧壊鍘熸枡绠�"); - if (productForCut == null) - { - throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠涓嶅瓨鍦�"); - } - var formulaForCut = await formulaProvider.GetFormulaAsync(productForCut.Id); - if (formulaForCut == null) - { - throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠鏃犲叧鑱旈厤鏂�"); - } - //鍒嗙粍鏁版嵁 - var group = gTask.ToList().GroupBy(x => x.DataIdentifier); - foreach (var item in group) - { - OrderModel orderModelForCut = new OrderModel() - { - Id = Guid.NewGuid(), - Code = "Cut_" + taskCode, - Source = "APS鎺ㄩ��", - PlanStartTime = gTask.ToList().First().PlannedStartTime, - PlanFinishTime = gTask.ToList().First().PlannedEndTime, - PlanQty = (ulong)item.ToList().Count, - Status = OrderStatus.NotActive, - Product = new AssociationProductModel() { Id = productForCut.Id, Name = productForCut.Name, Model = productForCut.Model, ShortNumber = productForCut.ShortNumber }, - Formula = new AssociationFormulaModel() { Id = formulaForCut.Id, Code = formulaForCut.Code, Name = formulaForCut.Name } - }; - orderModelForCut.ExtraProperties["OuterDiameter"] = gTask.ToList().First().OuterDiameter;//澶栧緞 - orderModelForCut.ExtraProperties["Material"] = gTask.ToList().First().Material;//鏉愯川 - orderModelForCut.ExtraProperties["Length"] = gTask.ToList().First().Length;//闀垮害 +// //var formula = await formulaProvider.GetFormulaAsync(product.Id); +// //if (formula == null) +// //{ +// // throw new UserFriendlyException($"浜у搧鍨嬪彿[{orderItem.MaterialCode}]鏃犲叧鑱旈厤鏂�"); +// //} +// //棣栧厛瑕佸垱寤� 鎵撶爜鍒囧壊鐨勫伐鍗� +// var productForCut = await productProvider.FindByNameAsync("鍒囧壊鍘熸枡绠�"); +// if (productForCut == null) +// { +// throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠涓嶅瓨鍦�"); +// } +// var formulaForCut = await formulaProvider.GetFormulaAsync(productForCut.Id); +// if (formulaForCut == null) +// { +// throw new UserFriendlyException($"浜у搧鍚嶇О[鍒囧壊鍘熸枡绠鏃犲叧鑱旈厤鏂�"); +// } +// //鍒嗙粍鏁版嵁 +// var group = gTask.ToList().GroupBy(x => x.DataIdentifier); +// foreach (var item in group) +// { +// OrderModel orderModelForCut = new OrderModel() +// { +// Id = Guid.NewGuid(), +// Code = "Cut_" + taskCode, +// Source = "APS鎺ㄩ��", +// PlanStartTime = gTask.ToList().First().PlannedStartTime, +// PlanFinishTime = gTask.ToList().First().PlannedEndTime, +// PlanQty = (ulong)item.ToList().Count, +// Status = OrderStatus.NotActive, +// Product = new AssociationProductModel() { Id = productForCut.Id, Name = productForCut.Name, Model = productForCut.Model, ShortNumber = productForCut.ShortNumber }, +// Formula = new AssociationFormulaModel() { Id = formulaForCut.Id, Code = formulaForCut.Code, Name = formulaForCut.Name } +// }; +// orderModelForCut.ExtraProperties["OuterDiameter"] = gTask.ToList().First().OuterDiameter;//澶栧緞 +// orderModelForCut.ExtraProperties["Material"] = gTask.ToList().First().Material;//鏉愯川 +// orderModelForCut.ExtraProperties["Length"] = gTask.ToList().First().Length;//闀垮害 - var orderForCut = await orderManager.GetByCodeAsync(orderModelForCut.Code); - if (orderForCut != null) - { - //throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]宸插瓨鍦�"); - //涓嶅啀鎶涘紓甯革紝鐩存帴璺宠繃 - break; - } +// var orderForCut = await orderManager.GetByCodeAsync(orderModelForCut.Code); +// if (orderForCut != null) +// { +// //throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]宸插瓨鍦�"); +// //涓嶅啀鎶涘紓甯革紝鐩存帴璺宠繃 +// break; +// } - var orderModelResultForCut = await orderManager.CreateAsync(orderModelForCut); - if (orderModelResultForCut == null) - { - throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]鍒涘缓澶辫触"); - } - orderModels.Add(orderModelResultForCut); +// var orderModelResultForCut = await orderManager.CreateAsync(orderModelForCut); +// if (orderModelResultForCut == null) +// { +// throw new UserFriendlyException($"宸ュ崟[{orderModelForCut.Code}]鍒涘缓澶辫触"); +// } +// orderModels.Add(orderModelResultForCut); - //OrderModel orderModel = new OrderModel(); - //orderModel.Id = Guid.NewGuid(); - //orderModel.Code = orderItem.TaskCode; - //orderModel.Source = "APS鎺ㄩ��"; - //orderModel.Product = new AssociationProductModel() { Id = product.Id, Name = product.Name, Model = product.Model, ShortNumber = product.ShortNumber }; - ////orderModel.Formula = new AssociationFormulaModel() { Id = formula.Id, Code = formula.Code, Name = formula.Name }; - //orderModel.PlanStartTime = orderItem.PlannedStartTime; - //orderModel.PlanFinishTime = orderItem.PlannedEndTime; - //orderModel.PlanQty = (ulong?)orderItem.OrderQty; - //orderModel.Status = OrderStatus.NotActive; - //orderModel.ExtraProperties["Source"] = "ddd"; - //var source = orderModel.ExtraProperties["Source"]; - //var orderModelResult = await orderManager.CreateAsync(orderModel); - //if (orderModelResult == null) - //{ - // throw new UserFriendlyException($"宸ュ崟[{orderItem.TaskCode}]鍒涘缓澶辫触"); - //} - //orderModels.Add(orderModelResult); - } +// //OrderModel orderModel = new OrderModel(); +// //orderModel.Id = Guid.NewGuid(); +// //orderModel.Code = orderItem.TaskCode; +// //orderModel.Source = "APS鎺ㄩ��"; +// //orderModel.Product = new AssociationProductModel() { Id = product.Id, Name = product.Name, Model = product.Model, ShortNumber = product.ShortNumber }; +// ////orderModel.Formula = new AssociationFormulaModel() { Id = formula.Id, Code = formula.Code, Name = formula.Name }; +// //orderModel.PlanStartTime = orderItem.PlannedStartTime; +// //orderModel.PlanFinishTime = orderItem.PlannedEndTime; +// //orderModel.PlanQty = (ulong?)orderItem.OrderQty; +// //orderModel.Status = OrderStatus.NotActive; +// //orderModel.ExtraProperties["Source"] = "ddd"; +// //var source = orderModel.ExtraProperties["Source"]; +// //var orderModelResult = await orderManager.CreateAsync(orderModel); +// //if (orderModelResult == null) +// //{ +// // throw new UserFriendlyException($"宸ュ崟[{orderItem.TaskCode}]鍒涘缓澶辫触"); +// //} +// //orderModels.Add(orderModelResult); +// } - } +// } - //淇濆瓨鍒拌〃涓� - foreach (var item in input) - { - var insertObj = ObjectMapper.Map<WorkPlanInput, WorkPlanCreateDto>(item); - insertObj.OrgMaterialCode = "1111"; - insertObj.Sort = 1; - await _workPlanAppService.CreateAsync(insertObj); - } +// //淇濆瓨鍒拌〃涓� +// foreach (var item in input) +// { +// var insertObj = ObjectMapper.Map<WorkPlanInput, WorkPlanCreateDto>(item); +// insertObj.OrgMaterialCode = "1111"; +// insertObj.Sort = 1; +// await _workPlanAppService.CreateAsync(insertObj); +// } - // 鍙戝竷浜嬩欢 - //await _eventBus.PublishAsync(new EntityChangedEto("MESCREATE", input, null, EntityChangeType.Add, true)); +// // 鍙戝竷浜嬩欢 +// //await _eventBus.PublishAsync(new EntityChangedEto("MESCREATE", input, null, EntityChangeType.Add, true)); - var response = new MesOrderResponse - { - Code = "000000", - Data = orderModels, - Fail = false, - Mesg = "澶勭悊鎴愬姛", - Success = true, - Time = DateTime.UtcNow - }; - return response; - } -} +// var response = new MesOrderResponse +// { +// Code = "000000", +// Data = orderModels, +// Fail = false, +// Mesg = "澶勭悊鎴愬姛", +// Success = true, +// Time = DateTime.UtcNow +// }; +// return response; +// } +//} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs index 686a0d9..a9bb3be 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs @@ -1,127 +1,127 @@ -using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; -using CMS.Plugin.PipeLineLems.Application.Contracts.Services; -using CMS.Plugin.PipeLineLems.Domain.Shared; -using CmsQueryExtensions; -using CMS.Plugin.PipeLineLems.Domain.WorkPlan; -using CmsQueryExtensions.Extension; -using System.Linq.Expressions; -using Volo.Abp; -using Volo.Abp.Application.Dtos; -using Volo.Abp.Data; -using Volo.Abp.ObjectExtending; -using Volo.Abp.ObjectMapping; - -namespace CMS.Plugin.PipeLineLems.Application.Implements; - +using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; +using CMS.Plugin.PipeLineLems.Application.Contracts.Services; +using CMS.Plugin.PipeLineLems.Domain.Shared; +using CmsQueryExtensions; +using CMS.Plugin.PipeLineLems.Domain.WorkPlan; +using CmsQueryExtensions.Extension; +using System.Linq.Expressions; +using Volo.Abp; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Data; +using Volo.Abp.ObjectExtending; +using Volo.Abp.ObjectMapping; + +namespace CMS.Plugin.PipeLineLems.Application.Implements; + /// <summary> /// 浣滀笟璁″垝琛ㄥ簲鐢ㄦ湇鍔� /// </summary> -public class WorkPlanAppService : CMSPluginAppService, IWorkPlanAppService -{ - private readonly IWorkPlanRepository workPlanRepository; - +public class WorkPlanAppService : CMSPluginAppService, IWorkPlanAppService +{ + private readonly IWorkPlanRepository workPlanRepository; + /// <summary> /// Initializes a new instance of the <see cref="WorkPlanAppService"/> class. /// </summary> /// <param name="WorkPlanRepository">The task job repository.</param> - public WorkPlanAppService(IWorkPlanRepository _WorkPlanRepository) - { - workPlanRepository = _WorkPlanRepository; - } - + public WorkPlanAppService(IWorkPlanRepository _WorkPlanRepository) + { + workPlanRepository = _WorkPlanRepository; + } + /// <summary> /// 鑾峰彇鎸囧畾浣滀笟璁″垝琛� /// </summary> /// <param name="id"></param> /// <returns></returns> - public virtual async Task<WorkPlanDto> GetAsync(Guid id) - { - return ObjectMapper.Map<WorkPlan, WorkPlanDto>(await workPlanRepository.GetAsync(id)); - } - + public virtual async Task<WorkPlanDto> GetAsync(Guid id) + { + return ObjectMapper.Map<WorkPlan, WorkPlanDto>(await workPlanRepository.GetAsync(id)); + } + /// <summary> /// 鍒嗛〉鑾峰彇浣滀笟璁″垝琛� /// </summary> /// <param name="input"></param> /// <returns></returns> - public virtual async Task<PagedResultDto<WorkPlanDto>> GetListAsync(GetWorkPlanInput input) - { - Check.NotNull(input, nameof(input)); - - if (input.Sorting.IsNullOrWhiteSpace()) - { - input.Sorting = nameof(WorkPlan.Sort); - } - + public virtual async Task<PagedResultDto<WorkPlanDto>> GetListAsync(GetWorkPlanInput input) + { + Check.NotNull(input, nameof(input)); + + if (input.Sorting.IsNullOrWhiteSpace()) + { + input.Sorting = nameof(WorkPlan.Sort); + } + #region 鍔ㄦ�佹瀯閫犳煡璇㈡潯浠� - + //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠� - var whereConditions = DynamicGetQueryParams(input); - - #endregion - - var count = await workPlanRepository.GetCountAsync(whereConditions); - var list = await workPlanRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount); - - return new PagedResultDto<WorkPlanDto>(count, ObjectMapper.Map<List<WorkPlan>, List<WorkPlanDto>>(list)); - } - + var whereConditions = DynamicGetQueryParams(input); + + #endregion + + var count = await workPlanRepository.GetCountAsync(whereConditions); + var list = await workPlanRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount); + + return new PagedResultDto<WorkPlanDto>(count, ObjectMapper.Map<List<WorkPlan>, List<WorkPlanDto>>(list)); + } + /// <summary> /// 鍔ㄦ�佹瀯閫犳煡璇㈡潯浠� /// </summary> /// <param name="input">杈撳叆鍙傛暟</param> /// <returns></returns> - private FunReturnResultModel<Expression<Func<WorkPlan, bool>>> DynamicGetQueryParams(GetWorkPlanInput input) - { + private FunReturnResultModel<Expression<Func<WorkPlan, bool>>> DynamicGetQueryParams(GetWorkPlanInput input) + { //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠� - var whereConditions = WhereConditionsExtensions.GetWhereConditions<WorkPlan, GetWorkPlanInput>(input); - if (!whereConditions.IsSuccess) - { - throw new Exception("鍔ㄦ�佹瀯閫犳煡璇㈡潯浠跺け璐�:" + whereConditions.ErrMsg); - } - + var whereConditions = WhereConditionsExtensions.GetWhereConditions<WorkPlan, GetWorkPlanInput>(input); + if (!whereConditions.IsSuccess) + { + throw new Exception("鍔ㄦ�佹瀯閫犳煡璇㈡潯浠跺け璐�:" + whereConditions.ErrMsg); + } + //涔熷彲鍐嶆鑷畾涔夋瀯寤烘煡璇㈡潯浠� - Expression<Func<WorkPlan, bool>> extendExpression = a => a.IsDeleted == false; + Expression<Func<WorkPlan, bool>> extendExpression = a => a.IsDeleted == false; // 浣跨敤 System.Linq.PredicateBuilder 鐨� And - var pres = (System.Linq.Expressions.Expression<Func<WorkPlan, bool>>)(whereConditions.data); - whereConditions.data = System.Linq.PredicateBuilder.And(pres, extendExpression); - - return whereConditions; - } - + var pres = (System.Linq.Expressions.Expression<Func<WorkPlan, bool>>)(whereConditions.data); + whereConditions.data = System.Linq.PredicateBuilder.And(pres, extendExpression); + + return whereConditions; + } + /// <summary> /// 鏂板缓浣滀笟璁″垝琛� /// </summary> /// <param name="input"></param> /// <returns></returns> /// <exception cref="UserFriendlyException"></exception> - public virtual async Task<WorkPlanDto> CreateAsync(WorkPlanCreateDto input) - { - await CheckCreateOrUpdateDtoAsync(input); - - var exist = await workPlanRepository.NameExistAsync(input.TaskCode); - if (exist) - { - throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.TaskCode]); - } - - var maxSort = await workPlanRepository.GetMaxSortAsync(); - var sort = input.Sort ?? maxSort; - - var insertObj = ObjectMapper.Map<WorkPlanCreateDto, WorkPlan>(input); - insertObj.Sort = sort; - input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None); - - await workPlanRepository.InsertAsync(insertObj); - + public virtual async Task<WorkPlanDto> CreateAsync(WorkPlanCreateDto input) + { + await CheckCreateOrUpdateDtoAsync(input); + + var exist = await workPlanRepository.NameExistAsync(input.TaskCode); + if (exist) + { + throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.TaskCode]); + } + + var maxSort = await workPlanRepository.GetMaxSortAsync(); + var sort = input.Sort ?? maxSort; + + var insertObj = ObjectMapper.Map<WorkPlanCreateDto, WorkPlan>(input); + insertObj.Sort = sort; + input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None); + + await workPlanRepository.InsertAsync(insertObj); + //if (input.Sort.HasValue && insertObj.Sort != maxSort) //{ // await AdjustSortAsync(insertObj.Id, insertObj.Sort); //} - - return ObjectMapper.Map<WorkPlan, WorkPlanDto>(insertObj); - } - + + return ObjectMapper.Map<WorkPlan, WorkPlanDto>(insertObj); + } + /// <summary> /// 鏇存柊浣滀笟璁″垝琛� /// </summary> @@ -129,22 +129,34 @@ /// <param name="input"></param> /// <returns></returns> /// <exception cref="UserFriendlyException"></exception> - public virtual async Task<WorkPlanDto> UpdateAsync(Guid id, WorkPlanUpdateDto input) - { - await CheckCreateOrUpdateDtoAsync(input); - - var updateObj = await workPlanRepository.GetAsync(id); - var exist = await workPlanRepository.NameExistAsync(input.TaskCode, updateObj.Id); - if (exist) - { - throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.TaskCode]); - } - - updateObj.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); - input.MapExtraPropertiesTo(updateObj, MappingPropertyDefinitionChecks.None); - - updateObj.TaskCode = input.TaskCode; - updateObj.OrgMaterialCode = input.OrgMaterialCode; + public virtual async Task<WorkPlanDto> UpdateAsync(Guid id, WorkPlanUpdateDto input) + { + await CheckCreateOrUpdateDtoAsync(input); + + var updateObj = await workPlanRepository.GetAsync(id); + var exist = await workPlanRepository.NameExistAsync(input.TaskCode, updateObj.Id); + if (exist) + { + throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.TaskCode]); + } + + updateObj.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); + input.MapExtraPropertiesTo(updateObj, MappingPropertyDefinitionChecks.None); + + updateObj.TaskCode = input.TaskCode; + updateObj.DataIdentifier = input.DataIdentifier; + updateObj.MaterialMode = input.MaterialMode; + updateObj.Length = input.Length; + updateObj.MarkingContent = input.MarkingContent; + updateObj.MarkingPosition = input.MarkingPosition; + updateObj.CuttingPosition = input.CuttingPosition; + updateObj.Quantity = input.Quantity; + updateObj.FlangeThickness = input.FlangeThickness; + updateObj.FlangeInnerDiameter = input.FlangeInnerDiameter; + updateObj.WeldingHeatInput = input.WeldingHeatInput; + updateObj.PipeAllowableStress = input.PipeAllowableStress; + updateObj.PipeDiameter = input.PipeDiameter; + updateObj.PipeWallThickness = input.PipeWallThickness; updateObj.FactoryCode = input.FactoryCode; updateObj.ProductCode = input.ProductCode; updateObj.WorkstationCode = input.WorkstationCode; @@ -153,59 +165,32 @@ updateObj.ProcessName = input.ProcessName; updateObj.PipeFittingCode = input.PipeFittingCode; updateObj.PreSerialNumber = input.PreSerialNumber; - updateObj.DataIdentifier = input.DataIdentifier; updateObj.PipeSpecCode = input.PipeSpecCode; updateObj.PipeSectionName = input.PipeSectionName; updateObj.OuterDiameter = input.OuterDiameter; - updateObj.Bevel = input.Bevel; + updateObj.Thickness = input.Thickness; updateObj.Material = input.Material; - updateObj.Length = input.Length; - updateObj.DrillingPosition = input.DrillingPosition; - updateObj.Intersecting = input.Intersecting; - updateObj.InterfaceRequirement = input.InterfaceRequirement; updateObj.HasMainSignature = input.HasMainSignature; - updateObj.Quantity = input.Quantity; - updateObj.MarkingContent = input.MarkingContent; - updateObj.CuttingFile = input.CuttingFile; - updateObj.BranchOuterDiameter = input.BranchOuterDiameter; - updateObj.BranchWallThickness = input.BranchWallThickness; - updateObj.BranchMaterial = input.BranchMaterial; - updateObj.BranchPortRadius = input.BranchPortRadius; - updateObj.BranchPortAngle = input.BranchPortAngle; - updateObj.BranchPortRequirement = input.BranchPortRequirement; - updateObj.IntersectingLineType = input.IntersectingLineType; - updateObj.IntersectingLineCategory = input.IntersectingLineCategory; - updateObj.FinishedProductScale = input.FinishedProductScale; - updateObj.FlangeThickness = input.FlangeThickness; - updateObj.FlangeInnerDiameter = input.FlangeInnerDiameter; - updateObj.WeldingHeatInput = input.WeldingHeatInput; - updateObj.PipeAllowableStress = input.PipeAllowableStress; - updateObj.PipeDiameter = input.PipeDiameter; - updateObj.PipeWallThickness = input.PipeWallThickness; - updateObj.VRData = input.VRData; updateObj.ProcessRouteNumber = input.ProcessRouteNumber; updateObj.PlannedStartTime = input.PlannedStartTime; updateObj.PlannedEndTime = input.PlannedEndTime; - updateObj.TimeInfo = input.TimeInfo; - updateObj.RedundantField1 = input.RedundantField1; - updateObj.RedundantField2 = input.RedundantField2; - updateObj.RedundantField3 = input.RedundantField3; + updateObj.TeamInfo = input.TeamInfo; + updateObj.Timestamp = input.Timestamp; updateObj.Remark = input.Remark; - updateObj.IsDisabled = input.IsDisabled; - - - await workPlanRepository.UpdateAsync(updateObj); - - return ObjectMapper.Map<WorkPlan, WorkPlanDto>(updateObj); - } - + + + await workPlanRepository.UpdateAsync(updateObj); + + return ObjectMapper.Map<WorkPlan, WorkPlanDto>(updateObj); + } + /// <summary> /// 鍏嬮殕浣滀笟璁″垝琛� /// </summary> /// <param name="ids"></param> /// <returns></returns> - public async Task<List<WorkPlanDto>> CloneAsync(IEnumerable<Guid> ids) - { + public async Task<List<WorkPlanDto>> CloneAsync(IEnumerable<Guid> ids) + { //var workPlans = new List<WorkPlan>(); //if (ids != null) //{ @@ -225,319 +210,297 @@ // name += WorkPlanConsts.CloneTag; // continue; // } - + // notExist = true; // } - + // //WorkPlan = await workPlanRepository.InsertAsync(WorkPlan.Clone(GuidGenerator.Create(), name, sort++)); // workPlans.Add(WorkPlan); // } // } //} - + //return ObjectMapper.Map<List<WorkPlan>, List<WorkPlanDto>>(workPlans); - return new List<WorkPlanDto>(); - } - + return new List<WorkPlanDto>(); + } + /// <summary> /// 鍒犻櫎鍗曚釜浣滀笟璁″垝琛� /// </summary> /// <param name="id"></param> /// <returns></returns> - public virtual Task DeleteAsync(Guid id) - { - return workPlanRepository.DeleteAsync(id); - } - + public virtual Task DeleteAsync(Guid id) + { + return workPlanRepository.DeleteAsync(id); + } + /// <summary> /// 鍒犻櫎澶氫釜浣滀笟璁″垝琛� /// </summary> /// <param name="ids"></param> /// <returns></returns> - public async Task DeleteManyAsync(IEnumerable<Guid> ids) - { - foreach (var id in ids) - { - await DeleteAsync(id); - } - } - + public async Task DeleteManyAsync(IEnumerable<Guid> ids) + { + foreach (var id in ids) + { + await DeleteAsync(id); + } + } + /// <summary> /// 璋冩暣鎺掑簭浣滀笟璁″垝琛� /// </summary> /// <param name="id"></param> /// <param name="sort"></param> /// <returns></returns> - public virtual async Task AdjustSortAsync(Guid id, int sort) - { - var list = await workPlanRepository.GetListAsync(null, nameof(WorkPlan.Sort)); - if (list != null && list.Any()) - { - var initSort = 1; - list.ForEach(x => x.AdjustSort(initSort++)); - var entity = list.FirstOrDefault(x => x.Id == id); - if (entity != null) - { - if (sort == 1) - { - list.Where(x => x.Id != id).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); - } - else if (entity.Sort > sort) - { - list.Where(x => x.Id != id && x.Sort >= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); - list.Where(x => x.Id != id && x.Sort < sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); - } - else if (entity.Sort < sort) - { - list.Where(x => x.Id != id && x.Sort > sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); - list.Where(x => x.Id != id && x.Sort <= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); - } - - entity.AdjustSort(sort); - } - } - - await workPlanRepository.UpdateManyAsync(list); - } - + public virtual async Task AdjustSortAsync(Guid id, int sort) + { + var list = await workPlanRepository.GetListAsync(null, nameof(WorkPlan.Sort)); + if (list != null && list.Any()) + { + var initSort = 1; + list.ForEach(x => x.AdjustSort(initSort++)); + var entity = list.FirstOrDefault(x => x.Id == id); + if (entity != null) + { + if (sort == 1) + { + list.Where(x => x.Id != id).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); + } + else if (entity.Sort > sort) + { + list.Where(x => x.Id != id && x.Sort >= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); + list.Where(x => x.Id != id && x.Sort < sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); + } + else if (entity.Sort < sort) + { + list.Where(x => x.Id != id && x.Sort > sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); + list.Where(x => x.Id != id && x.Sort <= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); + } + + entity.AdjustSort(sort); + } + } + + await workPlanRepository.UpdateManyAsync(list); + } + /// <summary> /// 瀵煎叆浣滀笟璁″垝琛� /// </summary> /// <param name="input"></param> /// <returns></returns> /// <exception cref="UserFriendlyException"></exception> - public async Task ImportAsync(WorkPlansImportModel input) - { - Check.NotNull(input, nameof(input)); - - var workPlanCreateDtos = new List<(int RowIndex, WorkPlanCreateDto Item)>(); - var workPlanUpdateDtos = new List<(int RowIndex, Guid Id, WorkPlanUpdateDto Item)>(); - var importItems = input.WorkPlans; - - if (importItems != null && importItems.Any()) - { + public async Task ImportAsync(WorkPlansImportModel input) + { + Check.NotNull(input, nameof(input)); + + var workPlanCreateDtos = new List<(int RowIndex, WorkPlanCreateDto Item)>(); + var workPlanUpdateDtos = new List<(int RowIndex, Guid Id, WorkPlanUpdateDto Item)>(); + var importItems = input.WorkPlans; + + if (importItems != null && importItems.Any()) + { #region 瀵煎叆鏍¢獙 - + // 鍒ゆ柇鍚嶇О鏄惁閲嶅锛屽苟杈撳嚭绗嚑琛岄噸澶� - var duplicateWorkPlans = importItems.GroupBy(x => x.TaskCode).Where(x => x.Count() > 1).ToList(); - if (duplicateWorkPlans?.Any() == true) - { - var duplicateWorkPlanMsgs = duplicateWorkPlans.Select(x => $"绗� {string.Join(",", x.Select(x => x.RowIndex))} 琛岋細{x.Key} 鍚嶇О閲嶅"); - var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝 {string.Join(",", duplicateWorkPlanMsgs)}锛岀粓姝㈠鍏�"; - throw new UserFriendlyException(errorMsg); - } - - #endregion - - foreach (var impItem in importItems) - { - if (impItem.TaskCode.IsNullOrWhiteSpace()) - { - continue; - } - - if (impItem.TaskCode.IsNullOrWhiteSpace()) - { - var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊impItem.RowIndex}琛岋細WorkPlan鍚嶇О涓嶈兘涓虹┖"; - throw new UserFriendlyException(errorMsg); - } - - var oldWorkPlan = await workPlanRepository.FindByNameAsync(impItem.TaskCode); - if (oldWorkPlan != null) - { - var workPlanUpdateDto = new WorkPlanUpdateDto - { + var duplicateWorkPlans = importItems.GroupBy(x => x.TaskCode).Where(x => x.Count() > 1).ToList(); + if (duplicateWorkPlans?.Any() == true) + { + var duplicateWorkPlanMsgs = duplicateWorkPlans.Select(x => $"绗� {string.Join(",", x.Select(x => x.RowIndex))} 琛岋細{x.Key} 鍚嶇О閲嶅"); + var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝 {string.Join(",", duplicateWorkPlanMsgs)}锛岀粓姝㈠鍏�"; + throw new UserFriendlyException(errorMsg); + } + + #endregion + + foreach (var impItem in importItems) + { + if (impItem.TaskCode.IsNullOrWhiteSpace()) + { + continue; + } + + if (impItem.TaskCode.IsNullOrWhiteSpace()) + { + var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊impItem.RowIndex}琛岋細WorkPlan鍚嶇О涓嶈兘涓虹┖"; + throw new UserFriendlyException(errorMsg); + } + + var oldWorkPlan = await workPlanRepository.FindByNameAsync(impItem.TaskCode); + if (oldWorkPlan != null) + { + var workPlanUpdateDto = new WorkPlanUpdateDto + { TaskCode = impItem.TaskCode, - OrgMaterialCode = impItem.OrgMaterialCode, - FactoryCode = impItem.FactoryCode, - ProductCode = impItem.ProductCode, - WorkstationCode = impItem.WorkstationCode, - EquipmentCode = impItem.EquipmentCode, - WorkpieceName = impItem.WorkpieceName, - ProcessName = impItem.ProcessName, - PipeFittingCode = impItem.PipeFittingCode, - PreSerialNumber = impItem.PreSerialNumber, - DataIdentifier = impItem.DataIdentifier, - PipeSpecCode = impItem.PipeSpecCode, - PipeSectionName = impItem.PipeSectionName, - OuterDiameter = impItem.OuterDiameter, - Bevel = impItem.Bevel, - Material = impItem.Material, - Length = impItem.Length, - DrillingPosition = impItem.DrillingPosition, - Intersecting = impItem.Intersecting, - InterfaceRequirement = impItem.InterfaceRequirement, - HasMainSignature = impItem.HasMainSignature, - Quantity = impItem.Quantity, - MarkingContent = impItem.MarkingContent, - CuttingFile = impItem.CuttingFile, - BranchOuterDiameter = impItem.BranchOuterDiameter, - BranchWallThickness = impItem.BranchWallThickness, - BranchMaterial = impItem.BranchMaterial, - BranchPortRadius = impItem.BranchPortRadius, - BranchPortAngle = impItem.BranchPortAngle, - BranchPortRequirement = impItem.BranchPortRequirement, - IntersectingLineType = impItem.IntersectingLineType, - IntersectingLineCategory = impItem.IntersectingLineCategory, - FinishedProductScale = impItem.FinishedProductScale, - FlangeThickness = impItem.FlangeThickness, - FlangeInnerDiameter = impItem.FlangeInnerDiameter, - WeldingHeatInput = impItem.WeldingHeatInput, - PipeAllowableStress = impItem.PipeAllowableStress, - PipeDiameter = impItem.PipeDiameter, - PipeWallThickness = impItem.PipeWallThickness, - VRData = impItem.VRData, - ProcessRouteNumber = impItem.ProcessRouteNumber, - PlannedStartTime = impItem.PlannedStartTime, - PlannedEndTime = impItem.PlannedEndTime, - TimeInfo = impItem.TimeInfo, - RedundantField1 = impItem.RedundantField1, - RedundantField2 = impItem.RedundantField2, - RedundantField3 = impItem.RedundantField3, - Remark = impItem.Remark, - IsDisabled = impItem.IsDisabled, - - }; - - workPlanUpdateDtos.Add((impItem.RowIndex, oldWorkPlan.Id, workPlanUpdateDto)); - } - else - { - var workPlanCreateDto = new WorkPlanCreateDto - { +DataIdentifier = impItem.DataIdentifier, +MaterialMode = impItem.MaterialMode, +Length = impItem.Length, +MarkingContent = impItem.MarkingContent, +MarkingPosition = impItem.MarkingPosition, +CuttingPosition = impItem.CuttingPosition, +Quantity = impItem.Quantity, +FlangeThickness = impItem.FlangeThickness, +FlangeInnerDiameter = impItem.FlangeInnerDiameter, +WeldingHeatInput = impItem.WeldingHeatInput, +PipeAllowableStress = impItem.PipeAllowableStress, +PipeDiameter = impItem.PipeDiameter, +PipeWallThickness = impItem.PipeWallThickness, +FactoryCode = impItem.FactoryCode, +ProductCode = impItem.ProductCode, +WorkstationCode = impItem.WorkstationCode, +EquipmentCode = impItem.EquipmentCode, +WorkpieceName = impItem.WorkpieceName, +ProcessName = impItem.ProcessName, +PipeFittingCode = impItem.PipeFittingCode, +PreSerialNumber = impItem.PreSerialNumber, +PipeSpecCode = impItem.PipeSpecCode, +PipeSectionName = impItem.PipeSectionName, +OuterDiameter = impItem.OuterDiameter, +Thickness = impItem.Thickness, +Material = impItem.Material, +HasMainSignature = impItem.HasMainSignature, +ProcessRouteNumber = impItem.ProcessRouteNumber, +PlannedStartTime = impItem.PlannedStartTime, +PlannedEndTime = impItem.PlannedEndTime, +TeamInfo = impItem.TeamInfo, +Timestamp = impItem.Timestamp, +Remark = impItem.Remark, + + }; + + workPlanUpdateDtos.Add((impItem.RowIndex, oldWorkPlan.Id, workPlanUpdateDto)); + } + else + { + var workPlanCreateDto = new WorkPlanCreateDto + { TaskCode = impItem.TaskCode, - OrgMaterialCode = impItem.OrgMaterialCode, - FactoryCode = impItem.FactoryCode, - ProductCode = impItem.ProductCode, - WorkstationCode = impItem.WorkstationCode, - EquipmentCode = impItem.EquipmentCode, - WorkpieceName = impItem.WorkpieceName, - ProcessName = impItem.ProcessName, - PipeFittingCode = impItem.PipeFittingCode, - PreSerialNumber = impItem.PreSerialNumber, - DataIdentifier = impItem.DataIdentifier, - PipeSpecCode = impItem.PipeSpecCode, - PipeSectionName = impItem.PipeSectionName, - OuterDiameter = impItem.OuterDiameter, - Bevel = impItem.Bevel, - Material = impItem.Material, - Length = impItem.Length, - DrillingPosition = impItem.DrillingPosition, - Intersecting = impItem.Intersecting, - InterfaceRequirement = impItem.InterfaceRequirement, - HasMainSignature = impItem.HasMainSignature, - Quantity = impItem.Quantity, - MarkingContent = impItem.MarkingContent, - CuttingFile = impItem.CuttingFile, - BranchOuterDiameter = impItem.BranchOuterDiameter, - BranchWallThickness = impItem.BranchWallThickness, - BranchMaterial = impItem.BranchMaterial, - BranchPortRadius = impItem.BranchPortRadius, - BranchPortAngle = impItem.BranchPortAngle, - BranchPortRequirement = impItem.BranchPortRequirement, - IntersectingLineType = impItem.IntersectingLineType, - IntersectingLineCategory = impItem.IntersectingLineCategory, - FinishedProductScale = impItem.FinishedProductScale, - FlangeThickness = impItem.FlangeThickness, - FlangeInnerDiameter = impItem.FlangeInnerDiameter, - WeldingHeatInput = impItem.WeldingHeatInput, - PipeAllowableStress = impItem.PipeAllowableStress, - PipeDiameter = impItem.PipeDiameter, - PipeWallThickness = impItem.PipeWallThickness, - VRData = impItem.VRData, - ProcessRouteNumber = impItem.ProcessRouteNumber, - PlannedStartTime = impItem.PlannedStartTime, - PlannedEndTime = impItem.PlannedEndTime, - TimeInfo = impItem.TimeInfo, - RedundantField1 = impItem.RedundantField1, - RedundantField2 = impItem.RedundantField2, - RedundantField3 = impItem.RedundantField3, - Remark = impItem.Remark, - IsDisabled = impItem.IsDisabled, - - }; - - workPlanCreateDtos.Add((impItem.RowIndex, workPlanCreateDto)); - } - } - } - +DataIdentifier = impItem.DataIdentifier, +MaterialMode = impItem.MaterialMode, +Length = impItem.Length, +MarkingContent = impItem.MarkingContent, +MarkingPosition = impItem.MarkingPosition, +CuttingPosition = impItem.CuttingPosition, +Quantity = impItem.Quantity, +FlangeThickness = impItem.FlangeThickness, +FlangeInnerDiameter = impItem.FlangeInnerDiameter, +WeldingHeatInput = impItem.WeldingHeatInput, +PipeAllowableStress = impItem.PipeAllowableStress, +PipeDiameter = impItem.PipeDiameter, +PipeWallThickness = impItem.PipeWallThickness, +FactoryCode = impItem.FactoryCode, +ProductCode = impItem.ProductCode, +WorkstationCode = impItem.WorkstationCode, +EquipmentCode = impItem.EquipmentCode, +WorkpieceName = impItem.WorkpieceName, +ProcessName = impItem.ProcessName, +PipeFittingCode = impItem.PipeFittingCode, +PreSerialNumber = impItem.PreSerialNumber, +PipeSpecCode = impItem.PipeSpecCode, +PipeSectionName = impItem.PipeSectionName, +OuterDiameter = impItem.OuterDiameter, +Thickness = impItem.Thickness, +Material = impItem.Material, +HasMainSignature = impItem.HasMainSignature, +ProcessRouteNumber = impItem.ProcessRouteNumber, +PlannedStartTime = impItem.PlannedStartTime, +PlannedEndTime = impItem.PlannedEndTime, +TeamInfo = impItem.TeamInfo, +Timestamp = impItem.Timestamp, +Remark = impItem.Remark, + + }; + + workPlanCreateDtos.Add((impItem.RowIndex, workPlanCreateDto)); + } + } + } + // 鏂板 - foreach (var workPlanDto in workPlanCreateDtos) - { - try - { - await CreateAsync(workPlanDto.Item); - } - catch (Exception e) - { - var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�"; - throw new UserFriendlyException(errorMsg); - } - } - + foreach (var workPlanDto in workPlanCreateDtos) + { + try + { + await CreateAsync(workPlanDto.Item); + } + catch (Exception e) + { + var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�"; + throw new UserFriendlyException(errorMsg); + } + } + // 鏇存柊 - foreach (var workPlanDto in workPlanUpdateDtos) - { - try - { - await UpdateAsync(workPlanDto.Id, workPlanDto.Item); - } - catch (Exception e) - { - var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�"; - throw new UserFriendlyException(errorMsg); - } - } - } - + foreach (var workPlanDto in workPlanUpdateDtos) + { + try + { + await UpdateAsync(workPlanDto.Id, workPlanDto.Item); + } + catch (Exception e) + { + var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�"; + throw new UserFriendlyException(errorMsg); + } + } + } + /// <summary> /// 瀵煎嚭浣滀笟璁″垝琛� /// </summary> /// <param name="input"></param> /// <returns></returns> - public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWorkPlanInput input) - { - Check.NotNull(input, nameof(input)); - - if (input.Sorting.IsNullOrWhiteSpace()) - { - input.Sorting = nameof(WorkPlan.Sort); - } - + public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWorkPlanInput input) + { + Check.NotNull(input, nameof(input)); + + if (input.Sorting.IsNullOrWhiteSpace()) + { + input.Sorting = nameof(WorkPlan.Sort); + } + #region 鍔ㄦ�佹瀯閫犳煡璇㈡潯浠� - + //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠� - var whereConditions = DynamicGetQueryParams(input); - - #endregion - - - var list = await workPlanRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true); - var result = ObjectMapper.Map<List<WorkPlan>, List<WorkPlanDto>>(list); - - var sheets = new Dictionary<string, object> - { - ["閰嶇疆"] = ExportHelper.ConvertListToExportData(result), - }; - - var fileName = result.Count > 1 ? "浣滀笟璁″垝琛ㄥ垪琛�" : result.Count == 1 ? result[0]?.TaskCode : "WorkPlan妯$増"; - return (sheets, fileName); - } - + var whereConditions = DynamicGetQueryParams(input); + + #endregion + + + var list = await workPlanRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true); + var result = ObjectMapper.Map<List<WorkPlan>, List<WorkPlanDto>>(list); + + var sheets = new Dictionary<string, object> + { + ["閰嶇疆"] = ExportHelper.ConvertListToExportData(result), + }; + + var fileName = "浣滀笟璁″垝"; + return (sheets, fileName); + } + /// <summary> /// 鏍¢獙浣滀笟璁″垝琛紝褰撴柊寤烘垨鏇存柊鏃� /// </summary> /// <param name="input"></param> /// <returns></returns> - protected Task CheckCreateOrUpdateDtoAsync(WorkPlanCreateOrUpdateDtoBase input) - { - Check.NotNull(input, nameof(input)); - Check.NotNullOrWhiteSpace(input.TaskCode, "浠诲姟缂栫爜", 64); - Check.NotNullOrWhiteSpace(input.OrgMaterialCode, "鍘熸枡缂栧彿", 64); - Check.NotNull(input.HasMainSignature, "鏄惁鏈変富绛�"); - Check.NotNull(input.Quantity, "鍖呮嫭鏁伴噺"); - - return Task.CompletedTask; - } -} + protected Task CheckCreateOrUpdateDtoAsync(WorkPlanCreateOrUpdateDtoBase input) + { + Check.NotNull(input, nameof(input)); + Check.NotNullOrWhiteSpace(input.TaskCode, "浠诲姟缂栫爜", 256); + Check.NotNull(input.Length, "闀垮害(mm)"); + Check.NotNull(input.MarkingPosition, "鎵撶爜浣嶇疆"); + Check.NotNull(input.CuttingPosition, "鍒囧壊浣嶇疆"); + Check.NotNull(input.Quantity, "绠℃鏁伴噺"); + Check.NotNull(input.FlangeThickness, "娉曞叞鍘氬害(mm)"); + Check.NotNull(input.FlangeInnerDiameter, "娉曞叞鐩村緞(mm)"); + Check.NotNull(input.PipeDiameter, "濂楃闀垮害(mm)"); + Check.NotNull(input.PipeWallThickness, "濂楃鐩村緞(mm)"); + Check.NotNull(input.OuterDiameter, "澶栧緞(mm)"); + Check.NotNull(input.Thickness, "澹佸帤(mm)"); + Check.NotNull(input.HasMainSignature, "鏄惁涓绘敮绠�"); + + return Task.CompletedTask; + } +} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/MapperProfiles/WorkPlanAutoMapperProfile.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/MapperProfiles/WorkPlanAutoMapperProfile.cs index 44f246c..1d1cea0 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/MapperProfiles/WorkPlanAutoMapperProfile.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/MapperProfiles/WorkPlanAutoMapperProfile.cs @@ -21,7 +21,6 @@ * into multiple profile classes for a better organization. */ CreateMap<WorkPlan, WorkPlanDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); CreateMap<WorkPlanCreateDto, WorkPlan>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); - CreateMap<GetWorkPlanInput, WorkPlan>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); - CreateMap<WorkPlanInput, WorkPlanCreateDto>(MemberList.None); + CreateMap<GetWorkPlanInput, WorkPlan>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); } } diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensions.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensions.cs new file mode 100644 index 0000000..60fee7b --- /dev/null +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensions.cs @@ -0,0 +1,114 @@ +锘縰sing Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Metadata.Builders; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CMS.Plugin.MyExtension.Domain +{ + /// <summary> + /// 鐢ㄤ簬鎵╁睍 EntityTypeBuilder 鐨勯潤鎬佺被锛屾彁渚涢拡瀵圭户鎵胯嚜 MyFullAuditedAggregateRoot<Guid> 鐨勫疄浣撶被鍨嬬殑閰嶇疆鎵╁睍鏂规硶 + /// </summary> + public static class EntityTypeBuilderExtensions + { + /// <summary> + /// 閽堝缁ф壙鑷� MyFullAuditedAggregateRoot<Guid> 鐨勫疄浣撶被鍨嬶紝閰嶇疆鍏跺叕鍏卞睘鎬� + /// </summary> + /// <typeparam name="TEntity">缁ф壙鑷� MyFullAuditedAggregateRoot<Guid> 鐨勫疄浣撶被鍨�</typeparam> + /// <param name="b">EntityTypeBuilder<TEntity> 瀹炰緥锛岀敤浜庨厤缃疄浣撶殑灞炴��</param> + public static void ConfigureMyCmsEntity<TEntity>(this EntityTypeBuilder<TEntity> b) where TEntity : MyFullAuditedAggregateRoot<Guid> + { + b.Property(x => x.CreatorId) + .HasMaxLength(36) + .IsRequired(false) + .HasComment("鍒涘缓浜篒D"); + + b.Property(x => x.CreatorName) + .HasMaxLength(64) + .IsRequired(false) + .HasComment("鍒涘缓浜�"); + + b.Property(x => x.CreationTime) + .IsRequired() + .HasComment("鍒涘缓鏃堕棿"); + + b.Property(x => x.LastModifierName) + .HasMaxLength(64) + .IsRequired(false) + .HasComment("淇敼浜�"); + + b.Property(x => x.LastModifierId) + .HasMaxLength(36) + .IsRequired(false) + .HasComment("淇敼浜篒D"); + + b.Property(x => x.LastModificationTime) + .IsRequired(false) + .HasComment("淇敼鏃堕棿"); + + b.Property(x => x.IsDeleted) + .IsRequired() + .HasComment("鏄惁鍒犻櫎"); + + b.Property(x => x.DeleterId) + .HasMaxLength(36) + .IsRequired(false) + .HasComment("鍒犻櫎浜篒D"); + + b.Property(x => x.DeletionTime) + .IsRequired(false) + .HasComment("鍒犻櫎鏃堕棿"); + + b.Property(x => x.ExtraProperties) + .IsRequired(false) + .HasComment("鎵╁睍灞炴��"); + + b.Property(x => x.ConcurrencyStamp) + .IsRequired(false) + .HasMaxLength(40) + .HasComment("骞跺彂鎴�"); + + b.Property(x => x.Sort) + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.Property(x => x.Remark) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("澶囨敞"); + + b.Property(x => x.OperationRemark) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鎿嶄綔澶囨敞"); + + b.Property(x => x.DeleteRemark) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鍒犻櫎澶囨敞"); + + b.Property(x => x.IsDisabled) + .IsRequired(false) + .HasDefaultValue(false) + .HasComment("鏄惁绂佺敤"); + + b.Property(x => x.ExtraField1) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鎵╁睍瀛楁1"); + + b.Property(x => x.ExtraField2) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鎵╁睍瀛楁2"); + + b.Property(x => x.ExtraField3) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鎵╁睍瀛楁3"); + + } + } +} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensionsForRecord.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensionsForRecord.cs new file mode 100644 index 0000000..a856b77 --- /dev/null +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/EntityTypeBuilderExtensionsForRecord.cs @@ -0,0 +1,96 @@ +锘縰sing Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Metadata.Builders; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CMS.Plugin.MyExtension.Domain +{ + /// <summary> + /// 鐢ㄤ簬鎵╁睍 EntityTypeBuilder 鐨勯潤鎬佺被锛屾彁渚涢拡瀵圭户鎵胯嚜 MyFullAuditedAggregateRoot<Guid> 鐨勫疄浣撶被鍨嬬殑閰嶇疆鎵╁睍鏂规硶(璁板綍琛ㄤ笓鐢�) + /// </summary> + public static class EntityTypeBuilderExtensionsForRecord + { + /// <summary> + /// 閽堝缁ф壙鑷� MyFullAuditedAggregateRoot<Guid> 鐨勫疄浣撶被鍨嬶紝閰嶇疆鍏跺叕鍏卞睘鎬� + /// </summary> + /// <typeparam name="TEntity">缁ф壙鑷� MyFullAuditedAggregateRoot<Guid> 鐨勫疄浣撶被鍨�</typeparam> + /// <param name="b">EntityTypeBuilder<TEntity> 瀹炰緥锛岀敤浜庨厤缃疄浣撶殑灞炴��</param> + public static void ConfigureMyCmsEntityForRecord<TEntity>(this EntityTypeBuilder<TEntity> b) where TEntity : MyFullAuditedAggregateRootForRecord<Guid> + { + b.Property(x => x.CreatorId) + .HasMaxLength(36) + .IsRequired(false) + .HasComment("鍒涘缓浜篒D"); + + b.Property(x => x.CreatorName) + .HasMaxLength(64) + .IsRequired(false) + .HasComment("鍒涘缓浜�"); + + b.Property(x => x.CreationTime) + .IsRequired() + .HasComment("鍒涘缓鏃堕棿"); + + + b.Property(x => x.LastModifierId) + .HasMaxLength(36) + .IsRequired(false) + .HasComment("淇敼浜篒D"); + + b.Property(x => x.LastModificationTime) + .IsRequired(false) + .HasComment("淇敼鏃堕棿"); + + b.Property(x => x.IsDeleted) + .IsRequired() + .HasComment("鏄惁鍒犻櫎"); + + b.Property(x => x.DeleterId) + .HasMaxLength(36) + .IsRequired(false) + .HasComment("鍒犻櫎浜篒D"); + + b.Property(x => x.DeletionTime) + .IsRequired(false) + .HasComment("鍒犻櫎鏃堕棿"); + + b.Property(x => x.ExtraProperties) + .IsRequired(false) + .HasComment("鎵╁睍灞炴��"); + + b.Property(x => x.ConcurrencyStamp) + .IsRequired(false) + .HasMaxLength(40) + .HasComment("骞跺彂鎴�"); + + b.Property(x => x.Sort) + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.Property(x => x.Remark) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("澶囨敞"); + + + b.Property(x => x.ExtraField1) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鎵╁睍瀛楁1"); + + b.Property(x => x.ExtraField2) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鎵╁睍瀛楁2"); + + b.Property(x => x.ExtraField3) + .HasMaxLength(256) + .IsRequired(false) + .HasComment("鎵╁睍瀛楁3"); + + } + } +} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRoot.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRoot.cs new file mode 100644 index 0000000..3808e5a --- /dev/null +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRoot.cs @@ -0,0 +1,136 @@ +锘縰sing System; +using Volo.Abp.Auditing; +using Volo.Abp.Domain.Entities.Auditing; + +namespace CMS.Plugin.MyExtension.Domain; + + +/// <summary> +/// 鎴戞墿灞曠殑瀹炰綋绫诲熀绫� +/// </summary> +[Serializable] +public abstract class MyFullAuditedAggregateRoot : FullAuditedAggregateRoot +{ + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public virtual string? CreatorName { get; set; } + + /// <summary> + /// 淇敼浜� + /// </summary> + public virtual string? LastModifierName { get; set; } + + /// <summary> + /// 鎿嶄綔澶囨敞 + /// </summary> + public virtual string? OperationRemark { get; set; } + + /// <summary> + /// 鍒犻櫎澶囨敞 + /// </summary> + public virtual string? DeleteRemark { get; set; } + + + /// <summary> + /// 鎺掑簭 + /// </summary> + public virtual int Sort { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public virtual string? Remark { get; set; } + + /// <summary> + /// 鏄惁绂佺敤 + /// </summary> + public virtual bool? IsDisabled { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁1 + /// </summary> + public virtual string? ExtraField1 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁2 + /// </summary> + public virtual string? ExtraField2 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁3 + /// </summary> + public virtual string? ExtraField3 { get; set; } + + +} + +/// <summary> +/// 鎴戞墿灞曠殑瀹炰綋绫诲熀绫� +/// </summary> +/// <typeparam name="TKey"></typeparam> +[Serializable] +public abstract class MyFullAuditedAggregateRoot<TKey> : FullAuditedAggregateRoot<TKey> +{ + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public virtual string? CreatorName { get; set; } + + /// <summary> + /// 淇敼浜� + /// </summary> + public virtual string? LastModifierName { get; set; } + + /// <summary> + /// 鎿嶄綔澶囨敞 + /// </summary> + public virtual string? OperationRemark { get; set; } + + /// <summary> + /// 鍒犻櫎澶囨敞 + /// </summary> + public virtual string? DeleteRemark { get; set; } + + /// <summary> + /// 鎺掑簭 + /// </summary> + public virtual int Sort { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public virtual string? Remark { get; set; } + + /// <summary> + /// 鏄惁绂佺敤 + /// </summary> + public virtual bool? IsDisabled { get; set; } + + + /// <summary> + /// 鎵╁睍瀛楁1 + /// </summary> + public virtual string? ExtraField1 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁2 + /// </summary> + public virtual string? ExtraField2 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁3 + /// </summary> + public virtual string? ExtraField3 { get; set; } + + protected MyFullAuditedAggregateRoot() + { + + } + + protected MyFullAuditedAggregateRoot(TKey id) + : base(id) + { + + } +} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRootForRecord.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRootForRecord.cs new file mode 100644 index 0000000..b12e924 --- /dev/null +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/MyExtension/MyFullAuditedAggregateRootForRecord.cs @@ -0,0 +1,94 @@ +锘縰sing System; +using Volo.Abp.Auditing; +using Volo.Abp.Domain.Entities.Auditing; + +namespace CMS.Plugin.MyExtension.Domain; + + +/// <summary> +/// 鎴戞墿灞曠殑瀹炰綋绫诲熀绫�(璁板綍琛ㄤ笓鐢�) +/// </summary> +[Serializable] +public abstract class MyFullAuditedAggregateRootForRecord : FullAuditedAggregateRoot +{ + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public virtual string? CreatorName { get; set; } + + /// <summary> + /// 鎺掑簭 + /// </summary> + public virtual int Sort { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public virtual string? Remark { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁1 + /// </summary> + public virtual string? ExtraField1 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁2 + /// </summary> + public virtual string? ExtraField2 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁3 + /// </summary> + public virtual string? ExtraField3 { get; set; } + + +} + +/// <summary> +/// 鎴戞墿灞曠殑瀹炰綋绫诲熀绫�(璁板綍琛ㄤ笓鐢�) +/// </summary> +/// <typeparam name="TKey"></typeparam> +[Serializable] +public abstract class MyFullAuditedAggregateRootForRecord<TKey> : FullAuditedAggregateRoot<TKey> +{ + /// <summary> + /// 鍒涘缓浜� + /// </summary> + public virtual string? CreatorName { get; set; } + + /// <summary> + /// 鎺掑簭 + /// </summary> + public virtual int Sort { get; set; } + + /// <summary> + /// 澶囨敞 + /// </summary> + public virtual string? Remark { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁1 + /// </summary> + public virtual string? ExtraField1 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁2 + /// </summary> + public virtual string? ExtraField2 { get; set; } + + /// <summary> + /// 鎵╁睍瀛楁3 + /// </summary> + public virtual string? ExtraField3 { get; set; } + + protected MyFullAuditedAggregateRootForRecord() + { + + } + + protected MyFullAuditedAggregateRootForRecord(TKey id) + : base(id) + { + + } +} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/WorkPlan/WorkPlan.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/WorkPlan/WorkPlan.cs index 40c8562..3d22889 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/WorkPlan/WorkPlan.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Domain/WorkPlan/WorkPlan.cs @@ -1,3 +1,4 @@ +using CMS.Plugin.MyExtension.Domain; using Microsoft.EntityFrameworkCore; using System.ComponentModel.DataAnnotations.Schema; using Volo.Abp.Domain.Entities.Auditing; @@ -7,18 +8,105 @@ /// <summary> /// 浣滀笟璁″垝琛� /// </summary> - public class WorkPlan : FullAuditedAggregateRoot<Guid> + public class WorkPlan : MyFullAuditedAggregateRoot<Guid> { /// <summary> /// 浠诲姟缂栫爜 /// </summary> public string TaskCode { get; set; } - /// <summary> - /// 鍘熸枡缂栧彿 - /// </summary> - public string OrgMaterialCode { get; set; } + #region 鍘熸枡绠′俊鎭� + ///// <summary> + ///// 鍘熸枡缂栧彿 + ///// </summary> + //public string OrgMaterialCode { get; set; } + + /// <summary> + /// 鍘熸枡鏍囪瘑 + /// </summary> + public string DataIdentifier { get; set; } + + /// <summary> + /// 鍘熸枡鍨嬪彿 + /// </summary> + public string MaterialMode { get; set; } + + + #endregion + + + #region 鎵撶爜 + + /// <summary> + /// 闀垮害(mm) + /// </summary> + public decimal Length { get; set; } + + /// <summary> + /// 鎵撶爜鍐呭 + /// </summary> + public string MarkingContent { get; set; } + + /// <summary> + /// 鎵撶爜浣嶇疆 + /// </summary> + public decimal MarkingPosition { get; set; } + + #endregion + + #region 鍒囧壊 + + ///// <summary> + ///// 鍒囧壊鏂囦欢 + ///// </summary> + //public string CuttingFile { get; set; } + + /// <summary> + /// 鍒囧壊浣嶇疆 + /// </summary> + public decimal CuttingPosition { get; set; } + + /// <summary> + /// 绠℃鏁伴噺 + /// </summary> + public int Quantity { get; set; } + + #endregion + + #region 瑁呴厤銆佺剨鎺� + + /// <summary> + /// 娉曞叞鍘氬害(mm) + /// </summary> + public decimal FlangeThickness { get; set; } + + /// <summary> + /// 娉曞叞鐩村緞(mm) + /// </summary> + public decimal FlangeInnerDiameter { get; set; } + + /// <summary> + /// 娉曞叞鍏О鍘嬪姏 + /// </summary> + public string WeldingHeatInput { get; set; } + + /// <summary> + /// 娉曞叞鍐茬爜鍐呭 + /// </summary> + public string PipeAllowableStress { get; set; } + + /// <summary> + /// 濂楃闀垮害(mm) + /// </summary> + public decimal PipeDiameter { get; set; } + + /// <summary> + /// 濂楃鐩村緞(mm) + /// </summary> + public decimal PipeWallThickness { get; set; } + + #endregion /// <summary> /// 宸ュ巶浠g爜 @@ -60,13 +148,10 @@ /// </summary> public string PreSerialNumber { get; set; } - /// <summary> - /// 鍘熸枡鏍囪瘑 - /// </summary> - public string DataIdentifier { get; set; } + /// <summary> - /// 绠¤鏍肩爜 + /// 绠℃缂栫爜 /// </summary> public string PipeSpecCode { get; set; } @@ -76,142 +161,38 @@ public string PipeSectionName { get; set; } /// <summary> - /// 澶栧緞 + /// 澶栧緞(mm) /// </summary> - public string OuterDiameter { get; set; } + public decimal OuterDiameter { get; set; } /// <summary> - /// 鍧″彛 + /// 澹佸帤(mm) /// </summary> - public string Bevel { get; set; } + public decimal Thickness { get; set; } /// <summary> /// 鏉愯川 /// </summary> public string Material { get; set; } - /// <summary> - /// 闀垮害 - /// </summary> - public string Length { get; set; } /// <summary> - /// 鎵撳瓟浣� - /// </summary> - public string DrillingPosition { get; set; } - - /// <summary> - /// 鐩歌疮 - /// </summary> - public string Intersecting { get; set; } - - /// <summary> - /// 鎺ュ彛瑕佹眰 - /// </summary> - public string InterfaceRequirement { get; set; } - - /// <summary> - /// 鏄惁鏈変富绛� + /// 鏄惁涓绘敮绠� /// </summary> public bool HasMainSignature { get; set; } - /// <summary> - /// 鍖呮嫭鏁伴噺 - /// </summary> - public int Quantity { get; set; } + + + ///// <summary> + ///// 鎴愬搧绠′欢鍥� + ///// </summary> + //public string FinishedProductScale { get; set; } + + + /// <summary> - /// 鎵撶爜鍐呭 - /// </summary> - public string MarkingContent { get; set; } - - /// <summary> - /// 鍒囧壊鏂囦欢 - /// </summary> - public string CuttingFile { get; set; } - - /// <summary> - /// 鏀寰� - /// </summary> - public string BranchOuterDiameter { get; set; } - - /// <summary> - /// 鏀澹佸帤 - /// </summary> - public string BranchWallThickness { get; set; } - - /// <summary> - /// 鏀鏉愯川 - /// </summary> - public string BranchMaterial { get; set; } - - /// <summary> - /// 鏀绔彛鏇茬巼鍗婂緞 - /// </summary> - public string BranchPortRadius { get; set; } - - /// <summary> - /// 鏀绔彛瑙掑害 - /// </summary> - public string BranchPortAngle { get; set; } - - /// <summary> - /// 鏀绔彛瑕佹眰 - /// </summary> - public string BranchPortRequirement { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍨� - /// </summary> - public string IntersectingLineType { get; set; } - - /// <summary> - /// 鐩歌疮绾跨被鍒� - /// </summary> - public string IntersectingLineCategory { get; set; } - - /// <summary> - /// 鎴愬搧鍥惧箙 - /// </summary> - public string FinishedProductScale { get; set; } - - /// <summary> - /// 娉曞叞鍘氬害 - /// </summary> - public string FlangeThickness { get; set; } - - /// <summary> - /// 娉曞叞鍐呭緞 - /// </summary> - public string FlangeInnerDiameter { get; set; } - - /// <summary> - /// 鐒婃帴鐑緭鍏� - /// </summary> - public string WeldingHeatInput { get; set; } - - /// <summary> - /// 绠¢亾鍏佽搴斿姏 - /// </summary> - public string PipeAllowableStress { get; set; } - - /// <summary> - /// 绠″緞 - /// </summary> - public string PipeDiameter { get; set; } - - /// <summary> - /// 绠¢亾澹佸帤 - /// </summary> - public string PipeWallThickness { get; set; } - - /// <summary> - /// VR鏁版嵁 - /// </summary> - public string VRData { get; set; } - - /// <summary> - /// 宸ヨ壓璺嚎缂栧彿 + /// 宸ヨ壓娴佸悜缂栧彿 /// </summary> public string ProcessRouteNumber { get; set; } @@ -226,42 +207,14 @@ public DateTime? PlannedEndTime { get; set; } /// <summary> - /// 鏃堕棿淇℃伅 + /// 鐝粍淇℃伅 /// </summary> - public string TimeInfo { get; set; } - + public string TeamInfo { get; set; } /// <summary> - /// 鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ�� + /// 鏃堕棿鎴� /// </summary> - public string RedundantField1 { get; set; } - - /// <summary> - /// 鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ�� - /// </summary> - public string RedundantField2 { get; set; } - - /// <summary> - /// 鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ�� - /// </summary> - public string RedundantField3 { get; set; } - - - - /// <summary> - /// 鎺掑簭 - /// </summary> - public virtual int Sort { get; set; } - - /// <summary> - /// 澶囨敞 - /// </summary> - public virtual string Remark { get; set; } - - /// <summary> - /// 鏄惁绂佺敤 - /// </summary> - public virtual bool? IsDisabled { get; set; } + public string Timestamp { get; set; } /// <summary> /// Adjusts the sort. diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WorkPlan.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WorkPlan.cs index 36d28bf..e9d55d9 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WorkPlan.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WorkPlan.cs @@ -1,4 +1,6 @@ +using CMS.Plugin.MyExtension.Domain; using CMS.Plugin.PipeLineLems.Domain; +using CMS.Plugin.PipeLineLems.Domain.Shared.MyTestEntityNames; using CMS.Plugin.PipeLineLems.Domain.WorkPlan; using Microsoft.EntityFrameworkCore; using Volo.Abp; @@ -9,7 +11,7 @@ /// <summary> /// EfCore鎵╁睍 /// </summary> -public static partial class CMSPluginEfCoreExtensions +public static partial class CMSPluginEfCoreExtensions { /// <summary> /// Includes the details. @@ -42,58 +44,51 @@ b.ConfigureByConvention(); - //Properties - b.Property(x => x.TaskCode).HasMaxLength(64).IsRequired().HasComment("浠诲姟缂栫爜"); - b.Property(x => x.OrgMaterialCode).HasMaxLength(64).IsRequired().HasComment("鍘熸枡缂栧彿"); - b.Property(x => x.Sort).HasComment("鎺掑簭"); - b.Property(x => x.IsDisabled).IsRequired(false).HasComment("鏄惁绂佺敤"); - b.Property(x => x.Remark).HasMaxLength(256).IsRequired(false).HasComment("澶囨敞"); + // Configure properties + b.Property(x => x.TaskCode).HasMaxLength(256).IsRequired().HasComment("浠诲姟缂栫爜"); + b.Property(x => x.DataIdentifier).HasMaxLength(256).HasComment("鍘熸枡鏍囪瘑"); + b.Property(x => x.MaterialMode).HasMaxLength(256).HasComment("鍘熸枡鍨嬪彿"); + b.Property(x => x.Length).HasColumnType("decimal(18,2)").HasComment("闀垮害(mm)"); + b.Property(x => x.MarkingContent).HasMaxLength(1024).HasComment("鎵撶爜鍐呭"); - b.Property(x => x.OrgMaterialCode).HasMaxLength(64).HasComment("鍘熸枡缂栧彿"); - b.Property(x => x.FactoryCode).HasMaxLength(64).HasComment("宸ュ巶浠g爜"); - b.Property(x => x.ProductCode).HasMaxLength(64).HasComment("浜у搧浠g爜"); - b.Property(x => x.WorkstationCode).HasMaxLength(64).HasComment("宸ヤ綅浠g爜"); - b.Property(x => x.EquipmentCode).HasMaxLength(64).HasComment("璁惧浠g爜"); - b.Property(x => x.WorkpieceName).HasMaxLength(64).HasComment("宸ヤ欢鍚嶇О"); - b.Property(x => x.ProcessName).HasMaxLength(64).HasComment("宸ュ簭鍚嶇О"); - b.Property(x => x.PipeFittingCode).HasMaxLength(64).HasComment("绠′欢缂栫爜"); - b.Property(x => x.PreSerialNumber).HasMaxLength(64).HasComment("椤哄簭鍙�"); - b.Property(x => x.DataIdentifier).HasMaxLength(64).HasComment("鍘熸枡鏍囪瘑"); - b.Property(x => x.PipeSpecCode).HasMaxLength(64).HasComment("绠¤鏍肩爜"); - b.Property(x => x.PipeSectionName).HasMaxLength(64).HasComment("绠℃鍚嶇О"); - b.Property(x => x.OuterDiameter).HasMaxLength(64).HasComment("澶栧緞"); - b.Property(x => x.Bevel).HasMaxLength(64).HasComment("鍧″彛"); - b.Property(x => x.Material).HasMaxLength(64).HasComment("鏉愯川"); - b.Property(x => x.Length).HasMaxLength(64).HasComment("闀垮害"); - b.Property(x => x.DrillingPosition).HasMaxLength(64).HasComment("鎵撳瓟浣�"); - b.Property(x => x.Intersecting).HasMaxLength(64).HasComment("鐩歌疮"); - b.Property(x => x.InterfaceRequirement).HasMaxLength(64).HasComment("鎺ュ彛瑕佹眰"); - b.Property(x => x.HasMainSignature).HasComment("鏄惁鏈変富绛�"); - b.Property(x => x.Quantity).HasComment("鍖呮嫭鏁伴噺"); - b.Property(x => x.MarkingContent).HasMaxLength(64).HasComment("鎵撶爜鍐呭"); - b.Property(x => x.CuttingFile).HasMaxLength(64).HasComment("鍒囧壊鏂囦欢"); - b.Property(x => x.BranchOuterDiameter).HasMaxLength(64).HasComment("鏀寰�"); - b.Property(x => x.BranchWallThickness).HasMaxLength(64).HasComment("鏀澹佸帤"); - b.Property(x => x.BranchMaterial).HasMaxLength(64).HasComment("鏀鏉愯川"); - b.Property(x => x.BranchPortRadius).HasMaxLength(64).HasComment("鏀绔彛鏇茬巼鍗婂緞"); - b.Property(x => x.BranchPortAngle).HasMaxLength(64).HasComment("鏀绔彛瑙掑害"); - b.Property(x => x.BranchPortRequirement).HasMaxLength(64).HasComment("鏀绔彛瑕佹眰"); - b.Property(x => x.IntersectingLineType).HasMaxLength(64).HasComment("鐩歌疮绾跨被鍨�"); - b.Property(x => x.IntersectingLineCategory).HasMaxLength(64).HasComment("鐩歌疮绾跨被鍒�"); - b.Property(x => x.FinishedProductScale).HasMaxLength(64).HasComment("鎴愬搧鍥惧箙"); - b.Property(x => x.FlangeThickness).HasMaxLength(64).HasComment("娉曞叞鍘氬害"); - b.Property(x => x.FlangeInnerDiameter).HasMaxLength(64).HasComment("娉曞叞鍐呭緞"); - b.Property(x => x.WeldingHeatInput).HasMaxLength(64).HasComment("鐒婃帴鐑緭鍏�"); - b.Property(x => x.PipeAllowableStress).HasMaxLength(64).HasComment("绠¢亾鍏佽搴斿姏"); - b.Property(x => x.PipeDiameter).HasMaxLength(64).HasComment("绠″緞"); - b.Property(x => x.PipeWallThickness).HasMaxLength(64).HasComment("绠¢亾澹佸帤"); - b.Property(x => x.VRData).HasMaxLength(64).HasComment("VR鏁版嵁"); - b.Property(x => x.ProcessRouteNumber).HasMaxLength(64).HasComment("宸ヨ壓璺嚎缂栧彿"); + b.Property(x => x.Quantity).HasComment("绠℃鏁伴噺"); + b.Property(x => x.FlangeThickness).HasColumnType("decimal(18,2)").HasComment("娉曞叞鍘氬害(mm)"); + b.Property(x => x.FlangeInnerDiameter).HasColumnType("decimal(18,2)").HasComment("娉曞叞鐩村緞(mm)"); + b.Property(x => x.WeldingHeatInput).HasMaxLength(256).HasComment("娉曞叞鍏О鍘嬪姏"); + b.Property(x => x.PipeAllowableStress).HasMaxLength(256).HasComment("娉曞叞鍐茬爜鍐呭"); + b.Property(x => x.PipeDiameter).HasColumnType("decimal(18,2)").HasComment("濂楃闀垮害(mm)"); + b.Property(x => x.PipeWallThickness).HasColumnType("decimal(18,2)").HasComment("濂楃鐩村緞(mm)"); + b.Property(x => x.FactoryCode).HasMaxLength(256).HasComment("宸ュ巶浠g爜"); + b.Property(x => x.ProductCode).HasMaxLength(256).HasComment("浜у搧浠g爜"); + b.Property(x => x.WorkstationCode).HasMaxLength(256).HasComment("宸ヤ綅浠g爜"); + b.Property(x => x.EquipmentCode).HasMaxLength(256).HasComment("璁惧浠g爜"); + b.Property(x => x.WorkpieceName).HasMaxLength(256).HasComment("宸ヤ欢鍚嶇О"); + b.Property(x => x.ProcessName).HasMaxLength(256).HasComment("宸ュ簭鍚嶇О"); + b.Property(x => x.PipeFittingCode).HasMaxLength(256).HasComment("绠′欢缂栫爜"); + b.Property(x => x.PreSerialNumber).HasMaxLength(256).HasComment("椤哄簭鍙�"); + b.Property(x => x.PipeSpecCode).HasMaxLength(256).HasComment("绠℃缂栫爜"); + b.Property(x => x.PipeSectionName).HasMaxLength(256).HasComment("绠℃鍚嶇О"); + b.Property(x => x.OuterDiameter).HasColumnType("decimal(18,2)").HasComment("澶栧緞(mm)"); + b.Property(x => x.Thickness).HasColumnType("decimal(18,2)").HasComment("澹佸帤(mm)"); + b.Property(x => x.Material).HasMaxLength(256).HasComment("鏉愯川"); + b.Property(x => x.HasMainSignature).HasComment("鏄惁涓绘敮绠�"); + + b.Property(x => x.MarkingPosition).HasColumnType("decimal(18,2)").HasComment("鎵撶爜浣嶇疆"); + b.Property(x => x.CuttingPosition).HasColumnType("decimal(18,2)").HasComment("鍒囧壊浣嶇疆"); + + b.Property(x => x.ProcessRouteNumber).HasMaxLength(256).HasComment("宸ヨ壓娴佸悜缂栧彿"); b.Property(x => x.PlannedStartTime).HasComment("璁″垝寮�濮嬫椂闂�"); b.Property(x => x.PlannedEndTime).HasComment("璁″垝瀹屾垚鏃堕棿"); - b.Property(x => x.TimeInfo).HasMaxLength(64).HasComment("鏃堕棿淇℃伅"); + b.Property(x => x.TeamInfo).HasMaxLength(256).HasComment("鐝粍淇℃伅"); + b.Property(x => x.Timestamp).HasMaxLength(256).HasComment("鏃堕棿鎴�"); - b.HasIndex(u => u.TaskCode); + b.ConfigureMyCmsEntity(); + + // Configure indexes + b.HasIndex(u => u.TaskCode).IsUnique(); + b.HasIndex(u => u.DataIdentifier); + b.HasIndex(u => u.PlannedStartTime); + b.HasIndex(u => u.PlannedEndTime); b.ApplyObjectExtensionMappings(); }); diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Repositories/EfCoreWorkPlanRepository.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Repositories/EfCoreWorkPlanRepository.cs index a87d305..cf8294f 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Repositories/EfCoreWorkPlanRepository.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.EntityFrameworkCore/Repositories/EfCoreWorkPlanRepository.cs @@ -35,7 +35,7 @@ return await (await GetDbSetAsync()) .IncludeDetails() .Where(x => !x.IsDeleted) - .OrderBy(t => t.Sort) + .OrderByDescending(x=>x.CreationTime) .FirstOrDefaultAsync(t => t.TaskCode == name, GetCancellationToken(cancellationToken)); } diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250427055701_InitialCreate.Designer.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250427055701_InitialCreate.Designer.cs deleted file mode 100644 index e48ca2d..0000000 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250427055701_InitialCreate.Designer.cs +++ /dev/null @@ -1,108 +0,0 @@ -锘�// <auto-generated /> -using System; -using CMS.Plugin.PipeLineLems.MySQL; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using Volo.Abp.EntityFrameworkCore; - -#nullable disable - -namespace CMS.Plugin.PipeLineLems.MySQL.Migrations -{ - [DbContext(typeof(CMSPluginDbContext))] - [Migration("20250427055701_InitialCreate")] - partial class InitialCreate - { - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) - .HasAnnotation("ProductVersion", "6.0.16") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.MyTestEntityNames.MyTestEntityName", b => - { - b.Property<Guid>("Id") - .ValueGeneratedOnAdd() - .HasColumnType("char(36)"); - - b.Property<string>("Code") - .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("缂栫爜"); - - b.Property<string>("ConcurrencyStamp") - .IsConcurrencyToken() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasColumnName("ConcurrencyStamp"); - - b.Property<DateTime>("CreationTime") - .HasColumnType("datetime(6)") - .HasColumnName("CreationTime"); - - b.Property<Guid?>("CreatorId") - .HasColumnType("char(36)") - .HasColumnName("CreatorId"); - - b.Property<Guid?>("DeleterId") - .HasColumnType("char(36)") - .HasColumnName("DeleterId"); - - b.Property<DateTime?>("DeletionTime") - .HasColumnType("datetime(6)") - .HasColumnName("DeletionTime"); - - b.Property<string>("ExtraProperties") - .HasColumnType("longtext") - .HasColumnName("ExtraProperties"); - - b.Property<bool>("IsDeleted") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(1)") - .HasDefaultValue(false) - .HasColumnName("IsDeleted"); - - b.Property<bool?>("IsDisabled") - .HasColumnType("tinyint(1)") - .HasComment("鏄惁绂佺敤"); - - b.Property<DateTime?>("LastModificationTime") - .HasColumnType("datetime(6)") - .HasColumnName("LastModificationTime"); - - b.Property<Guid?>("LastModifierId") - .HasColumnType("char(36)") - .HasColumnName("LastModifierId"); - - b.Property<string>("Name") - .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍚嶇О"); - - b.Property<string>("Remark") - .HasMaxLength(256) - .HasColumnType("varchar(256)") - .HasComment("澶囨敞"); - - b.Property<int>("Sort") - .HasColumnType("int") - .HasComment("鎺掑簭"); - - b.HasKey("Id"); - - b.HasIndex("Name"); - - b.ToTable("scms_mytestentitynames", (string)null); - - b.HasComment("MyTestEntityName"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250427055701_InitialCreate.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250427055701_InitialCreate.cs deleted file mode 100644 index 5778e99..0000000 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250427055701_InitialCreate.cs +++ /dev/null @@ -1,59 +0,0 @@ -锘縰sing System; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace CMS.Plugin.PipeLineLems.MySQL.Migrations -{ - public partial class InitialCreate : Migration - { - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.AlterDatabase() - .Annotation("MySql:CharSet", "utf8mb4"); - - migrationBuilder.CreateTable( - name: "scms_mytestentitynames", - columns: table => new - { - Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), - Code = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "缂栫爜") - .Annotation("MySql:CharSet", "utf8mb4"), - Name = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "鍚嶇О") - .Annotation("MySql:CharSet", "utf8mb4"), - Sort = table.Column<int>(type: "int", nullable: false, comment: "鎺掑簭"), - Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "澶囨敞") - .Annotation("MySql:CharSet", "utf8mb4"), - IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "鏄惁绂佺敤"), - ExtraProperties = table.Column<string>(type: "longtext", nullable: true) - .Annotation("MySql:CharSet", "utf8mb4"), - ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true) - .Annotation("MySql:CharSet", "utf8mb4"), - CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false), - CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), - LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true), - LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), - IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), - DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), - DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("PK_scms_mytestentitynames", x => x.Id); - }, - comment: "MyTestEntityName") - .Annotation("MySql:CharSet", "utf8mb4"); - - migrationBuilder.CreateIndex( - name: "IX_scms_mytestentitynames_Name", - table: "scms_mytestentitynames", - column: "Name"); - } - - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "scms_mytestentitynames"); - } - } -} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250507025649_Update1.Designer.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250507025649_Update1.Designer.cs deleted file mode 100644 index dccb74c..0000000 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250507025649_Update1.Designer.cs +++ /dev/null @@ -1,403 +0,0 @@ -锘�// <auto-generated /> -using System; -using CMS.Plugin.PipeLineLems.MySQL; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using Volo.Abp.EntityFrameworkCore; - -#nullable disable - -namespace CMS.Plugin.PipeLineLems.MySQL.Migrations -{ - [DbContext(typeof(CMSPluginDbContext))] - [Migration("20250507025649_Update1")] - partial class Update1 - { - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) - .HasAnnotation("ProductVersion", "6.0.16") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.MyTestEntityNames.MyTestEntityName", b => - { - b.Property<Guid>("Id") - .ValueGeneratedOnAdd() - .HasColumnType("char(36)"); - - b.Property<string>("Code") - .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("缂栫爜"); - - b.Property<string>("ConcurrencyStamp") - .IsConcurrencyToken() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasColumnName("ConcurrencyStamp"); - - b.Property<DateTime>("CreationTime") - .HasColumnType("datetime(6)") - .HasColumnName("CreationTime"); - - b.Property<Guid?>("CreatorId") - .HasColumnType("char(36)") - .HasColumnName("CreatorId"); - - b.Property<Guid?>("DeleterId") - .HasColumnType("char(36)") - .HasColumnName("DeleterId"); - - b.Property<DateTime?>("DeletionTime") - .HasColumnType("datetime(6)") - .HasColumnName("DeletionTime"); - - b.Property<string>("ExtraProperties") - .HasColumnType("longtext") - .HasColumnName("ExtraProperties"); - - b.Property<bool>("IsDeleted") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(1)") - .HasDefaultValue(false) - .HasColumnName("IsDeleted"); - - b.Property<bool?>("IsDisabled") - .HasColumnType("tinyint(1)") - .HasComment("鏄惁绂佺敤"); - - b.Property<DateTime?>("LastModificationTime") - .HasColumnType("datetime(6)") - .HasColumnName("LastModificationTime"); - - b.Property<Guid?>("LastModifierId") - .HasColumnType("char(36)") - .HasColumnName("LastModifierId"); - - b.Property<string>("Name") - .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍚嶇О"); - - b.Property<string>("Remark") - .HasMaxLength(256) - .HasColumnType("varchar(256)") - .HasComment("澶囨敞"); - - b.Property<int>("Sort") - .HasColumnType("int") - .HasComment("鎺掑簭"); - - b.HasKey("Id"); - - b.HasIndex("Name"); - - b.ToTable("scms_mytestentitynames", (string)null); - - b.HasComment("MyTestEntityName"); - }); - - modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.WmsAreas.WorkPlan", b => - { - b.Property<Guid>("Id") - .ValueGeneratedOnAdd() - .HasColumnType("char(36)"); - - b.Property<string>("Bevel") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍧″彛"); - - b.Property<string>("BranchMaterial") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀鏉愯川"); - - b.Property<string>("BranchOuterDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀寰�"); - - b.Property<string>("BranchPortAngle") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀绔彛瑙掑害"); - - b.Property<string>("BranchPortRadius") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀绔彛鏇茬巼鍗婂緞"); - - b.Property<string>("BranchPortRequirement") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀绔彛瑕佹眰"); - - b.Property<string>("BranchWallThickness") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀澹佸帤"); - - b.Property<string>("ConcurrencyStamp") - .IsConcurrencyToken() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasColumnName("ConcurrencyStamp"); - - b.Property<DateTime>("CreationTime") - .HasColumnType("datetime(6)") - .HasColumnName("CreationTime"); - - b.Property<Guid?>("CreatorId") - .HasColumnType("char(36)") - .HasColumnName("CreatorId"); - - b.Property<string>("CuttingFile") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍒囧壊鏂囦欢"); - - b.Property<string>("DataIdentifier") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍘熸枡鏍囪瘑"); - - b.Property<Guid?>("DeleterId") - .HasColumnType("char(36)") - .HasColumnName("DeleterId"); - - b.Property<DateTime?>("DeletionTime") - .HasColumnType("datetime(6)") - .HasColumnName("DeletionTime"); - - b.Property<string>("DrillingPosition") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鎵撳瓟浣�"); - - b.Property<string>("EquipmentCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("璁惧浠g爜"); - - b.Property<string>("ExtraProperties") - .HasColumnType("longtext") - .HasColumnName("ExtraProperties"); - - b.Property<string>("FactoryCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("宸ュ巶浠g爜"); - - b.Property<string>("FinishedProductScale") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鎴愬搧鍥惧箙"); - - b.Property<string>("FlangeInnerDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("娉曞叞鍐呭緞"); - - b.Property<string>("FlangeThickness") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("娉曞叞鍘氬害"); - - b.Property<bool>("HasMainSignature") - .HasColumnType("tinyint(1)") - .HasComment("鏄惁鏈変富绛�"); - - b.Property<string>("InterfaceRequirement") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鎺ュ彛瑕佹眰"); - - b.Property<string>("Intersecting") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐩歌疮"); - - b.Property<string>("IntersectingLineCategory") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐩歌疮绾跨被鍒�"); - - b.Property<string>("IntersectingLineType") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐩歌疮绾跨被鍨�"); - - b.Property<bool>("IsDeleted") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(1)") - .HasDefaultValue(false) - .HasColumnName("IsDeleted"); - - b.Property<bool?>("IsDisabled") - .HasColumnType("tinyint(1)") - .HasComment("鏄惁绂佺敤"); - - b.Property<DateTime?>("LastModificationTime") - .HasColumnType("datetime(6)") - .HasColumnName("LastModificationTime"); - - b.Property<Guid?>("LastModifierId") - .HasColumnType("char(36)") - .HasColumnName("LastModifierId"); - - b.Property<string>("Length") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("闀垮害"); - - b.Property<string>("MarkingContent") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鎵撶爜鍐呭"); - - b.Property<string>("Material") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏉愯川"); - - b.Property<string>("OrgMaterialCode") - .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍘熸枡缂栧彿"); - - b.Property<string>("OuterDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("澶栧緞"); - - b.Property<string>("PipeAllowableStress") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠¢亾鍏佽搴斿姏"); - - b.Property<string>("PipeDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠″緞"); - - b.Property<string>("PipeFittingCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠′欢缂栫爜"); - - b.Property<string>("PipeSectionName") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠℃鍚嶇О"); - - b.Property<string>("PipeSpecCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠¤鏍肩爜"); - - b.Property<string>("PipeWallThickness") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠¢亾澹佸帤"); - - b.Property<DateTime?>("PlannedEndTime") - .HasColumnType("datetime(6)") - .HasComment("璁″垝瀹屾垚鏃堕棿"); - - b.Property<DateTime?>("PlannedStartTime") - .HasColumnType("datetime(6)") - .HasComment("璁″垝寮�濮嬫椂闂�"); - - b.Property<string>("PreSerialNumber") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("椤哄簭鍙�"); - - b.Property<string>("ProcessName") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("宸ュ簭鍚嶇О"); - - b.Property<string>("ProcessRouteNumber") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("宸ヨ壓璺嚎缂栧彿"); - - b.Property<string>("ProductCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("浜у搧浠g爜"); - - b.Property<int>("Quantity") - .HasColumnType("int") - .HasComment("鍖呮嫭鏁伴噺"); - - b.Property<string>("RedundantField1") - .HasColumnType("longtext"); - - b.Property<string>("RedundantField2") - .HasColumnType("longtext"); - - b.Property<string>("RedundantField3") - .HasColumnType("longtext"); - - b.Property<string>("Remark") - .HasMaxLength(256) - .HasColumnType("varchar(256)") - .HasComment("澶囨敞"); - - b.Property<int>("Sort") - .HasColumnType("int") - .HasComment("鎺掑簭"); - - b.Property<string>("TaskCode") - .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("浠诲姟缂栫爜"); - - b.Property<string>("TimeInfo") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏃堕棿淇℃伅"); - - b.Property<string>("VRData") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("VR鏁版嵁"); - - b.Property<string>("WeldingHeatInput") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐒婃帴鐑緭鍏�"); - - b.Property<string>("WorkpieceName") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("宸ヤ欢鍚嶇О"); - - b.Property<string>("WorkstationCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("宸ヤ綅浠g爜"); - - b.HasKey("Id"); - - b.HasIndex("TaskCode"); - - b.ToTable("scms_workplans", (string)null); - - b.HasComment("WorkPlan"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250507025649_Update1.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250507025649_Update1.cs deleted file mode 100644 index 0dad499..0000000 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250507025649_Update1.cs +++ /dev/null @@ -1,142 +0,0 @@ -锘縰sing System; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace CMS.Plugin.PipeLineLems.MySQL.Migrations -{ - public partial class Update1 : Migration - { - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.CreateTable( - name: "scms_workplans", - columns: table => new - { - Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), - TaskCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "浠诲姟缂栫爜") - .Annotation("MySql:CharSet", "utf8mb4"), - OrgMaterialCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "鍘熸枡缂栧彿") - .Annotation("MySql:CharSet", "utf8mb4"), - FactoryCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "宸ュ巶浠g爜") - .Annotation("MySql:CharSet", "utf8mb4"), - ProductCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "浜у搧浠g爜") - .Annotation("MySql:CharSet", "utf8mb4"), - WorkstationCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "宸ヤ綅浠g爜") - .Annotation("MySql:CharSet", "utf8mb4"), - EquipmentCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "璁惧浠g爜") - .Annotation("MySql:CharSet", "utf8mb4"), - WorkpieceName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "宸ヤ欢鍚嶇О") - .Annotation("MySql:CharSet", "utf8mb4"), - ProcessName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "宸ュ簭鍚嶇О") - .Annotation("MySql:CharSet", "utf8mb4"), - PipeFittingCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "绠′欢缂栫爜") - .Annotation("MySql:CharSet", "utf8mb4"), - PreSerialNumber = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "椤哄簭鍙�") - .Annotation("MySql:CharSet", "utf8mb4"), - DataIdentifier = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鍘熸枡鏍囪瘑") - .Annotation("MySql:CharSet", "utf8mb4"), - PipeSpecCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "绠¤鏍肩爜") - .Annotation("MySql:CharSet", "utf8mb4"), - PipeSectionName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "绠℃鍚嶇О") - .Annotation("MySql:CharSet", "utf8mb4"), - OuterDiameter = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "澶栧緞") - .Annotation("MySql:CharSet", "utf8mb4"), - Bevel = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鍧″彛") - .Annotation("MySql:CharSet", "utf8mb4"), - Material = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏉愯川") - .Annotation("MySql:CharSet", "utf8mb4"), - Length = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "闀垮害") - .Annotation("MySql:CharSet", "utf8mb4"), - DrillingPosition = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鎵撳瓟浣�") - .Annotation("MySql:CharSet", "utf8mb4"), - Intersecting = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鐩歌疮") - .Annotation("MySql:CharSet", "utf8mb4"), - InterfaceRequirement = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鎺ュ彛瑕佹眰") - .Annotation("MySql:CharSet", "utf8mb4"), - HasMainSignature = table.Column<bool>(type: "tinyint(1)", nullable: false, comment: "鏄惁鏈変富绛�"), - Quantity = table.Column<int>(type: "int", nullable: false, comment: "鍖呮嫭鏁伴噺"), - MarkingContent = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鎵撶爜鍐呭") - .Annotation("MySql:CharSet", "utf8mb4"), - CuttingFile = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鍒囧壊鏂囦欢") - .Annotation("MySql:CharSet", "utf8mb4"), - BranchOuterDiameter = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏀寰�") - .Annotation("MySql:CharSet", "utf8mb4"), - BranchWallThickness = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏀澹佸帤") - .Annotation("MySql:CharSet", "utf8mb4"), - BranchMaterial = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏀鏉愯川") - .Annotation("MySql:CharSet", "utf8mb4"), - BranchPortRadius = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏀绔彛鏇茬巼鍗婂緞") - .Annotation("MySql:CharSet", "utf8mb4"), - BranchPortAngle = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏀绔彛瑙掑害") - .Annotation("MySql:CharSet", "utf8mb4"), - BranchPortRequirement = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏀绔彛瑕佹眰") - .Annotation("MySql:CharSet", "utf8mb4"), - IntersectingLineType = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鐩歌疮绾跨被鍨�") - .Annotation("MySql:CharSet", "utf8mb4"), - IntersectingLineCategory = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鐩歌疮绾跨被鍒�") - .Annotation("MySql:CharSet", "utf8mb4"), - FinishedProductScale = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鎴愬搧鍥惧箙") - .Annotation("MySql:CharSet", "utf8mb4"), - FlangeThickness = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "娉曞叞鍘氬害") - .Annotation("MySql:CharSet", "utf8mb4"), - FlangeInnerDiameter = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "娉曞叞鍐呭緞") - .Annotation("MySql:CharSet", "utf8mb4"), - WeldingHeatInput = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鐒婃帴鐑緭鍏�") - .Annotation("MySql:CharSet", "utf8mb4"), - PipeAllowableStress = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "绠¢亾鍏佽搴斿姏") - .Annotation("MySql:CharSet", "utf8mb4"), - PipeDiameter = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "绠″緞") - .Annotation("MySql:CharSet", "utf8mb4"), - PipeWallThickness = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "绠¢亾澹佸帤") - .Annotation("MySql:CharSet", "utf8mb4"), - VRData = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "VR鏁版嵁") - .Annotation("MySql:CharSet", "utf8mb4"), - ProcessRouteNumber = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "宸ヨ壓璺嚎缂栧彿") - .Annotation("MySql:CharSet", "utf8mb4"), - PlannedStartTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "璁″垝寮�濮嬫椂闂�"), - PlannedEndTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "璁″垝瀹屾垚鏃堕棿"), - TimeInfo = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鏃堕棿淇℃伅") - .Annotation("MySql:CharSet", "utf8mb4"), - RedundantField1 = table.Column<string>(type: "longtext", nullable: true) - .Annotation("MySql:CharSet", "utf8mb4"), - RedundantField2 = table.Column<string>(type: "longtext", nullable: true) - .Annotation("MySql:CharSet", "utf8mb4"), - RedundantField3 = table.Column<string>(type: "longtext", nullable: true) - .Annotation("MySql:CharSet", "utf8mb4"), - Sort = table.Column<int>(type: "int", nullable: false, comment: "鎺掑簭"), - Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "澶囨敞") - .Annotation("MySql:CharSet", "utf8mb4"), - IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "鏄惁绂佺敤"), - ExtraProperties = table.Column<string>(type: "longtext", nullable: true) - .Annotation("MySql:CharSet", "utf8mb4"), - ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true) - .Annotation("MySql:CharSet", "utf8mb4"), - CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false), - CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), - LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true), - LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), - IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), - DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), - DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("PK_scms_workplans", x => x.Id); - }, - comment: "WorkPlan") - .Annotation("MySql:CharSet", "utf8mb4"); - - migrationBuilder.CreateIndex( - name: "IX_scms_workplans_TaskCode", - table: "scms_workplans", - column: "TaskCode"); - } - - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "scms_workplans"); - } - } -} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.Designer.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.Designer.cs new file mode 100644 index 0000000..9b7b62a --- /dev/null +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.Designer.cs @@ -0,0 +1,385 @@ +锘�// <auto-generated /> +using System; +using CMS.Plugin.PipeLineLems.MySQL; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Volo.Abp.EntityFrameworkCore; + +#nullable disable + +namespace CMS.Plugin.PipeLineLems.MySQL.Migrations +{ + [DbContext(typeof(CMSPluginDbContext))] + [Migration("20250510023811_Update1")] + partial class Update1 + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) + .HasAnnotation("ProductVersion", "6.0.16") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.MyTestEntityNames.MyTestEntityName", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("Code") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("缂栫爜"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("Name") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鍚嶇О"); + + b.Property<string>("Remark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .HasColumnType("int") + .HasComment("鎺掑簭"); + + b.HasKey("Id"); + + b.HasIndex("Name"); + + b.ToTable("scms_mytestentitynames", (string)null); + + b.HasComment("MyTestEntityName"); + }); + + modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.WorkPlan.WorkPlan", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp") + .HasComment("骞跺彂鎴�"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime") + .HasComment("鍒涘缓鏃堕棿"); + + b.Property<Guid?>("CreatorId") + .HasMaxLength(36) + .HasColumnType("char(36)") + .HasColumnName("CreatorId") + .HasComment("鍒涘缓浜篒D"); + + b.Property<string>("CreatorName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鍒涘缓浜�"); + + b.Property<decimal>("CuttingPosition") + .HasColumnType("decimal(65,30)"); + + b.Property<string>("DataIdentifier") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍘熸枡鏍囪瘑"); + + b.Property<string>("DeleteRemark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍒犻櫎澶囨敞"); + + b.Property<Guid?>("DeleterId") + .HasMaxLength(36) + .HasColumnType("char(36)") + .HasColumnName("DeleterId") + .HasComment("鍒犻櫎浜篒D"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime") + .HasComment("鍒犻櫎鏃堕棿"); + + b.Property<string>("EquipmentCode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("璁惧浠g爜"); + + b.Property<string>("ExtraField1") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁1"); + + b.Property<string>("ExtraField2") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁2"); + + b.Property<string>("ExtraField3") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁3"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties") + .HasComment("鎵╁睍灞炴��"); + + b.Property<string>("FactoryCode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("宸ュ巶浠g爜"); + + b.Property<decimal>("FlangeInnerDiameter") + .HasColumnType("decimal(18,2)") + .HasComment("娉曞叞鐩村緞(mm)"); + + b.Property<decimal>("FlangeThickness") + .HasColumnType("decimal(18,2)") + .HasComment("娉曞叞鍘氬害(mm)"); + + b.Property<bool>("HasMainSignature") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁涓绘敮绠�"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted") + .HasComment("鏄惁鍒犻櫎"); + + b.Property<bool?>("IsDisabled") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime") + .HasComment("淇敼鏃堕棿"); + + b.Property<Guid?>("LastModifierId") + .HasMaxLength(36) + .HasColumnType("char(36)") + .HasColumnName("LastModifierId") + .HasComment("淇敼浜篒D"); + + b.Property<string>("LastModifierName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("淇敼浜�"); + + b.Property<decimal>("Length") + .HasColumnType("decimal(18,2)") + .HasComment("闀垮害(mm)"); + + b.Property<string>("MarkingContent") + .HasMaxLength(1024) + .HasColumnType("varchar(1024)") + .HasComment("鎵撶爜鍐呭"); + + b.Property<decimal>("MarkingPosition") + .HasColumnType("decimal(65,30)"); + + b.Property<string>("Material") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鏉愯川"); + + b.Property<string>("MaterialMode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍘熸枡鍨嬪彿"); + + b.Property<string>("OperationRemark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎿嶄綔澶囨敞"); + + b.Property<decimal>("OuterDiameter") + .HasColumnType("decimal(18,2)") + .HasComment("澶栧緞(mm)"); + + b.Property<string>("PipeAllowableStress") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("娉曞叞鍐茬爜鍐呭"); + + b.Property<decimal>("PipeDiameter") + .HasColumnType("decimal(18,2)") + .HasComment("濂楃闀垮害(mm)"); + + b.Property<string>("PipeFittingCode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("绠′欢缂栫爜"); + + b.Property<string>("PipeSectionName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("绠℃鍚嶇О"); + + b.Property<string>("PipeSpecCode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("绠℃缂栫爜"); + + b.Property<decimal>("PipeWallThickness") + .HasColumnType("decimal(18,2)") + .HasComment("濂楃鐩村緞(mm)"); + + b.Property<DateTime?>("PlannedEndTime") + .HasColumnType("datetime(6)") + .HasComment("璁″垝瀹屾垚鏃堕棿"); + + b.Property<DateTime?>("PlannedStartTime") + .HasColumnType("datetime(6)") + .HasComment("璁″垝寮�濮嬫椂闂�"); + + b.Property<string>("PreSerialNumber") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("椤哄簭鍙�"); + + b.Property<string>("ProcessName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("宸ュ簭鍚嶇О"); + + b.Property<string>("ProcessRouteNumber") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("宸ヨ壓娴佸悜缂栧彿"); + + b.Property<string>("ProductCode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("浜у搧浠g爜"); + + b.Property<int>("Quantity") + .HasColumnType("int") + .HasComment("绠℃鏁伴噺"); + + b.Property<string>("Remark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.Property<string>("TaskCode") + .IsRequired() + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("浠诲姟缂栫爜"); + + b.Property<string>("TeamInfo") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鐝粍淇℃伅"); + + b.Property<decimal>("Thickness") + .HasColumnType("decimal(18,2)") + .HasComment("澹佸帤(mm)"); + + b.Property<string>("Timestamp") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鏃堕棿鎴�"); + + b.Property<string>("WeldingHeatInput") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("娉曞叞鍏О鍘嬪姏"); + + b.Property<string>("WorkpieceName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("宸ヤ欢鍚嶇О"); + + b.Property<string>("WorkstationCode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("宸ヤ綅浠g爜"); + + b.HasKey("Id"); + + b.HasIndex("DataIdentifier"); + + b.HasIndex("PlannedEndTime"); + + b.HasIndex("PlannedStartTime"); + + b.HasIndex("TaskCode") + .IsUnique(); + + b.ToTable("scms_workplans", (string)null); + + b.HasComment("WorkPlan"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.cs new file mode 100644 index 0000000..ccff912 --- /dev/null +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/20250510023811_Update1.cs @@ -0,0 +1,178 @@ +锘縰sing System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace CMS.Plugin.PipeLineLems.MySQL.Migrations +{ + public partial class Update1 : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AlterDatabase() + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateTable( + name: "scms_mytestentitynames", + columns: table => new + { + Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + Code = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "缂栫爜") + .Annotation("MySql:CharSet", "utf8mb4"), + Name = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "鍚嶇О") + .Annotation("MySql:CharSet", "utf8mb4"), + Sort = table.Column<int>(type: "int", nullable: false, comment: "鎺掑簭"), + Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "澶囨敞") + .Annotation("MySql:CharSet", "utf8mb4"), + IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "鏄惁绂佺敤"), + ExtraProperties = table.Column<string>(type: "longtext", nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false), + CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true), + LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), + DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true) + }, + constraints: table => + { + table.PrimaryKey("PK_scms_mytestentitynames", x => x.Id); + }, + comment: "MyTestEntityName") + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateTable( + name: "scms_workplans", + columns: table => new + { + Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + TaskCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false, comment: "浠诲姟缂栫爜") + .Annotation("MySql:CharSet", "utf8mb4"), + DataIdentifier = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鍘熸枡鏍囪瘑") + .Annotation("MySql:CharSet", "utf8mb4"), + MaterialMode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鍘熸枡鍨嬪彿") + .Annotation("MySql:CharSet", "utf8mb4"), + Length = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "闀垮害(mm)"), + MarkingContent = table.Column<string>(type: "varchar(1024)", maxLength: 1024, nullable: true, comment: "鎵撶爜鍐呭") + .Annotation("MySql:CharSet", "utf8mb4"), + MarkingPosition = table.Column<decimal>(type: "decimal(65,30)", nullable: false), + CuttingPosition = table.Column<decimal>(type: "decimal(65,30)", nullable: false), + Quantity = table.Column<int>(type: "int", nullable: false, comment: "绠℃鏁伴噺"), + FlangeThickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "娉曞叞鍘氬害(mm)"), + FlangeInnerDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "娉曞叞鐩村緞(mm)"), + WeldingHeatInput = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "娉曞叞鍏О鍘嬪姏") + .Annotation("MySql:CharSet", "utf8mb4"), + PipeAllowableStress = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "娉曞叞鍐茬爜鍐呭") + .Annotation("MySql:CharSet", "utf8mb4"), + PipeDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "濂楃闀垮害(mm)"), + PipeWallThickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "濂楃鐩村緞(mm)"), + FactoryCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "宸ュ巶浠g爜") + .Annotation("MySql:CharSet", "utf8mb4"), + ProductCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "浜у搧浠g爜") + .Annotation("MySql:CharSet", "utf8mb4"), + WorkstationCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "宸ヤ綅浠g爜") + .Annotation("MySql:CharSet", "utf8mb4"), + EquipmentCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "璁惧浠g爜") + .Annotation("MySql:CharSet", "utf8mb4"), + WorkpieceName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "宸ヤ欢鍚嶇О") + .Annotation("MySql:CharSet", "utf8mb4"), + ProcessName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "宸ュ簭鍚嶇О") + .Annotation("MySql:CharSet", "utf8mb4"), + PipeFittingCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "绠′欢缂栫爜") + .Annotation("MySql:CharSet", "utf8mb4"), + PreSerialNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "椤哄簭鍙�") + .Annotation("MySql:CharSet", "utf8mb4"), + PipeSpecCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "绠℃缂栫爜") + .Annotation("MySql:CharSet", "utf8mb4"), + PipeSectionName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "绠℃鍚嶇О") + .Annotation("MySql:CharSet", "utf8mb4"), + OuterDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "澶栧緞(mm)"), + Thickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "澹佸帤(mm)"), + Material = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鏉愯川") + .Annotation("MySql:CharSet", "utf8mb4"), + HasMainSignature = table.Column<bool>(type: "tinyint(1)", nullable: false, comment: "鏄惁涓绘敮绠�"), + ProcessRouteNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "宸ヨ壓娴佸悜缂栧彿") + .Annotation("MySql:CharSet", "utf8mb4"), + PlannedStartTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "璁″垝寮�濮嬫椂闂�"), + PlannedEndTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "璁″垝瀹屾垚鏃堕棿"), + TeamInfo = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鐝粍淇℃伅") + .Annotation("MySql:CharSet", "utf8mb4"), + Timestamp = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鏃堕棿鎴�") + .Annotation("MySql:CharSet", "utf8mb4"), + ExtraProperties = table.Column<string>(type: "longtext", nullable: true, comment: "鎵╁睍灞炴��") + .Annotation("MySql:CharSet", "utf8mb4"), + ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true, comment: "骞跺彂鎴�") + .Annotation("MySql:CharSet", "utf8mb4"), + CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "鍒涘缓鏃堕棿"), + CreatorId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "鍒涘缓浜篒D", collation: "ascii_general_ci"), + LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "淇敼鏃堕棿"), + LastModifierId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "淇敼浜篒D", collation: "ascii_general_ci"), + IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false, comment: "鏄惁鍒犻櫎"), + DeleterId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "鍒犻櫎浜篒D", collation: "ascii_general_ci"), + DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "鍒犻櫎鏃堕棿"), + CreatorName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "鍒涘缓浜�") + .Annotation("MySql:CharSet", "utf8mb4"), + LastModifierName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "淇敼浜�") + .Annotation("MySql:CharSet", "utf8mb4"), + OperationRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鎿嶄綔澶囨敞") + .Annotation("MySql:CharSet", "utf8mb4"), + DeleteRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鍒犻櫎澶囨敞") + .Annotation("MySql:CharSet", "utf8mb4"), + Sort = table.Column<int>(type: "int", nullable: false, defaultValue: 0, comment: "鎺掑簭"), + Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "澶囨敞") + .Annotation("MySql:CharSet", "utf8mb4"), + IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, defaultValue: false, comment: "鏄惁绂佺敤"), + ExtraField1 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鎵╁睍瀛楁1") + .Annotation("MySql:CharSet", "utf8mb4"), + ExtraField2 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鎵╁睍瀛楁2") + .Annotation("MySql:CharSet", "utf8mb4"), + ExtraField3 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "鎵╁睍瀛楁3") + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_scms_workplans", x => x.Id); + }, + comment: "WorkPlan") + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateIndex( + name: "IX_scms_mytestentitynames_Name", + table: "scms_mytestentitynames", + column: "Name"); + + migrationBuilder.CreateIndex( + name: "IX_scms_workplans_DataIdentifier", + table: "scms_workplans", + column: "DataIdentifier"); + + migrationBuilder.CreateIndex( + name: "IX_scms_workplans_PlannedEndTime", + table: "scms_workplans", + column: "PlannedEndTime"); + + migrationBuilder.CreateIndex( + name: "IX_scms_workplans_PlannedStartTime", + table: "scms_workplans", + column: "PlannedStartTime"); + + migrationBuilder.CreateIndex( + name: "IX_scms_workplans_TaskCode", + table: "scms_workplans", + column: "TaskCode", + unique: true); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "scms_mytestentitynames"); + + migrationBuilder.DropTable( + name: "scms_workplans"); + } + } +} diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs index f5e4f02..b2668e8 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs @@ -101,210 +101,188 @@ b.HasComment("MyTestEntityName"); }); - modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.WmsAreas.WorkPlan", b => + modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.WorkPlan.WorkPlan", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("char(36)"); - b.Property<string>("Bevel") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍧″彛"); - - b.Property<string>("BranchMaterial") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀鏉愯川"); - - b.Property<string>("BranchOuterDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀寰�"); - - b.Property<string>("BranchPortAngle") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀绔彛瑙掑害"); - - b.Property<string>("BranchPortRadius") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀绔彛鏇茬巼鍗婂緞"); - - b.Property<string>("BranchPortRequirement") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀绔彛瑕佹眰"); - - b.Property<string>("BranchWallThickness") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏀澹佸帤"); - b.Property<string>("ConcurrencyStamp") .IsConcurrencyToken() .HasMaxLength(40) .HasColumnType("varchar(40)") - .HasColumnName("ConcurrencyStamp"); + .HasColumnName("ConcurrencyStamp") + .HasComment("骞跺彂鎴�"); b.Property<DateTime>("CreationTime") .HasColumnType("datetime(6)") - .HasColumnName("CreationTime"); + .HasColumnName("CreationTime") + .HasComment("鍒涘缓鏃堕棿"); b.Property<Guid?>("CreatorId") + .HasMaxLength(36) .HasColumnType("char(36)") - .HasColumnName("CreatorId"); + .HasColumnName("CreatorId") + .HasComment("鍒涘缓浜篒D"); - b.Property<string>("CuttingFile") + b.Property<string>("CreatorName") .HasMaxLength(64) .HasColumnType("varchar(64)") - .HasComment("鍒囧壊鏂囦欢"); + .HasComment("鍒涘缓浜�"); + + b.Property<decimal>("CuttingPosition") + .HasColumnType("decimal(65,30)"); b.Property<string>("DataIdentifier") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("鍘熸枡鏍囪瘑"); + b.Property<string>("DeleteRemark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍒犻櫎澶囨敞"); + b.Property<Guid?>("DeleterId") + .HasMaxLength(36) .HasColumnType("char(36)") - .HasColumnName("DeleterId"); + .HasColumnName("DeleterId") + .HasComment("鍒犻櫎浜篒D"); b.Property<DateTime?>("DeletionTime") .HasColumnType("datetime(6)") - .HasColumnName("DeletionTime"); - - b.Property<string>("DrillingPosition") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鎵撳瓟浣�"); + .HasColumnName("DeletionTime") + .HasComment("鍒犻櫎鏃堕棿"); b.Property<string>("EquipmentCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("璁惧浠g爜"); + + b.Property<string>("ExtraField1") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁1"); + + b.Property<string>("ExtraField2") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁2"); + + b.Property<string>("ExtraField3") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁3"); b.Property<string>("ExtraProperties") .HasColumnType("longtext") - .HasColumnName("ExtraProperties"); + .HasColumnName("ExtraProperties") + .HasComment("鎵╁睍灞炴��"); b.Property<string>("FactoryCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("宸ュ巶浠g爜"); - b.Property<string>("FinishedProductScale") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鎴愬搧鍥惧箙"); + b.Property<decimal>("FlangeInnerDiameter") + .HasColumnType("decimal(18,2)") + .HasComment("娉曞叞鐩村緞(mm)"); - b.Property<string>("FlangeInnerDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("娉曞叞鍐呭緞"); - - b.Property<string>("FlangeThickness") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("娉曞叞鍘氬害"); + b.Property<decimal>("FlangeThickness") + .HasColumnType("decimal(18,2)") + .HasComment("娉曞叞鍘氬害(mm)"); b.Property<bool>("HasMainSignature") .HasColumnType("tinyint(1)") - .HasComment("鏄惁鏈変富绛�"); - - b.Property<string>("InterfaceRequirement") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鎺ュ彛瑕佹眰"); - - b.Property<string>("Intersecting") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐩歌疮"); - - b.Property<string>("IntersectingLineCategory") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐩歌疮绾跨被鍒�"); - - b.Property<string>("IntersectingLineType") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐩歌疮绾跨被鍨�"); + .HasComment("鏄惁涓绘敮绠�"); b.Property<bool>("IsDeleted") .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") .HasDefaultValue(false) - .HasColumnName("IsDeleted"); + .HasColumnName("IsDeleted") + .HasComment("鏄惁鍒犻櫎"); b.Property<bool?>("IsDisabled") + .ValueGeneratedOnAdd() .HasColumnType("tinyint(1)") + .HasDefaultValue(false) .HasComment("鏄惁绂佺敤"); b.Property<DateTime?>("LastModificationTime") .HasColumnType("datetime(6)") - .HasColumnName("LastModificationTime"); + .HasColumnName("LastModificationTime") + .HasComment("淇敼鏃堕棿"); b.Property<Guid?>("LastModifierId") + .HasMaxLength(36) .HasColumnType("char(36)") - .HasColumnName("LastModifierId"); + .HasColumnName("LastModifierId") + .HasComment("淇敼浜篒D"); - b.Property<string>("Length") + b.Property<string>("LastModifierName") .HasMaxLength(64) .HasColumnType("varchar(64)") - .HasComment("闀垮害"); + .HasComment("淇敼浜�"); + + b.Property<decimal>("Length") + .HasColumnType("decimal(18,2)") + .HasComment("闀垮害(mm)"); b.Property<string>("MarkingContent") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(1024) + .HasColumnType("varchar(1024)") .HasComment("鎵撶爜鍐呭"); + b.Property<decimal>("MarkingPosition") + .HasColumnType("decimal(65,30)"); + b.Property<string>("Material") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("鏉愯川"); - b.Property<string>("OrgMaterialCode") - .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鍘熸枡缂栧彿"); + b.Property<string>("MaterialMode") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍘熸枡鍨嬪彿"); - b.Property<string>("OuterDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("澶栧緞"); + b.Property<string>("OperationRemark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎿嶄綔澶囨敞"); + + b.Property<decimal>("OuterDiameter") + .HasColumnType("decimal(18,2)") + .HasComment("澶栧緞(mm)"); b.Property<string>("PipeAllowableStress") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠¢亾鍏佽搴斿姏"); + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("娉曞叞鍐茬爜鍐呭"); - b.Property<string>("PipeDiameter") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠″緞"); + b.Property<decimal>("PipeDiameter") + .HasColumnType("decimal(18,2)") + .HasComment("濂楃闀垮害(mm)"); b.Property<string>("PipeFittingCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("绠′欢缂栫爜"); b.Property<string>("PipeSectionName") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("绠℃鍚嶇О"); b.Property<string>("PipeSpecCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠¤鏍肩爜"); + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("绠℃缂栫爜"); - b.Property<string>("PipeWallThickness") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("绠¢亾澹佸帤"); + b.Property<decimal>("PipeWallThickness") + .HasColumnType("decimal(18,2)") + .HasComment("濂楃鐩村緞(mm)"); b.Property<DateTime?>("PlannedEndTime") .HasColumnType("datetime(6)") @@ -315,37 +293,28 @@ .HasComment("璁″垝寮�濮嬫椂闂�"); b.Property<string>("PreSerialNumber") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("椤哄簭鍙�"); b.Property<string>("ProcessName") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("宸ュ簭鍚嶇О"); b.Property<string>("ProcessRouteNumber") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("宸ヨ壓璺嚎缂栧彿"); + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("宸ヨ壓娴佸悜缂栧彿"); b.Property<string>("ProductCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("浜у搧浠g爜"); b.Property<int>("Quantity") .HasColumnType("int") - .HasComment("鍖呮嫭鏁伴噺"); - - b.Property<string>("RedundantField1") - .HasColumnType("longtext"); - - b.Property<string>("RedundantField2") - .HasColumnType("longtext"); - - b.Property<string>("RedundantField3") - .HasColumnType("longtext"); + .HasComment("绠℃鏁伴噺"); b.Property<string>("Remark") .HasMaxLength(256) @@ -353,43 +322,56 @@ .HasComment("澶囨敞"); b.Property<int>("Sort") + .ValueGeneratedOnAdd() .HasColumnType("int") + .HasDefaultValue(0) .HasComment("鎺掑簭"); b.Property<string>("TaskCode") .IsRequired() - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("浠诲姟缂栫爜"); - b.Property<string>("TimeInfo") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鏃堕棿淇℃伅"); + b.Property<string>("TeamInfo") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鐝粍淇℃伅"); - b.Property<string>("VRData") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("VR鏁版嵁"); + b.Property<decimal>("Thickness") + .HasColumnType("decimal(18,2)") + .HasComment("澹佸帤(mm)"); + + b.Property<string>("Timestamp") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鏃堕棿鎴�"); b.Property<string>("WeldingHeatInput") - .HasMaxLength(64) - .HasColumnType("varchar(64)") - .HasComment("鐒婃帴鐑緭鍏�"); + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("娉曞叞鍏О鍘嬪姏"); b.Property<string>("WorkpieceName") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("宸ヤ欢鍚嶇О"); b.Property<string>("WorkstationCode") - .HasMaxLength(64) - .HasColumnType("varchar(64)") + .HasMaxLength(256) + .HasColumnType("varchar(256)") .HasComment("宸ヤ綅浠g爜"); b.HasKey("Id"); - b.HasIndex("TaskCode"); + b.HasIndex("DataIdentifier"); + + b.HasIndex("PlannedEndTime"); + + b.HasIndex("PlannedStartTime"); + + b.HasIndex("TaskCode") + .IsUnique(); b.ToTable("scms_workplans", (string)null); diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMS.Plugin.PipeLineLems.csproj b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMS.Plugin.PipeLineLems.csproj index 8534e4f..88da0f4 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMS.Plugin.PipeLineLems.csproj +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMS.Plugin.PipeLineLems.csproj @@ -64,4 +64,10 @@ </Resource> </ItemGroup> + <ItemGroup> + <None Update="Resources\Templates\WorkPlan瀵煎嚭妯℃澘.xlsx"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </None> + </ItemGroup> + </Project> diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMSPluginEntry.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMSPluginEntry.cs index 92fa334..b7c7753 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMSPluginEntry.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/CMSPluginEntry.cs @@ -50,7 +50,7 @@ context.Services.AddScoped<IProjectRuntimeMigrator, CMSPluginRuntimeMigrator>(); context.Services.AddSingleton<IProjectService, PipeLineLemsProjectService>(); - context.Services.AddScoped<IMesAppService, MesAppService>(); + //context.Services.AddScoped<IMesAppService, MesAppService>(); context.Services.AddScoped<IEFDataProvider>(p => { diff --git "a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Resources/Templates/WorkPlan\345\257\274\345\207\272\346\250\241\346\235\277.xlsx" "b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Resources/Templates/WorkPlan\345\257\274\345\207\272\346\250\241\346\235\277.xlsx" new file mode 100644 index 0000000..d268187 --- /dev/null +++ "b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Resources/Templates/WorkPlan\345\257\274\345\207\272\346\250\241\346\235\277.xlsx" Binary files differ diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/File/GenerateCodeConfigParamFiles/\347\245\245\345\255\220\347\232\204\344\275\234\344\270\232\350\256\241\345\210\222\350\241\250\351\205\215\347\275\256\346\226\207\346\234\254\050\346\250\241\347\263\212\346\237\245\350\257\242\350\207\252\345\212\250\347\211\210\051.txt" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/File/GenerateCodeConfigParamFiles/\347\245\245\345\255\220\347\232\204\344\275\234\344\270\232\350\256\241\345\210\222\350\241\250\351\205\215\347\275\256\346\226\207\346\234\254\050\346\250\241\347\263\212\346\237\245\350\257\242\350\207\252\345\212\250\347\211\210\051.txt" new file mode 100644 index 0000000..c4d7364 --- /dev/null +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/File/GenerateCodeConfigParamFiles/\347\245\245\345\255\220\347\232\204\344\275\234\344\270\232\350\256\241\345\210\222\350\241\250\351\205\215\347\275\256\346\226\207\346\234\254\050\346\250\241\347\263\212\346\237\245\350\257\242\350\207\252\345\212\250\347\211\210\051.txt" @@ -0,0 +1,14 @@ +锘縖琛ㄥ悕]:scms_workplans +[瀹炰綋绫诲悕]:WorkPlan +[瀹炰綋绫诲璞″悕]:workPlan +[椤甸潰鑿滃崟鍚峕:浣滀笟璁″垝 +[椤甸潰鑿滃崟瀵硅薄缂╁啓]:workPlan +[琛ㄧ殑涓枃娉ㄨВ]:浣滀笟璁″垝琛� +[閲嶅鎬ф牎楠屽瓧娈礭:TaskCode +[鍒犻櫎鎻愮ず瀛楁]:TaskCode +[妯$硦鏌ヨ瀛楁]: +[妯$硦鏌ヨ瀛楁鍚峕: +[椤圭洰鍛藉悕绌洪棿]:PipeLineLems +[鏋氫妇绫诲瀷瀛楁闆嗗悎]: +[鍓嶇鏍规枃浠跺す鍚嶇О]:pipelinelems_web +[鎺掑簭]:CreationTime \ No newline at end of file diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Generate/Web/Controllers/EntityModeDrawer_Generate.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Generate/Web/Controllers/EntityModeDrawer_Generate.cs" index c00ab87..f68f4e1 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Generate/Web/Controllers/EntityModeDrawer_Generate.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Generate/Web/Controllers/EntityModeDrawer_Generate.cs" @@ -23,11 +23,11 @@ //鏇挎崲鏂板form鍒楄〃灞炴�� string attrString = ""; List<ColumnModel> newColumnNameList = ListHelper.RemoveAttrForUpdateMode(param.ColumnNameList); - attrString += StructStrHelper.GetVueFormOptionsStrForPageAddFormAttributes_formItems(param.ColumnNameList, param); + attrString += StructStrHelper.GetVueFormOptionsStrForPageAddFormAttributes_formItems(newColumnNameList, param); str = str.Replace("$PageAddFormAttributes_formItems$", attrString); attrString = ""; - attrString += StructStrHelper.GetVueFormOptionsStrForSave_PageAddFormAttributes(param.ColumnNameList,param); + attrString += StructStrHelper.GetVueFormOptionsStrForSave_PageAddFormAttributes(newColumnNameList, param); str = str.Replace("$Save_PageAddFormAttributes$", attrString); attrString = ""; @@ -35,7 +35,7 @@ str = str.Replace("$CommonQueryEnumForFrom$", attrString); attrString = ""; - attrString += StructStrHelper.GetVueFormOptionsStrForPageAddFormAttributesByOpen(param.ColumnNameList, param); + attrString += StructStrHelper.GetVueFormOptionsStrForPageAddFormAttributesByOpen(newColumnNameList, param); str = str.Replace("$PageAddFormAttributesByOpen$", attrString); diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/GenerateCode_WeiBen_CMS.csproj" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/GenerateCode_WeiBen_CMS.csproj" index cc283a0..3b354c7 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/GenerateCode_WeiBen_CMS.csproj" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/GenerateCode_WeiBen_CMS.csproj" @@ -319,6 +319,9 @@ </BootstrapperPackage> </ItemGroup> <ItemGroup> + <Content Include="File\GenerateCodeConfigParamFiles\绁ュ瓙鐨勪綔涓氳鍒掕〃閰嶇疆鏂囨湰%28妯$硦鏌ヨ鑷姩鐗�%29.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> <Content Include="File\GenerateCodeConfigParamFiles\绁ュ瓙鐨勪綔涓氳鍒掕〃閰嶇疆鏂囨湰.txt"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.Designer.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.Designer.cs" index 183bacf..dfb041a 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.Designer.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.Designer.cs" @@ -78,6 +78,7 @@ this.tb_FilePath = new System.Windows.Forms.TextBox(); this.btn_SelectFile = new System.Windows.Forms.Button(); this.button1 = new System.Windows.Forms.Button(); + this.label1 = new System.Windows.Forms.Label(); this.groupBox1.SuspendLayout(); this.groupBox2.SuspendLayout(); this.SuspendLayout(); @@ -357,6 +358,7 @@ // // groupBox2 // + this.groupBox2.Controls.Add(this.label1); this.groupBox2.Controls.Add(this.tb_DeleteAlertAttr); this.groupBox2.Controls.Add(this.label25); this.groupBox2.Controls.Add(this.tb_ValidateRepeatName); @@ -395,7 +397,7 @@ this.groupBox2.Controls.Add(this.label7); this.groupBox2.Location = new System.Drawing.Point(51, 90); this.groupBox2.Name = "groupBox2"; - this.groupBox2.Size = new System.Drawing.Size(1187, 470); + this.groupBox2.Size = new System.Drawing.Size(1283, 470); this.groupBox2.TabIndex = 46; this.groupBox2.TabStop = false; this.groupBox2.Text = "鑷畾涔夐厤缃�"; @@ -552,11 +554,21 @@ this.button1.UseVisualStyleBackColor = true; this.button1.Click += new System.EventHandler(this.button1_Click_1); // + // label1 + // + this.label1.AutoSize = true; + this.label1.ForeColor = System.Drawing.Color.Red; + this.label1.Location = new System.Drawing.Point(976, 185); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(245, 12); + this.label1.TabIndex = 66; + this.label1.Text = "濡傛灉涓虹┖锛岀郴缁熼粯璁ゆ墍鏈夊瓧绗︿覆鐨勫睍绀哄垪鏌ヨ"; + // // MainForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(1250, 831); + this.ClientSize = new System.Drawing.Size(1402, 831); this.Controls.Add(this.button1); this.Controls.Add(this.btn_SelectFile); this.Controls.Add(this.tb_FilePath); @@ -632,6 +644,7 @@ private System.Windows.Forms.TextBox tb_FilePath; private System.Windows.Forms.Button btn_SelectFile; private System.Windows.Forms.Button button1; + private System.Windows.Forms.Label label1; } } diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" index c56be20..6311a10 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/MainForm.cs" @@ -135,17 +135,17 @@ string _tb_LikeQueryAttrsName = this.tb_LikeQueryAttrsName.Text.Trim();//涓枃娉ㄩ噴 if (_tb_LikeQueryAttrsName == "") { - MessageBox.Show("璇疯緭鍏� 妯$硦鏌ヨ瀛楁鍚嶏紒"); - this.tb_LikeQueryAttrsName.Focus(); - return; + //MessageBox.Show("璇疯緭鍏� 妯$硦鏌ヨ瀛楁鍚嶏紒"); + //this.tb_LikeQueryAttrsName.Focus(); + //return; } string _tb_LikeQueryAttrs = this.tb_LikeQueryAttrs.Text.Trim();//涓枃娉ㄩ噴 if (_tb_LikeQueryAttrs == "") { - MessageBox.Show("璇疯緭鍏� 妯$硦鏌ヨ瀛楁锛�"); - this.tb_LikeQueryAttrs.Focus(); - return; + //MessageBox.Show("璇疯緭鍏� 妯$硦鏌ヨ瀛楁锛�"); + //this.tb_LikeQueryAttrs.Focus(); + //return; } string chinaComment = this.tb_ChinaComment.Text.Trim();//涓枃娉ㄩ噴 diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/CommonHelper.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/CommonHelper.cs" index 7dc7707..8fd1da2 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/CommonHelper.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/CommonHelper.cs" @@ -47,8 +47,17 @@ str = str.Replace("$Modulelogo$", param.Modulelogo);//妯″潡绠�鍐� str = str.Replace("$EntityInstanceName$", param.EntityInstanceName);//瀹炰緥鍚� - str = str.Replace("$LikeQueryAttrs$", param.LikeQueryAttrs); - str = str.Replace("$LikeQueryAttrsName$", param.LikeQueryAttrsName); + //濡傛灉涓虹┖锛岀郴缁熼粯璁ゆ墍鏈夊瓧绗︿覆鐨勫睍绀哄垪鏌ヨ + var str_LikeQueryAttrs = param.LikeQueryAttrs; + var str_LikeQueryAttrsName = param.LikeQueryAttrsName; + if (string.IsNullOrEmpty(param.LikeQueryAttrs)) + { + str_LikeQueryAttrs = StructStrHelper.Get_LikeQueryAttrs(param.ColumnNameList, param); + str_LikeQueryAttrsName = StructStrHelper.Get_LikeQueryAttrsName(param.ColumnNameList, param); + } + str = str.Replace("$LikeQueryAttrs$", str_LikeQueryAttrs); + str = str.Replace("$LikeQueryAttrsName$", str_LikeQueryAttrsName); + str = str.Replace("$ValidateRepeatName$", param.ValidateRepeatName); str = str.Replace("$DeleteAlertAttr$", param.DeleteAlertAttr); str = str.Replace("$OrderBy$", param.OrderBy); diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/ListHelper.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/ListHelper.cs" index 495bde1..ebae23e 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/ListHelper.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/ListHelper.cs" @@ -41,6 +41,7 @@ || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_delFlag.ToUpper() || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_DeletionTime.ToUpper() + || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_IsDisabled.ToUpper() || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_Sort.ToUpper() || SystemCommonVar.c_Extend.Contains(columnModel.ColumnName.ToUpper()) @@ -90,6 +91,7 @@ || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_delFlag.ToUpper() || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_DeletionTime.ToUpper() + || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_IsDisabled.ToUpper() || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_Sort.ToUpper() || SystemCommonVar.c_Extend.Contains(columnModel.ColumnName.ToUpper()) diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/StructStrHelper.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/StructStrHelper.cs" index 903e112..ec86934 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/StructStrHelper.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Code/Utility/StructStrHelper.cs" @@ -2214,8 +2214,7 @@ /* materialCode: formData.value.materialCode, */ - List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); - foreach (var columnModel in newList) + foreach (var columnModel in columnModelList) { //棣栧瓧姣嶅皬鍐� var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName); @@ -2261,6 +2260,80 @@ } } + + public static string Get_LikeQueryAttrs(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + [妯$硦鏌ヨ瀛楁]:'TaskCode','MaterialMode', 'ProductCode' + */ + List<ColumnModel> newList = ListHelper.RemoveForPageTableListQueryAttributes(columnModelList); + foreach (var columnModel in newList) + { + //鑾峰彇鏁版嵁绫诲瀷 + DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString()); + switch (enumDT) + { + case DataTypeEnum.dt_nvarchar: + case DataTypeEnum.dt_varchar: + case DataTypeEnum.dt_longtext: + sb.Append($"'{columnModel.ColumnName}',"); + break; + default: + break; + } + } + //鍘绘帀鏈�鍚庝竴涓�, + var res = sb.ToString(); + if (res.Length > 1) + { + res = res.Substring(0, res.Length - 1); + } + return res; + } + catch (Exception ex) + { + throw ex; + } + } + + public static string Get_LikeQueryAttrsName(List<ColumnModel> columnModelList, GenerateCodeParam param) + { + StringBuilder sb = new StringBuilder(); + try + { + /* + [妯$硦鏌ヨ瀛楁鍚峕:璇疯緭鍏ヤ换鍔$紪鐮�/鍘熸枡鍨嬪彿/浜у搧浠g爜 + */ + List<ColumnModel> newList = ListHelper.RemoveForPageTableListQueryAttributes(columnModelList); + sb.Append("璇疯緭鍏�"); + foreach (var columnModel in newList) + { + //鑾峰彇鏁版嵁绫诲瀷 + DataTypeEnum enumDT = (DataTypeEnum)Enum.Parse(typeof(DataTypeEnum), "dt_" + columnModel.DataType.ToString()); + switch (enumDT) + { + case DataTypeEnum.dt_nvarchar: + case DataTypeEnum.dt_varchar: + case DataTypeEnum.dt_longtext: + sb.Append($"{columnModel.Description}/"); + break; + default: + break; + } + } + //鍘绘帀鏈�鍚庝竴涓�, + var res = sb.ToString(); + res = res.Substring(0, res.Length - 1); + return res; + } + catch (Exception ex) + { + throw ex; + } + } /// <summary> /// 椤甸潰琛ㄦ牸鍒楁樉绀� @@ -2334,8 +2407,7 @@ /* materialCode: res.materialCode, */ - List<ColumnModel> newList = ListHelper.RemoveForPageAddFormAttributes(columnModelList); - foreach (var columnModel in newList) + foreach (var columnModel in columnModelList) { //棣栧瓧姣嶅皬鍐� var low_prop_ColumnName = CommonHelper.FirstLowercase(columnModel.ColumnName); diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/queryExtensions/CmsQueryExtensions/Extension/DynamicSearchParameters/PredicateExtensions/PredicateExtensions.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/queryExtensions/CmsQueryExtensions/Extension/DynamicSearchParameters/PredicateExtensions/PredicateExtensions.cs" index 5240657..d8796d5 100644 --- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/queryExtensions/CmsQueryExtensions/Extension/DynamicSearchParameters/PredicateExtensions/PredicateExtensions.cs" +++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/queryExtensions/CmsQueryExtensions/Extension/DynamicSearchParameters/PredicateExtensions/PredicateExtensions.cs" @@ -77,6 +77,47 @@ return finalExpression; } + ///// <summary> + ///// (妯$硦鏌ヨ)鎷兼帴鎴� c.Name.contains("1111")||c.Code.Contains("1111")||c.Address.Contains("1111")) 褰㈠紡 + ///// </summary> + ///// <typeparam name="T"></typeparam> + ///// <param name="options"></param> + ///// <param name="fieldName"></param> + ///// <returns></returns> + //public static Expression<Func<T, bool>> GetConditionExpressionForFuzzyQuery<T>(string[] fieldNames, string fieldValue) + //{ + // try + // { + // ParameterExpression left = Expression.Parameter(typeof(T), "c");//c=> + // Expression expression = Expression.Constant(true);//淇敼涓簍rue锛岃В鍐冲叕鍏辨ā绯婃煡璇㈢殑闂 + // foreach (var fieldName in fieldNames) + // { + // try + // { + // Expression right = Expression.Call + // ( + // Expression.Property(left, typeof(T).GetProperty(fieldName)), //c.DataSourceName + // typeof(string).GetMethod("Contains", new Type[] { typeof(string) }),// 鍙嶅皠浣跨敤.Contains()鏂规硶 + // Expression.Constant(fieldValue) // .Contains(fieldValue) + // ); + // expression = Expression.Or(right, expression);//c.AAA.contain("") || c.BBB.contain("") + // } + // catch (Exception ex) + // { + // throw new Exception($"鍙傛暟{fieldName}鍖归厤鍏抽敭瀛楁煡璇㈡椂澶辫触:" + ex.Message); + // } + // } + // Expression<Func<T, bool>> finalExpression + // = Expression.Lambda<Func<T, bool>>(expression, new ParameterExpression[] { left }); + // return finalExpression; + // } + // catch (Exception) + // { + // throw; + // } + //} + + /// <summary> /// (妯$硦鏌ヨ)鎷兼帴鎴� c.Name.contains("1111")||c.Code.Contains("1111")||c.Address.Contains("1111")) 褰㈠紡 /// </summary> @@ -86,35 +127,58 @@ /// <returns></returns> public static Expression<Func<T, bool>> GetConditionExpressionForFuzzyQuery<T>(string[] fieldNames, string fieldValue) { - try + if (fieldNames == null || fieldNames.Length == 0) { - ParameterExpression left = Expression.Parameter(typeof(T), "c");//c=> - Expression expression = Expression.Constant(false); - foreach (var fieldName in fieldNames) + throw new ArgumentException("鑷冲皯闇�瑕佹寚瀹氫竴涓瓧娈靛悕", nameof(fieldNames)); + } + + if (string.IsNullOrEmpty(fieldValue)) + { + // 绌哄�兼煡璇㈣繑鍥炴�绘槸杩斿洖false鐨勮〃杈惧紡 + var parameter2 = Expression.Parameter(typeof(T), "c"); + return Expression.Lambda<Func<T, bool>>(Expression.Constant(false), parameter2); + } + + ParameterExpression parameter = Expression.Parameter(typeof(T), "c"); + Expression? expression = null; + + foreach (var fieldName in fieldNames) + { + try { - try + var propertyInfo = typeof(T).GetProperty(fieldName); + + if (propertyInfo == null) { - Expression right = Expression.Call - ( - Expression.Property(left, typeof(T).GetProperty(fieldName)), //c.DataSourceName - typeof(string).GetMethod("Contains", new Type[] { typeof(string) }),// 鍙嶅皠浣跨敤.Contains()鏂规硶 - Expression.Constant(fieldValue) // .Contains(fieldValue) - ); - expression = Expression.Or(right, expression);//c.AAA.contain("") || c.BBB.contain("") + throw new ArgumentException($"绫诲瀷 {typeof(T).Name} 涓嶅寘鍚睘鎬� {fieldName}"); } - catch (Exception ex) + + if (propertyInfo.PropertyType != typeof(string)) { - throw new Exception($"鍙傛暟{fieldName}鍖归厤鍏抽敭瀛楁煡璇㈡椂澶辫触:" + ex.Message); + throw new ArgumentException($"灞炴�� {fieldName} 涓嶆槸瀛楃涓茬被鍨�"); } + + var propertyAccess = Expression.Property(parameter, propertyInfo); + var containsMethod = typeof(string).GetMethod("Contains", new[] { typeof(string) }); + var searchExpression = Expression.Call(propertyAccess, containsMethod!, Expression.Constant(fieldValue)); + + expression = expression == null + ? searchExpression + : Expression.OrElse(expression, searchExpression); } - Expression<Func<T, bool>> finalExpression - = Expression.Lambda<Func<T, bool>>(expression, new ParameterExpression[] { left }); - return finalExpression; + catch (Exception ex) + { + throw new InvalidOperationException($"澶勭悊瀛楁 {fieldName} 鏃跺嚭閿�", ex); + } } - catch (Exception) + + if (expression == null) { - throw; + // 濡傛灉鎵�鏈夊瓧娈甸兘鏃犳晥锛岃繑鍥炴�绘槸杩斿洖false鐨勮〃杈惧紡 + return Expression.Lambda<Func<T, bool>>(Expression.Constant(false), parameter); } + + return Expression.Lambda<Func<T, bool>>(expression, parameter); } /// <summary> -- Gitblit v1.9.3