Files
bssapp/svc/models/production_product_costing.go
2026-05-20 21:26:29 +03:00

417 lines
17 KiB
Go

package models
type ProductionNoCostProductRow struct {
UretimSekli string `json:"UretimSekli"`
UrtSiparisNo string `json:"nUrtSiparisNo"`
IslemTarihi string `json:"dteIslemTarihi"`
FirmaKodu string `json:"FirmaKodu"`
FirmaAdi string `json:"FirmaAdi"`
SonIsEmriVeren string `json:"SonIsEmriVeren"`
ModelAdi string `json:"sAdi"`
Kodu string `json:"sKodu"`
SKullaniciAdi string `json:"sKullaniciAdi"`
SKullaniciGunc string `json:"sKullaniciAdiGunc"`
MMiktarG float64 `json:"lMMiktar_G"`
MModelKodu string `json:"sMModelKodu"`
}
type ProductionHasCostProductRow struct {
UretimSekli string `json:"UretimSekli"`
NOnMLNo string `json:"nOnMLNo"`
UrunKodu string `json:"UrunKodu"`
UrunAdi string `json:"UrunAdi"`
Tarihi string `json:"Tarihi"`
DteKayitTarihi string `json:"dteKayitTarihi"`
SKullaniciAdi string `json:"sKullaniciAdi"`
LTutarTL float64 `json:"lTutarTL"`
LTutarUSD float64 `json:"lTutarUSD"`
LTutarEURO float64 `json:"lTutarEURO"`
DteGuncellemeTarihi string `json:"dteGuncellemeTarihi"`
SGuncellemeKullaniciAdi string `json:"sGuncellemeKullaniciAdi"`
NUrtReceteID string `json:"nUrtReceteID"`
SAciklama string `json:"sAciklama"`
SonSiparisTarihi string `json:"SonSiparisTarihi"`
MaliyetDurumu string `json:"MaliyetDurumu"`
}
type ProductionHasCostHistoryRow struct {
NOnMLNo string `json:"nOnMLNo"`
UrunKodu string `json:"UrunKodu"`
UrunAdi string `json:"UrunAdi"`
Tarihi string `json:"Tarihi"`
SKullaniciAdi string `json:"sKullaniciAdi"`
LTutarUSD float64 `json:"lTutarUSD"`
LTutarTL float64 `json:"lTutarTL"`
LTutarEURO float64 `json:"lTutarEURO"`
LTutarGBP float64 `json:"lTutarGBP"`
SDovizCinsi string `json:"sDovizCinsi"`
LTutarDoviz float64 `json:"lTutarDoviz"`
DteGuncellemeTarihi string `json:"dteGuncellemeTarihi"`
SGuncellemeKullaniciAdi string `json:"sGuncellemeKullaniciAdi"`
NUrtReceteID string `json:"nUrtReceteID"`
SAciklama string `json:"sAciklama"`
}
type ProductionType struct {
ID string `json:"id"`
Aciklama string `json:"aciklama"`
}
type ProductionHasCostDetailGroupItem struct {
NOnMLNo string `json:"nOnMLNo"`
NOnMLDetNo string `json:"nOnMLDetNo"`
NHammaddeTuruNo string `json:"nHammaddeTuruNo"`
NUrtMTBolumID string `json:"nUrtMTBolumID"`
SKodu string `json:"sKodu"`
SAciklama string `json:"sAciklama"`
SRenk string `json:"sRenk"`
SBeden string `json:"sBeden"`
SAciklama2 string `json:"sAciklama2"`
LMiktar float64 `json:"lMiktar"`
LFiyat float64 `json:"lFiyat"`
LTutar float64 `json:"lTutar"`
SFiyatTipi string `json:"sFiyatTipi"`
SDovizCinsi string `json:"sDovizCinsi"`
LDovizKuru float64 `json:"lDovizKuru"`
LDovizFiyati float64 `json:"lDovizFiyati"`
FiyatGirilen *float64 `json:"fiyat_girilen"`
FiyatDoviz string `json:"fiyat_doviz"`
MaliyeteDahil bool `json:"maliyete_dahil"`
CMPriceTypeID *int `json:"cm_price_type_id"`
USDTutar float64 `json:"usdTutar"`
EURTutar float64 `json:"eurTutar"`
GBPTutar float64 `json:"gbpTutar"`
SBirim string `json:"sBirim"`
SHammaddeTuruAdi string `json:"sHammaddeTuruAdi"`
SParcaAdi string `json:"sParcaAdi"`
}
type ProductionHasCostDetailGroup struct {
SAciklama3 string `json:"sAciklama3"`
TotalTutar float64 `json:"totalTutar"`
TotalUSDTutar float64 `json:"totalUSDTutar"`
Items []ProductionHasCostDetailGroupItem `json:"items"`
}
type ProductionHasCostDetailHeader struct {
UretimiYapanFirma string `json:"UretimiYapanFirma"`
SonIsEmriVeren string `json:"SonIsEmriVeren"`
NOnMLNo string `json:"nOnMLNo"`
UrunKodu string `json:"UrunKodu"`
UrunAdi string `json:"UrunAdi"`
UrunIlkGrubu string `json:"UrunIlkGrubu"`
UrunAnaGrubu string `json:"UrunAnaGrubu"`
UrunAltGrubu string `json:"UrunAltGrubu"`
UretimSekliID string `json:"UretimSekliID"`
UretimSekli string `json:"UretimSekli"`
FirmaKodu string `json:"FirmaKodu"`
NFirmaID int `json:"nFirmaID"`
DteKayitTarihi string `json:"dteKayitTarihi"`
SKullaniciAdi string `json:"sKullaniciAdi"`
LTutarTL float64 `json:"lTutarTL"`
LTutarUSD float64 `json:"lTutarUSD"`
LTutarEURO float64 `json:"lTutarEURO"`
LTutarGBP float64 `json:"lTutarGBP"`
SDovizCinsi string `json:"sDovizCinsi"`
LTutarDoviz float64 `json:"lTutarDoviz"`
DteGuncellemeTarihi string `json:"dteGuncellemeTarihi"`
SGuncellemeKullaniciAdi string `json:"sGuncellemeKullaniciAdi"`
NUrtReceteID string `json:"nUrtReceteID"`
}
// ============================================================
// Save (INSERT/UPDATE/DELETE/UPSERT) spUrtOnMLMas + spUrtOnMLMasDet
// ============================================================
type ProductionProductCostingOnMLSaveHeader struct {
NOnMLNo int `json:"n_onml_no"`
UrunKodu string `json:"urun_kodu"`
UrunAdi string `json:"urun_adi"`
MaliyetTarihi string `json:"maliyet_tarihi"` // YYYY-MM-DD
NUrtReceteID int `json:"n_urt_recete_id"`
UretimSekliID int `json:"uretim_sekli_id"`
SAciklama string `json:"s_aciklama"`
FirmaKodu string `json:"firma_kodu"`
NFirmaID int `json:"n_firma_id"`
}
type ProductionProductCostingOnMLSaveDetailUpsertRow struct {
NOnMLDetNo int `json:"n_onml_det_no"`
NHammaddeTuruNo int `json:"n_hammadde_turu_no"`
NUrtMTBolumID int `json:"n_urt_mt_bolum_id"`
SKodu string `json:"s_kodu"`
SAciklama string `json:"s_aciklama"`
SRenk string `json:"s_renk"`
SBeden string `json:"s_beden"`
SAciklama2 string `json:"s_aciklama2"`
SBirim string `json:"s_birim"`
LMiktar float64 `json:"l_miktar"`
FiyatGirilen float64 `json:"fiyat_girilen"`
FiyatDoviz string `json:"fiyat_doviz"`
MaliyeteDahil int `json:"maliyete_dahil"`
CMPriceTypeID *int `json:"cm_price_type_id"`
SAciklama3 string `json:"s_aciklama3"`
}
type ProductionProductCostingOnMLSaveDetailDeleteRow struct {
NOnMLDetNo int `json:"n_onml_det_no"`
}
type ProductionProductCostingOnMLSaveDetail struct {
Upserts []ProductionProductCostingOnMLSaveDetailUpsertRow `json:"upserts"`
Deletes []ProductionProductCostingOnMLSaveDetailDeleteRow `json:"deletes"`
}
type ProductionProductCostingOnMLSaveRequest struct {
DetailSource string `json:"detail_source"`
Header ProductionProductCostingOnMLSaveHeader `json:"header"`
Detail ProductionProductCostingOnMLSaveDetail `json:"detail"`
}
type ProductionProductCostingOnMLSaveResponse struct {
NOnMLNo int `json:"n_onml_no"`
}
type ProductionProductCostingOnMLDeleteRequest struct {
NOnMLNo int `json:"n_onml_no"`
}
// ============================================================
// Default quantities (URETIM): mk_MaliyetParcaEslestirme_vmiktarlar
// ============================================================
type ProductionProductCostingDefaultQtyRow struct {
NHammaddeTuruNo int `json:"nHammaddeTuruNo"`
SAciklama string `json:"sAciklama"`
LDefaultMiktar float64 `json:"lDefaultMiktar"`
DteCalcTarihi string `json:"dteCalcTarihi"`
BAktif bool `json:"bAktif"`
}
type ProductionProductCostingDefaultQtyUpdateRequest struct {
NHammaddeTuruNo int `json:"nHammaddeTuruNo"`
LDefaultMiktar float64 `json:"lDefaultMiktar"`
BAktif *bool `json:"bAktif"`
}
type ProductionProductCostingDefaultQtyBulkUpdateRequest struct {
Items []ProductionProductCostingDefaultQtyUpdateRequest `json:"items"`
}
type ProductionProductCostingDefaultQtyCalcRequest struct {
NHammaddeTuruNo int `json:"nHammaddeTuruNo"`
TopN int `json:"topN"`
}
type ProductionProductCostingDefaultQtyCalcResponse struct {
NHammaddeTuruNo int `json:"nHammaddeTuruNo"`
LDefaultMiktar float64 `json:"lDefaultMiktar"`
NSampleCount int `json:"nSampleCount"`
}
type ProductionProductCostingDefaultQtyLookupRequest struct {
NHammaddeTuruNos []int `json:"nHammaddeTuruNos"`
}
type ProductionProductCostingDefaultQtyLookupItem struct {
NHammaddeTuruNo int `json:"nHammaddeTuruNo"`
SAciklama string `json:"sAciklama"`
LDefaultMiktar float64 `json:"lDefaultMiktar"`
}
type ProductionProductCostingLastOnMLDetLookupRequest struct {
NHammaddeTuruNos []int `json:"nHammaddeTuruNos"`
BeforeDate string `json:"before_date"` // YYYY-MM-DD (optional)
ExcludeOnMLNo int `json:"exclude_onml_no"` // optional
NFirmaID int `json:"n_firma_id"` // optional
OnlyICode bool `json:"only_i_code"` // optional: restrict to sKodu like 'I.%'
}
type ProductionProductCostingLastOnMLDetLookupItem struct {
NHammaddeTuruNo int `json:"nHammaddeTuruNo"`
SKodu string `json:"sKodu"`
SAciklama string `json:"sAciklama"`
SBirim string `json:"sBirim"`
FiyatDoviz string `json:"fiyat_doviz"`
FiyatGirilen float64 `json:"fiyat_girilen"`
IsSameFirma bool `json:"is_same_firma"`
}
type ProductionProductCostingHammaddeByNosRequest struct {
NHammaddeTuruNos []int `json:"nHammaddeTuruNos"`
}
type ProductionProductCostingHammaddeByNosItem struct {
NHammaddeTuruNo int `json:"nHammaddeTuruNo"`
SAciklama string `json:"sAciklama"`
MTUrtMTBolumID int `json:"mtUrtMTBolumID"`
SParcaAdi string `json:"sParcaAdi"`
}
type ProductionHasCostDetailExchangeRates struct {
RateDate string `json:"rateDate"`
TRYRate float64 `json:"tryRate"`
USDRate float64 `json:"usdRate"`
EURRate float64 `json:"eurRate"`
GBPRate float64 `json:"gbpRate"`
}
type ProductionHasCostDetailEditorOption struct {
Kind string `json:"kind"`
Value string `json:"value"`
Label string `json:"label"`
NStokID string `json:"nStokID"`
NHammaddeTuruNo string `json:"nHammaddeTuruNo"`
SHammaddeTuruAdi string `json:"sHammaddeTuruAdi"`
SAciklama3 string `json:"sAciklama3"`
MTUrtMTBolumID int `json:"mtUrtMTBolumID"`
SKodu string `json:"sKodu"`
SAciklama string `json:"sAciklama"`
SModel string `json:"sModel"`
SBirim string `json:"sBirim"`
ColorCode string `json:"colorCode"`
ColorDescription string `json:"colorDescription"`
SParcaAdi string `json:"sParcaAdi"`
}
type ProductionHasCostDetailPriceLookupItem struct {
RowKey string `json:"__rowKey"`
NOnMLNo string `json:"n_onml_no"`
NOnMLDetNo string `json:"n_onml_det_no"`
NHammaddeTuruNo string `json:"n_hammadde_turu_no"`
SKodu string `json:"s_kodu"`
SAciklama string `json:"s_aciklama"`
SRenk string `json:"s_renk"`
ColorCode string `json:"color_code"`
ColorDescription string `json:"color_description"`
ItemDim1Code string `json:"item_dim1_code"`
ItemDim1Description string `json:"item_dim1_description"`
SBirim string `json:"s_birim"`
LMiktar float64 `json:"l_miktar"`
FiyatGirilen float64 `json:"fiyat_girilen"`
FiyatDoviz string `json:"fiyat_doviz"`
MaliyeteDahil int `json:"maliyete_dahil"`
CMPriceTypeID *int `json:"cm_price_type_id"`
}
type ProductionHasCostDetailBulkPriceRequest struct {
NOnMLNo string `json:"n_onml_no"`
UrunKodu string `json:"urun_kodu"`
NUrtReceteID string `json:"n_urt_recete_id"`
MaliyetTarihi string `json:"maliyet_tarihi"`
Items []ProductionHasCostDetailPriceLookupItem `json:"items"`
}
type ProductionHasCostDetailBulkPriceRow struct {
RowKey string `json:"__rowKey"`
NOnMLDetNo string `json:"nOnMLDetNo"`
NHammaddeTuruNo string `json:"nHammaddeTuruNo"`
SKodu string `json:"sKodu"`
ColorCode string `json:"ColorCode"`
ColorDescription string `json:"ColorDescription"`
ItemDim1Code string `json:"ItemDim1Code"`
ItemDim1Description string `json:"ItemDim1Description"`
FiyatGirilen float64 `json:"fiyat_girilen"`
FiyatDoviz string `json:"fiyat_doviz"`
PriceType string `json:"priceType"`
Tarih string `json:"Tarih"`
FaturaKodu string `json:"FaturaKodu"`
MasrafKodu string `json:"MasrafKodu"`
MasrafDetay string `json:"MasrafDetay"`
}
type ProductionHasCostDetailPurchaseHistoryRow struct {
SourceType string `json:"sourceType"`
Tarih string `json:"Tarih"`
FaturaKodu string `json:"FaturaKodu"`
FirmaKodu string `json:"FirmaKodu"`
FirmaAciklama string `json:"FirmaAciklama"`
MasrafKodu string `json:"MasrafKodu"`
MasrafDetay string `json:"MasrafDetay"`
ColorCode string `json:"ColorCode"`
ColorDescription string `json:"ColorDescription"`
ItemDim1Code string `json:"ItemDim1Code"`
ItemDim1Description string `json:"ItemDim1Description"`
Miktar float64 `json:"Miktar"`
BIRIM string `json:"BIRIM"`
EvrakFiyat float64 `json:"EvrakFiyat"`
EvrakTutar float64 `json:"EvrakTutar"`
EvrakDoviz string `json:"EvrakDoviz"`
PriceType string `json:"priceType"`
}
type ProductionHasCostDetailRecipeHistoryRow struct {
SourceType string `json:"sourceType"`
DteIslemTarihi string `json:"dteIslemTarihi"`
NOnMLNo string `json:"nOnMLNo"`
FirmaKodu string `json:"FirmaKodu"`
FirmaAciklama string `json:"FirmaAciklama"`
SKodu string `json:"sKodu"`
SAciklama string `json:"sAciklama"`
SRenk string `json:"sRenk"`
LMiktar float64 `json:"lMiktar"`
SBirim string `json:"sBirim"`
LDovizFiyati float64 `json:"lDovizFiyati"`
LDovizTutari float64 `json:"lDovizTutari"`
USD string `json:"USD"`
PriceType string `json:"priceType"`
DUMMY string `json:"DUMMY"`
}
type ProductionHasCostDetailLineHistoryResponse struct {
PurchaseRows []ProductionHasCostDetailPurchaseHistoryRow `json:"purchaseRows"`
RecipeRows []ProductionHasCostDetailRecipeHistoryRow `json:"recipeRows"`
}
type ProductionProductCostingMTBolumMappingRow struct {
ID int `json:"id"`
UrunAnaGrubu string `json:"urunAnaGrubu"`
UrunAltGrubu string `json:"urunAltGrubu"`
NUrtMTBolumID int `json:"nUrtMTBolumID"`
MTBolumAdi string `json:"mtBolumAdi"`
BAktif bool `json:"bAktif"`
DteIslem string `json:"dteIslemTarihi"`
SKullaniciAdi string `json:"sKullaniciAdi"`
}
type ProductionProductCostingMTBolumMappingUpsertRequest struct {
UrunAnaGrubu string `json:"urunAnaGrubu"`
UrunAltGrubu string `json:"urunAltGrubu"`
NUrtMTBolumID int `json:"nUrtMTBolumID"`
BAktif bool `json:"bAktif"`
}
// NEW: Maliyet Parca Eslestirme (Ana/Alt Grup + MTBolum + cok secmeli HammaddeTurleri)
type ProductionProductCostingParcaMappingRow struct {
ID int `json:"id"`
UrunIlkGrubu string `json:"urunIlkGrubu"`
UrunAnaGrubu string `json:"urunAnaGrubu"`
UrunAltGrubu string `json:"urunAltGrubu"`
NUrtMTBolumID int `json:"nUrtMTBolumID"`
ParcaBolumAdi string `json:"parcaBolumAdi"`
NHammaddeTurleri []string `json:"nHammaddeTurleri"`
BAktif bool `json:"bAktif"`
DteIslem string `json:"dteIslemTarihi"`
SKullaniciAdi string `json:"sKullaniciAdi"`
}
type ProductionProductCostingParcaMappingUpsertRequest struct {
UrunIlkGrubu string `json:"urunIlkGrubu"`
UrunAnaGrubu string `json:"urunAnaGrubu"`
UrunAltGrubu string `json:"urunAltGrubu"`
NUrtMTBolumID int `json:"nUrtMTBolumID"`
NHammaddeTurleri []int `json:"nHammaddeTurleri"`
BAktif bool `json:"bAktif"`
}
type ProductionProductCostingLookupOption struct {
Value string `json:"value"`
Label string `json:"label"`
}
type ProductionProductCostingAnaAltComboRow struct {
UrunIlkGrubu string `json:"urunIlkGrubu"`
UrunAnaGrubu string `json:"urunAnaGrubu"`
UrunAltGrubu string `json:"urunAltGrubu"`
}