You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

173 lines
5.6 KiB

  1. server:
  2. servlet:
  3. contextPath: /api
  4. encoding:
  5. charset: UTF-8
  6. enabled: true
  7. force: true
  8. port: 8090
  9. error:
  10. include-message: always
  11. # PostCompletedDn GRN: runs daily at 00:01, processes all POs with receipt date = yesterday.
  12. # Set enabled: false to disable. Optional receiptDate: "yyyy-MM-dd" overrides for testing only.
  13. # m18Grn.createEnabled: M18 GRN PUT/create — false outside production so UAT/dev never posts GRNs.
  14. # m18Sync: M18 cron jobs for PO, DO1, DO2, DO1 catch-up, BOM→M18 udfBomForShop, master data — false outside production (manual /trigger/* still works except do1-catchup).
  15. truck:
  16. lane:
  17. schedule:
  18. enabled: true
  19. cron: "0 * * * * *"
  20. scheduler:
  21. m18Sync:
  22. enabled: false
  23. m18Grn:
  24. createEnabled: false
  25. postCompletedDnGrn:
  26. enabled: false
  27. # receiptDate: # leave unset for production (uses yesterday)
  28. grnCodeSync:
  29. enabled: false # set true in prod; backfills grn_code from M18 GET /root/api/read/an
  30. # Lookback: created from start of (today − N days) through now, missing grn_code. E.g. 4 = last 4 days + today.
  31. syncOffsetDays: 0
  32. inventoryLotExpiry:
  33. enabled: true
  34. # Job order: at 00:00:15 daily, process JOs whose planStart was yesterday (hide or reschedule).
  35. jo:
  36. planStart:
  37. enabled: true
  38. # One-time DO1 catch-up jobs (production only — requires scheduler.m18Sync.enabled=true in application-prod.yml).
  39. do1CatchUp:
  40. enabled: false
  41. do1CatchUp2:
  42. enabled: false
  43. # SMS alerts when M18 PO/DO1/DO2/master-data sync looks wrong (see SchedulerSyncAlertService).
  44. sync-alert:
  45. enabled: ${SYNC_ALERT_ENABLED:false}
  46. check-cron: "0 */15 * * * *"
  47. sms:
  48. enabled: false
  49. provider: log # WhatsApp/Twilio off; use email below
  50. channel: whatsapp
  51. account-sid: ${TWILIO_ACCOUNT_SID:}
  52. auth-token: ${TWILIO_AUTH_TOKEN:}
  53. from-number: ${TWILIO_FROM_NUMBER:}
  54. to-numbers: ""
  55. content-sid: ${TWILIO_WHATSAPP_CONTENT_SID:}
  56. email:
  57. enabled: ${SYNC_ALERT_EMAIL_ENABLED:true}
  58. to-addresses: "[email protected],[email protected]"
  59. do1:
  60. min-records-processed: 400
  61. grace-minutes-after-schedule: 30
  62. presence:
  63. grace-minutes-after-schedule: 60
  64. # Nav: PO stock_in_line pending/receiving within last N days (see ProductProcessService for 工單 QC/上架:今日+昨日).
  65. fpsms:
  66. purchase-stock-in-alert:
  67. lookback-days: 7
  68. # Device + printer monitoring: enable only on production profile (application-prod*.yml).
  69. monitoring:
  70. enabled: false
  71. # Delete device/printer connectivity events older than this (daily job).
  72. event-retention-days: 30
  73. retention-purge-cron: "0 0 3 * * *"
  74. client-presence:
  75. offline-threshold-sec: 90
  76. idle-threshold-sec: 300
  77. history-sample-sec: 60
  78. history-max-range-days: 30
  79. offline-scan-interval-ms: 60000
  80. printer-monitor:
  81. scan-interval-ms: 120000
  82. connect-timeout-ms: 3000
  83. default-port: 9100
  84. offline-event-sample-sec: 300
  85. history-max-range-days: 30
  86. label-printer-monitor:
  87. zebra-odometer-enabled: true
  88. connect-timeout-ms: 3000
  89. zebra-query-timeout-ms: 2500
  90. default-port: 9100
  91. check-interval-ms: 120000
  92. history-max-range-days: 30
  93. spring:
  94. servlet:
  95. multipart:
  96. max-file-size: 500MB
  97. max-request-size: 600MB
  98. jpa:
  99. hibernate:
  100. naming:
  101. physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
  102. database-platform: org.hibernate.dialect.MySQL8Dialect
  103. properties:
  104. hibernate:
  105. dialect:
  106. storage_engine: innodb
  107. # JWT: access token expiry and refresh token expiry. Frontend should call /refresh-token before access token expires.
  108. # Signing key must be STABLE across server restarts (do not use a random key per boot). Override with env JWT_SECRET in production.
  109. jwt:
  110. expiration-minutes: 14400 # access token: 10 days (default); override in application-prod for shorter session
  111. refresh-expiration-days: 30 # refresh token validity (days)
  112. secret: ${JWT_SECRET:fpsms-dev-jwt-signing-secret-change-for-production-use-long-random-JWT_SECRET}
  113. logging:
  114. config: 'classpath:log4j2.yml'
  115. # Optional NGPCL gateway: receives the same bytes as /plastic/download-onpack-qr-text (Content-Type: application/zip).
  116. # Leave empty to disable; set NGPCL_PUSH_URL in production if you expose an HTTP receiver for the lemon OnPack ZIP.
  117. ngpcl:
  118. push-url: ${NGPCL_PUSH_URL:}
  119. # Laser Bag2 (/laserPrint) auto-send: same as listing + TCP send using DB LASER_PRINT.host / port / itemCodes.
  120. # Scheduler is off by default. Service enforces first matching job order only (limit-per-run values >1 are ignored).
  121. # sends-per-job: TCP payloads per job order per tick (1 = single send; each send may retry once on failure inside sendLaserBag2Job).
  122. laser:
  123. bag2:
  124. auto-send:
  125. enabled: false
  126. interval-ms: 60000
  127. limit-per-run: 1
  128. sends-per-job: 1
  129. delay-between-sends-ms: 3000
  130. bom:
  131. import:
  132. temp-dir: ${java.io.tmpdir}/fpsms-bom-import
  133. m18:
  134. config:
  135. grant-type: password
  136. client-id: M2Y1OGYxMmQtZDRiOS00OTA4LTgyNTktZDRkNzEzNWVkMzRm
  137. client-secret: M2Y2YjQzYzQtZTc2Mi00OTFhLTkwYmItYmJhMzFjZjEyYmY5
  138. username: testingMTMS
  139. password: db25f2fc14cd2d2b1e7af307241f548fb03c312a
  140. base-url: https://toa.m18saas.com/jsf/rfws
  141. base-url-uat: https://toauat.m18saas.com/jsf/rfws
  142. base-password: qwer1234
  143. supplier:
  144. shop-po: P06, P07
  145. oem-po: T62
  146. supplier-not:
  147. material-po: P06, P07
  148. beId:
  149. toa: 1
  150. pf: 27
  151. pp: 29
  152. seriesId:
  153. pp: 26
  154. pf: 33
  155. fa: 2
  156. fb: 3
  157. fc: 4
  158. fd: 5
  159. ff: 6
  160. sc: 27
  161. se: 28
  162. sf: 70
  163. sr: 29