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.
 
 
 
 
 
 

62 lines
2.5 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gaotao.modules.automatedWarehouse.mapper.WcsCallbackPalletScanMapper">
<!-- rqrq - 获取待处理的回调记录(只处理立库内的记录) -->
<select id="getPendingCallbacks" resultType="com.gaotao.modules.automatedWarehouse.entity.WcsCallbackPalletScan">
SELECT
a.id,a.site,a.pallet_id,a.task_no,a.item_no,a.wcs_scan_time,a.wcs_barcode_list,a.wcs_total_quantity,a.sore_type,
a.process_status,a.process_time,a.error_msg,a.retry_count,a.created_at,a.updated_at,a.action_type,a.json_str
FROM wcs_callback_pallet_scan a
WHERE a.site = #{site}
AND process_status IN ('PENDING', 'FAILED')
AND #{maxRetryCount} >retry_count
<!-- AND a.action_type=N'被分拣回传'-->
ORDER BY created_at
</select>
<!-- <select id="getPendingCallbacksForAutoSort" resultType="WcsCallbackPalletScanData">-->
<!-- SELECT-->
<!-- a.id,a.site,a.pallet_id,a.task_no,a.item_no,a.wcs_scan_time,a.wcs_barcode_list,a.wcs_total_quantity,a.sore_type,-->
<!-- a.process_status,a.process_time,a.error_msg,a.retry_count,a.created_at,a.updated_at,a.json_str,a.action_type-->
<!-- FROM wcs_callback_pallet_scan a-->
<!-- WHERE a.site = #{site}-->
<!-- AND process_status IN ('PENDING', 'FAILED')-->
<!-- AND #{maxRetryCount} >retry_count-->
<!-- AND a.action_type=N'自动分拣'-->
<!-- ORDER BY created_at-->
<!-- </select>-->
<!-- rqrq - 更新处理状态 -->
<update id="updateProcessStatus">
UPDATE wcs_callback_pallet_scan
SET process_status = #{processStatus},
process_time = GETDATE(),
error_msg = #{errorMsg},
updated_at = GETDATE()
WHERE id = #{id}
</update>
<!-- rqrq - 使用乐观锁更新处理状态(防止重复处理)-->
<update id="updateProcessStatusWithLock">
UPDATE wcs_callback_pallet_scan
SET process_status = #{newStatus},
process_time = GETDATE(),
updated_at = GETDATE()
WHERE id = #{id}
AND process_status = #{oldStatus}
</update>
<!-- rqrq - 增加重试次数 -->
<update id="incrementRetryCount">
UPDATE wcs_callback_pallet_scan
SET retry_count = retry_count + 1,
updated_at = GETDATE()
WHERE id = #{id}
</update>
</mapper>