|
|
|
@@ -34,6 +34,7 @@ import kotlin.jvm.optionals.getOrNull |
|
|
|
import com.ffii.fpsms.modules.jobOrder.service.JoPickOrderService |
|
|
|
import com.ffii.fpsms.modules.jobOrder.web.model.ExportPickRecordRequest |
|
|
|
import com.ffii.fpsms.modules.jobOrder.web.model.PrintPickRecordRequest |
|
|
|
import com.ffii.fpsms.modules.master.service.PrinterService |
|
|
|
import com.ffii.fpsms.modules.pickOrder.entity.PickOrderRepository |
|
|
|
import com.ffii.fpsms.modules.pickOrder.entity.PickOrderLineRepository |
|
|
|
import com.ffii.fpsms.modules.stock.service.SuggestedPickLotService |
|
|
|
@@ -46,7 +47,10 @@ import com.ffii.fpsms.modules.stock.web.model.StockOutStatus |
|
|
|
import com.ffii.fpsms.modules.stock.web.model.StockOutLineStatus |
|
|
|
import com.ffii.fpsms.modules.stock.web.model.SuggestedPickLotForPolRequest |
|
|
|
import net.sf.jasperreports.engine.JasperCompileManager |
|
|
|
import net.sf.jasperreports.engine.JasperExportManager |
|
|
|
import net.sf.jasperreports.engine.JasperPrint |
|
|
|
import org.springframework.core.io.ClassPathResource |
|
|
|
import java.io.File |
|
|
|
import java.io.FileNotFoundException |
|
|
|
import java.io.IOException |
|
|
|
|
|
|
|
@@ -65,6 +69,7 @@ open class JobOrderService( |
|
|
|
val inventoryLotLineRepository: InventoryLotLineRepository, |
|
|
|
val stockOutRepository: StockOutRepository, |
|
|
|
val stockOutLineRepository: StockOutLIneRepository, |
|
|
|
private val printerService: PrinterService, |
|
|
|
|
|
|
|
) { |
|
|
|
|
|
|
|
@@ -370,15 +375,32 @@ open class JobOrderService( |
|
|
|
|
|
|
|
params["unit"] = pickRecordInfo.firstOrNull()?.get("uomConversionDesc") as? String ?: "N/A" |
|
|
|
|
|
|
|
|
|
|
|
val pickOrderCode = pickRecordInfo.firstOrNull()?.get("pickOrderCode") as? String ?: "unknown" |
|
|
|
return mapOf( |
|
|
|
"report" to PdfUtils.fillReport(pickRecord, fields, params), |
|
|
|
"filename" to "123" |
|
|
|
"filename" to pickOrderCode |
|
|
|
) |
|
|
|
} |
|
|
|
|
|
|
|
@Transactional |
|
|
|
open fun printPickRecord(request: PrintPickRecordRequest){ |
|
|
|
//val printer = printerService.findById(request.printerId) ?: throw java.util.NoSuchElementException("No such printer") |
|
|
|
|
|
|
|
val pdf = exportPickRecord( |
|
|
|
ExportPickRecordRequest( |
|
|
|
pickOrderIds = request.pickOrderId |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
val jasperPrint = pdf["report"] as JasperPrint |
|
|
|
|
|
|
|
val tempPdfFile = File.createTempFile("print_job_",".pdf") |
|
|
|
|
|
|
|
try{ |
|
|
|
JasperExportManager.exportReportToPdfFile(jasperPrint,tempPdfFile.absolutePath) |
|
|
|
|
|
|
|
} finally { |
|
|
|
//tempPdfFile.delete*9 |
|
|
|
} |
|
|
|
} |
|
|
|
} |