Przeglądaj źródła

update poline & stockinline

master
kelvinsuen 1 tydzień temu
rodzic
commit
7c67759297
5 zmienionych plików z 18 dodań i 2 usunięć
  1. +7
    -0
      src/main/java/com/ffii/fpsms/modules/purchaseOrder/entity/PurchaseOrderLine.kt
  2. +4
    -0
      src/main/java/com/ffii/fpsms/modules/purchaseOrder/entity/projections/PurchaseOrderLineInfo.kt
  3. +3
    -2
      src/main/java/com/ffii/fpsms/modules/purchaseOrder/service/PurchaseOrderService.kt
  4. +2
    -0
      src/main/java/com/ffii/fpsms/modules/stock/entity/StockInLine.kt
  5. +2
    -0
      src/main/java/com/ffii/fpsms/modules/stock/entity/projection/StockInLineInfo.kt

+ 7
- 0
src/main/java/com/ffii/fpsms/modules/purchaseOrder/entity/PurchaseOrderLine.kt Wyświetl plik

@@ -1,12 +1,15 @@
package com.ffii.fpsms.modules.purchaseOrder.entity

import com.fasterxml.jackson.annotation.JsonManagedReference
import com.ffii.core.entity.BaseEntity
import com.ffii.fpsms.modules.master.entity.Items
import com.ffii.fpsms.m18.entity.M18DataLog
import com.ffii.fpsms.modules.master.entity.BomMaterial
import com.ffii.fpsms.modules.master.entity.Currency
import com.ffii.fpsms.modules.master.entity.UomConversion
import com.ffii.fpsms.modules.purchaseOrder.enums.PurchaseOrderLineStatus
import com.ffii.fpsms.modules.purchaseOrder.enums.PurchaseOrderLineStatusConverter
import com.ffii.fpsms.modules.stock.entity.StockInLine
import jakarta.persistence.*
import jakarta.validation.constraints.NotNull
import jakarta.validation.constraints.Size
@@ -59,4 +62,8 @@ open class PurchaseOrderLine : BaseEntity<Long>() {
@Size(max = 20)
@Column(name = "m18Lot", length = 20)
open var m18Lot: String? = null

@JsonManagedReference
@OneToMany(mappedBy = "purchaseOrderLine", cascade = [CascadeType.ALL], orphanRemoval = true)
open var stockInLines: MutableList<StockInLine> = mutableListOf()
}

+ 4
- 0
src/main/java/com/ffii/fpsms/modules/purchaseOrder/entity/projections/PurchaseOrderLineInfo.kt Wyświetl plik

@@ -1,9 +1,12 @@
package com.ffii.fpsms.modules.purchaseOrder.entity.projections

import com.fasterxml.jackson.annotation.JsonManagedReference
import com.ffii.fpsms.modules.master.entity.QcItem
import com.ffii.fpsms.modules.master.entity.UomConversion
import com.ffii.fpsms.modules.stock.entity.StockInLine
import com.ffii.fpsms.modules.stock.entity.projection.StockInLineInfo
import jakarta.persistence.CascadeType
import jakarta.persistence.OneToMany
import org.springframework.beans.factory.annotation.Value
import java.math.BigDecimal

@@ -29,6 +32,7 @@ data class PoLineWithStockInLine (
val itemName: String?,
val qty: BigDecimal,
val processed: BigDecimal,
val receivedQty: BigDecimal,
@get:Value("#{target.uom}")
val uom: UomConversion,
val price: BigDecimal,


+ 3
- 2
src/main/java/com/ffii/fpsms/modules/purchaseOrder/service/PurchaseOrderService.kt Wyświetl plik

@@ -111,8 +111,8 @@ open class PurchaseOrderService(
" ) sil2 on sil2.purchaseOrderLineId = pol.id" +
" left join item_uom iu on iu.itemId = pol.itemId and iu.purchaseUnit = true" +
" left join uom_conversion uc on uc.id = iu.uomId" +
" where po.deleted = false " +
" and pol.deleted = false "
" where po.deleted = false " +
" and pol.deleted = false "
)
if (args.containsKey("code")){
sql.append(" AND po.code like :code ");
@@ -202,6 +202,7 @@ open class PurchaseOrderService(
itemName = thisPol.item!!.name,
qty = thisPol.qty!!,
processed = inLine.filter{ it.status == StockInLineStatus.COMPLETE.status}.sumOf { it.acceptedQty },
receivedQty = thisPol.stockInLines.sumOf { it.acceptedQty ?: BigDecimal.ZERO },
uom = thisPol.uom!!,
price = thisPol.price!!,
status = thisPol.status!!.toString(),


+ 2
- 0
src/main/java/com/ffii/fpsms/modules/stock/entity/StockInLine.kt Wyświetl plik

@@ -1,5 +1,6 @@
package com.ffii.fpsms.modules.stock.entity

import com.fasterxml.jackson.annotation.JsonBackReference
import com.ffii.core.entity.BaseEntity
import com.ffii.fpsms.modules.master.entity.Items
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrder
@@ -30,6 +31,7 @@ open class StockInLine : BaseEntity<Long>() {
@JoinColumn(name = "purchaseOrderId")
open var purchaseOrder: PurchaseOrder? = null

@JsonBackReference
@ManyToOne
@JoinColumn(name = "purchaseOrderLineId")
open var purchaseOrderLine: PurchaseOrderLine? = null


+ 2
- 0
src/main/java/com/ffii/fpsms/modules/stock/entity/projection/StockInLineInfo.kt Wyświetl plik

@@ -23,6 +23,8 @@ interface StockInLineInfo {
val purchaseOrderId: Long?
val demandQty: BigDecimal?
val acceptedQty: BigDecimal
@get:Value("#{target.purchaseOrderLine?.qty}")
val qty: BigDecimal
val price: BigDecimal?
val priceUnit: BigDecimal?
@get:Value("#{target.item?.shelfLife}")


Ładowanie…
Anuluj
Zapisz