Browse Source

no message

production
[email protected] 1 month ago
parent
commit
f2fbc5d7dc
4 changed files with 17 additions and 12 deletions
  1. +1
    -7
      src/main/java/com/ffii/fpsms/modules/jobOrder/scheduler/LaserBag2AutoSendScheduler.kt
  2. +1
    -2
      src/main/java/com/ffii/fpsms/modules/jobOrder/service/LaserBag2AutoSendService.kt
  3. +14
    -2
      src/main/java/com/ffii/fpsms/modules/master/service/BomM18ShopBulkPushService.kt
  4. +1
    -1
      src/main/java/com/ffii/fpsms/modules/master/service/BomService.kt

+ 1
- 7
src/main/java/com/ffii/fpsms/modules/jobOrder/scheduler/LaserBag2AutoSendScheduler.kt View File

@@ -25,16 +25,10 @@ class LaserBag2AutoSendScheduler(
return
}
try {
val report = laserBag2AutoSendService.runAutoSend(
laserBag2AutoSendService.runAutoSend(
planStart = LocalDate.now(),
limitPerRun = limitPerRun,
)
logger.info(
"Laser Bag2 scheduler: processed {}/{} job orders for {}",
report.jobOrdersProcessed,
report.jobOrdersFound,
report.planStart,
)
} catch (e: Exception) {
logger.error("Laser Bag2 scheduler failed", e)
}


+ 1
- 2
src/main/java/com/ffii/fpsms/modules/jobOrder/service/LaserBag2AutoSendService.kt View File

@@ -35,9 +35,8 @@ class LaserBag2AutoSendService(
sendsPerJob: Int = defaultSendsPerJob,
delayBetweenSendsMs: Long = defaultDelayBetweenSendsMs,
): LaserBag2AutoSendReport {
val (reachable, laserIp, laserPort) = plasticBagPrinterService.probeLaserBag2Tcp()
val (reachable, _, _) = plasticBagPrinterService.probeLaserBag2Tcp()
if (!reachable) {
logger.warn("Connection failed to the laser print: {} / {}", laserIp, laserPort)
return LaserBag2AutoSendReport(
planStart = planStart,
jobOrdersFound = 0,


+ 14
- 2
src/main/java/com/ffii/fpsms/modules/master/service/BomM18ShopBulkPushService.kt View File

@@ -1,22 +1,29 @@
package com.ffii.fpsms.modules.master.service

import com.ffii.fpsms.m18.model.M18BomShopBatchSyncSummary
import com.ffii.fpsms.modules.common.SettingNames
import com.ffii.fpsms.modules.master.entity.BomRepository
import com.ffii.fpsms.modules.settings.entity.Settings
import com.ffii.fpsms.modules.settings.service.SettingsService
import org.springframework.stereotype.Service

/**
* Calls [BomService.pushBomToM18ShopIfAllowed] for each BOM id via the injected proxied bean
* so `@Transactional` applies per BOM (avoids same-class self-invocation).
*
* BOM shop toggle is read via [settingsService] here (not [BomService]) so callers never hit Kotlin
* `internal` accessors on [BomService] CGLIB proxies, which could leave delegated dependencies null.
*/
@Service
open class BomM18ShopBulkPushService(
private val bomRepository: BomRepository,
private val bomService: BomService,
private val settingsService: SettingsService,
) {

/** Pushes all non-deleted BOMs to M18 when {@link BomService}'s BOM shop sync setting is enabled. */
/** Pushes all non-deleted BOMs to M18 when {@link SettingNames#M18_BOM_SHOP_SYNC_ENABLED} is true. */
open fun pushAllBomsToM18ShopIfAllowed(): M18BomShopBatchSyncSummary {
if (!bomService.isM18BomShopSyncEnabled()) {
if (!isM18BomShopSyncEnabledSetting()) {
return M18BomShopBatchSyncSummary(
totalProcessed = 0,
synced = 0,
@@ -38,4 +45,9 @@ open class BomM18ShopBulkPushService(
skippedBecauseFeatureDisabled = false,
)
}

private fun isM18BomShopSyncEnabledSetting(): Boolean =
settingsService.findByName(SettingNames.M18_BOM_SHOP_SYNC_ENABLED)
.map { Settings.VALUE_BOOLEAN_TRUE == it.value }
.orElse(false)
}

+ 1
- 1
src/main/java/com/ffii/fpsms/modules/master/service/BomService.kt View File

@@ -511,7 +511,7 @@ open class BomService(
return result
}

internal fun isM18BomShopSyncEnabled(): Boolean =
private fun isM18BomShopSyncEnabled(): Boolean =
settingsService.findByName(SettingNames.M18_BOM_SHOP_SYNC_ENABLED)
.map { Settings.VALUE_BOOLEAN_TRUE == it.value }
.orElse(false)


Loading…
Cancel
Save