105040 Update 从品牌列表中读取电机前缀进行判断

This commit is contained in:
lihanbo 2025-04-02 17:38:16 +08:00
parent a902a20da1
commit f1dc0113cb
1 changed files with 21 additions and 6 deletions

View File

@ -647,18 +647,17 @@ public class LectotypeViewModel(string docId) : INotifyPropertyChanged
FlexMessageBox.Error(ex.Message);
}
}
/// <summary>
/// 抓取电机数据
/// </summary>
/// <returns></returns>
public Task GetMotors()
{
var motorsData = new List<MotorModel>();
var doc = FlexProject.CurrentProject.GetDesigners().FirstOrDefault(designer => designer.ID == docId);
var parts = doc.GetOrganizerOccurrences(docId)
.Where(occ => occ.Type == OCC_TYPE.wPART)
.Where(occ =>
(occ.Name?.StartsWith("HK-KT") ?? false)
|| (occ.Name?.StartsWith("SGMX") ?? false)
|| (occ.Name?.StartsWith("MS1H") ?? false)
)
.Where(occ => IsMotor(occ.Name))
.ToList();
var motorPowerDatas = MotorExcelHelper.Instance.GetMotorPowers();
parts.ForEach(part =>
@ -710,6 +709,22 @@ public class LectotypeViewModel(string docId) : INotifyPropertyChanged
return Task.CompletedTask;
}
/// <summary>
/// 判断部件是否为电机
/// </summary>
/// <param name="partName"></param>
/// <returns></returns>
public bool IsMotor(string partName)
{
var isMotor = false;
if (!string.IsNullOrEmpty(partName))
{
var brandDatas = Brands.BrandDataList.Values.Select(b => b.MotorPrefix).ToList();
isMotor = brandDatas.Any(it => partName.StartsWith(partName));
}
return isMotor;
}
/// <summary>
/// 获取电机品牌
/// </summary>
/// <param name="motorName"></param>