You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1043 lines
44 KiB

feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
feat(check): 增加立库盘点功能及相关字段支持 - 在CountLabelData实体中增加locationZ字段,记录所在层数 - 在CountLabelInfo实体中增加locationZ和locationCode字段,用于记录立库层数和位置编码 - 在CountPallet实体中增加locationZ和taskNo字段,支持记录立库层数及推送任务号 - 在CountPalletData实体中增加sourceType、sourceBillNo、itemNo和createdBy字段,用于WMS任务推送 - 修改CountResult实体主键,增加pallet_id以应对异常情况 - 新增CountRfidLongMenPallet类,用于托盘过龙门RFID检测回传数据 - 在PhysicalInventoryController中新增多个接口: - getCurrentActiveCount:获取当前活动盘点单 - pushCountToWcs:推送盘点单到WCS - continuePushCount:继续推送后续栈板到WCS - searchOrderTaskByCountNo:查询关联任务单列表 - searchOrderTaskDetail:查询任务单明细 - hasUncompletedTask:检查是否存在未完成任务 - createReviewTask:创建复核任务单 - 在PhysicalInventoryMapper中新增大量方法支持新功能: - checkActiveCountExists:检查活动盘点单是否存在 - getCurrentActiveCount:获取当前活动盘点单详情 - batchInsertCountResult:批量插入盘点结果 - getCountLabelsByPallet:根据栈板查询标签列表 - updateCountLabelFlagByPallet:批量更新标签状态 - updateCountPalletFlag:更新栈板盘点状态 - getPalletDetailByPalletId:查询栈板详情标签数据 - getCountNoByTask:通过任务号查询盘点单号 - deleteCountResultByPallet:删除指定栈板盘点结果 - updateTaskDetailStatusByPallet:更新任务明细状态 - updateTaskStatusCompleted:更新任务主表状态 - searchOrderTaskByCountNo:查询任务单主表列表 - searchOrderTaskDetail:查询任务单明细列表 - countUncompletedTask:检查未完成任务数量 - countUncheckedPallet:统计未盘点栈板数量 - batchUpdateHandlingUnitCountFlagByCountNo:批量更新handling_unit盘点标志 - countLabelsByLayer:按立库层数统计标签分布 - queryLabelsByLayer:按层查询未盘点标签 - queryUnpushedPallets:查询未推送栈板列表 - updatePalletPushStatus:更新栈板推送状态 - getCountType:查询盘点单类型 - 在PhysicalInventoryMapper.xml中增加相应SQL实现上述功能 - 优化现有查询逻辑,加入location_z和location_code字段支持 - 增加对WMS任务系统集成的支持,包括任务创建、状态更新等操作 - 增强盘点数据完整性校验和异常处理机制
4 weeks ago
3 weeks ago
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.gaotao.modules.check.mapper.PhysicalInventoryMapper">
  4. <!-- rqrq - 查询盘点主表列表(分页)-->
  5. <select id="searchCountHeaderList" resultType="CountHeaderData">
  6. SELECT
  7. h.id,
  8. h.site,
  9. h.count_no AS countNo,
  10. h.count_type AS countType,
  11. h.status,
  12. h.count_percent AS countPercent,
  13. h.apply_user AS applyUser,
  14. h.apply_date AS applyDate,
  15. h.release_user AS releaseUser,
  16. h.release_date AS releaseDate,
  17. h.complete_user AS completeUser,
  18. h.complete_date AS completeDate,
  19. h.remark,
  20. h.created_by AS createdBy,
  21. h.created_date AS createdDate,
  22. h.modified_by AS modifiedBy,
  23. h.modified_date AS modifiedDate,
  24. CASE h.count_type
  25. WHEN 'CYCLE' THEN '循环盘点'
  26. WHEN 'MANUAL' THEN '手工盘点'
  27. ELSE h.count_type
  28. END AS countTypeDesc,
  29. CASE h.status
  30. WHEN 'DRAFT' THEN '草稿'
  31. WHEN 'RELEASED' THEN '已下达'
  32. WHEN 'CHECKING' THEN '盘点中'
  33. WHEN 'APPROVED' THEN '已审批'
  34. WHEN 'COMPLETED' THEN '已完成'
  35. WHEN 'CANCELLED' THEN '已取消'
  36. ELSE h.status
  37. END AS statusDesc,
  38. (SELECT COUNT(1) FROM count_label WHERE site = h.site AND count_no = h.count_no) AS totalLabelCount,
  39. (SELECT COUNT(1) FROM count_label WHERE site = h.site AND count_no = h.count_no AND count_flag = 'Y') AS checkedLabelCount,
  40. (SELECT COUNT(1) FROM count_pallet WHERE site = h.site AND count_no = h.count_no) AS totalPalletCount,
  41. (SELECT COUNT(1) FROM count_pallet WHERE site = h.site AND count_no = h.count_no AND count_flag = 'Y') AS checkedPalletCount
  42. FROM count_header h
  43. WHERE h.site = #{query.site}
  44. <if test="query.searchCountNo != null and query.searchCountNo != ''">
  45. AND h.count_no LIKE '%' + #{query.searchCountNo} + '%'
  46. </if>
  47. <if test="query.searchCountType != null and query.searchCountType != ''">
  48. AND h.count_type = #{query.searchCountType}
  49. </if>
  50. <if test="query.searchStatus != null and query.searchStatus != ''">
  51. AND h.status = #{query.searchStatus}
  52. </if>
  53. <if test="query.startDate != null">
  54. AND h.apply_date &gt;= #{query.startDate}
  55. </if>
  56. <if test="query.endDate != null">
  57. AND h.apply_date &lt;= DATEADD(day, 1, #{query.endDate})
  58. </if>
  59. ORDER BY h.created_date DESC
  60. </select>
  61. <!-- rqrq - 根据site和countNo查询盘点主表 -->
  62. <select id="getCountHeaderByNo" resultType="CountHeaderData">
  63. SELECT
  64. h.id,
  65. h.site,
  66. h.count_no AS countNo,
  67. h.count_type AS countType,
  68. h.status,
  69. h.count_percent AS countPercent,
  70. h.apply_user AS applyUser,
  71. h.apply_date AS applyDate,
  72. h.release_user AS releaseUser,
  73. h.release_date AS releaseDate,
  74. h.complete_user AS completeUser,
  75. h.complete_date AS completeDate,
  76. h.remark,
  77. h.created_by AS createdBy,
  78. h.created_date AS createdDate,
  79. (SELECT COUNT(1) FROM count_label WHERE site = h.site AND count_no = h.count_no) AS totalLabelCount,
  80. (SELECT COUNT(1) FROM count_label WHERE site = h.site AND count_no = h.count_no AND count_flag = 'Y') AS checkedLabelCount,
  81. (SELECT COUNT(1) FROM count_pallet WHERE site = h.site AND count_no = h.count_no) AS totalPalletCount,
  82. (SELECT COUNT(1) FROM count_pallet WHERE site = h.site AND count_no = h.count_no AND count_flag = 'Y') AS checkedPalletCount
  83. FROM count_header h
  84. WHERE h.site = #{site} AND h.count_no = #{countNo}
  85. </select>
  86. <!-- rqrq - 检查是否存在活动状态的盘点单(草稿、已下达、盘点中) -->
  87. <select id="checkActiveCountExists" resultType="CountHeaderData">
  88. SELECT TOP 1
  89. h.site,
  90. h.count_no AS countNo,
  91. h.count_type AS countType,
  92. h.status,
  93. CASE h.status WHEN 'DRAFT' THEN '草稿' WHEN 'RELEASED' THEN '已下达' WHEN 'CHECKING' THEN '盘点中' WHEN 'APPROVED' THEN '已审批' ELSE h.status END AS statusDesc
  94. FROM count_header h
  95. WHERE h.site = #{site} AND h.status IN ('DRAFT', 'RELEASED', 'CHECKING', 'APPROVED')
  96. ORDER BY h.created_date DESC
  97. </select>
  98. <!-- rqrq - 获取当前活动的盘点单(草稿、已下达、盘点中) -->
  99. <select id="getCurrentActiveCount" resultType="CountHeaderData">
  100. SELECT
  101. h.id,
  102. h.site,
  103. h.count_no AS countNo,
  104. h.count_type AS countType,
  105. h.status,
  106. h.count_percent AS countPercent,
  107. h.apply_user AS applyUser,
  108. h.apply_date AS applyDate,
  109. h.release_user AS releaseUser,
  110. h.release_date AS releaseDate,
  111. h.complete_user AS completeUser,
  112. h.complete_date AS completeDate,
  113. h.remark,
  114. h.created_by AS createdBy,
  115. h.created_date AS createdDate,
  116. CASE h.count_type WHEN 'CYCLE' THEN '循环盘点' WHEN 'MANUAL' THEN '手工盘点' ELSE h.count_type END AS countTypeDesc,
  117. CASE h.status WHEN 'DRAFT' THEN '草稿' WHEN 'RELEASED' THEN '已下达' WHEN 'CHECKING' THEN '盘点中' WHEN 'APPROVED' THEN '已审批' WHEN 'COMPLETED' THEN '已完成' WHEN 'CANCELLED' THEN '已取消' ELSE h.status END AS statusDesc,
  118. (SELECT COUNT(1) FROM count_label WHERE site = h.site AND count_no = h.count_no) AS totalLabelCount,
  119. (SELECT COUNT(1) FROM count_label WHERE site = h.site AND count_no = h.count_no AND count_flag = 'Y') AS checkedLabelCount,
  120. (SELECT COUNT(1) FROM count_pallet WHERE site = h.site AND count_no = h.count_no) AS totalPalletCount,
  121. (SELECT COUNT(1) FROM count_pallet WHERE site = h.site AND count_no = h.count_no AND count_flag = 'Y') AS checkedPalletCount
  122. FROM count_header h
  123. WHERE h.site = #{site} AND h.status IN ('DRAFT', 'RELEASED', 'CHECKING','APPROVED')
  124. ORDER BY h.created_date DESC
  125. </select>
  126. <!-- rqrq - 生成盘点单号 -->
  127. <select id="generateCountNo" resultType="String">
  128. SELECT #{prefix} + RIGHT('0000' + CAST(ISNULL(MAX(CAST(RIGHT(count_no, 4) AS INT)), 0) + 1 AS VARCHAR), 4)
  129. FROM count_header
  130. WHERE site = #{site} AND count_no LIKE #{prefix} + '%'
  131. </select>
  132. <!-- rqrq - 查询盘点标签明细列表 -->
  133. <select id="searchCountLabelList" resultType="CountLabelData">
  134. SELECT
  135. l.id,
  136. l.site,
  137. l.count_no AS countNo,
  138. l.unit_id AS unitId,
  139. l.part_no AS partNo,
  140. l.qty,
  141. l.batch_no AS batchNo,
  142. l.location_id AS locationId,
  143. l.warehouse_id AS warehouseId,
  144. l.wdr,
  145. l.pallet_id AS palletId,
  146. l.label_type AS labelType,
  147. l.count_flag AS countFlag,
  148. l.count_date AS countDate,
  149. l.count_user AS countUser,
  150. l.created_by AS createdBy,
  151. l.created_date AS createdDate,
  152. h.part_desc AS partDesc,
  153. w.WareHouseName AS warehouseName,
  154. loc.LocationName AS locationName,
  155. s.station_area AS stationArea,
  156. s.station_id AS stationId,
  157. ISNULL(s.location_z, 1) AS locationZ,
  158. pd.position,
  159. pd.layer,
  160. h.height,
  161. h.receive_date AS receiveDate,
  162. h.last_count_date AS lastCountDate,
  163. CASE l.label_type
  164. WHEN 'ASSIGNED' THEN '指定物料'
  165. WHEN 'EXTRA' THEN '同托盘关联'
  166. ELSE l.label_type
  167. END AS labelTypeDesc,
  168. CASE l.count_flag
  169. WHEN 'Y' THEN '已盘点'
  170. WHEN 'N' THEN '未盘点'
  171. ELSE l.count_flag
  172. END AS countFlagDesc
  173. FROM count_label l
  174. LEFT JOIN handling_unit h ON l.unit_id = h.unit_id AND l.site = h.site
  175. LEFT JOIN warehouse w ON l.warehouse_id = w.WareHouseID AND l.site = w.Site
  176. LEFT JOIN location loc ON l.location_id = loc.LocationID AND l.site = loc.Site
  177. LEFT JOIN pallet_detail pd ON l.unit_id = pd.serial_no AND l.site = pd.site
  178. LEFT JOIN pallet p ON pd.pallet_id = p.pallet_id AND pd.site = p.site
  179. LEFT JOIN agv_station s ON p.location_code = s.station_code
  180. WHERE l.site = #{query.site} AND l.count_no = #{query.countNo}
  181. <if test="query.searchPalletId != null and query.searchPalletId != ''">
  182. AND l.pallet_id LIKE '%' + #{query.searchPalletId} + '%'
  183. </if>
  184. <if test="query.searchPartNo != null and query.searchPartNo != ''">
  185. AND l.part_no LIKE '%' + #{query.searchPartNo} + '%'
  186. </if>
  187. <if test="query.searchCountFlag != null and query.searchCountFlag != ''">
  188. AND l.count_flag = #{query.searchCountFlag}
  189. </if>
  190. ORDER BY l.pallet_id, l.unit_id
  191. </select>
  192. <!-- rqrq - 批量插入盘点标签 -->
  193. <insert id="batchInsertCountLabel">
  194. INSERT INTO count_label (site, count_no, unit_id, part_no, qty, batch_no, location_id, warehouse_id, wdr, pallet_id, label_type, count_flag, created_by, created_date)
  195. VALUES
  196. <foreach collection="list" item="item" separator=",">
  197. (#{item.site}, #{item.countNo}, #{item.unitId}, #{item.partNo}, #{item.qty}, #{item.batchNo},
  198. #{item.locationId}, #{item.warehouseId}, #{item.wdr}, #{item.palletId}, #{item.labelType},
  199. #{item.countFlag}, #{item.createdBy}, GETDATE())
  200. </foreach>
  201. </insert>
  202. <!-- rqrq - 更新标签盘点状态 -->
  203. <update id="updateCountLabelFlag">
  204. UPDATE count_label
  205. SET count_flag = #{countFlag},
  206. count_date = GETDATE(),
  207. count_user = #{countUser}
  208. WHERE site = #{site} AND count_no = #{countNo} AND unit_id = #{unitId}
  209. </update>
  210. <!-- rqrq - 查询盘点栈板明细列表 -->
  211. <select id="searchCountPalletList" resultType="CountPalletData">
  212. SELECT
  213. pp.id,
  214. pp.site,
  215. pp.count_no AS countNo,
  216. pp.seq_no AS seqNo,
  217. pp.pallet_id AS palletId,
  218. pp.count_flag AS countFlag,
  219. pp.label_count AS labelCount,
  220. pp.checked_count AS checkedCount,
  221. pp.count_date AS countDate,
  222. pp.count_user AS countUser,
  223. pp.created_by AS createdBy,
  224. pp.created_date AS createdDate,
  225. pp.location_z AS locationZ,
  226. p.location_code AS locationCode,
  227. s.station_code AS stationCode,
  228. s.station_area AS stationArea,
  229. s.station_id AS stationId,
  230. CASE
  231. WHEN pp.label_count > 0 THEN CAST(CAST(pp.checked_count AS FLOAT) / pp.label_count * 100 AS VARCHAR) + '%'
  232. ELSE '0%'
  233. END AS progressPercent,
  234. CASE pp.count_flag
  235. WHEN 'Y' THEN '已盘点'
  236. WHEN 'N' THEN '未盘点'
  237. ELSE pp.count_flag
  238. END AS countFlagDesc
  239. FROM count_pallet pp
  240. LEFT JOIN pallet p ON pp.pallet_id = p.pallet_id AND pp.site = p.site
  241. LEFT JOIN agv_station s ON p.location_code = s.station_code
  242. WHERE pp.site = #{query.site} AND pp.count_no = #{query.countNo}
  243. <if test="query.searchPalletId != null and query.searchPalletId != ''">
  244. AND pp.pallet_id LIKE '%' + #{query.searchPalletId} + '%'
  245. </if>
  246. <if test="query.searchCountFlag != null and query.searchCountFlag != ''">
  247. AND pp.count_flag = #{query.searchCountFlag}
  248. </if>
  249. ORDER BY pp.seq_no
  250. </select>
  251. <!-- rqrq - 批量插入盘点栈板 -->
  252. <insert id="batchInsertCountPallet">
  253. INSERT INTO count_pallet (site, count_no, seq_no, pallet_id, count_flag, label_count, checked_count, location_z, created_by, created_date)
  254. VALUES
  255. <foreach collection="list" item="item" separator=",">
  256. (#{item.site}, #{item.countNo}, #{item.seqNo}, #{item.palletId}, #{item.countFlag},
  257. #{item.labelCount}, #{item.checkedCount}, #{item.locationZ}, #{item.createdBy}, GETDATE())
  258. </foreach>
  259. </insert>
  260. <!-- rqrq - 更新栈板已盘点数量 -->
  261. <update id="updateCountPalletCheckedCount">
  262. UPDATE count_pallet
  263. SET checked_count = (SELECT COUNT(1) FROM count_label WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId} AND count_flag = 'Y'),
  264. count_flag = CASE
  265. WHEN (SELECT COUNT(1) FROM count_label WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId} AND count_flag = 'Y') >= label_count THEN 'Y'
  266. ELSE 'N'
  267. END,
  268. count_date = CASE
  269. WHEN (SELECT COUNT(1) FROM count_label WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId} AND count_flag = 'Y') >= label_count THEN GETDATE()
  270. ELSE count_date
  271. END,
  272. count_user = #{countUser}
  273. WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId}
  274. </update>
  275. <!-- rqrq - 检查栈板是否已存在 -->
  276. <select id="checkCountPalletExists" resultType="int">
  277. SELECT COUNT(1) FROM count_pallet WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId}
  278. </select>
  279. <!-- rqrq - 获取当前最大序号 -->
  280. <select id="getMaxSeqNo" resultType="Integer">
  281. SELECT ISNULL(MAX(seq_no), 0) FROM count_pallet WHERE site = #{site} AND count_no = #{countNo}
  282. </select>
  283. <!-- rqrq - 查询盘点结果列表(包含diff_qty、handle_flag、handle_type字段)-->
  284. <select id="searchCountResultList" resultType="CountResultData">
  285. SELECT
  286. r.id,
  287. r.site,
  288. r.count_no AS countNo,
  289. r.unit_id AS unitId,
  290. r.part_no AS partNo,
  291. r.qty,
  292. r.batch_no AS batchNo,
  293. r.location_id AS locationId,
  294. r.warehouse_id AS warehouseId,
  295. r.wdr,
  296. r.pallet_id AS palletId,
  297. r.count_date AS countDate,
  298. r.count_user AS countUser,
  299. r.count_result AS countResult,
  300. r.diff_qty AS diffQty,
  301. r.handle_flag AS handleFlag,
  302. r.handle_type AS handleType,
  303. r.remark,
  304. r.created_by AS createdBy,
  305. r.created_date AS createdDate,
  306. h.part_desc AS partDesc,
  307. w.WareHouseName AS warehouseName,
  308. loc.LocationName AS locationName,
  309. CASE r.count_result
  310. WHEN 'OK' THEN '正常'
  311. WHEN 'MISSING' THEN '缺失'
  312. WHEN 'SURPLUS' THEN '盈余'
  313. WHEN 'QTY_DIFF' THEN '数量差异'
  314. ELSE r.count_result
  315. END AS countResultDesc,
  316. CASE r.handle_flag
  317. WHEN 'Y' THEN '已处理'
  318. WHEN 'N' THEN '未处理'
  319. ELSE '未处理'
  320. END AS handleFlagDesc,
  321. CASE r.handle_type
  322. WHEN 'MANUAL' THEN '人工处理'
  323. WHEN 'SYSTEM' THEN '系统处理'
  324. ELSE ''
  325. END AS handleTypeDesc
  326. FROM count_result r
  327. LEFT JOIN handling_unit h ON r.unit_id = h.unit_id AND r.site = h.site
  328. LEFT JOIN warehouse w ON r.warehouse_id = w.WareHouseID AND r.site = w.Site
  329. LEFT JOIN location loc ON r.location_id = loc.LocationID AND r.site = loc.Site
  330. WHERE r.site = #{query.site} AND r.count_no = #{query.countNo}
  331. <if test="query.searchPalletId != null and query.searchPalletId != ''">
  332. AND r.pallet_id LIKE '%' + #{query.searchPalletId} + '%'
  333. </if>
  334. <if test="query.searchPartNo != null and query.searchPartNo != ''">
  335. AND r.part_no LIKE '%' + #{query.searchPartNo} + '%'
  336. </if>
  337. <if test="query.searchCountResult != null and query.searchCountResult != ''">
  338. AND r.count_result = #{query.searchCountResult}
  339. </if>
  340. ORDER BY r.count_date DESC, r.unit_id
  341. </select>
  342. <!-- rqrq - 插入盘点结果(包含diff_qty、handle_flag、handle_type字段)-->
  343. <insert id="insertCountResult">
  344. INSERT INTO count_result (site, count_no, unit_id, pallet_id, part_no, qty, batch_no, location_id, warehouse_id, wdr, count_date, count_user, count_result, diff_qty, handle_flag, handle_type, remark, created_by, created_date)
  345. VALUES (#{result.site}, #{result.countNo}, #{result.unitId}, #{result.palletId}, #{result.partNo}, #{result.qty}, #{result.batchNo},
  346. #{result.locationId}, #{result.warehouseId}, #{result.wdr},
  347. GETDATE(), #{result.countUser}, #{result.countResult}, #{result.diffQty}, #{result.handleFlag}, #{result.handleType}, #{result.remark}, #{result.createdBy}, GETDATE())
  348. </insert>
  349. <!-- rqrq - 批量插入盘点结果(包含diff_qty、handle_flag、handle_type字段)-->
  350. <insert id="batchInsertCountResult">
  351. INSERT INTO count_result (site, count_no, unit_id, pallet_id, part_no, qty, batch_no, location_id, warehouse_id, wdr, count_date, count_user, count_result, diff_qty, handle_flag, handle_type, remark, created_by, created_date)
  352. VALUES
  353. <foreach collection="list" item="item" separator=",">
  354. (#{item.site}, #{item.countNo}, #{item.unitId}, #{item.palletId}, #{item.partNo}, #{item.qty}, #{item.batchNo},
  355. #{item.locationId}, #{item.warehouseId}, #{item.wdr},
  356. GETDATE(), #{item.countUser}, #{item.countResult}, #{item.diffQty}, #{item.handleFlag}, #{item.handleType}, #{item.remark}, #{item.createdBy}, GETDATE())
  357. </foreach>
  358. </insert>
  359. <!-- rqrq - 根据栈板查询盘点标签列表(用于RFID盘点比对)-->
  360. <select id="getCountLabelsByPallet" resultType="CountLabelData">
  361. SELECT
  362. l.site,
  363. l.count_no AS countNo,
  364. l.unit_id AS unitId,
  365. l.part_no AS partNo,
  366. l.qty,
  367. l.batch_no AS batchNo,
  368. l.location_id AS locationId,
  369. l.warehouse_id AS warehouseId,
  370. l.wdr,
  371. l.pallet_id AS palletId,
  372. l.label_type AS labelType,
  373. l.count_flag AS countFlag
  374. FROM count_label l
  375. WHERE l.site = #{site} AND l.count_no = #{countNo} AND l.pallet_id = #{palletId}
  376. </select>
  377. <!-- rqrq - 根据栈板批量更新盘点标签状态为已盘点 -->
  378. <update id="updateCountLabelFlagByPallet">
  379. UPDATE count_label
  380. SET count_flag = 'Y',
  381. count_date = GETDATE(),
  382. count_user = #{countUser}
  383. WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId}
  384. </update>
  385. <!-- rqrq - 更新盘点栈板为已盘点 -->
  386. <update id="updateCountPalletFlag">
  387. UPDATE count_pallet
  388. SET count_flag = 'Y',
  389. count_date = GETDATE(),
  390. count_user = #{countUser},
  391. checked_count = label_count
  392. WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId}
  393. </update>
  394. <!-- rqrq - 根据标签号列表查询handling_unit信息 -->
  395. <select id="getHandlingUnitsByUnitIdList" resultType="CountLabelData">
  396. SELECT
  397. h.site,
  398. h.unit_id AS unitId,
  399. h.part_no AS partNo,
  400. h.part_desc AS partDesc,
  401. h.qty,
  402. h.batch_no AS batchNo,
  403. h.location_id AS locationId,
  404. h.warehouse_id AS warehouseId,
  405. h.wdr
  406. FROM handling_unit h
  407. WHERE h.site = #{site}
  408. <if test="unitIdList != null and unitIdList.size() > 0">
  409. AND h.unit_id IN
  410. <foreach collection="unitIdList" item="item" open="(" separator="," close=")">
  411. #{item}
  412. </foreach>
  413. </if>
  414. </select>
  415. <!-- rqrq - 根据栈板号查询pallet_detail的标签数据 -->
  416. <select id="getPalletDetailByPalletId" resultType="CountLabelData">
  417. SELECT
  418. pd.site,
  419. h.unit_id AS unitId,
  420. pd.part_no AS partNo,
  421. h.part_desc AS partDesc,
  422. h.qty,
  423. h.batch_no AS batchNo,
  424. h.location_id AS locationId,
  425. h.warehouse_id AS warehouseId,
  426. h.wdr,
  427. pd.pallet_id AS palletId
  428. FROM pallet_detail pd
  429. LEFT JOIN handling_unit h ON pd.site = h.site AND pd.serial_no = h.unit_id
  430. WHERE pd.site = #{site} AND pd.pallet_id = #{palletId}
  431. </select>
  432. <!-- rqrq - 根据task_no和item_no查询盘点单号 -->
  433. <select id="getCountNoByTask" resultType="String">
  434. SELECT TOP 1 cp.count_no
  435. FROM count_pallet cp
  436. WHERE cp.site = #{site} AND cp.task_no = #{taskNo}
  437. ORDER BY cp.created_date DESC
  438. </select>
  439. <!-- rqrq - 根据栈板删除盘点结果(重复调用时先删后插)-->
  440. <delete id="deleteCountResultByPallet">
  441. DELETE FROM count_result
  442. WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId}
  443. </delete>
  444. <!-- rqrq - 查询wms_order_task的状态 -->
  445. <select id="getWmsOrderTaskStatus" resultType="String">
  446. SELECT TOP 1 t.status
  447. FROM wms_order_task t
  448. WHERE t.site = #{site} AND t.task_no = #{taskNo}
  449. </select>
  450. <!-- rqrq - 根据taskNo和palletId更新wms_order_task_detail状态为已完成 -->
  451. <update id="updateTaskDetailStatusByPallet">
  452. UPDATE wms_order_task_detail
  453. SET status = '已完成',
  454. wms_status = '已盘点'
  455. WHERE site = #{site} AND task_no = #{taskNo} AND pallet_id = #{palletId}
  456. </update>
  457. <!-- rqrq - 检查taskNo下所有明细是否都已完成 -->
  458. <select id="checkAllTaskDetailCompletedByTaskNo" resultType="int">
  459. SELECT COUNT(1)
  460. FROM wms_order_task_detail
  461. WHERE site = #{site} AND task_no = #{taskNo} AND status != '已完成'
  462. </select>
  463. <!-- rqrq - 更新wms_order_task主表状态为已完成 -->
  464. <update id="updateTaskStatusCompleted">
  465. UPDATE wms_order_task
  466. SET status = '已完成',
  467. updated_time = GETDATE()
  468. WHERE site = #{site} AND task_no = #{taskNo}
  469. </update>
  470. <!-- rqrq - 根据盘点单号查询关联的任务单主表列表 -->
  471. <select id="searchOrderTaskByCountNo" resultType="com.gaotao.modules.automatedWarehouse.entity.WmsOrderTaskData">
  472. SELECT
  473. t.site,
  474. t.task_no AS taskNo,
  475. t.item_no AS itemNo,
  476. t.source_type AS sourceType,
  477. t.source_bill_no AS sourceBillNo,
  478. t.status,
  479. t.created_by AS createdBy,
  480. t.created_time AS createdTime
  481. FROM wms_order_task t
  482. WHERE t.site = #{site} AND t.source_bill_no = #{countNo}
  483. ORDER BY t.created_time DESC
  484. </select>
  485. <!-- rqrq - 查询任务单明细列表 -->
  486. <select id="searchOrderTaskDetail" resultType="com.gaotao.modules.automatedWarehouse.entity.WmsOrderTaskDetailData">
  487. SELECT
  488. d.site,
  489. d.task_no AS taskNo,
  490. d.item_no AS itemNo,
  491. d.seq_no AS seqNo,
  492. d.pallet_id AS palletId,
  493. d.action_type AS actionType,
  494. d.status,
  495. d.wms_status AS wmsStatus,
  496. d.from_location AS fromLocation,
  497. d.to_location AS toLocation
  498. FROM wms_order_task_detail d
  499. WHERE d.site = #{site} AND d.task_no = #{taskNo}
  500. ORDER BY d.seq_no
  501. </select>
  502. <!-- rqrq - 检查是否存在未完成的任务单 -->
  503. <select id="countUncompletedTask" resultType="int">
  504. SELECT COUNT(1)
  505. FROM wms_order_task t
  506. WHERE t.site = #{site}
  507. AND t.source_bill_no = #{countNo}
  508. AND t.status != '已完成'
  509. </select>
  510. <!-- rqrq - 检查未盘点的栈板数量 -->
  511. <select id="countUncheckedPallet" resultType="int">
  512. SELECT COUNT(1)
  513. FROM count_pallet cp
  514. WHERE cp.site = #{site}
  515. AND cp.count_no = #{countNo}
  516. AND (cp.count_flag IS NULL OR cp.count_flag != 'Y')
  517. </select>
  518. <!-- rqrq - 根据盘点结果批量更新handling_unit的count_flag和last_count_date -->
  519. <update id="batchUpdateHandlingUnitCountFlagByCountNo">
  520. UPDATE handling_unit WITH (ROWLOCK)
  521. SET count_flag = 'Y',
  522. last_count_date = #{countDate}
  523. WHERE site = #{site}
  524. AND unit_id IN (
  525. SELECT cr.unit_id
  526. FROM count_result cr
  527. WHERE cr.site = #{site} AND cr.count_no = #{countNo}
  528. )
  529. </update>
  530. <!-- rqrq - 根据栈板号查询盘点栈板信息(用于PDA手工盘点) -->
  531. <select id="getCountPalletByPalletId" resultType="CountPalletData">
  532. SELECT
  533. cp.site,
  534. cp.count_no AS countNo,
  535. cp.pallet_id AS palletId,
  536. cp.seq_no AS seqNo,
  537. cp.label_count AS labelCount,
  538. cp.checked_count AS checkedCount,
  539. cp.count_flag AS countFlag,
  540. cp.location_z AS locationZ
  541. FROM count_pallet cp
  542. WHERE cp.site = #{site} AND cp.pallet_id = #{palletId}
  543. AND EXISTS (
  544. SELECT 1 FROM count_header ch
  545. WHERE ch.site = cp.site AND ch.count_no = cp.count_no AND ch.status = 'CHECKING'
  546. )
  547. </select>
  548. <!-- rqrq - 根据栈板号查询盘点标签明细列表(用于PDA手工盘点) -->
  549. <select id="getCountLabelsByPalletId" resultType="CountLabelData">
  550. SELECT
  551. cl.site,
  552. cl.count_no AS countNo,
  553. cl.unit_id AS unitId,
  554. cl.part_no AS partNo,
  555. h.part_desc AS partDesc,
  556. cl.qty,
  557. cl.batch_no AS batchNo,
  558. cl.pallet_id AS palletId,
  559. cl.count_flag AS countFlag,
  560. CASE cl.count_flag WHEN 'Y' THEN '已盘点' ELSE '未盘点' END AS countFlagDesc
  561. FROM count_label cl
  562. LEFT JOIN handling_unit h ON h.site = cl.site AND h.unit_id = cl.unit_id
  563. WHERE cl.site = #{site} AND cl.count_no = #{countNo} AND cl.pallet_id = #{palletId}
  564. ORDER BY cl.unit_id
  565. </select>
  566. <!-- rqrq - 根据标签号查询标签信息(用于PDA扫描标签) -->
  567. <select id="getLabelInfoByUnitId" resultType="CountLabelData">
  568. SELECT
  569. h.site,
  570. h.unit_id AS unitId,
  571. h.part_no AS partNo,
  572. h.part_desc AS partDesc,
  573. h.qty,
  574. h.batch_no AS batchNo,
  575. h.wdr
  576. FROM handling_unit h
  577. WHERE h.site = #{site} AND h.unit_id = #{unitId}
  578. </select>
  579. <!-- rqrq - 查询物料汇总(按物料+批号+WDR+仓库+库位汇总)-->
  580. <select id="searchMaterialSummary" resultType="CountMaterialSummary">
  581. SELECT
  582. l.site,
  583. l.count_no AS countNo,
  584. l.part_no AS partNo,
  585. MAX(h.part_desc) AS partDesc,
  586. l.batch_no AS batchNo,
  587. l.wdr,
  588. l.warehouse_id AS warehouseId,
  589. MAX(w.WareHouseName) AS warehouseName,
  590. l.location_id AS locationId,
  591. MAX(loc.LocationName) AS locationName,
  592. COUNT(1) AS labelCount,
  593. SUM(l.qty) AS totalQty,
  594. COUNT(DISTINCT l.pallet_id) AS palletCount,
  595. SUM(CASE WHEN l.count_flag = 'Y' THEN 1 ELSE 0 END) AS checkedLabelCount,
  596. CASE
  597. WHEN COUNT(1) > 0 THEN CAST(CAST(SUM(CASE WHEN l.count_flag = 'Y' THEN 1 ELSE 0 END) AS FLOAT) / COUNT(1) * 100 AS VARCHAR) + '%'
  598. ELSE '0%'
  599. END AS progressPercent
  600. FROM count_label l
  601. LEFT JOIN handling_unit h ON l.unit_id = h.unit_id AND l.site = h.site
  602. LEFT JOIN warehouse w ON l.warehouse_id = w.WareHouseID AND l.site = w.Site
  603. LEFT JOIN location loc ON l.location_id = loc.LocationID AND l.site = loc.Site
  604. WHERE l.site = #{query.site} AND l.count_no = #{query.countNo}
  605. GROUP BY l.site, l.count_no, l.part_no, l.batch_no, l.wdr, l.warehouse_id, l.location_id
  606. ORDER BY l.part_no, l.batch_no
  607. </select>
  608. <!-- rqrq - 查询立库内所有标签(用于循环盘点)-->
  609. <select id="queryWarehouseLabels" resultType="CountLabelInfo">
  610. SELECT
  611. h.unit_id AS unitId,
  612. h.site,
  613. h.part_no AS partNo,
  614. h.part_desc AS partDesc,
  615. h.batch_no AS batchNo,
  616. h.location_id AS locationId,
  617. h.warehouse_id AS warehouseId,
  618. h.qty,
  619. h.in_stock_flag AS inStockFlag,
  620. h.status,
  621. h.status_db AS statusDb,
  622. h.created_date AS createdDate,
  623. h.created_by AS createdBy,
  624. h.modified_date AS modifiedDate,
  625. h.modified_by AS modifiedBy,
  626. h.print_count AS printCount,
  627. h.last_print_date AS lastPrintDate,
  628. h.printer_name AS printerName,
  629. h.qr_code AS qrCode,
  630. h.bar_code AS barCode,
  631. p.remark,
  632. w.WareHouseName AS warehouseName,
  633. l.LocationName AS locationName,
  634. p.pallet_id AS palletId,
  635. s.station_id AS stationId,
  636. s.station_area AS stationArea,
  637. h.height,
  638. b.position,
  639. b.layer,
  640. p.calling_flag AS callingFlag,
  641. h.receive_date AS receiveDate,
  642. h.wdr,
  643. h.last_count_date AS lastCountDate,
  644. h.count_flag AS countFlag
  645. FROM handling_unit h
  646. LEFT JOIN warehouse w ON h.warehouse_id = w.WareHouseID AND h.site = w.Site
  647. LEFT JOIN location l ON h.location_id = l.LocationID AND h.site = l.Site
  648. LEFT JOIN pallet_detail b ON h.unit_id = b.serial_no AND h.site = b.site
  649. LEFT JOIN pallet p ON b.pallet_id = p.pallet_id AND b.site = p.site
  650. LEFT JOIN agv_station s ON p.location_code = s.station_code
  651. WHERE h.site = #{site} AND p.pallet_id IS NOT NULL
  652. </select>
  653. <!-- rqrq - 查询立库内未盘点标签总数(count_flag不为Y的标签,且托盘在立库中)-->
  654. <select id="countWarehouseLabels" resultType="int">
  655. SELECT COUNT(1)
  656. FROM handling_unit h
  657. LEFT JOIN pallet_detail b ON h.unit_id = b.serial_no AND h.site = b.site
  658. LEFT JOIN pallet p ON b.pallet_id = p.pallet_id AND b.site = p.site
  659. WHERE h.site = #{site} AND p.pallet_id IS NOT NULL
  660. AND (h.count_flag IS NULL OR h.count_flag != 'Y')
  661. AND p.wcs_location IS NOT NULL AND p.wcs_location != ''
  662. </select>
  663. <!-- rqrq - 按立库层数(location_z)统计未盘点标签分布(托盘在立库中)-->
  664. <select id="countLabelsByLayer" resultType="LayerLabelCountResult">
  665. SELECT
  666. ISNULL(s.location_z, 1) AS locationZ,
  667. COUNT(1) AS labelCount
  668. FROM handling_unit h
  669. LEFT JOIN pallet_detail b ON h.unit_id = b.serial_no AND h.site = b.site
  670. LEFT JOIN pallet p ON b.pallet_id = p.pallet_id AND b.site = p.site
  671. LEFT JOIN agv_station s ON p.location_code = s.station_code
  672. WHERE h.site = #{site} AND p.pallet_id IS NOT NULL
  673. AND (h.count_flag IS NULL OR h.count_flag != 'Y')
  674. AND p.wcs_location IS NOT NULL AND p.wcs_location != ''
  675. GROUP BY ISNULL(s.location_z, 1)
  676. ORDER BY ISNULL(s.location_z, 1)
  677. </select>
  678. <!-- rqrq - 按立库层数(location_z)查询未盘点标签(用于循环盘点按层分布选取,托盘在立库中)-->
  679. <select id="queryLabelsByLayer" resultType="CountLabelInfo">
  680. SELECT
  681. h.unit_id AS unitId,
  682. h.site,
  683. h.part_no AS partNo,
  684. h.part_desc AS partDesc,
  685. h.batch_no AS batchNo,
  686. h.location_id AS locationId,
  687. h.warehouse_id AS warehouseId,
  688. h.qty,
  689. p.pallet_id AS palletId,
  690. h.receive_date AS receiveDate,
  691. h.wdr,
  692. h.last_count_date AS lastCountDate,
  693. h.count_flag AS countFlag,
  694. w.WareHouseName AS warehouseName,
  695. l.LocationName AS locationName,
  696. ISNULL(s.location_z, 1) AS locationZ,
  697. p.location_code AS locationCode
  698. FROM handling_unit h
  699. LEFT JOIN warehouse w ON h.warehouse_id = w.WareHouseID AND h.site = w.Site
  700. LEFT JOIN location l ON h.location_id = l.LocationID AND h.site = l.Site
  701. LEFT JOIN pallet_detail b ON h.unit_id = b.serial_no AND h.site = b.site
  702. LEFT JOIN pallet p ON b.pallet_id = p.pallet_id AND b.site = p.site
  703. LEFT JOIN agv_station s ON p.location_code = s.station_code
  704. WHERE h.site = #{site} AND p.pallet_id IS NOT NULL
  705. AND (h.count_flag IS NULL OR h.count_flag != 'Y')
  706. AND p.wcs_location IS NOT NULL AND p.wcs_location != ''
  707. ORDER BY ISNULL(s.location_z, 1), p.pallet_id, ISNULL(h.last_count_date, h.receive_date) ASC
  708. </select>
  709. <!-- rqrq - 按托盘分组查询标签(按上次盘点日期或接收日期排序)-->
  710. <select id="queryLabelsByPalletOrder" resultType="CountLabelInfo">
  711. SELECT
  712. h.unit_id AS unitId,
  713. h.site,
  714. h.part_no AS partNo,
  715. h.part_desc AS partDesc,
  716. h.batch_no AS batchNo,
  717. h.location_id AS locationId,
  718. h.warehouse_id AS warehouseId,
  719. h.qty,
  720. p.pallet_id AS palletId,
  721. h.receive_date AS receiveDate,
  722. h.wdr,
  723. h.last_count_date AS lastCountDate,
  724. h.count_flag AS countFlag,
  725. w.WareHouseName AS warehouseName,
  726. l.LocationName AS locationName
  727. FROM handling_unit h
  728. LEFT JOIN warehouse w ON h.warehouse_id = w.WareHouseID AND h.site = w.Site
  729. LEFT JOIN location l ON h.location_id = l.LocationID AND h.site = l.Site
  730. LEFT JOIN pallet_detail b ON h.unit_id = b.serial_no AND h.site = b.site
  731. LEFT JOIN pallet p ON b.pallet_id = p.pallet_id AND b.site = p.site
  732. WHERE h.site = #{site} AND p.pallet_id IS NOT NULL
  733. ORDER BY p.pallet_id, ISNULL(h.last_count_date, h.receive_date) ASC
  734. </select>
  735. <!-- rqrq - 查询指定物料的标签(手工盘点)-->
  736. <select id="queryLabelsByMaterial" resultType="CountLabelInfo">
  737. SELECT
  738. h.unit_id AS unitId,
  739. h.site,
  740. h.part_no AS partNo,
  741. h.part_desc AS partDesc,
  742. h.batch_no AS batchNo,
  743. h.location_id AS locationId,
  744. h.warehouse_id AS warehouseId,
  745. h.qty,
  746. p.pallet_id AS palletId,
  747. h.receive_date AS receiveDate,
  748. h.wdr,
  749. h.last_count_date AS lastCountDate,
  750. h.count_flag AS countFlag,
  751. w.WareHouseName AS warehouseName,
  752. l.LocationName AS locationName,
  753. ISNULL(s.location_z, 1) AS locationZ,
  754. p.location_code AS locationCode
  755. FROM handling_unit h
  756. LEFT JOIN warehouse w ON h.warehouse_id = w.WareHouseID AND h.site = w.Site
  757. LEFT JOIN location l ON h.location_id = l.LocationID AND h.site = l.Site
  758. LEFT JOIN pallet_detail b ON h.unit_id = b.serial_no AND h.site = b.site
  759. LEFT JOIN pallet p ON b.pallet_id = p.pallet_id AND b.site = p.site
  760. LEFT JOIN agv_station s ON p.location_code = s.station_code
  761. WHERE h.site = #{query.site} AND p.pallet_id IS NOT NULL
  762. <if test="query.searchPartNo != null and query.searchPartNo != ''">
  763. AND h.part_no LIKE '%' + #{query.searchPartNo} + '%'
  764. </if>
  765. <if test="query.searchBatchNo != null and query.searchBatchNo != ''">
  766. AND h.batch_no LIKE '%' + #{query.searchBatchNo} + '%'
  767. </if>
  768. <if test="query.searchWdr != null and query.searchWdr != ''">
  769. AND h.wdr LIKE '%' + #{query.searchWdr} + '%'
  770. </if>
  771. ORDER BY h.part_no, h.batch_no, p.pallet_id
  772. </select>
  773. <!-- rqrq - 查询同托盘的其他标签 -->
  774. <select id="queryExtraLabelsByPallet" resultType="CountLabelInfo">
  775. SELECT
  776. h.unit_id AS unitId,
  777. h.site,
  778. h.part_no AS partNo,
  779. h.part_desc AS partDesc,
  780. h.batch_no AS batchNo,
  781. h.location_id AS locationId,
  782. h.warehouse_id AS warehouseId,
  783. h.qty,
  784. p.pallet_id AS palletId,
  785. h.receive_date AS receiveDate,
  786. h.wdr,
  787. h.last_count_date AS lastCountDate,
  788. h.count_flag AS countFlag,
  789. ISNULL(s.location_z, 1) AS locationZ,
  790. p.location_code AS locationCode
  791. FROM handling_unit h
  792. LEFT JOIN pallet_detail b ON h.unit_id = b.serial_no AND h.site = b.site
  793. LEFT JOIN pallet p ON b.pallet_id = p.pallet_id AND b.site = p.site
  794. LEFT JOIN agv_station s ON p.location_code = s.station_code
  795. WHERE h.site = #{site} AND p.pallet_id = #{palletId}
  796. <if test="excludeUnitIds != null and excludeUnitIds.size() > 0">
  797. AND h.unit_id NOT IN
  798. <foreach collection="excludeUnitIds" item="unitId" open="(" separator="," close=")">
  799. #{unitId}
  800. </foreach>
  801. </if>
  802. </select>
  803. <!-- rqrq - 更新handling_unit盘点状态 -->
  804. <update id="updateHandlingUnitCountFlag">
  805. UPDATE handling_unit
  806. SET count_flag = #{countFlag},
  807. last_count_date = GETDATE()
  808. WHERE site = #{site} AND unit_id = #{unitId}
  809. </update>
  810. <!-- rqrq - 更新盘点主表状态 -->
  811. <update id="updateCountHeaderStatus">
  812. UPDATE count_header
  813. SET status = #{header.status},
  814. modified_by = #{header.modifiedBy},
  815. modified_date = GETDATE()
  816. <if test="header.releaseUser != null">
  817. , release_user = #{header.releaseUser}
  818. , release_date = GETDATE()
  819. </if>
  820. <if test="header.completeUser != null">
  821. , complete_user = #{header.completeUser}
  822. , complete_date = GETDATE()
  823. </if>
  824. WHERE site = #{header.site} AND count_no = #{header.countNo}
  825. </update>
  826. <!-- rqrq - 插入盘点主表 -->
  827. <insert id="insertCountHeader">
  828. INSERT INTO count_header (site, count_no, count_type, status, count_percent, apply_user, apply_date, remark, created_by, created_date)
  829. VALUES (#{header.site}, #{header.countNo}, #{header.countType}, #{header.status}, #{header.countPercent},
  830. #{header.applyUser}, GETDATE(), #{header.remark}, #{header.createdBy}, GETDATE())
  831. </insert>
  832. <!-- rqrq - 删除盘点主表 -->
  833. <delete id="deleteCountHeader">
  834. DELETE FROM count_header WHERE site = #{site} AND count_no = #{countNo}
  835. </delete>
  836. <!-- rqrq - 删除盘点标签子表 -->
  837. <delete id="deleteCountLabel">
  838. DELETE FROM count_label WHERE site = #{site} AND count_no = #{countNo}
  839. </delete>
  840. <!-- rqrq - 删除盘点栈板子表 -->
  841. <delete id="deleteCountPallet">
  842. DELETE FROM count_pallet WHERE site = #{site} AND count_no = #{countNo}
  843. </delete>
  844. <!-- ==================== 推送WCS相关 ==================== -->
  845. <!-- rqrq - 查询未推送的栈板列表(按层均匀分布排序)-->
  846. <select id="queryUnpushedPallets" resultType="CountPalletData">
  847. SELECT
  848. pp.id,
  849. pp.site,
  850. pp.count_no AS countNo,
  851. pp.seq_no AS seqNo,
  852. pp.pallet_id AS palletId,
  853. pp.count_flag AS countFlag,
  854. pp.label_count AS labelCount,
  855. pp.checked_count AS checkedCount,
  856. pp.location_z AS locationZ,
  857. pp.task_no AS taskNo,
  858. p.location_code AS locationCode
  859. FROM count_pallet pp
  860. LEFT JOIN pallet p ON pp.pallet_id = p.pallet_id AND pp.site = p.site
  861. WHERE pp.site = #{site}
  862. AND pp.count_no = #{countNo}
  863. AND (pp.task_no IS NULL OR pp.task_no = '')
  864. ORDER BY pp.location_z, pp.seq_no
  865. </select>
  866. <!-- rqrq - 更新栈板推送状态 -->
  867. <update id="updatePalletPushStatus">
  868. UPDATE count_pallet
  869. SET task_no = #{taskNo}
  870. WHERE site = #{site}
  871. AND count_no = #{countNo}
  872. AND pallet_id = #{palletId}
  873. </update>
  874. <!-- rqrq - 查询盘点单的盘点类型 -->
  875. <select id="getCountType" resultType="java.lang.String">
  876. SELECT count_type FROM count_header WHERE site = #{site} AND count_no = #{countNo}
  877. </select>
  878. <!-- rqrq - 根据栈板号查询关联的任务单号 -->
  879. <select id="getTaskNoByPallet" resultType="java.lang.String">
  880. SELECT task_no
  881. FROM count_pallet
  882. WHERE site = #{site} AND count_no = #{countNo} AND pallet_id = #{palletId}
  883. </select>
  884. <!-- rqrq - 检查未处理的异常盘点结果数量(用于完成盘点单校验) -->
  885. <select id="countUnhandledExceptionResult" resultType="int">
  886. SELECT COUNT(1)
  887. FROM count_result cr
  888. WHERE cr.site = #{site}
  889. AND cr.count_no = #{countNo}
  890. AND cr.count_result != 'OK'
  891. AND (cr.handle_flag IS NULL OR cr.handle_flag = 'N')
  892. </select>
  893. <!-- rqrq - 查询未处理的异常盘点结果 -->
  894. <select id="searchUnhandledExceptionList" resultType="CountResultData">
  895. SELECT
  896. r.id,
  897. r.site,
  898. r.count_no AS countNo,
  899. r.unit_id AS unitId,
  900. r.part_no AS partNo,
  901. r.qty,
  902. r.batch_no AS batchNo,
  903. r.location_id AS locationId,
  904. r.warehouse_id AS warehouseId,
  905. r.wdr,
  906. r.pallet_id AS palletId,
  907. r.count_date AS countDate,
  908. r.count_user AS countUser,
  909. r.count_result AS countResult,
  910. r.diff_qty AS diffQty,
  911. r.handle_flag AS handleFlag,
  912. r.handle_type AS handleType,
  913. r.remark,
  914. r.created_by AS createdBy,
  915. r.created_date AS createdDate,
  916. h.part_desc AS partDesc,
  917. w.WareHouseName AS warehouseName,
  918. loc.LocationName AS locationName,
  919. CASE r.count_result
  920. WHEN 'OK' THEN '正常'
  921. WHEN 'MISSING' THEN '缺失'
  922. WHEN 'SURPLUS' THEN '盈余'
  923. WHEN 'QTY_DIFF' THEN '数量差异'
  924. ELSE r.count_result
  925. END AS countResultDesc,
  926. CASE r.handle_flag
  927. WHEN 'Y' THEN '已处理'
  928. WHEN 'N' THEN '未处理'
  929. ELSE '未处理'
  930. END AS handleFlagDesc
  931. FROM count_result r
  932. LEFT JOIN handling_unit h ON r.unit_id = h.unit_id AND r.site = h.site
  933. LEFT JOIN warehouse w ON r.warehouse_id = w.WareHouseID AND r.site = w.Site
  934. LEFT JOIN location loc ON r.location_id = loc.LocationID AND r.site = loc.Site
  935. WHERE r.site = #{query.site}
  936. AND r.count_no = #{query.countNo}
  937. AND r.count_result != 'OK'
  938. AND (r.handle_flag IS NULL OR r.handle_flag = 'N')
  939. ORDER BY r.count_result, r.unit_id
  940. </select>
  941. <!-- rqrq - 更新盘点结果的处理标记和处理方式 -->
  942. <update id="updateCountResultHandleFlag">
  943. UPDATE count_result
  944. SET handle_type = #{handleType}
  945. WHERE id = #{id}
  946. <!-- AND site = #{site} -->
  947. <!-- AND count_no = #{countNo}-->
  948. </update>
  949. <select id="getCountResultById" resultType="CountResultData">
  950. select
  951. id,site,count_no,unit_id,part_no,qty,batch_no,location_id,warehouse_id,wdr,pallet_id,count_date,count_user,count_result,
  952. remark,created_by,created_date,diff_qty,handle_flag,handle_type
  953. from count_result where id = #{id}
  954. </select>
  955. <update id="updateCountResultHandleFlagForId">
  956. UPDATE count_result
  957. SET handle_flag = #{handleFlag}
  958. WHERE id = #{id}
  959. </update>
  960. <select id="getSysIfCount" resultType="String">
  961. select dbo.Get_SysParamenter(#{site},10001)
  962. </select>
  963. <select id="getSysCountCycle" resultType="String">
  964. select dbo.Get_SysParamenter(#{site},10002)
  965. </select>
  966. <update id="updateLastPandianHU">
  967. update handling_unit set count_flag='N' where site=#{site} and count_flag='Y' and #{lastPandian}> isnull(last_count_date,'2000-01-01')
  968. </update>
  969. <update id="updateSysIfCount">
  970. update sysParameters set paraValue=#{value} where site=#{site} and parameterId='10001'
  971. </update>
  972. <!-- rqrq - 统计该盘点单已有的任务单数量(用于计算流水号) -->
  973. <select id="countOrderTaskByCountNo" resultType="int">
  974. SELECT COUNT(1)
  975. FROM wms_order_task WITH (NOLOCK)
  976. WHERE site = #{site}
  977. AND source_bill_no = #{countNo}
  978. </select>
  979. </mapper>