TaskPerformanceComponent.cs 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. using KYFramework;
  2. using Model;
  3. namespace SimulationServer;
  4. public class TaskPerformance
  5. {
  6. //任务准备时间
  7. public string 任务准备时间;
  8. //单机入场时间
  9. public string 单机入场时间;
  10. //单机有效任务时长
  11. public string 单机有效任务时长;
  12. //单机总投送人数
  13. public string 单机总投送人数;
  14. //单机总洒水量
  15. public string 单机总洒水量;
  16. //单机总灭火剂投放量
  17. public string 单机总灭火剂投放量;
  18. //单机单次投送人数
  19. public string 单机单次投送人数;
  20. //单机单次洒水量
  21. public string 单机单次洒水量;
  22. //单机单次灭火剂投放量
  23. public string 单机单次灭火剂投放量;
  24. }
  25. // 任务表现组件
  26. public class TaskPerformanceComponent : Component
  27. {
  28. public TaskPerformance TaskPerformance = new TaskPerformance();
  29. public void FillData(AircraftDB db)
  30. {
  31. var aircraft = GetParent<AircraftMH>();
  32. TaskPerformance.任务准备时间 = aircraft.TaskReadyTime.ToString();
  33. TaskPerformance.单机入场时间 = aircraft.FirstTime.ToString("#0.00");
  34. TaskPerformance.单机有效任务时长 = aircraft.EffMisTime.ToString("#0.00");
  35. TaskPerformance.单机总投送人数 = aircraft.FlightPlanEditor.aircraftparameter.MaxPassengerNumber.ToString();
  36. TaskPerformance.单机总洒水量 = ((double)db.fsslwater * aircraft.waterTimes).ToString();
  37. TaskPerformance.单机总灭火剂投放量 = "0";
  38. TaskPerformance.单机单次投送人数 = aircraft.FlightPlanEditor.aircraftparameter.MaxPassengerNumber.ToString();
  39. TaskPerformance.单机单次洒水量 = db.fsslwater.ToString();
  40. TaskPerformance.单机单次灭火剂投放量 = "0";
  41. }
  42. public Dictionary<string, Dictionary<string, string>> GetReport()
  43. {
  44. Dictionary<string, Dictionary<string, string>> report = new Dictionary<string, Dictionary<string, string>>();
  45. report["任务表现"] = new Dictionary<string, string>
  46. {
  47. { "任务准备时间/s", TaskPerformance.任务准备时间.ToString() },
  48. { "单机入场时间/s", TaskPerformance.单机入场时间.ToString() },
  49. { "单机有效任务时长/s", TaskPerformance.单机有效任务时长.ToString() },
  50. { "单机总投送人数/人", TaskPerformance.单机总投送人数.ToString() },
  51. { "单机总洒水量/kg", TaskPerformance.单机总洒水量.ToString() },
  52. { "单机总灭火剂投放量/kg", TaskPerformance.单机总灭火剂投放量.ToString() },
  53. { "单机单次投送人数/人", TaskPerformance.单机单次投送人数.ToString() },
  54. { "单机单次洒水量/kg", TaskPerformance.单机单次洒水量.ToString() },
  55. { "单机单次灭火剂投放量/kg", TaskPerformance.单机单次灭火剂投放量.ToString() }
  56. };
  57. return report;
  58. }
  59. }