skyouc
2025-05-07 f5b4f189e460480a96acf3d1864344d8d5d92695
PO单模板优化
ASN单模板优化
18个文件已修改
1个文件已添加
4 文件已重命名
460 ■■■■ 已修改文件
rsf-admin/src/page/basicInfo/companys/CompanysList.jsx 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrder.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/excel/AsnOrderTemplate.java 191 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/excel/PurchaseTemplate.java 106 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderSourceType.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderType.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderWorkType.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskType.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderItemServiceImpl.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockItemServiceImpl.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/PurchaseItemServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/page/basicInfo/companys/CompanysList.jsx
@@ -132,6 +132,7 @@
                >
                    <NumberField source="id" />
                    <TextField source="name" label="table.field.companys.name" />
                    <TextField source="code" label="table.field.companys.code" />
                    <TextField source="nameEn" label="table.field.companys.nameEn" />
                    <TextField source="breifCode" label="table.field.companys.breifCode" />
                    <DictField source="type" label="table.field.companys.type" dictTypeCode={'sys_companys_type'} />
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
@@ -4,7 +4,7 @@
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.server.api.entity.dto.InTaskMsgDto;
import com.vincent.rsf.server.api.controller.params.TaskInParam;
import com.vincent.rsf.server.api.entity.enums.TaskType;
import com.vincent.rsf.server.manager.enums.TaskType;
import com.vincent.rsf.server.api.service.WcsService;
import com.vincent.rsf.server.system.controller.BaseController;
import io.swagger.annotations.Api;
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
@@ -8,13 +8,12 @@
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.controller.params.*;
import com.vincent.rsf.server.api.entity.dto.*;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.OrderWorkType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.api.service.MobileService;
import com.vincent.rsf.server.common.config.ConfigProperties;
import com.vincent.rsf.server.common.enums.WarehouseAreaType;
import com.vincent.rsf.server.common.security.JwtSubject;
import com.vincent.rsf.server.common.utils.CommonUtil;
import com.vincent.rsf.server.common.utils.FieldsUtils;
import com.vincent.rsf.server.common.utils.JwtUtil;
import com.vincent.rsf.server.manager.controller.params.GenerateTaskParams;
@@ -23,7 +22,6 @@
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.enums.AsnExceStatus;
import com.vincent.rsf.server.manager.enums.PakinIOStatus;
import com.vincent.rsf.server.manager.enums.QlyIsptResult;
import com.vincent.rsf.server.manager.enums.QlyIsptStatus;
import com.vincent.rsf.server.manager.mapper.*;
import com.vincent.rsf.server.manager.service.*;
@@ -38,7 +36,6 @@
import com.vincent.rsf.server.system.service.UserLoginService;
import com.vincent.rsf.server.system.service.UserService;
import com.vincent.rsf.server.system.utils.SerialRuleUtils;
import org.apache.commons.codec.digest.Md5Crypt;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -48,8 +45,6 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.nio.charset.StandardCharsets;
import java.util.*;
import java.util.stream.Collectors;
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
@@ -3,7 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.entity.PurchaseItem;
import com.vincent.rsf.server.manager.service.PurchaseItemService;
import com.vincent.rsf.server.manager.service.PurchaseService;
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
@@ -7,9 +7,9 @@
import com.vincent.rsf.server.api.entity.dto.InTaskMsgDto;
import com.vincent.rsf.server.api.entity.dto.LocTypeDto;
import com.vincent.rsf.server.api.controller.params.TaskInParam;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.TaskStsType;
import com.vincent.rsf.server.api.entity.enums.TaskType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.TaskStsType;
import com.vincent.rsf.server.manager.enums.TaskType;
import com.vincent.rsf.server.api.service.WcsService;
import com.vincent.rsf.server.api.utils.LocUtils;
import com.vincent.rsf.server.api.utils.SlaveProperties;
@@ -17,7 +17,6 @@
import com.vincent.rsf.server.manager.enums.PakinIOStatus;
import com.vincent.rsf.server.manager.service.*;
import com.vincent.rsf.server.manager.service.impl.LocServiceImpl;
import com.vincent.rsf.server.manager.utils.LocManageUtil;
import com.vincent.rsf.server.system.constant.SerialRuleCode;
import com.vincent.rsf.server.system.enums.LocStsType;
import com.vincent.rsf.server.system.utils.SerialRuleUtils;
@@ -27,7 +26,6 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java
@@ -8,8 +8,8 @@
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.OrderWorkType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.common.utils.ExcelUtil;
import com.vincent.rsf.server.common.annotation.OperationLog;
import com.vincent.rsf.server.common.domain.BaseParam;
@@ -19,7 +19,6 @@
import com.vincent.rsf.server.manager.controller.params.BatchUpdateParam;
import com.vincent.rsf.server.manager.entity.AsnOrder;
import com.vincent.rsf.server.manager.entity.AsnOrderItem;
import com.vincent.rsf.server.manager.entity.Matnr;
import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate;
import com.vincent.rsf.server.manager.enums.AsnExceStatus;
import com.vincent.rsf.server.manager.service.AsnOrderItemService;
@@ -33,12 +32,9 @@
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.mail.Multipart;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
import java.util.stream.Collectors;
@RestController
@Api(tags = "ASN入库通知单")
@@ -169,23 +165,15 @@
                template.setCode(order.getCode())
                        .setType(OrderType.getValType(order.getType()))
                        .setWkType(OrderWorkType.getWorkDesc(order.getWkType()))
                        .setExceStatus(AsnExceStatus.getExceStatus(order.getExceStatus()))
                        .setAnfme(item.getAnfme() + "")
                        .setMaktx(item.getMaktx())
                        .setMemo(item.getMemo())
                        .setMatnrCode(item.getMatnrCode())
                        .setPoCode(item.getPoCode())
                        .setSplrName(item.getSplrName())
                        .setPoId(order.getPoId() + "")
                        .setTrackCode(item.getTrackCode())
                        .setBarcode(item.getBarcode())
                        .setPackName(item.getPackName())
                        .setPlatItemId(item.getPlatItemId())
                        .setSplrBatch(item.getSplrBatch())
                        .setSplrCode(item.getSplrCode())
                        .setStockUnit(item.getStockUnit())
                        .setPurQty(item.getPurQty() + "")
                        .setPurUnit(item.getPurUnit());
                        .setSplrCode(item.getSplrCode());
                orderTemplates.add(template);
            }
        }
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java
@@ -6,8 +6,8 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.OrderWorkType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.common.annotation.OperationLog;
import com.vincent.rsf.server.common.domain.BaseParam;
import com.vincent.rsf.server.common.domain.KeyValVo;
@@ -170,23 +170,15 @@
                template.setCode(order.getCode())
                        .setType(OrderType.getValType(order.getType()))
                        .setWkType(OrderWorkType.getWorkDesc(order.getWkType()))
                        .setExceStatus(AsnExceStatus.getExceStatus(order.getExceStatus()))
                        .setAnfme(item.getAnfme() + "")
                        .setMaktx(item.getMaktx())
                        .setMemo(item.getMemo())
                        .setMatnrCode(item.getMatnrCode())
                        .setPoCode(item.getPoCode())
                        .setSplrName(item.getSplrName())
                        .setPoId(order.getPoId() + "")
                        .setTrackCode(item.getTrackCode())
                        .setBarcode(item.getBarcode())
                        .setPackName(item.getPackName())
                        .setPlatItemId(item.getPlatItemId())
                        .setSplrBatch(item.getSplrBatch())
                        .setSplrCode(item.getSplrCode())
                        .setStockUnit(item.getStockUnit())
                        .setPurQty(item.getPurQty() + "")
                        .setPurUnit(item.getPurUnit());
                        .setSplrCode(item.getSplrCode());
                orderTemplates.add(template);
            }
        }
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java
@@ -6,7 +6,7 @@
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.TaskStsType;
import com.vincent.rsf.server.manager.enums.TaskStsType;
import com.vincent.rsf.server.common.utils.ExcelUtil;
import com.vincent.rsf.server.common.annotation.OperationLog;
import com.vincent.rsf.server.common.domain.BaseParam;
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrder.java
@@ -100,7 +100,7 @@
     * 预计到达时间
     */
    @ApiModelProperty(value= "预计到达时间")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date arrTime;
    /**
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/excel/AsnOrderTemplate.java
@@ -3,11 +3,13 @@
import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.handler.inter.IExcelDataModel;
import cn.afterturn.easypoi.handler.inter.IExcelModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.vincent.rsf.server.manager.entity.excel.annotation.ExcelAutoColumnSize;
import com.vincent.rsf.server.manager.entity.excel.annotation.ExcelComment;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
@@ -26,8 +28,8 @@
    /**
     * 编号
     */
    @Excel(name = "编号")
    @ApiModelProperty(value= "编号")
    @Excel(name = "*编号")
    @ApiModelProperty(value = "*编号")
    @ExcelComment(value = "code", example = "ASN5945272236")
    private String code;
@@ -35,39 +37,17 @@
     * PO单号
     */
    @Excel(name = "PO单号")
    @ApiModelProperty(value= "PO单号")
    @ApiModelProperty(value = "PO单号")
    @ExcelComment(value = "poCode", example = "PO59755695")
    private String poCode;
    /**
     * PO单据标识
     */
    @Excel(name = "PO单据标识")
    @ApiModelProperty(value= "PO单据标识")
    @ExcelComment(value = "poId", example = "123456698")
    private String poId;
    /**
     * 单据类型
     */
    @Excel(name = "单据类型")
    @ApiModelProperty(value= "单据类型")
    @ExcelComment(value = "type", example = "入库单")
    private String type;
    /**
     * 业务类型
     */
    @Excel(name = "业务类型")
    @ApiModelProperty(value= "业务类型")
    @ExcelComment(value = "wkType", example = "完工入库单")
    private String wkType;
    @Excel(name = "执行状态")
    @ApiModelProperty(value= "执行状态")
    @ExcelComment(value = "exceStatus", example = "0")
    private String exceStatus;
//    /**
//     * PO单据标识
//     */
//    @Excel(name = "PO单据标识")
//    @ApiModelProperty(value= "PO单据标识")
//    @ExcelComment(value = "poId", example = "123456698")
//    private String poId;
    @Excel(name = "行号")
    @ApiModelProperty("行号")
@@ -75,93 +55,126 @@
    private String platItemId;
    @Excel(name = "物料编码")
    @ApiModelProperty("物料编码")
    @ExcelComment(value = "matnrCode",example = "102010101545")
    /**
     * 单据类型
     */
    @Excel(name = "*单据类型")
    @ApiModelProperty(value = "*单据类型")
    @ExcelComment(value = "type", example = "采购入库单")
    private String type;
    /**
     * 业务类型
     */
    @Excel(name = "*业务类型")
    @ApiModelProperty(value = "*业务类型")
    @ExcelComment(value = "wkType", example = "完工入库单")
    private String wkType;
//    @Excel(name = "执行状态")
//    @ApiModelProperty(value= "执行状态")
//    @ExcelComment(value = "exceStatus", example = "0")
//    private String exceStatus;
    @Excel(name = "*物料编码")
    @ApiModelProperty("*物料编码")
    @ExcelComment(value = "matnrCode", example = "102010101545")
    private String matnrCode;
    @Excel(name = "物料名称")
    @ApiModelProperty("物料名称")
    @ExcelComment(value = "maktx",example = "天瑞019-大A型支架-55飞机轮黑色,三角轮盖喷漆银色 (带攻丝钉)右")
    @ExcelComment(value = "maktx", example = "天瑞019-大A型支架-55飞机轮黑色,三角轮盖喷漆银色 (带攻丝钉)右")
    private String maktx;
    @Excel(name = "物料规格")
    @ApiModelProperty("物料规格")
    @ExcelComment(value = "maktx",example = "2*3*6")
    private String spec;
    @Excel(name = "物料型号")
    @ApiModelProperty("物料型号")
    @ExcelComment(value = "maktx",example = "abc")
    private String model;
    @Excel(name = "数量")
    @ApiModelProperty("数量")
    @ExcelComment(value = "anfme",example = "25")
    private String anfme;
    @Excel(name = "库存单位")
    @ApiModelProperty("库存单位")
    @ExcelComment(value = "stockUnit",example = "个")
    private String stockUnit;
    @Excel(name = "采购数量")
    @ApiModelProperty("采购数量")
    @ExcelComment(value = "purQty",example = "0")
    private String purQty;
    @Excel(name = "采购单位")
    @ApiModelProperty("采购单位")
    @ExcelComment(value = "purUnit",example = "个")
    private String purUnit;
    @Excel(name = "已完成数量")
    @ApiModelProperty("已完成数量")
    @ExcelComment(value = "qty",example = "0")
    private String qty;
    //    @Excel(name = "物料规格")
//    @ApiModelProperty("物料规格")
//    @ExcelComment(value = "maktx",example = "2*3*6")
//    private String spec;
//
//
//    @Excel(name = "物料型号")
//    @ApiModelProperty("物料型号")
//    @ExcelComment(value = "maktx",example = "abc")
//    private String model;
    @Excel(name = "供应商编码")
    @ApiModelProperty("供应商编码")
    @ExcelComment(value = "splrCode",example = "685947")
    @ExcelComment(value = "splrCode", example = "685947")
    private String splrCode;
    @Excel(name = "供应商名称")
    @ApiModelProperty("供应商名称")
    @ExcelComment(value = "splrName",example = "浙江中扬立库技术有限公司")
    @ExcelComment(value = "splrName", example = "浙江中扬立库技术有限公司")
    private String splrName;
//    @Excel(name = "库存单位")
//    @ApiModelProperty("库存单位")
//    @ExcelComment(value = "stockUnit", example = "个")
//    private String stockUnit;
//    @Excel(name = "采购数量")
//    @ApiModelProperty("采购数量")
//    @ExcelComment(value = "purQty", example = "0")
//    private String purQty;
//
//    @Excel(name = "采购单位")
//    @ApiModelProperty("采购单位")
//    @ExcelComment(value = "purUnit", example = "个")
//    private String purUnit;
//    @Excel(name = "已完成数量")
//    @ApiModelProperty("已完成数量")
//    @ExcelComment(value = "qty", example = "0")
//    private String qty;
    @Excel(name = "供应商批次")
    @ApiModelProperty("供应商批次")
    @ExcelComment(value = "splrBatch",example = "25251212")
    @ExcelComment(value = "splrBatch", example = "25251212")
    private String splrBatch;
    @Excel(name = "*数量")
    @ApiModelProperty("*数量")
    @ExcelComment(value = "anfme", example = "75")
    private String anfme;
//    @Excel(name = "二维码")
//    @ApiModelProperty("二维码")
//    @ExcelComment(value = "qrcode",example = "")
//    private String qrcode;
    @Excel(name = "条形码")
    @ApiModelProperty("条形码")
    @ExcelComment(value = "barcode",example = "")
    private String barcode;
    //    @Excel(name = "条形码")
//    @ApiModelProperty("条形码")
//    @ExcelComment(value = "barcode", example = "")
//    private String barcode;
//
//    @Excel(name = "跟踪码")
//    @ApiModelProperty("跟踪码")
//    @ExcelComment(value = "trackCode", example = "")
//    private String trackCode;
    @Excel(name = "物流单号")
    @ApiModelProperty("物流单号")
    @ExcelComment(value = "logicNo", example = "SF100064851")
    private String logicNo;
    @Excel(name = "跟踪码")
    @ApiModelProperty("跟踪码")
    @ExcelComment(value = "trackCode",example = "")
    private String trackCode;
    @Excel(name = "预计送达时间")
    @ApiModelProperty("预计送达时间")
    @ExcelComment(value = "arrTime", example = "2025-05-21")
    private String arrTime;
    @Excel(name = "包装名称")
    @ApiModelProperty("包装名称")
    @ExcelComment(value = "packName",example = "箱")
    private String packName;
//    @Excel(name = "包装名称")
//    @ApiModelProperty("包装名称")
//    @ExcelComment(value = "packName", example = "箱")
//    private String packName;
    @Excel(name = "备注")
    @ApiModelProperty("备注")
    @ExcelComment(value = "memo",example = "注:易碎品,轻拿放")
    @ExcelComment(value = "memo", example = "注:易碎品,轻拿放")
    private String memo;
}
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/excel/PurchaseTemplate.java
@@ -16,10 +16,15 @@
    private static final long serialVersionUID = 1L;
    @Excel(name = "PO单号")
    @ApiModelProperty(value= "PO单号")
    @Excel(name = "*PO单号")
    @ApiModelProperty(value= "*PO单号")
    @ExcelComment(value = "poCode", example = "PO25413975")
    private String poCode;
    @Excel(name = "*行号")
    @ApiModelProperty(value= "*行号")
    @ExcelComment(value = "platItemId", example = "100068541001")
    private String platItemId;
    @Excel(name = "单据类型")
@@ -27,17 +32,11 @@
    @ExcelComment(value = "type", example = "采购入库单")
    private String type;
    @Excel(name = "来源平台")
    @ApiModelProperty(value= "来源平台")
    @ExcelComment(value = "source", example = "ERP")
    private String source;
    @Excel(name = "业务类型")
    @ApiModelProperty(value= "业务类型")
    @ExcelComment(value = "wkType", example = "外购收货")
    private String wkType;
    @Excel(name = "项目名称")
    @ApiModelProperty(value= "项目名称")
@@ -45,16 +44,17 @@
    private String project;
    @Excel(name = "行号")
    @ApiModelProperty(value= "行号")
    @ExcelComment(value = "platItemId", example = "100068541001")
    private String platItemId;
//    @Excel(name = "来源平台")
//    @ApiModelProperty(value= "来源平台")
//    @ExcelComment(value = "source", example = "ERP")
//    private String source;
    /**
     * 物料编码
     */
    @Excel(name = "物料编码")
    @ApiModelProperty(value= "物料编码")
    @Excel(name = "*物料编码")
    @ApiModelProperty(value= "*物料编码")
    @ExcelComment(value = "matnrCode", example = "101000000002")
    private String matnrCode;
@@ -66,13 +66,13 @@
    @ExcelComment(value = "matnrName", example = "TC-03128寸连体内上托")
    private String matnrName;
    /**
     * 单位
     */
    @Excel(name = "单位")
    @ApiModelProperty(value= "单位")
    @ExcelComment(value = "unit", example = "个")
    private String unit;
//    /**
//     * 单位
//     */
//    @Excel(name = "单位")
//    @ApiModelProperty(value= "单位")
//    @ExcelComment(value = "unit", example = "个")
//    private String unit;
    /**
     * 数量
@@ -82,29 +82,38 @@
    @ExcelComment(value = "anfme", example = "75")
    private Double anfme;
    /**
     * 已收数量
     */
    @Excel(name = "已完成量")
    @ApiModelProperty(value= "已完成量")
    @ExcelComment(value = "qty", example = "0")
    private Double qty;
//    /**
//     * 已收数量
//     */
//    @Excel(name = "已完成量")
//    @ApiModelProperty(value= "已完成量")
//    @ExcelComment(value = "qty", example = "0")
//    private Double qty;
//    /**
//     * 标准包装
//     */
//    @Excel(name = "标准包装")
//    @ApiModelProperty(value= "标准包装")
//    @ExcelComment(value = "nromQty", example = "1")
//    private Double nromQty;
//    /**
//     * 条码打印数量
//     */
//    @Excel(name = "条码打印数量")
//    @ApiModelProperty(value= "条码打印数量")
//    @ExcelComment(value = "printQty", example = "0")
//    private Double printQty;
    /**
     * 标准包装
     * 供应商编码
     */
    @Excel(name = "标准包装")
    @ApiModelProperty(value= "标准包装")
    @ExcelComment(value = "nromQty", example = "1")
    private Double nromQty;
    @Excel(name = "*供应商编码")
    @ApiModelProperty(value= "*供应商编码")
    @ExcelComment(value = "splrCode", example = "685947")
    private String splrCode;
    /**
     * 条码打印数量
     */
    @Excel(name = "条码打印数量")
    @ApiModelProperty(value= "条码打印数量")
    @ExcelComment(value = "printQty", example = "0")
    private Double printQty;
    /**
     * 供应商名称
@@ -115,14 +124,6 @@
    private String splrName;
    /**
     * 供应商编码
     */
    @Excel(name = "供应商编码")
    @ApiModelProperty(value= "供应商编码")
    @ExcelComment(value = "splrCode", example = "685947")
    private String splrCode;
    /**
     * 供应商批次
     */
    @Excel(name = "供应商批次")
@@ -130,6 +131,15 @@
    @ExcelComment(value = "splrBatch", example = "20250401")
    private String splrBatch;
    @Excel(name = "预计送达时间")
    @ApiModelProperty("预计送达时间")
    @ExcelComment(value = "arrTime", example = "2025-05-21")
    private String arrTime;
    @Excel(name = "备注")
    @ApiModelProperty("备注")
    @ExcelComment(value = "memo", example = "注:易碎品,轻拿放")
    private String memo;
}
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderSourceType.java
New file
@@ -0,0 +1,25 @@
package com.vincent.rsf.server.manager.enums;
/**
 * @author Ryan
 * @date 2025/5/7
 * @description: 单据来源
 * @version 1.0
 */
public enum OrderSourceType {
    ORDER_SOURCE_TYPE_ERP("1", "ERP系统"),
    ORDER_SOURCE_TYPE_SYSTEM("2", "WMS系统生成"),
    ORDER_SOURCE_TYPE_EXCEL("3", "EXCEL导入"),
    ORDER_SOURCE_TYPE_QMS("4", "QMS系统"),
    ;
    OrderSourceType(String val, String desc) {
        this.val = Short.parseShort(val);
        this.desc = desc;
    }
    public Short val;
    public String desc;
}
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderType.java
File was renamed from rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderType.java
@@ -1,4 +1,4 @@
package com.vincent.rsf.server.api.entity.enums;
package com.vincent.rsf.server.manager.enums;
/**
 * @author Ryan
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderWorkType.java
File was renamed from rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/OrderWorkType.java
@@ -1,4 +1,4 @@
package com.vincent.rsf.server.api.entity.enums;
package com.vincent.rsf.server.manager.enums;
/**
 * @author Ryan
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
File was renamed from rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/TaskStsType.java
@@ -1,4 +1,4 @@
package com.vincent.rsf.server.api.entity.enums;
package com.vincent.rsf.server.manager.enums;
public enum TaskStsType {
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskType.java
File was renamed from rsf-server/src/main/java/com/vincent/rsf/server/api/entity/enums/TaskType.java
@@ -1,4 +1,4 @@
package com.vincent.rsf.server.api.entity.enums;
package com.vincent.rsf.server.manager.enums;
/**
 * @author Ryan
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -1,26 +1,18 @@
package com.vincent.rsf.server.manager.schedules;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.TaskStsType;
import com.vincent.rsf.server.manager.enums.TaskStsType;
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.service.*;
import com.vincent.rsf.server.system.constant.SerialRuleCode;
import com.vincent.rsf.server.system.enums.LocStsType;
import com.vincent.rsf.server.system.utils.SerialRuleUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.sql.Array;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/**
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderItemServiceImpl.java
@@ -9,8 +9,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.OrderWorkType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.common.domain.BaseParam;
import com.vincent.rsf.server.common.domain.PageParam;
import com.vincent.rsf.server.common.utils.CommonUtil;
@@ -38,6 +38,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -105,12 +106,17 @@
                throw new CoolException(sbFaild.toString());
            }
            order = new AsnOrder();
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
            Date date = dateFormat.parse(template.getArrTime());
            if (Objects.isNull(date)) {
                throw new CoolException("时间格式错误!!");
            }
            order.setCode(template.getCode())
                    .setPoCode(template.getPoCode())
                    .setMemo(template.getMemo())
                    .setArrTime(date)
                    .setUpdateBy(loginUserId)
                    .setCreateBy(loginUserId)
                    .setPoId(Long.parseLong(template.getPoId()))
                    .setType(OrderType.getTypeVal(template.getType()))
                    .setWkType(OrderWorkType.getWorkType(template.getWkType()));
            if (!asnOrderMapper.save(order)) {
@@ -134,16 +140,14 @@
                        .setSplrBatch(orderTemplate.getSplrBatch())
                        .setPlatItemId(orderTemplate.getPlatItemId())
                        .setAnfme(Double.parseDouble(orderTemplate.getAnfme()))
                        .setQty(Double.parseDouble(orderTemplate.getQty()))
                        .setTrackCode(StringUtils.isBlank(orderTemplate.getTrackCode()) ? trackCode : orderTemplate.getTrackCode())
                        .setBarcode(StringUtils.isBlank(orderTemplate.getBarcode()) ? trackCode : orderTemplate.getBarcode())
                        .setTrackCode(trackCode)
                        .setBarcode(trackCode)
                        .setPoCode(orderTemplate.getPoCode())
                        .setPurUnit(orderTemplate.getPurUnit())
                        .setPurUnit(matnr.getUnit())
                        .setCreateBy(loginUserId)
                        .setUpdateBy(loginUserId)
                        .setSpec(matnr.getSpec())
                        .setModel(matnr.getModel())
                        .setPurQty(Double.parseDouble(orderTemplate.getPurQty()))
                        .setMaktx(matnr.getName())
                        .setMatnrCode(matnr.getCode())
                        .setMatnrId(matnr.getId())
@@ -168,10 +172,10 @@
                }
            }
            if (!items.isEmpty()) {
                double qty = items.stream().mapToDouble(AsnOrderItem::getQty).sum();
//                double qty = items.stream().mapToDouble(AsnOrderItem::getQty).sum();
                double anfme = items.stream().mapToDouble(AsnOrderItem::getAnfme).sum();
                if (!asnOrderMapper.update(new LambdaUpdateWrapper<AsnOrder>()
                        .set(AsnOrder::getQty, qty)
//                        .set(AsnOrder::getQty, qty)
                        .set(AsnOrder::getAnfme, anfme)
                        .eq(AsnOrder::getId, order.getId()))) {
                    throw new CoolException("单据数量修改失败!!");
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockItemServiceImpl.java
@@ -10,8 +10,8 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.OrderWorkType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.common.domain.BaseParam;
import com.vincent.rsf.server.common.domain.PageParam;
import com.vincent.rsf.server.common.utils.CommonUtil;
@@ -119,7 +119,6 @@
                    .setMemo(template.getMemo())
                    .setUpdateBy(loginUserId)
                    .setCreateBy(loginUserId)
                    .setPoId(Long.parseLong(template.getPoId()))
                    .setType(OrderType.getTypeVal(template.getType()))
                    .setWkType(OrderWorkType.getWorkType(template.getWkType()));
            if (!outStockService.save(order)) {
@@ -137,16 +136,11 @@
                        .setAsnCode(order.getCode())
                        .setSplrBatch(orderTemplate.getSplrBatch())
                        .setAnfme(Double.parseDouble(orderTemplate.getAnfme()))
                        .setQty(Double.parseDouble(orderTemplate.getQty()))
                        .setSplrName(orderTemplate.getSplrName())
                        .setBarcode(orderTemplate.getBarcode())
                        .setTrackCode(orderTemplate.getTrackCode())
                        .setSplrCode(orderTemplate.getSplrCode())
                        .setPoCode(orderTemplate.getPoCode())
                        .setMaktx(orderTemplate.getMaktx())
                        .setMatnrCode(orderTemplate.getMatnrCode())
                        .setPurUnit(orderTemplate.getPurUnit())
                        .setPurQty(Double.parseDouble(orderTemplate.getPurQty()));
                        .setMatnrCode(orderTemplate.getMatnrCode());
                if (!Objects.isNull(matnr)) {
                    orderItem.setMaktx(matnr.getName()).setMatnrCode(matnr.getCode()).setMatnrId(matnr.getId());
                }
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
@@ -6,7 +6,7 @@
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.controller.params.AsnOrderAndItemsParams;
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.enums.AsnExceStatus;
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/PurchaseItemServiceImpl.java
@@ -5,13 +5,13 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.OrderWorkType;
import com.vincent.rsf.server.manager.enums.OrderSourceType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.common.utils.ExcelUtil;
import com.vincent.rsf.server.manager.entity.Companys;
import com.vincent.rsf.server.manager.entity.Matnr;
import com.vincent.rsf.server.manager.entity.Purchase;
import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate;
import com.vincent.rsf.server.manager.entity.excel.PurchaseTemplate;
import com.vincent.rsf.server.manager.enums.CompanysType;
import com.vincent.rsf.server.manager.mapper.PurchaseItemMapper;
@@ -30,7 +30,6 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
@@ -81,7 +80,7 @@
            }
            purchase.setType(OrderType.getTypeVal(template.getType()))
                    .setWkType(OrderWorkType.getWorkType(template.getWkType()))
                    .setSource(template.getSource())
                    .setSource(OrderSourceType.ORDER_SOURCE_TYPE_EXCEL.desc)
                    .setCreateBy(loginUserId)
                    .setUpdateBy(loginUserId);
            if (!purchaseService.save(purchase)) {
@@ -101,13 +100,11 @@
                        .setMatnrCode(matnr.getCode())
                        .setPlatItemId(template.getPlatItemId())
                        .setAnfme(template.getAnfme())
                        .setQty(template.getQty())
                        .setPurchaseId(purchase.getId())
                        .setNromQty(matnr.getNromNum())
                        .setSplrBatch(template.getSplrBatch())
                        .setCreateBy(loginUserId)
                        .setUpdateBy(loginUserId)
                        .setUnit(template.getUnit());
                        .setUpdateBy(loginUserId);
                if (StringUtils.isNotBlank(purchaseTemplate.getSplrCode())) {
                    Companys companys = companysService.getOne(new LambdaQueryWrapper<Companys>()
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -3,11 +3,11 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.server.api.entity.enums.OrderType;
import com.vincent.rsf.server.api.entity.enums.TaskStsType;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.TaskStsType;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.TaskType;
import com.vincent.rsf.server.manager.enums.TaskType;
import com.vincent.rsf.server.api.utils.LocUtils;
import com.vincent.rsf.server.manager.controller.params.GenerateTaskParams;
import com.vincent.rsf.server.manager.entity.*;
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
@@ -1,14 +1,13 @@
package com.vincent.rsf.server.manager.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.TaskStsType;
import com.vincent.rsf.server.api.entity.enums.TaskType;
import com.vincent.rsf.server.manager.enums.TaskStsType;
import com.vincent.rsf.server.manager.enums.TaskType;
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.enums.AsnExceStatus;
import com.vincent.rsf.server.manager.enums.WaveExceStatus;