From 632bb5a9a0f07c01ffba53e9009d69c4a50c2bd7 Mon Sep 17 00:00:00 2001 From: yangyang Date: 星期五, 21 三月 2025 12:50:01 +0800 Subject: [PATCH] Merge branch 'devlop' of http://47.97.1.152:5880/r/wms-master into devlop --- rsf-admin/src/page/basicInfo/warehouse/WarehouseList.jsx | 2 rsf-admin/src/page/basicInfo/loc/BatchModal.jsx | 33 +++++ rsf-admin/src/page/basicInfo/locType/LocTypeEdit.jsx | 7 + rsf-admin/package.json | 1 rsf-admin/src/page/basicInfo/locType/LocTypeList.jsx | 1 rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx | 52 ++++++++-- rsf-admin/src/page/basicInfo/loc/InitModal.jsx | 16 +-- rsf-admin/src/page/basicInfo/loc/LocCreate.jsx | 6 + rsf-admin/src/page/warehouseAreas/WarehouseAreasCreate.jsx | 1 rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx | 2 rsf-admin/src/page/basicInfo/locType/LocTypeCreate.jsx | 7 + rsf-admin/src/page/warehouseAreas/WarehouseAreasEdit.jsx | 1 rsf-admin/src/page/basicInfo/warehouse/WarehouseCreate.jsx | 4 rsf-admin/src/i18n/zh.js | 1 rsf-admin/src/page/basicInfo/loc/LocEdit.jsx | 6 + rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx | 2 rsf-admin/package-lock.json | 125 ++++++++++++++++-------- rsf-admin/pnpm-lock.yaml | 12 ++ rsf-admin/src/i18n/en.js | 1 rsf-admin/src/page/basicInfo/warehouse/WarehouseEdit.jsx | 4 rsf-admin/.env | 4 21 files changed, 208 insertions(+), 80 deletions(-) diff --git a/rsf-admin/.env b/rsf-admin/.env index a8ce658..ac2bce4 100644 --- a/rsf-admin/.env +++ b/rsf-admin/.env @@ -1,3 +1,3 @@ -VITE_BASE_IP=192.168.4.24 -# VITE_BASE_IP=47.76.147.249 +VITE_BASE_IP=192.168.4.16 +#VITE_BASE_IP=47.76.147.249 VITE_BASE_PORT=8080 diff --git a/rsf-admin/package-lock.json b/rsf-admin/package-lock.json index 28a49f8..2c2e71f 100644 --- a/rsf-admin/package-lock.json +++ b/rsf-admin/package-lock.json @@ -23,14 +23,17 @@ "pixi.js": "^7.4.0", "prop-types": "^15.8.1", "ra-i18n-polyglot": "^5.6.2", + "ra-language-chinese": "^2.0.10", "ra-language-english": "^5.6.2", "react": "^18.3.0", "react-admin": "^5.6.3", + "react-barcode": "^1.6.1", "react-dom": "^18.3.0", "react-hook-form": "^7.53.0", "react-router": "^6.22.0", "react-router-dom": "^6.26.1", "react-syntax-highlighter": "^15.5.0", + "react-to-print": "^3.0.5", "three": "^0.155.0", "tweedle.js": "^2.1.0" }, @@ -367,7 +370,7 @@ }, "node_modules/@emotion/babel-plugin": { "version": "11.13.5", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "resolved": "https://registry.npmmirror.com/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", "license": "MIT", "dependencies": { @@ -386,13 +389,13 @@ }, "node_modules/@emotion/babel-plugin/node_modules/convert-source-map": { "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "license": "MIT" }, "node_modules/@emotion/babel-plugin/node_modules/escape-string-regexp": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "license": "MIT", "engines": { @@ -435,7 +438,7 @@ }, "node_modules/@emotion/react": { "version": "11.14.0", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "resolved": "https://registry.npmmirror.com/@emotion/react/-/react-11.14.0.tgz", "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", "license": "MIT", "dependencies": { @@ -477,7 +480,7 @@ }, "node_modules/@emotion/styled": { "version": "11.14.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.0.tgz", + "resolved": "https://registry.npmmirror.com/@emotion/styled/-/styled-11.14.0.tgz", "integrity": "sha512-XxfOnXFffatap2IyCeJyNov3kiDQWoR08gPUQxvbL7fxKryGBKUZUkG6Hz48DZwVrJSVh9sJboyV1Ds4OW6SgA==", "license": "MIT", "dependencies": { @@ -505,7 +508,7 @@ }, "node_modules/@emotion/use-insertion-effect-with-fallbacks": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "resolved": "https://registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", "license": "MIT", "peerDependencies": { @@ -1247,7 +1250,7 @@ }, "node_modules/@mui/private-theming": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/private-theming/-/private-theming-6.4.8.tgz", "integrity": "sha512-sWwQoNSn6elsPTAtSqCf+w5aaGoh7AASURNmpy+QTTD/zwJ0Jgwt0ZaaP6mXq2IcgHxYnYloM/+vJgHPMkRKTQ==", "license": "MIT", "dependencies": { @@ -1274,7 +1277,7 @@ }, "node_modules/@mui/private-theming/node_modules/@mui/utils": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/utils/-/utils-6.4.8.tgz", "integrity": "sha512-C86gfiZ5BfZ51KqzqoHi1WuuM2QdSKoFhbkZeAfQRB+jCc4YNhhj11UXFVMMsqBgZ+Zy8IHNJW3M9Wj/LOwRXQ==", "license": "MIT", "dependencies": { @@ -1304,13 +1307,13 @@ }, "node_modules/@mui/private-theming/node_modules/react-is": { "version": "19.0.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.0.0.tgz", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-19.0.0.tgz", "integrity": "sha512-H91OHcwjZsbq3ClIDHMzBShc1rotbfACdWENsmEf0IFvZ3FgGPtdHMcsv45bQ1hAbgdfiA8SnxTKfDS+x/8m2g==", "license": "MIT" }, "node_modules/@mui/styled-engine": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/styled-engine/-/styled-engine-6.4.8.tgz", "integrity": "sha512-oyjx1b1FvUCI85ZMO4trrjNxGm90eLN3Ohy0AP/SqK5gWvRQg1677UjNf7t6iETOKAleHctJjuq0B3aXO2gtmw==", "license": "MIT", "dependencies": { @@ -1344,7 +1347,7 @@ }, "node_modules/@mui/system": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/system/-/system-6.4.8.tgz", "integrity": "sha512-gV7iBHoqlsIenU2BP0wq14BefRoZcASZ/4LeyuQglayBl+DfLX5rEd3EYR3J409V2EZpR0NOM1LATAGlNk2cyA==", "license": "MIT", "dependencies": { @@ -1384,7 +1387,7 @@ }, "node_modules/@mui/system/node_modules/@mui/utils": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/utils/-/utils-6.4.8.tgz", "integrity": "sha512-C86gfiZ5BfZ51KqzqoHi1WuuM2QdSKoFhbkZeAfQRB+jCc4YNhhj11UXFVMMsqBgZ+Zy8IHNJW3M9Wj/LOwRXQ==", "license": "MIT", "dependencies": { @@ -1414,13 +1417,13 @@ }, "node_modules/@mui/system/node_modules/react-is": { "version": "19.0.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.0.0.tgz", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-19.0.0.tgz", "integrity": "sha512-H91OHcwjZsbq3ClIDHMzBShc1rotbfACdWENsmEf0IFvZ3FgGPtdHMcsv45bQ1hAbgdfiA8SnxTKfDS+x/8m2g==", "license": "MIT" }, "node_modules/@mui/types": { "version": "7.2.24", - "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.24.tgz", + "resolved": "https://registry.npmmirror.com/@mui/types/-/types-7.2.24.tgz", "integrity": "sha512-3c8tRt/CbWZ+pEg7QpSwbdxOk36EfmhbKf6AGZsD1EcLDLTSZoxxJ86FVtcjxvjuhdyBiWKSTGZFaXCnidO2kw==", "license": "MIT", "peerDependencies": { @@ -2311,7 +2314,7 @@ }, "node_modules/@types/parse-json": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "resolved": "https://registry.npmmirror.com/@types/parse-json/-/parse-json-4.0.2.tgz", "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "license": "MIT" }, @@ -2341,7 +2344,7 @@ }, "node_modules/@types/react-transition-group": { "version": "4.4.12", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz", + "resolved": "https://registry.npmmirror.com/@types/react-transition-group/-/react-transition-group-4.4.12.tgz", "integrity": "sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==", "license": "MIT", "peerDependencies": { @@ -2356,7 +2359,7 @@ }, "node_modules/@types/trusted-types": { "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "resolved": "https://registry.npmmirror.com/@types/trusted-types/-/trusted-types-2.0.7.tgz", "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", "license": "MIT", "optional": true @@ -2793,7 +2796,7 @@ }, "node_modules/attr-accept": { "version": "2.2.5", - "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.5.tgz", + "resolved": "https://registry.npmmirror.com/attr-accept/-/attr-accept-2.2.5.tgz", "integrity": "sha512-0bDNnY/u6pPwHDMoF0FieU354oBi0a8rD9FcsLwzcGWbc8KS8KPIi7y+s13OlVY+gMWc/9xEMUgNE6Qm8ZllYQ==", "license": "MIT", "engines": { @@ -2802,7 +2805,7 @@ }, "node_modules/autosuggest-highlight": { "version": "3.3.4", - "resolved": "https://registry.npmjs.org/autosuggest-highlight/-/autosuggest-highlight-3.3.4.tgz", + "resolved": "https://registry.npmmirror.com/autosuggest-highlight/-/autosuggest-highlight-3.3.4.tgz", "integrity": "sha512-j6RETBD2xYnrVcoV1S5R4t3WxOlWZKyDQjkwnggDPSjF5L4jV98ZltBpvPvbkM1HtoSe5o+bNrTHyjPbieGeYA==", "license": "MIT", "dependencies": { @@ -2836,7 +2839,7 @@ }, "node_modules/babel-plugin-macros": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "resolved": "https://registry.npmmirror.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", "license": "MIT", "dependencies": { @@ -2851,7 +2854,7 @@ }, "node_modules/babel-plugin-macros/node_modules/resolve": { "version": "1.22.10", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.10.tgz", "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "license": "MIT", "dependencies": { @@ -3070,7 +3073,7 @@ }, "node_modules/cosmiconfig": { "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "resolved": "https://registry.npmmirror.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz", "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "license": "MIT", "dependencies": { @@ -3108,7 +3111,7 @@ }, "node_modules/css-mediaquery": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/css-mediaquery/-/css-mediaquery-0.1.2.tgz", + "resolved": "https://registry.npmmirror.com/css-mediaquery/-/css-mediaquery-0.1.2.tgz", "integrity": "sha512-COtn4EROW5dBGlE/4PiKnh6rZpAPxDeFLaEEwt4i10jpDMFt2EhQGS79QmmrO+iKCHv0PU/HrOWEhijFd1x99Q==", "license": "BSD" }, @@ -3282,7 +3285,7 @@ }, "node_modules/dompurify": { "version": "3.2.4", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz", + "resolved": "https://registry.npmmirror.com/dompurify/-/dompurify-3.2.4.tgz", "integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==", "license": "(MPL-2.0 OR Apache-2.0)", "optionalDependencies": { @@ -3302,7 +3305,7 @@ }, "node_modules/error-ex": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "license": "MIT", "dependencies": { @@ -3943,7 +3946,7 @@ }, "node_modules/file-selector": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-2.1.2.tgz", + "resolved": "https://registry.npmmirror.com/file-selector/-/file-selector-2.1.2.tgz", "integrity": "sha512-QgXo+mXTe8ljeqUFaX3QVHc5osSItJ/Km+xpocx0aSqWGMSCf6qYs/VnzZgS864Pjn5iceMRFigeAV7AfTlaig==", "license": "MIT", "dependencies": { @@ -3955,7 +3958,7 @@ }, "node_modules/file-selector/node_modules/tslib": { "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "license": "0BSD" }, @@ -3981,7 +3984,7 @@ }, "node_modules/find-root": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "resolved": "https://registry.npmmirror.com/find-root/-/find-root-1.1.0.tgz", "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", "license": "MIT" }, @@ -4525,7 +4528,7 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "resolved": "https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "license": "MIT" }, @@ -4586,7 +4589,7 @@ }, "node_modules/is-core-module": { "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.16.1.tgz", "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "license": "MIT", "dependencies": { @@ -4927,6 +4930,12 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsbarcode": { + "version": "3.11.6", + "resolved": "https://registry.npmmirror.com/jsbarcode/-/jsbarcode-3.11.6.tgz", + "integrity": "sha512-G5TKGyKY1zJo0ZQKFM1IIMfy0nF2rs92BLlCz+cU4/TazIc4ZH+X1GYeDRt7TKjrYqmPfTjwTBkU/QnQlsYiuA==", + "license": "MIT" + }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz", @@ -4946,7 +4955,7 @@ }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "license": "MIT" }, @@ -5021,7 +5030,7 @@ }, "node_modules/lines-and-columns": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "license": "MIT" }, @@ -5427,7 +5436,7 @@ }, "node_modules/parse-json": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "resolved": "https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "license": "MIT", "dependencies": { @@ -5737,6 +5746,12 @@ "ra-core": "^5.6.3" } }, + "node_modules/ra-language-chinese": { + "version": "2.0.10", + "resolved": "https://registry.npmmirror.com/ra-language-chinese/-/ra-language-chinese-2.0.10.tgz", + "integrity": "sha512-k+X6XdkBEZnmpKIJZj9Lb77Lj8LCmterilJTj2ovp3i8/H/dLo9IujASfjFypjHnVUpN7Y63LT19kgPrS6+row==", + "license": "MIT" + }, "node_modules/ra-language-english": { "version": "5.6.3", "resolved": "https://registry.npmjs.org/ra-language-english/-/ra-language-english-5.6.3.tgz", @@ -5764,7 +5779,7 @@ }, "node_modules/react-admin": { "version": "5.6.3", - "resolved": "https://registry.npmjs.org/react-admin/-/react-admin-5.6.3.tgz", + "resolved": "https://registry.npmmirror.com/react-admin/-/react-admin-5.6.3.tgz", "integrity": "sha512-nZAlX1uRKgQKAQcOxMwugkjbDL7CPuU799lxoaxLK59O7AbkQl161uVqWLNUo4eaZRCpXCVqIe2an4lGlxs10g==", "license": "MIT", "dependencies": { @@ -5787,7 +5802,7 @@ }, "node_modules/react-admin/node_modules/@mui/core-downloads-tracker": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/core-downloads-tracker/-/core-downloads-tracker-6.4.8.tgz", "integrity": "sha512-vjP4+A1ybyCRhDZC7r5EPWu/gLseFZxaGyPdDl94vzVvk6Yj6gahdaqcjbhkaCrJjdZj90m3VioltWPAnWF/zw==", "license": "MIT", "funding": { @@ -5797,7 +5812,7 @@ }, "node_modules/react-admin/node_modules/@mui/icons-material": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/icons-material/-/icons-material-6.4.8.tgz", "integrity": "sha512-LKGWiLWRyoOw3dWxZQ+lV//mK+4DVTTAiLd2ljmJdD6XV0rDB8JFKjRD9nyn9cJAU5XgWnii7ZR3c93ttUnMKg==", "license": "MIT", "dependencies": { @@ -5823,7 +5838,7 @@ }, "node_modules/react-admin/node_modules/@mui/material": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/material/-/material-6.4.8.tgz", "integrity": "sha512-5S9UTjKZZBd9GfbcYh/nYfD9cv6OXmj5Y7NgKYfk7JcSoshp8/pW5zP4wecRiroBSZX8wcrywSgogpVNO+5W0Q==", "license": "MIT", "dependencies": { @@ -5872,7 +5887,7 @@ }, "node_modules/react-admin/node_modules/@mui/utils": { "version": "6.4.8", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.4.8.tgz", + "resolved": "https://registry.npmmirror.com/@mui/utils/-/utils-6.4.8.tgz", "integrity": "sha512-C86gfiZ5BfZ51KqzqoHi1WuuM2QdSKoFhbkZeAfQRB+jCc4YNhhj11UXFVMMsqBgZ+Zy8IHNJW3M9Wj/LOwRXQ==", "license": "MIT", "dependencies": { @@ -5902,7 +5917,7 @@ }, "node_modules/react-admin/node_modules/ra-ui-materialui": { "version": "5.6.3", - "resolved": "https://registry.npmjs.org/ra-ui-materialui/-/ra-ui-materialui-5.6.3.tgz", + "resolved": "https://registry.npmmirror.com/ra-ui-materialui/-/ra-ui-materialui-5.6.3.tgz", "integrity": "sha512-3KOCo0JWBJ5BeqVb8g1cdnw00+GMnpI7jlX1VqX7YIyDT3TwDbFx1sDGUOvNiLrN7qZA5dIrZWfdYlutjZT/2Q==", "license": "MIT", "dependencies": { @@ -5934,9 +5949,22 @@ }, "node_modules/react-admin/node_modules/react-is": { "version": "19.0.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.0.0.tgz", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-19.0.0.tgz", "integrity": "sha512-H91OHcwjZsbq3ClIDHMzBShc1rotbfACdWENsmEf0IFvZ3FgGPtdHMcsv45bQ1hAbgdfiA8SnxTKfDS+x/8m2g==", "license": "MIT" + }, + "node_modules/react-barcode": { + "version": "1.6.1", + "resolved": "https://registry.npmmirror.com/react-barcode/-/react-barcode-1.6.1.tgz", + "integrity": "sha512-pc4ftnO5syHa/UjCruEeRsomlhoxKSugIgTA8T4dH0fvc89UMHL+/1Sp25IAphqG44pJkE5hMXhv89iS09jQyw==", + "license": "ISC", + "dependencies": { + "jsbarcode": "^3.8.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": "16 - 19" + } }, "node_modules/react-dom": { "version": "18.3.1", @@ -5952,7 +5980,7 @@ }, "node_modules/react-dropzone": { "version": "14.3.8", - "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.3.8.tgz", + "resolved": "https://registry.npmmirror.com/react-dropzone/-/react-dropzone-14.3.8.tgz", "integrity": "sha512-sBgODnq+lcA4P296DY4wacOZz3JFpD99fp+hb//iBO2HHnyeZU3FwWyXJ6salNpqQdsZrgMrotuko/BdJMV8Ug==", "license": "MIT", "dependencies": { @@ -6097,6 +6125,15 @@ "react": ">= 0.14.0" } }, + "node_modules/react-to-print": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/react-to-print/-/react-to-print-3.0.5.tgz", + "integrity": "sha512-Z15MwMOzYCHWi26CZeFNwflAg7Nr8uWD6FTj+EkfIOjYyjr0MXGbI0c7rF4Fgrbj3XG9hFndb1ourxpPz2RAiA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ~19" + } + }, "node_modules/react-transition-group": { "version": "4.4.5", "resolved": "https://registry.npmmirror.com/react-transition-group/-/react-transition-group-4.4.5.tgz", @@ -6188,7 +6225,7 @@ }, "node_modules/remove-accents": { "version": "0.4.4", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.4.tgz", + "resolved": "https://registry.npmmirror.com/remove-accents/-/remove-accents-0.4.4.tgz", "integrity": "sha512-EpFcOa/ISetVHEXqu+VwI96KZBmq+a8LJnGkaeFw45epGlxIZz5dhEEnNZMsQXgORu3qaMoLX4qJCzOik6ytAg==", "license": "MIT" }, @@ -6442,7 +6479,7 @@ }, "node_modules/source-map": { "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz", "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "license": "BSD-3-Clause", "engines": { @@ -7076,7 +7113,7 @@ }, "node_modules/yaml": { "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "resolved": "https://registry.npmmirror.com/yaml/-/yaml-1.10.2.tgz", "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "license": "ISC", "engines": { diff --git a/rsf-admin/package.json b/rsf-admin/package.json index 18c05b2..3bf09ac 100644 --- a/rsf-admin/package.json +++ b/rsf-admin/package.json @@ -37,6 +37,7 @@ "react-router": "^6.22.0", "react-router-dom": "^6.26.1", "react-syntax-highlighter": "^15.5.0", + "react-to-print": "^3.0.5", "three": "^0.155.0", "tweedle.js": "^2.1.0" }, diff --git a/rsf-admin/pnpm-lock.yaml b/rsf-admin/pnpm-lock.yaml index c99442f..f66ce5c 100644 --- a/rsf-admin/pnpm-lock.yaml +++ b/rsf-admin/pnpm-lock.yaml @@ -89,6 +89,9 @@ react-syntax-highlighter: specifier: ^15.5.0 version: 15.6.1(react@18.3.1) + react-to-print: + specifier: ^3.0.5 + version: 3.0.5(react@18.3.1) three: specifier: ^0.155.0 version: 0.155.0 @@ -2244,6 +2247,11 @@ resolution: {integrity: sha512-OqJ2/vL7lEeV5zTJyG7kmARppUjiB9h9udl4qHQjjgEos66z00Ia0OckwYfRxCSFrW8RJIBnsBwQsHZbVPspqg==} peerDependencies: react: '>= 0.14.0' + + react-to-print@3.0.5: + resolution: {integrity: sha512-Z15MwMOzYCHWi26CZeFNwflAg7Nr8uWD6FTj+EkfIOjYyjr0MXGbI0c7rF4Fgrbj3XG9hFndb1ourxpPz2RAiA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ~19 react-transition-group@4.4.5: resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} @@ -4921,6 +4929,10 @@ react: 18.3.1 refractor: 3.6.0 + react-to-print@3.0.5(react@18.3.1): + dependencies: + react: 18.3.1 + react-transition-group@4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@babel/runtime': 7.26.9 diff --git a/rsf-admin/src/i18n/en.js b/rsf-admin/src/i18n/en.js index 72fc56e..dad32ca 100644 --- a/rsf-admin/src/i18n/en.js +++ b/rsf-admin/src/i18n/en.js @@ -358,6 +358,7 @@ }, locType: { uuid: "uuid", + code: "code", name: "name", regex: "regex", }, diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js index 3a328f8..f2ae4ea 100644 --- a/rsf-admin/src/i18n/zh.js +++ b/rsf-admin/src/i18n/zh.js @@ -359,6 +359,7 @@ }, locType: { name: "搴撲綅绫诲瀷", + code: "缂栧彿", regex: "瑙勫垯琛ㄨ揪寮�", }, locArea: { diff --git a/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx b/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx index cee27c7..92b5fe3 100644 --- a/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx +++ b/rsf-admin/src/page/basicInfo/loc/BatchModal.jsx @@ -19,6 +19,7 @@ useCreateController, useListContext, useRefresh, + SelectArrayInput } from 'react-admin'; import { Dialog, @@ -38,7 +39,8 @@ TableCell, Tooltip, IconButton, - styled + styled, + } from '@mui/material'; @@ -53,7 +55,6 @@ import StatusSelectInput from "../../components/StatusSelectInput"; - const InitModal = ({ open, setOpen }) => { const refresh = useRefresh(); const translate = useTranslate(); @@ -62,6 +63,7 @@ const notify = useNotify(); const [formData, setFormData] = useState({ + "warehouseId": null, "areaId": null, "type": null, 'status': null @@ -80,8 +82,10 @@ const reset = () => { setFormData({ + "warehouseId": null, "areaId": null, "type": null, + "typeIds": null, 'status': null }) } @@ -95,6 +99,7 @@ ...prevData, [name]: value })); + refresh() }; const removeEmptyKeys = (obj) => { @@ -132,8 +137,25 @@ <Grid container spacing={2}> <Grid item xs={4}> <ReferenceInput + source="warehouseId" + reference="warehouse" + > + <AutocompleteInput + label="table.field.loc.warehouseId" + optionText="name" + onChange={(value) => handleChange(value, 'warehouseId')} + value={formData.warehouseId} + filterToQuery={(val) => ({ name: val })} + /> + </ReferenceInput> + + </Grid> + + <Grid item xs={4}> + <ReferenceInput source="areaId" reference="warehouseAreas" + filter={{ warehouseId: formData.warehouseId }} > <AutocompleteInput label="table.field.loc.areaId" @@ -147,14 +169,17 @@ </Grid> <Grid item xs={4}> - <DictionarySelect + {/* <DictionarySelect label={translate("table.field.loc.type")} name="type" value={formData.type} onChange={(e) => handleChange(e.target.value, 'type')} size="small" dictTypeCode="sys_loc_type" - /> + /> */} + <ReferenceArrayInput source="typeIds" reference="locType" > + <SelectArrayInput label="table.field.loc.type" onChange={(e) => handleChange(e.target.value, 'typeIds')} /> + </ReferenceArrayInput> </Grid> <Grid item xs={4}> diff --git a/rsf-admin/src/page/basicInfo/loc/InitModal.jsx b/rsf-admin/src/page/basicInfo/loc/InitModal.jsx index 80c6a2b..eab60e8 100644 --- a/rsf-admin/src/page/basicInfo/loc/InitModal.jsx +++ b/rsf-admin/src/page/basicInfo/loc/InitModal.jsx @@ -19,6 +19,7 @@ useCreateController, useListContext, useRefresh, + SelectArrayInput } from 'react-admin'; import { Dialog, @@ -70,7 +71,8 @@ "startBay": undefined, "startLev": undefined, "startRow": undefined, - "type": "" + "type": "", + "typeIds": undefined, }); const handleClose = (event, reason) => { @@ -138,15 +140,9 @@ </Grid> <Grid item xs={4}> - <DictionarySelect - label={translate("table.field.loc.type")} - name="type" - value={formData.type} - onChange={(e) => handleChange(e.target.value, 'type')} - size="small" - validate={[required()]} - dictTypeCode="sys_loc_type" - /> + <ReferenceArrayInput source="typeIds" reference="locType" > + <SelectArrayInput label="table.field.loc.type" onChange={(e) => handleChange(e.target.value, 'typeIds')} /> + </ReferenceArrayInput> </Grid> <Grid item xs={4}> diff --git a/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx b/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx index 00e9108..9b368c1 100644 --- a/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx +++ b/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx @@ -54,7 +54,11 @@ notify(error.message || 'common.response.fail', { type: 'error', messageArgs: { _: error.message } }); }; + const [warehouseId, setWrehouseId] = useState(); + const warehouseChange = (val) => { + setWrehouseId(val) + } return ( @@ -98,6 +102,7 @@ label="table.field.loc.warehouseId" optionText="name" validate={[required()]} + onChange={warehouseChange} filterToQuery={(val) => ({ name: val })} /> </ReferenceInput> @@ -106,6 +111,7 @@ <ReferenceInput source="areaId" reference="warehouseAreas" + filter={{ warehouseId }} > <AutocompleteInput label="table.field.loc.areaId" diff --git a/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx b/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx index 1505a82..89ad805 100644 --- a/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx +++ b/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx @@ -46,7 +46,11 @@ const LocEdit = () => { const translate = useTranslate(); const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_loc_type')) || []; + const [warehouseId, setWrehouseId] = useState(); + const warehouseChange = (val) => { + setWrehouseId(val) + } return ( <Edit @@ -78,6 +82,7 @@ label="table.field.loc.warehouseId" optionText="name" validate={[required()]} + onChange={warehouseChange} filterToQuery={(val) => ({ name: val })} /> </ReferenceInput> @@ -86,6 +91,7 @@ <ReferenceInput source="areaId" reference="warehouseAreas" + filter={{ warehouseId }} > <AutocompleteInput label="table.field.loc.areaId" diff --git a/rsf-admin/src/page/basicInfo/locType/LocTypeCreate.jsx b/rsf-admin/src/page/basicInfo/locType/LocTypeCreate.jsx index 7ba5cd2..562ede3 100644 --- a/rsf-admin/src/page/basicInfo/locType/LocTypeCreate.jsx +++ b/rsf-admin/src/page/basicInfo/locType/LocTypeCreate.jsx @@ -101,6 +101,13 @@ </Grid> <Grid item xs={6} display="flex" gap={1}> <TextInput + label="table.field.locType.code" + source="code" + parse={v => v} + /> + </Grid> + <Grid item xs={6} display="flex" gap={1}> + <TextInput label="table.field.locType.regex" source="regex" parse={v => v} diff --git a/rsf-admin/src/page/basicInfo/locType/LocTypeEdit.jsx b/rsf-admin/src/page/basicInfo/locType/LocTypeEdit.jsx index 24b68d7..a630b99 100644 --- a/rsf-admin/src/page/basicInfo/locType/LocTypeEdit.jsx +++ b/rsf-admin/src/page/basicInfo/locType/LocTypeEdit.jsx @@ -80,6 +80,13 @@ </Stack> <Stack direction='row' gap={2}> <TextInput + label="table.field.locType.code" + source="code" + parse={v => v} + /> + </Stack> + <Stack direction='row' gap={2}> + <TextInput label="table.field.locType.regex" source="regex" parse={v => v} diff --git a/rsf-admin/src/page/basicInfo/locType/LocTypeList.jsx b/rsf-admin/src/page/basicInfo/locType/LocTypeList.jsx index 7ce506d..45a4e4d 100644 --- a/rsf-admin/src/page/basicInfo/locType/LocTypeList.jsx +++ b/rsf-admin/src/page/basicInfo/locType/LocTypeList.jsx @@ -116,6 +116,7 @@ <NumberField source="id" /> {/* <TextField source="uuid" label="table.field.locType.uuid" /> */} <TextField source="name" label="table.field.locType.name" /> + <TextField source="code" label="table.field.locType.code" /> <TextField source="regex" label="table.field.locType.regex" /> <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}> diff --git a/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx b/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx index 9a461af..25a484e 100644 --- a/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/BatchModal.jsx @@ -52,8 +52,6 @@ import { DataGrid } from '@mui/x-data-grid'; import StatusSelectInput from "../../components/StatusSelectInput"; - - const InitModal = ({ open, setOpen }) => { const refresh = useRefresh(); const translate = useTranslate(); diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx index ba9be18..98e6a0c 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx @@ -205,7 +205,7 @@ <BooleanField key="statusBool" source="statusBool" label="common.field.status" sortable={false} />, <TextField key="memo" source="memo" label="common.field.memo" sortable={false} />, ] - const fields = data.map(el => <TextField key={el.fields} source={el.fields} label={el.fieldsAlise} />) + const fields = data.map(el => <TextField key={el.fields} source={`extendFields.[${el.fields}]`} label={el.fieldsAlise} />) const opt = <WrapperField key="opt" cellClassName="opt" label="common.field.opt"> <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} /> <EnableButton /> diff --git a/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx b/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx index 46c4d0d..4bb496e 100644 --- a/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/PrintModal.jsx @@ -29,11 +29,11 @@ TextField, Box, Button, - Paper, - TableContainer, - Table, - TableHead, - TableBody, + Radio, + RadioGroup, + FormControlLabel, + FormControl, + FormLabel, TableRow, TableCell, Tooltip, @@ -52,15 +52,14 @@ import { DataGrid } from '@mui/x-data-grid'; import StatusSelectInput from "../../components/StatusSelectInput"; - +import { useReactToPrint } from "react-to-print"; const InitModal = ({ open, setOpen }) => { const refresh = useRefresh(); const translate = useTranslate(); - - const notify = useNotify(); - + const contentRef = useRef(null); + const reactToPrintFn = useReactToPrint({ contentRef }); const handleClose = (event, reason) => { if (reason !== "backdropClick") { @@ -68,16 +67,45 @@ } }; + const [value, setValue] = useState('temp1'); + + const handleChange = (event) => { + setValue(event.target.value); + }; + + const handlePrint = () => { + // handleClose() + reactToPrintFn() + }; + return ( <Dialog open={open} maxWidth="sm" fullWidth> <DialogCloseButton onClose={handleClose} /> <DialogTitle>{translate('toolbar.print')}</DialogTitle> - <DialogContent sx={{ mt: 2 }}> - 1 + <DialogContent > + <FormControl > + <RadioGroup + row + aria-labelledby="demo-controlled-radio-buttons-group" + name="controlled-radio-buttons-group" + value={value} + onChange={handleChange} + size="small" + sx={{ justifyContent: 'center' }} + > + <FormControlLabel value="temp1" control={<Radio />} label="妯℃澘1" size="small" /> + </RadioGroup> + </FormControl> + + <Box> + <div ref={contentRef}> + 11 + </div> + </Box> </DialogContent> <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}> <Box sx={{ width: '100%', display: 'flex', justifyContent: 'space-between' }}> - <Button onClick={handleClose} variant="contained" startIcon={<SaveIcon />}> + <Button onClick={handlePrint} variant="contained" startIcon={<SaveIcon />}> {translate('toolbar.confirm')} </Button> </Box> diff --git a/rsf-admin/src/page/basicInfo/warehouse/WarehouseCreate.jsx b/rsf-admin/src/page/basicInfo/warehouse/WarehouseCreate.jsx index 82d24d1..fc150e8 100644 --- a/rsf-admin/src/page/basicInfo/warehouse/WarehouseCreate.jsx +++ b/rsf-admin/src/page/basicInfo/warehouse/WarehouseCreate.jsx @@ -94,14 +94,14 @@ /> </Grid> - {/* <Grid item xs={6} display="flex" gap={1}> + <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.warehouse.code" source="code" validate={[required()]} parse={v => v} /> - </Grid> */} + </Grid> <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.warehouse.name" diff --git a/rsf-admin/src/page/basicInfo/warehouse/WarehouseEdit.jsx b/rsf-admin/src/page/basicInfo/warehouse/WarehouseEdit.jsx index e95a188..18c97bd 100644 --- a/rsf-admin/src/page/basicInfo/warehouse/WarehouseEdit.jsx +++ b/rsf-admin/src/page/basicInfo/warehouse/WarehouseEdit.jsx @@ -80,14 +80,14 @@ autoFocus /> </Stack> - {/* <Stack direction='row' gap={2}> + <Stack direction='row' gap={2}> <TextInput label="table.field.warehouse.code" source="code" validate={[required()]} parse={v => v} /> - </Stack> */} + </Stack> <Stack direction='row' gap={2}> <TextInput diff --git a/rsf-admin/src/page/basicInfo/warehouse/WarehouseList.jsx b/rsf-admin/src/page/basicInfo/warehouse/WarehouseList.jsx index f026d2f..ca962cd 100644 --- a/rsf-admin/src/page/basicInfo/warehouse/WarehouseList.jsx +++ b/rsf-admin/src/page/basicInfo/warehouse/WarehouseList.jsx @@ -123,7 +123,7 @@ <NumberField source="id" /> <TextField source="factory" label="table.field.warehouse.factory" /> <TextField source="name" label="table.field.warehouse.name" /> - {/* <TextField source="code" label="table.field.warehouse.code" /> */} + <TextField source="code" label="table.field.warehouse.code" /> <TextField source="address" label="table.field.warehouse.address" /> <TextField source="longitude" label="table.field.warehouse.longitude" /> <TextField source="latgitude" label="table.field.warehouse.latgitude" /> diff --git a/rsf-admin/src/page/warehouseAreas/WarehouseAreasCreate.jsx b/rsf-admin/src/page/warehouseAreas/WarehouseAreasCreate.jsx index ab4847f..ea0d05f 100644 --- a/rsf-admin/src/page/warehouseAreas/WarehouseAreasCreate.jsx +++ b/rsf-admin/src/page/warehouseAreas/WarehouseAreasCreate.jsx @@ -124,6 +124,7 @@ <AutocompleteInput label="table.field.warehouseAreas.wareId" optionText="name" + validate={[required()]} filterToQuery={(val) => ({ name: val })} /> </ReferenceInput> diff --git a/rsf-admin/src/page/warehouseAreas/WarehouseAreasEdit.jsx b/rsf-admin/src/page/warehouseAreas/WarehouseAreasEdit.jsx index fcf1745..e197ebd 100644 --- a/rsf-admin/src/page/warehouseAreas/WarehouseAreasEdit.jsx +++ b/rsf-admin/src/page/warehouseAreas/WarehouseAreasEdit.jsx @@ -96,6 +96,7 @@ <AutocompleteInput label="table.field.warehouseAreas.wareId" optionText="name" + validate={[required()]} filterToQuery={(val) => ({ name: val })} /> </ReferenceInput> -- Gitblit v1.9.1