Commit 1c53d366f4d55d37432c3d7bf0f51a3ee34c09d4

Authored by zhangzzzz
1 parent 96b0de66

切换树节点时,设置成品工序默认值;

src/components/QuickQuote/index.jsx
@@ -164,37 +164,76 @@ const QuickQuoteEvent = props => { @@ -164,37 +164,76 @@ const QuickQuoteEvent = props => {
164 }, [masterConfig]); 164 }, [masterConfig]);
165 165
166 // 切换树节点时,设置后道参数默认值 166 // 切换树节点时,设置后道参数默认值
167 - const { slaveData = [] } = state; 167 + const { slaveData = [], masterData = {} } = state;
168 useEffect(() => { 168 useEffect(() => {
169 if (!slaveData.length) return; 169 if (!slaveData.length) return;
170 const bNotInit = slaveData.some(item => item.sBackProcessData); 170 const bNotInit = slaveData.some(item => item.sBackProcessData);
171 - if (bNotInit) return;  
172 -  
173 - const { downAbleConfigs = [] } = state;  
174 - const downAbleConfigsNew = downAbleConfigs.filter(item => item.sDefaultProcessId);  
175 - if (!downAbleConfigsNew.length) return;  
176 -  
177 - const slaveDataNew = slaveData.map(item => {  
178 - let sBackProcessData = [];  
179 - downAbleConfigsNew.forEach(({ sChineseDropDown: sChineseDropDownStr, sDefaultProcessId, sName }) => {  
180 - const sChineseDropDown = commonUtils.convertStrToObj(sChineseDropDownStr, []);  
181 - const defaultProcess = sChineseDropDown.find(item => item.sId === sDefaultProcessId);  
182 - const name = `slaveDown${item.sBoxModel}`;  
183 - const sFieldName = sName;  
184 - const changeValue = { [sFieldName]: defaultProcess.sId };  
185 - const dropDownData = sChineseDropDown;  
186 - const slaveDataReturn = onDataChange(name, sFieldName, changeValue, item.sId, dropDownData, true);  
187 - sBackProcessData = [...sBackProcessData, ...slaveDataReturn.sBackProcessData];  
188 - });  
189 - return {  
190 - ...item,  
191 - sBackProcessData,  
192 - };  
193 - }); 171 + if (!bNotInit) {
  172 + const { downAbleConfigs = [] } = state;
  173 + const downAbleConfigsNew = downAbleConfigs.filter(item => item.sDefaultProcessId);
  174 + if (downAbleConfigsNew.length) {
  175 + const slaveDataNew = slaveData.map(item => {
  176 + let sBackProcessData = [];
  177 + downAbleConfigsNew.forEach(({ sChineseDropDown: sChineseDropDownStr, sDefaultProcessId, sName }) => {
  178 + const sChineseDropDown = commonUtils.convertStrToObj(sChineseDropDownStr, []);
  179 + const defaultProcess = sChineseDropDown.find(item => item.sId === sDefaultProcessId);
  180 + const name = `slaveDown${item.sBoxModel}`;
  181 + const sFieldName = sName;
  182 + const changeValue = { [sFieldName]: defaultProcess.sId };
  183 + const dropDownData = sChineseDropDown;
  184 + const slaveDataReturn = onDataChange(name, sFieldName, changeValue, item.sId, dropDownData, true);
  185 + sBackProcessData = [...sBackProcessData, ...slaveDataReturn.sBackProcessData];
  186 + });
  187 + return {
  188 + ...item,
  189 + sBackProcessData,
  190 + };
  191 + });
194 192
195 - setState(pre => {  
196 - return { ...pre, slaveData: slaveDataNew };  
197 - }); 193 + setState(pre => {
  194 + return { ...pre, slaveData: slaveDataNew };
  195 + });
  196 + }
  197 + }
  198 +
  199 + const bNotInit1 = !!masterData.cpProcessName;
  200 + if (!bNotInit1) {
  201 + const { finishedConfigs = [] } = state;
  202 + const finishedConfigsNew = finishedConfigs.filter(item => item.sDefaultProcessId);
  203 + if (finishedConfigsNew.length) {
  204 + let [cpProcessNameList, productProcessInfo] = [[], []];
  205 + finishedConfigsNew.forEach(({ sChineseDropDown: sChineseDropDownStr, sDefaultProcessId, sName }) => {
  206 + const sChineseDropDown = commonUtils.convertStrToObj(sChineseDropDownStr, []);
  207 + const defaultProcess = sChineseDropDown.find(item => item.sId === sDefaultProcessId);
  208 + const name = "finished";
  209 + const sFieldName = sName;
  210 + const changeValue = { [sFieldName]: defaultProcess.sId };
  211 + const dropDownData = sChineseDropDown;
  212 + const { cpProcessName: cpProcessNameNew, productProcessInfo: productProcessInfoNew } = onDataChange(
  213 + name,
  214 + sFieldName,
  215 + changeValue,
  216 + masterData.sId,
  217 + dropDownData,
  218 + true
  219 + );
  220 + cpProcessNameNew.split(",").forEach((item, index) => {
  221 + if (!cpProcessNameList.includes(item)) {
  222 + cpProcessNameList.push(item);
  223 + productProcessInfo.push(productProcessInfoNew[index]);
  224 + }
  225 + });
  226 + });
  227 + setState(pre => ({
  228 + ...pre,
  229 + masterData: {
  230 + ...masterData,
  231 + cpProcessName: cpProcessNameList.join(","),
  232 + productProcessInfo,
  233 + },
  234 + }));
  235 + }
  236 + }
198 }, [slaveData.map(item => item.sId).toString()]); 237 }, [slaveData.map(item => item.sId).toString()]);
199 238
200 addState.onBackClick = () => { 239 addState.onBackClick = () => {
@@ -457,6 +496,9 @@ const QuickQuoteEvent = props => { @@ -457,6 +496,9 @@ const QuickQuoteEvent = props => {
457 const masterDataNew = { ...masterData, cpProcessName, productProcessInfo }; 496 const masterDataNew = { ...masterData, cpProcessName, productProcessInfo };
458 masterDataNew.handleType = masterDataNew.handleType || "update"; 497 masterDataNew.handleType = masterDataNew.handleType || "update";
459 masterDataNew.sId = masterDataNew.sId || commonUtils.createSid(); 498 masterDataNew.sId = masterDataNew.sId || commonUtils.createSid();
  499 + if (isWait) {
  500 + return masterDataNew;
  501 + }
460 setState(pre => ({ ...pre, masterData: masterDataNew, ...extraState })); 502 setState(pre => ({ ...pre, masterData: masterDataNew, ...extraState }));
461 } 503 }
462 }; 504 };
@@ -1207,7 +1249,7 @@ const TreeComponent = props => { @@ -1207,7 +1249,7 @@ const TreeComponent = props => {
1207 const downAbleConfigs = await getSqlDropDownData({ ...showDownConfig }); 1249 const downAbleConfigs = await getSqlDropDownData({ ...showDownConfig });
1208 1250
1209 props.setState(pre => { 1251 props.setState(pre => {
1210 - const { slaveData = [], slaveConfig, manyData = [] } = pre; 1252 + const { slaveData = [], slaveConfig, manyData = [], masterData = {} } = pre;
1211 const addState = {}; 1253 const addState = {};
1212 const defaultData = commonFunc.getDefaultData(slaveConfig, { tree: selectedNode }); 1254 const defaultData = commonFunc.getDefaultData(slaveConfig, { tree: selectedNode });
1213 const slaveDataNew = slaveData.filter(item => item.sTreeNodeName === selectedNode.showName); 1255 const slaveDataNew = slaveData.filter(item => item.sTreeNodeName === selectedNode.showName);
@@ -1242,6 +1284,9 @@ const TreeComponent = props => { @@ -1242,6 +1284,9 @@ const TreeComponent = props => {
1242 ...(sPackPath ? { sPackPath } : {}), 1284 ...(sPackPath ? { sPackPath } : {}),
1243 }; 1285 };
1244 }); 1286 });
  1287 + delete masterData.cpProcessName;
  1288 + delete masterData.productProcessInfo;
  1289 + addState.masterData = masterData;
1245 addState.extraParts = {}; 1290 addState.extraParts = {};
1246 addState.calcPriceFinished = false; 1291 addState.calcPriceFinished = false;
1247 addState.backendParamsConfig = []; 1292 addState.backendParamsConfig = [];
@@ -1818,10 +1863,7 @@ const BoxComponent = props => { @@ -1818,10 +1863,7 @@ const BoxComponent = props => {
1818 1863
1819 props.setState(pre => ({ 1864 props.setState(pre => ({
1820 ...pre, 1865 ...pre,
1821 - backendParamsConfig: commonUtils.convertStrToObj(  
1822 - sBackProcessData.find(item => item[showConfig.sName])?.sParamConfig,  
1823 - []  
1824 - ), 1866 + backendParamsConfig: commonUtils.convertStrToObj(sBackProcessData.find(item => item[showConfig.sName])?.sParamConfig, []),
1825 backendConfig: { sParentFieldsName: showConfig.sName, sBoxModel: boxModel }, 1867 backendConfig: { sParentFieldsName: showConfig.sName, sBoxModel: boxModel },
1826 })); 1868 }));
1827 }, 1869 },
@@ -1921,7 +1963,7 @@ const BoxComponent = props => { @@ -1921,7 +1963,7 @@ const BoxComponent = props => {
1921 ).toFixed(2) 1963 ).toFixed(2)
1922 ), 1964 ),
1923 dWlcd: dWlcd, 1965 dWlcd: dWlcd,
1924 - dWlkd: dWlkd, 1966 + dWlkd: dWlkd,
1925 dMachineQty: Math.floor(dProductQty / dSinglePQty), 1967 dMachineQty: Math.floor(dProductQty / dSinglePQty),
1926 dSinglePQty: dSinglePQty, 1968 dSinglePQty: dSinglePQty,
1927 dMaterialsKQty: dMaterialsKQty, 1969 dMaterialsKQty: dMaterialsKQty,
@@ -2192,12 +2234,20 @@ const BoxComponent = props => { @@ -2192,12 +2234,20 @@ const BoxComponent = props => {
2192 height: "290px", 2234 height: "290px",
2193 backgroundColor: "#fff", 2235 backgroundColor: "#fff",
2194 borderRight: "1px solid #ccc", 2236 borderRight: "1px solid #ccc",
2195 - position:'relative' 2237 + position: "relative",
2196 }} 2238 }}
2197 > 2239 >
2198 - <div style={{position:'absolute',left:'50%',top:'50%',transform:' translate(-50%, -50%)',width:'100%',height:'200px'}}>  
2199 - <DynamicSVG {...svgProps} />  
2200 - 2240 + <div
  2241 + style={{
  2242 + position: "absolute",
  2243 + left: "50%",
  2244 + top: "50%",
  2245 + transform: " translate(-50%, -50%)",
  2246 + width: "100%",
  2247 + height: "200px",
  2248 + }}
  2249 + >
  2250 + <DynamicSVG {...svgProps} />
2201 </div> 2251 </div>
2202 </div> 2252 </div>
2203 ) : ( 2253 ) : (