Skip to main content

AVATAR Integrasi Module With MAGIC

πŸ”— Akses Aplikasi​

Berikut adalah alamat akses cepat untuk environment aplikasi:

EnvironmentURL AksesDeskripsi
πŸš€ Productionhttps://magic.kalbenutritionals.comEnvironment utama pengguna
πŸ§ͺ Developmenthttps://magicdev.kalbenutritionals.web.idTesting & staging area

Ringkasan​

AVATAR adalah modul integrasi dari ERPS untuk sistem produksi (MES/OEE/SMARTQA/SMARTMTN/dsb) dengan fitur utama:

  • Health check integrasi via Hangfire job.
  • Dumping aktivitas PM dan kalkulasi changeover item berikutnya.
  • Lookup katalog metode/material changeover serta detail biaya per line produksi.

Peta Folder (khusus AVATAR)​

Arsitektur Singkat​

  • Controller memaparkan endpoint REST berversi (api/{version}/Avatar/...).
  • Services memuat logika: AVATARGeneralServices (health check) dan AVATARDumpingServices (PM activity, changeover, katalog CO).
  • DAL menggunakan AVATARContext (EF Core, SQL Server) dengan koneksi AVATARConnection yang didekripsi via AppServicesHelper.
  • Hangfire: dipakai untuk enqueue/recurring job CheckHelthAvatar.

Endpoint Utama​

  • GET /api/v1.0/Avatar/HealthCheck?type=Trigger|now
    • Trigger recurring job hourly (type=Trigger) atau enqueue sekali.
  • POST /api/v1.0/Avatar/PMActivity
    • Body: AvatarFormRequest { productionLine, fromDate }
    • Kembalikan list MRequestForm yang approved & aktif pada rentang tanggal.
  • POST /api/v1.0/Avatar/ChangeOverNextItem
    • Body: AvatarChangeoverRequest { machineId, operatorId, timestamp, productionLine, currentProduction, nextProduction }
    • Respon: NextChangeover { metode, material, qty, duration, costWaktu, costMaterial, costTotal, timestamp } atau error 1000/1001/1002/1003 sesuai validasi.
  • POST /api/v1.0/Avatar/ListMetodeCO
    • Body: DataTableRequestPayload (server-side paging/filter/sort).
    • Respon: GeneralObjectResponse dengan data Metode CO aktif.
  • POST /api/v1.0/Avatar/ListMaterialCO
    • Sama seperti di atas untuk Material CO aktif.
  • POST /api/v1.0/Avatar/ListPLCOD
    • Body: DataTableRequestPayload.
    • Respon: GeneralObjectResponse dengan data gabungan metode/material/line (projected ke AvatarPLCODResponse).

DTO Singkat​

  • AvatarFormRequest: ProductionLine, FromDate.
  • AvatarChangeoverRequest: metadata pemanggil + productionLine + currentProduction/nextProduction (boNumber, itemCode).
  • AvatarResponse.NextChangeover: hasil kalkulasi changeover (kode/deskripsi metode & material, qty, durasi, biaya).
  • AvatarPLCODResponse: detail biaya changeover per line/metode/material (digunakan ListPLCOD).

Alur ChangeOverNextItem (ringkas)​

  1. Validasi item FROM/TO ada dan punya mapping gramasi/variant.
  2. Ambil metode CO dari MProductVariantMetodeChangeOver untuk kombinasi variant FROM→TO.
  3. Ambil material CO next product (MMaterialConextProduct β†’ MMaterialChangeOver).
  4. Ambil detail PLCOD per line (MProductionLineChangeOverDetail) untuk metode+material+line.
  5. Hitung respon (qty, durasi, biaya waktu/material/total, timestamp sekarang).

Database & Konfigurasi​

  • Koneksi: name AVATARConnection (dekripsi Rijndael) diatur via AppServicesHelper / appsettings.
  • EF Core dengan NoTrackingWithIdentityResolution; command timeout 100 menit.
  • DbSet utama: MItem, MRequestForm, MProductionLineChangeOverDetail, MMetodeChangeOver, MMaterialChangeOver, MMaterialConextProduct, MProductVariant*, MProductionLine, MVariant*, TrRps*, MShift.

Dependency Penting​

  • Hangfire (background/recurring job) – periksa dashboard untuk log HealthCheck_Avatar.
  • IHttpClientFactory – untuk ping kesehatan ke https://erps.kalbenutritionals.com/.
  • ILogger – untuk logging proses changeover dan error.