Commit 657943ec40f9aa43d280bc318bdbd5005ca56ade

Authored by 陈鑫涛
2 parents 6f61bf2e e5416ae5

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

src/components/Common/CommonBase.js
... ... @@ -451,7 +451,7 @@ export default (ChildComponent) => {
451 451 }
452 452 const url = `${commonConfig.server_host}business/getSelectLimit/${showConfig.sId}?sModelsId=${this.state.sModelsId}&sName=${formSrcRoute}`;
453 453 /* 参数 */
454   - const nameNew = name.includes('slaveUp') ? 'slave' : name;
  454 + const nameNew = (name.includes('slaveUp') || name.includes('slaveDown')) ? 'slave' : name;
455 455 const conditonValues = this.getSqlCondition(showConfig, nameNew, record);
456 456  
457 457 const body = {
... ...
src/components/QuickQuote/index.jsx
... ... @@ -526,6 +526,8 @@ const QuickQuoteEvent = props => {
526 526 }, {}),
527 527 dPartsQty: masterData.dProductQty,
528 528 // iPositiveColor: Number(item.sColor),
  529 + iOppositeColor: item.sBackProcessData?.find(item => item.bPrintParams)?.iPositiveColor || 0,
  530 + iOppositeSpecialColor: item.sBackProcessData?.find(item => item.bPrintParams)?.iPositiveSpecialColor || 0,
529 531 sPartsName: item.sBoxModel,
530 532 materialsInfo: item.materialsInfo?.filter(x => commonUtils.isNotEmptyObject(x)),
531 533 processInfo:
... ... @@ -1335,23 +1337,25 @@ const BoxComponent = props => {
1335 1337 };
1336 1338  
1337 1339 const getUpViewPropsByITag = iTag => {
1338   - const config = slaveConfig.gdsconfigformslave.filter(item => {
1339   - if (item.sName === "dSumPQty" && selectedNode.sTypeKey !== "huace") {
1340   - return false;
1341   - }
1342   - const { bAdvancedSetting, bFlap, bFold } = slaveRowData;
1343   - const shouldExcludeItem = (condition, itemNameList) => !condition && itemNameList.includes(item.sName);
1344   -
1345   - if (
1346   - shouldExcludeItem(bAdvancedSetting, ["dPortrait", "dHorizontal"]) ||
1347   - shouldExcludeItem(bFlap, ["dFlap"]) ||
1348   - shouldExcludeItem(bFold, ["sFold", "dAdhesive", "dFold"])
1349   - ) {
1350   - return false;
1351   - }
  1340 + const config = slaveConfig.gdsconfigformslave
  1341 + .filter(item => !["sPrint", "sColor", "iPrintModePo"].includes(item.sName))
  1342 + .filter(item => {
  1343 + if (item.sName === "dSumPQty" && selectedNode.sTypeKey !== "huace") {
  1344 + return false;
  1345 + }
  1346 + const { bAdvancedSetting, bFlap, bFold } = slaveRowData;
  1347 + const shouldExcludeItem = (condition, itemNameList) => !condition && itemNameList.includes(item.sName);
  1348 +
  1349 + if (
  1350 + shouldExcludeItem(bAdvancedSetting, ["dPortrait", "dHorizontal"]) ||
  1351 + shouldExcludeItem(bFlap, ["dFlap"]) ||
  1352 + shouldExcludeItem(bFold, ["sFold", "dAdhesive", "dFold"])
  1353 + ) {
  1354 + return false;
  1355 + }
1352 1356  
1353   - return item.iTag === iTag;
1354   - });
  1357 + return item.iTag === iTag;
  1358 + });
1355 1359 let boxConfigList = [];
1356 1360 if (iTag === 20) {
1357 1361 const showNameKeyList = ["dZBLB", "dSBLB", "dYBLB", "dXBLB", "dZBJJ", "dYBJJ", "dSBJJ", "dXBJJ"];
... ... @@ -1825,6 +1829,7 @@ const BoxComponent = props => {
1825 1829 {PrintingParameters}
1826 1830 </Divider>
1827 1831 <div className={styles.viewTable1}>
  1832 + <PrintParamsComponent {...props} />
1828 1833 <CommonViewTable {...upViewProps12} />
1829 1834 </div>
1830 1835 {/* <Divider {...dividerProps} orientationMargin="10px">
... ... @@ -1977,6 +1982,92 @@ const BoxComponent = props =&gt; {
1977 1982 );
1978 1983 };
1979 1984  
  1985 +// 印刷参数组件(印刷、颜色、单双面)
  1986 +const PrintParamsComponent = props => {
  1987 + const { state, setState, boxModel } = props;
  1988 + const { slaveConfig, slaveData, selectedNode } = state;
  1989 +
  1990 + const slaveRowData = slaveData.find(item => item.sTreeNodeName === selectedNode.showName && item.sBoxModel === boxModel) || {};
  1991 + const slaveRowDataIndex = slaveData.findIndex(item => item.sId === slaveRowData.sId);
  1992 + const { sBackProcessData = [] } = slaveRowData;
  1993 + const printParams = sBackProcessData.filter(item => item.bPrintParams);
  1994 +
  1995 + const printParamsConfig = slaveConfig.gdsconfigformslave
  1996 + .filter(item => ["sPrint", "sColor", "iPrintModePo"].includes(item.sName))
  1997 + .map(item => {
  1998 + return {
  1999 + ...item,
  2000 + iColValue: 8,
  2001 + };
  2002 + });
  2003 +
  2004 + const result = [];
  2005 + for (let i = 0; i < printParams.length + 1; i++) {
  2006 + const printParamsItem = printParams[i - 1];
  2007 + const viewRow = { ...(i === 0 ? slaveRowData : printParamsItem), sProductClassifyId: selectedNode.sId };
  2008 +
  2009 + const viewProps = {
  2010 + ...props,
  2011 + viewConfigs: printParamsConfig,
  2012 + tableConfig: { ...slaveConfig, gdsconfigformslave: printParamsConfig },
  2013 + iColValueView: 24,
  2014 + viewRow,
  2015 + tableName: `${i === 0 ? "slaveUp" : "slaveDown"}${boxModel}`,
  2016 + onDataChange: (...args) => {
  2017 + if (i === 0) {
  2018 + props.onDataChange(...args);
  2019 + return;
  2020 + }
  2021 +
  2022 + const iIndex = sBackProcessData.findIndex(item => item.sId === printParamsItem.sId);
  2023 + sBackProcessData[iIndex] = { ...sBackProcessData[iIndex], ...args[2] };
  2024 + slaveData[slaveRowDataIndex] = { ...slaveRowData, sBackProcessData };
  2025 + setState(pre => {
  2026 + return { ...pre, slaveData };
  2027 + });
  2028 + },
  2029 + };
  2030 +
  2031 + result.push(
  2032 + <div className={styles.materialsLine}>
  2033 + <div className={styles.materialsViewTable}>
  2034 + <CommonViewTable {...viewProps} />
  2035 + </div>
  2036 + <div className={styles.materialsBtns} style={{ width: "25%", paddingRight: "calc(25% - 85px)" }}>
  2037 + <Button
  2038 + type="primary"
  2039 + icon={<PlusOutlined />}
  2040 + onClick={() => {
  2041 + sBackProcessData.push({
  2042 + sId: commonUtils.createSid(),
  2043 + bPrintParams: true,
  2044 + });
  2045 + slaveData[slaveRowDataIndex] = { ...slaveRowData, sBackProcessData };
  2046 + setState(pre => {
  2047 + return { ...pre, slaveData };
  2048 + });
  2049 + }}
  2050 + />
  2051 + <Button
  2052 + type="primary"
  2053 + icon={<MinusOutlined />}
  2054 + onClick={() => {
  2055 + const iIndex = sBackProcessData.findIndex(item => item.sId === printParamsItem.sId);
  2056 + sBackProcessData.splice(iIndex, 1);
  2057 + slaveData[slaveRowDataIndex] = { ...slaveRowData, sBackProcessData };
  2058 + setState(pre => {
  2059 + return { ...pre, slaveData };
  2060 + });
  2061 + }}
  2062 + style={i === 0 ? { visibility: "hidden" } : {}}
  2063 + />
  2064 + </div>
  2065 + </div>
  2066 + );
  2067 + }
  2068 + return result;
  2069 +};
  2070 +
1980 2071 // 材料组件
1981 2072 const MaterialsComponent = props => {
1982 2073 const { state, slaveRowData, boxModel } = props;
... ...