daily_plan_id, plan_code, source_type, erp_order_code, manual_order_code, plan_date, material_id, material_code, material_name, material_spec, plan_qty, append_qty, stocked_qty, sleeved_qty, packing_info, sort_seq, weight, order_status, stocking_status, sleeving_status, previous_order_status, previous_stocking_status, previous_sleeving_status, order_start_time, order_end_time, stocking_start_time, stocking_complete_time, sleeving_start_time, sleeving_complete_time, version, creator, create_time, updater, update_time, deleted, tenant_id AND (plan_code LIKE CONCAT('%', #{reqVO.planOrOrderCode}, '%') OR erp_order_code LIKE CONCAT('%', #{reqVO.planOrOrderCode}, '%') OR manual_order_code LIKE CONCAT('%', #{reqVO.planOrOrderCode}, '%')) AND (material_code LIKE CONCAT('%', #{reqVO.materialKeyword}, '%') OR material_name LIKE CONCAT('%', #{reqVO.materialKeyword}, '%') OR material_spec LIKE CONCAT('%', #{reqVO.materialKeyword}, '%')) INSERT INTO lms_daily_plan (daily_plan_id, plan_code, source_type, erp_order_code, manual_order_code, plan_date, material_id, material_code, material_name, material_spec, plan_qty, append_qty, stocked_qty, sleeved_qty, packing_info, sort_seq, weight, order_status, stocking_status, sleeving_status, version, creator, updater) VALUES (#{plan.dailyPlanId}, #{plan.planCode}, #{plan.sourceType}, #{plan.erpOrderCode}, #{plan.manualOrderCode}, #{plan.planDate}, #{plan.materialId}, #{plan.materialCode}, #{plan.materialName}, #{plan.materialSpec}, #{plan.planQty}, 0, 0, 0, #{plan.packingInfo}, #{plan.sortSeq}, #{plan.weight}, 0, 0, 0, 0, #{plan.creator}, #{plan.updater}) UPDATE lms_daily_plan SET erp_order_code = #{plan.erpOrderCode}, manual_order_code = #{plan.manualOrderCode}, plan_date = #{plan.planDate}, material_id = #{plan.materialId}, material_code = #{plan.materialCode}, material_name = #{plan.materialName}, material_spec = #{plan.materialSpec}, plan_qty = #{plan.planQty}, packing_info = #{plan.packingInfo}, sort_seq = #{plan.sortSeq}, weight = #{plan.weight}, updater = #{plan.updater}, version = version + 1 WHERE daily_plan_id = #{plan.dailyPlanId} AND version = #{plan.version} AND deleted = b'0' AND order_status = 0 UPDATE lms_daily_plan SET order_status = previous_order_status, previous_order_status = NULL, updater = #{updater}, version = version + 1 WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0' AND order_status = 3 AND previous_order_status IS NOT NULL AND previous_order_status IN (0, 1) UPDATE lms_daily_plan SET stocking_status = previous_stocking_status, previous_stocking_status = NULL, updater = #{updater}, version = version + 1 WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0' AND order_status = 1 AND stocking_status = 3 AND previous_stocking_status IS NOT NULL AND previous_stocking_status IN (0, 1) UPDATE lms_daily_plan SET sleeving_status = previous_sleeving_status, previous_sleeving_status = NULL, updater = #{updater}, version = version + 1 WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0' AND order_status = 1 AND sleeving_status = 3 AND previous_sleeving_status IS NOT NULL AND previous_sleeving_status IN (0, 1) UPDATE lms_daily_plan order_status = #{plan.orderStatus}, stocking_status = #{plan.stockingStatus}, sleeving_status = #{plan.sleevingStatus}, previous_order_status = #{plan.previousOrderStatus}, previous_stocking_status = #{plan.previousStockingStatus}, previous_sleeving_status = #{plan.previousSleevingStatus}, order_start_time = #{plan.orderStartTime}, order_end_time = #{plan.orderEndTime}, stocking_start_time = #{plan.stockingStartTime}, stocking_complete_time = #{plan.stockingCompleteTime}, sleeving_start_time = #{plan.sleevingStartTime}, sleeving_complete_time = #{plan.sleevingCompleteTime}, append_qty = #{plan.appendQty}, updater = #{plan.updater}, version = version + 1 WHERE daily_plan_id = #{plan.dailyPlanId} AND version = #{plan.version} AND deleted = b'0' UPDATE lms_daily_plan SET sort_seq = #{sortSeq}, updater = #{updater}, version = version + 1 WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0' UPDATE lms_daily_plan SET weight = #{weight}, updater = #{updater}, version = version + 1 WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0' UPDATE lms_daily_plan SET stocking_status = CASE WHEN stocked_qty + #{incrementQty} = plan_qty + append_qty THEN 2 ELSE stocking_status END, stocking_complete_time = CASE WHEN stocked_qty + #{incrementQty} = plan_qty + append_qty THEN NOW() ELSE stocking_complete_time END, stocked_qty = stocked_qty + #{incrementQty}, updater = #{updater}, version = version + 1 WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0' AND order_status = 1 AND stocking_status = 1 AND #{incrementQty} > 0 AND stocked_qty + #{incrementQty} <= plan_qty + append_qty UPDATE lms_daily_plan SET sleeving_status = CASE WHEN sleeved_qty + #{incrementQty} = plan_qty + append_qty THEN 2 ELSE sleeving_status END, sleeving_complete_time = CASE WHEN sleeved_qty + #{incrementQty} = plan_qty + append_qty THEN NOW() ELSE sleeving_complete_time END, sleeved_qty = sleeved_qty + #{incrementQty}, updater = #{updater}, version = version + 1 WHERE daily_plan_id = #{dailyPlanId} AND version = #{version} AND deleted = b'0' AND order_status = 1 AND sleeving_status = 1 AND #{incrementQty} > 0 AND sleeved_qty + #{incrementQty} <= plan_qty + append_qty