DefaultDataCreator.cs 77 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. using IwbZero.ToolCommon.StringModel;
  4. using WeEngine.Enum;
  5. using WePlatform.Configuration;
  6. using WePlatform.EF;
  7. using WePlatform.ThirdPartySystem;
  8. using WePlatform.WeBase;
  9. using WePlatform.WeLib;
  10. using WePlatform.WeModel;
  11. namespace WePlatform.SeedData
  12. {
  13. public class DefaultDataCreator
  14. {
  15. private readonly WePlatformDbContext _context;
  16. public DefaultDataCreator(WePlatformDbContext context)
  17. {
  18. _context = context;
  19. Index = 0;
  20. }
  21. public void Create()
  22. {
  23. Delete();
  24. EngineModelCreate();
  25. ThirdPartySystemCreate();
  26. SceneInfo();
  27. //EngineComponentCreate();
  28. }
  29. private void Delete()
  30. {
  31. _context.Sql("TRUNCATE Table [dbo].[WeLib_BehaviorKnowledges]");
  32. _context.Sql("TRUNCATE Table [dbo].[WeLib_SceneBehaviors]");
  33. _context.Sql("TRUNCATE Table [dbo].[WeLib_BehaviorRelateRoles]");
  34. _context.Sql("TRUNCATE Table [dbo].[WeLib_KnowledgeRelatePlans]");
  35. _context.Sql("DELETE FROM [dbo].[WeLib_Knowledges]");
  36. _context.Sql("DELETE FROM [dbo].[WeLib_Behaviors]");
  37. _context.Sql("DELETE FROM [dbo].[WeLib_Scenes]");
  38. _context.Sql("DELETE FROM [dbo].[WeLib_SceneFlows]");
  39. _context.Sql("DELETE FROM [dbo].[WeLib_PackagesXml]");
  40. _context.Sql("DELETE FROM [dbo].[WeLib_Packages]");
  41. _context.Sql("TRUNCATE Table [dbo].[WeBase_BehaviorRoleRelateCategories]");
  42. _context.Sql("DELETE FROM [dbo].[WeBase_BehaviorRoles]");
  43. _context.Sql("DELETE FROM [dbo].[WeBase_SceneCategories]");
  44. _context.Sql("DELETE FROM [dbo].[WeModel_EngineModels]");
  45. _context.Sql("DELETE FROM [dbo].[WeModel_Engines]");
  46. _context.Sql("DELETE FROM [dbo].[WeModel_EvalModels]");
  47. _context.Sql("TRUNCATE Table [dbo].[WeBase_ThirdPartySystems]");
  48. // _context.Sql($"TRUNCATE Table [dbo].[]");
  49. }
  50. private int Index { get; set; }
  51. private string GetNo(DataLibType type, bool flag = false, bool flag2 = false)
  52. {
  53. if (flag)
  54. {
  55. while (Index % 10 != 0)
  56. {
  57. Index++;
  58. }
  59. }
  60. if (flag2)
  61. {
  62. while (Index % 50 != 0)
  63. {
  64. Index++;
  65. }
  66. }
  67. Index++;
  68. var no = $"JY{type.ToInt().LeftPad(3)}{Index.LeftPad(9)}";
  69. return no;
  70. }
  71. #region ENGINE & SYSTEM
  72. /// <summary>
  73. /// 引擎模型
  74. /// </summary>
  75. public void EngineModelCreate()
  76. {
  77. string engineId1 = GetNo(DataLibType.EngineInfo), engineId2 = GetNo(DataLibType.EngineInfo);//02
  78. {
  79. var entity = _context.EngineInfos.FirstOrDefault(a => a.Id == engineId1);
  80. if (entity == null)
  81. {
  82. entity = new EngineInfo()
  83. {
  84. Id = engineId1,
  85. EngineName = "自动演化推演引擎",
  86. Version = "V1.0",
  87. Description = "自动演化,智慧推演",
  88. EngineTypeName = "Evolution",
  89. };
  90. _context.EngineInfos.Add(entity);
  91. }
  92. }
  93. {
  94. var entity = _context.EngineInfos.FirstOrDefault(a => a.Id == engineId2);
  95. if (entity == null)
  96. {
  97. entity = new EngineInfo()
  98. {
  99. Id = engineId2,
  100. EngineName = "非演化推演引擎",
  101. Version = "V1.0",
  102. Description = "非演化引擎,智慧推演",
  103. EngineTypeName = "NonEvolution",
  104. };
  105. _context.EngineInfos.Add(entity);
  106. }
  107. GetNo(DataLibType.EngineModelInfo);
  108. GetNo(DataLibType.EngineModelInfo);
  109. }
  110. {
  111. var id = GetNo(DataLibType.EngineModelInfo); //index=5
  112. var entity = _context.EngineModelInfos.FirstOrDefault(a => a.Id == id);
  113. if (entity == null)
  114. {
  115. entity = new EngineModelInfo()
  116. {
  117. Id = id,
  118. ModelName = "多角色团队合作演化模型",
  119. Version = "V1.0",
  120. EngineNo = engineId1,
  121. Description = "多人多角色演练,支持多组多轮次同时进行",
  122. ModelType = ModelType.ManyTeam.ToInt()
  123. };
  124. _context.EngineModelInfos.Add(entity);
  125. }
  126. }
  127. {
  128. var id = GetNo(DataLibType.EngineModelInfo);//6
  129. var entity = _context.EngineModelInfos.FirstOrDefault(a => a.Id == id);
  130. if (entity == null)
  131. {
  132. entity = new EngineModelInfo()
  133. {
  134. Id = id,
  135. ModelName = "单角色团队自动演化模型",
  136. Version = "V1.0",
  137. EngineNo = engineId1,
  138. Description = "单人单角色在团队合作中演练,其他角色由系统自动完成,支持多组多轮次同时进行",
  139. ModelType = ModelType.IndependentTeam.ToInt()
  140. };
  141. _context.EngineModelInfos.Add(entity);
  142. }
  143. }
  144. {
  145. var id = GetNo(DataLibType.EngineModelInfo);//7
  146. var entity = _context.EngineModelInfos.FirstOrDefault(a => a.Id == id);
  147. if (entity == null)
  148. {
  149. entity = new EngineModelInfo()
  150. {
  151. Id = id,
  152. ModelName = "单角色独立自动演化模型",
  153. Version = "V1.0",
  154. EngineNo = engineId1,
  155. Description = "单人单角色演练,支持多组多轮次同时进行",
  156. ModelType = ModelType.Independent.ToInt()
  157. };
  158. _context.EngineModelInfos.Add(entity);
  159. }
  160. }
  161. {
  162. var id = GetNo(DataLibType.EngineModelInfo);//8
  163. var entity = _context.EngineModelInfos.FirstOrDefault(a => a.Id == id);
  164. if (entity == null)
  165. {
  166. entity = new EngineModelInfo()
  167. {
  168. Id = id,
  169. ModelName = "单人非演化模型",
  170. Version = "V1.0",
  171. EngineNo = engineId2,
  172. Description = "单人单角色非演化演练,支持多组多轮次同时进行,例如题目考核",
  173. ModelType = ModelType.NonEvolutionIndependent.ToInt()
  174. };
  175. _context.EngineModelInfos.Add(entity);
  176. }
  177. }
  178. var etNo = "";
  179. {
  180. var id = GetNo(DataLibType.EvalTarget);//index=9
  181. etNo = id;
  182. var entity = _context.EvalTargetInfos.FirstOrDefault(a => a.Id == id);
  183. if (entity == null)
  184. {
  185. entity = new EvalTargetInfo()
  186. {
  187. Id = id,
  188. ParentNo = IwbConsts.EvalTargetRootNo,
  189. TypePath = $"{IwbConsts.EvalTargetRootNo},{etNo}",
  190. Name = "四功五力评估指标",
  191. Tag = "决策力,掌控力,研判力,协调力,舆论引导力,对上级,对下级,对相关单位,对媒体",
  192. Version = "V1.0",
  193. Description = "四功五力评估指标",
  194. TargetType = (int) EvalTargetType.Positive
  195. };
  196. _context.EvalTargetInfos.Add(entity);
  197. }
  198. }
  199. {
  200. var id = GetNo(DataLibType.EvalModelInfo);//index=10
  201. var entity = _context.EvalModelInfos.FirstOrDefault(a => a.Id == id);
  202. if (entity == null)
  203. {
  204. entity = new EvalModelInfo()
  205. {
  206. Id = id,
  207. ModelName = "智能匹配评估模型",
  208. Version = "V1.0",
  209. Description = "智能匹配评估模型",
  210. EvalTargetNo = etNo,
  211. QualitativeExpression = "50|及格@85|良好@100|优秀"
  212. };
  213. _context.EvalModelInfos.Add(entity);
  214. }
  215. }
  216. {
  217. var id = GetNo(DataLibType.EvalReportTemplate);//index=11
  218. var entity = _context.EvalReportTemplateInfos.FirstOrDefault(a => a.Id == id);
  219. if (entity == null)
  220. {
  221. entity = new EvalReportTemplateInfo()
  222. {
  223. Id = id,
  224. Name = "通用模板",
  225. Version = "V1.0",
  226. Description = "智能评估通用模板",
  227. };
  228. _context.EvalReportTemplateInfos.Add(entity);
  229. }
  230. }
  231. }
  232. public void ThirdPartySystemCreate()
  233. {
  234. {
  235. //GetNo(DataLibType.ThirdPartySystem, true);//index=11
  236. string id = GetNo(DataLibType.ThirdPartySystem, true);//index=21
  237. if (_context.ThirdPartySystemInfos.Any(s => s.Id == id))
  238. {
  239. return;
  240. }
  241. _context.ThirdPartySystemInfos.Add(new ThirdPartySystemInfo()
  242. {
  243. Id = id,
  244. Name = "智慧推演引擎",
  245. AppId = "WeEngine",
  246. SecretKey = "WePlatformWeEngine",
  247. IsSystem = true,
  248. IsActive = true,
  249. IsRegistered = false,
  250. Description = "智慧推演引擎",
  251. ExpiredDate = null,
  252. });
  253. _context.SaveChanges();
  254. }
  255. {
  256. string id = GetNo(DataLibType.ThirdPartySystem);
  257. if (_context.ThirdPartySystemInfos.Any(s => s.Id == id))
  258. {
  259. return;
  260. }
  261. _context.ThirdPartySystemInfos.Add(new ThirdPartySystemInfo()
  262. {
  263. Id = id,
  264. Name = "智慧演练系统",
  265. AppId = "WeApp",
  266. SecretKey = "WePlatformWeApp",
  267. IsSystem = true,
  268. IsActive = true,
  269. IsRegistered = false,
  270. Description = "智慧演练系统",
  271. ExpiredDate = null,
  272. });
  273. _context.SaveChanges();
  274. }
  275. {
  276. string id = GetNo(DataLibType.ThirdPartySystem);
  277. if (_context.ThirdPartySystemInfos.Any(s => s.Id == id))
  278. {
  279. return;
  280. }
  281. _context.ThirdPartySystemInfos.Add(new ThirdPartySystemInfo()
  282. {
  283. Id = id,
  284. Name = "在线分布式智慧演练系统",
  285. AppId = "WeOnlineApp",
  286. SecretKey = "WePlatformWeOnlineApp",
  287. IsSystem = true,
  288. IsActive = true,
  289. IsRegistered = false,
  290. Description = "在线分布式智慧演练系统",
  291. ExpiredDate = null,
  292. });
  293. _context.SaveChanges();
  294. }
  295. //Index=33
  296. }
  297. #endregion
  298. #region SCENE
  299. private void SceneInfo()
  300. {
  301. SceneCategory();
  302. //BehaviorRole();
  303. //BehaviorHz();
  304. //BehaviorGj();
  305. //BehaviorWhp();
  306. //BehaviorTd();
  307. //BehaviorFx();
  308. //BehaviorPj();
  309. //SceneHz();
  310. //SceneGj();
  311. //SceneWhp();
  312. //SceneTd();
  313. //SceneFx();
  314. //ScenePj();
  315. }
  316. #region SCENECATEGORY
  317. private string scYl { get; set; }
  318. private string scHz { get; set; }
  319. private string scTd { get; set; }
  320. private string scGj { get; set; }
  321. private string scFx { get; set; }
  322. private string scPj { get; set; }
  323. private string scWhp { get; set; }
  324. public static string sjSp { get; set; }
  325. public static string sjGb { get; set; }
  326. public void SceneCategory()
  327. {
  328. GetNo(DataLibType.SceneCategoryInfo, true, true);//index=51
  329. scYl = GetNo(DataLibType.SceneCategoryInfo, true, true);//index=101
  330. scFx = GetNo(DataLibType.SceneCategoryInfo);
  331. scTd = GetNo(DataLibType.SceneCategoryInfo);
  332. scHz = GetNo(DataLibType.SceneCategoryInfo);
  333. scGj = GetNo(DataLibType.SceneCategoryInfo);
  334. scPj = GetNo(DataLibType.SceneCategoryInfo);
  335. scWhp = GetNo(DataLibType.SceneCategoryInfo);//index=107
  336. var path = $"{IwbConsts.SceneCategoryRootNo},{scYl}";
  337. SceneCategoryCreate(IwbConsts.SceneCategoryRootNo, IwbConsts.TreeRootParentNo, "根节点", null);
  338. SceneCategoryCreate(scYl, IwbConsts.SceneCategoryRootNo, "综合演练", path);
  339. SceneCategoryCreate(scTd, scYl, "大面积停电", $"{path},{scTd}");
  340. SceneCategoryCreate(scFx, scYl, "防台防汛", $"{path},{scFx}");
  341. SceneCategoryCreate(scHz, scYl, "高层火灾", $"{path},{scHz}");
  342. SceneCategoryCreate(scGj, scYl, "轨交大客流", $"{path},{scGj}");
  343. SceneCategoryCreate(scPj, scYl, "飞机迫降", $"{path},{scPj}");
  344. SceneCategoryCreate(scWhp, scYl, "危化品事故", $"{path},{scWhp}");
  345. GetNo(DataLibType.SceneCategoryInfo, true);//index=111
  346. sjSp= GetNo(DataLibType.SceneCategoryInfo, true);//index=121
  347. //path = $"{IwbConsts.SceneCategoryRootNo},{sjSp}";
  348. //sjGb = GetNo(DataLibType.SceneCategoryInfo);
  349. //SceneCategoryCreate(sjSp, IwbConsts.SceneCategoryRootNo, "松江沙盘演练", path);
  350. //SceneCategoryCreate(sjGb, sjSp, "杆变故障", $"{path},{sjGb}");
  351. }
  352. #endregion
  353. #region ROLE
  354. private string brYjZhb { get; set; }
  355. private string brYjZx { get; set; }
  356. private string brGa { get; set; }
  357. private string brXf { get; set; }
  358. private string brJt { get; set; }
  359. private string brSw { get; set; }
  360. private string brWs { get; set; }
  361. private string brHb { get; set; }
  362. private string brFx { get; set; }
  363. private string brAj { get; set; }
  364. private string brFxJxWzZc { get; set; }
  365. private string brDl { get; set; }
  366. private string brMh { get; set; }
  367. private string brSt { get; set; }
  368. private void BehaviorRole()
  369. {
  370. GetNo(DataLibType.BehaviorRoleInfo, true,true);//151
  371. brYjZhb = GetNo(DataLibType.BehaviorRoleInfo, true, true);//index=201
  372. brYjZx = GetNo(DataLibType.BehaviorRoleInfo);
  373. brGa = GetNo(DataLibType.BehaviorRoleInfo);
  374. brXf = GetNo(DataLibType.BehaviorRoleInfo);
  375. brJt = GetNo(DataLibType.BehaviorRoleInfo);
  376. brSw = GetNo(DataLibType.BehaviorRoleInfo);
  377. brWs = GetNo(DataLibType.BehaviorRoleInfo);
  378. brHb = GetNo(DataLibType.BehaviorRoleInfo);
  379. brFx = GetNo(DataLibType.BehaviorRoleInfo);
  380. brAj = GetNo(DataLibType.BehaviorRoleInfo);
  381. brFxJxWzZc = GetNo(DataLibType.BehaviorRoleInfo);
  382. brDl = GetNo(DataLibType.BehaviorRoleInfo);
  383. brMh = GetNo(DataLibType.BehaviorRoleInfo);
  384. brSt = GetNo(DataLibType.BehaviorRoleInfo);//index=211
  385. BehaviorRoleCreate(brYjZhb, "市应急指挥部总指挥", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  386. BehaviorRoleCreate(brYjZx, "市应急指挥中心", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  387. BehaviorRoleCreate(brGa, "市公安局", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  388. BehaviorRoleCreate(brXf, "市消防局", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  389. BehaviorRoleCreate(brJt, "市交通局", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  390. BehaviorRoleCreate(brSw, "市水务局", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  391. BehaviorRoleCreate(brWs, "市卫生局", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  392. BehaviorRoleCreate(brHb, "市环保局", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  393. BehaviorRoleCreate(brFx, "市防汛办", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  394. BehaviorRoleCreate(brAj, "市安全监管局", scYl, scHz, scTd, scGj, scFx, scPj, scWhp);
  395. BehaviorRoleCreate(brFxJxWzZc, "防汛抢险物资储运单位", scYl, scFx);
  396. BehaviorRoleCreate(brDl, "市电力公司", scYl, scTd);
  397. }
  398. #endregion
  399. #region SCENE & BEHAVIOR
  400. #region HZ
  401. private string bHz1 { get; set; }
  402. private string bHz2 { get; set; }
  403. private string bHz3 { get; set; }
  404. private string bHz4 { get; set; }
  405. private string bHz5 { get; set; }
  406. private string bHz6 { get; set; }
  407. private string bHz7 { get; set; }
  408. private string bHz8 { get; set; }
  409. private string bHz9 { get; set; }
  410. private string bHz10 { get; set; }
  411. private string bHz11 { get; set; }
  412. private string bHz12 { get; set; }
  413. private void BehaviorHz()
  414. {
  415. bHz1 = GetNo(DataLibType.BehaviorInfo, true, true);//index=251
  416. bHz2 = GetNo(DataLibType.BehaviorInfo);
  417. bHz3 = GetNo(DataLibType.BehaviorInfo);
  418. bHz4 = GetNo(DataLibType.BehaviorInfo);
  419. bHz5 = GetNo(DataLibType.BehaviorInfo);
  420. bHz6 = GetNo(DataLibType.BehaviorInfo);
  421. bHz7 = GetNo(DataLibType.BehaviorInfo);
  422. bHz8 = GetNo(DataLibType.BehaviorInfo);
  423. bHz9 = GetNo(DataLibType.BehaviorInfo);
  424. bHz10 = GetNo(DataLibType.BehaviorInfo);
  425. bHz11 = GetNo(DataLibType.BehaviorInfo);
  426. bHz12 = GetNo(DataLibType.BehaviorInfo);//index=262
  427. BehaviorCreate(bHz1, "组织开展火灾事故现场扑救", "", "[[火灾,扑救,灭火,扑灭,救火]:100]", "对下级,掌控力", scHz, brYjZx, brXf);
  428. BehaviorCreate(bHz2, "紧急疏散大楼人员,减少人员伤亡", "", "[[人员]:20,[疏散,分散,疏通,解散,撤离]:80]", "对下级,掌控力", scHz, brXf, brGa);
  429. BehaviorCreate(bHz3, "救援被困人群,保障人民群众生命安全", "", "[[救援]:100]", "对下级,掌控力", scHz, brXf);
  430. BehaviorCreate(bHz4, "对现场及相关通道实行交通管制,划定警戒区", "", "[[交通]:30,[管制,管理,控制,管控]:70]", "对下级,掌控力", scHz, brXf, brJt);
  431. BehaviorCreate(bHz5, "迅速处理疏散人群,维持秩序,防范踩踏等衍生事故", "", "[[人员]:30,[疏散,分散,疏通,解散,撤离]:70]", "对下级,掌控力", scHz, brGa, brJt);
  432. BehaviorCreate(bHz6, "及时疏导交通,开辟救援“绿色通道”,保障交通顺畅", "", "[[交通,疏导,疏散,疏通,引导,指导,撤离]:100]", "对下级,掌控力", scHz, brGa, brJt);
  433. BehaviorCreate(bHz7, "负责火灾事故现场的警戒和秩序维持工作,加强治安巡逻", "", "[[治安,秩序,维护,维持]:100]", "对下级,掌控力", scHz, brGa, brJt);
  434. BehaviorCreate(bHz8, "及时赴现场开展医疗救治、疾病预防控制等卫生应急工作", "", "[[医疗,医护,救治,抢救,治疗,急救]:100]", "对下级,掌控力", scHz, brYjZx, brWs);
  435. BehaviorCreate(bHz9, "对现场燃气浓度进行检测并报告", "", "[[燃气]:50,[检测,检查,检测,监测]:50]", "对下级,掌控力", scHz, brXf);
  436. BehaviorCreate(bHz10, "为受灾群众提供生活必需品、住宿等救助,做好安置工作", "", "[[群众,大众,民众]:50,[安置,安抚,安慰]:50]", "对下级,掌控力", scHz, brYjZx);
  437. BehaviorCreate(bHz11, "及时做好火灾事故对外新闻发布和舆情应对工作", "", "[[新闻,信息,讯息,舆情]:50,[宣布,发布,公布,应对,对应]:50]", "对媒体,舆论引导力", scHz, brYjZx);
  438. BehaviorCreate(bHz12, "高层火灾处置成功", "", "[[处置,成功]:100]", "协调力,决策力,研判力,掌控力,舆论引导力", scHz, brXf);
  439. }
  440. private void SceneHz()
  441. {
  442. GetNo(DataLibType.SceneInfo, true, true);//index=351
  443. GetNo(DataLibType.SceneInfo, true, true);//index=401
  444. GetNo(DataLibType.SceneInfo, true, true);//index=451
  445. //index=501
  446. SceneCreate(GetNo(DataLibType.SceneInfo, true, true), "大厦高楼起火", "机场高速@EVENTADDR 下闸道处于创业园区,四周高楼林立。飞机尾翼火势增大,迅速窜向高速旁新源大厦。引燃大厦@EVENTFLOOR 楼一户外纱窗,并在风势助推下,引起室内起火", "[@EVENTADDR:string:胶州路],[@EVENTFLOOR:string:6]", scHz, new List<SceneBehaviorInfo>()
  447. {
  448. new SceneBehaviorInfo()
  449. {
  450. BehaviorNo = bHz1,
  451. BehaviorWeight = 60,
  452. BehaviorEvalType = (int)BehaviorScoreType.Normal
  453. },new SceneBehaviorInfo()
  454. {
  455. BehaviorNo = bHz2,
  456. BehaviorWeight = 30,
  457. BehaviorEvalType = (int)BehaviorScoreType.Normal
  458. },
  459. });
  460. SceneCreate(GetNo(DataLibType.SceneInfo), "火灾引发学校恐慌", "@EVENTBUILDING 为2栋22层人才公寓,大厦右侧紧邻一所涉外小学,火灾引发学生恐慌,现场混乱", "[@EVENTBUILDING:string:新源大厦]", scHz, new List<SceneBehaviorInfo>()
  461. {
  462. new SceneBehaviorInfo()
  463. {
  464. BehaviorNo = bHz2,
  465. BehaviorWeight =100 ,
  466. BehaviorEvalType = (int)BehaviorScoreType.Normal
  467. },
  468. });
  469. SceneCreate(GetNo(DataLibType.SceneInfo), "消防栓水量不足", "由于现场附近2处消防栓水量不足,水柱喷射高度不足,灭火难度加大,随着救火时间延长,伤亡人数不断增加", "", scHz, new List<SceneBehaviorInfo>()
  470. {
  471. new SceneBehaviorInfo()
  472. {
  473. BehaviorNo = bHz1,
  474. BehaviorWeight = 100,
  475. BehaviorEvalType = (int)BehaviorScoreType.Normal
  476. },
  477. });
  478. SceneCreate(GetNo(DataLibType.SceneInfo), "高层火灾处置成功", "火势得到迅速控制,被困人员得到及时救援,现场聚集人员已疏散,高层火灾事件得以妥善处理", "", scHz, new List<SceneBehaviorInfo>()
  479. {
  480. new SceneBehaviorInfo()
  481. {
  482. BehaviorNo = bHz12,
  483. BehaviorWeight = 100,
  484. BehaviorEvalType = (int)BehaviorScoreType.Normal
  485. },
  486. });
  487. }
  488. #endregion
  489. #region GJ
  490. private string bGJ1 { get; set; }
  491. private string bGJ2 { get; set; }
  492. private string bGJ3 { get; set; }
  493. private string bGJ4 { get; set; }
  494. private string bGJ5 { get; set; }
  495. private string bGJ6 { get; set; }
  496. private string bGJ7 { get; set; }
  497. private string bGJ8 { get; set; }
  498. private string bGJ9 { get; set; }
  499. private string bGJ10 { get; set; }
  500. private string bGJ11 { get; set; }
  501. private string bGJ12 { get; set; }
  502. private void BehaviorGj()
  503. {
  504. bGJ1 = GetNo(DataLibType.BehaviorInfo);//index=263
  505. bGJ2 = GetNo(DataLibType.BehaviorInfo);
  506. bGJ3 = GetNo(DataLibType.BehaviorInfo);
  507. bGJ4 = GetNo(DataLibType.BehaviorInfo);
  508. bGJ5 = GetNo(DataLibType.BehaviorInfo);
  509. bGJ6 = GetNo(DataLibType.BehaviorInfo);
  510. bGJ7 = GetNo(DataLibType.BehaviorInfo);
  511. bGJ8 = GetNo(DataLibType.BehaviorInfo);
  512. bGJ9 = GetNo(DataLibType.BehaviorInfo);
  513. bGJ10 = GetNo(DataLibType.BehaviorInfo);
  514. bGJ11 = GetNo(DataLibType.BehaviorInfo);
  515. bGJ12 = GetNo(DataLibType.BehaviorInfo);//index=275
  516. BehaviorCreate(bGJ1, "应急救援,将被困群众转移出危险区域", "", "[[医疗,救治,治疗,救人,救援,援救,抢救,援助]:100]", "对下级,掌控力", scGj, brJt);
  517. BehaviorCreate(bGJ2, "加强隐患排查", "", "[[监管,排险,监察,管理,排查]:100]", "对下级,掌控力", scGj, brJt, brSt);
  518. BehaviorCreate(bGJ3, "及时增加运力,确保人员及时疏散", "", "[[人员]:30,[疏散,分散,疏通,解散,撤离]:70]", "对下级,掌控力", scGj, brSt);
  519. BehaviorCreate(bGJ4, "预设临时接驳车,及时调整公共交通客运方案", "", "[[车辆,乘客]:50,[调配,调集,转运]:50]", "对下级,掌控力", scGj, brJt, brSt);
  520. BehaviorCreate(bGJ5, "及时增派警力,设置交通封控区", "", "[[交通,疏导,疏散,疏通,引导,指导]:100]", "对下级,掌控力", scGj, brJt, brGa);
  521. BehaviorCreate(bGJ6, "开通绿色通道,为应急车辆提供通行保障", "", "[[绿色,通道,应急,通行]:100]", "对下级,掌控力", scGj, brJt);
  522. BehaviorCreate(bGJ7, "", "划定警戒区,做好事发现场及周边环境的保护和警戒", "[[维护,维持,治安,秩序]:100]", "对下级,掌控力", scGj, brJt, brGa);
  523. BehaviorCreate(bGJ8, "严厉打击借机传播谣言、制造社会恐慌等违法犯罪行为", "", "[[打击,抨击]:50,[违法,犯法,犯罪]:50]", "对媒体,舆论引导力", scGj, brGa);
  524. BehaviorCreate(bGJ9, "组织开展设备故障抢修", "", "[[故障,抢修,抢救,修复]:100]", "对下级,掌控力", scGj, brJt, brSt);
  525. BehaviorCreate(bGJ10, "引导乘客撤离事发地点,对相关轨交线路实施分区封控、警戒", "", "[[人员,疏散,分散,疏通,解散,撤离]:100]", "对下级,掌控力", scGj, brJt, brGa);
  526. BehaviorCreate(bGJ11, "协调轨道交通运营突发事件信息发布和舆论引导工作", "", "[[新闻,信息,讯息,舆情]:50,[宣布,发布,公布,应对,对应]:50]", "对媒体,舆论引导力", scGj, brJt);
  527. BehaviorCreate(bGJ12, "轨交大客流处置成功", "", "[[处置,成功]:100]", "协调力,决策力,研判力,掌控力,舆论引导力", scGj, brJt);
  528. }
  529. private void SceneGj()
  530. {
  531. SceneCreate(GetNo(DataLibType.SceneInfo), "列车隧道停运困人", "一列轨交列车在隧道内停运,列车内乘客受困,现场较为混乱,部分乘客情绪激动", "", scGj, new List<SceneBehaviorInfo>()
  532. {
  533. new SceneBehaviorInfo()
  534. {
  535. BehaviorNo = bGJ3,
  536. BehaviorWeight = 100,
  537. BehaviorEvalType = (int)BehaviorScoreType.Normal
  538. },
  539. });
  540. SceneCreate(GetNo(DataLibType.SceneInfo), "滞留乘客持续增加", "由于现场乘客疏散转运不及时,地铁站台人群滞留量持续增加,已超@EVNETNUM 人", "[@EVNETNUM:decimal:3000]", scGj, new List<SceneBehaviorInfo>()
  541. {
  542. new SceneBehaviorInfo()
  543. {
  544. BehaviorNo = bGJ4,
  545. BehaviorWeight = 100,
  546. BehaviorEvalType = (int)BehaviorScoreType.Normal
  547. },
  548. });
  549. SceneCreate(GetNo(DataLibType.SceneInfo), "列车恢复正常运营", "轨道交通 @EVENTSTATION 停运事故已排除,列车恢复正常运营,滞留乘客全部散去,现场秩序恢复正常 ", "[@EVENTSTATION:string:2号线胶州路站]", scGj, new List<SceneBehaviorInfo>()
  550. {
  551. new SceneBehaviorInfo()
  552. {
  553. BehaviorNo = bGJ12,
  554. BehaviorWeight = 100,
  555. BehaviorEvalType = (int)BehaviorScoreType.Normal
  556. },
  557. });
  558. SceneCreate(GetNo(DataLibType.SceneInfo), "晕倒受伤", "由于人员密集,@NUMFAINT 位老人在地铁人员疏散过程中晕倒受伤", "[@NUMFAINT:decimal:5]", scGj, new List<SceneBehaviorInfo>()
  559. {
  560. new SceneBehaviorInfo()
  561. {
  562. BehaviorNo = bGJ1,
  563. BehaviorWeight = 100,
  564. BehaviorEvalType = (int)BehaviorScoreType.Normal
  565. },
  566. });
  567. SceneCreate(GetNo(DataLibType.SceneInfo), "现场发生踩踏事件", "由于现场拥挤,一名乘客不慎摔倒引发乘客奔跑踩踏,事故造成5人不同程度受伤", "", scGj, new List<SceneBehaviorInfo>()
  568. {
  569. new SceneBehaviorInfo()
  570. {
  571. BehaviorNo = bGJ2,
  572. BehaviorWeight = 100,
  573. BehaviorEvalType = (int)BehaviorScoreType.Normal
  574. },
  575. });
  576. }
  577. #endregion
  578. #region WHP
  579. private string bWh1 { get; set; }
  580. private string bWh2 { get; set; }
  581. private string bWh3 { get; set; }
  582. private string bWh4 { get; set; }
  583. private string bWh5 { get; set; }
  584. private string bWh6 { get; set; }
  585. private string bWh7 { get; set; }
  586. private string bWh8 { get; set; }
  587. private string bWh9 { get; set; }
  588. private string bWh10 { get; set; }
  589. private string bWh11 { get; set; }
  590. private string bWh12 { get; set; }
  591. private string bWh13 { get; set; }
  592. private string bWh14 { get; set; }
  593. private string bWh15 { get; set; }
  594. private void BehaviorWhp()
  595. {
  596. bWh1 = GetNo(DataLibType.BehaviorInfo);//index=276
  597. bWh2 = GetNo(DataLibType.BehaviorInfo);
  598. bWh3 = GetNo(DataLibType.BehaviorInfo);
  599. bWh4 = GetNo(DataLibType.BehaviorInfo);
  600. bWh5 = GetNo(DataLibType.BehaviorInfo);
  601. bWh6 = GetNo(DataLibType.BehaviorInfo);
  602. bWh7 = GetNo(DataLibType.BehaviorInfo);
  603. bWh8 = GetNo(DataLibType.BehaviorInfo);
  604. bWh9 = GetNo(DataLibType.BehaviorInfo);
  605. bWh10 = GetNo(DataLibType.BehaviorInfo);
  606. bWh11 = GetNo(DataLibType.BehaviorInfo);
  607. bWh12 = GetNo(DataLibType.BehaviorInfo);
  608. bWh13 = GetNo(DataLibType.BehaviorInfo);
  609. bWh14 = GetNo(DataLibType.BehaviorInfo);
  610. bWh15 = GetNo(DataLibType.BehaviorInfo);//index=291
  611. BehaviorCreate(bWh1, "调集危化品专家赶赴现场", "", "[[调集,调配,集结]:50,[专家,行家]:50]", "对下级,掌控力", scWhp, brAj);
  612. BehaviorCreate(bWh2, "调集危化品检测设备和特种车辆设备赶赴现场", "", "[[调集,调配,集中]:50,[设备,装备]:50]", "对下级,掌控力", scWhp, brAj);
  613. BehaviorCreate(bWh3, "查明泄漏危化品品种,获取有关安全、卫生与环境信息", "", "[[查明,调查,明确]:50,[品种,种类]:50]", "对下级,掌控力", scWhp, brAj, brHb);
  614. BehaviorCreate(bWh4, "迅速汇总和掌握相关事件信息,及时向应急救援指挥部报告", "", "[[信息,讯息,汇报]:50,[报告,上报,报送]:50]", "对下级,掌控力", scWhp, brAj);
  615. BehaviorCreate(bWh5, "组织周边群众紧急疏散", "", "[[紧急,疏散,疏通,分散]:100]", "对下级,掌控力", scWhp, brGa);
  616. BehaviorCreate(bWh6, "安抚群众情绪", "", "[[情绪,心情,情感]:20,[安抚,安慰,慰问]:80]", "对下级,掌控力", scWhp, brAj);
  617. BehaviorCreate(bWh7, "调查事故车辆及逃逸驾驶员信息", "", "[[调查,侦查,侦察]:100]", "对下级,掌控力", scWhp, brGa);
  618. BehaviorCreate(bWh8, "加强交通管制,开辟“绿色通道”,确保特殊车辆和设备进场", "", "[[交通,管制,管理,控制,管控]:100]", "对下级,掌控力", scWhp, brGa, brJt);
  619. BehaviorCreate(bWh9, "紧急封锁事故现场,迅速疏散现场人群,维护现场秩序", "", "[[封锁,封查,现场,人员,疏散,分散,疏通,解散]:100]", "对下级,掌控力", scWhp, brGa, brJt);
  620. BehaviorCreate(bWh10, "发生有毒或易燃蒸气泄漏,在确定水气接触安全的前提下,建立水幕、排除火种", "", "[[排除,排查,消除,清除,火种]:100]", "对下级,掌控力,研判力", scWhp, brXf);
  621. BehaviorCreate(bWh11, "实施堵漏、转移、中和等措施,必要时实施紧急隔离和防范", "", "[[隔离,隔绝,隔开,隔断,分割,防范,防备,防御]:100]", "对下级,掌控力,研判力", scWhp, brXf);
  622. BehaviorCreate(bWh12, "危险化学品事故现场的应急环境监测", "", "[[环境,监测,监管,监控,观测,观察]:100]", "对下级,掌控力,研判力", scWhp, brHb);
  623. BehaviorCreate(bWh13, "测算危险化学品事故大气环境污染物扩散结果", "", "[[污染,测算,计算,测量]:100]", "对下级,掌控力,研判力", scWhp, brHb);
  624. BehaviorCreate(bWh14, "协助事发地所在区政府开展人员疏散工作", "", "[[人员,疏散,分散,疏通]:100]", "对下级,掌控力,研判力", scWhp, brAj);
  625. BehaviorCreate(bWh15, "危化品事故处置成功", "", "[[处置,成功]:100]", "协调力,决策力,研判力,掌控力,舆论引导力", scWhp, brAj);
  626. }
  627. private void SceneWhp()
  628. {
  629. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品泄露居民中毒", "由于泄露危化品控制不当,导致周边居民出现不同程度中毒现象,目前已有2人昏迷、5人呕吐", "", scWhp, new List<SceneBehaviorInfo>()
  630. {
  631. new SceneBehaviorInfo()
  632. {
  633. BehaviorNo = bWh1,
  634. BehaviorWeight = 100,
  635. BehaviorEvalType = (int)BehaviorScoreType.Normal
  636. },
  637. });
  638. SceneCreate(GetNo(DataLibType.SceneInfo), "处置不当引发罐体爆炸", "因现场危化品特种设备操作不当,造成危险化学品大量泄漏,现场出现白色浓雾,随即引发车辆罐体爆炸,多名现场人员伤亡", "", scWhp, new List<SceneBehaviorInfo>()
  639. {
  640. new SceneBehaviorInfo()
  641. {
  642. BehaviorNo = bWh2,
  643. BehaviorWeight = 100,
  644. BehaviorEvalType = (int)BehaviorScoreType.Normal
  645. },
  646. });
  647. SceneCreate(GetNo(DataLibType.SceneInfo), "非主流媒体虚假报道", "微博、朋友圈等非主流媒体出现大量虚假报道,夸大伤亡人数,网上认为“政府不作为”“视老百姓生命为蝼蚁”骂声一片", "", scWhp, new List<SceneBehaviorInfo>()
  648. {
  649. new SceneBehaviorInfo()
  650. {
  651. BehaviorNo = bWh6,
  652. BehaviorWeight = 100,
  653. BehaviorEvalType = (int)BehaviorScoreType.Normal
  654. },
  655. });
  656. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品事故处置完成", "危化品泄漏事件已得到有效控制,爆炸火灾已扑灭,现场人员疏散救治完毕,周边卫生与环境检测状况正常", "", scWhp, new List<SceneBehaviorInfo>()
  657. {
  658. new SceneBehaviorInfo()
  659. {
  660. BehaviorNo = bWh15,
  661. BehaviorWeight = 100,
  662. BehaviorEvalType = (int)BehaviorScoreType.Normal
  663. },
  664. });
  665. SceneCreate(GetNo(DataLibType.SceneInfo), "化工产品运输车侧翻", "@EVENTTIME,受台风影响,风势、雨势渐大,机场高速@EVENTADDR出现5车连撞事故,事故起因为一辆外地牌照大型化工产品运输车由于天雨路滑,造成车体侧翻,现场飘散出刺激性气味", "[@EVENTTIME:string:5点50分],[@EVENTADDR:string:胶州路段]", scWhp, new List<SceneBehaviorInfo>()
  666. {
  667. new SceneBehaviorInfo()
  668. {
  669. BehaviorNo = bWh1,
  670. BehaviorWeight = 100,
  671. BehaviorEvalType = (int)BehaviorScoreType.Normal
  672. },
  673. });
  674. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景1", "危化品情景1 @WHPVAR1", "[@WHPVAR1:string:11]", scWhp, new List<SceneBehaviorInfo>()
  675. {
  676. new SceneBehaviorInfo()
  677. {
  678. BehaviorNo = bWh1,
  679. BehaviorWeight = 100,
  680. BehaviorEvalType = (int)BehaviorScoreType.Normal
  681. },
  682. });
  683. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景2", "危化品情景2 @WHPVAR2", "[@WHPVAR2:string:222]", scWhp, new List<SceneBehaviorInfo>()
  684. {
  685. new SceneBehaviorInfo()
  686. {
  687. BehaviorNo = bWh2,
  688. BehaviorWeight = 100,
  689. BehaviorEvalType = (int)BehaviorScoreType.Normal
  690. },
  691. });
  692. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景3", "危化品情景3 @WHPVAR3", "[@WHPVAR3:string:333]", scWhp, new List<SceneBehaviorInfo>()
  693. {
  694. new SceneBehaviorInfo()
  695. {
  696. BehaviorNo = bWh3,
  697. BehaviorWeight = 100,
  698. BehaviorEvalType = (int)BehaviorScoreType.Normal
  699. },
  700. });
  701. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景4", "危化品情景4", "", scWhp, new List<SceneBehaviorInfo>()
  702. {
  703. new SceneBehaviorInfo()
  704. {
  705. BehaviorNo = bWh4,
  706. BehaviorWeight = 40,
  707. BehaviorEvalType = (int)BehaviorScoreType.Normal
  708. },new SceneBehaviorInfo()
  709. {
  710. BehaviorNo = bWh9,
  711. BehaviorWeight = 60,
  712. BehaviorEvalType = (int)BehaviorScoreType.Normal
  713. },
  714. });
  715. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景5", "危化品情景5", "", scWhp, new List<SceneBehaviorInfo>()
  716. {
  717. new SceneBehaviorInfo()
  718. {
  719. BehaviorNo = bWh5,
  720. BehaviorWeight = 70,
  721. BehaviorEvalType = (int)BehaviorScoreType.Normal
  722. },
  723. new SceneBehaviorInfo()
  724. {
  725. BehaviorNo = bWh10,
  726. BehaviorWeight = 30,
  727. BehaviorEvalType = (int)BehaviorScoreType.Normal
  728. },
  729. });
  730. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景6", "危化品情景6", "", scWhp, new List<SceneBehaviorInfo>()
  731. {
  732. new SceneBehaviorInfo()
  733. {
  734. BehaviorNo = bWh6,
  735. BehaviorWeight = 100,
  736. BehaviorEvalType = (int)BehaviorScoreType.Normal
  737. },
  738. });
  739. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景7", "危化品情景7", "", scWhp, new List<SceneBehaviorInfo>()
  740. {
  741. new SceneBehaviorInfo()
  742. {
  743. BehaviorNo = bWh7,
  744. BehaviorWeight = 100,
  745. BehaviorEvalType = (int)BehaviorScoreType.Normal
  746. },
  747. });
  748. SceneCreate(GetNo(DataLibType.SceneInfo), "危化品情景8", "危化品情景8", "", scWhp, new List<SceneBehaviorInfo>()
  749. {
  750. new SceneBehaviorInfo()
  751. {
  752. BehaviorNo = bWh8,
  753. BehaviorWeight = 100,
  754. BehaviorEvalType = (int)BehaviorScoreType.Normal
  755. },
  756. });
  757. }
  758. #endregion
  759. #region TD
  760. private string bTd1 { get; set; }
  761. private string bTd2 { get; set; }
  762. private string bTd3 { get; set; }
  763. private string bTd4 { get; set; }
  764. private string bTd5 { get; set; }
  765. private string bTd6 { get; set; }
  766. private string bTd7 { get; set; }
  767. private string bTd8 { get; set; }
  768. private string bTd9 { get; set; }
  769. private string bTd10 { get; set; }
  770. private string bTd11 { get; set; }
  771. private string bTd12 { get; set; }
  772. private string bTd13 { get; set; }
  773. private void BehaviorTd()
  774. {
  775. bTd1 = GetNo(DataLibType.BehaviorInfo);//index=292
  776. bTd2 = GetNo(DataLibType.BehaviorInfo);
  777. bTd3 = GetNo(DataLibType.BehaviorInfo);
  778. bTd4 = GetNo(DataLibType.BehaviorInfo);
  779. bTd5 = GetNo(DataLibType.BehaviorInfo);
  780. bTd6 = GetNo(DataLibType.BehaviorInfo);
  781. bTd7 = GetNo(DataLibType.BehaviorInfo);
  782. bTd8 = GetNo(DataLibType.BehaviorInfo);
  783. bTd9 = GetNo(DataLibType.BehaviorInfo);
  784. bTd10 = GetNo(DataLibType.BehaviorInfo);
  785. bTd11 = GetNo(DataLibType.BehaviorInfo);
  786. bTd12 = GetNo(DataLibType.BehaviorInfo);
  787. bTd13 = GetNo(DataLibType.BehaviorInfo);//index=305
  788. BehaviorCreate(bTd1, "成立现场指挥部,赶赴现场指导应急处置工作", "", "[[当场,指挥部,现场,指导,指示,领导]:100]", "对下级,掌控力,决策力,对相关单位,协调力,主动发声", scTd, brDl, brYjZx);
  789. BehaviorCreate(bTd2, "及时组织有关部门和单位、专家组进行会商,分析研判事件发展情况", "", "[[会商,研讨,讨论,商讨,协商]:100]", "对相关单位,研判力,决策力,协调力", scTd, brDl, brYjZx);
  790. BehaviorCreate(bTd3, "", "", "[[协调,调和,协助]:60,[电网,电厂,用户,机组]:40]", "对下级,掌控力", scTd, brDl);
  791. BehaviorCreate(bTd4, "协调电网、电厂、用户之间的电气操作、机组启动、用电恢复,保证电网安全稳定,并留有必要余度", "", "[[协调,调和,协助]:60,[电网,电厂,用户,机组]:40]", "对相关单位,协调力,对下级,对上级", scTd, brDl);
  792. BehaviorCreate(bTd5, "组织电力抢修", "", "[[电力,抢修,抢救,修复]:100]", "对下级,掌控力,对相关单位,决策力,研判力", scTd, brDl);
  793. BehaviorCreate(bTd6, "恢复电网运行和电力供应", "", "[[恢复,供电,电力,供应,运行]:100]", "对下级,掌控力,对上级,对媒体,舆论引导力", scTd, brDl);
  794. BehaviorCreate(bTd7, "及时增派警力,加强现场治安维护,采取隔离警戒等措施,加强巡逻防范", "", "[[治安,秩序,维护,维持]:100]", "对下级,掌控力,决策力,舆论引导力", scTd, brGa);
  795. BehaviorCreate(bTd8, "及时增派警力,加强交通疏导,向社会发布交通指引信息", "", "[[交通,疏导,疏散,疏通,引导,指导]:100]", "对下级,掌控力,决策力,对媒体,舆论引导力", scTd, brGa, brYjZx);
  796. BehaviorCreate(bTd9, "及时发布事件相关信息,做好舆情追踪收集,回应社会关切", "", "[[发布,公布,宣布,讯息,信息,舆情,追踪,跟踪]:100]", "对媒体,决策力,舆论引导力,对下级,对上级", scTd, brYjZx);
  797. BehaviorCreate(bTd10, "指导和协调相关部门做好大面积停电事件的信息发布、舆情引导等工作", "", "[[发布,公布,宣布,讯息,信息,舆情,引导,指引]:100]", "对媒体,决策力,舆论引导力,对下级,协调力", scTd, brYjZx);
  798. BehaviorCreate(bTd11, "及时开展受困群众的救援工作,将被困群众转移出危险区域", "", "[[群众,救援,救助,援救]:100]", "对下级,掌控力,对相关单位,协调力,研判力,控制事态", scTd, brYjZx);
  799. BehaviorCreate(bTd12, "加强大面积停电区域内的隐患排查,对可能引起爆燃事故的重点单位和部位进行监管排险", "", "[[隐患,祸患,排查,检查,监管,监控,排险,排除]:100]", "对下级,掌控力,对媒体,决策力,舆论引导力", scTd, brYjZx, brDl);
  800. BehaviorCreate(bTd13, "大面积停电处置成功", "", "[[处置,成功]:100]", "协调力,决策力,研判力,掌控力,舆论引导力", scTd, brDl);
  801. }
  802. private void SceneTd()
  803. {
  804. SceneCreate(GetNo(DataLibType.SceneInfo), "地区大面积停电", "飞机迫降过程中,螺旋桨拉断@EVENTADDR架空线路,@EVENTADDR地区附近商场、小区、交通信号、轨道交通等造成大面积停电", "[@EVENTADDR:string:胶州路]", scTd, new List<SceneBehaviorInfo>()
  805. {
  806. new SceneBehaviorInfo()
  807. {
  808. BehaviorNo = bTd1,
  809. BehaviorWeight = 100,
  810. BehaviorEvalType = (int)BehaviorScoreType.Normal
  811. },
  812. new SceneBehaviorInfo()
  813. {
  814. BehaviorNo = bTd2,
  815. BehaviorWeight = 100,
  816. BehaviorEvalType = (int)BehaviorScoreType.Normal
  817. },
  818. new SceneBehaviorInfo()
  819. {
  820. BehaviorNo = bTd12,
  821. BehaviorWeight = 100,
  822. BehaviorEvalType = (int)BehaviorScoreType.Normal
  823. },
  824. });
  825. SceneCreate(GetNo(DataLibType.SceneInfo), "停电造成人员困入电梯", "大厦受停电影响,@NUMSTOP 部电梯暂时停运,有@NUMTRAP 人被困于电梯中,被困人员情绪激动", "[@NUMSTOP:decimal:2],[@NUMTRAP:decimal:6]", scTd, new List<SceneBehaviorInfo>()
  826. {
  827. new SceneBehaviorInfo()
  828. {
  829. BehaviorNo = bTd2,
  830. BehaviorWeight = 100,
  831. BehaviorEvalType = (int)BehaviorScoreType.Normal
  832. },
  833. new SceneBehaviorInfo()
  834. {
  835. BehaviorNo = bTd10,
  836. BehaviorWeight = 100,
  837. BehaviorEvalType = (int)BehaviorScoreType.Normal
  838. },
  839. new SceneBehaviorInfo()
  840. {
  841. BehaviorNo = bTd11,
  842. BehaviorWeight = 100,
  843. BehaviorEvalType = (int)BehaviorScoreType.Normal
  844. },
  845. });
  846. SceneCreate(GetNo(DataLibType.SceneInfo), "长时间停电造成交通拥堵", "大面积停电持续时间已经超过1小时,接近下班高峰,交通信号未能恢复,路面交通已拥堵近500米", "", scTd, new List<SceneBehaviorInfo>()
  847. {
  848. new SceneBehaviorInfo()
  849. {
  850. BehaviorNo = bTd1,
  851. BehaviorWeight = 100,
  852. BehaviorEvalType = (int)BehaviorScoreType.Normal
  853. }, new SceneBehaviorInfo()
  854. {
  855. BehaviorNo = bTd8,
  856. BehaviorWeight = 100,
  857. BehaviorEvalType = (int)BehaviorScoreType.Normal
  858. }
  859. });
  860. SceneCreate(GetNo(DataLibType.SceneInfo), "大面积停电处置成功", "电网主干网架基本恢复正常接线方式,电网运行参数保持在稳定限额之内,停电负荷恢复90%以上,大面积停电事件造成的重特大次生衍生事故基本处置完成", "", scTd, new List<SceneBehaviorInfo>()
  861. {
  862. new SceneBehaviorInfo()
  863. {
  864. BehaviorNo = bTd13,
  865. BehaviorWeight = 100,
  866. BehaviorEvalType = (int)BehaviorScoreType.Normal
  867. },
  868. });
  869. SceneCreate(GetNo(DataLibType.SceneInfo), "调度自动化系统故障事件", "大面积停电期间,市电力公司调度自动化系统SCADA功能全部丧失,调度指挥功能基本瘫痪", "", scTd, new List<SceneBehaviorInfo>()
  870. {
  871. new SceneBehaviorInfo()
  872. {
  873. BehaviorNo = bTd1,
  874. BehaviorWeight = 100,
  875. BehaviorEvalType = (int)BehaviorScoreType.Normal
  876. },
  877. new SceneBehaviorInfo()
  878. {
  879. BehaviorNo = bTd2,
  880. BehaviorWeight = 100,
  881. BehaviorEvalType = (int)BehaviorScoreType.Normal
  882. },
  883. });
  884. SceneCreate(GetNo(DataLibType.SceneInfo), "重要保电事件", "大面积停电时恰逢上海市举办某重大国际峰会,会议由某国家领导人主持,多国政要及经济领域友人出席,停电造成现场混乱", "", scTd, new List<SceneBehaviorInfo>()
  885. {
  886. new SceneBehaviorInfo()
  887. {
  888. BehaviorNo = bTd8,
  889. BehaviorWeight = 100,
  890. BehaviorEvalType = (int)BehaviorScoreType.Normal
  891. },
  892. });
  893. SceneCreate(GetNo(DataLibType.SceneInfo), "工程项目建设安全质量事故事件", "事发区域内,公司投资建设的某工程项目发生安全事故,现场发生爆炸并引发火灾,设施设备损坏严重,经济损失巨大", "", scTd, new List<SceneBehaviorInfo>()
  894. {
  895. new SceneBehaviorInfo()
  896. {
  897. BehaviorNo = bTd1,
  898. BehaviorWeight = 100,
  899. BehaviorEvalType = (int)BehaviorScoreType.Normal
  900. },
  901. new SceneBehaviorInfo()
  902. {
  903. BehaviorNo = bTd2,
  904. BehaviorWeight = 100,
  905. BehaviorEvalType = (int)BehaviorScoreType.Normal
  906. },
  907. new SceneBehaviorInfo()
  908. {
  909. BehaviorNo = bTd4,
  910. BehaviorWeight = 100,
  911. BehaviorEvalType = (int)BehaviorScoreType.Normal
  912. },
  913. });
  914. SceneCreate(GetNo(DataLibType.SceneInfo), "新闻突发事件", "事件引发上海市各大主要媒体的关注与传播,非主流媒体也出现大量负面报道,对公司品牌形象造成重大损害", "", scTd, new List<SceneBehaviorInfo>()
  915. {
  916. new SceneBehaviorInfo()
  917. {
  918. BehaviorNo = bTd9,
  919. BehaviorWeight = 100,
  920. BehaviorEvalType = (int)BehaviorScoreType.Normal
  921. }, new SceneBehaviorInfo()
  922. {
  923. BehaviorNo = bTd10,
  924. BehaviorWeight = 100,
  925. BehaviorEvalType = (int)BehaviorScoreType.Normal
  926. },
  927. });
  928. SceneCreate(GetNo(DataLibType.SceneInfo), "电力服务事件", "大面积停电期间,政府有关部门受理用电客户投诉数量激增,对公司电力服务质量造成重大影响", "", scTd, new List<SceneBehaviorInfo>()
  929. {
  930. new SceneBehaviorInfo()
  931. {
  932. BehaviorNo = bTd9,
  933. BehaviorWeight = 100,
  934. BehaviorEvalType = (int)BehaviorScoreType.Normal
  935. },
  936. new SceneBehaviorInfo()
  937. {
  938. BehaviorNo = bTd6,
  939. BehaviorWeight = 100,
  940. BehaviorEvalType = (int)BehaviorScoreType.Normal
  941. },
  942. });
  943. SceneCreate(GetNo(DataLibType.SceneInfo), "突发群体事件", "市电力公司总部发生群众非法集会、聚众滋事事件,参与集会群众超过@NUMGATHERING 人,严重影响公司正常生产秩序和社会稳定", "[@NUMGATHERING:decimal:50]", scTd, new List<SceneBehaviorInfo>()
  944. {
  945. new SceneBehaviorInfo()
  946. {
  947. BehaviorNo = bTd10,
  948. BehaviorWeight = 100,
  949. BehaviorEvalType = (int)BehaviorScoreType.Normal
  950. },
  951. });
  952. SceneCreate(GetNo(DataLibType.SceneInfo), "涉外突发事件", "国际峰会现场受伤人员中包含1名应公司邀请来华访问的外籍人员,该人员受伤严重,已紧急送往医院治疗", "", scTd, new List<SceneBehaviorInfo>()
  953. {
  954. new SceneBehaviorInfo()
  955. {
  956. BehaviorNo = bTd12,
  957. BehaviorWeight = 100,
  958. BehaviorEvalType = (int)BehaviorScoreType.Normal
  959. },
  960. new SceneBehaviorInfo()
  961. {
  962. BehaviorNo = bTd11,
  963. BehaviorWeight = 100,
  964. BehaviorEvalType = (int)BehaviorScoreType.Normal
  965. },
  966. new SceneBehaviorInfo()
  967. {
  968. BehaviorNo = bTd4,
  969. BehaviorWeight = 100,
  970. BehaviorEvalType = (int)BehaviorScoreType.Normal
  971. },
  972. new SceneBehaviorInfo()
  973. {
  974. BehaviorNo = bTd10,
  975. BehaviorWeight = 100,
  976. BehaviorEvalType = (int)BehaviorScoreType.Normal
  977. },
  978. });
  979. SceneCreate(GetNo(DataLibType.SceneInfo), "人身伤亡事件", "工程项目安全事故造成@NUMDEATH 人死亡、@NUMINJURE 人重伤", "", scTd, new List<SceneBehaviorInfo>()
  980. {
  981. new SceneBehaviorInfo()
  982. {
  983. BehaviorNo = bTd12,
  984. BehaviorWeight = 100,
  985. BehaviorEvalType = (int)BehaviorScoreType.Normal
  986. },
  987. new SceneBehaviorInfo()
  988. {
  989. BehaviorNo = bTd2,
  990. BehaviorWeight = 100,
  991. BehaviorEvalType = (int)BehaviorScoreType.Normal
  992. },
  993. new SceneBehaviorInfo()
  994. {
  995. BehaviorNo = bTd4,
  996. BehaviorWeight = 100,
  997. BehaviorEvalType = (int)BehaviorScoreType.Normal
  998. },
  999. });
  1000. }
  1001. #endregion
  1002. #region FX
  1003. private string bFx1 { get; set; }
  1004. private string bFx2 { get; set; }
  1005. private string bFx3 { get; set; }
  1006. private string bFx4 { get; set; }
  1007. private string bFx5 { get; set; }
  1008. private string bFx6 { get; set; }
  1009. private string bFx7 { get; set; }
  1010. private string bFx8 { get; set; }
  1011. private void BehaviorFx()
  1012. {
  1013. bFx1 = GetNo(DataLibType.BehaviorInfo);//index=306
  1014. bFx2 = GetNo(DataLibType.BehaviorInfo);
  1015. bFx3 = GetNo(DataLibType.BehaviorInfo);
  1016. bFx4 = GetNo(DataLibType.BehaviorInfo);
  1017. bFx5 = GetNo(DataLibType.BehaviorInfo);
  1018. bFx6 = GetNo(DataLibType.BehaviorInfo);
  1019. bFx7 = GetNo(DataLibType.BehaviorInfo);
  1020. bFx8 = GetNo(DataLibType.BehaviorInfo);//index=314
  1021. BehaviorCreate(bFx1, "组织会商", "", "[[会商,研讨,讨论,商讨,协商]:100]", "对相关单位,决策力,协调力", scFx, brFx, brYjZx);
  1022. BehaviorCreate(bFx2, "加强汛情监测,密切关注汛情变化", "", "[[汛情,监测,关注,观察]:100]", "对下级,研判力", scFx, brFx, brSw);
  1023. BehaviorCreate(bFx3, "及时向防汛指挥部报告", "", "[[信息,报告,汇报,上报]:50,[防汛指挥部,指挥中心]:50]", "对上级,研判力", scFx, brFx);
  1024. BehaviorCreate(bFx4, "调集、筹措、运输应急处置和救援所需物资及设备", "", "[[物资,调集,运输,调配,运送]:100]", "对下级,掌控力", scFx, brFxJxWzZc);
  1025. BehaviorCreate(bFx5, "加强一线海塘、江堤、防汛墙和水闸、泵站等设施的安全巡查", "", "[[安全,巡查,巡逻,检查]:100]", "对下级,掌控力", scFx, brFx);
  1026. BehaviorCreate(bFx6, "按照职责做好防台风应急准备工作,停止露天集体活动和高空等户外危险作业", "", "[[停止,危险,作业,禁止,高危,操作]:100]", "对下级,掌控力", scFx, brFx);
  1027. BehaviorCreate(bFx7, "督促船只进港避风或者绕道航行、海上作业及近海养殖人员上岸避险", "", "[[船只,避风,绕道航行,人员避险]:100]", "对下级,掌控力", scFx, brFx);
  1028. BehaviorCreate(bFx8, "防台防汛处置成功", "", "[[处置,成功]:10,[防台防汛]:50]", "协调力,决策力,研判力,掌控力,舆论引导力", scFx, brFx);
  1029. }
  1030. private void SceneFx()
  1031. {
  1032. SceneCreate(GetNo(DataLibType.SceneInfo), "台风亚马逊", "@EVENTTIME,气象部门发布暴雨、台风黄色警报,第15号台风“亚马逊”将抵达东海东南部海面,风圈笼罩@EVENTADDR,风力8级,阵风9~10级,有大到暴雨", "[@EVENTTIME:string:2020年10月8日],[@EVENTADDR:string:上海]", scFx, new List<SceneBehaviorInfo>()
  1033. {
  1034. new SceneBehaviorInfo()
  1035. {
  1036. BehaviorNo = bFx1,
  1037. BehaviorWeight = 100,
  1038. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1039. },
  1040. new SceneBehaviorInfo()
  1041. {
  1042. BehaviorNo = bFx2,
  1043. BehaviorWeight = 100,
  1044. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1045. },
  1046. });
  1047. SceneCreate(GetNo(DataLibType.SceneInfo), "防台防汛情景1", "防台防汛情景1 @FTFXVAR1", "[@FTFXVAR1:string:111]", scFx, new List<SceneBehaviorInfo>()
  1048. {
  1049. new SceneBehaviorInfo()
  1050. {
  1051. BehaviorNo = bFx1,
  1052. BehaviorWeight = 100,
  1053. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1054. },
  1055. });
  1056. SceneCreate(GetNo(DataLibType.SceneInfo), "防台防汛情景2", "防台防汛情景2 @FTFXVAR2", "[@FTFXVAR2:string:222]", scFx, new List<SceneBehaviorInfo>()
  1057. {
  1058. new SceneBehaviorInfo()
  1059. {
  1060. BehaviorNo = bFx2,
  1061. BehaviorWeight = 100,
  1062. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1063. },
  1064. });
  1065. SceneCreate(GetNo(DataLibType.SceneInfo), "防台防汛情景3", "防台防汛情景3 @FTFXVAR3", "[@FTFXVAR3:string:33333]", scFx, new List<SceneBehaviorInfo>()
  1066. {
  1067. new SceneBehaviorInfo()
  1068. {
  1069. BehaviorNo = bFx3,
  1070. BehaviorWeight = 100,
  1071. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1072. },
  1073. });
  1074. SceneCreate(GetNo(DataLibType.SceneInfo), "防台防汛情景4", "防台防汛情景4 @FTFXVAR4", "[@FTFXVAR4:string:44444]", scFx, new List<SceneBehaviorInfo>()
  1075. {
  1076. new SceneBehaviorInfo()
  1077. {
  1078. BehaviorNo = bFx4,
  1079. BehaviorWeight = 100,
  1080. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1081. },
  1082. });
  1083. SceneCreate(GetNo(DataLibType.SceneInfo), "防台防汛情景5", "防台防汛情景5 @FTFXVAR5", "[@FTFXVAR5:string:5555]", scFx, new List<SceneBehaviorInfo>()
  1084. {
  1085. new SceneBehaviorInfo()
  1086. {
  1087. BehaviorNo = bFx5,
  1088. BehaviorWeight = 100,
  1089. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1090. },
  1091. });
  1092. SceneCreate(GetNo(DataLibType.SceneInfo), "防台防汛情景6", "防台防汛情景6", "", scFx, new List<SceneBehaviorInfo>()
  1093. {
  1094. new SceneBehaviorInfo()
  1095. {
  1096. BehaviorNo = bFx6,
  1097. BehaviorWeight = 100,
  1098. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1099. },
  1100. });
  1101. }
  1102. #endregion
  1103. #region PJ
  1104. private string bPj1 { get; set; }
  1105. private string bPj2 { get; set; }
  1106. private string bPj3 { get; set; }
  1107. private string bPj4 { get; set; }
  1108. private string bPj5 { get; set; }
  1109. private string bPj6 { get; set; }
  1110. private string bPj7 { get; set; }
  1111. private string bPj8 { get; set; }
  1112. private string bPj9 { get; set; }
  1113. private string bPj10 { get; set; }
  1114. private string bPj11 { get; set; }
  1115. private string bPj12 { get; set; }
  1116. private string bPj13 { get; set; }
  1117. private void BehaviorPj()
  1118. {
  1119. bPj1 = GetNo(DataLibType.BehaviorInfo);//index=315
  1120. bPj2 = GetNo(DataLibType.BehaviorInfo);
  1121. bPj3 = GetNo(DataLibType.BehaviorInfo);
  1122. bPj4 = GetNo(DataLibType.BehaviorInfo);
  1123. bPj5 = GetNo(DataLibType.BehaviorInfo);
  1124. bPj6 = GetNo(DataLibType.BehaviorInfo);
  1125. bPj7 = GetNo(DataLibType.BehaviorInfo);
  1126. bPj8 = GetNo(DataLibType.BehaviorInfo);
  1127. bPj9 = GetNo(DataLibType.BehaviorInfo);
  1128. bPj10 = GetNo(DataLibType.BehaviorInfo);
  1129. bPj11 = GetNo(DataLibType.BehaviorInfo);
  1130. bPj12 = GetNo(DataLibType.BehaviorInfo);
  1131. bPj13 = GetNo(DataLibType.BehaviorInfo);//index=328
  1132. BehaviorCreate(bPj1, "第一时间赶赴现场实施先期处置,尽最大可能控制事态发展", "", "[[先期,处置,前期,处理,安置]:100]", "对下级,掌控力", scPj, brYjZx);
  1133. BehaviorCreate(bPj2, "及时将地面受影响人员撤离、疏散到安全区域,安抚群众情绪", "", "[[人员,疏散,撤离,安抚,解散]:100]", "对下级,掌控力", scPj, brYjZx);
  1134. BehaviorCreate(bPj3, "协助市消防局救助机上及地面受伤人员和幸存人员", "", "[[医疗,救治,治疗,救人,救援,援救,抢救,援助]:100]", "对下级,掌控力", scPj, brYjZx);
  1135. BehaviorCreate(bPj4, "及时收集、汇总和研判事故有关信息,向应急处置指挥部报告或提出支援请求", "", "[[信息,研判,研讨,讨论,商讨,协商,报告,上报,汇报]:100]", "对上级,研判力", scPj, brYjZx);
  1136. BehaviorCreate(bPj5, "迅速赶赴现场开展受伤人员和幸存人员搜救", "", "[[人员,搜查,搜寻,搜救,救援,援救,抢救]:100]", "对下级,掌控力", scPj, brYjZx, brGa);
  1137. BehaviorCreate(bPj6, "及时组织开展火灾扑救", "", "[[灭火,扑灭,扑救,救火]:100]", "对下级,掌控力", scPj, brXf);
  1138. BehaviorCreate(bPj7, "实施交通管制,开辟“绿色通道”,保障救援车辆通行", "", "[[交通,管制,管理,控制,管控]:100]", "对下级,掌控力", scPj, brYjZx);
  1139. BehaviorCreate(bPj8, "紧急封锁事故现场,迅速疏散现场人群,维护现场秩序", "", "[[人员,疏散,分散,疏通,解散,撤离]:100]", "对下级,掌控力", scPj, brGa);
  1140. BehaviorCreate(bPj9, "及时、主动提供事故航空器相关资料,为研究制定救援和处置方案提供依据", "", "[[提供,资料,供应,方案,材料]:100]", "对下级,掌控力,对相关单位,研判力,协调力", scPj, brYjZx);
  1141. BehaviorCreate(bPj10, "组织协调航空器专家研讨,支撑事故救援工作", "", "[[协调,协作,调和,专家,组织]:100]", "对相关单位,研判力,决策力,协调力", scPj, brYjZx);
  1142. BehaviorCreate(bPj11, "协调提供航班货运清单,支撑灭火救援工作", "", "[[货运,清单,运输,单子]:100]", "对相关单位,研判力,协调力", scPj, brXf, brMh);
  1143. BehaviorCreate(bPj12, "", "", "", "对下级,掌控力", scPj, brYjZx);
  1144. BehaviorCreate(bPj13, "飞机迫降处置成功", "", "[[处置,成功]:100]", "协调力,决策力,研判力,掌控力,舆论引导力", scPj, brMh);
  1145. }
  1146. private void ScenePj()
  1147. {
  1148. SceneCreate(GetNo(DataLibType.SceneInfo), "观光直升机迫降", "@EVENTTIME,一架罗宾逊R-44观光直升机迫降于 @EVENTADDR,飞机尾翼起火,机上载客4人,人员受伤情况不明", "[@EVENTTIME:string:10月9日下午4点40分],[@EVENTADDR:string:滨海市胶州路机场高速口]", scPj, new List<SceneBehaviorInfo>()
  1149. {
  1150. new SceneBehaviorInfo()
  1151. {
  1152. BehaviorNo = bPj1,
  1153. BehaviorWeight = 100,
  1154. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1155. },
  1156. });
  1157. SceneCreate(GetNo(DataLibType.SceneInfo), "飞机迫降受伤乘客家属闹事", "飞机迫降受伤乘客家属情绪激动,聚众闹事,现场氛围紧张", "", scPj, new List<SceneBehaviorInfo>()
  1158. {
  1159. new SceneBehaviorInfo()
  1160. {
  1161. BehaviorNo = bPj2,
  1162. BehaviorWeight = 100,
  1163. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1164. },
  1165. });
  1166. SceneCreate(GetNo(DataLibType.SceneInfo), "飞机爆炸发生人员伤亡", "处置过程中,灭火操作不及时,飞机机体发生爆炸,@NUMDEAD 名乘客死亡,@NUMINJURE 名救援人员受伤", "[@NUMDEAD:string:5],[@NUMINJURE:string:6]", scPj, new List<SceneBehaviorInfo>()
  1167. {
  1168. new SceneBehaviorInfo()
  1169. {
  1170. BehaviorNo = bPj3,
  1171. BehaviorWeight = 100,
  1172. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1173. },
  1174. });
  1175. SceneCreate(GetNo(DataLibType.SceneInfo), "交通堵塞阻碍救援车辆进入", "由于现场混乱,高速路发生严重交通拥堵,拥堵长度超过500米,救援车辆无法及时到达", "", scPj, new List<SceneBehaviorInfo>()
  1176. {
  1177. new SceneBehaviorInfo()
  1178. {
  1179. BehaviorNo = bPj4,
  1180. BehaviorWeight = 100,
  1181. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1182. },
  1183. });
  1184. SceneCreate(GetNo(DataLibType.SceneInfo), "飞机迫降处置成功", "经过各方努力,处置措施得当,飞机火势得到有效控制,机载乘客得到妥善救治", "", scPj, new List<SceneBehaviorInfo>()
  1185. {
  1186. new SceneBehaviorInfo()
  1187. {
  1188. BehaviorNo = bPj13,
  1189. BehaviorWeight = 100,
  1190. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1191. },
  1192. });
  1193. SceneCreate(GetNo(DataLibType.SceneInfo), "旅游观光机迫降1", "旅游观光机迫降1 @ADDR", "[@ADDR:string:四川北路]", scPj, new List<SceneBehaviorInfo>()
  1194. {
  1195. new SceneBehaviorInfo()
  1196. {
  1197. BehaviorNo = bPj1,
  1198. BehaviorWeight = 100,
  1199. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1200. },
  1201. });
  1202. SceneCreate(GetNo(DataLibType.SceneInfo), "旅游观光机迫降2", "旅游观光机迫降2", "", scPj, new List<SceneBehaviorInfo>()
  1203. {
  1204. new SceneBehaviorInfo()
  1205. {
  1206. BehaviorNo = bPj2,
  1207. BehaviorWeight = 100,
  1208. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1209. },
  1210. });
  1211. SceneCreate(GetNo(DataLibType.SceneInfo), "旅游观光机迫降3", "旅游观光机迫降3", "", scPj, new List<SceneBehaviorInfo>()
  1212. {
  1213. new SceneBehaviorInfo()
  1214. {
  1215. BehaviorNo = bPj3,
  1216. BehaviorWeight = 100,
  1217. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1218. },
  1219. });
  1220. SceneCreate(GetNo(DataLibType.SceneInfo), "旅游观光机迫降4.1", "旅游观光机迫降4.2", "", scPj, new List<SceneBehaviorInfo>()
  1221. {
  1222. new SceneBehaviorInfo()
  1223. {
  1224. BehaviorNo = bPj4,
  1225. BehaviorWeight = 100,
  1226. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1227. },
  1228. });
  1229. SceneCreate(GetNo(DataLibType.SceneInfo), "旅游观光机迫降4.2", "旅游观光机迫降4.2", "", scPj, new List<SceneBehaviorInfo>()
  1230. {
  1231. new SceneBehaviorInfo()
  1232. {
  1233. BehaviorNo = bPj5,
  1234. BehaviorWeight = 100,
  1235. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1236. },
  1237. });
  1238. SceneCreate(GetNo(DataLibType.SceneInfo), "旅游观光机迫降5", "旅游观光机迫降5 @Address", "[@Address:string:上海外滩]", scPj, new List<SceneBehaviorInfo>()
  1239. {
  1240. new SceneBehaviorInfo()
  1241. {
  1242. BehaviorNo = bPj6,
  1243. BehaviorWeight = 100,
  1244. BehaviorEvalType = (int)BehaviorScoreType.Normal
  1245. },
  1246. });
  1247. }
  1248. #endregion
  1249. #endregion
  1250. #region CREATE
  1251. /// <summary>
  1252. /// 场景类别
  1253. /// </summary>
  1254. private void SceneCategoryCreate(string id, string pId, string name, string pPath)
  1255. {
  1256. if (_context.SceneCategoryInfos.Any(s => s.Id == id))
  1257. {
  1258. return;
  1259. }
  1260. _context.SceneCategoryInfos.Add(new SceneCategoryInfo()
  1261. {
  1262. Id = id,
  1263. ParentNo = pId,
  1264. CategoryName = name,
  1265. CategoryPath = $"{(pPath.IsNotEmpty() ? $"{pPath}," : "")}{id}",
  1266. Sort = 0,
  1267. Description = name
  1268. });
  1269. _context.SaveChanges();
  1270. }
  1271. /// <summary>
  1272. /// 角色
  1273. /// </summary>
  1274. /// <param name="id"></param>
  1275. /// <param name="name"></param>
  1276. /// <param name="scs"></param>
  1277. private void BehaviorRoleCreate(string id, string name, params string[] scs)
  1278. {
  1279. if (_context.BehaviorRoleInfos.Any(s => s.Id == id))
  1280. {
  1281. return;
  1282. }
  1283. _context.BehaviorRoleInfos.Add(new BehaviorRoleInfo()
  1284. {
  1285. Id = id,
  1286. RoleName = name,
  1287. Description = name
  1288. });
  1289. _context.SaveChanges();
  1290. foreach (var sc in scs)
  1291. {
  1292. if (_context.RoleRelateCategoryInfos.Any(s => s.RoleNo == id && s.CategoryNo == sc))
  1293. {
  1294. continue;
  1295. }
  1296. _context.RoleRelateCategoryInfos.Add(new RoleRelateCategoryInfo()
  1297. {
  1298. RoleNo = id,
  1299. CategoryNo = sc
  1300. });
  1301. }
  1302. _context.SaveChanges();
  1303. }
  1304. /// <summary>
  1305. /// 行为
  1306. /// </summary>
  1307. /// <param name="id"></param>
  1308. /// <param name="name"></param>
  1309. /// <param name="desc"></param>
  1310. /// <param name="word"></param>
  1311. /// <param name="tag"></param>
  1312. /// <param name="c"></param>
  1313. /// <param name="roles"></param>
  1314. private void BehaviorCreate(string id, string name, string desc, string word, string tag, string c,
  1315. params string[] roles)
  1316. {
  1317. if (_context.BehaviorInfos.Any(s => s.Id == id))
  1318. {
  1319. return;
  1320. }
  1321. desc = desc.IsEmpty() ? name : desc;
  1322. _context.BehaviorInfos.Add(new BehaviorInfo()
  1323. {
  1324. Id = id,
  1325. BehaviorName = name,
  1326. Description = desc,
  1327. RuleKeyword = word,
  1328. BehaviorTag = tag,
  1329. RoleLogicType = (int)BehaviorRoleLogicType.Or,
  1330. SceneCategory = c
  1331. });
  1332. _context.SaveChanges();
  1333. foreach (var r in roles)
  1334. {
  1335. if (_context.BehaviorRelateRoleInfos.Any(s => s.BehaviorNo == id && s.RoleNo == r))
  1336. {
  1337. continue;
  1338. }
  1339. _context.BehaviorRelateRoleInfos.Add(new BehaviorRelateRoleInfo()
  1340. {
  1341. RoleNo = r,
  1342. BehaviorNo = id
  1343. });
  1344. }
  1345. _context.SaveChanges();
  1346. }
  1347. /// <summary>
  1348. /// 情景
  1349. /// </summary>
  1350. /// <param name="id"></param>
  1351. /// <param name="name"></param>
  1352. /// <param name="desc"></param>
  1353. /// <param name="v"></param>
  1354. /// <param name="c"></param>
  1355. /// <param name="sbs"></param>
  1356. /// <param name="type"></param>
  1357. /// <param name="tag"></param>
  1358. private void SceneCreate(string id, string name, string desc, string v, string c, List<SceneBehaviorInfo> sbs,
  1359. int type = (int)SceneType.Evolution, string tag = "")
  1360. {
  1361. if (_context.SceneInfos.Any(s => s.Id == id))
  1362. {
  1363. return;
  1364. }
  1365. _context.SceneInfos.Add(new SceneInfo()
  1366. {
  1367. Id = id,
  1368. Name = name,
  1369. Description = desc,
  1370. SceneTag = tag,
  1371. SceneType = type,
  1372. SceneCategory = c,
  1373. Variable = v
  1374. });
  1375. _context.SaveChanges();
  1376. foreach (var sb in sbs)
  1377. {
  1378. if (_context.SceneBehaviorInfos.Any(s => s.SceneNo == id && s.BehaviorNo == sb.BehaviorNo))
  1379. {
  1380. continue;
  1381. }
  1382. _context.SceneBehaviorInfos.Add(new SceneBehaviorInfo()
  1383. {
  1384. BehaviorNo = sb.BehaviorNo,
  1385. SceneNo = id,
  1386. BehaviorEvalType = sb.BehaviorEvalType,
  1387. BehaviorWeight = sb.BehaviorWeight
  1388. });
  1389. }
  1390. _context.SaveChanges();
  1391. }
  1392. #endregion
  1393. #endregion
  1394. public void EngineComponentCreate()
  1395. {
  1396. {
  1397. var engineId = "JY013000000051";
  1398. var entity = _context.EngineComponentInfos.FirstOrDefault(a => a.Id == engineId);
  1399. if (entity == null)
  1400. {
  1401. entity = new EngineComponentInfo()
  1402. {
  1403. Id = engineId,
  1404. Name = "运行前置条件(分值)",
  1405. Description = "检验节点运行条件是否满足,满足则运行。也可以自定义运行前置条件,最后需把运行结果赋值给内部变量 @RunValidate",
  1406. Parameters = ":MinScore:最小分值:Y,:MaxScore:最大分值:Y",
  1407. ComponentScript =
  1408. $@"<Content>
  1409. <CpCreateVariables>
  1410. <Variable>
  1411. <Name>@CurrentNodeScore</Name>
  1412. <Type>Number</Type>
  1413. </Variable>
  1414. <Comment></Comment>
  1415. <BreakPoint>False</BreakPoint>
  1416. </CpCreateVariables>
  1417. <CpCreateVariables>
  1418. <Variable>
  1419. <Name>@MinScore</Name>
  1420. <Type>Number</Type>
  1421. </Variable>
  1422. <Comment></Comment>
  1423. <BreakPoint>False</BreakPoint>
  1424. </CpCreateVariables>
  1425. <CpCreateVariables>
  1426. <Variable>
  1427. <Name>@MaxScore</Name>
  1428. <Type>Number</Type>
  1429. </Variable>
  1430. <Comment></Comment>
  1431. <BreakPoint>False</BreakPoint>
  1432. </CpCreateVariables>
  1433. <CpSetVariables>
  1434. <Content>[[@CurrentNodeScore]=[@PrevNodeScore]]</Content>
  1435. <BreakPoint>False</BreakPoint>
  1436. </CpSetVariables>
  1437. <CpSetVariables>
  1438. <Content>[[@MinScore]=[@@MinScore]]</Content>
  1439. <BreakPoint>False</BreakPoint>
  1440. </CpSetVariables>
  1441. <CpSetVariables>
  1442. <Content>[[@MaxScore]=[@@MaxScore]]</Content>
  1443. <BreakPoint>False</BreakPoint>
  1444. </CpSetVariables>
  1445. <CpCheckCondition>
  1446. <Condition>{"@CurrentNodeScore >= @MinScore || @CurrentNodeScore <= @MaxScore".FormatCode2Xml()}</Condition>
  1447. </CpCheckCondition>
  1448. </Content>"
  1449. };
  1450. _context.EngineComponentInfos.Add(entity);
  1451. }
  1452. }
  1453. {
  1454. var engineId = "JY012000000022";
  1455. var entity = _context.EngineComponentInfos.FirstOrDefault(a => a.Id == engineId);
  1456. if (entity == null)
  1457. {
  1458. entity = new EngineComponentInfo()
  1459. {
  1460. Id = engineId,
  1461. Name = "节点等待",
  1462. Description = "节点运行需要等待其他节点运行完成后才能运行",
  1463. Parameters = ":WaitNodePath:需等待节点:Y",
  1464. ComponentScript =
  1465. @"<Content>
  1466. <CpNodeToWait>
  1467. <WaitNode>@@WaitNodePath</WaitNode>
  1468. </CpNodeToWait>
  1469. </Content>",
  1470. };
  1471. _context.EngineComponentInfos.Add(entity);
  1472. }
  1473. }
  1474. }
  1475. }
  1476. }