From d6e9301f94a391b822b41c29f8813b915d557206 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周日, 11 5月 2025 13:13:43 +0800
Subject: [PATCH] 111
---
PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs | 431 ++++++++++++++++++++++++++---------------------------
1 files changed, 214 insertions(+), 217 deletions(-)
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..a4b95f8 100644
--- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs
+++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/WorkPlanAppService.cs
@@ -10,6 +10,12 @@
using Volo.Abp.Data;
using Volo.Abp.ObjectExtending;
using Volo.Abp.ObjectMapping;
+using CMS.Plugin.FormulaManagement.Abstractions;
+using CMS.Plugin.OrderManagement.Abstractions.Enums;
+using CMS.Plugin.OrderManagement.Abstractions.Models;
+using CMS.Plugin.OrderManagement.Abstractions;
+using CMS.Plugin.ProductManagement.Abstractions;
+using Microsoft.Extensions.DependencyInjection;
namespace CMS.Plugin.PipeLineLems.Application.Implements;
@@ -19,14 +25,18 @@
public class WorkPlanAppService : CMSPluginAppService, IWorkPlanAppService
{
private readonly IWorkPlanRepository workPlanRepository;
+ private readonly IServiceProvider _serviceProvider;
+ private readonly SharedService _sharedService;
/// <summary>
/// Initializes a new instance of the <see cref="WorkPlanAppService"/> class.
/// </summary>
/// <param name="WorkPlanRepository">The task job repository.</param>
- public WorkPlanAppService(IWorkPlanRepository _WorkPlanRepository)
+ public WorkPlanAppService(IWorkPlanRepository _WorkPlanRepository, IServiceProvider serviceProvider, SharedService sharedService)
{
workPlanRepository = _WorkPlanRepository;
+ _serviceProvider = serviceProvider;
+ _sharedService = sharedService;
}
/// <summary>
@@ -144,7 +154,19 @@
input.MapExtraPropertiesTo(updateObj, MappingPropertyDefinitionChecks.None);
updateObj.TaskCode = input.TaskCode;
- updateObj.OrgMaterialCode = input.OrgMaterialCode;
+ 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,45 +175,18 @@
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);
@@ -308,188 +303,182 @@
/// <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;
+ //杞崲鏁版嵁
+ var result = ObjectMapper.Map<List<WorkPlansImportModel.WorkPlanImportModel>, List<WorkPlanInput>>(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
- {
- 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
- {
- 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));
- }
- }
- }
-
- // 鏂板
- 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);
- }
- }
+ //await CreatebyApsAsync(result);
+ await _sharedService.CommonCreatebyApsAsync(result, _serviceProvider, this);
}
+
+
+ public async Task<MesOrderResponse> CreatebyApsAsync(List<WorkPlanInput> input)
+ {
+ var response=await _sharedService.CommonCreatebyApsAsync(input, _serviceProvider, this);
+
+ return response;
+ }
+
+ ///// <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())
+ // {
+ // #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
+ // {
+ // TaskCode = impItem.TaskCode,
+ // 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,
+ // 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 workPlanUpdateDtos)
+ // {
+ // try
+ // {
+ // await UpdateAsync(workPlanDto.Id, workPlanDto.Item);
+ // }
+ // catch (Exception e)
+ // {
+ // var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊workPlanDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�";
+ // throw new UserFriendlyException(errorMsg);
+ // }
+ // }
+ //}
/// <summary>
/// 瀵煎嚭浣滀笟璁″垝琛�
@@ -521,7 +510,7 @@
["閰嶇疆"] = ExportHelper.ConvertListToExportData(result),
};
- var fileName = result.Count > 1 ? "浣滀笟璁″垝琛ㄥ垪琛�" : result.Count == 1 ? result[0]?.TaskCode : "WorkPlan妯$増";
+ var fileName = "浣滀笟璁″垝";
return (sheets, fileName);
}
@@ -533,10 +522,18 @@
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, "鍖呮嫭鏁伴噺");
+ 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;
}
--
Gitblit v1.9.3