skyouc
20 小时以前 299cd2a4b79f32f9e1b55997e48bbe7e598c2d3f
rsf-admin/src/page/orders/check/SelectMatnrModal.jsx
@@ -44,18 +44,14 @@
    MenuItem
} from '@mui/material';
import DialogCloseButton from "../../components/DialogCloseButton";
import StatusSelectInput from "../../components/StatusSelectInput";
import ConfirmButton from "../../components/ConfirmButton";
import MatnrInfoModal from "./MatnrInfoModal";
import { useForm, Controller, useWatch, FormProvider, useFormContext } from "react-hook-form";
import SaveIcon from '@mui/icons-material/Save';
import request from '@/utils/request';
import { Add, Edit, Delete } from '@mui/icons-material';
import _, { set } from 'lodash';
import { DataGrid, useGridApiRef } from '@mui/x-data-grid';
import DictionarySelect from "../../components/DictionarySelect";
import DictSelect from "../../components/DictSelect";
import "./asnOrder.css";
const SelectMatnrModal = (props) => {
    const { open, setOpen, asnId, billReload } = props;
@@ -87,7 +83,8 @@
    const [formData, setFormData] = useState({
        type: '',
        wkType: '',
        wkType: '7',
        checkType: '0',
        poCode: '',
        logisNo: '',
        arrTime: ''
@@ -105,7 +102,8 @@
    const resetData = () => {
        setFormData({
            type: '',
            wkType: '',
            wkType: '7',
            checkType: '0',
            poCode: '',
            logisNo: '',
            arrTime: ''
@@ -131,7 +129,7 @@
                "orders": formData,
                "items": tabelData,
            }
            const res = await request.post(`/outStock/items/save`, parmas);
            const res = await request.post(`/check/items/save`, parmas);
            if (res?.data?.code === 200) {
                setOpen(false);
                refresh();
@@ -144,7 +142,7 @@
                "orders": formData,
                "items": tabelData,
            }
            const res = await request.post(`/outStock/items/update`, parmas);
            const res = await request.post(`/check/items/update`, parmas);
            if (res?.data?.code === 200) {
                setOpen(false);
                refresh();
@@ -159,7 +157,7 @@
    const handleDelete = async () => {
        const res = await request.post(`/outStock/remove/${asnId}`);
        const res = await request.post(`/check/remove/${asnId}`);
        if (res?.data?.code === 200) {
            setOpen(false);
            refresh();
@@ -169,7 +167,7 @@
    };
    const requestGetHead = async () => {
        const res = await request.get(`/outStock/${asnId}`);
        const res = await request.get(`/check/${asnId}`);
        if (res?.data?.code === 200) {
            setFormData(res.data.data)
        } else {
@@ -178,7 +176,7 @@
    }
    const requestGetBody = async () => {
        const res = await request.post(`/outStockItem/page`, { asnId });
        const res = await request.post(`/checkItem/page`, { orderId: asnId });
        if (res?.data?.code === 200) {
            setTableData(res.data.data.records)
        } else {
@@ -202,7 +200,7 @@
                aria-hidden
                fullWidth
                disableRestoreFocus
                maxWidth="lg"   // 'xs' | 'sm' | 'md' | 'lg' | 'xl'
                maxWidth="xl"   // 'xs' | 'sm' | 'md' | 'lg' | 'xl'
            >
                <DialogTitle id="form-dialog-title" sx={{
                    position: 'sticky',
@@ -219,42 +217,24 @@
                    <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}>
                        <Form defaultValues={formData}>
                            <Grid container spacing={2}>
                                {/* <Grid item md={2}>
                                    <DictSelect
                                        label={translate("table.field.asnOrder.type")}
                                        value={formData.type}
                                        onChange={(e) => handleChange(e.target.value, 'type')}
                                        dictTypeCode="sys_order_type"
                                        required
                                    />
                                </Grid> */}
                                <Grid item md={2}>
                                    <DictSelect
                                        label={translate("table.field.outStock.wkType")}
                                        label={translate("table.field.checkOrder.type")}
                                        value={formData.wkType}
                                        variant="filled"
                                        group='2'
                                        onChange={(e) => handleChange(e.target.value, 'wkType')}
                                        dictTypeCode="sys_business_type"
                                        dictTypeCode="sys_check_order_type"
                                        required
                                    />
                                </Grid>
                                <Grid item md={2}>
                                    <TextField
                                        label={translate("table.field.outStock.poCode")}
                                        value={formData.poCode}
                                    <DictSelect
                                        label={translate("table.field.checkOrder.checkType")}
                                        value={formData.checkType}
                                        variant="filled"
                                        size='small'
                                        onChange={(e) => handleChange(e.target.value, 'poCode')}
                                    />
                                </Grid>
                                <Grid item md={2}>
                                    <TextField
                                        label={translate("table.field.outStock.logisNo")}
                                        value={formData.logisNo}
                                        variant="filled"
                                        size='small'
                                        onChange={(e) => handleChange(e.target.value, 'logisNo')}
                                        onChange={(e) => handleChange(e.target.value, 'checkType')}
                                        dictTypeCode="sys_check_type"
                                        required
                                    />
                                </Grid>
                                <Grid item md={2}>
@@ -270,12 +250,12 @@
                            </Grid>
                        </Form>
                    </Box>
                    <Box sx={{ mt: 2 }}>
                        <Stack direction="row" spacing={2}>
                            <Button variant="contained" onClick={() => setCreateDialog(true)}>新增物料</Button>
                            {/* {asnId !== '' && <ConfirmButton label={'删除'} variant="outlined" color="error" onConfirm={handleDelete} />} */}
                            <ConfirmButton label={'删除'} variant="outlined" color="error" onConfirm={handleDeleteItem} />
                            <Button variant="contained" onClick={() => setCreateDialog(true)} >
                                {translate('common.action.newAddMats')}
                            </Button>
                            <ConfirmButton label={"toolbar.delete"} variant="outlined" color="error" onConfirm={handleDeleteItem} />
                        </Stack>
                    </Box>
                    <Box sx={{ mt: 2 }}>
@@ -414,6 +394,7 @@
const AsnOrderModalTable = ({ tabelData, setTableData, asnId, selectedRows, setSelectedRows, tableRef }) => {
    const translate = useTranslate();
    const notify = useNotify();
    const [check, setCheck] = useState([]);
    const [columns, setColumns] = useState([
        {
@@ -430,9 +411,9 @@
        },
        {
            field: 'anfme',
            headerName: translate('table.field.outStockItem.anfme') + "*",
            headerName: translate('table.field.checkOrder.anfme') + "*",
            type: 'number',
            minWidth: 100,
            minWidth: 120,
            flex: 1,
            editable: true,
            valueFormatter: (val) => val < 0 ? 0 : val,
@@ -501,7 +482,9 @@
    let cdata = useRef([]);
    useEffect(() => {
        getDynamicFields();
        if (check == null || check.length < 1) {
            getDynamicFields();
        }
    }, []);
    useEffect(() => {
@@ -516,11 +499,13 @@
        if (code === 200) {
            const cols = data.map(el => ({
                field: el.fields,
                key: el.id,
                headerName: el.fieldsAlise,
                minWidth: 100,
                flex: 1,
                editable: false
            }))
            setCheck(cols);
            setColumns([...columns, ...cols, action])
        } else {
            notify(msg);