skyouc
3 天以前 8eb934469f25715758dbf3cb39db5c0c75ca0e2e
盘点功能优化
5个文件已修改
1个文件已添加
1 文件已重命名
112 ■■■■ 已修改文件
rsf-admin/src/page/orders/check/CheckOrderItemList.jsx 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/check/CheckOrderList.jsx 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/check/CheckOrderPub.jsx 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/check/CheckOrderSiteDialog.jsx 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/CheckExceStatus.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/orders/check/CheckOrderItemList.jsx
@@ -126,13 +126,11 @@
            preferenceKey='outStockItem'
            bulkActionButtons={false}
            rowClick={false}
            omit={['id', 'createTime', 'createBy', 'memo', 'poDetlId', 'purQty', 'purUnit', 'trackCode', 'packName', 'qrcode', 'splrName', 'matnrId', 'asnId']}
            omit={['id', 'createTime', 'createBy', 'memo', 'poDetlId', 'purQty',  'trackCode', 'packName', 'qrcode', 'splrName', 'matnrId', 'asnId']}
          >
            <NumberField source="id" />
            <NumberField source="asnId" label="table.field.outStockItem.asnId" />
            <TextField source="asnCode" label="table.field.outStockItem.asnCode" />
            <TextField source="poCode" label="table.field.outStockItem.poCode" />
            <TextField source="poDetlId" label="table.field.outStockItem.poDetlId" />
            <TextField source="matnrId" label="table.field.outStockItem.matnrId" />
            <TextField source="matnrCode" label="table.field.outStockItem.matnrCode" />
            <TextField source="maktx" label="table.field.outStockItem.maktx" />
@@ -143,11 +141,8 @@
            <NumberField source="qty" label="table.field.outStockItem.qty" />
            <TextField source="stockUnit" label="table.field.outStockItem.stockUnit" />
            <TextField source="splrBatch" label="table.field.outStockItem.splrBatch" />
            <TextField source="purUnit" label="table.field.outStockItem.purUnit" />
            <TextField source="splrCode" label="table.field.outStockItem.splrCode" />
            <TextField source="splrName" label="table.field.outStockItem.splrName" />
            <TextField source="qrcode" label="table.field.outStockItem.qrcode" />
            <TextField source="trackCode" label="table.field.outStockItem.barcode" />
            <TextField source="packName" label="table.field.outStockItem.packName" />
            <DateField source="updateTime" label="common.field.updateTime" showTime />
            <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
rsf-admin/src/page/orders/check/CheckOrderList.jsx
@@ -43,6 +43,8 @@
import EditIcon from '@mui/icons-material/Edit';
import AddIcon from '@mui/icons-material/Add';
import request from '@/utils/request';
import PageEditDrawer from "../../components/PageEditDrawer";
import CheckOrderPub from "./CheckOrderPub";
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
  '& .css-1vooibu-MuiSvgIcon-root': {
@@ -162,13 +164,10 @@
            <MyButton setCreateDialog={setManualDialog} setmodalType={setmodalType} />
            <EditButton label="toolbar.detail" icon={(<DetailsIcon />)}></EditButton>
            <CancelButton />
            <PublicButton setDrawerVal={setDrawerVal} drawerVal={drawerVal} setSelect={setSelect} />
          </WrapperField>
        </StyledDatagrid>
      </List>
      {/* <CheckOrderCreate
        open={manualDialog}
        setOpen={setManualDialog}
      /> */}
      <SelectMatnrModal
        asnId={modalType}
        billReload={billReload}
@@ -176,14 +175,14 @@
        setOpen={setManualDialog}
      />
      {/* <OutStockWaveDialog open={waveRule} setOpen={setWaveRule} onClose={closeDialog} />
      <OutOrderPreview open={preview} setOpen={setPreview} />
      <OutOrderPreview open={preview} setOpen={setPreview} />*/}
      <PageEditDrawer
        title={"toolbar.publicWorking"}
        drawerVal={drawerVal}
        setDrawerVal={setDrawerVal}
      >
        <OutStockPublic record={select} open={drawerVal} setOpen={setDrawerVal}  />
      </PageEditDrawer> */}
        <CheckOrderPub record={select} open={drawerVal} setOpen={setDrawerVal}  />
      </PageEditDrawer>
    </Box >
  )
}
@@ -250,3 +249,19 @@
    record?.exceStatus == 10 ? <ConfirmButton label={"toolbar.cancel"} startIcon={<CancelOutlinedIcon />} onConfirm={cancelOrder} size={"small"} /> : <></>
  )
}
//下发执行
const PublicButton = ({ setDrawerVal, setSelect }) => {
  const record = useRecordContext();
  const refresh = useRefresh();
  const taskEvent = () => {
    setDrawerVal(true)
    setSelect(record)
    refresh();
  }
  return (
    record.workQty < record.anfme ? <Button label={"toolbar.publicWorking"} startIcon={<AddTaskIcon />} onClick={taskEvent} size={"small"} /> : <></>
  )
}
rsf-admin/src/page/orders/check/CheckOrderPub.jsx
File was renamed from rsf-admin/src/page/orders/check/OutStockPublic.jsx
@@ -66,7 +66,7 @@
}));
const OutStockPublic = (props) => {
const CheckOrderPub = (props) => {
    const { record, open, setOpen, setManualDialog } = props;
    const notify = useNotify();
    const gridRef = useGridApiRef();
@@ -475,6 +475,6 @@
    )
}
export default OutStockPublic;
export default CheckOrderPub;
rsf-admin/src/page/orders/check/CheckOrderSiteDialog.jsx
New file
@@ -0,0 +1,54 @@
import { Box, Card, Grid, List, LinearProgress, Select, MenuItem, ListItemText, ListItemAvatar, Avatar, ListItemButton, Dialog, DialogTitle, ListItem } from "@mui/material";
import React, { useState, useRef, useEffect, useMemo } from "react";
import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE, DEFAULT_ITEM_PAGE_SIZE } from '@/config/setting';
import { Delete, Edit, Add } from '@mui/icons-material';
import request from '@/utils/request';
import { useTranslate } from "react-admin";
const CheckOrderSiteDialog = (props) => {
    const translate = useTranslate();
    const { onClose, selectedValue, open } = props;
    const [siteNos, setSiteNos] = useState([]);
    const handleClose = () => {
        onClose(selectedValue);
    }
    const handleListItemClick = (value) => {
        onClose(value);
    }
    useEffect(() => {
        getSiteNos()
    }, [open])
    const getSiteNos = async () => {
        const { data: { code, data, msg } } = await request.get('/outStock/tasks/sites');
        if (code === 200) {
            setSiteNos(data);
        } else {
            notify(msg);
        }
    }
    return (
        <Dialog
            onClose={handleClose}
            open={open}
        >
            <DialogTitle>{translate("toolbar.modiftySite")}</DialogTitle>
            <List sx={{ pt: 0 }}>
                {siteNos.map((site) => (
                    <ListItem disableGutters key={site?.id}>
                        <ListItemButton onClick={() => handleListItemClick(site)}>
                            <ListItemText primary={site.site} />
                        </ListItemButton>
                    </ListItem>
                ))}
            </List>
        </Dialog>
    );
}
export default CheckOrderSiteDialog;
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/CheckExceStatus.java
@@ -3,10 +3,10 @@
public enum CheckExceStatus {
    CHECK_ORDER_STATUS_UN_EXCE("1", "未执行"),
    CHECK_ORDER_STATUS_INIT("2", "初始化"),
    CHECK_ORDER_STATUS_EXCE_ING("3", "执行中"),
    CHECK_ORDER_STATUS_EXCE_DONE("4", "执行完成"),
    CHECK_ORDER_STATUS_UN_EXCE("0", "未执行"),
    CHECK_ORDER_STATUS_INIT("1", "初始化"),
    CHECK_ORDER_STATUS_EXCE_ING("2", "执行中"),
    CHECK_ORDER_STATUS_EXCE_DONE("3", "执行完成"),
    ;
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java
@@ -8,6 +8,7 @@
import com.vincent.rsf.server.common.utils.DateUtils;
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.enums.AsnExceStatus;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.POExceStatus;
import com.vincent.rsf.server.manager.enums.WarehouseAreasType;
import com.vincent.rsf.server.manager.service.*;
@@ -78,7 +79,10 @@
        if (!Boolean.parseBoolean(config.getVal())) {
            return;
        }
        List<WkOrder> orders = asnOrderService.list(new LambdaQueryWrapper<WkOrder>().eq(WkOrder::getExceStatus, AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.val));
        //自动收货单
        List<WkOrder> orders = asnOrderService.list(new LambdaQueryWrapper<WkOrder>()
                .eq(WkOrder::getType, OrderType.ORDER_IN.type)
                .eq(WkOrder::getExceStatus, AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.val));
        if (!orders.isEmpty()) {
            for (WkOrder order : orders) {
                List<WkOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getAsnId, order.getId()));
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
@@ -80,8 +80,8 @@
                    .setMemo(template.getMemo())
                    .setUpdateBy(loginUserId)
                    .setCreateBy(loginUserId)
                    .setType(CheckOrderType.getTypeVal(template.getType()))
                    .setWkType(CheckOrderType.getValType(template.getWkType()));
                    .setType(OrderType.getTypeVal(template.getType()))
                    .setWkType(CheckOrderType.getTypeVal(template.getWkType()));
            if (!this.save(order)) {
                throw new CoolException("单据保存失败!!");
            }