package com.ffii.fpsms.modules.jobOrder.web.model

import com.fasterxml.jackson.annotation.JsonIgnoreProperties

/**
 * Persisted in [com.ffii.fpsms.modules.common.SettingNames.LASER_PRINT_LAST_RECEIVE_SUCCESS] when the laser
 * TCP peer returns a receive-style ack ([com.ffii.fpsms.modules.jobOrder.web.model.LaserBag2SendResponse.receiveAcknowledged]).
 */
@JsonIgnoreProperties(ignoreUnknown = true)
data class LaserLastReceiveSuccessDto(
    val jobOrderId: Long? = null,
    /** Job order code (工單號). */
    val jobOrderNo: String? = null,
    val lotNo: String? = null,
    val itemId: Long? = null,
    val stockInLineId: Long? = null,
    val printerAck: String? = null,
    /** ISO-8601 instant string (server UTC). */
    val sentAt: String? = null,
    /** e.g. AUTO (scheduler/auto-send) or MANUAL (/laserPrint row). */
    val source: String? = null,
)
