Esempio n. 1
0
        public void PobierzDaneZGniazdaProdukcyjnego_RolkaBazowaJestNull_Wyjatek()
        {
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne();
            var listaPW            = new List <tblProdukcjaRuchTowar>();

            Assert.ThrowsAsync <ArgumentException>(() => sut.PobierzNoweNryDlaRolki(null, gniazdoProdukcyjne, listaPW));
        }
Esempio n. 2
0
 /// <summary>
 /// Pobiera nast nr rolki
 /// </summary>
 /// <param name="gniazdoProdukcyjne"></param>
 /// <returns></returns>
 public async Task <int> PobierzKolejnyNrRolkiAsync(tblProdukcjaGniazdoProdukcyjne gniazdoProdukcyjne)
 {
     if (gniazdoProdukcyjne is null)
     {
         return(0);
     }
     return(await PobierzKolejnyNrRolkiAsync(gniazdoProdukcyjne.IDProdukcjaGniazdoProdukcyjne));
 }
Esempio n. 3
0
        public void PobierzDaneZRolkiRw_GdyRolkaBazowaNull_Wyjatek()
        {
            var rolkaRW = new tblProdukcjaRuchTowar {
                NrRolki = 1, CzyKalandrowana = true
            };
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = 1
            };

            Assert.Throws <ArgumentException>(() => sut.PobierzDaneZRolkiRw(null, rolkaRW, gniazdoProdukcyjne));
        }
Esempio n. 4
0
        private void GdyPrzeslanoGniazdoProdukcyjne(tblProdukcjaGniazdoProdukcyjne obj)
        {
            if (obj is null)
            {
                return;
            }

            gniazdoProdukcyjne = obj;

            LoadCommandExecute();
        }
Esempio n. 5
0
        private decimal ObliczOdpad(tblProdukcjaGniazdoProdukcyjne gniazdoProdukcyjne,
                                    tblProdukcjaRuchTowar rolkaRW,
                                    IEnumerable <tblProdukcjaRuchTowar> listaPWDlaDanejRolkiRW)
        {
            var wagaPW = listaPWDlaDanejRolkiRW.Sum(s => s.Waga_kg);

            var odpad = rolkaRW.Waga_kg * (1 - gniazdoProdukcyjne.WspZmniejszeniaMasy) - wagaPW;

            odpad = odpad < 0 ? 0 : odpad;

            return(odpad);
        }
Esempio n. 6
0
        public async Task PobierzDaneZGniazdaProdukcyjnego_GniazdoProdukcyjneJestNull_ZwracaTaSamaRolkeBazowa()
        {
            var rolkaBazowa = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 1
            };
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne();
            var listaPW            = new List <tblProdukcjaRuchTowar>();

            rolkaBazowa = await sut.PobierzNoweNryDlaRolki(rolkaBazowa, null, listaPW);

            Assert.AreEqual(1, rolkaBazowa.IDProdukcjaRuchTowar);
            Assert.IsNull(rolkaBazowa.NrRolkiPelny);
        }
        public async Task PobierzKolejnyPelnyNrRolki_GdyPrzeslanoGniazdoWloknin_GenerujNr_SameCyfry()
        {
            tblProdukcjaRuchTowar.Setup(s => s.GetNewNumberAsync(It.IsAny <Expression <Func <tblProdukcjaRuchTowar, bool> > >(),
                                                                 It.IsAny <Func <tblProdukcjaRuchTowar, int> >()))
            .ReturnsAsync(1);
            var gniazdoWloknin = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = (int)GniazdaProdukcyjneEnum.LiniaWloknin
            };

            var kolejnyNrRolki = await sut.PobierzKolejnyPelnyNrRolkiAsync(gniazdoWloknin, null, null);

            Assert.AreEqual("1", kolejnyNrRolki);
        }
Esempio n. 8
0
        public async Task PobierzDaneZGniazdaProdukcyjnego_ArgOk_WywolujeMetodyDlaRolkaHelper()
        {
            var rolkaBazowa = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 1
            };
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne();
            var listaPW            = new List <tblProdukcjaRuchTowar>();

            rolkaBazowa = await sut.PobierzNoweNryDlaRolki(rolkaBazowa, gniazdoProdukcyjne, listaPW);

            rolkaHelper.Verify(v => v.PobierzKolejnyPelnyNrRolkiAsync(It.IsAny <tblProdukcjaGniazdoProdukcyjne>(), It.IsAny <tblProdukcjaRuchTowar>(), It.IsAny <IEnumerable <tblProdukcjaRuchTowar> >()));
            rolkaHelper.Verify(v => v.PobierzKolejnyNrRolkiAsync(It.IsAny <tblProdukcjaGniazdoProdukcyjne>(), It.IsAny <IEnumerable <tblProdukcjaRuchTowar> >()));
        }
Esempio n. 9
0
        /// <summary>
        /// Pobiera kolejny nr rolki wraz ze sprawdzeniem numeru w bazie
        /// </summary>
        /// <param name="gniazdoProdukcyjne"></param>
        /// <param name="listaTowarow"></param>
        /// <returns></returns>
        public async Task <int> PobierzKolejnyNrRolkiAsync(tblProdukcjaGniazdoProdukcyjne gniazdoProdukcyjne,
                                                           IEnumerable <tblProdukcjaRuchTowar> listaTowarow)
        {
            int iloscElementowNieDodanychDoBazy = 0;

            if (listaTowarow != null)
            {
                iloscElementowNieDodanychDoBazy = listaTowarow.Where(t => t.IDProdukcjaRuchTowar == 0).ToList().Count();
            }

            var nrRolkiZBazy = await PobierzKolejnyNrRolkiAsync(gniazdoProdukcyjne);

            return(nrRolkiZBazy + iloscElementowNieDodanychDoBazy);// +1;
        }
Esempio n. 10
0
        public async Task PobierzDaneZRolkiRw_GdyRolkaRWNull_ZwrocTaSamaRolkeBazowa()
        {
            var rolkaBazowa = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 1
            };
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = 1
            };

            rolkaHelper.Setup(s => s.PobierzIDRolkiBazowejAsync(It.IsAny <tblProdukcjaRuchTowar>(), It.IsAny <GniazdaProdukcyjneEnum>())).ReturnsAsync(1);

            rolkaBazowa = sut.PobierzDaneZRolkiRw(rolkaBazowa, null, gniazdoProdukcyjne);

            Assert.AreEqual(1, rolkaBazowa.IDProdukcjaRuchTowar);
        }
Esempio n. 11
0
        public async Task PobierzDaneZRolkiRw_DlaLiniaWlokin_NiePrzypisujIdRolkiBazowej()
        {
            var rolkaBazowa = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 2,
            };
            var rolkaRW = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 1, NrRolki = 1, CzyKalandrowana = true, NrRolkiPelny = "1KL1KO1", IDProdukcjaGniazdoProdukcyjne = (int)GniazdaProdukcyjneEnum.LiniaWloknin
            };
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = (int)GniazdaProdukcyjneEnum.LiniaWloknin
            };

            rolkaBazowa = sut.PobierzDaneZRolkiRw(rolkaBazowa, rolkaRW, null);

            Assert.AreEqual(null, rolkaBazowa.IDRolkaBazowa);
        }
Esempio n. 12
0
        public async Task PobierzDaneZRolkiRw_GdyGniazdoNieJestLiniaWlokin_PrzypiszIdRolkiBazowej()
        {
            var rolkaBazowa = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 2,
            };
            var rolkaRW = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 1, NrRolki = 1, CzyKalandrowana = true, NrRolkiPelny = "1KL1KO1", IDProdukcjaGniazdoProdukcyjne = (int)GniazdaProdukcyjneEnum.LiniaDoKalandowania
            };
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = (int)GniazdaProdukcyjneEnum.LiniaDoKonfekcji
            };

            rolkaBazowa = sut.PobierzDaneZRolkiRw(rolkaBazowa, rolkaRW, gniazdoProdukcyjne);

            Assert.AreEqual(1, rolkaBazowa.IDRolkaBazowa);
        }
        public async Task PobierzKolejnyNrRolkiAsync_GdyPrzeslanaListaTowarow_Pusta_ZwrocNrUwzglTylkoBaze()
        {
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = 1
            };
            var listaTowarow = new List <tblProdukcjaRuchTowar>
            {
            };

            tblProdukcjaRuchTowar.Setup(s => s.GetNewNumberAsync(It.IsAny <Expression <Func <tblProdukcjaRuchTowar, bool> > >(),
                                                                 It.IsAny <Func <tblProdukcjaRuchTowar, int> >()))
            .ReturnsAsync(1);

            var nrRolki = await sut.PobierzKolejnyNrRolkiAsync(gniazdoProdukcyjne, listaTowarow);

            Assert.That(nrRolki, Is.EqualTo(1));
        }
Esempio n. 14
0
        public async Task PobierzDaneZRolkiRw_GdyParametryNieNull_UzupelnijDane()
        {
            var rolkaBazowa = new tblProdukcjaRuchTowar();
            var rolkaRW     = new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 1, CzyKalandrowana = true, NrRolkiPelny = "1KL1KO2"
            };
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = 1
            };

            rolkaHelper.Setup(s => s.PobierzIDRolkiBazowejAsync(It.IsAny <tblProdukcjaRuchTowar>(), It.IsAny <GniazdaProdukcyjneEnum>())).ReturnsAsync(1);

            rolkaBazowa = sut.PobierzDaneZRolkiRw(rolkaBazowa, rolkaRW, gniazdoProdukcyjne);

            Assert.AreEqual("1KL1KO2", rolkaBazowa.NrRolkiBazowej);
            Assert.IsTrue(rolkaBazowa.CzyKalandrowana);
        }
        public async Task PobierzKolejnyPelnyNrRolki_GdyPrzeslanoGniazdoKonfekcji_GenerujNrKalandraPlusKonfekcji()
        {
            tblProdukcjaRuchTowar.Setup(s => s.GetByIdAsync(It.IsAny <int>()))
            .ReturnsAsync(new tblProdukcjaRuchTowar {
                IDProdukcjaRuchTowar = 1, NrRolki = 1, NrRolkiPelny = "1K1"
            });
            tblProdukcjaRuchTowar.Setup(s => s.GetNewNumberAsync(It.IsAny <Expression <Func <tblProdukcjaRuchTowar, bool> > >(),
                                                                 It.IsAny <Func <tblProdukcjaRuchTowar, int> >())).ReturnsAsync(1);
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = (int)GniazdaProdukcyjneEnum.LiniaDoKonfekcji
            };
            var ruchTowar = IdRoliBazowej_1();

            var kolejnyNrRolki = await sut.PobierzKolejnyPelnyNrRolkiAsync(gniazdoProdukcyjne, ruchTowar, null);

            Assert.AreEqual("1K1_KO1", kolejnyNrRolki);
        }
Esempio n. 16
0
        private async Task <tblProdukcjaGniazdoProdukcyjne> PobierzGniazdoProdukcyjne(tblProdukcjaRuchTowar rolkaRW)
        {
            tblProdukcjaGniazdoProdukcyjne gniazdo = null;

            if (rolkaRW?.tblProdukcjaRuchNaglowek?.tblProdukcjaGniazdoProdukcyjne is null)
            {
                var naglowek = await unitOfWork.tblProdukcjaRuchNaglowek
                               .SingleOrDefaultAsync(n => n.IDProdukcjaRuchNaglowek == rolkaRW.IDProdukcjaRuchNaglowek)
                               .ConfigureAwait(false);

                gniazdo = naglowek?.tblProdukcjaGniazdoProdukcyjne;
            }
            else
            {
                gniazdo = rolkaRW.tblProdukcjaRuchNaglowek.tblProdukcjaGniazdoProdukcyjne;
            }

            return(gniazdo);
        }
        public async Task PobierzKolejnyNrRolkiAsync_GdyPrzeslanoListeTowarow_CzescTowarowDodaneDoBazy_ZwrocNr_UwzglListeBezTowarowDodanychDoBazy()
        {
            var gniazdoProdukcyjne = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = 1
            };
            var listaTowarow = new List <tblProdukcjaRuchTowar>
            {
                new tblProdukcjaRuchTowar {
                    IDProdukcjaRuchTowar = 0
                },
            };

            tblProdukcjaRuchTowar.Setup(s => s.GetNewNumberAsync(It.IsAny <Expression <Func <tblProdukcjaRuchTowar, bool> > >(),
                                                                 It.IsAny <Func <tblProdukcjaRuchTowar, int> >()))
            .ReturnsAsync(2);

            var nrRolki = await sut.PobierzKolejnyNrRolkiAsync(gniazdoProdukcyjne, listaTowarow);

            Assert.That(nrRolki, Is.EqualTo(3));
        }
Esempio n. 18
0
        public async Task <tblProdukcjaRuchTowar> PobierzNoweNryDlaRolki(tblProdukcjaRuchTowar bazowaRolkaPW,
                                                                         tblProdukcjaGniazdoProdukcyjne gniazdoProdukcyjne,
                                                                         IEnumerable <tblProdukcjaRuchTowar> listaPW)
        {
            if (bazowaRolkaPW is null)
            {
                throw new ArgumentException("Rolka bazowa jest null!");
            }

            if (gniazdoProdukcyjne is null)
            {
                return(bazowaRolkaPW);
            }

            bazowaRolkaPW.NrRolkiPelny = await rolkaHelper.PobierzKolejnyPelnyNrRolkiAsync(gniazdoProdukcyjne, bazowaRolkaPW, listaPW).ConfigureAwait(false);

            bazowaRolkaPW.NrRolki = await rolkaHelper.PobierzKolejnyNrRolkiAsync(gniazdoProdukcyjne, listaPW).ConfigureAwait(false);

            return(bazowaRolkaPW);
        }
        public async Task PobierzOdpadZRolkiAsync_GdyDaneOkIGniazdoKalander_LiczyOdpadZTolerancja()
        {
            tblProdukcjaRuchTowar.Setup(s => s.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(new tblProdukcjaRuchTowar {
                IDProdukcjaGniazdoProdukcyjne = 1, Waga_kg = 100
            });

            tblProdukcjaRuchTowar.Setup(s => s.WhereAsync(It.IsAny <Expression <Func <tblProdukcjaRuchTowar, bool> > >()))
            .ReturnsAsync(new List <tblProdukcjaRuchTowar>
            {
                new tblProdukcjaRuchTowar {
                    IDProdukcjaGniazdoProdukcyjne = 1, Waga_kg = 98
                },
            });
            var gniazdo = new tblProdukcjaGniazdoProdukcyjne {
                IDProdukcjaGniazdoProdukcyjne = (int)GniazdaProdukcyjneEnum.LiniaDoKalandowania, WspZmniejszeniaMasy = 0.035m
            };

            var result = await sut.PobierzOdpadZRolkiRwAsync(1, gniazdo);

            Assert.AreEqual(0, result);
        }
Esempio n. 20
0
        public async Task <decimal> PobierzOdpadZRolkiRwAsync(int idRolkaRW, tblProdukcjaGniazdoProdukcyjne gniazdoProdukcyjne)
        {
            var rolkaRW = await unitOfWork.tblProdukcjaRuchTowar.GetByIdAsync(idRolkaRW);

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

            var listaPWDlaDanejRolkiRW = await unitOfWork.tblProdukcjaRuchTowar.WhereAsync(r => r.IDRolkaBazowa == idRolkaRW &&
                                                                                           r.IDProdukcjaGniazdoProdukcyjne == gniazdoProdukcyjne.IDProdukcjaGniazdoProdukcyjne);

            if (!listaPWDlaDanejRolkiRW.Any())
            {
                throw new ArgumentException("Dla wybranej rolki RW brak rolek do rozliczenia na PW." +
                                            "\nRozliczenie (waga odpadu) nie będzie kontynuowane.");
            }

            decimal odpad = ObliczOdpad(gniazdoProdukcyjne, rolkaRW, listaPWDlaDanejRolkiRW);

            return(odpad);
        }
Esempio n. 21
0
        /// <summary>
        /// Pobiera pelny nr rolki uwzgl rolke bazowa
        /// </summary>
        /// <param name="gniazdoProdukcyjne"></param>
        /// <param name="ruchTowar"></param>
        /// <param name="listaTowarow"></param>
        /// <returns></returns>
        public async Task <string> PobierzKolejnyPelnyNrRolkiAsync(tblProdukcjaGniazdoProdukcyjne gniazdoProdukcyjne,
                                                                   tblProdukcjaRuchTowar ruchTowar,
                                                                   IEnumerable <tblProdukcjaRuchTowar> listaTowarow)
        {
            if (gniazdoProdukcyjne is null)
            {
                return(null);
            }

            var idRolkiBazowej = await PobierzIDRolkiBazowejAsync(ruchTowar, (GniazdaProdukcyjneEnum)gniazdoProdukcyjne.IDProdukcjaGniazdoProdukcyjne);

            tblProdukcjaRuchTowar rolkaBazowa = null;

            if (idRolkiBazowej.HasValue && idRolkiBazowej != 0)
            {
                rolkaBazowa = await unitOfWork.tblProdukcjaRuchTowar.GetByIdAsync(idRolkiBazowej.Value);
            }

            var kolejnyNrRolki = await PobierzKolejnyNrRolkiAsync(gniazdoProdukcyjne, listaTowarow);

            return(GenerujPelnyNumer(gniazdoProdukcyjne.IDProdukcjaGniazdoProdukcyjne, rolkaBazowa, kolejnyNrRolki));
        }
Esempio n. 22
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);
            }
        }
Esempio n. 23
0
        /// <summary>
        /// Przypisuje do <see cref="BazowaRolkaPW"/> dane pochodzace z rolki przslanej z formularza RW
        /// </summary>
        /// <returns></returns>
        public tblProdukcjaRuchTowar PobierzDaneZRolkiRw(tblProdukcjaRuchTowar bazowaRolkaPW,
                                                         tblProdukcjaRuchTowar rolkaRW,
                                                         tblProdukcjaGniazdoProdukcyjne gniazdoProdukcyjne)
        {
            if (bazowaRolkaPW is null)
            {
                throw new ArgumentException("Rolka bazowa jest null!");
            }

            if (rolkaRW is null)
            {
                return(bazowaRolkaPW);
            }

            bazowaRolkaPW.NrRolkiBazowej                = rolkaRW.NrRolkiPelny;
            bazowaRolkaPW.CzyKalandrowana               = rolkaRW.CzyKalandrowana;
            bazowaRolkaPW.SymbolRolkiBazowej            = rolkaRW.TowarSymbolSubiekt;
            bazowaRolkaPW.NazwaRolkiBazowej             = rolkaRW.TowarNazwaSubiekt;
            bazowaRolkaPW.IDProdukcjaRuchTowarWyjsciowy = rolkaRW.IDProdukcjaRuchTowar;
            bazowaRolkaPW.KodKreskowyRolkiBazowej       = rolkaRW.KodKreskowy;
            bazowaRolkaPW.IDZleceniePodstawowe          = rolkaRW.IDZleceniePodstawowe;
            bazowaRolkaPW.NrZleceniaPodstawowego        = rolkaRW.NrZleceniaPodstawowego;
            bazowaRolkaPW.KierunekPrzychodu             = rolkaRW.KierunekPrzychodu;
            if (gniazdoProdukcyjne is null)
            {
                return(bazowaRolkaPW);
            }

            if (gniazdoProdukcyjne.IDProdukcjaGniazdoProdukcyjne != (int)GniazdaProdukcyjneEnum.LiniaWloknin)
            {
                bazowaRolkaPW.IDRolkaBazowa = rolkaRW.IDProdukcjaRuchTowar;
            }


            return(bazowaRolkaPW);
        }
Esempio n. 24
0
 private void GdyPrzeslanoGniazdoProdukcyjne(tblProdukcjaGniazdoProdukcyjne obj)
 {
     gniazdoProdukcyjne = obj;
 }