Commit d1898eef069b46830d408c08579c45b403a06701

Authored by fengtao
1 parent a478cc95

fix:修改场景联动 弹窗组件 页面属性回显和清除告警数据回显问题

... ... @@ -67,7 +67,8 @@
67 67 :actionData="actionData"
68 68 :triggerData="triggerData"
69 69 :ref="skipUnwrap.actionItemRefs"
70   - :deviceList="deviceList"
  70 + :provideOrgid="provideOrgid"
  71 + :deviceList="getMasterDeviceList"
71 72 :arr="arr"
72 73 @deleteAction="deleteAction"
73 74 @getActionFormArr="getActionFormArr"
... ... @@ -188,7 +189,7 @@
188 189 nextTick(() => {
189 190 setEditFields(skipUnwrap.triggerItemRefs, editEntryIdData);
190 191 setEditFields(skipUnwrap.conditionItemRefs, editEntryIdData);
191   - setEditFields(skipUnwrap.actionItemRefs, editEntryIdData);
  192 + setEditFields(skipUnwrap.actionItemRefs, getMasterDeviceList);
192 193 setEditAlarmConfig(skipUnwrap.actionItemRefs, editAlarmConfigData);
193 194 });
194 195
... ... @@ -281,6 +282,7 @@
281 282
282 283 doConditions.forEach((condition, index) => {
283 284 nextTick(async () => {
  285 + const selectDeviceId = ref('');
284 286 // 回显启用规则
285 287 unref(skipUnwrap.conditionItemRefs)[index].currentIndex =
286 288 map[condition.triggerCondition.schedule.type];
... ... @@ -302,6 +304,15 @@
302 304 time: condition?.triggerCondition?.condition?.spec?.predicate?.defaultValue,
303 305 timeUnit: condition?.triggerCondition?.condition?.spec?.unit,
304 306 });
  307 + if (condition?.entityId != undefined) {
  308 + selectDeviceId.value = condition?.entityId;
  309 + }
  310 + //fengtao-把设备id回传给子组件
  311 + unref(skipUnwrap.conditionItemRefs)[index].updateFieldAttributeFunc(
  312 + selectDeviceId.value,
  313 + provideOrgid.value
  314 + );
  315 + //fengtao
305 316 // 设置值operationType
306 317 unref(skipUnwrap.conditionItemRefs)[index].operationType =
307 318 condition.triggerCondition?.condition.condition[0].valueType;
... ... @@ -353,6 +364,7 @@
353 364
354 365 doActions.forEach((action, index) => {
355 366 nextTick(() => {
  367 + const selectDeviceId = ref('');
356 368 // 设置执行动作外层值
357 369 unref(skipUnwrap.actionItemRefs)[index].setFieldsFormValueFun({
358 370 outTarget: action.outTarget,
... ... @@ -407,6 +419,18 @@
407 419 timeUnit:
408 420 action.doContext.clearRule[index].triggerCondition.condition.spec.unit,
409 421 });
  422 + if (action.doContext.clearRule[index].entityId != undefined) {
  423 + selectDeviceId.value = action.doContext.clearRule[index].entityId;
  424 + }
  425 + //fengtao-把设备id回传给子组件
  426 + item.updateFieldAttributeFunc(selectDeviceId.value, provideOrgid.value);
  427 + item.updateFieldDeviceId(
  428 + deviceList.value,
  429 + provideOrgid.value,
  430 + isUpdate.value,
  431 + getMasterDeviceList.value
  432 + );
  433 + //fengtao
410 434 // 单独设置operationType值 操作符类型 NUMERIC|String|Boolean|DATE_TIME
411 435 item.operationType =
412 436 action.doContext.clearRule[
... ... @@ -432,6 +456,7 @@
432 456 nextTick(() => {
433 457 const richTextList = [];
434 458 rule.triggerCondition.condition.condition.forEach((item, conditionIndex) => {
  459 + //TODO-fengtao之前是Number( item.predicate.value.defaultValue)-发现回显是Invalide Time
435 460 const formItem = {
436 461 operation: item.predicate.operation,
437 462 value:
... ... @@ -444,18 +469,20 @@
444 469 ignoreCase:
445 470 item.valueType === 'STRING' ? item.predicate.ignoreCase : undefined,
446 471 };
  472 + //TODO-fengtao之前是Number( item.predicate.value.defaultValue)-发现回显是Invalide Time
447 473 richTextList.push({
448 474 // 查询中文操作符
449 475 operation: findOperation(item.valueType, item.predicate.operation).label,
450 476 value:
451 477 item.valueType === 'DATE_TIME'
452 478 ? formatToDateTime(
453   - Number(item.predicate.value.defaultValue),
  479 + item.predicate.value.defaultValue,
454 480 'YYYY-MM-DD HH:mm:ss'
455 481 )
456 482 : String(item.predicate.value.defaultValue),
457 483 attribute: item?.key?.key,
458 484 });
  485 + //TODO-fengtao之前是Number( item.predicate.value.defaultValue)-发现回显是Invalide Time
459 486 ConditionScreeningForm[ruleIndex].value[conditionIndex].setFieldsValue(
460 487 formItem
461 488 );
... ... @@ -597,6 +624,7 @@
597 624 return type;
598 625 });
599 626 if (typeBoolean) return createMessage.error('请填写条件筛选');
  627 + //TODO 先暂时不加验证--设备-属性-填了加验证
600 628 //TODO fengtao
601 629 await screenLinkPageAddApi(postAddOrEditData, unref(isUpdate));
602 630 createMessage.success(`${unref(isUpdate) ? '编辑' : '新增'}成功`);
... ...