|
|
@@ -2,6 +2,7 @@ package com.ffii.fpsms.modules.stock.service |
|
|
|
|
|
|
|
import com.ffii.core.support.AbstractBaseEntityService |
|
|
|
import com.ffii.core.support.JdbcDao |
|
|
|
import com.ffii.core.utils.JsonUtils |
|
|
|
import com.ffii.core.utils.QrCodeUtil |
|
|
|
import com.ffii.fpsms.modules.common.CodeGenerator |
|
|
|
import com.ffii.fpsms.modules.master.entity.ItemsRepository |
|
|
@@ -28,7 +29,12 @@ import com.ffii.core.utils.PdfUtils; |
|
|
|
import com.ffii.fpsms.modules.master.entity.WarehouseRepository |
|
|
|
import java.io.FileNotFoundException |
|
|
|
import java.time.format.DateTimeFormatter |
|
|
|
import kotlinx.serialization.Serializable |
|
|
|
import kotlinx.serialization.json.Json |
|
|
|
import kotlinx.serialization.encodeToString |
|
|
|
|
|
|
|
@Serializable |
|
|
|
data class QrContent(val itemId: Long, val stockInLineId: Long) |
|
|
|
|
|
|
|
@Service |
|
|
|
open class StockInLineService( |
|
|
@@ -167,7 +173,6 @@ open class StockInLineService( |
|
|
|
this.expiryDate = stockInLine.expiryDate ?: request.expiryDate |
|
|
|
this.inventoryLot = stockInLine.inventoryLot ?: savedInventoryLot |
|
|
|
this.lotNo = stockInLine.lotNo ?: savedInventoryLot?.lotNo |
|
|
|
this.lotNo = savedInventoryLot?.lotNo |
|
|
|
} |
|
|
|
val savedStockInLine = saveAndFlush(stockInLine) |
|
|
|
val lineInfo = stockInLineRepository.findStockInLineInfoByIdAndDeletedFalse(savedStockInLine.id!!) |
|
|
@@ -258,19 +263,18 @@ open class StockInLineService( |
|
|
|
val poLabel = JasperCompileManager.compileReport(inputStream) |
|
|
|
val qrCodeInfo = stockInLineRepository.findStockInLineInfoByIdInAndDeletedFalse(request.stockInLineIds).toMutableList() |
|
|
|
val fields = mutableListOf<MutableMap<String ,Any>>() |
|
|
|
|
|
|
|
for (info in qrCodeInfo) { |
|
|
|
val field = mutableMapOf<String, Any>() |
|
|
|
val qrCodeContent = ( |
|
|
|
"itemId:${info.itemId}" + |
|
|
|
",stockInLineId:${info.id}" |
|
|
|
) |
|
|
|
val qrContent = QrContent(info.itemId, info.id) |
|
|
|
val qrCodeContent = (Json.encodeToString(qrContent)) |
|
|
|
// field["itemId"] = info.itemId |
|
|
|
field["itemName"] = info.itemName!! |
|
|
|
field["itemNo"] = info.itemNo |
|
|
|
field["poCode"] = info.poCode |
|
|
|
field["itemType"] = info.itemType |
|
|
|
field["acceptedQty"] = info.acceptedQty.toString() |
|
|
|
field["uom"] = info.uom!! |
|
|
|
field["uom"] = info.uom.code.toString() |
|
|
|
field["productionDate"] = info.productionDate?.format(DateTimeFormatter.ISO_LOCAL_DATE) ?: "" |
|
|
|
field["expiryDate"] = info.expiryDate?.format(DateTimeFormatter.ISO_LOCAL_DATE) ?: "" |
|
|
|
field["lotNo"] = info.lotNo!! |
|
|
|