Commit e7fd9d00d001a88d075bd4a9096978a44cb6f936
1 parent
d9c1df05
1.修复PBOM复制从历史PBOM,部件合版信息带不过来问题
Showing
1 changed file
with
405 additions
and
5 deletions
src/components/Manufacture/ProcessCardPackTableTreeNew/index.js
| @@ -1065,10 +1065,10 @@ const ProcessCardPackTableTreeNewEvent = props => { | @@ -1065,10 +1065,10 @@ const ProcessCardPackTableTreeNewEvent = props => { | ||
| 1065 | // 弹窗选择确定 | 1065 | // 弹窗选择确定 |
| 1066 | const handleSelect = async (name, selectConfig, selectData) => { | 1066 | const handleSelect = async (name, selectConfig, selectData) => { |
| 1067 | const bTmpInfoBySql = selectConfig?.sControlName?.toLowerCase().includes("tmpinfobysql"); | 1067 | const bTmpInfoBySql = selectConfig?.sControlName?.toLowerCase().includes("tmpinfobysql"); |
| 1068 | - if (name === "productProcessInfo" && !bTmpInfoBySql) { | ||
| 1069 | - message.info("productProcessInfo已废弃,请改成TmpInfoBySql!"); | ||
| 1070 | - return; | ||
| 1071 | - } | 1068 | + // if (name === "productProcessInfo" && !bTmpInfoBySql) { |
| 1069 | + // message.info("productProcessInfo已废弃,请改成TmpInfoBySql!"); | ||
| 1070 | + // return; | ||
| 1071 | + // } | ||
| 1072 | if (name === "materials") { | 1072 | if (name === "materials") { |
| 1073 | name = "materials0"; | 1073 | name = "materials0"; |
| 1074 | } | 1074 | } |
| @@ -1409,8 +1409,39 @@ const ProcessCardPackTableTreeNewEvent = props => { | @@ -1409,8 +1409,39 @@ const ProcessCardPackTableTreeNewEvent = props => { | ||
| 1409 | treeCopyNodes.set(controlItem.sId, sNewParentAllId); | 1409 | treeCopyNodes.set(controlItem.sId, sNewParentAllId); |
| 1410 | controlData.push(controlRow); | 1410 | controlData.push(controlRow); |
| 1411 | 1411 | ||
| 1412 | + /* 增加合版表 */ | ||
| 1413 | + if (true) { | ||
| 1414 | + let packRow = commonFunc.getDefaultData(config.packConfig, newCopyTo); // 取默认值 | ||
| 1415 | + /* sSlaveId赋值 */ | ||
| 1416 | + if (iSlaveIndex > -1) { | ||
| 1417 | + const slaveDataRow = slaveData[iSlaveIndex]; | ||
| 1418 | + const packRowAdd = props.handlePackDataAdd(slaveDataRow, 0, controlRow.sId, 'add'); | ||
| 1419 | + if (commonUtils.isNotEmptyObject(packRowAdd)) { | ||
| 1420 | + packRow = { ...packRow, ...packRowAdd }; | ||
| 1421 | + packRow.dCombineQty = commonUtils.isNull(controlRow.dSinglePQty, 1); /* 默认是控制表的排版数 */ | ||
| 1422 | + packRow.dProductQty = commonUtils.isNull(slaveDataRow.dProductQty, 0); | ||
| 1423 | + packRow.dFactProductQty = commonUtils.isNull(slaveDataRow.dProductQty, 0); | ||
| 1424 | + if(commonUtils.isNotEmptyObject(packRow) && commonUtils.isNotEmptyObject(packRow.sProductId)){ /* 从表要选择产品 */ | ||
| 1425 | + const { sId, sProductNo, dProductQty, dCombineQty, dFactProductQty,sCombinePartsName }= packRow; | ||
| 1426 | + const tableCombineSelectedData =[]; | ||
| 1427 | + const jsonObj = {}; | ||
| 1428 | + jsonObj.sId = sId; | ||
| 1429 | + jsonObj.sProductNo = sProductNo; /* 产品编号 */ | ||
| 1430 | + jsonObj.dCombineQty = dCombineQty; /* 排版数 */ | ||
| 1431 | + jsonObj.dProductQty = commonUtils.isNotEmptyNumber(dProductQty) ? dProductQty : 0; /* 生产数 */ | ||
| 1432 | + jsonObj.dFactProductQty = commonUtils.isNotEmptyNumber(dFactProductQty) ? dFactProductQty : 0; /* 实际生产数 */ | ||
| 1433 | + jsonObj.sCombinePartsName = sCombinePartsName; /* 合版部件名称 */ | ||
| 1434 | + tableCombineSelectedData.push(jsonObj); | ||
| 1435 | + const sCombinedMemo = commonUtils.isNotEmptyArr(tableCombineSelectedData) ? JSON.stringify(tableCombineSelectedData) : ''; /* JSON对象转换为字符串存放到合版信息中 */ | ||
| 1436 | + controlRow.sCombinedMemo =commonUtils.isNotEmptyObject(sCombinedMemo)? sCombinedMemo: '合版信息'; | ||
| 1437 | + } | ||
| 1438 | + packData.push(packRow); | ||
| 1439 | + } | ||
| 1440 | + } | ||
| 1441 | + } | ||
| 1442 | + | ||
| 1412 | /* 复制到时增加合版表 */ | 1443 | /* 复制到时增加合版表 */ |
| 1413 | - if (commonUtils.isNotEmptyArr(returnData.packData)) { | 1444 | + if (false && commonUtils.isNotEmptyArr(returnData.packData)) { |
| 1414 | returnData.packData.filter(item => item.sControlId === controlItem.sId).forEach(async packItem => { | 1445 | returnData.packData.filter(item => item.sControlId === controlItem.sId).forEach(async packItem => { |
| 1415 | newCopyTo.pack = packItem; | 1446 | newCopyTo.pack = packItem; |
| 1416 | let packRow = commonFunc.getDefaultData(config.packConfig, newCopyTo); // 取默认值 | 1447 | let packRow = commonFunc.getDefaultData(config.packConfig, newCopyTo); // 取默认值 |
| @@ -1627,6 +1658,375 @@ const ProcessCardPackTableTreeNewEvent = props => { | @@ -1627,6 +1658,375 @@ const ProcessCardPackTableTreeNewEvent = props => { | ||
| 1627 | } else { | 1658 | } else { |
| 1628 | props.getServiceError(dataReturn.msg); | 1659 | props.getServiceError(dataReturn.msg); |
| 1629 | } | 1660 | } |
| 1661 | + } else if (name === 'productProcessInfo') { /* 复制从产品 */ | ||
| 1662 | + if (commonUtils.isNotEmptyArr(selectData)) { | ||
| 1663 | + const controlData = []; | ||
| 1664 | + const materialsData = []; | ||
| 1665 | + const processData = []; | ||
| 1666 | + const colorData = []; | ||
| 1667 | + const addState = {}; | ||
| 1668 | + const controlDelData = commonUtils.isEmptyArr(controlDelDataOld) ? [] : controlDelDataOld; | ||
| 1669 | + const materialsDelData = commonUtils.isEmptyArr(materialsDelDataOld) ? [] : materialsDelDataOld; | ||
| 1670 | + const processDelData = commonUtils.isEmptyArr(processDelDataOld) ? [] : processDelDataOld; | ||
| 1671 | + const colorDelData = commonUtils.isEmptyArr(colorDelDataOld) ? [] : colorDelDataOld; | ||
| 1672 | + controlDataOld.forEach((item) => { | ||
| 1673 | + item.handleType = 'del'; | ||
| 1674 | + controlDelData.push(item); | ||
| 1675 | + }); | ||
| 1676 | + addState.controlDelData = controlDelData; | ||
| 1677 | + materialsDataOld.forEach((item) => { | ||
| 1678 | + item.handleType = 'del'; | ||
| 1679 | + materialsDelData.push(item); | ||
| 1680 | + }); | ||
| 1681 | + addState.materialsDelData = materialsDelData; | ||
| 1682 | + processDataOld.forEach((item) => { | ||
| 1683 | + item.handleType = 'del'; | ||
| 1684 | + processDelData.push(item); | ||
| 1685 | + }); | ||
| 1686 | + addState.processDelData = processDelData; | ||
| 1687 | + if (commonUtils.isNotEmptyArr(colorDataOld) && colorDataOld.length > 0) { | ||
| 1688 | + colorDataOld.forEach((item) => { | ||
| 1689 | + item.handleType = 'del'; | ||
| 1690 | + colorDelData.push(item); | ||
| 1691 | + }); | ||
| 1692 | + } | ||
| 1693 | + addState.colorDelData = colorDelData; | ||
| 1694 | + addState.processDelData = processDelData; | ||
| 1695 | + const config = {}; | ||
| 1696 | + config.masterConfig = masterConfig; | ||
| 1697 | + config.slaveConfig = slaveConfig; | ||
| 1698 | + config.controlConfig = controlConfig; | ||
| 1699 | + config.materialsConfig = materialsConfig; | ||
| 1700 | + config.processConfig = processConfig; | ||
| 1701 | + config.colorConfig = colorConfig; | ||
| 1702 | + | ||
| 1703 | + let iSlaveIndex = -1; | ||
| 1704 | + if (!commonUtils.isEmpty(slaveSelectedRowKeys)) { | ||
| 1705 | + iSlaveIndex = slaveData.findIndex(item => item.sId === slaveSelectedRowKeys.toString()); | ||
| 1706 | + } | ||
| 1707 | + | ||
| 1708 | + const condition = { sCardId: selectData[0].sId }; | ||
| 1709 | + const dataUrl = `${commonConfig.server_host}salesorder/getProcessCardDataByCustomIdProductId/?sModelsId=${sModelsId}`; | ||
| 1710 | + const dataReturn = (await commonServices.postValueService(token, condition, dataUrl)).data; | ||
| 1711 | + console.log('ddddataReturnd', dataReturn); | ||
| 1712 | + if (dataReturn.code === 1) { | ||
| 1713 | + const copyTo = { config: masterConfig.gdsconfigformslave, name: selectConfig.sControlName }; | ||
| 1714 | + const returnData = dataReturn.dataset.rows[0]; | ||
| 1715 | + const copyToMasterDetailConfig = copyTo.config.filter(item => item.sControlName.toLowerCase() === `${copyTo.name}`.toLowerCase()); | ||
| 1716 | + const copyToSlaveDetailConfig = copyTo.config.filter(item => item.sControlName.toLowerCase() === `${copyTo.name}.slave`.toLowerCase()); | ||
| 1717 | + const copyToControlConfig = copyTo.config.filter(item => item.sControlName.toLowerCase() === `${copyTo.name}.control`.toLowerCase()); | ||
| 1718 | + const copyToMaterialsConfig = copyTo.config.filter(item => item.sControlName.toLowerCase() === `${copyTo.name}.materials`.toLowerCase()); | ||
| 1719 | + const copyToProcessConfig = copyTo.config.filter(item => item.sControlName.toLowerCase() === `${copyTo.name}.process`.toLowerCase()); | ||
| 1720 | + const copyToPackConfig = copyTo.config.filter(item => item.sControlName.toLowerCase() === `${copyTo.name}.pack`.toLowerCase()); | ||
| 1721 | + const masterDetailAssignField = commonUtils.isNotEmptyArr(copyToMasterDetailConfig) ? copyToMasterDetailConfig[0].sAssignField : ''; | ||
| 1722 | + const slaveDetailAssignField = commonUtils.isNotEmptyArr(copyToSlaveDetailConfig) ? copyToSlaveDetailConfig[0].sAssignField : ''; | ||
| 1723 | + const copyToColorConfig = copyTo.config.filter(item => item.sControlName.toLowerCase() === `${copyTo.name}.param`.toLowerCase()); | ||
| 1724 | + const controlAssignField = commonUtils.isNotEmptyArr(copyToControlConfig) ? copyToControlConfig[0].sAssignField : ''; | ||
| 1725 | + const materialsAssignField = commonUtils.isNotEmptyArr(copyToMaterialsConfig) ? copyToMaterialsConfig[0].sAssignField : ''; | ||
| 1726 | + const processAssignField = commonUtils.isNotEmptyArr(copyToProcessConfig) ? copyToProcessConfig[0].sAssignField : ''; | ||
| 1727 | + const colorAssignField = commonUtils.isNotEmptyArr(copyToColorConfig) ? copyToColorConfig[0].sAssignField : ''; | ||
| 1728 | + const packAssignField = commonUtils.isNotEmptyArr(copyToPackConfig) ? copyToPackConfig[0].sAssignField : ''; | ||
| 1729 | + const newCopyTo = {}; | ||
| 1730 | + newCopyTo.master = copyTo.masterData; | ||
| 1731 | + newCopyTo.slave = commonUtils.isEmptyArr(slaveData) ? {} : slaveData[0]; | ||
| 1732 | + | ||
| 1733 | + if (iSlaveIndex > -1) { | ||
| 1734 | + slaveData[iSlaveIndex] = { ...slaveData[iSlaveIndex], ...commonFunc.getAssignFieldValue(selectConfig.sAssignField, selectData[0], newCopyTo) }; // 取赋值字段 | ||
| 1735 | + } | ||
| 1736 | + const bProcessAssort = true; | ||
| 1737 | + let returnProcessAssort = []; | ||
| 1738 | + let processAssignAssort = ''; | ||
| 1739 | + let dropDownDataProcessName; | ||
| 1740 | + if (bProcessAssort) { | ||
| 1741 | + const dataUrl = `${commonConfig.server_host}salesorder/getProcessAssort?sModelsId=${sModelsId}`; | ||
| 1742 | + const dataProcessAssort = (await commonServices.postValueService(token, {}, dataUrl)).data; | ||
| 1743 | + if (dataProcessAssort.code === 1) { | ||
| 1744 | + returnProcessAssort = dataProcessAssort.dataset.rows[0].processassort; | ||
| 1745 | + const iIndex = config.processConfig.gdsconfigformslave.findIndex(item => item.sName === 'sProcessName'); | ||
| 1746 | + if (iIndex > -1) { | ||
| 1747 | + const sqlDropDownData = await this.props.getSqlDropDownData(sModelsId, 'slave', config.processConfig.gdsconfigformslave[iIndex]); | ||
| 1748 | + dropDownDataProcessName = sqlDropDownData.dropDownData; | ||
| 1749 | + processAssignAssort = config.processConfig.gdsconfigformslave[iIndex].sAssignField; | ||
| 1750 | + } | ||
| 1751 | + } | ||
| 1752 | + } | ||
| 1753 | + | ||
| 1754 | + if (commonUtils.isNotEmptyArr(returnData.controlData)) { | ||
| 1755 | + let dProductQty = 0; | ||
| 1756 | + /* 主表配置bProductQtyAdd 则代表产品数量不叠加备货数 赠送数 */ | ||
| 1757 | + let bProductQtySelf = false; | ||
| 1758 | + if (commonUtils.isNotEmptyObject(this.props.masterConfig) && commonUtils.isNotEmptyArr(this.props.masterConfig.gdsconfigformslave)) { | ||
| 1759 | + const iIndex = this.props.masterConfig.gdsconfigformslave.findIndex(item => item.sControlName === 'bProductQtySelf'); | ||
| 1760 | + if (iIndex > -1) { | ||
| 1761 | + bProductQtySelf = true; | ||
| 1762 | + } | ||
| 1763 | + } | ||
| 1764 | + if (commonUtils.isNotEmptyArr(returnData.slaveData)) { | ||
| 1765 | + masterData = { ...masterData, ...commonFunc.getAssignFieldValue(masterDetailAssignField, returnData.slaveData[0], newCopyTo) }; // 取赋值字段 | ||
| 1766 | + } | ||
| 1767 | + | ||
| 1768 | + slaveData.forEach((item, iSlaveIndex) => { | ||
| 1769 | + if (commonUtils.isNotEmptyArr(returnData.slaveData)) { | ||
| 1770 | + item = { ...item, ...commonFunc.getAssignFieldValue(slaveDetailAssignField, returnData.slaveData[0], newCopyTo) }; // 取赋值字段 | ||
| 1771 | + slaveData[iSlaveIndex].sOriginalId = commonUtils.isNotEmptyObject(item.sSlaveId) ? item.sSlaveId : item.sId; /* 原始sId */ | ||
| 1772 | + } | ||
| 1773 | + slaveData[iSlaveIndex] = item; | ||
| 1774 | + if (bProductQtySelf) { | ||
| 1775 | + dProductQty += commonUtils.isNull(item.dProductQty, 0); | ||
| 1776 | + } else { | ||
| 1777 | + dProductQty += commonUtils.isNull(item.dProductQty, 0) + commonUtils.isNull(item.dGiveQty, 0) + commonUtils.isNull(item.dStockupQty, 0); | ||
| 1778 | + } | ||
| 1779 | + }); | ||
| 1780 | + const treeCopyNodes = new Map(); | ||
| 1781 | + returnData.controlData.forEach((controlItem) => { | ||
| 1782 | + newCopyTo.control = controlItem; | ||
| 1783 | + let controlRow = commonFunc.getDefaultData(config.controlConfig, newCopyTo); // 取默认值 | ||
| 1784 | + controlRow = { ...controlRow, ...commonFunc.getAssignFieldValue(controlAssignField, controlItem, newCopyTo) }; // 取赋值字段 | ||
| 1785 | + controlRow.handleType = 'add'; | ||
| 1786 | + controlRow.sId = commonUtils.createSid(); | ||
| 1787 | + controlRow.sParentId = masterData.sId; | ||
| 1788 | + controlRow.dPartsQty = dProductQty; | ||
| 1789 | + const sAllOldId = controlItem.sAllId; | ||
| 1790 | + let arr = []; | ||
| 1791 | + if (commonUtils.isNotEmptyObject(sAllOldId)) { | ||
| 1792 | + arr = sAllOldId.split(','); | ||
| 1793 | + } | ||
| 1794 | + const newId = controlRow.sId; | ||
| 1795 | + let sOldParentId = ''; | ||
| 1796 | + let sNewParentAllId = ''; | ||
| 1797 | + if (arr.length < 2) { /* 根节点复制 */ | ||
| 1798 | + controlRow.sAllId = newId; | ||
| 1799 | + sOldParentId = newId; | ||
| 1800 | + sNewParentAllId = newId; | ||
| 1801 | + } else { | ||
| 1802 | + sOldParentId = arr[arr.length - 2]; | ||
| 1803 | + if (treeCopyNodes.has(sOldParentId)) { | ||
| 1804 | + sNewParentAllId = treeCopyNodes.get(sOldParentId); | ||
| 1805 | + } else { | ||
| 1806 | + const obj = arr[arr.length - 1]; | ||
| 1807 | + sNewParentAllId = sAllOldId.replace((`,${obj}`), ''); | ||
| 1808 | + } | ||
| 1809 | + const sNewArr = sNewParentAllId.split(','); | ||
| 1810 | + controlRow.sControlParentId = sNewArr[sNewArr.length - 1]; | ||
| 1811 | + sNewParentAllId = `${sNewParentAllId},${newId}`; | ||
| 1812 | + controlRow.sAllId = sNewParentAllId; | ||
| 1813 | + } | ||
| 1814 | + treeCopyNodes.set(controlItem.sId, sNewParentAllId); | ||
| 1815 | + controlData.push(controlRow); | ||
| 1816 | + | ||
| 1817 | + /* 增加合版表 */ | ||
| 1818 | + if (true) { | ||
| 1819 | + let packRow = commonFunc.getDefaultData(config.packConfig, newCopyTo); // 取默认值 | ||
| 1820 | + /* sSlaveId赋值 */ | ||
| 1821 | + if (iSlaveIndex > -1) { | ||
| 1822 | + const slaveDataRow = slaveData[iSlaveIndex]; | ||
| 1823 | + const packRowAdd = props.handlePackDataAdd(slaveDataRow, 0, controlRow.sId, 'add'); | ||
| 1824 | + if (commonUtils.isNotEmptyObject(packRowAdd)) { | ||
| 1825 | + packRow = { ...packRow, ...packRowAdd }; | ||
| 1826 | + packRow.dCombineQty = commonUtils.isNull(controlRow.dSinglePQty, 1); /* 默认是控制表的排版数 */ | ||
| 1827 | + packRow.dProductQty = commonUtils.isNull(slaveDataRow.dProductQty, 0); | ||
| 1828 | + packRow.dFactProductQty = commonUtils.isNull(slaveDataRow.dProductQty, 0); | ||
| 1829 | + if(commonUtils.isNotEmptyObject(packRow) && commonUtils.isNotEmptyObject(packRow.sProductId)){ /* 从表要选择产品 */ | ||
| 1830 | + const { sId, sProductNo, dProductQty, dCombineQty, dFactProductQty,sCombinePartsName }= packRow; | ||
| 1831 | + const tableCombineSelectedData =[]; | ||
| 1832 | + const jsonObj = {}; | ||
| 1833 | + jsonObj.sId = sId; | ||
| 1834 | + jsonObj.sProductNo = sProductNo; /* 产品编号 */ | ||
| 1835 | + jsonObj.dCombineQty = dCombineQty; /* 排版数 */ | ||
| 1836 | + jsonObj.dProductQty = commonUtils.isNotEmptyNumber(dProductQty) ? dProductQty : 0; /* 生产数 */ | ||
| 1837 | + jsonObj.dFactProductQty = commonUtils.isNotEmptyNumber(dFactProductQty) ? dFactProductQty : 0; /* 实际生产数 */ | ||
| 1838 | + jsonObj.sCombinePartsName = sCombinePartsName; /* 合版部件名称 */ | ||
| 1839 | + tableCombineSelectedData.push(jsonObj); | ||
| 1840 | + const sCombinedMemo = commonUtils.isNotEmptyArr(tableCombineSelectedData) ? JSON.stringify(tableCombineSelectedData) : ''; /* JSON对象转换为字符串存放到合版信息中 */ | ||
| 1841 | + controlRow.sCombinedMemo =commonUtils.isNotEmptyObject(sCombinedMemo)? sCombinedMemo: '合版信息'; | ||
| 1842 | + } | ||
| 1843 | + packData.push(packRow); | ||
| 1844 | + } | ||
| 1845 | + } | ||
| 1846 | + } | ||
| 1847 | + if (false && commonUtils.isNotEmptyArr(returnData.packData)) { | ||
| 1848 | + returnData.packData.filter(item => item.sControlId === controlItem.sId).forEach(async (packItem) => { | ||
| 1849 | + newCopyTo.pack = packItem; | ||
| 1850 | + let packRow = commonFunc.getDefaultData(config.packConfig, newCopyTo); // 取默认值 | ||
| 1851 | + packRow = { ...packRow, ...commonFunc.getAssignFieldValue(packAssignField, packItem, newCopyTo) }; // 取赋值字段 | ||
| 1852 | + packRow.sOriginalId = packItem.sId;/* 翻单前的sId */ | ||
| 1853 | + /* sSlaveId赋值 */ | ||
| 1854 | + const iSlaveIndex = slaveData.findIndex(item => item.sOriginalId === packItem.sSlaveId); | ||
| 1855 | + if (iSlaveIndex > -1) { | ||
| 1856 | + const slaveDataRow = slaveData[iSlaveIndex]; | ||
| 1857 | + const packRowAdd = this.handlePackDataAdd(slaveDataRow, 0, controlRow.sId, 'add'); | ||
| 1858 | + if (commonUtils.isNotEmptyObject(packRowAdd)) { | ||
| 1859 | + packRow = { ...packRow, ...packRowAdd }; | ||
| 1860 | + /* 将控制表中的合版备注sId为新的sId */ | ||
| 1861 | + let JsonData = []; | ||
| 1862 | + const jsonStr = controlRow.sCombinedMemo; | ||
| 1863 | + if (commonUtils.isNotEmptyObject(jsonStr) && commonUtils.isJSON(jsonStr)) { | ||
| 1864 | + JsonData = JSON.parse(jsonStr); | ||
| 1865 | + if (commonUtils.isNotEmptyArr(JsonData)) { | ||
| 1866 | + let sCombinedMemoNew = ''; | ||
| 1867 | + JsonData.forEach((item, index) => { | ||
| 1868 | + if (item.sId === packItem.sId) { | ||
| 1869 | + JsonData[index].sId = packRow.sId; | ||
| 1870 | + } | ||
| 1871 | + }); | ||
| 1872 | + sCombinedMemoNew = JSON.stringify(JsonData); | ||
| 1873 | + controlRow.sCombinedMemo = sCombinedMemoNew; | ||
| 1874 | + const icontrolIndex = controlData.findIndex(item => item.sId === controlRow.sId); | ||
| 1875 | + if (icontrolIndex > -1) { | ||
| 1876 | + controlData[icontrolIndex] = { ...controlData[icontrolIndex], sCombinedMemo: sCombinedMemoNew }; | ||
| 1877 | + } | ||
| 1878 | + } | ||
| 1879 | + } | ||
| 1880 | + packData.push(packRow); | ||
| 1881 | + } | ||
| 1882 | + } | ||
| 1883 | + }); | ||
| 1884 | + } | ||
| 1885 | + | ||
| 1886 | + if (commonUtils.isNotEmptyArr(returnData.processData)) { | ||
| 1887 | + returnData.processData.filter(item => item.sControlId === controlItem.sId && item.sType !== '3').forEach((processItem) => { | ||
| 1888 | + newCopyTo.process = processItem; | ||
| 1889 | + let processRow = commonFunc.getDefaultData(config.processConfig, newCopyTo); // 取默认值 | ||
| 1890 | + processRow = { ...processRow, ...commonFunc.getAssignFieldValue(processAssignField, processItem, newCopyTo) }; // 取赋值字段 | ||
| 1891 | + processRow.handleType = 'add'; | ||
| 1892 | + processRow.sId = commonUtils.createSid(); | ||
| 1893 | + processRow.sParentId = masterData.sId; | ||
| 1894 | + processRow.sControlId = controlRow.sId; | ||
| 1895 | + processRow.sPartsName = controlRow.sPartsName; | ||
| 1896 | + processData.push(processRow); | ||
| 1897 | + | ||
| 1898 | + // 配套工序 | ||
| 1899 | + if (bProcessAssort) { | ||
| 1900 | + returnProcessAssort.filter(item => item.sParentId === processRow.sProcessId).forEach(((itemProcessAssort) => { | ||
| 1901 | + const iIndex = dropDownDataProcessName.findIndex(item => item.sId === itemProcessAssort.sProcessId); | ||
| 1902 | + const iProcessIndex = returnData.processData.findIndex(item => item.sProcessId === itemProcessAssort.sProcessId && item.sControlId === controlItem.sId); | ||
| 1903 | + const iNewProcessIndex = processData.findIndex(item => item.sProcessId === itemProcessAssort.sProcessId && item.sControlId === controlRow.sId); | ||
| 1904 | + if (iIndex > -1 && iProcessIndex < 0 && iNewProcessIndex < 0) { | ||
| 1905 | + let processRow = commonFunc.getDefaultData(config.processConfig, newCopyTo); // 取默认值 | ||
| 1906 | + processRow = { ...processRow, ...commonFunc.getAssignFieldValue(processAssignAssort, dropDownDataProcessName[iIndex], newCopyTo) }; // 取赋值字段 | ||
| 1907 | + processRow.handleType = 'add'; | ||
| 1908 | + processRow.sId = commonUtils.createSid(); | ||
| 1909 | + processRow.sParentId = masterData.sId; | ||
| 1910 | + processRow.sControlId = controlRow.sId; | ||
| 1911 | + processRow.sPartsName = controlRow.sPartsName; | ||
| 1912 | + processRow.sType = dropDownDataProcessName[iIndex].sType; | ||
| 1913 | + processData.push(processRow); | ||
| 1914 | + } | ||
| 1915 | + })); | ||
| 1916 | + } | ||
| 1917 | + }); | ||
| 1918 | + } | ||
| 1919 | + | ||
| 1920 | + if (commonUtils.isNotEmptyArr(returnData.materialsData)) { | ||
| 1921 | + returnData.materialsData.filter(item => item.sControlId === controlItem.sId && item.sType !== '2').forEach((materialsItem) => { | ||
| 1922 | + newCopyTo.materials = materialsItem; | ||
| 1923 | + let materialsRow = commonFunc.getDefaultData(config.materialsConfig, newCopyTo); // 取默认值 | ||
| 1924 | + materialsRow = { ...materialsRow, ...commonFunc.getAssignFieldValue(materialsAssignField, materialsItem, newCopyTo) }; // 取赋值字段 | ||
| 1925 | + materialsRow.handleType = 'add'; | ||
| 1926 | + materialsRow.sId = commonUtils.createSid(); | ||
| 1927 | + materialsRow.sParentId = masterData.sId; | ||
| 1928 | + materialsRow.sControlId = controlRow.sId; | ||
| 1929 | + materialsRow.sPartsName = controlRow.sPartsName; | ||
| 1930 | + // 材料对应工序的ID要变化 | ||
| 1931 | + if (commonUtils.isNotEmptyArr(returnData.processData)) { | ||
| 1932 | + const iProcessIndex = processData.findIndex(item => item.sControlId === controlRow.sId && item.sSrcProcessTbId === materialsItem.sProcessTbId); | ||
| 1933 | + if (iProcessIndex > -1) { | ||
| 1934 | + materialsRow.sProcessTbId = processData[iProcessIndex].sId; | ||
| 1935 | + } | ||
| 1936 | + } | ||
| 1937 | + materialsData.push(materialsRow); | ||
| 1938 | + }); | ||
| 1939 | + } | ||
| 1940 | + }); | ||
| 1941 | + } | ||
| 1942 | + if (commonUtils.isNotEmptyArr(returnData.materialsData)) { | ||
| 1943 | + returnData.materialsData.filter(item => item.sType === '2').forEach((materialsItem) => { | ||
| 1944 | + newCopyTo.materials = materialsItem; | ||
| 1945 | + let materialsRow = commonFunc.getDefaultData(config.materialsConfig, newCopyTo); // 取默认值 | ||
| 1946 | + materialsRow = { ...materialsRow, ...commonFunc.getAssignFieldValue(materialsAssignField, materialsItem, newCopyTo) }; // 取赋值字段 | ||
| 1947 | + materialsRow.handleType = 'add'; | ||
| 1948 | + materialsRow.sId = commonUtils.createSid(); | ||
| 1949 | + materialsRow.sParentId = masterData.sId; | ||
| 1950 | + materialsData.push(materialsRow); | ||
| 1951 | + }); | ||
| 1952 | + } | ||
| 1953 | + | ||
| 1954 | + if (commonUtils.isNotEmptyArr(returnData.processData)) { | ||
| 1955 | + returnData.processData.filter(item => item.sType === '3').forEach((processItem) => { | ||
| 1956 | + newCopyTo.process = processItem; | ||
| 1957 | + let processRow = commonFunc.getDefaultData(config.processConfig, newCopyTo); // 取默认值 | ||
| 1958 | + processRow = { ...processRow, ...commonFunc.getAssignFieldValue(processAssignField, processItem, newCopyTo) }; // 取赋值字段 | ||
| 1959 | + processRow.handleType = 'add'; | ||
| 1960 | + processRow.sId = commonUtils.createSid(); | ||
| 1961 | + processRow.sParentId = masterData.sId; | ||
| 1962 | + processData.push(processRow); | ||
| 1963 | + | ||
| 1964 | + // 成品配套工序 | ||
| 1965 | + if (bProcessAssort) { | ||
| 1966 | + returnProcessAssort.filter(item => item.sParentId === processRow.sProcessId).forEach(((itemProcessAssort) => { | ||
| 1967 | + const iIndex = dropDownDataProcessName.findIndex(item => item.sId === itemProcessAssort.sProcessId); | ||
| 1968 | + const iProcessIndex = returnData.processData.findIndex(item => item.sProcessId === itemProcessAssort.sProcessId); | ||
| 1969 | + const iNewProcessIndex = processData.findIndex(item => item.sProcessId === itemProcessAssort.sProcessId); | ||
| 1970 | + if (iIndex > -1 && iProcessIndex < 0 && iNewProcessIndex < 0) { | ||
| 1971 | + if (itemProcessAssort.sType === 'single') { | ||
| 1972 | + let processRow = commonFunc.getDefaultData(config.processConfig, newCopyTo); // 取默认值 | ||
| 1973 | + processRow = { ...processRow, ...commonFunc.getAssignFieldValue(processAssignAssort, dropDownDataProcessName[iIndex], newCopyTo) }; // 取赋值字段 | ||
| 1974 | + processRow.handleType = 'add'; | ||
| 1975 | + processRow.sId = commonUtils.createSid(); | ||
| 1976 | + processRow.sParentId = masterData.sId; | ||
| 1977 | + processRow.sType = dropDownDataProcessName[iIndex].sType; | ||
| 1978 | + processData.push(processRow); | ||
| 1979 | + } else if (itemProcessAssort.sType === 'all') { | ||
| 1980 | + controlData.forEach((controlItem) => { | ||
| 1981 | + let processRow = commonFunc.getDefaultData(config.processConfig, newCopyTo); // 取默认值 | ||
| 1982 | + processRow = { ...processRow, ...commonFunc.getAssignFieldValue(processAssignAssort, dropDownDataProcessName[iIndex], newCopyTo) }; // 取赋值字段 | ||
| 1983 | + processRow.handleType = 'add'; | ||
| 1984 | + processRow.sId = commonUtils.createSid(); | ||
| 1985 | + processRow.sParentId = masterData.sId; | ||
| 1986 | + processRow.sControlId = controlItem.sId; | ||
| 1987 | + processRow.sPartsName = controlItem.sPartsName; | ||
| 1988 | + processRow.sType = dropDownDataProcessName[iIndex].sType; | ||
| 1989 | + processData.push(processRow); | ||
| 1990 | + }); | ||
| 1991 | + } | ||
| 1992 | + } | ||
| 1993 | + })); | ||
| 1994 | + } | ||
| 1995 | + }); | ||
| 1996 | + } | ||
| 1997 | + | ||
| 1998 | + if (commonUtils.isNotEmptyArr(returnData.colorData)) { | ||
| 1999 | + if (commonUtils.isNotEmptyObject(config.colorConfig)) { | ||
| 2000 | + returnData.colorData.forEach((colorItem) => { | ||
| 2001 | + newCopyTo.color = colorItem; | ||
| 2002 | + let colorRow = commonFunc.getDefaultData(config.colorConfig, newCopyTo); // 取默认值 | ||
| 2003 | + colorRow = { ...colorRow, ...commonFunc.getAssignFieldValue(colorAssignField, colorItem, newCopyTo) }; // 取赋值字段 | ||
| 2004 | + colorRow.handleType = 'add'; | ||
| 2005 | + colorRow.sId = commonUtils.createSid(); | ||
| 2006 | + colorRow.sParentId = masterData.sId; | ||
| 2007 | + colorData.push(colorRow); | ||
| 2008 | + }); | ||
| 2009 | + } | ||
| 2010 | + } | ||
| 2011 | + const treeState = this.handleGetControlTreeData(controlData, true); /* 加载树形结构数据 */ | ||
| 2012 | + this.props.onSaveState({ | ||
| 2013 | + [`${name}ChooseVisible`]: false, | ||
| 2014 | + processData, | ||
| 2015 | + materialsData, | ||
| 2016 | + controlData, | ||
| 2017 | + ...treeState, | ||
| 2018 | + colorData, | ||
| 2019 | + masterData, | ||
| 2020 | + packData, | ||
| 2021 | + controlSelectedRowKeys: [], | ||
| 2022 | + materialsSelectedRowKeys: [], | ||
| 2023 | + processSelectedRowKeys: [], | ||
| 2024 | + ...addState, | ||
| 2025 | + }); | ||
| 2026 | + } else { | ||
| 2027 | + this.props.getServiceError(dataReturn.msg); | ||
| 2028 | + } | ||
| 2029 | + } | ||
| 1630 | } else { | 2030 | } else { |
| 1631 | const addState = {}; | 2031 | const addState = {}; |
| 1632 | const { controlData } = props; | 2032 | const { controlData } = props; |