瀏覽代碼

update

master
CANCERYS\kw093 3 週之前
父節點
當前提交
88f996a04f
共有 5 個檔案被更改,包括 57 行新增1 行删除
  1. +4
    -0
      src/main/java/com/ffii/fpsms/modules/master/entity/Bom.kt
  2. +22
    -1
      src/main/java/com/ffii/fpsms/modules/master/service/BomService.kt
  3. +2
    -0
      src/main/java/com/ffii/fpsms/modules/master/web/models/SaveBomRequest.kt
  4. +21
    -0
      src/main/java/com/ffii/fpsms/modules/productProcess/entity/ProductProcessLine.kt
  5. +8
    -0
      src/main/resources/db/changelog/changes/20251125_01_enson/03_altertable_enson.sql

+ 4
- 0
src/main/java/com/ffii/fpsms/modules/master/entity/Bom.kt 查看文件

@@ -21,6 +21,10 @@ open class Bom : BaseEntity<Long>() {

@Column
open var isDense: Int? = null
@Column
open var scrapRate: Int? = null
@Column
open var allergicSubstances: Int? = null

@JsonBackReference
@OneToOne


+ 22
- 1
src/main/java/com/ffii/fpsms/modules/master/service/BomService.kt 查看文件

@@ -96,6 +96,8 @@ open class BomService(
this.isFloat = req.isFloat
this.isDense = req.isDense
this.code = req.code
this.scrapRate = req.scrapRate
this.allergicSubstances = req.allergicSubstances
this.name = req.name
this.description = req.description
this.item = item
@@ -286,13 +288,31 @@ open class BomService(
}
return score
}

fun calculateAllergicSubstancesScore(value: String): Int {
var score = -1
when (value) {
"N/A" -> score = 0
"0" -> score = 0
"Yes" -> score = 5
"1" -> score = 5
" " -> score = 0
"" -> score = 0
}
return score
}
val leftTargetValueRow = sheet.getRow(startRowIndex)
val leftTargetValueCell = leftTargetValueRow.getCell(startColumnIndex + 1)
when {
tempCellVal.contains("深淺") -> request.isDark = calculateColourScore(leftTargetValueCell.stringCellValue.trim())
tempCellVal.contains("浮沉") -> request.isFloat = calculateFloatScore(leftTargetValueCell.stringCellValue.trim())
tempCellVal.contains("過敏原 (如有)") -> request.allergicSubstances = calculateAllergicSubstancesScore(leftTargetValueCell.stringCellValue.trim())
tempCellVal.contains("濃淡") -> request.isDense = if (leftTargetValueCell.cellType == CellType.NUMERIC)
leftTargetValueCell.numericCellValue.toInt()
else 0
tempCellVal.contains("損耗率") -> request.scrapRate = if (leftTargetValueCell.cellType == CellType.NUMERIC)

leftTargetValueCell.numericCellValue.toInt()
else 0
}
}
@@ -492,7 +512,8 @@ open class BomService(
// val folder = File(folderPath)
val resolver = PathMatchingResourcePatternResolver()
// val excels = resolver.getResources("bomImport/*.xlsx")
val excels = resolver.getResources("file:C:/Users/Kelvin YAU/Downloads/bom/*.xlsx")
//val excels = resolver.getResources("file:C:/Users/Kelvin YAU/Downloads/bom/*.xlsx")
val excels = resolver.getResources("file:C:/Users/kw093/Downloads/bom/*.xlsx")
// val excels = resolver.getResources("file:C:/Users/2Fi/Desktop/Third Wave of BOM Excel/*.xlsx")
println("size: ${excels.size}")
val logExcel = ClassPathResource("excelTemplate/bom_excel_issue_log.xlsx")


+ 2
- 0
src/main/java/com/ffii/fpsms/modules/master/web/models/SaveBomRequest.kt 查看文件

@@ -30,6 +30,8 @@ data class ImportBomRequest (
@field:NotBlank(message = "bom description cannot be empty")
var description: String,
var itemId: Long? = null,
var scrapRate: Int? = null,
var allergicSubstances: Int? = null,
var outputQty: BigDecimal? = null,
var outputQtyUom: String? = null,
var yield: BigDecimal? = null,


+ 21
- 0
src/main/java/com/ffii/fpsms/modules/productProcess/entity/ProductProcessLine.kt 查看文件

@@ -66,6 +66,27 @@ open class ProductProcessLine : BaseEntity<Long>() {
@Column(name = "defectUom", length = 20)
open var defectUom: String? = null
@Column(name = "defectDescription", length = 255)
open var defectDescription: String? = null
@Column(name = "defectQty2", precision = 16, scale = 2)
open var defectQty2: Int? = null
@Column(name = "defectRemark2", length = 255)
open var defectRemark2: String? = null
@Column(name = "defectUom2", length = 20)
open var defectUom2: String? = null
@Column(name = "defectQty3", precision = 16, scale = 2)
open var defectQty3: Int? = null
@Column(name = "defectUom3", length = 20)
open var defectUom3: String? = null
@Column(name = "defectDescription3", length = 255)
open var defectDescription3: String? = null
@Column(name = "outputFromProcessQty", precision = 16, scale = 2)
open var outputFromProcessQty: Int? = null


+ 8
- 0
src/main/resources/db/changelog/changes/20251125_01_enson/03_altertable_enson.sql 查看文件

@@ -0,0 +1,8 @@
-- liquibase formatted sql
-- changeset enson:altertable_enson

ALTER TABLE `fpsmsdb`.`bom`
DROP COLUMN `ScrapRate`,
DROP COLUMN `AllergicSubstance`,
ADD COLUMN `scrapRate` INT AFTER `isDense`,
ADD COLUMN `allergicSubstances` INT AFTER `scrapRate`;

Loading…
取消
儲存