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

import com.ffii.fpsms.modules.qc.web.model.SaveQcResultRequest
import java.math.BigDecimal
import java.time.LocalDate
import java.time.LocalDateTime

enum class StockInStatus(val status: String) {
    PENDING("pending"),
    COMPLETE("completed"),
//    CANCELLED("cancelled")
}
class GameScore(val grade: String)
enum class StockInLineStatus(val status: String) {
    PENDING("pending"),
    QC("qc"),
    FirstDetermine("determine1"),
    SecondDetermine("determine2"),
    ThirdDetermine("determine3"),
    RECEIVING("receiving"),
    RECEIVED("received"),
    COMPLETE("completed");
}
data class SaveStockInRequest(
    val purchaseOrderId: Long? = null,
    val code: String? = null,
    val supplierId: Long? = null,
    val shopId: Long? = null,
    val orderDate: Long? = null,
    val estimatedCompleteDate: LocalDateTime? = null,
    val completeDate: LocalDateTime? = null,
    val status: LocalDateTime? = null,
    val stockOutId: Long? = null,
//    val m18
)

data class SaveStockInLineRequest(
    var id: Long?,
    var purchaseOrderId: Long,
    var purchaseOrderLineId: Long,
    var itemId: Long,
    var acceptedQty: BigDecimal,
    var acceptedWeight: BigDecimal?,
    var status: String?,
    var expiryDate: LocalDate?,
    var productLotNo: String?,
    var receiptDate: LocalDate?,
    var productionDate: LocalDate?,
    var qcResult: List<SaveQcResultRequest>?,
    var warehouseId: Long?
)
