Exemple #1
0
        private async Task <tblRuchNaglowek> StworzRuchNaglowek(int idZlecenieProdukcyjne,
                                                                GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum,
                                                                StatusRuchuTowarowEnum statusRuchuTowarowEnum,
                                                                FirmaEnum firmaZ,
                                                                FirmaEnum firmaDo,
                                                                MagazynyEnum magazynZ,
                                                                MagazynyEnum magazynDo)
        {
            var nrDokumentu = await tblRuchNaglowekHelper.NrDokumentuGenerator(StatusRuchuTowarowEnum.PrzyjecieWewnetrzne_PW);

            return(new tblRuchNaglowek
            {
                ID_PracownikGAT = UzytkownikZalogowany.Uzytkownik == null ? 7 : UzytkownikZalogowany.Uzytkownik.ID_PracownikGAT,
                DataPrzyjecia = new DateTime(),
                IDFirmaZ = (int)firmaZ,
                IDFirmaDo = (int)firmaDo,
                IDKontrahent = null,
                IDMagazynZ = (int)magazynZ,
                IDMagazynDo = (int)magazynDo,
                IDProdukcjaGniazdaProdukcyjne = (int)gniazdaProdukcyjneEnum,
                IDRuchStatus = (int)statusRuchuTowarowEnum,
                IDProdukcjaZlecenieProdukcyjne = idZlecenieProdukcyjne,
                NrDokumentu = nrDokumentu.NrDokumentu,
                NrDokumentuPelny = nrDokumentu.PelnyNrDokumentu
            });
        }
Exemple #2
0
        /// <summary>
        /// Pobiera koszt mieszanki za kg, i przypisuje do towaru na PW. Metoda do stosowania dla encji zapisanych w bazie!
        /// </summary>
        /// <param name="rolka">rolka RW lub PW (w przypadku linii wloknin brak RW)</param>
        /// <param name="gniazdaProdukcyjneEnum"></param>
        /// <returns></returns>
        public async Task <decimal> PobierzKosztRolki(tblProdukcjaRuchTowar rolka, GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum)
        {
            if (rolka is null)
            {
                return(0);
            }
            if (gniazdaProdukcyjneEnum == 0)
            {
                return(0);
            }

            rolka = await unitOfWork.tblProdukcjaRuchTowar.GetByIdAsync(rolka.IDProdukcjaRuchTowar);

            if (rolka is null)
            {
                return(0);
            }

            if (gniazdaProdukcyjneEnum == GniazdaProdukcyjneEnum.LiniaWloknin)
            {
                return(PobierzCeneZeZleceniaProdukcyjnego(rolka));
            }
            else
            {
                return(await PobierzCeneDlaRolkiBazowej(rolka, gniazdaProdukcyjneEnum));
            }
        }
 private void Wyslij_ProdukcjaZlecenieDodajTowarMessage(GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum)
 {
     MessengerSend(new ProdukcjaZlecenieDodajTowarMessage
     {
         DodajUsunEdytujEnum    = DodajUsunEdytujEnum.Dodaj,
         GniazdaProdukcyjneEnum = gniazdaProdukcyjneEnum,
         ZlecenieTowar          = new tblProdukcjaZlecenieTowar()
     });
 }
Exemple #4
0
 private tblProdukcjaRuchNaglowek StworzNaglowek(GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum)
 {
     return(new tblProdukcjaRuchNaglowek
     {
         DataDodania = DateTime.Now.Date,
         IDMagazyn = (int)MagazynyEnum.ProdukcjaGeowlokniny_PRGW,
         IDPracownikGAT = 7,
         IDPracownikGAT1 = 7,
         IDProdukcjaGniazdoProdukcyjne = (int)gniazdaProdukcyjneEnum,
         Uwagi = "Import z MsAccess",
     });
 }
Exemple #5
0
        public async Task <tblRuchNaglowek> ZapiszRekordDoTblRuchNaglowek(int idZlecenieProdukcyjne,
                                                                          GniazdaProdukcyjneEnum gniazdoProdukcyjne,
                                                                          StatusRuchuTowarowEnum statusRuchuTowarowEnum,
                                                                          FirmaEnum firmaZ,
                                                                          FirmaEnum firmaDo,
                                                                          MagazynyEnum magazynZ,
                                                                          MagazynyEnum magazynDo)
        {
            ruchNaglowek = await StworzRuchNaglowek(idZlecenieProdukcyjne, gniazdoProdukcyjne, statusRuchuTowarowEnum, firmaZ, firmaDo, magazynZ, magazynDo);

            unitOfWork.tblRuchNaglowek.Add(ruchNaglowek);
            await unitOfWork.SaveAsync();

            return(ruchNaglowek);
        }
Exemple #6
0
        public IGPRuchTowar_PW_PodsumowanieHelper PobierzPodsumowanieStrategy(GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum)
        {
            switch (gniazdaProdukcyjneEnum)
            {
            case GniazdaProdukcyjneEnum.LiniaWloknin:
                return(new GPRuchTowar_PW_PodsumowanieWlokninaIKalanderStrategy());

            case GniazdaProdukcyjneEnum.LiniaDoKalandowania:
                return(new GPRuchTowar_PW_PodsumowanieWlokninaIKalanderStrategy());

            case GniazdaProdukcyjneEnum.LiniaDoKonfekcji:
                return(new GPRuchTowar_PW_PodsumowanieKonfekcjaStrategy());

            default:
                return(new GPRuchTowar_PW_PodsumowanieWlokninaIKalanderStrategy());
            }
        }
Exemple #7
0
        private string PobierzGniazdo(GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum)
        {
            string gniazdo = null;

            switch (gniazdaProdukcyjneEnum)
            {
            case GniazdaProdukcyjneEnum.LiniaWloknin:
                gniazdo = "W";
                break;

            case GniazdaProdukcyjneEnum.LiniaDoKalandowania:
                gniazdo = "KA";
                break;

            case GniazdaProdukcyjneEnum.LiniaDoKonfekcji:
                gniazdo = "KO";
                break;

            default:
                break;
            }
            return(gniazdo);
        }
Exemple #8
0
        public async Task ImportRuchuTowarowZMsAccess(GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum)
        {
            var ruchNaglowek = StworzNaglowek(gniazdaProdukcyjneEnum);

            switch (gniazdaProdukcyjneEnum)
            {
            case GniazdaProdukcyjneEnum.LiniaWloknin:
                break;

            case GniazdaProdukcyjneEnum.LiniaDoKalandowania:
                break;

            case GniazdaProdukcyjneEnum.LiniaDoKonfekcji:
                break;

            default:
                break;
            }
            var encjeMsAccess = await unitOfWorkMsAccess.Kalander.GetAllAsync();

            var encjeMsSQL = await unitOfWork.tblProdukcjaRuchTowar
                             .WhereAsync(t => t.IDProdukcjaGniazdoProdukcyjne == (int)gniazdaProdukcyjneEnum);

            var pozycjeDoImportuMsAccess = encjeMsAccess.Where(e => !encjeMsSQL.Any(es => e.Id == es.IDMsAccess));
            var pozycjeDoImportuSQL      = GenerujPozycjeDoImportuDoSQL(pozycjeDoImportuMsAccess);


            if (pozycjeDoImportuSQL != null && pozycjeDoImportuMsAccess.Any())
            {
                pozycjeDoImportuSQL.Where(t => t.IsValid == false).ToList().ForEach(t => t.Waga_kg = 1);
                var p = pozycjeDoImportuSQL.Where(t => t.IsValid == false);
                ruchNaglowek.Towary = pozycjeDoImportuSQL.ToList();
                unitOfWork.tblProdukcjaRuchNaglowek.Add(ruchNaglowek);
                await unitOfWork.SaveAsync();
            }
        }
Exemple #9
0
        /// <summary>
        /// Pobiera cene z rolki bazowej
        /// </summary>
        /// <param name="rolka">rolka pobrana z bazy z child obiektami</param>
        /// <param name="gniazdaProdukcyjneEnum"></param>
        /// <returns></returns>
        private async Task <decimal> PobierzCeneDlaRolkiBazowej(tblProdukcjaRuchTowar rolka, GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum)
        {
            var idRolkiBazowej = await PobierzIDRolkiBazowejAsync(rolka, gniazdaProdukcyjneEnum);

            if (idRolkiBazowej.HasValue)
            {
                var rolkaBazowa = await unitOfWork.tblProdukcjaRuchTowar.GetByIdAsync(idRolkiBazowej.Value);

                return(rolkaBazowa.Cena_kg);
            }
            else
            {
                return(PobierzCeneZeZleceniaProdukcyjnego(rolka));
            }
        }
Exemple #10
0
        /// <summary>
        /// Pobiera ID rolki bazowej dla rolki RW
        /// </summary>
        /// <param name="rolkaRW"></param>
        /// <param name="gniazdoProdukcyjnePW"></param>
        /// <returns></returns>
        public virtual async Task <int?> PobierzIDRolkiBazowejAsync(tblProdukcjaRuchTowar rolkaRW, GniazdaProdukcyjneEnum gniazdoProdukcyjnePW)
        {
            tblProdukcjaGniazdoProdukcyjne gniazdoRW = await PobierzGniazdoProdukcyjne(rolkaRW).ConfigureAwait(false);

            if (gniazdoRW is null)
            {
                return(null);
            }

            switch (gniazdoProdukcyjnePW)
            {
            case GniazdaProdukcyjneEnum.LiniaWloknin:
                return(null);

            case GniazdaProdukcyjneEnum.LiniaDoKalandowania:
                if (gniazdoRW.IDProdukcjaGniazdoProdukcyjne == (int)GniazdaProdukcyjneEnum.LiniaWloknin)
                {
                    return(rolkaRW.IDProdukcjaRuchTowar);
                }
                else
                {
                    return(rolkaRW.IDRolkaBazowa);
                }

            case GniazdaProdukcyjneEnum.LiniaDoKonfekcji:
                if (gniazdoRW.IDProdukcjaGniazdoProdukcyjne == (int)GniazdaProdukcyjneEnum.LiniaDoKalandowania)
                {
                    return(rolkaRW.IDProdukcjaRuchTowar);
                }
                else
                {
                    return(rolkaRW.IDRolkaBazowa);
                }

            default:
                return(null);
            }
        }
        public void RejestracjaProdukcjiOtworOknoCommand_PrzeslanyObjectJestZgodnyy_WysylaStatusRuchu(string gniazdo, GniazdaProdukcyjneEnum gniazdoEnum)
        {
            sut.RejestracjaProdukcjiOtworOknoCommand.Execute(gniazdo);

            Messenger.Verify(m => m.Send(It.Is <tblProdukcjaGniazdoProdukcyjne>(t => t.IDProdukcjaGniazdoProdukcyjne == (int)gniazdoEnum)));
        }
        public void AddCommandCanExecute_GdyBrakPrzelsanegoRWDlaLiniKonfekcjiLubKalandra_False(GniazdaProdukcyjneEnum gniazdaProdukcyjneEnum, bool expected)
        {
            MessengerSend(new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = (int)gniazdaProdukcyjneEnum
            }, () => MessengerSend(new tblPracownikGAT()));

            var actual = sut.AddCommand.CanExecute(null);

            Assert.IsTrue(actual == expected);
        }