| | |
| | | useRecordSelection, |
| | | useRefresh, |
| | | } from 'react-admin'; |
| | | import { Box, Typography, Card, Stack } from '@mui/material'; |
| | | import { styled } from '@mui/material/styles'; |
| | | import AsnOrderLogCreate from "./AsnOrderLogCreate"; |
| | | import AsnOrderLogPanel from "./AsnOrderLogPanel"; |
| | | import EmptyData from "../../components/EmptyData"; |
| | | import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting'; |
| | | import DictionarySelect from "../../components/DictionarySelect"; |
| | | import MyCreateButton from "../../components/MyCreateButton"; |
| | | import MyExportButton from '../../components/MyExportButton'; |
| | | import { Box, Typography, Card, Stack } from '@mui/material'; |
| | | import ConfirmButton from '../../components/ConfirmButton'; |
| | | import PageDrawer from "../../components/PageDrawer"; |
| | | import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting'; |
| | | import AsnOrderLogCreate from "./AsnOrderLogCreate"; |
| | | import CachedIcon from '@mui/icons-material/Cached'; |
| | | import EmptyData from "../../components/EmptyData"; |
| | | import AsnOrderLogPanel from "./AsnOrderLogPanel"; |
| | | import { styled } from '@mui/material/styles'; |
| | | import * as Common from '@/utils/common'; |
| | | import request from '@/utils/request'; |
| | | import ConfirmButton from '../../components/ConfirmButton'; |
| | | import CachedIcon from '@mui/icons-material/Cached'; |
| | | |
| | | |
| | | const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({ |
| | | '& .css-1vooibu-MuiSvgIcon-root': { |
| | | height: '.9em' |
| | |
| | | width: 150 |
| | | }, |
| | | '& .MuiTableCell-root': { |
| | | whiteSpace: 'nowrap', |
| | | overflow: 'visible', |
| | | textOverflow: 'unset' |
| | | } |
| | | whiteSpace: 'nowrap', |
| | | overflow: 'visible', |
| | | textOverflow: 'unset' |
| | | } |
| | | })); |
| | | |
| | | const filters = [ |
| | | <SearchInput source="condition" alwaysOn />, |
| | | <TextInput source="code" label="table.field.asnOrderLog.code" />, |
| | | <TextInput source="poCode" label="table.field.asnOrderLog.poCode" />, |
| | | <NumberInput source="poId" label="table.field.asnOrderLog.poId" />, |
| | | <TextInput source="type" label="table.field.asnOrderLog.type" />, |
| | | <TextInput source="wkType" label="table.field.asnOrderLog.wkType" />, |
| | | <NumberInput source="anfme" label="table.field.asnOrderLog.anfme" />, |
| | | <NumberInput source="qty" label="table.field.asnOrderLog.qty" />, |
| | | <TextInput source="logisNo" label="table.field.asnOrderLog.logisNo" />, |
| | | <DateInput source="arrTime" label="table.field.asnOrderLog.arrTime" />, |
| | | <SelectInput source="rleStatus" label="table.field.asnOrderLog.rleStatus" |
| | | choices={[ |
| | | { id: 0, name: ' 正常' }, |
| | | { id: 1, name: ' 已释放' }, |
| | | ]} |
| | | />, |
| | | <SelectInput source="ntyStatus" label="table.field.asnOrderLog.ntyStatus" |
| | | choices={[ |
| | | { id: 0, name: ' 未上报' }, |
| | | { id: 1, name: ' 已上报' }, |
| | | { id: 2, name: ' 部分上报' }, |
| | | ]} |
| | | />, |
| | | |
| | | <TextInput label="common.field.memo" source="memo" />, |
| | | <SelectInput |
| | | label="common.field.status" |
| | | source="status" |
| | | choices={[ |
| | | { id: '1', name: 'common.enums.statusTrue' }, |
| | | { id: '0', name: 'common.enums.statusFalse' }, |
| | | ]} |
| | | resettable |
| | | />, |
| | | ] |
| | | |
| | | const AsnOrderLogList = () => { |
| | | const translate = useTranslate(); |
| | | const [createDialog, setCreateDialog] = useState(false); |
| | | const [drawerVal, setDrawerVal] = useState(false); |
| | | const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_order_type')) || []; |
| | | |
| | | const filters = [ |
| | | <SearchInput source="condition" alwaysOn />, |
| | | <TextInput source="code" label="table.field.asnOrderLog.code" />, |
| | | <TextInput source="poCode" label="table.field.asnOrderLog.poCode" />, |
| | | <NumberInput source="poId" label="table.field.asnOrderLog.poId" />, |
| | | // <TextInput source="type" label="table.field.asnOrderLog.type" />, |
| | | // <TextInput source="wkType" label="table.field.asnOrderLog.wkType" />, |
| | | <NumberInput source="anfme" label="table.field.asnOrderLog.anfme" />, |
| | | <NumberInput source="qty" label="table.field.asnOrderLog.qty" />, |
| | | <TextInput source="logisNo" label="table.field.asnOrderLog.logisNo" />, |
| | | <DateInput source="arrTime" label="table.field.asnOrderLog.arrTime" />, |
| | | // <SelectInput source="ntyStatus" label="table.field.asnOrderLog.ntyStatus" |
| | | // choices={[ |
| | | // { id: 0, name: ' 未上报' }, |
| | | // { id: 1, name: ' 已上报' }, |
| | | // { id: 2, name: ' 部分上报' }, |
| | | // ]} |
| | | // />, |
| | | <AutocompleteInput |
| | | choices={dicts} |
| | | optionText="label" |
| | | label="table.field.asnOrder.type" |
| | | source="type" |
| | | // defaultValue="in" |
| | | optionValue="value" |
| | | parse={v => v} |
| | | alwaysOn |
| | | />, |
| | | <ReferenceInput source="wkType" reference="dictData" filter={{ dictTypeCode: 'sys_business_type', group: "1" }} label="table.field.asnOrder.wkType" alwaysOn> |
| | | <AutocompleteInput label="table.field.asnOrder.wkType" optionValue="value" /> |
| | | </ReferenceInput>, |
| | | <DictionarySelect |
| | | label='table.field.asnOrder.exceStatus' |
| | | name="exceStatus" |
| | | group="1" |
| | | dictTypeCode="sys_asn_exce_status" |
| | | alwaysOn |
| | | />, |
| | | ] |
| | | |
| | | return ( |
| | | <Box display="flex"> |
| | |
| | | rowClick={'edit'} |
| | | expand={false} |
| | | expandSingle={true} |
| | | omit={['id', 'createTime', 'createBy', 'memo','logisNo', 'poId', 'rleStatus$','statusBool','createBy$']} |
| | | omit={['id', 'createTime', 'createBy', 'memo', 'logisNo', 'poId', 'rleStatus$', 'statusBool', 'createBy$']} |
| | | > |
| | | <NumberField source="id" /> |
| | | <TextField source="code" label="table.field.asnOrderLog.code" /> |
| | |
| | | const record = useRecordContext(); |
| | | const notify = useNotify(); |
| | | const continueReceipt = async () => { |
| | | const { data: { code, data, msg } } = await request.post(`/asnOrderLog/continue/${record.id}`); |
| | | if (code === 200) { |
| | | notify(msg); |
| | | } else { |
| | | notify(msg); |
| | | } |
| | | refresh(); |
| | | const { data: { code, data, msg } } = await request.post(`/asnOrderLog/continue/${record.id}`); |
| | | if (code === 200) { |
| | | notify(msg); |
| | | } else { |
| | | notify(msg); |
| | | } |
| | | refresh(); |
| | | } |
| | | |
| | | return ( |
| | | <ConfirmButton label={"toolbar.continue"} startIcon={<CachedIcon />} onConfirm={continueReceipt} /> |
| | | record.type == 'in' ? <ConfirmButton label={"toolbar.continue"} startIcon={<CachedIcon />} onConfirm={continueReceipt} /> : <></> |
| | | ) |
| | | } |
| | | } |