using iWare.Wms.Core; using iWare.Wms.Core.Util.LowCode.Dto; using System; namespace iWare.Wms.Application { /// /// 产线产量统计输出参数 /// public class YieldAnalysisOutput { /// /// 工件号 /// public string WorkPieceID { get; set; } /// /// 工件状态 /// public int WorkPieceState { get; set; } /// /// 工件当前位置序号 /// public int WorkPieceCurrentPositionOrder { get; set; } /// /// 工件当前位置 /// public string WorkPieceCurrentPosition { get; set; } /// /// 当前设备 /// public string EquipmentID { get; set; } /// /// 当前已完成工序流程 /// public string WorkingProcedureCompleted { get; set; } /// /// 计划工序流程 /// public string WorkingProcedurePlan { get; set; } /// /// 当前工序 /// public string WorkingProcedureCurrent { get; set; } /// /// 工序开始时间 /// public DateTime WorkingProcedureStartTime { get; set; } /// /// 当前工序加工时长 /// public int ProcessingDurationForCurrent { get; set; } /// /// 总加工时长 /// public int ProcessingDurationTotal { get; set; } /// /// 首工序上线时间 /// public DateTime WorkPieceinitOnlineTime { get; set; } /// /// 工序下线时间 /// public DateTime WorkPieceLastOfflineTime { get; set; } /// /// 数量 /// public int Number { get; set; } /// /// 供应商 /// public string WorkPieceIDTo1 { get; set; } /// /// 零件设计尾号 /// public string WorkPieceIDTo2 { get; set; } /// /// 年月日 /// public string WorkPieceIDTo3 { get; set; } /// /// 班次 /// public string WorkPieceIDTo4 { get; set; } /// /// 流水号 /// public string WorkPieceIDTo5 { get; set; } /// /// 模具号 /// public string WorkPieceIDTo6 { get; set; } /// /// 炉号 /// public string WorkPieceIDTo7 { get; set; } /// /// 质量状态 /// public int QualityState { get; set; } /// /// 质量状态变更人 /// public string QualityStateUpdateUser { get; set; } /// /// 质量状态变更时间 /// public DateTime QualityStateUpdateTime { get; set; } /// /// 质量状态变更方式 /// public string QualityStateUpdateMode { get; set; } /// /// 告警类型 /// public int AlertType { get; set; } /// /// 告警内容 /// public string AlertMsg { get; set; } /// /// 备注 /// public string Remarks { get; set; } /// /// Log添加时间 /// public DateTime LogAddTime { get; set; } /// /// Log新增备注 /// public string LogAddRemark { get; set; } /// /// Id主键 /// public long Id { get; set; } } /// /// 获取产能分析汇总输出参数 /// public class GetYieldAnalysisInfoOutput { /// /// 当前年月份 /// public string CurrentYearMonth { get; set; } /// /// 报警次数 /// public int AlertNumber { get; set; } /// /// 报警持续时长 /// public string AlertDuration { get; set; } /// /// 产能统计 /// public int YieldCount { get; set; } /// /// 合格统计 /// public int OKCount { get; set; } } /// /// 设备状态分析 /// public class GetEquipmentStateAnalysisInfo { /// /// 当前年月份 /// public string Month { get; set; } /// /// 报警次数 /// public int AlarmNum { get; set; } /// /// 报警持续时长 /// public double Duration { get; set; } /// /// 产能统计 /// public int YieldCount { get; set; } public List StatusRatiio{ get;set;} } public class EquipmentStateInfo { public string EquipmentStateName { get; set; } public string count { get; set; }//小时 } public class GetMTBFOutput {//平均无故障时间MTBF = 总运行时间 / 发生故障次数 /// /// 设备编号 /// public string Code { get; set; } /// /// 设备名称 /// public string Name { get; set; } /// /// Alert次数 /// public int AlertCount { get; set; } /// /// 总运行时间(小时) /// public double WorkTimeSum { get; set; } /// /// MTBF /// public string MTBF { get { if (WorkTimeSum == 0 || AlertCount == 0) { return "0"; } return (WorkTimeSum * 1.0 / AlertCount).ToString("f2"); } } } public class GetPerformanceOutput {//设备性能率(%)=(实际产量 ÷ 理论产量)×(生产时间 ÷ 计划时间)×100% /// /// 设备编号 /// public string Code { get; set; } /// /// 设备名称 /// public string Name { get; set; } /// /// 实际产量 /// public int 实际产量 { get; set; } /// /// 理论产量 /// public int 理论产量 { get; set; } /// /// 运行时间(小时) /// public double WorkTimeSum { get; set; } /// /// 计划时间(小时) /// public double PlanWorkTimeSum { get; set; } /// /// Performance /// public string Performance { get { if (WorkTimeSum == 0 || PlanWorkTimeSum == 0 || 实际产量 == 0 || 理论产量 == 0) { return "0"; } return (((实际产量 * 1.0 / 理论产量)*(WorkTimeSum*1.0/ PlanWorkTimeSum))*100).ToString("f2"); } } } public class GetOEEOutput { //OEE=可利用率* 性能率*质量率 //可利用率 = 设备正常运行时间 / 总运行时间 //性能率=设备实际产能/设备理论产能 //质量率 = 合格产品数量 / 实际产出产品数量 /// /// 设备编号 /// public string Code { get; set; } /// /// 设备名称 /// public string Name { get; set; } /// /// 实际产量 /// public int 实际产量 { get; set; } /// /// 理论产量 /// public int 理论产量 { get; set; } /// /// 实际运行时间(小时) /// public double WorkTimeSum { get; set; } /// /// 计划运行时间(小时) /// public double PlanWorkTimeSum { get; set; } /// /// 正常时间(小时)正常运行时间指设备处于开机状态且能够正常运行的时间, /// public double NormalTimeSum { get; set; } /// /// 合格产品数量 /// public int 合格产品数量 { get; set; } /// /// 总运行时间(小时) 而总运行时间则是设备运行的总时间 /// public double AllTimeSum { get; set; } /// /// Performance 性能率 =设备实际产能/设备理论产能 /// public double Performance { get { if (实际产量 == 0 || 理论产量 == 0) { return 0; } return double.Parse(((实际产量 * 1.0 / 理论产量)).ToString("f2")); } } /// /// 可利用率=设备正常运行时间 / 总运行时间 /// public double Availability { get { if (NormalTimeSum == 0 || AllTimeSum == 0) { return 0; } return double.Parse(((NormalTimeSum * 1.0 / AllTimeSum) ).ToString("f2")); } } /// /// 质量率=合格产品数量 / 实际产出产品数量 /// public double Quality { get { if (合格产品数量 == 0 || 实际产量 == 0) { return 0; } return double.Parse(((合格产品数量 * 1.0 / 实际产量)).ToString("f2")); } } public string OEE { get { return (Performance * Availability * Quality * 100).ToString("f2"); } } } public class GetKnifeToolAnalysisOutput { public List KnifeToolList; public List KnifeToolLoad; } public class KnifeToolLoad { public string Name { get; set; } public double[] Data { get; set; } } }