Ben Lin
2024-05-06 2fc928c582961b78e215b145a4edf98d3cdca2f4
src/views/tigerprojects/mes/eng/route/index.vue
@@ -152,50 +152,58 @@
    const diffnodes = routeConfig.routeData.nodes.filter((itemA) =>
      _nodes.some((itemB) => itemB.id === itemA.ID),
    );
    routeConfig.routeData.acts = [];
    const diffacts = routeConfig.routeData.acts.filter((itemA) =>
      _nodes.some((itemB) => itemB.id === itemA.ID),
    );
    _nodes.forEach((n) => {
      if (n.properties.operType && n.properties.operType == 'Action') {
        var act: MES_ROUTE_NODE_ACT = {
          ID: n.id,
          CREATE_TIME: routeConfig.routeData.route.CREATE_TIME,
          CREATE_USER: useUserStore().getUserInfo.userId as string,
          UPDATE_TIME: routeConfig.routeData.route.UPDATE_TIME,
          UPDATE_USER: useUserStore().getUserInfo.userId as string,
          GHOST_ROW: false,
          ROT_ID: routeConfig.routeData.route.ID,
          GPH_TYPE: n.type,
          GPH_X: n.x,
          GPH_Y: n.y,
          GPH_PROP: JSON.stringify(n.properties),
          GPH_TEXT: n.text.value,
          REMARK: '',
          AUTH_ORG: '',
          AUTH_PROD: '',
          AUTH_WH: '',
          OPTION_1: '',
          OPTION_2: '',
          OPTION_3: '',
          OPTION_4: '',
          OPTION_5: '',
          ACT_NAME: `${routeConfig.routeData.route.ROT_CODE}_${n.text.value}_${_num}`,
          NODE_ID: '',
          ACT_TYPE: 0,
          DO_TYPE: 0,
          DO_METHOD: '',
          DO_IF_PASS: '',
          DO_IF_FAIL: '',
          node: {} as node,
        };
        var pnode = [n];
        while (pnode[0].properties.operType == 'Action') {
          pnode = unref(lf).getNodeIncomingNode(pnode[0].id);
          if (pnode[0].properties.operType != 'Action') {
            act.NODE_ID = pnode[0].id;
            break;
        var _diffacts = diffacts.length > 0 ? diffacts : routeConfig.routeData.acts;
        _diffacts.forEach((a) => {
          if (a.ID == n.id) {
            var act: MES_ROUTE_NODE_ACT = {
              ID: n.id,
              CREATE_TIME: routeConfig.routeData.route.CREATE_TIME,
              CREATE_USER: useUserStore().getUserInfo.userId as string,
              UPDATE_TIME: routeConfig.routeData.route.UPDATE_TIME,
              UPDATE_USER: useUserStore().getUserInfo.userId as string,
              GHOST_ROW: false,
              ROT_ID: routeConfig.routeData.route.ID,
              GPH_TYPE: n.type,
              GPH_X: n.x,
              GPH_Y: n.y,
              GPH_PROP: JSON.stringify(n.properties),
              GPH_TEXT: n.text.value,
              REMARK: a.REMARK,
              AUTH_ORG: '',
              AUTH_PROD: '',
              AUTH_WH: '',
              OPTION_1: '',
              OPTION_2: '',
              OPTION_3: '',
              OPTION_4: '',
              OPTION_5: '',
              ACT_NAME: `${routeConfig.routeData.route.ROT_CODE}_${n.text.value}_${_num}`,
              NODE_ID: a.NODE_ID,
              ACT_TYPE: a.ACT_TYPE,
              DO_TYPE: a.DO_TYPE,
              DO_METHOD: a.DO_METHOD,
              DO_IF_PASS: a.DO_IF_PASS,
              DO_IF_FAIL: a.DO_IF_FAIL,
              node: {} as node,
              IS_ACTIVE: a.IS_ACTIVE,
            };
            var pnode = [n];
            while (pnode[0].properties.operType == 'Action') {
              pnode = unref(lf).getNodeIncomingNode(pnode[0].id);
              if (pnode[0].properties.operType != 'Action') {
                act.NODE_ID = pnode[0].id;
                break;
              }
            }
            currRotData.acts.push(act);
          }
        }
        currRotData.acts.push(act);
        routeConfig.routeData.acts.push(act);
        });
        routeConfig.routeData.acts = _diffacts;
      } else {
        var _diffnodes = diffnodes.length > 0 ? diffnodes : routeConfig.routeData.nodes;
        _diffnodes.forEach((nd) => {
@@ -209,8 +217,8 @@
              GHOST_ROW: false,
              NODE_NAME: `${currRotData.route.ROT_CODE}_${n.text.value}_${_num}`,
              ROT_ID: currRotData.route.ID,
              SEGMENT: '',
              OPER_CODE: '',
              SEGMENT: nd.SEGMENT,
              OPER_CODE: nd.OPER_CODE,
              GPH_TYPE: n.type,
              GPH_X: n.x,
              GPH_Y: n.y,
@@ -359,6 +367,7 @@
      //再返回具体数据
      routeConfig.routeData = GetRotData(lf);
    }
    var _node = routeConfig.routeData.nodes.filter((x) => x.ID == selectnode.value.id)[0];
    if (isNullOrUnDef(_node)) {
      _node = {
@@ -396,9 +405,44 @@
      };
      routeConfig.routeData.nodes.push(_node);
    }
    //是行为
    if (selectnode.value.properties.operType && selectnode.value.properties.operType == 'Action') {
      var _act = routeConfig.routeData.acts.filter((x) => x.ID == selectnode.value.id)[0];
      routeConfig.activeKey = 3;
      routeConfig.currentAct = {
        ID: selectnode.value.id,
        CREATE_TIME: currRoute.value.CREATE_TIME,
        CREATE_USER: useUserStore().getUserInfo.userId as string,
        UPDATE_TIME: currRoute.value.UPDATE_TIME,
        UPDATE_USER: useUserStore().getUserInfo.userId as string,
        GHOST_ROW: false,
        AUTH_ORG: '',
        AUTH_PROD: '',
        AUTH_WH: '',
        ACT_NAME: _act.ACT_NAME,
        ROT_ID: currRoute.value.ID,
        NODE_ID: _act.NODE_ID,
        ACT_TYPE: _act.ACT_TYPE,
        GPH_TYPE: selectnode.value.type,
        GPH_X: selectnode.value.x,
        GPH_Y: selectnode.value.y,
        GPH_PROP: JSON.stringify(selectnode.value.properties),
        GPH_TEXT: selectnode.value.text.value,
        DO_TYPE: _act.DO_TYPE,
        DO_METHOD: _act.DO_METHOD,
        DO_IF_PASS: _act.DO_IF_PASS,
        DO_IF_FAIL: _act.DO_IF_FAIL,
        IS_ACTIVE: _act.IS_ACTIVE,
        OPTION_1: '',
        OPTION_2: '',
        OPTION_3: '',
        OPTION_4: '',
        OPTION_5: '',
        REMARK: '',
        node: {} as node,
      };
    } else {
      //是工序
      routeConfig.currentItem = {
        ID: selectnode.value.id,
        CREATE_TIME: currRoute.value.CREATE_TIME,