guoyuji
2024-12-10 7b0d59dbd16a0f90eec1ad35eff64cf40d3b97e7
north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue
@@ -618,17 +618,44 @@
          delete item._X_ROW_KEY
          $grid.insert(item)
        }
        $gridLeft.remove(item)
      })
    }
    let leftDataList = $gridLeft.getTableData().fullData;
    let baseProcessId = productionId; // 固定的前缀
    // 统计所有不重复的 processId
    let uniqueProcessIds = new Set(leftDataList.map(item => item.processId));
    // 不重复的 processId 的总个数
    let totalUniqueCount = uniqueProcessIds.size;
    // 用于记录已经分配的 processId
    let usedProcessIds = new Set();
    leftDataList.forEach((item) => {
      let newProcessId;
      // 如果该 processId 是第一次出现,使用递减的编号生成新的 processId
      if (!usedProcessIds.has(item.processId)) {
        newProcessId = `${baseProcessId}${(totalUniqueCount).toString().padStart(3, '0')}`;
        usedProcessIds.add(item.processId); // 标记该 processId 已使用
        totalUniqueCount--; // 递减
      } else {
        // 如果该 processId 已经使用过,继续使用已分配的编号
        newProcessId = `${baseProcessId}${(totalUniqueCount + 1).toString().padStart(3, '0')}`;
      }
      // 更新 item.processId
      item.processId = newProcessId;
    });
    //清除两边复选框
    $gridLeft.clearCheckboxRow()
    $grid.clearCheckboxRow()
  } catch (e) {
    ElMessage.warning(e.message)
  }
@@ -778,6 +805,11 @@
              gridLeftOptions.toolbarConfig.buttons[0].disabled=false
              return;
            }
            // if (leftData.length!=selectRecords.length){
            //   ElMessage.warning('请勾选所有数据进行保存')
            //   gridLeftOptions.toolbarConfig.buttons[0].disabled=false
            //   return;
            // }
            let flowCardData = ref({
              flowCard: selectRecords,
              userName: username,