longyvfengyun
2024-04-09 74024cd2b85cafd02eb3c1754fde79ca0252c724
修改放电和充电是旁路电流
1个文件已修改
789 ■■■■■ 已修改文件
src/views/dataTest/components/diagrams/normal9150/js/diagramStates.js 789 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/dataTest/components/diagrams/normal9150/js/diagramStates.js
@@ -86,205 +86,280 @@
}
// 放电状态
function discharge(diagram) {
    // 设置电路图类型
    diagram.setOption('type', 'text', '放电状态');
function discharge(diagram, bypass) {
  // 设置电路图类型
  diagram.setOption('type', 'text', '放电状态');
    // 关闭km2和km3
    diagram.setOption('km2', 'state', true);
    diagram.setOption('km3', 'state', true);
  // 关闭km2和km3
  diagram.setOption('km2', 'state', true);
  diagram.setOption('km3', 'state', true);
    // 修改充放电模块的状态
    diagram.setOption('dischargeState', 'url', lightDangerImage);
    // 绘制可移动的点
    let line1 = diagram.getOption('line1').points;
    diagram.moveDot({
        id: 'line1_dot',
        flush: true,
        radius:scalcRadius,
        points: line1,
  // 绘制可移动的点
  let line1 = diagram.getOption('line1').points;
  // 线条2
  let line2 = diagram.getOption('line2').points;
  // 线条3
  let line8 = diagram.getOption('line8').points;
  let line8Len = line8[1][0] - line8[0][0];
  // 线条15
  let line15 = diagram.getOption('line15').points;
  // 线条16
  let line16 = diagram.getOption('line16').points;
  diagram.moveDot({
    id: 'line16_dot',
    flush: true,
    radius:scalcRadius,
    points: line16,
  });
  // 线条17
  let line17 = diagram.getOption('line17').points;
  diagram.moveDot({
    id: 'line17_dot',
    flush: true,
    radius:scalcRadius,
    points: line17,
  });
  // 线条18
  let line18 = diagram.getOption('line18').points;
  diagram.moveDot({
    id: 'line18_dot',
    flush: true,
    radius:scalcRadius,
    points: line18,
  });
  // 线条19
  let line19 = diagram.getOption('line19').points;
  diagram.moveDot({
    id: 'line19_dot',
    flush: true,
    radius:scalcRadius,
    points: line19,
  });
  // 线条20
  let line20 = diagram.getOption('line20').points;
  diagram.moveDot({
    id: 'line20_dot',
    flush: true,
    radius:scalcRadius,
    points: line20,
  });
  // 线条12
  let line12 = diagram.getOption('line12').points;
  diagram.moveDot({
    id: 'line12_dot',
    flush: true,
    radius:scalcRadius,
    points: [
        line12[1],
        line12[0]
    ],
  });
  // 线条11
  let line11 = diagram.getOption('line11').points;
  diagram.moveDot({
    id: 'line11_dot',
    flush: true,
    radius:scalcRadius,
    points: [
        line11[1],
        line11[0]
    ],
  });
  // 线条10
  let line10 = diagram.getOption('line10').points;
  // 线条9
  let line9 = diagram.getOption('line9').points;
  // 线条7
  let line7 = diagram.getOption('line7').points;
  // 线条5
  let line5 = diagram.getOption('line5').points;
  // 线条6
  let line6 = diagram.getOption('line6').points;
  // 旁路开关线条1
  let bypass1 = diagram.getOption('bypass1').points;
  // 旁路开关线条2
  let bypass2 = diagram.getOption('bypass2').points;
  // 干接点通信状态-正常
  if(bypass.drynodeCommst === 0xAAAA) {
    // 旁路状态-接入旁路
    if(bypass.bypassswitchSt === 0xBBBB) {
      bypassDischarge(diagram, {
        bypass1,
        line15,
        bypass2
      });
    }else {
      normalDischarge(diagram, {
        line8,
        line8Len,
        line1,
        line2,
        line5,
        line6,
        line9,
        line7,
        line10,
        line15,
        lightDangerImage
      });
    }
  }else {
    normalDischarge(diagram, {
      line8,
      line8Len,
      line1,
      line2,
      line5,
      line6,
      line9,
      line7,
      line10,
      line15,
      lightDangerImage
    });
    // 线条2
    let line2 = diagram.getOption('line2').points;
    diagram.moveDot({
        id: 'line2_dot',
        flush: true,
        radius:scalcRadius,
        points: line2,
    });
    // 线条3
    let line8 = diagram.getOption('line8').points;
    let line8Len = line8[1][0] - line8[0][0];
    // 线条8上的第一个点
    diagram.moveDot({
        id: 'line8_1_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            line8[0],
            [line8[0][0]+line8Len/3, line8[0][1]]
        ],
    });
    // 线条8上的第二个点
    diagram.moveDot({
        id: 'line8_2_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            [line8[0][0]+line8Len/3, line8[0][1]],
            [line8[0][0]+line8Len*2/3, line8[0][1]]
        ],
    });
    // 线条8上的第3个点
    diagram.moveDot({
        id: 'line8_3_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            [line8[0][0]+line8Len*2/3, line8[0][1]],
            line8[1]
        ],
    });
    // 线条15
    let line15 = diagram.getOption('line15').points;
    diagram.moveDot({
        id: 'line15_dot',
        flush: true,
        radius:scalcRadius,
        points: line15,
    });
    // 线条16
    let line16 = diagram.getOption('line16').points;
    diagram.moveDot({
        id: 'line16_dot',
        flush: true,
        radius:scalcRadius,
        points: line16,
    });
    // 线条17
    let line17 = diagram.getOption('line17').points;
    diagram.moveDot({
        id: 'line17_dot',
        flush: true,
        radius:scalcRadius,
        points: line17,
    });
    // 线条18
    let line18 = diagram.getOption('line18').points;
    diagram.moveDot({
        id: 'line18_dot',
        flush: true,
        radius:scalcRadius,
        points: line18,
    });
    // 线条19
    let line19 = diagram.getOption('line19').points;
    diagram.moveDot({
        id: 'line19_dot',
        flush: true,
        radius:scalcRadius,
        points: line19,
    });
    // 线条20
    let line20 = diagram.getOption('line20').points;
    diagram.moveDot({
        id: 'line20_dot',
        flush: true,
        radius:scalcRadius,
        points: line20,
    });
    // 线条12
    let line12 = diagram.getOption('line12').points;
    diagram.moveDot({
        id: 'line12_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            line12[1],
            line12[0]
        ],
    });
    // 线条11
    let line11 = diagram.getOption('line11').points;
    diagram.moveDot({
        id: 'line11_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            line11[1],
            line11[0]
        ],
    });
    // 线条10
    let line10 = diagram.getOption('line10').points;
    diagram.moveDot({
        id: 'line10_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            line10[1],
            line10[0]
        ],
    });
    // 线条9
    let line9 = diagram.getOption('line9').points;
    diagram.moveDot({
        id: 'line9_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            line9[1],
            line9[0]
        ],
    });
    // 线条7
    let line7 = diagram.getOption('line7').points;
    diagram.moveDot({
        id: 'line7_dot',
        flush: true,
        radius:scalcRadius,
        points: [
            line7[1],
            line7[0]
        ],
    });
    // 线条5
    let line5 = diagram.getOption('line5').points;
    diagram.moveDot({
        id: 'line5_dot',
        flush: true,
        radius:scalcRadius,
        points: line5,
    });
    // 线条6
    let line6 = diagram.getOption('line6').points;
    diagram.moveDot({
        id: 'line6_dot',
        flush: true,
        radius:scalcRadius,
        points: line6,
    });
  }
}
function normalDischarge(diagram, option) {
  let {
    line8,
    line8Len,
    line1,
    line2,
    line5,
    line6,
    line9,
    line7,
    line10,
    line15,
    lightDangerImage
  } = option;
  // 修改充放电模块的状态
  diagram.setOption('dischargeState', 'url', lightDangerImage);
  // 线条8上的第一个点
  diagram.moveDot({
    id: 'line8_1_dot',
    flush: true,
    radius:scalcRadius,
    points: [
      line8[0],
      [line8[0][0]+line8Len/3, line8[0][1]]
    ],
  });
  // 线条8上的第二个点
  diagram.moveDot({
    id: 'line8_2_dot',
    flush: true,
    radius:scalcRadius,
    points: [
      [line8[0][0]+line8Len/3, line8[0][1]],
      [line8[0][0]+line8Len*2/3, line8[0][1]]
    ],
  });
  diagram.moveDot({
    id: 'line2_dot',
    flush: true,
    radius:scalcRadius,
    points: line2,
  });
  diagram.moveDot({
    id: 'line1_dot',
    flush: true,
    radius:scalcRadius,
    points: line1,
  });
  // 线条8上的第3个点
  diagram.moveDot({
    id: 'line8_3_dot',
    flush: true,
    radius:scalcRadius,
    points: [
      [line8[0][0]+line8Len*2/3, line8[0][1]],
      line8[1]
    ],
  });
  diagram.moveDot({
    id: 'line9_dot',
    flush: true,
    radius:scalcRadius,
    points: [
      line9[1],
      line9[0]
    ],
  });
  diagram.moveDot({
    id: 'line5_dot',
    flush: true,
    radius:scalcRadius,
    points: line5,
  });
  diagram.moveDot({
    id: 'line6_dot',
    flush: true,
    radius:scalcRadius,
    points: line6,
  });
  diagram.moveDot({
    id: 'line7_dot',
    flush: true,
    radius:scalcRadius,
    points: [
      line7[1],
      line7[0]
    ],
  });
  diagram.moveDot({
    id: 'line10_dot',
    flush: true,
    radius:scalcRadius,
    points: [
      line10[1],
      line10[0]
    ],
  });
  diagram.moveDot({
    id: 'line15_dot',
    flush: true,
    radius:scalcRadius,
    points: line15,
  });
}
// 充电状态
function charge(diagram) {
function charge(diagram, bypass) {
    // 设置电路图类型
    diagram.setOption('type', 'text', '充电状态');
@@ -292,58 +367,20 @@
    diagram.setOption('km2', 'state', true);
    diagram.setOption('km3', 'state', true);
    // 修改充放电模块的状态
    diagram.setOption('chargeState', 'url', chargeDangerImage);
    // 线条3
    let line3 = diagram.getOption('line3').points;
    diagram.moveDot({
        id: 'line3_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: line3,
    });
    // 线条4
    let line4 = diagram.getOption('line4').points;
    diagram.moveDot({
        id: 'line4_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: line4,
    });
    // 线条7
    let line7 = diagram.getOption('line7').points;
    diagram.moveDot({
        id: 'line7_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: line7,
    });
    // 线条9
    let line9 = diagram.getOption('line9').points;
    diagram.moveDot({
        id: 'line9_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: line9,
    });
    // 线条10
    let line10 = diagram.getOption('line10').points;
    diagram.moveDot({
        id: 'line10_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: line10,
    });
    // 线条11
    let line11 = diagram.getOption('line11').points;
@@ -432,16 +469,6 @@
    // 线条15
    let line15 = diagram.getOption('line15').points;
    diagram.moveDot({
        id: 'line15_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: [
            line15[1],
            line15[0]
        ],
    });
    // 线条22
    let line22 = diagram.getOption('line22').points;
@@ -472,26 +499,131 @@
    // 线条8
    let line8 = diagram.getOption('line8').points;
    let line13 = diagram.getOption('line13').points;
    diagram.moveDot({
        id: 'line8_1_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: [
            line8[1],
            line13[0]
        ],
  // 旁路开关线条1
  let bypass1 = diagram.getOption('bypass1').points;
  // 旁路开关线条2
  let bypass2 = diagram.getOption('bypass2').points;
  // 干接点通信状态-正常
  if(bypass.drynodeCommst === 0xAAAA) {
    // 旁路状态-接入旁路
    if(bypass.bypassswitchSt === 0xBBBB) {
      bypassCharge(diagram, {
        line15,
        bypass1,
        bypass2,
      });
    }else {
      normalCharge(diagram, {
        chargeDangerImage,
        line8,
        line13,
        line15,
        line10,
        line9,
        line7,
        line4,
        line3,
      });
    }
  }else {
    normalCharge(diagram, {
      chargeDangerImage,
      line8,
      line13,
      line15,
      line10,
      line9,
      line7,
      line4,
      line3,
    });
    diagram.moveDot({
        id: 'line8_2_dot',
        fillStyle: springGreen,
        flush: true,
        radius:scalcRadius,
        points: [
            line13[0],
            line8[0],
        ],
    });
  }
}
function normalCharge(diagram, option) {
  let {
    chargeDangerImage,
    line8,
    line13,
    line15,
    line10,
    line9,
    line7,
    line4,
    line3,
  } = option;
  // 修改充放电模块的状态
  diagram.setOption('chargeState', 'url', chargeDangerImage);
  diagram.moveDot({
    id: 'line8_1_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: [
      line8[1],
      line13[0]
    ],
  });
  diagram.moveDot({
    id: 'line8_2_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: [
      line13[0],
      line8[0],
    ],
  });
  diagram.moveDot({
    id: 'line15_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: [
      line15[1],
      line15[0]
    ],
  });
  diagram.moveDot({
    id: 'line10_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: line10,
  });
  diagram.moveDot({
    id: 'line9_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: line9,
  });
  diagram.moveDot({
    id: 'line7_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: line7,
  });
  diagram.moveDot({
    id: 'line4_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: line4,
  });
  diagram.moveDot({
    id: 'line3_dot',
    fillStyle: springGreen,
    flush: true,
    radius:scalcRadius,
    points: line3,
  });
}
// 浮充状态
@@ -632,34 +764,10 @@
  // 干接点通信状态-正常
  if(bypass.drynodeCommst === 0xAAAA) {
    if(bypass.bypassswitchSt === 0xBBBB) {
      diagram.moveDot({
        id: 'line15_dot',
        fillStyle: springGreen,
        strokeStyle: springGreen,
        radius:scalcRadius,
        flush: true,
        points: [
          line15[1],
          bypass1[0]
        ],
      });
      diagram.moveDot({
        id: 'line_bypass1_dot',
        fillStyle: springGreen,
        strokeStyle: springGreen,
        radius:scalcRadius,
        flush: true,
        points: bypass1,
      });
      diagram.moveDot({
        id: 'line_bypass2_dot',
        fillStyle: springGreen,
        strokeStyle: springGreen,
        radius:scalcRadius,
        flush: true,
        points: bypass2,
      bypassCharge(diagram, {
        line15,
        bypass1,
        bypass2,
      });
    }else {
      if(bypass.k1CheckSt === 0xBBBB) {
@@ -687,6 +795,43 @@
      line10,
    });
  }
}
function bypassCharge(diagram, option) {
  let {
    line15,
    bypass1,
    bypass2,
  } = option;
  diagram.moveDot({
    id: 'line15_dot',
    fillStyle: springGreen,
    strokeStyle: springGreen,
    radius:scalcRadius,
    flush: true,
    points: [
      line15[1],
      bypass1[0]
    ],
  });
  diagram.moveDot({
    id: 'line_bypass1_dot',
    fillStyle: springGreen,
    strokeStyle: springGreen,
    radius:scalcRadius,
    flush: true,
    points: bypass1,
  });
  diagram.moveDot({
    id: 'line_bypass2_dot',
    fillStyle: springGreen,
    strokeStyle: springGreen,
    radius:scalcRadius,
    flush: true,
    points: bypass2,
  });
}
function normalFloatCharge(diagram, option) {
@@ -1054,34 +1199,10 @@
  if(bypass.drynodeCommst === 0xAAAA) {
    // 旁路状态-接入旁路
    if(bypass.bypassswitchSt === 0xBBBB) {
      diagram.moveDot({
        id: 'line15_dot',
        radius:scalcRadius,
        flush: true,
        points: [
          bypass1[0],
          line15[1],
        ],
      });
      diagram.moveDot({
        id: 'line_bypass1_dot',
        radius:scalcRadius,
        flush: true,
        points: [
          bypass1[1],
          bypass1[0],
        ],
      });
      diagram.moveDot({
        id: 'line_bypass2_dot',
        radius:scalcRadius,
        flush: true,
        points: [
          bypass2[1],
          bypass2[0]
        ],
      bypassDischarge(diagram, {
        bypass1,
        line15,
        bypass2
      });
    }else {
      // 接触器k1检测状态-异常
@@ -1110,6 +1231,44 @@
  }
}
function bypassDischarge(diagram, option) {
  let {
    bypass1,
    line15,
    bypass2,
  } = option;
  diagram.moveDot({
    id: 'line15_dot',
    radius:scalcRadius,
    flush: true,
    points: [
      bypass1[0],
      line15[1],
      bypass2
    ],
  });
  diagram.moveDot({
    id: 'line_bypass1_dot',
    radius:scalcRadius,
    flush: true,
    points: [
      bypass1[1],
      bypass1[0],
    ],
  });
  diagram.moveDot({
    id: 'line_bypass2_dot',
    radius:scalcRadius,
    flush: true,
    points: [
      bypass2[1],
      bypass2[0]
    ],
  });
}
function normalPowerCut(diagram, option) {
  let  {
    line8,