예제 #1
0
        public static async System.Threading.Tasks.Task <BizonylatTetelDto> CreateNewAsync(ossContext context, string sid,
                                                                                           BizonylatTipus bizonylatTipus)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.BIZONYLATMOD);

            return(new BizonylatTetelDto
            {
                Mennyiseg = 0,
                Egysegar = 0,
                Netto = 0,
                Afa = 0,
                Brutto = 0,

                Tomegkg = 0,
                Ossztomegkg = 0,
                Termekdijegysegar = 0,
                Termekdij = 0,

                Termekdijas = bizonylatTipus == BizonylatTipus.Szamla ||
                              bizonylatTipus == BizonylatTipus.ElolegSzamla ||
                              bizonylatTipus == BizonylatTipus.Szallito,
                Kozvetitettszolgaltatas = false,
                Ezeloleg = false
            });
        }
예제 #2
0
        public static async Task <List <PenztarDto> > ReadByCurrencyOpenedAsync(ossContext context, string sid, int penznemkod)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PENZTAR);

            return(await PenztarDal.ReadByCurrencyOpenedAsync(context, penznemkod));
        }
예제 #3
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int termekdijkod, string termekdijkt)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEK);

            await TevekenysegDal.ZoomCheckAsync(context, termekdijkod, termekdijkt);
        }
예제 #4
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int bizonylatkod, string bizonylatszam)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.BIZONYLATMOD);

            await BizonylatDal.ZoomCheckAsync(context, bizonylatkod, bizonylatszam);
        }
예제 #5
0
        public static async Task <List <int> > DokumentumkodByVolumeAsync(ossContext context, string sid, int volumeKod)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.VOLUME);

            return(await DokumentumDal.DokumentumkodByVolumeAsync(context, volumeKod));
        }
예제 #6
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int penznemkod, string penznem)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEK);

            await PenznemDal.ZoomCheckAsync(context, penznemkod, penznem);
        }
예제 #7
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int irattipuskod, string irattipus)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEK);

            await IrattipusDal.ZoomCheckAsync(context, irattipuskod, irattipus);
        }
예제 #8
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int helysegkod, string helysegnev)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEK);

            await HelysegDal.ZoomCheckAsync(context, helysegkod, helysegnev);
        }
예제 #9
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int fizetesimodKod, string fizetesimod)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEK);

            await FizetesimodDal.ZoomCheckAsync(context, fizetesimodKod, fizetesimod);
        }
예제 #10
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int ugyfelkod, string ugyfel)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.UGYFELEK);

            await UgyfelDal.ZoomCheckAsync(context, ugyfelkod, ugyfel);
        }
예제 #11
0
        public static async Task <List <PenztarDto> > ReadAsync(ossContext context, string sid, string maszk)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PENZTAR);

            return(await PenztarDal.ReadAsync(context, maszk));
        }
예제 #12
0
        public static async Task <MennyisegiegysegDto> CreateNewAsync(ossContext context, string sid)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEKMOD);

            return(new MennyisegiegysegDto());
        }
예제 #13
0
        public static async Task <AjanlatParam> CreateNewAsync(ossContext context, string sid)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.AJANLATKESZITES);

            return(new AjanlatParam
            {
                AjanlatBuf = new List <AjanlatBuf> {
                    new AjanlatBuf {
                        AjanlatTetelTipus = AjanlatTetelTipus.Napelem, TetelTipus = "Napelem", Garancia = 10
                    },
                    new AjanlatBuf {
                        AjanlatTetelTipus = AjanlatTetelTipus.Inverter, TetelTipus = "Inverter", Garancia = 5
                    },
                    new AjanlatBuf {
                        AjanlatTetelTipus = AjanlatTetelTipus.MechanikaiSzerelveny, TetelTipus = "Mech. szerelvény", Garancia = 10
                    },
                    new AjanlatBuf {
                        AjanlatTetelTipus = AjanlatTetelTipus.VillamosSzerelveny, TetelTipus = "Vill. szerelvény", Garancia = 5
                    },
                    new AjanlatBuf {
                        AjanlatTetelTipus = AjanlatTetelTipus.Ugyintezes, TetelTipus = "Ügyintézés"
                    },
                    new AjanlatBuf {
                        AjanlatTetelTipus = AjanlatTetelTipus.Munkadij, TetelTipus = "Munkadíj", Garancia = 10
                    },
                    new AjanlatBuf {
                        AjanlatTetelTipus = AjanlatTetelTipus.TuzesetiKapcsolo, TetelTipus = "Tűzeseti kapcsoló"
                    },
                },
                Fi = new List <SzMT> {
                    new SzMT {
                        Szempont = Szempont.Ervenyes
                    },
                    new SzMT {
                        Szempont = Szempont.Tajolas
                    },
                    new SzMT {
                        Szempont = Szempont.Termeles
                    },
                    new SzMT {
                        Szempont = Szempont.Megjegyzes
                    },
                    new SzMT {
                        Szempont = Szempont.SzuksegesAramerosseg
                    },
                },
                ProjektKod = -1,

                Ervenyes = DateTime.Now.AddDays(14),
                SzuksegesAramerosseg = "",
                Tajolas = "déli",
                Termeles = 1100,
                Megjegyzes = "",

                Netto = 0,
                Afa = 0,
                Brutto = 0
            });
        }
예제 #14
0
        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));
        }
예제 #15
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int mekod, string me)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEK);

            await MennyisegiegysegDal.ZoomCheckAsync(context, mekod, me);
        }
예제 #16
0
        public static async Task <Models.Dokumentum> LetoltesAsync(ossContext context, string sid, int dokumentumKod)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.IRAT);

            return(await DokumentumDal.GetWithVolumeAsync(context, dokumentumKod));
        }
예제 #17
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int Cikkkod, string Cikk)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.CIKK);

            await CikkDal.ZoomCheckAsync(context, Cikkkod, Cikk);
        }
예제 #18
0
        public static async Task <byte[]> FeltetelesSzerzodesAsync(ossContext context, string sid, int projektKod)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PROJEKT);

            var entityProjekt = await ProjektDal.GetAsync(context, projektKod);

            var entityParticio = await ParticioDal.GetAsync(context);

            var pc      = JsonConvert.DeserializeObject <ProjektConf>(entityParticio.Projekt);
            var iratKod = pc.FeltetelesSzerzodesIratkod != null ? (int)pc.FeltetelesSzerzodesIratkod :
                          throw new Exception(string.Format(Messages.ParticioHiba, "FeltetelesSzerzodesIratkod"));

            var original = await IratBll.LetoltesAsync(context, sid, iratKod);

            NumberFormatInfo nfi = new CultureInfo("hu-HU", false).NumberFormat;

            nfi.NumberGroupSeparator = ".";

            var arNetto     = entityProjekt.Vallalasiarnetto;
            var elolegNetto = (int)(arNetto * (decimal)0.7) / 1000 * 1000;

            ComponentInfo.SetLicense(serialKey);

            DocumentModel document;

            using (var msDocx = new MemoryStream())
            {
                msDocx.Write(original.b, 0, original.b.Count());
                document = DocumentModel.Load(msDocx, GemBox.Document.LoadOptions.DocxDefault);
            }

            var mezoertekek = new
            {
                UGYFELNEV            = entityProjekt.UgyfelkodNavigation.Nev,
                UGYFELCIM            = UgyfelBll.Cim(entityProjekt.UgyfelkodNavigation),
                TELEFONSZAM          = entityProjekt.UgyfelkodNavigation.Telefon,
                DC                   = entityProjekt.Dckw.ToString(CultureInfo.CurrentCulture),
                NAPELEM              = entityProjekt.Napelem,
                INVERTER             = entityProjekt.Inverter,
                TELEPITESICIM        = entityProjekt.Telepitesicim,
                KIVITELEZESIHATARIDO = entityProjekt.Kivitelezesihatarido.Value.ToShortDateString(),
                MUNKATERULETATADASA  = DateTime.Now.Date.AddDays(1).ToShortDateString(),
                ARNETTO              = (arNetto - 75000).ToString("#,#", nfi),
                ARBRUTTO             = Calc.RealRound((arNetto - 75000) * (decimal)1.27, 1m).ToString("#,#", nfi),
                DATUM                = DateTime.Now.Date.ToShortDateString()
            };

            document.MailMerge.Execute(mezoertekek);

            byte[] result;

            using (var msDocx = new MemoryStream())
            {
                document.Save(msDocx, GemBox.Document.SaveOptions.DocxDefault);
                result = msDocx.ToArray();
            }

            return(result);
        }
예제 #19
0
        public static async Task <ProjektJegyzetDto> CreateNewAsync(ossContext context, string sid)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PROJEKT);

            return(new ProjektJegyzetDto());
        }
예제 #20
0
        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);
        }
예제 #21
0
        public static async Task ZoomCheckAsync(ossContext context, string sid, int afakulcskod, string afakulcs)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PRIMITIVEK);

            await AfakulcsDal.ZoomCheckAsync(context, afakulcskod, afakulcs);
        }
예제 #22
0
        public static async Task <BizonylatTipusLeiro> BizonylatLeiroAsync(ossContext context, string sid,
                                                                           BizonylatTipus bizonylatTipus)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeBizonylatAsync(context);

            return(Bl[bizonylatTipus.GetHashCode()]);
        }
예제 #23
0
        public static async Task<ProjektDto> GetAsync(ossContext context, string sid, int key)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PROJEKT);

            var entity = await ProjektDal.GetAsync(context, key);
            return Calc(entity);
        }
예제 #24
0
        public static async Task<int> AddAsync(ossContext context, string sid, ProjektDto dto)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PROJEKTMOD);

            var entity = ObjectUtils.Convert<ProjektDto, Models.Projekt>(dto);
            return await ProjektDal.AddAsync(context, entity);
        }
예제 #25
0
        public static async Task <List <CikkMozgasTetelDto> > MozgasAsync(ossContext context, string sid, int cikkKod,
                                                                          BizonylatTipus bizonylatTipus)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.CIKK);

            return(await CikkDal.MozgasAsync(context, cikkKod, bizonylatTipus));
        }
예제 #26
0
        public static async Task <byte[]> MunkalapAsync(ossContext context, string sid, int projektKod)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PROJEKT);

            var entityProjekt = await ProjektDal.GetAsync(context, projektKod);

            var entityParticio = await ParticioDal.GetAsync(context);

            var pc      = JsonConvert.DeserializeObject <ProjektConf>(entityParticio.Projekt);
            var iratKod = pc.MunkalapIratkod != null ? (int)pc.MunkalapIratkod :
                          throw new Exception(string.Format(Messages.ParticioHiba, "MunkalapIratkod"));

            if (entityProjekt.Munkalapszam == null)
            {
                entityProjekt.Munkalapszam = context.KodGen(KodNev.Munkalapszam) + "/" + DateTime.Now.Year;
                await ProjektDal.UpdateAsync(context, entityProjekt);

                await ProjektDal.GetAsync(context, projektKod);
            }
            var original = await IratBll.LetoltesAsync(context, sid, iratKod);

            ComponentInfo.SetLicense(serialKey);

            DocumentModel document;

            using (var msDocx = new MemoryStream())
            {
                msDocx.Write(original.b, 0, original.b.Count());
                document = DocumentModel.Load(msDocx, GemBox.Document.LoadOptions.DocxDefault);
            }

            var mezoertekek = new
            {
                PROJEKTKOD     = entityProjekt.Projektkod.ToString(),
                UGYFELNEV      = entityProjekt.UgyfelkodNavigation.Nev,
                TELEPITESICIM  = entityProjekt.Telepitesicim,
                PROJEKTJELLEGE = entityProjekt.Projektjellege,
                MUNKALAPSZAM   = entityProjekt.Munkalapszam,
                DC             = entityProjekt.Dckw.ToString(CultureInfo.CurrentCulture),
                AC             = entityProjekt.Ackva.ToString(CultureInfo.CurrentCulture),
                TELEFONSZAM    = entityProjekt.UgyfelkodNavigation.Telefon,
                NAPELEM        = entityProjekt.Napelem,
                INVERTER       = entityProjekt.Inverter
            };

            document.MailMerge.Execute(mezoertekek);

            byte[] result;

            using (var msDocx = new MemoryStream())
            {
                document.Save(msDocx, GemBox.Document.SaveOptions.DocxDefault);
                result = msDocx.ToArray();
            }

            return(result);
        }
예제 #27
0
        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);
        }
예제 #28
0
        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);
        }
예제 #29
0
        public static async Task <BizonylatTetelDto> BruttobolAsync(ossContext context, string sid,
                                                                    BizonylatTetelDto dto, decimal brutto)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.BIZONYLATMOD);

            BizonylatUtils.Bruttobol(dto, brutto);
            return(dto);
        }
예제 #30
0
        public static async Task <ParticioDto> GetAsync(ossContext context, string sid)
        {
            SessionBll.Check(context, sid);
            await CsoportDal.JogeAsync(context, JogKod.PARTICIO);

            var entity = await ParticioDal.GetAsync(context);

            return(ObjectUtils.Convert <Models.Particio, ParticioDto>(entity));
        }