Merge remote-tracking branch 'origin/master'

This commit is contained in:
M_Kececi
2026-03-03 10:16:05 +03:00
parent ecf3a8bd07
commit ce31aff645
26 changed files with 2013 additions and 965 deletions

View File

@@ -15,30 +15,59 @@ import (
func GetStatementAging(params models.StatementAgingParams) ([]map[string]interface{}, error) {
accountCode := normalizeMasterAccountCode(params.AccountCode)
if strings.TrimSpace(accountCode) == "" {
return nil, fmt.Errorf("accountcode is required")
}
if strings.TrimSpace(params.EndDate) == "" {
return nil, fmt.Errorf("enddate is required")
}
useType2, useType3 := resolveUseTypes(params.Parislemler)
endDate, _ := time.Parse("2006-01-02", strings.TrimSpace(params.EndDate))
endDateText := strings.TrimSpace(params.EndDate)
if endDateText == "" {
endDateText = time.Now().Format("2006-01-02")
}
endDate, _ := time.Parse("2006-01-02", endDateText)
cariFilter := ""
if strings.TrimSpace(accountCode) != "" {
cariFilter = strings.TrimSpace(accountCode)
}
rows, err := db.MssqlDB.Query(`
EXEC dbo.SP_FIFO_MATCH_FINAL
@Cari8 = @Cari8,
@SonTarih = @SonTarih,
@UseType2 = @UseType2,
@UseType3 = @UseType3;
SELECT TOP (100)
Cari8 = LEFT(LTRIM(RTRIM(CariKodu)), 8),
CariDetay = LTRIM(RTRIM(CariKodu)),
FaturaCari = LTRIM(RTRIM(CariKodu)),
OdemeCari = LTRIM(RTRIM(CariKodu)),
FaturaRef = CAST(NULL AS NVARCHAR(50)),
OdemeRef = CAST(NULL AS NVARCHAR(50)),
FaturaTarihi = CAST(NULL AS DATE),
OdemeTarihi = CAST(NULL AS DATE),
OdemeDocDate = CAST(NULL AS DATE),
EslesenTutar = CAST(Bakiye AS DECIMAL(18,2)),
GunSayisi = CAST(Vade_Gun AS DECIMAL(18,2)),
GunSayisi_DocDate = CAST(Vade_BelgeTarihi_Gun AS DECIMAL(18,2)),
Aciklama = CAST('AcikKalem' AS NVARCHAR(30)),
DocCurrencyCode = LTRIM(RTRIM(CariDoviz)),
PislemTipi,
SirketKodu,
CurrAccTypeCode,
Bakiye,
Vade_Gun,
Vade_BelgeTarihi_Gun,
SonTarih,
HesaplamaTarihi
FROM dbo.CARI_BAKIYE_GUN_CACHE
WHERE
(
(@UseType2 = 1 AND PislemTipi = '1_2')
OR
(@UseType3 = 1 AND PislemTipi = '1_3')
)
AND (@CariFilter = '' OR LTRIM(RTRIM(CariKodu)) LIKE @CariFilter + '%')
ORDER BY CariKodu, CariDoviz, PislemTipi;
`,
sql.Named("Cari8", accountCode),
sql.Named("SonTarih", params.EndDate),
sql.Named("UseType2", useType2),
sql.Named("UseType3", useType3),
sql.Named("CariFilter", cariFilter),
)
if err != nil {
return nil, fmt.Errorf("SP_FIFO_MATCH_FINAL query error: %w", err)
return nil, fmt.Errorf("CARI_BAKIYE_GUN_CACHE query error: %w", err)
}
defer rows.Close()