| | |
| | | Select, |
| | | MenuItem |
| | | } from '@mui/material'; |
| | | import { useForm, Controller, useWatch, FormProvider, useFormContext } from "react-hook-form"; |
| | | import DialogCloseButton from "../../components/DialogCloseButton"; |
| | | import StatusSelectInput from "../../components/StatusSelectInput"; |
| | | import ConfirmButton from "../../components/ConfirmButton"; |
| | | import AsnWareModal from "./AsnWareModal"; |
| | | 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 { DataGrid, useGridApiRef } from '@mui/x-data-grid'; |
| | | import ConfirmButton from "../../components/ConfirmButton"; |
| | | import { Add, Edit, Delete } from '@mui/icons-material'; |
| | | import DictSelect from "../../components/DictSelect"; |
| | | import SaveIcon from '@mui/icons-material/Save'; |
| | | import MatnrInfoModal from "./MatnrInfoModal"; |
| | | import request from '@/utils/request'; |
| | | import _, { set } from 'lodash'; |
| | | import "./asnOrder.css"; |
| | | |
| | | const SelectMatnrModal = (props) => { |
| | |
| | | const notify = useNotify(); |
| | | const refresh = useRefresh(); |
| | | const [disabled, setDisabled] = useState(false) |
| | | |
| | | const [createDialog, setCreateDialog] = useState(false); |
| | | |
| | | const tableRef = useRef(); |
| | |
| | | ...prevData, |
| | | [name]: value |
| | | })); |
| | | console.log(formData); |
| | | }; |
| | | |
| | | const resetData = () => { |
| | |
| | | "orders": formData, |
| | | "items": tabelData, |
| | | } |
| | | |
| | | const res = await request.post(`/asnOrder/items/save`, parmas); |
| | | const res = await request.post(`/outStock/items/save`, parmas); |
| | | if (res?.data?.code === 200) { |
| | | setOpen(false); |
| | | refresh(); |
| | | billReload?.current() |
| | | resetData() |
| | | } else { |
| | | notify(res.data.msg); |
| | |
| | | "orders": formData, |
| | | "items": tabelData, |
| | | } |
| | | const res = await request.post(`/asnOrder/items/update`, parmas); |
| | | const res = await request.post(`/outStock/items/update`, parmas); |
| | | if (res?.data?.code === 200) { |
| | | setOpen(false); |
| | | refresh(); |
| | | billReload?.current() |
| | | resetData() |
| | | } else { |
| | | notify(res.data.msg); |
| | |
| | | |
| | | |
| | | const handleDelete = async () => { |
| | | const res = await request.post(`/asnOrder/remove/${asnId}`); |
| | | const res = await request.post(`/outStock/remove/${asnId}`); |
| | | if (res?.data?.code === 200) { |
| | | setOpen(false); |
| | | refresh(); |
| | |
| | | }; |
| | | |
| | | const requestGetHead = async () => { |
| | | const res = await request.get(`/asnOrder/${asnId}`); |
| | | const res = await request.get(`/outStock/${asnId}`); |
| | | if (res?.data?.code === 200) { |
| | | setFormData(res.data.data) |
| | | } else { |
| | |
| | | } |
| | | |
| | | const requestGetBody = async () => { |
| | | const res = await request.post(`/asnOrderItem/page`, { asnId }); |
| | | const res = await request.post(`/outStockItem/page`, { orderId: asnId }); |
| | | if (res?.data?.code === 200) { |
| | | setTableData(res.data.data.records) |
| | | } else { |
| | |
| | | </Grid> */} |
| | | <Grid item md={2}> |
| | | <DictSelect |
| | | label={translate("table.field.asnOrder.wkType")} |
| | | label={translate("table.field.outStock.wkType")} |
| | | value={formData.wkType} |
| | | variant="filled" |
| | | group='2' |
| | | onChange={(e) => handleChange(e.target.value, 'wkType')} |
| | | dictTypeCode="sys_business_type" |
| | | required |
| | |
| | | </Grid> |
| | | <Grid item md={2}> |
| | | <TextField |
| | | label={translate("table.field.asnOrder.poCode")} |
| | | label={translate("table.field.outStock.poCode")} |
| | | value={formData.poCode} |
| | | variant="filled" |
| | | size='small' |
| | |
| | | </Grid> |
| | | <Grid item md={2}> |
| | | <TextField |
| | | label={translate("table.field.asnOrder.logisNo")} |
| | | label={translate("table.field.outStock.logisNo")} |
| | | value={formData.logisNo} |
| | | variant="filled" |
| | | size='small' |
| | |
| | | <Grid item md={2}> |
| | | <DateInput |
| | | source="arrTime" |
| | | label="table.field.asnOrder.arrTime" |
| | | label="table.field.outStock.arrTime" |
| | | size='small' |
| | | variant="filled" |
| | | value={formData.arrTime} |
| | |
| | | </Toolbar> |
| | | </DialogActions> |
| | | </Dialog> |
| | | <AsnWareModal |
| | | <MatnrInfoModal |
| | | open={createDialog} |
| | | setOpen={setCreateDialog} |
| | | data={tabelData} |
| | |
| | | } = await request.post("companys/page", parmas); |
| | | if (code === 200) { |
| | | setFormData(data.records) |
| | | console.log(data.records) |
| | | } else { |
| | | notify(msg); |
| | | } |
| | |
| | | } = await request.post("companys/page", parmas); |
| | | if (code === 200) { |
| | | setFormData(data.records) |
| | | console.log(data.records) |
| | | } else { |
| | | notify(msg); |
| | | } |
| | |
| | | const [columns, setColumns] = useState([ |
| | | { |
| | | field: 'maktx', |
| | | headerName: translate('table.field.asnOrderItem.maktx'), |
| | | headerName: translate('table.field.outStockItem.maktx'), |
| | | width: 250, |
| | | editable: false, |
| | | }, |
| | | { |
| | | field: 'matnrCode', |
| | | headerName: translate('table.field.asnOrderItem.matnrCode'), |
| | | headerName: translate('table.field.outStockItem.matnrCode'), |
| | | width: 130, |
| | | editable: false, |
| | | }, |
| | | { |
| | | field: 'anfme', |
| | | headerName: translate('table.field.asnOrderItem.anfme') + "*", |
| | | headerName: translate('table.field.outStockItem.anfme') + "*", |
| | | type: 'number', |
| | | minWidth: 100, |
| | | flex: 1, |
| | |
| | | }, |
| | | { |
| | | field: 'splrCode', |
| | | headerName: translate('table.field.asnOrderItem.splrCode') + "*", |
| | | headerName: translate('table.field.outStockItem.splrCode') + "*", |
| | | minWidth: 100, |
| | | flex: 1, |
| | | editable: true, |
| | |
| | | }, |
| | | { |
| | | field: 'splrName', |
| | | headerName: translate('table.field.asnOrderItem.splrName') + "*", |
| | | headerName: translate('table.field.outStockItem.splrName') + "*", |
| | | minWidth: 100, |
| | | flex: 1, |
| | | editable: true, |
| | |
| | | ), |
| | | headerClassName: "custom", |
| | | }, |
| | | // { |
| | | // field: 'packName', |
| | | // headerName: translate('table.field.asnOrderItem.packName'), |
| | | // minWidth: 100, |
| | | // flex: 1, |
| | | // editable: true, |
| | | // }, |
| | | // { |
| | | // field: 'poDetlId', |
| | | // headerName: translate('table.field.asnOrderItem.poDetlId'), |
| | | // minWidth: 100, |
| | | // flex: 1, |
| | | // }, |
| | | { |
| | | field: 'poCode', |
| | | headerName: translate('table.field.asnOrderItem.poDetlCode') + "*", |
| | | field: 'splrBatch', |
| | | headerName: translate('table.field.outStockItem.splrBatch'), |
| | | minWidth: 100, |
| | | flex: 1, |
| | | editable: true, |
| | | headerClassName: "custom", |
| | | }, |
| | | |
| | | { |
| | | field: 'poCode', |
| | | headerName: translate('table.field.outStockItem.poDetlCode'), |
| | | minWidth: 100, |
| | | flex: 1, |
| | | editable: true, |
| | | }, |
| | | { |
| | | field: 'stockUnit', |
| | | headerName: translate('table.field.asnOrderItem.stockUnit'), |
| | | headerName: translate('table.field.outStockItem.stockUnit'), |
| | | minWidth: 100, |
| | | flex: 1, |
| | | editable: false, |
| | | }, |
| | | // { |
| | | // field: 'purQty', |
| | | // headerName: translate('table.field.asnOrderItem.purQty'), |
| | | // minWidth: 100, |
| | | // flex: 1, |
| | | // editable: true, |
| | | // }, |
| | | { |
| | | field: 'purUnit', |
| | | headerName: translate('table.field.asnOrderItem.purUnit'), |
| | | minWidth: 100, |
| | | flex: 1, |
| | | editable: false, |
| | | editable: true, |
| | | }, |
| | | ]) |
| | | |
| | |
| | | rows={tabelData} |
| | | columns={columns} |
| | | disableRowSelectionOnClick |
| | | getRowId={(row) => row.matnrId} |
| | | getRowId={(row) => row.matnrId ? row.matnrId : row.id} |
| | | disableColumnFilter |
| | | disableColumnSelector |
| | | disableColumnSorting |
| | |
| | | }, |
| | | }, |
| | | }} |
| | | pageSizeOptions={[10, 25, 50, 100]} |
| | | pageSizeOptions={[15, 25, 50, 100]} |
| | | editMode="row" |
| | | checkboxSelection |
| | | onRowSelectionModelChange={handleSelectionChange} |