public static async Task <int> UjBizonylatMintaAlapjanAsync(ossContext context, string sid, int bizonylatKod, BizonylatTipus bizonylatTipus) { SessionBll.Check(context, sid); await CsoportDal.JogeAsync(context, JogKod.BIZONYLATMOD); var entity = await BizonylatDal.GetComplexAsync(context, bizonylatKod); var complexDto = new BizonylatComplexDto { Dto = ObjectUtils.Convert <Models.Bizonylat, BizonylatDto>(entity), LstTetelDto = new List <BizonylatTetelDto>(), LstAfaDto = new List <BizonylatAfaDto>(), LstTermekdijDto = new List <BizonylatTermekdijDto>() }; complexDto.Dto.Bizonylatkod = 0; complexDto.Dto.Bizonylattipuskod = bizonylatTipus.GetHashCode(); complexDto.Dto.Bizonylatszam = null; complexDto.Dto.Nyomtatottpeldanyokszama = 0; foreach (var le in entity.Bizonylattetel) { var l = ObjectUtils.Convert <Models.Bizonylattetel, BizonylatTetelDto>(le); l.Bizonylatkod = 0; complexDto.LstTetelDto.Add(l); } //Save: az Áfa tételek törlődnek és újraszámítódnak return(await SaveAsync(context, sid, complexDto)); }
public static async Task <BizonylatComplexDto> GetComplexAsync(ossContext context, string sid, int bizonylatKod) { SessionBll.Check(context, sid); await CsoportDal.JogeBizonylatAsync(context); var entitycomplex = await BizonylatDal.GetComplexAsync(context, bizonylatKod); var dto = ObjectUtils.Convert <Models.Bizonylat, BizonylatDto>(entitycomplex); var result = new BizonylatComplexDto { Dto = CalcCim(dto), LstTetelDto = new List <BizonylatTetelDto>(), LstAfaDto = new List <BizonylatAfaDto>(), LstTermekdijDto = new List <BizonylatTermekdijDto>() }; foreach (var bt in entitycomplex.Bizonylattetel.OrderBy(s => s.Bizonylattetelkod)) { result.LstTetelDto.Add(ObjectUtils.Convert <Models.Bizonylattetel, BizonylatTetelDto>(bt)); } foreach (var ba in entitycomplex.Bizonylatafa.OrderBy(s => s.Afakulcs)) { result.LstAfaDto.Add(ObjectUtils.Convert <Models.Bizonylatafa, BizonylatAfaDto>(ba)); } foreach (var btd in entitycomplex.Bizonylattermekdij.OrderBy(s => s.Termekdijkt)) { result.LstTermekdijDto.Add(ObjectUtils.Convert <Models.Bizonylattermekdij, BizonylatTermekdijDto>(btd)); } return(result); }
public static async Task <BizonylatComplexDto> CreateNewComplexAsync(ossContext context, string sid) { SessionBll.Check(context, sid); await CsoportDal.JogeAsync(context, JogKod.BIZONYLATMOD); var entityParticio = await ParticioDal.GetAsync(context); var szc = JsonConvert.DeserializeObject <SzallitoConf>(entityParticio.Szallito); var result = new BizonylatComplexDto { Dto = new BizonylatDto { Szallitonev = szc.Nev, Szallitoiranyitoszam = szc.Iranyitoszam, Szallitohelysegnev = szc.Helysegnev, Szallitoutcahazszam = szc.Utcahazszam, Szallitobankszamla1 = szc.Bankszamla1, Szallitobankszamla2 = szc.Bankszamla2, Szallitoadotorzsszam = szc.Adotorzsszam, Szallitoadoafakod = szc.Adoafakod, Szallitoadomegyekod = szc.Adomegyekod, Bizonylatkelte = DateTime.Today, Teljesiteskelte = DateTime.Today, Fizetesihatarido = DateTime.Today, Szallitasihatarido = DateTime.Today, Kifizetesrendben = false, Kiszallitva = false, Arfolyam = 1, Ezstornozott = false, Ezstornozo = false, Netto = 0, Afa = 0, Brutto = 0, Termekdij = 0, Nyomtatottpeldanyokszama = 0 } }; const string penznem = "HUF"; var lstPenznem = await PenznemDal.ReadAsync(context, penznem); if (lstPenznem.Count == 1) { result.Dto.Penznemkod = lstPenznem[0].Penznemkod; result.Dto.Penznem = penznem; } result.LstTetelDto = new List <BizonylatTetelDto>(); result.LstAfaDto = new List <BizonylatAfaDto>(); result.LstTermekdijDto = new List <BizonylatTermekdijDto>(); return(result); }
public static async Task <BizonylatComplexDto> SumEsAfaEsTermekdijAsync(ossContext context, string sid, BizonylatComplexDto dto) { SessionBll.Check(context, sid); await CsoportDal.JogeAsync(context, JogKod.BIZONYLATMOD); BizonylatUtils.SumEsAfaEsTermekdij(dto.Dto, dto.LstTetelDto, dto.LstAfaDto, dto.LstTermekdijDto); return(dto); }
public async Task <Int32Result> Save([FromQuery] string sid, [FromBody] BizonylatComplexDto par) { var result = new Int32Result(); using (var tr = await _context.Database.BeginTransactionAsync()) try { result.Result = await BizonylatBll.SaveAsync(_context, sid, par); tr.Commit(); } catch (Exception ex) { tr.Rollback(); result.Error = ex.InmostMessage(); } return(result); }
public async Task <BizonylatComplexResult> SumEsAfaEsTermekdij([FromQuery] string sid, [FromBody] BizonylatComplexDto dto) { var result = new BizonylatComplexResult(); using (var tr = await _context.Database.BeginTransactionAsync()) try { result.Result = new List <BizonylatComplexDto> { await BizonylatBll.SumEsAfaEsTermekdijAsync(_context, sid, dto) }; tr.Commit(); } catch (Exception ex) { tr.Rollback(); result.Error = ex.InmostMessage(); } return(result); }
public static async Task <int> SaveAsync(ossContext context, string sid, BizonylatComplexDto complexDto) { SessionBll.Check(context, sid); await CsoportDal.JogeAsync(context, JogKod.BIZONYLATMOD); if (!string.IsNullOrEmpty(complexDto.Dto.Bizonylatszam)) { throw new Exception($"Ez a bizonylat már nem módosítható: {complexDto.Dto.Bizonylatszam}!"); } foreach (var l in complexDto.LstTetelDto) { BizonylatUtils.BizonylattetelCalc(l); } BizonylatUtils.SumEsAfaEsTermekdij(complexDto.Dto, complexDto.LstTetelDto, complexDto.LstAfaDto, complexDto.LstTermekdijDto); Models.Bizonylat entity; int bizonylatKod; if (complexDto.Dto.Bizonylatkod == 0) { //a fej még nem volt soha kiírva entity = ObjectUtils.Convert <BizonylatDto, Models.Bizonylat>(complexDto.Dto); bizonylatKod = await BizonylatDal.AddAsync(context, entity); } else { //updateelni a fejet bizonylatKod = complexDto.Dto.Bizonylatkod; await BizonylatDal.Lock(context, bizonylatKod, complexDto.Dto.Modositva); entity = await BizonylatDal.GetAsync(context, bizonylatKod); ObjectUtils.Update(complexDto.Dto, entity); await BizonylatDal.UpdateAsync(context, entity); //törölni az esetleges létező tételt-áfát- var entitesTetel = BizonylatTetelDal.Select(context, bizonylatKod); foreach (var l in entitesTetel) { await BizonylatTetelDal.DeleteAsync(context, l); } var entitesAfa = BizonylatAfaDal.Select(context, bizonylatKod); foreach (var l in entitesAfa) { await BizonylatAfaDal.DeleteAsync(context, l); } var entitesTermekdij = BizonylatTermekdijDal.Select(context, bizonylatKod); foreach (var l in entitesTermekdij) { await BizonylatTermekdijDal.DeleteAsync(context, l); } } //beírni a bizonylatkódot a tételbe-áfába-termékdíjba foreach (var l in complexDto.LstTetelDto) { l.Bizonylattetelkod = 0; l.Bizonylatkod = bizonylatKod; var entityTetel = ObjectUtils.Convert <BizonylatTetelDto, Models.Bizonylattetel>(l); await BizonylatTetelDal.AddAsync(context, entityTetel); } foreach (var l in complexDto.LstAfaDto) { l.Bizonylatafakod = 0; l.Bizonylatkod = bizonylatKod; var entityAfa = ObjectUtils.Convert <BizonylatAfaDto, Models.Bizonylatafa>(l); await BizonylatAfaDal.AddAsync(context, entityAfa); } foreach (var l in complexDto.LstTermekdijDto) { l.Bizonylattermekdijkod = 0; l.Bizonylatkod = bizonylatKod; var entityTermekdij = ObjectUtils.Convert <BizonylatTermekdijDto, Models.Bizonylattermekdij>(l); await BizonylatTermekdijDal.AddAsync(context, entityTermekdij); } return(bizonylatKod); }