Переглянути джерело

update showing escalation in po list view

production_process
MSI\derek 2 місяці тому
джерело
коміт
4219c7478d
6 змінених файлів з 43 додано та 4 видалено
  1. +13
    -1
      src/main/java/com/ffii/fpsms/modules/purchaseOrder/entity/projections/PurchaseOrderInfo.kt
  2. +20
    -2
      src/main/java/com/ffii/fpsms/modules/purchaseOrder/service/PurchaseOrderService.kt
  3. +2
    -1
      src/main/java/com/ffii/fpsms/modules/purchaseOrder/web/PurchaseOrderController.kt
  4. +5
    -0
      src/main/java/com/ffii/fpsms/modules/stock/entity/StockInLine.kt
  5. +1
    -0
      src/main/java/com/ffii/fpsms/modules/stock/entity/StockInLineRepository.kt
  6. +2
    -0
      src/main/java/com/ffii/fpsms/modules/stock/service/StockInLineService.kt

+ 13
- 1
src/main/java/com/ffii/fpsms/modules/purchaseOrder/entity/projections/PurchaseOrderInfo.kt Переглянути файл

@@ -14,4 +14,16 @@ interface PurchaseOrderInfo {
val status: String
@get:Value("#{target.supplier?.name}")
val supplier: String?
}
// var escalated: Boolean?
}

data class PurchaseOrderDataClass(
val id: Long,
val code: String,
val orderDate: LocalDateTime?,
val estimatedArrivalDate: LocalDateTime?,
val completeDate: LocalDateTime?,
val status: String,
val supplier: String?,
var escalated: Boolean?
)

+ 20
- 2
src/main/java/com/ffii/fpsms/modules/purchaseOrder/service/PurchaseOrderService.kt Переглянути файл

@@ -11,6 +11,7 @@ import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrder
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrderLineRepository
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrderRepository
import com.ffii.fpsms.modules.purchaseOrder.entity.projections.PoLineWithStockInLine
import com.ffii.fpsms.modules.purchaseOrder.entity.projections.PurchaseOrderDataClass
import com.ffii.fpsms.modules.purchaseOrder.entity.projections.PurchaseOrderInfo
import com.ffii.fpsms.modules.purchaseOrder.enums.PurchaseOrderLineStatus
import com.ffii.fpsms.modules.purchaseOrder.enums.PurchaseOrderStatus
@@ -41,8 +42,25 @@ open class PurchaseOrderService(
private val currencyService: CurrencyService,
private val shopService: ShopService,
) : AbstractBaseEntityService<PurchaseOrder, Long, PurchaseOrderRepository>(jdbcDao, purchaseOrderRepository) {
open fun getPoList(): List<PurchaseOrderInfo> {
return purchaseOrderRepository.findPurchaseOrderInfoByDeletedIsFalse()
open fun getPoList(): List<PurchaseOrderDataClass> {
val list = purchaseOrderRepository.findPurchaseOrderInfoByDeletedIsFalse()
val mappedList = list.map {
val escalated = stockInLineRepository.findAllStockInLineInfoByPurchaseOrderIdAndStatusStartsWithAndDeletedFalse(
purchaseOrderId = it.id,
status = "determine"
)
PurchaseOrderDataClass(
id = it.id,
code = it.code,
orderDate = it.orderDate,
estimatedArrivalDate = it.estimatedArrivalDate,
completeDate = it.completeDate,
status = it.status,
supplier = it.supplier,
escalated = escalated.isNotEmpty(),
)
}
return mappedList
}

open fun allPurchaseOrder(): List<PurchaseOrder> {


+ 2
- 1
src/main/java/com/ffii/fpsms/modules/purchaseOrder/web/PurchaseOrderController.kt Переглянути файл

@@ -5,6 +5,7 @@ import com.ffii.fpsms.modules.master.entity.Items
import com.ffii.fpsms.modules.master.service.ItemsService
import com.ffii.fpsms.modules.master.web.models.MessageResponse
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrder
import com.ffii.fpsms.modules.purchaseOrder.entity.projections.PurchaseOrderDataClass
import com.ffii.fpsms.modules.purchaseOrder.entity.projections.PurchaseOrderInfo
import com.ffii.fpsms.modules.purchaseOrder.service.PurchaseOrderService
import org.springframework.web.bind.annotation.*
@@ -15,7 +16,7 @@ class PurchaseOrderController(
private val purchaseOrderService: PurchaseOrderService
) {
@GetMapping("/list")
fun getPoList(): List<PurchaseOrderInfo> {
fun getPoList(): List<PurchaseOrderDataClass> {
return purchaseOrderService.getPoList()
}
@GetMapping("/detail/{id}") // purchaseOrderId


+ 5
- 0
src/main/java/com/ffii/fpsms/modules/stock/entity/StockInLine.kt Переглянути файл

@@ -2,6 +2,7 @@ package com.ffii.fpsms.modules.stock.entity

import com.ffii.core.entity.BaseEntity
import com.ffii.fpsms.modules.master.entity.Items
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrder
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrderLine
import com.ffii.fpsms.modules.user.entity.User
import jakarta.persistence.*
@@ -25,6 +26,10 @@ open class StockInLine : BaseEntity<Long>() {
@Column(name = "itemNo", nullable = false, length = 20)
open var itemNo: String? = null

@ManyToOne
@JoinColumn(name = "purchaseOrderId")
open var purchaseOrder: PurchaseOrder? = null

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


+ 1
- 0
src/main/java/com/ffii/fpsms/modules/stock/entity/StockInLineRepository.kt Переглянути файл

@@ -14,4 +14,5 @@ interface StockInLineRepository : AbstractRepository<StockInLine, Long> {
fun findStockInLineInfoByIdInAndDeletedFalse(id: List<Long>): List<StockInLineInfo>
fun findStockInLineInfoByPurchaseOrderLineIdAndStatusNotAndDeletedFalse(purchaseOrderLineId: Long, status: String): List<StockInLineInfo>
fun findStockInLineInfoByIdAndStatusAndDeletedFalse(id: Long, status: String): Optional<StockInLineInfo>
fun findAllStockInLineInfoByPurchaseOrderIdAndStatusStartsWithAndDeletedFalse(purchaseOrderId: Long, status: String): List<Optional<StockInLineInfo>>
}

+ 2
- 0
src/main/java/com/ffii/fpsms/modules/stock/service/StockInLineService.kt Переглянути файл

@@ -84,6 +84,7 @@ open class StockInLineService(
stockInLine.apply {
this.item = item
itemNo = item.code
this.purchaseOrder = purchaseOrderLine.purchaseOrder
this.purchaseOrderLine = purchaseOrderLine
this.stockIn = stockIn
acceptedQty = request.acceptedQty
@@ -270,6 +271,7 @@ open class StockInLineService(
newStockInLine.apply {
this.item = stockInLine.item
this.itemNo = stockInLine.itemNo
this.purchaseOrder = stockInLine.purchaseOrderLine?.purchaseOrder
this.purchaseOrderLine = stockInLine.purchaseOrderLine
this.productLotNo = stockInLine.productLotNo
this.receiptDate = stockInLine.receiptDate


Завантаження…
Відмінити
Зберегти