Commit cddd259c46e59ef33005b387e101a09e775ccbe1

Authored by 陈鑫涛
2 parents 1ba48b0f 4fddb986

Merge branch 'main' of http://git.xlyprint.cn/zhangz/xlyUmi into main

src/components/Common/CommonComponent/index.js
@@ -135,7 +135,7 @@ export default class CommonComponent extends Component { @@ -135,7 +135,7 @@ export default class CommonComponent extends Component {
135 const selectInputNode = currentNode.querySelector("input[class*='ant-select-selection-search-input']"); 135 const selectInputNode = currentNode.querySelector("input[class*='ant-select-selection-search-input']");
136 const antInput = currentNode.querySelector("input[class*='ant-input']"); 136 const antInput = currentNode.querySelector("input[class*='ant-input']");
137 const oInput = selectInputNode || antInput; 137 const oInput = selectInputNode || antInput;
138 - if (oInput) { 138 + if (oInput && !this.props.noDebounce) {
139 oInput.addEventListener("compositionstart", () => { 139 oInput.addEventListener("compositionstart", () => {
140 this.chineseInputting = true; 140 this.chineseInputting = true;
141 }); 141 });
src/components/Manufacture/ProcessCardPackTableTreeNew/index.js
@@ -844,6 +844,13 @@ const ProcessCardPackTableTreeNewEvent = props => { @@ -844,6 +844,13 @@ const ProcessCardPackTableTreeNewEvent = props => {
844 dispatchFunc(name, "onDataChange", ["name", "sFieldName", "changeValue", "sId", "dropDownData"], args); 844 dispatchFunc(name, "onDataChange", ["name", "sFieldName", "changeValue", "sId", "dropDownData"], args);
845 }; 845 };
846 returnProps.onDataChange = handleTableChange; 846 returnProps.onDataChange = handleTableChange;
  847 + // 行选择事件
  848 + const handleTableSelectRowChange = (...args) => {
  849 + const [name0] = args;
  850 + const name = name0.includes("materials") ? "materials" : name0;
  851 + dispatchFunc(name, "onTableSelectRowChange", ["name", "selectedRowKeys"], args);
  852 + };
  853 + returnProps.onTableSelectRowChange = handleTableSelectRowChange;
847 854
848 // 各种超链接点击 855 // 各种超链接点击
849 const handleViewChoose = (...args) => { 856 const handleViewChoose = (...args) => {
@@ -2746,6 +2753,10 @@ const controlProps = props => { @@ -2746,6 +2753,10 @@ const controlProps = props => {
2746 packData, 2753 packData,
2747 }); 2754 });
2748 }; 2755 };
  2756 + returnProps.onTableSelectRowChange = async ({ name, selectedRowKeys }) => {
  2757 + const addState = await props.onTableSelectRowChange(name, selectedRowKeys, true);
  2758 + props.onSaveState({ addState, processSelectedRowKeys: []});
  2759 + }
2749 returnProps.onViewChoose = ({ sName, record }) => { 2760 returnProps.onViewChoose = ({ sName, record }) => {
2750 const { sId } = record; /* 控制表主键 */ 2761 const { sId } = record; /* 控制表主键 */
2751 const { enabled, slaveData } = props; 2762 const { enabled, slaveData } = props;
src/components/Manufacture/WorkOrderPackTableTreeNew/index.js
@@ -1294,6 +1294,13 @@ const WorkOrderPackTableTreeNewEvent = props => { @@ -1294,6 +1294,13 @@ const WorkOrderPackTableTreeNewEvent = props => {
1294 }; 1294 };
1295 returnProps.onDataChange = handleTableChange; 1295 returnProps.onDataChange = handleTableChange;
1296 1296
  1297 + const handleTableSelectRowChange = (...args) => {
  1298 + const [name0] = args;
  1299 + const name = name0.includes("materials") ? "materials" : name0;
  1300 + dispatchFunc(name, "onTableSelectRowChange", ["name", "selectedRowKeys"], args);
  1301 + };
  1302 + returnProps.onTableSelectRowChange = handleTableSelectRowChange;
  1303 +
1297 // 各种超链接点击 1304 // 各种超链接点击
1298 const handleViewChoose = (...args) => { 1305 const handleViewChoose = (...args) => {
1299 const [name0] = args; 1306 const [name0] = args;
@@ -3419,6 +3426,10 @@ const controlProps = props => { @@ -3419,6 +3426,10 @@ const controlProps = props => {
3419 packData, 3426 packData,
3420 }); 3427 });
3421 }; 3428 };
  3429 + returnProps.onTableSelectRowChange = async ({ name, selectedRowKeys }) => {
  3430 + const addState = await props.onTableSelectRowChange(name, selectedRowKeys, true);
  3431 + props.onSaveState({ addState, processSelectedRowKeys: []});
  3432 + }
3422 returnProps.onViewChoose = ({ name, sName, record }) => { 3433 returnProps.onViewChoose = ({ name, sName, record }) => {
3423 const { sId } = record; /* 控制表主键 */ 3434 const { sId } = record; /* 控制表主键 */
3424 const { enabled, slaveData } = props; 3435 const { enabled, slaveData } = props;
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 = () => {
@@ -459,6 +498,9 @@ const QuickQuoteEvent = props => { @@ -459,6 +498,9 @@ const QuickQuoteEvent = props => {
459 const masterDataNew = { ...masterData, cpProcessName, productProcessInfo }; 498 const masterDataNew = { ...masterData, cpProcessName, productProcessInfo };
460 masterDataNew.handleType = masterDataNew.handleType || "update"; 499 masterDataNew.handleType = masterDataNew.handleType || "update";
461 masterDataNew.sId = masterDataNew.sId || commonUtils.createSid(); 500 masterDataNew.sId = masterDataNew.sId || commonUtils.createSid();
  501 + if (isWait) {
  502 + return masterDataNew;
  503 + }
462 setState(pre => ({ ...pre, masterData: masterDataNew, ...extraState })); 504 setState(pre => ({ ...pre, masterData: masterDataNew, ...extraState }));
463 } 505 }
464 }; 506 };
@@ -1210,7 +1252,7 @@ const TreeComponent = props => { @@ -1210,7 +1252,7 @@ const TreeComponent = props => {
1210 const downAbleConfigs = await getSqlDropDownData({ ...showDownConfig }); 1252 const downAbleConfigs = await getSqlDropDownData({ ...showDownConfig });
1211 1253
1212 props.setState(pre => { 1254 props.setState(pre => {
1213 - const { slaveData = [], slaveConfig, manyData = [] } = pre; 1255 + const { slaveData = [], slaveConfig, manyData = [], masterData = {} } = pre;
1214 const addState = {}; 1256 const addState = {};
1215 const defaultData = commonFunc.getDefaultData(slaveConfig, { tree: selectedNode }); 1257 const defaultData = commonFunc.getDefaultData(slaveConfig, { tree: selectedNode });
1216 const slaveDataNew = slaveData.filter(item => item.sTreeNodeName === selectedNode.showName); 1258 const slaveDataNew = slaveData.filter(item => item.sTreeNodeName === selectedNode.showName);
@@ -1245,6 +1287,9 @@ const TreeComponent = props => { @@ -1245,6 +1287,9 @@ const TreeComponent = props => {
1245 ...(sPackPath ? { sPackPath } : {}), 1287 ...(sPackPath ? { sPackPath } : {}),
1246 }; 1288 };
1247 }); 1289 });
  1290 + delete masterData.cpProcessName;
  1291 + delete masterData.productProcessInfo;
  1292 + addState.masterData = masterData;
1248 addState.extraParts = {}; 1293 addState.extraParts = {};
1249 addState.calcPriceFinished = false; 1294 addState.calcPriceFinished = false;
1250 addState.backendParamsConfig = []; 1295 addState.backendParamsConfig = [];
@@ -1821,10 +1866,7 @@ const BoxComponent = props => { @@ -1821,10 +1866,7 @@ const BoxComponent = props => {
1821 1866
1822 props.setState(pre => ({ 1867 props.setState(pre => ({
1823 ...pre, 1868 ...pre,
1824 - backendParamsConfig: commonUtils.convertStrToObj(  
1825 - sBackProcessData.find(item => item[showConfig.sName])?.sParamConfig,  
1826 - []  
1827 - ), 1869 + backendParamsConfig: commonUtils.convertStrToObj(sBackProcessData.find(item => item[showConfig.sName])?.sParamConfig, []),
1828 backendConfig: { sParentFieldsName: showConfig.sName, sBoxModel: boxModel }, 1870 backendConfig: { sParentFieldsName: showConfig.sName, sBoxModel: boxModel },
1829 })); 1871 }));
1830 }, 1872 },
@@ -1924,7 +1966,7 @@ const BoxComponent = props => { @@ -1924,7 +1966,7 @@ const BoxComponent = props => {
1924 ).toFixed(2) 1966 ).toFixed(2)
1925 ), 1967 ),
1926 dWlcd: dWlcd, 1968 dWlcd: dWlcd,
1927 - dWlkd: dWlkd, 1969 + dWlkd: dWlkd,
1928 dMachineQty: Math.floor(dProductQty / dSinglePQty), 1970 dMachineQty: Math.floor(dProductQty / dSinglePQty),
1929 dSinglePQty: dSinglePQty, 1971 dSinglePQty: dSinglePQty,
1930 dMaterialsKQty: dMaterialsKQty, 1972 dMaterialsKQty: dMaterialsKQty,
@@ -2195,12 +2237,20 @@ const BoxComponent = props => { @@ -2195,12 +2237,20 @@ const BoxComponent = props => {
2195 height: "290px", 2237 height: "290px",
2196 backgroundColor: "#fff", 2238 backgroundColor: "#fff",
2197 borderRight: "1px solid #ccc", 2239 borderRight: "1px solid #ccc",
2198 - position:'relative' 2240 + position: "relative",
2199 }} 2241 }}
2200 > 2242 >
2201 - <div style={{position:'absolute',left:'50%',top:'50%',transform:' translate(-50%, -50%)',width:'100%',height:'200px'}}>  
2202 - <DynamicSVG {...svgProps} />  
2203 - 2243 + <div
  2244 + style={{
  2245 + position: "absolute",
  2246 + left: "50%",
  2247 + top: "50%",
  2248 + transform: " translate(-50%, -50%)",
  2249 + width: "100%",
  2250 + height: "200px",
  2251 + }}
  2252 + >
  2253 + <DynamicSVG {...svgProps} />
2204 </div> 2254 </div>
2205 </div> 2255 </div>
2206 ) : ( 2256 ) : (
src/components/QuoQuotation/QuotationPackTableTree/QuotationPackTableTree.js
@@ -1806,6 +1806,7 @@ class QuotationPackTableTree extends Component { @@ -1806,6 +1806,7 @@ class QuotationPackTableTree extends Component {
1806 treeSelectedKeys = selectedRowKeys; /* 把树形选中节点赋值给表格部件选中节点 */ 1806 treeSelectedKeys = selectedRowKeys; /* 把树形选中节点赋值给表格部件选中节点 */
1807 addState.treeSelectedKeys = treeSelectedKeys; 1807 addState.treeSelectedKeys = treeSelectedKeys;
1808 } 1808 }
  1809 + addState.processSelectedRowKeys = []; /* 部件选中时 清空工序的选中 */
1809 } 1810 }
1810 this.props.onSaveState(addState); 1811 this.props.onSaveState(addState);
1811 } else if (name === 'materials' || name === 'process') { 1812 } else if (name === 'materials' || name === 'process') {