Commit 3df153d8735247d554df9a093f945dfd01242188

Authored by chenxt
1 parent 9baf129b

复制到tmpinfo

src/mes/common/commonModelComponent/index.js
@@ -429,70 +429,84 @@ const useCommonModelEvent = props => { @@ -429,70 +429,84 @@ const useCommonModelEvent = props => {
429 ); 429 );
430 const { gdsconfigformslave } = props?.slaveConfig || {} 430 const { gdsconfigformslave } = props?.slaveConfig || {}
431 useEffect(() => { 431 useEffect(() => {
432 - const { btnConfig = {}, copyToConfig = [], record = {} } = props?.parentProps || {} 432 + const { btnConfig = {}, copyToConfig = [], record = {} } = props?.parentProps || {};
  433 +
  434 + // 提前校验
433 if ( 435 if (
434 !props.masterData || 436 !props.masterData ||
435 !props.masterData.sId || 437 !props.masterData.sId ||
436 typeof props.masterData.sId !== 'string' || 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 return; 444 return;
440 } 445 }
441 - if (props.masterData.sBillNo) return  
442 - if (!copyToConfig) return 446 +
443 const { app } = props; 447 const { app } = props;
444 const { token } = app; 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 if (item.sControlName.includes('tmpInfoBySql')) { 457 if (item.sControlName.includes('tmpInfoBySql')) {
  458 + if (count > 0) continue; // 跳过后续
  459 + count += 1;
  460 +
450 const dataUrl = `${commonConfig.server_host}salesorder/getTmpInfoBySql/?sModelsId=${sModelsId}`; 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 } else { 483 } else {
473 - message.warn('数据未配置!不能生成!');  
474 - return; 484 + props.getServiceError?.(dataReturn);
475 } 485 }
476 } else { 486 } else {
477 const nameList = item.sControlName.split('.'); 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 addState[`${name}Data`] = [{ 490 addState[`${name}Data`] = [{
481 ...commonFunc.getDefaultData(props[`${name}Config`]), 491 ...commonFunc.getDefaultData(props[`${name}Config`]),
482 handleType: "add", 492 handleType: "add",
483 sId: commonUtils.createSid(), 493 sId: commonUtils.createSid(),
484 sParentId: props.masterData.sId, 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