1
1 天以前 f9ae4dd16bc60281d7c2f7489e45d4f17896b659
Merge remote-tracking branch 'origin/devlop-phyz' into devlop-phyz
14个文件已修改
200 ■■■■ 已修改文件
rsf-admin/src/i18n/zh.js 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/histories/asnOrderLog/AsnOrderItemLogList.jsx 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/histories/asnOrderLog/AsnOrderLogEdit.jsx 77 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/histories/asnOrderLog/AsnOrderLogList.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/histories/taskLog/TaskLogEdit.jsx 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/histories/taskLog/TaskLogList.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/asnOrder/AsnOrderEdit.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/asnOrder/AsnOrderList.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/config/orderItemColumns.jsx 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/task/TaskPanel.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-open-api/src/main/java/com/vincent/rsf/openApi/service/phyz/impl/ErpReportServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/pda/MobileController.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/i18n/zh.js
@@ -841,6 +841,8 @@
                packName: "包装",
                ntyStatus: "报检状态",
                prodTime: "生产日期",
                targetWarehouseId: "仓库",
                sourceWarehouseId: "调出仓",
            },
            outStockItem: {
                orderId: "主单标识",
@@ -882,19 +884,19 @@
                ntyStatus: "质检上报状态",
            },
            asnOrderItemLog: {
                orderId: "主单标识",
                orderCode: "主单编码",
                platItemId: "erp标识",
                orderId: "单据标识",
                orderCode: "单据编码",
                platItemId: "行号",
                poDetlId: "PO单标识",
                poDetlCode: "PO单编码",
                fieldsIndex: "字段索引",
                matnrId: "物料标识",
                matnrCode: "物料编码",
                maktx: "物料",
                anfme: "计划数量",
                maktx: "物料名称",
                anfme: "应收数量",
                purQty: "采购数量",
                purUnit: "采购单位",
                qty: "已完成数量",
                qty: "实收数量",
                splrCode: "供应商编码",
                splrBatch: "批次",
                splrName: "供应商名称",
rsf-admin/src/page/histories/asnOrderLog/AsnOrderItemLogList.jsx
@@ -141,11 +141,14 @@
                    preferenceKey='asnOrderItemLog'
                    bulkActionButtons={false}
                    rowClick={(id, resource, record) => false}
                    omit={['id', 'orderId', 'poDetlId', 'poCode', 'qrcode', 'packName', 'createTime', 'memo', 'fieldsIndex', 'matnrId', 'splrCode', 'status', 'createBy$']}
                    omit={['id', 'orderId', 'poDetlId', 'poCode', 'qrcode', 'packName', 'createTime', 'memo', 'fieldsIndex', 'matnrId', 'splrCode', 'status', 'createBy$',
                        'asnId', 'purQty', 'purUnit', 'splrName', 'trackCode', 'ntyStatus$', 'asnCode'
                    ]}
                >
                    <NumberField source="id" />
                    <NumberField source="asnId" label="table.field.asnOrderItemLog.orderId" />
                    <TextField source="asnCode" label="table.field.asnOrderItemLog.orderCode" />
                    <TextField source="platWorkCode" label="table.field.asnOrderItem.platWorkCode" />,
                    <TextField source="platItemId" label="table.field.asnOrderItemLog.platItemId" />
                    <NumberField source="poDetlId" label="table.field.asnOrderItemLog.poDetlId" />
                    <TextField source="poCode" label="table.field.asnOrderItemLog.poCode" />
@@ -153,18 +156,19 @@
                    <TextField source="matnrId" label="table.field.asnOrderItemLog.matnrId" />
                    <TextField source="matnrCode" label="table.field.asnOrderItemLog.matnrCode" />
                    <TextField source="maktx" label="table.field.asnOrderItemLog.maktx" />
                    <TextField source="splrBatch" label="table.field.asnOrderItemLog.splrBatch" />
                    <NumberField source="anfme" label="table.field.asnOrderItemLog.anfme" />
                    <NumberField source="purQty" label="table.field.asnOrderItemLog.purQty" />
                    <TextField source="purUnit" label="table.field.asnOrderItemLog.purUnit" />
                    <NumberField source="qty" label="table.field.asnOrderItemLog.qty" />
                    <TextField source="splrCode" label="table.field.asnOrderItemLog.splrCode" />
                    <TextField source="splrBatch" label="table.field.asnOrderItemLog.splrBatch" />
                    <TextField source="splrName" label="table.field.asnOrderItemLog.splrName" />
                    <TextField source="qrcode" label="table.field.asnOrderItemLog.qrcode" />
                    <TextField source="trackCode" label="table.field.asnOrderItemLog.trackCode" />
                    <TextField source="packName" label="table.field.asnOrderItemLog.packName" />
                    <TextField source="ntyStatus$" label="table.field.asnOrderItemLog.ntyStatus" sortable={false} />
                    <TextField source="updateBy$" label="common.field.updateBy" />
                    <DateField source="updateTime" label="common.field.createTime" showTime />
                    <TextField source="createBy$" label="common.field.createBy" />
                    <DateField source="createTime" label="common.field.createTime" showTime />
                    <TextField source="memo" label="common.field.memo" sortable={false} />
rsf-admin/src/page/histories/asnOrderLog/AsnOrderLogEdit.jsx
@@ -53,18 +53,23 @@
                    defaultValues={{}}
                // validate={(values) => { }}
                >
                    <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}>
                        <Grid item xs={24} md={12} sx={{
                            "& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled":{
                            bgcolor : 'white',
                            WebkitTextFillColor: "rgba(0, 0, 0)"
                    <Grid container width={{ xs: '100%', xl: '100%' }} rowSpacing={3} columnSpacing={3}
                        sx={{
                            "& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled": {
                                bgcolor: 'white',
                                WebkitTextFillColor: "rgba(0, 0, 0)"
                            },
                            "& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled":{
                            bgcolor : 'white',
                            WebkitTextFillColor: "rgba(0, 0, 0)"
                            }
                        }}>
                            "& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled": {
                                bgcolor: 'white',
                                WebkitTextFillColor: "rgba(0, 0, 0)"
                            },
                            "& .MuiFilledInput-root.MuiInputBase-sizeSmall": {
                                bgcolor: 'white',
                            }
                        }}
                    >
                        <Grid item xs={24} md={12} >
                            <Typography variant="h6" gutterBottom>
                                {translate('common.edit.title.main')}
                            </Typography>
@@ -76,24 +81,24 @@
                                    parse={v => v}
                                    readOnly
                                />
                                <TextInput
                                {/* <TextInput
                                    label="table.field.asnOrderLog.poCode"
                                    source="poCode"
                                    readOnly
                                    parse={v => v}
                                />
                                <NumberInput
                                /> */}
                                {/* <NumberInput
                                    label="table.field.asnOrderLog.poId"
                                    readOnly
                                    source="poId"
                                />
                                <TextInput
                                /> */}
                                {/* <TextInput
                                    label="table.field.asnOrderLog.type"
                                    source="type$"
                                    readOnly
                                    parse={v => v}
                                    validate={required()}
                                />
                                /> */}
                                <TextInput
                                    label="table.field.asnOrderLog.wkType"
                                    source="wkType$"
@@ -101,8 +106,6 @@
                                    parse={v => v}
                                    validate={required()}
                                />
                            </Stack>
                            <Stack direction='row' gap={2}>
                                <NumberInput
                                    label="table.field.asnOrderLog.anfme"
                                    source="anfme"
@@ -115,7 +118,39 @@
                                    readOnly
                                    validate={required()}
                                />
                            </Stack>
                            <Stack direction='row' gap={2}>
                                <TextInput
                                    label="采购组织"    //table.field.asnOrder.purchaseOrgName
                                    source="purchaseOrgName"
                                    readOnly
                                    parse={v => v}
                                />
                                <TextInput
                                    label="采购员"    //table.field.asnOrder.purchaseOrgName
                                    source="purchaseUserName"
                                    readOnly
                                    parse={v => v}
                                />
                                <TextInput
                                    label="采购日期"    //table.field.asnOrder.purchaseOrgName
                                    source="purchaseDate"
                                    readOnly
                                    parse={v => v}
                                />
                                <TextInput
                                    label="供应商编码"    //table.field.asnOrder.purchaseOrgName
                                    source="supplierId"
                                    readOnly
                                    parse={v => v}
                                />
                                <TextInput
                                    label="供应商"    //table.field.asnOrder.purchaseOrgName
                                    source="supplierName"
                                    readOnly
                                    parse={v => v}
                                />
                                {/* <TextInput
                                    label="table.field.asnOrderLog.logisNo"
                                    source="logisNo"
                                    readOnly
@@ -136,17 +171,17 @@
                                        { id: 2, name: ' 部分上报' },
                                    ]}
                                    validate={required()}
                                />
                                /> */}
                            </Stack>
                        </Grid>
                    </Grid>
                </SimpleForm>
            </Edit >
            <Grid item xs={24} md={16} sx={{ marginTop: '1em' }}>
            {/* <Grid item xs={24} md={16} sx={{ marginTop: '1em' }}>
                <Typography variant="h6" gutterBottom >
                    {translate('common.edit.title.common')}
                </Typography>
            </Grid>
            </Grid> */}
            <AsnOrderItemLogList />
        </>
    )
rsf-admin/src/page/histories/asnOrderLog/AsnOrderLogList.jsx
@@ -170,8 +170,8 @@
                    <TextField source="supplierName" label="供应商" />
                    <TextField source="ntyStatus$" label="table.field.asnOrderLog.ntyStatus" sortable={false} />
                    <TextField source="updateBy$" label="common.field.updateBy" />
                    <DateField source="updateTime" label="common.field.updateTime" showTime />
                    <TextField source="updateBy$" label="common.field.updateBy" />
                    <TextField source="createBy$" label="common.field.createBy" />
                    <DateField source="createTime" label="common.field.createTime" showTime />
                    <BooleanField source="statusBool" label="common.field.status" sortable={false} />
rsf-admin/src/page/histories/taskLog/TaskLogEdit.jsx
@@ -79,6 +79,19 @@
                                    readOnly
                                />
                                <TextInput
                                    label="table.field.task.barcode"
                                    source="barcode"
                                    readOnly
                                    parse={v => v}
                                />
                                <NumberInput
                                    label="table.field.task.sort"
                                    readOnly
                                    source="sort"
                                />
                            </Stack>
                            <Stack direction='row' gap={2}>
                                <TextInput
                                    label="table.field.task.orgLoc"
                                    source="orgLoc"
                                    readOnly
@@ -96,24 +109,11 @@
                                    readOnly
                                    parse={v => v}
                                />
                            </Stack>
                            <Stack direction='row' gap={2}>
                                <TextInput
                                    label="table.field.task.targSite"
                                    source="targSite"
                                    readOnly
                                    parse={v => v}
                                />
                                <TextInput
                                    label="table.field.task.barcode"
                                    source="barcode"
                                    readOnly
                                    parse={v => v}
                                />
                                <NumberInput
                                    label="table.field.task.sort"
                                    readOnly
                                    source="sort"
                                />
                            </Stack>
                        </Grid>
rsf-admin/src/page/histories/taskLog/TaskLogList.jsx
@@ -126,7 +126,7 @@
                    rowClick={'edit'}
                    expand={false}
                    expandSingle={true}
                    omit={['id', 'createTime', 'createBy', 'memo', 'taskId', 'robotCode', 'exceStatus', 'sort', 'expCode']}
                    omit={['id', 'createTime', 'createBy', 'memo', 'taskId', 'robotCode', 'exceStatus', 'sort', 'expCode', 'createBy$']}
                >
                    <NumberField source="id" />
                    <TextField source="taskCode" label="table.field.task.taskCode" />
rsf-admin/src/page/orders/asnOrder/AsnOrderEdit.jsx
@@ -130,7 +130,7 @@
                                />
                                <TextInput
                                    label="采购日期"    //table.field.asnOrder.purchaseOrgName
                                    source="purchaseDate"
                                    source="businessTime"
                                    readOnly
                                    parse={v => v}
                                />
rsf-admin/src/page/orders/asnOrder/AsnOrderList.jsx
@@ -172,7 +172,7 @@
          {/* 银座新增 */}
          <TextField source="purchaseOrgName" label="采购组织" />
          <TextField source="purchaseUserName" label="采购员" />
          <TextField source="purchaseDate" label="采购日期" />
          <DateField source="businessTime" label="采购日期" />
          <TextField source="supplierId" label="供应商编码" />
          <TextField source="supplierName" label="供应商" />          
rsf-admin/src/page/orders/config/orderItemColumns.jsx
@@ -22,9 +22,10 @@
    <TextField source="maktx" label="table.field.asnOrderItem.maktx" key="maktx" />, //物料名称
    <TextField source="splrBatch" label="table.field.asnOrderItem.splrBatch" key="splrBatch" />, //批次
    <TextField source="spec" label="table.field.asnOrderItem.spec" key="spec" />, //规格
    <TextField source="unit" label="table.field.asnOrderItem.unit" key="unit" />, //单位
    <NumberField source="anfme" label="table.field.asnOrderItem.anfme" key="anfme" />, //应收数量
    <NumberField source="qty" label="table.field.asnOrderItem.qty" key="qty" />, //实收数量
    <TextField source="stockUnit" label="table.field.asnOrderItem.stockUnit" key="stockUnit" />, //单位
    <TextField source="sourceWareHouseId" label="table.field.asnOrderItem.sourceWareHouseId" key="sourceWareHouseId" />, //调出仓
];
/**
@@ -42,9 +43,10 @@
    <TextField source="maktx" label="table.field.asnOrderItem.maktx" key="maktx" />, //物料名称
    <TextField source="splrBatch" label="table.field.asnOrderItem.splrBatch" key="splrBatch" />, //批次
    <TextField source="spec" label="table.field.asnOrderItem.spec" key="spec" />, //规格
     <TextField source="unit" label="table.field.asnOrderItem.unit" key="unit" />, //单位
    <NumberField source="anfme" label="table.field.asnOrderItem.anfme" key="anfme" />, //应收数量
    <NumberField source="qty" label="table.field.asnOrderItem.qty" key="qty" />, //实收数量
    <TextField source="stockUnit" label="table.field.asnOrderItem.stockUnit" key="stockUnit" />, //单位
    <NumberField source="qty" label="table.field.asnOrderItem.qty" key="qty" />, //实收数量
    <TextField source="targetWarehouseId" label="table.field.asnOrderItem.targetWarehouseId" key="targetWarehouseId" />, //建议目标仓
];
/**
@@ -68,10 +70,10 @@
 * @returns {Array} 尾部列数组
 */
export const getLastColumns = () => [
    <DateField source="updateTime" label="common.field.updateTime" showTime key="updateTime" />,
    <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false} key="updateBy">
     <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false} key="updateBy">
        <TextField source="nickname" />
    </ReferenceField>,
    <DateField source="updateTime" label="common.field.updateTime" showTime key="updateTime" />,
    <ReferenceField source="createBy" label="common.field.createBy" reference="user" link={false} sortable={false} key="createBy">
        <TextField source="nickname" />
    </ReferenceField>,
rsf-admin/src/page/task/TaskPanel.jsx
@@ -67,8 +67,8 @@
                        <TextField source="sourceCode" label="table.field.taskItem.sourceCode" />
                        <NumberField source="orderItemId" label="table.field.taskItem.orderItemId" />
                        <NumberField source="matnrId" label="table.field.taskItem.matnrId" />
                        <TextField source="maktx" label="table.field.taskItem.maktx" />
                        <TextField source="matnrCode" label="table.field.taskItem.matnrCode" />
                        <TextField source="maktx" label="table.field.taskItem.maktx" />
                        <TextField source="unit" label="table.field.taskItem.unit" />
                        <NumberField source="anfme" label="table.field.taskItem.anfme" />
                        <TextField source="batch" label="table.field.taskItem.batch" />
rsf-open-api/src/main/java/com/vincent/rsf/openApi/service/phyz/impl/ErpReportServiceImpl.java
@@ -94,6 +94,7 @@
        JSONObject params = JSONObject.parseObject(JSON.toJSONString(order));
        JSONObject mappedData = ParamsMapUtils.apiMaps("erp", "orderId", params);
        mappedData.put("updateBy", "erp");
        mapParams = objectToMap(mappedData);
        maps.add(mapParams);
        log.info("修改订单信息及状态: {}, 请求参数: {}", wmsUrl, JSONArray.toJSONString(maps));
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/pda/MobileController.java
@@ -158,6 +158,17 @@
        }
    }
    @ApiOperation("获取拖盘可用库区")
    @PostMapping("/asnOrderItem/container/area")
    public R getItemByContainerArea(@RequestBody Map<String, Object> params) {
        if (Objects.isNull(params)) {
            return R.error("参数不能为空!!");
        }
        return mobileService.getItemByContainerArea(params, getLoginUser());
    }
    @ApiOperation("组托")
    @PostMapping("/waitPakin/merge")
    public R pikinOrder(@RequestBody WaitPakinParam waitPakin) {
rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java
@@ -68,6 +68,7 @@
    R completeOrder(Long id, Long loginUserId);
    R getItemByContainer(Map<String, Object> params,User user);
    R getItemByContainerArea(Map<String, Object> params,User user);
    R getUnItemByContainer(Map<String, Object> params);
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
@@ -1045,6 +1045,46 @@
    /**
     * @param
     * @param user
     * @return
     * @author Ryan
     * @description 通过容器获取组拖物料
     * @time 2025/4/9 16:57
     */
    @Override
    public R getItemByContainerArea(Map<String, Object> params, User user) {
        List<BasContainer> containers = basContainerService.list();
        for (BasContainer container : containers) {
            String codeType = container.getCodeType(); // 获取正则表达式
            if (params.get("barcode").toString().matches(codeType)) { // 判断条码是否符合这个正则
                List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService
                        .list(new LambdaQueryWrapper<WarehouseRoleMenu>()
                                .in(WarehouseRoleMenu::getRoleId, Arrays.asList(user.getUserRoleIds())));
                Set<WarehouseRoleMenu> warehouseRoleMenusSet = new HashSet<>(warehouseRoleMenus);
                // 获取 menuId 集合
                Set<Long> menuIdSet = warehouseRoleMenusSet.stream()
                        .map(WarehouseRoleMenu::getMenuId)
                        .collect(Collectors.toSet());
                // 获取 areaList 并转换为 Long 类型的 Set
                List<Integer> areaList = container.getAreas();
                Set<Long> areaSet = new HashSet<>();
                if (areaList != null) {
                    areaList.forEach(area -> areaSet.add(area.longValue()));
                }
                // 求两个集合的交集
                menuIdSet.retainAll(areaSet);
                List<WarehouseAreas> areas = warehouseAreasService.list(new LambdaQueryWrapper<WarehouseAreas>()
                        .in(WarehouseAreas::getId, menuIdSet));
                return R.ok(areas);
            }
        }
        return R.ok(new ArrayList<>());
    }
    /**
     * @param
     * @return
     * @author Ryan
     * @description 通过容器获取组拖物料