From fb5dee2424f97e7a5933d1b3dd5d36714ec404de Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 07 六月 2025 16:38:45 +0800
Subject: [PATCH] 获取出库单对应库位信息

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java    |    2 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/OrderOutTaskParam.java |    2 
 rsf-admin/src/page/orders/outStock/OutStockPublic.jsx                                            |   55 ++++++++++++++++++++++++++-
 rsf-admin/src/page/orders/outStock/OutOrderList.jsx                                              |    2 
 4 files changed, 56 insertions(+), 5 deletions(-)

diff --git a/rsf-admin/src/page/orders/outStock/OutOrderList.jsx b/rsf-admin/src/page/orders/outStock/OutOrderList.jsx
index e9906a6..45c89df 100644
--- a/rsf-admin/src/page/orders/outStock/OutOrderList.jsx
+++ b/rsf-admin/src/page/orders/outStock/OutOrderList.jsx
@@ -197,7 +197,7 @@
         drawerVal={drawerVal}
         setDrawerVal={setDrawerVal}
       >
-        <OutStockPublic record={select} />
+        <OutStockPublic record={select} open={drawerVal}/>
       </PageEditDrawer>
     </Box >
   )
diff --git a/rsf-admin/src/page/orders/outStock/OutStockPublic.jsx b/rsf-admin/src/page/orders/outStock/OutStockPublic.jsx
index c2c399a..21b87bf 100644
--- a/rsf-admin/src/page/orders/outStock/OutStockPublic.jsx
+++ b/rsf-admin/src/page/orders/outStock/OutStockPublic.jsx
@@ -34,6 +34,7 @@
     AutocompleteInput,
     DeleteButton,
     SimpleForm,
+    required,
     Form,
     SaveButton,
     useRefresh,
@@ -43,6 +44,8 @@
 import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE, DEFAULT_ITEM_PAGE_SIZE } from '@/config/setting';
 import { styled } from '@mui/material/styles';
 import { DataGrid } from '@mui/x-data-grid';
+import request from '@/utils/request';
+import DictSelect from "../../components/DictSelect";
 
 const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
     '& .css-1vooibu-MuiSvgIcon-root': {
@@ -55,7 +58,34 @@
 
 
 const OutStockPublic = (props) => {
-    const { record } = props;
+    const { record, open } = props;
+    const [formData, setFormData] = useState({
+        orderId: record?.id
+    });
+    const translate = useTranslate();
+
+    useEffect(() => {
+        getWaveRule()
+    }, [formData, open])
+
+    const getWaveRule = async () => {
+        if (formData.waveId == null && formData.waveId == undefined) {
+            return
+        }
+        const res = await request.post('/outStock/order/getOutTaskItems', {...formData});
+        if (res?.data?.code === 200) {
+            setRows(res.data.data.records)
+        } else {
+            notify(res.data.msg);
+        }
+    }
+
+    const handleChange = (value, name) => {
+        setFormData((prevData) => ({
+            ...prevData,
+            [name]: value
+        }));
+    };
 
     return (
         <>
@@ -63,6 +93,26 @@
                 <Grid sx={{ display: "flex" }} container rowSpacing={2} columnSpacing={2}>
                     <Grid item xl={6} gap={2} >
                         <Card>
+                            <Form>
+                                <ReferenceInput
+                                    source="type"
+                                    reference="waveRule"
+                                >
+                                    <AutocompleteInput
+                                        label="table.field.waveRule.type"
+                                        onChange={(e) => handleChange(e, 'waveId')}
+                                        value={formData.type}
+                                        validate={required()}
+                                    />
+                                </ReferenceInput>
+                            </Form>
+                            {/* <DictSelect
+                                label={translate("table.field.waveRule.type")}
+                                onChange={(e) => handleChange(e.target.value, 'type')}
+                                value={formData.type}
+                                dictTypeCode="sys_wave_rule_code"
+                                required
+                            /> */}
                             <List
                                 resource="outStockItem"
                                 storeKey='outStockItem'
@@ -87,7 +137,7 @@
                                     preferenceKey='outStockItem'
                                     bulkActionButtons={false}
                                     rowClick={false}
-                                    omit={['id', 'splrName', 'qty']}
+                                    omit={['id', 'splrName', 'qty', 'poCode']}
                                 >
                                     <NumberField source="id" />
                                     <TextField source="asnCode" label="table.field.outStockItem.asnCode" />
@@ -129,6 +179,7 @@
 }
 
 
+
 const rows = [
     { id: 1, locCode: '03-02-1-2-1', container: 'Snow', batch: 'Jon', curQty: 14 },
     { id: 2, locCode: '03-02-1-2-1', container: 'Lannister', batch: 'Cersei', curQty: 31 },
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/OrderOutTaskParam.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/OrderOutTaskParam.java
index 3f25aaa..d04de52 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/OrderOutTaskParam.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/OrderOutTaskParam.java
@@ -8,7 +8,7 @@
 @ApiModel(value = "OrderOutTaskParam", description = "璁㈠崟鍑哄簱param")
 public class OrderOutTaskParam implements Serializable {
 
-    private String waveId;
+    private Long waveId;
 
     private Long orderId;
 
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
index afe0c81..7a00800 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
@@ -405,7 +405,7 @@
         if (Cools.isEmpty(param.getOrderId())){
             throw new CoolException("鍗曟嵁id涓虹┖");
         }
-        WaveRule waveRule = waveRuleService.getOne(new LambdaQueryWrapper<WaveRule>().eq(WaveRule::getCode, param.getWaveId()));
+        WaveRule waveRule = waveRuleService.getOne(new LambdaQueryWrapper<WaveRule>().eq(WaveRule::getId, param.getWaveId()));
         if (Cools.isEmpty(waveRule)){
             throw new CoolException("鏈壘鍒板綋鍓嶇瓥鐣�");
         }

--
Gitblit v1.9.1