Shopee WES客户化设计 文档编号: Shopee_011 文档内容: AGV分拣出库 版本: 1.0 项目经理: 客户经理: 确认人: 确认日期: 修改历史: 作者 时间 版本 备注 张庆辉 2026-05-15 1.0 方案初版 业务流程 主流程 流程名称 描述 应用场景 设备类型 业务描述 修改范围 UI增加AGV分拣出库 前提条件 N/A 新增表/字段 AGV分拣首选项 agv_preference 字段名 含义 类型 长度 非空 默认值 id 内部号 bigint Y code 编码 varchar 50 Y name 名称 varchar 50 N warehouseCode 仓库 varchar 50 Y initDocType 分拣方式 varchar 500 Y 固定下拉框选择(批量和按单两种) allUsers 所有用户 int N 0 useAsDefault 是否默认 int N 0 参数设置 参数 取值范围 模块 描述 功能设计 UI 一.新增AGV分拣首选项界面 界面可以参考包装复合首选项,可以按照人员设置对应权限。 新增UI界面AGV分拣 打开界面,选择对应的工作站进行登录; 扫描工作站后,需要检测当前工作站是否在wcs_work_station表存在。 进入管理界面; A点击开始按钮,弹框选择出库单类型。弹框显示的内容为出库单类型,点击单选 选择后判断工作台的模式currentJobMode=0或者2,则提示成功,并将currentJobMode更新为2; 将选择的出库单类型更新到当前工作台表的tasktype字段。 若此工作台的currentJobMode!=0或者2,则提示“此工作台正在进行其他工作,不允许开始”; B点击退出,若此工作台的currentJobMode=2,则提示成功,并将currentJobMode更新为0; 点击暂停,将接单状态acceptStatus更新为0;图表显示为继续 点击继续,将接单状态acceptStatus更新为1;图表显示为暂停 绑箱:点击绑箱,弹框显示 货架号:XXXXXXX 周转箱号:XXXXXXX 扫描货架号,判断必须在wcs_sorting_wall存在,若不存在,则报错 另外wcs_sorting_wall的LPN必须为空为NULL ,否则报错,提醒“当前货架已存在周转箱” 扫描周转箱后调用上游WMS的周转箱检查接口,WMS返回成功可用,才可以绑定。将周转箱号更新到wcs_sorting_wall表的LPN。 若返回不可用,则提示“当前周转箱不可用” 满箱 点击满箱,弹框显示 货架号:XXXXXXX 周转箱号:XXXXXXX 扫描货架号,判断必须在wcs_sorting_wall存在,若不存在,则报错 另外wcs_sorting_wall的LPN必须为有值,否则报错,提醒“当前货架无箱” 扫描周转箱后调用上游WMS的周转箱检查接口,WMS返回成功可用,才可以绑定。将周转箱号更新到wcs_sorting_wall表的LPN。 若返回不可用,则提示“当前周转箱不可用” G.封箱:点击封箱,弹框显示 货架号:XXXXXXX 扫描货架号,判断必须在wcs_sorting_wall存在,若不存在,则报错 另外wcs_sorting_wall的sy_status必须=6,任务完成状态。将当前格口Task_ID,lpn清空,sy_status更新=0,还需下发当前格口灭灯指令。(之前下发过亮绿灯指令) G:封箱后面增加缺料按钮 点击按钮,弹框进行二次确认,则当前周转箱货品+批次的订单需要重新分配。 继续判断当前周转箱是否有其他货品需要分拣,若有则显示下一个货品的分拣信息(注意批量和按单) 若当前周转箱无其他货品需要分拣,则下发周转箱回库调度指令 同时也生产缺料的盘点单,盘点类型=缺料。盘点单的具体字段见盘点客户化文档 波次任务分配 详情见专属客户化文档 3.波次任务分配到分拣墙(计划任务) A.系统用计划任务检测到工作台表存在的currentJobMode=2,acceptStatus=1,status=1的工作台,可能会多个工作台,需要轮询。先找到找到电子标签货架表wcs_sorting_wall,此工作台对应的的货位workStationCode=当前工作台。判断此工作台Task_ID是否有为NULL的货位,若有货位的Task_ID有值,则不下发任务。若存在Task_ID为空或为NULL的货位,则找到符合下面条件的任务。 b.波次任务条件:出库单仓库=当前仓库,拣货任务头已释放,任务从货位区域=AGV区域,任务头状态为100,任务头的自定义2字段为空或为null,任务头的自定义1字段(出库任务类型)在电子标签货架表wcs_sorting_wal的cktype类型里包含。(分拣墙的波次任务类型维护多个),而且任务表头的上游波次号自定义4关联上游波次号段表(波次分配客户化确定),上游波次号段表的是否已分配字段自定义1为空为null。 将任务分配到电子标签货架表wcs_sorting_wal上,将任务表头的上游波次号自定义4更新到Task_ID字段,sy_status更新=2。任务头自定义2更新为当前时间,自定义3更新为电子标签货架货位号。也将上游波次号段表的是否已分配字段自定义1更新=1. D、继续执行下一个工作台分配 4.下发AGV任务(计划任务) a.(找出库的工作台)工作台表存在的currentJobMode=2,acceptStatus=1,status=1的工作台,可能会多个工作台,需要轮询。工作台对应的分拣墙已经存在执行的任务(Sorting_location表的Task_ID有值,sy_status=2), b. (查询当前为完成的周转箱数量)查询自动化调度表wcs_dispatch_task的状态processStatus是未完成,工作台workStationCode等于当前工作台的数量Y。 判断Y是否小于当前工作台workStationCode表ZDagv维护的数量,若小于则继续执行。若大于,则跳过当前工作台,执行下个工作台。 C.若小于,则找分拣墙的Task_ID(任务表头的上游波次号自定义4)下的拣货任务的从区域=agv库区,拣货任务头是已释放,拣货明细的从LPN关联周转箱表wcs_container,周转箱表的onHandStatus状态=“10”)的分拣墙分配的拣货任务明细,并按照货品进行排序,找到的周转箱数量最多是workStationCode表ZDagv维护的数量。 D.根据周转箱,下发AGV任务,每个周转箱是一个报文。 下发到wcs_dispatch_task调度表。 5.AGV搬运任务完成 接口收到AGV完成的搬运回传指令,WMS将调度表的任务完成。 6.扫描周转箱分拣 a电脑扫描枪扫描已经到达工作台的周转箱号,根据周转箱找到分拣墙 下任务对应的此周转箱status=100的任务明细,若不存在,则提示“无此周转箱任务”, b若存在,则电脑分拣界面选择的首选项来判断显示。若首选项initDocType类型是批量。 则显示此周转箱第一个货品+批次+库存状态的找到所有分拣墙格口的任务分拣信息。(按照每个货品所有格口任务进行分拣。) 若initDocType类型是按单,则显示此周转箱第一个货品+批次+库存状态的找到第一个分拣格口任务的分拣信息。(按照每个货品单个格口任务进行分拣。) D.显示内容:左边是当前周转箱的信息,需要根据周转箱表的格口数进行动态显示,格口数存在1,2,4,6,8.当前周转箱分拣货位所在货位格口需要放大蓝色显示。 中间显示的是当前分拣的数量,下面是货品的图片,货品名称,货品sku编码(UPC), 若 左边显示的分拣墙的示意图,每个工作台有2组货架,1组是4层*5=20个货架,2组是3层*5=15个货架,共35个货架。显示的内容是工作台wcs_sorting_wall表groupIndex的。若分拣墙货位所在格口需要放大蓝色显示,下面显示对应格口的分拣数量。 扫描货品 扫描周转箱,显示第一个货品的分拣信息。然后扫描货品SKU编码,盘点当前周转箱货品SKU+批次库存是否冻结,若冻结则弹框提醒”当前货品批次已冻结,需要重新分配”。 若点击了确认,则当前周转箱货品+批次的订单需要重新分配。 继续判断当前周转箱是否有其他货品需要分拣,若有则显示下一个货品的分拣信息(注意批量和按单) 若当前周转箱无其他货品需要分拣,则下发周转箱回库调度指令。 下发电子标签指令 扫描周转箱,显示第一个货品的分拣信息。然后扫描货品SKU编码,当前货品没用冻结。还需判断分拣货架表在wcs_sorting_wall表LPN必须都有值。若无值,则提醒“需要绑定订单箱” 若都有值则下发当前周转箱SKU对应分拣墙的电子标签亮红灯。 电子标签 id维护在wcs_sorting_wall表的lamp字段。下发成功后将周转箱,货品,批次更新到wcs_sorting_wall表当前货架的fj_lpn,fj_sku,fj_batch字段。并且wcs_sorting_wall表的sy_status更新=4 G.若货品管控序列号则,扫描SKU后弹框扫描采集序列号。 任务确认 (可参考国电南瑞项目,汤星明技术经理)UI分拣界面需要监测到电子标签拍灯接口,若节课报文返回的分拣墙货位wcs_sorting_wall表的sy_status=4,则是任务确认,根据记录的周转箱,货品,批次进行当前任务的确认。任务确认的时候将当前分拣货架wcs_sorting_wall的订单箱LPN更新到任务确认的任务明细自定义1字段。 还要清空当前wcs_sorting_wall货架的fj_lpn,fj_sku,fj_batch字段,sy_status更新=2。 界面刷新,若首选项是批量,则显示周转箱下一个货品+批次的所有任务格口的分拣信息, 若是按单的首选项,则显示这个货品+批次下一个任务格口的分拣信息,若无其他任务,则找其他货品+批次的分拣信息。 若当前周转箱全部货品分拣完成,下发当前周转箱回库。 手工确认 为防止电子标签出问题,则保留人工手工任务确认。 在分拣界面点击右下角的完成指令,是将界面上的周转箱、货品、批次对应的任务格口进行确认。任务确认后,逻辑同上。 订单分拣完成 任务确认的时候,判断wcs_sorting_wall分拣墙格口的任务是否完成,若整个任务分拣完成,则下发当前格口电子标签绿灯。sy_status更新=6. UI分拣界面需要监测到电子标签拍灯接口,若节课报文返回的分拣墙货位wcs_sorting_wall表的sy_status=6,则的封箱。将当前格口Task_ID,lpn清空,sy_status更新=0