skyouc
2025-04-07 6c1d09d5e692f0b43f5dfb2288a4aef728046b06
rsf-admin/src/page/asnOrder/AsnOrderList.jsx
@@ -48,6 +48,7 @@
import ConstructionIcon from "@mui/icons-material/Construction";
import FileDownloadIcon from '@mui/icons-material/FileDownload';
import EditIcon from '@mui/icons-material/Edit';
import TaskIcon from '@mui/icons-material/Task';
import request from '@/utils/request';
@@ -67,7 +68,6 @@
const filters = [
  <SearchInput source="condition" alwaysOn />,
  <TextInput source="code" label="table.field.asnOrder.code" />,
  <TextInput source="poCode" label="table.field.asnOrder.poCode" />,
  <NumberInput source="poId" label="table.field.asnOrder.poId" />,
@@ -102,6 +102,7 @@
  const [createDialog, setCreateDialog] = useState(false);
  const [drawerVal, setDrawerVal] = useState(false);
  const [modalType, setmodalType] = useState(0);
  const billReload = useRef();
  const navigate = useNavigate();
  const assign = (record) => {
@@ -139,16 +140,16 @@
          preferenceKey='asnOrder'
          bulkActionButtons={<> <InspectionsButton /><BulkDeleteButton mutationMode={OPERATE_MODE} /></>}
          rowClick={() => false}
          expand={<AsnOrderPanel />}
          expand={<AsnOrderPanel billReload={billReload} />}
          expandSingle={true}
          omit={['id', 'createTime', 'createBy', 'memo']}
          omit={['id', 'createTime', 'createBy', 'memo', 'poId']}
        >
          <NumberField source="id" />
          <TextField source="code" label="table.field.asnOrder.code" />
          <TextField source="poCode" label="table.field.asnOrder.poCode" />
          <NumberField source="poId" label="table.field.asnOrder.poId" />
          <TextField source="type" label="table.field.asnOrder.type" />
          <TextField source="wkType" label="table.field.asnOrder.wkType" />
          <TextField source="type$" label="table.field.asnOrder.type" />
          <TextField source="wkType$" label="table.field.asnOrder.wkType" />
          <NumberField source="anfme" label="table.field.asnOrder.anfme" />
          <NumberField source="qty" label="table.field.asnOrder.qty" />
          <TextField source="logisNo" label="table.field.asnOrder.logisNo" />
@@ -163,7 +164,8 @@
            <TextField source="nickname" />
          </ReferenceField>
          <DateField source="createTime" label="common.field.createTime" showTime />
          <BooleanField source="statusBool" label="common.field.status" sortable={false} />
          <TextField source="exceStatus$" label="common.field.status" />
          {/* <BooleanField source="statusBool" label="common.field.status" sortable={false} /> */}
          <TextField source="memo" label="common.field.memo" sortable={false} />
          <WrapperField cellClassName="opt" label="common.field.opt" >
            {/* <Button label="toolbar.print" onClick={print}>
@@ -180,6 +182,7 @@
            >
            </Button> */}
            <InspectionButton />
            <CompleteButton />
            <DeleteButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} />
          </WrapperField>
        </StyledDatagrid>
@@ -188,6 +191,7 @@
        open={createDialog}
        setOpen={setCreateDialog}
        asnId={modalType}
        billReload={billReload}
      />
      <PageDrawer
        title='AsnOrder Detail'
@@ -279,3 +283,26 @@
    </Button>
  )
}
const CompleteButton = () => {
  const record = useRecordContext();
  const notify = useNotify();
  const refresh = useRefresh();
  const requestComplete = async () => {
    const { data: { code, data, msg } } = await request.post(`/asnOrder/complete/${record.id}`);
    if (code === 200) {
      notify(msg);
      refresh()
    } else {
      notify(msg);
    }
  }
  return (
    <Button onClick={requestComplete} label={"toolbar.complete"} color="success">
      <TaskIcon />
    </Button>
  )
}