Commit 3df153d8735247d554df9a093f945dfd01242188

Authored by chenxt
1 parent 9baf129b

复制到tmpinfo

src/mes/common/commonModelComponent/index.js
... ... @@ -429,70 +429,84 @@ const useCommonModelEvent = props => {
429 429 );
430 430 const { gdsconfigformslave } = props?.slaveConfig || {}
431 431 useEffect(() => {
432   - const { btnConfig = {}, copyToConfig = [], record = {} } = props?.parentProps || {}
  432 + const { btnConfig = {}, copyToConfig = [], record = {} } = props?.parentProps || {};
  433 +
  434 + // 提前校验
433 435 if (
434 436 !props.masterData ||
435 437 !props.masterData.sId ||
436 438 typeof props.masterData.sId !== 'string' ||
437   - props.masterData.sId.trim() === ''
  439 + props.masterData.sId.trim() === '' ||
  440 + props.masterData.sBillNo ||
  441 + !Array.isArray(copyToConfig) ||
  442 + copyToConfig.length === 0
438 443 ) {
439 444 return;
440 445 }
441   - if (props.masterData.sBillNo) return
442   - if (!copyToConfig) return
  446 +
443 447 const { app } = props;
444 448 const { token } = app;
445   - const addState = {}; // 始终初始化为对象
446   - if (Array.isArray(copyToConfig) && copyToConfig.length > 0) {
447   - copyToConfig.forEach(async item => {
448   - if (item?.sControlName) {
  449 + const addState = {};
  450 + let count = 0;
  451 +
  452 + (async () => {
  453 + try {
  454 + for (const item of copyToConfig) {
  455 + if (!item?.sControlName) continue;
  456 +
449 457 if (item.sControlName.includes('tmpInfoBySql')) {
  458 + if (count > 0) continue; // 跳过后续
  459 + count += 1;
  460 +
450 461 const dataUrl = `${commonConfig.server_host}salesorder/getTmpInfoBySql/?sModelsId=${sModelsId}`;
451   - const sConfigformId = commonUtils.isEmpty(copyToConfig) ? '' : copyToConfig[0].sParentId;
452   - const sControlName = commonUtils.isNotEmptyObject(name) ? name : 'BtnTableCopyTo.tmpInfoBySqlActProduceReport';
453   - let sSqlCondition = '';
454   - let sRowData = [record]
455   - const values = { sConfigformId, sControlName, sRowData };
456   - if (true) {
457   - const dataReturn = (await commonServices.postValueService(token, values, dataUrl)).data;
458   - if (dataReturn.code === 1) {
459   - const returnData = dataReturn.dataset.rows[0];
460   - if (commonUtils.isNotEmptyObject(returnData)) {
461   - for (const key of Object.keys(returnData)) {
462   - const sName = `${key}Data`;
463   - addState[sName] = returnData[key];
464   - }
465   - if (commonUtils.isNotEmptyArr(addState.masterData) && Array.isArray(addState.masterData)) {
466   - addState.masterData = addState.masterData[0];
467   - }
  462 + const sConfigformId = copyToConfig[0]?.sParentId || '';
  463 + const sControlName = commonUtils.isNotEmptyObject(item?.sControlName)
  464 + ? item?.sControlName
  465 + : 'BtnTableCopyTo.tmpInfoBySqlActProduceReport';
  466 +
  467 + const values = {
  468 + sConfigformId,
  469 + sControlName,
  470 + sRowData: [record],
  471 + };
  472 +
  473 + const response = await commonServices.postValueService(token, values, dataUrl);
  474 + const dataReturn = response.data;
  475 +
  476 + if (dataReturn.code === 1) {
  477 + const returnData = dataReturn.dataset?.rows?.[0];
  478 + if (commonUtils.isNotEmptyObject(returnData)) {
  479 + for (const key of Object.keys(returnData)) {
  480 + addState[`${key}Data`] = returnData[key];
468 481 }
469   - } else {
470   - props.getServiceError(dataReturn);
471 482 }
472 483 } else {
473   - message.warn('数据未配置!不能生成!');
474   - return;
  484 + props.getServiceError?.(dataReturn);
475 485 }
476 486 } else {
477 487 const nameList = item.sControlName.split('.');
478   - if (nameList && nameList.length > 2) {
479   - const name = nameList.pop()
  488 + if (nameList.length > 2) {
  489 + const name = nameList.pop();
480 490 addState[`${name}Data`] = [{
481 491 ...commonFunc.getDefaultData(props[`${name}Config`]),
482 492 handleType: "add",
483 493 sId: commonUtils.createSid(),
484 494 sParentId: props.masterData.sId,
485   - ...commonFunc.getAssignFieldValue(item.sAssignField, record)
  495 + ...commonFunc.getAssignFieldValue(item.sAssignField, record),
486 496 }];
487 497 }
488 498 }
  499 + }
489 500  
  501 + if (Object.keys(addState).length > 0) {
  502 + props.onSaveState?.({ ...addState });
490 503 }
491   - });
492   - }
493   - props.onSaveState({ ...addState });
  504 + } catch (error) {
  505 + message.error('数据加载失败,请重试');
  506 + }
  507 + })();
494 508  
495   - }, [props.masterData])
  509 + }, [props.masterData]);
496 510  
497 511  
498 512  
... ...