예제 #1
0
        public bool EvidentirajPrisustvo(List <UcenikIM> prisutni, CasIM cas)
        {
            try
            {
                using (var db = new ModelOsnovnaSkolaContainer())
                {
                    Cas c = db.Cas.Include(x => x.Prisustva).SingleOrDefault(p => p.Id_casa == cas.Id_casa);

                    foreach (var ucenik in prisutni)
                    {
                        c.Prisustva.Add(new Prisustvo()
                        {
                            CasId_casa = c.Id_casa, UcenikId_ucenika = ucenik.Id_ucenika, ZaposleniId_zaposlenog = cas.ZaposleniId_zaposlenog
                        });
                    }

                    db.Entry(c).State = EntityState.Modified;
                    db.SaveChanges();
                }
                return(true);
            }catch (Exception e)
            {
                Console.WriteLine("MEssage: " + e.Message + "\nInner: " + e.InnerException.Message);
                return(false);
            }
        }
예제 #2
0
        public IActionResult SpremiCas(DodajCasVM model)
        {
            Cas cas = new Cas
            {
                Datum            = model.Datum,
                PredajePredmetID = model.OdjeljenjePredmetID
            };

            _db.Add(cas);
            _db.SaveChanges();
            int OdjeljenjeID = _db.PredajePredmet.Where(x => x.Id == cas.PredajePredmetID).Select(x => x.OdjeljenjeID).FirstOrDefault();

            foreach (var x in _db.OdjeljenjeStavka.Where(o => o.OdjeljenjeId == OdjeljenjeID).ToList())
            {
                CasStavka casStavka = new CasStavka
                {
                    CasID              = cas.ID,
                    Prisutan           = true,
                    OdjeljenjeStavkaID = x.Id
                };
                _db.Add(casStavka);
            }
            _db.SaveChanges();

            return(RedirectToAction("Index"));
        }
예제 #3
0
        public ILanguageType VerifyType_SymbolicExpression(MathematicaScalar sc, OperandsByName operands)
        {
            var s = new StringBuilder();

            var varTypes = new Dictionary <string, MathematicaAtomicType>();

            foreach (var pair in operands.OperandsDictionary)
            {
                //var lhs_type = this.GMacSymbolTable.Scalar
                var rhsType = pair.Value.ExpressionType;

                if (rhsType.IsBoolean())
                {
                    varTypes.Add(pair.Key, MathematicaAtomicType.Boolean);
                }

                if (rhsType.IsInteger())
                {
                    varTypes.Add(pair.Key, MathematicaAtomicType.Integer);
                }

                if (rhsType.IsScalar())
                {
                    varTypes.Add(pair.Key, MathematicaAtomicType.Real);
                }

                else
                {
                    s.Append("cannot assign RHS expression of type ");
                    s.Append(rhsType.TypeSignature);
                    s.Append(" to symbolic expression parameter ");
                    s.Append(pair.Key);
                }
            }

            if (s.Length > 0)
            {
                return(Context.CreateTypeMismatch(s.ToString()));
            }

            var assumeExpr = Cas.CreateAssumeExpr(varTypes);

            if (sc.IsBooleanScalar(assumeExpr))
            {
                return(GMacRootAst.BooleanType);
            }

            //if (sc.IsIntegerScalar(assumeExpr))
            //    return GMacRootAst.IntegerType;

            if (sc.IsRealScalar(assumeExpr))
            {
                return(GMacRootAst.ScalarType);
            }

            return
                (sc.IsComplexScalar(assumeExpr)
                ? GMacRootAst.ScalarType
                : Context.CreateTypeMismatch("Symbolic expression type cannot be determined"));
        }
예제 #4
0
        public string AddCas(CasIM cas, UcionicaIM ucionica, OdeljenjeIM odeljenje)
        {
            string retMsg = "";

            if (!ValidateCasExistance(cas, ucionica, odeljenje, out retMsg))
            {
                Cas c = new Cas()
                {
                    OblastId_oblasti       = cas.OblastId_oblasti,
                    ZaposleniId_zaposlenog = cas.ZaposleniId_zaposlenog,
                    ZauzetostUcionice      = new ZauzetostUcionice()
                    {
                        datum                 = cas.datum,
                        pocetak               = cas.pocetak,
                        UcionicaId_ucionice   = ucionica.Id_ucionice,
                        OdeljenjeId_odeljenja = odeljenje.Id_odeljenja
                    }
                };
                //c.Imaju.Add(new Ima() { Cas = c, OdeljenjeId_odeljenja = odeljenje.Id_odeljenja });

                if (dao.Insert(c))
                {
                    return("");
                }
                else
                {
                    return("Greška prilikom dodavanja.");
                }
            }
            else
            {
                return(retMsg);
            }
        }
        public IActionResult DodajCas(DodajCasVM model)
        {
            var cas = new Cas
            {
                Datum            = model.Datum,
                PredajePredmetId = model.PredajePredmetId,
                Sadrzaj          = ""
            };

            _context.Add(cas);

            var predajePredmet = _context.PredajePredmet.Find(model.PredajePredmetId);
            var ucenici        = _context.OdjeljenjeStavka
                                 .Where(o => o.OdjeljenjeId == predajePredmet.OdjeljenjeID)
                                 .ToList();

            foreach (var u in ucenici)
            {
                var stavka = new CasStavka
                {
                    Cas                = cas,
                    Napomena           = "",
                    Ocjena             = -1,
                    Prisutan           = false,
                    OpravdanoOdsutan   = false,
                    OdjeljenjeStavkaId = u.Id
                };
                _context.Add(stavka);
            }
            _context.SaveChanges();
            return(RedirectToAction(nameof(Casovi), new { nastavnikId = predajePredmet.NastavnikID }));
        }
예제 #6
0
        public bool DeleteCas(int idCasa)
        {
            using (var db = new ModelOsnovnaSkolaContainer())
            {
                try
                {
                    ZauzetostUcionice z = db.ZauzetostUcionices.SingleOrDefault(x => x.Cas.Id_casa == idCasa);

                    List <Odeljenje> odeljenja = db.Odeljenja.Include(o => o.ZauzetostUcionices).ToList();
                    Odeljenje        odeljenje = odeljenja.SingleOrDefault(x => x.ZauzetostUcionices.Contains(z));
                    odeljenje.ZauzetostUcionices.Remove(z);

                    List <Ucionica> ucionice = db.Ucionicas.Include(x => x.ZauzetostUcionices).ToList();
                    Ucionica        ucionica = ucionice.SingleOrDefault(x => x.ZauzetostUcionices.Contains(z));
                    ucionica.ZauzetostUcionices.Remove(z);

                    db.Entry(z).State = EntityState.Deleted;

                    Cas cas = db.Cas.Find(idCasa);
                    db.Entry(cas).State = EntityState.Deleted;

                    db.SaveChanges();

                    return(true);
                }catch (Exception e)
                {
                    Console.WriteLine("Message: " + e.Message + "\nInner: " + e.InnerException.Message);
                    return(false);
                }
            }
        }
예제 #7
0
        /// <summary>
        /// Provera postojanja rednog broja casa, da ne bi
        /// kreirao cas sa rednim brojem nekog vec kreiranog casa
        /// </summary>
        /// <param name="razred">The razred.</param>
        /// <param name="odeljenje">The odeljenje.</param>
        /// <param name="redniBrojCasa">The redni broj casa.</param>
        /// <returns></returns>
        public JsonResult ProveraPostojanjaRednogBrojaCasa(int razred, int odeljenje, int redniBrojCasa)
        {
            try
            {
                DateTime datum = DateTime.Today;

                Odeljenje odabranoOdeljenje = _context.Odeljenja.SingleOrDefault(x => x.Razred == razred && x.OznakaID == odeljenje && x.StatusID == 3);

                Cas cas = new Cas();

                cas = _context.Casovi.Where(x => x.OdeljenjeId == odabranoOdeljenje.Id && x.Datum == datum)
                      .SingleOrDefault(x => x.RedniBrojCasa == redniBrojCasa);
                if (cas == null)
                {
                    return(Json(1, JsonRequestBehavior.AllowGet));
                }


                return(Json(0, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
            return(Json(-1, JsonRequestBehavior.AllowGet));
        }
예제 #8
0
        public IActionResult SpremiEdit(EditCasVM model)
        {
            Cas cas = _db.Cas.Find(model.ID);

            cas.SadrzajCasa = model.Sadrzaj;
            _db.SaveChanges();
            return(RedirectToAction("EditCas", new { id = model.ID }));
        }
예제 #9
0
 public Cas CreateEcas()
 {
     if (ecas == null)
     {
         ecas = new Ecas();
     }
     return(ecas);
 }
예제 #10
0
 public PersonalPronoun(string text, Person person, Cas cas, Gender gender, Number number)
 {
     this.Text   = text;
     this.Person = person;
     this.Cas    = cas;
     this.Gender = gender;
     this.Number = number;
 }
예제 #11
0
 public Cas CreateTcasWithFiles()
 {
     if (tcasWithFiles == null)
     {
         tcasWithFiles = new TcasWithFiles(CreateTcas());
     }
     return(tcasWithFiles);
 }
예제 #12
0
 public Cas CreateTcas()
 {
     if (tcas == null)
     {
         tcas = new Tcas((Cas)CreateEcas());
     }
     return(tcas);
 }
예제 #13
0
 public Cas CreateNoSentToTdmsEcas()
 {
     if (noSentToTdmsEcas == null)
     {
         noSentToTdmsEcas = new NoSentToTdmsEcas();
     }
     return(noSentToTdmsEcas);
 }
예제 #14
0
        public bool ChangeCas(CasIM cas)
        {
            Cas c = dao.FindById(cas.Id_casa);

            c.pocetak = cas.pocetak;
            c.kraj    = cas.kraj;
            c.datum   = cas.datum;

            return(dao.Update(c));
        }
예제 #15
0
        public bool AddCas(CasIM cas)
        {
            Cas c = new Cas()
            {
                datum                  = cas.datum,
                pocetak                = cas.pocetak,
                kraj                   = cas.kraj,
                OblastId_oblasti       = cas.OblastId_oblasti,
                ZaposleniId_zaposlenog = cas.ZaposleniId_zaposlenog,
            };

            return(dao.Insert(c));
        }
예제 #16
0
        public IHttpActionResult PostCas(Cas obj)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                _db.Cas.Add(obj);
                _db.SaveChanges();
            }
            catch (EntityException e)
            {
                throw CreateHttpResponseException(Util.ExceptionHandler.HandleException(e), HttpStatusCode.Conflict);
            }

            return(CreatedAtRoute("DefaultApi", new { id = obj.CasId }, obj));
        }
예제 #17
0
        private void dodajCasButton_Click(object sender, EventArgs e)
        {
            brojSatiInput.Focus();
            if (Validate())
            {
                Cas cas = new Cas
                {
                    Datum       = datumCasaInput.Value.ToShortDateString(),
                    NastavnikId = Global.TrenutniKorisnik.KorisnikId,
                    PredmetId   = Convert.ToInt32(predmetiInput.SelectedValue),
                    BrojSati    = Convert.ToInt32(brojSatiInput.Text)
                };

                HttpResponseMessage response = _casoviService.PostResponse(cas);
                cas.CasId = response.Content.ReadAsAsync <CasVM>().Result.CasId;

                if (response.IsSuccessStatusCode)
                {
                    MessageBox.Show("Čas uspješno dodan");
                    response = _casoviService.GetResponse();
                    casoviGridView.DataSource = response.Content.ReadAsAsync <List <CasVM> >().Result.OrderByDescending(x => x.CasId).ToList();

                    response = _uceniciService.GetResponse();
                    List <UcenikVM> uceniciList = response.Content.ReadAsAsync <List <UcenikVM> >().Result.ToList();

                    if (response.IsSuccessStatusCode)
                    {
                        UceniciWrapper uceniciCas = new UceniciWrapper
                        {
                            Cas     = cas,
                            Ucenici = uceniciList
                        };
                        _prisustvoService.PostResponse(uceniciCas);
                    }
                    brojSatiInput.Clear();
                }
                else
                {
                    MessageBox.Show("Error code: " + response.StatusCode + " Message: " + response.ReasonPhrase);
                }
            }
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="OdeljenjeZaKreiranje"></param>
        /// <returns></returns>
        //[HttpPost]
        //public int KreirajOdeljenje(DTOOdeljenje OdeljenjeZaKreiranje)
        //{
        //    //Objekat vec kreiranog odeljenja.
        //    var tekuceKreiranoOdeljenje = _context.Odeljenja.SingleOrDefault(o => o.OznakaID == OdeljenjeZaKreiranje.Oznaka && o.Razred == OdeljenjeZaKreiranje.Razred && o.StatusID == 3); //Status 3 je Kreirano

        //    //Ukoliko postoji,to odeljenje se arhivira i ucenici iz njega se premestaju u sledecu godinu status odeljenja u toku.
        //    if (tekuceKreiranoOdeljenje != null)
        //    {
        //        ArhivirajOdeljenje(tekuceKreiranoOdeljenje);
        //        PremestiUSledecuGodinu(tekuceKreiranoOdeljenje);
        //    }

        //    //Tekuce odeljenje koje trenutno ima status u toku a treba se kreira.
        //    var odeljenjeZaPromenuStatusa = _context.Odeljenja.SingleOrDefault(o => o.OznakaID == OdeljenjeZaKreiranje.Oznaka && o.Razred == OdeljenjeZaKreiranje.Razred && o.StatusID == 2); //Status 2 je U toku

        //    //Ukoliko je null doslo je do nepoklapanja interfejsa na frontendu i podataka u bazi.
        //    if (odeljenjeZaPromenuStatusa == null)
        //        return -1;

        //    //Svi ucenici koji su bili u odeljenju u toku se dodaju u listu,sortirani po
        //    //Prezime, Ime, Ime oca
        //    var ucenici = _context.Ucenici
        //        .Where(u => u.OdeljenjeId == odeljenjeZaPromenuStatusa.Id)
        //        .OrderBy(u => u.Prezime)
        //        .ThenBy(u => u.Ime)
        //        .ThenBy(u => u.ImeOca)
        //        .ToList();

        //    //Brojac radi dodavanja broja u dnevniku, i generisanja jedinstvenog broja.
        //    ///<see cref="Ucenik.GenerisiJedinstveniBroj"/>
        //    int brojac = 1;

        //    foreach (Ucenik ucenik in ucenici)
        //    {
        //        ucenik.BrojUDnevniku = brojac++;
        //        ucenik.GenerisiJedinstveniBroj();
        //    }

        //    //Promena statusa odeljenja na "Kreirano".
        //    odeljenjeZaPromenuStatusa.StatusID = 3; //StatudID 3 je Kreirano
        //    _context.SaveChanges();
        //    return 0;
        //}
        /// <summary>
        /// Upisuje cas i odsutne ucenike u bazu.
        /// </summary>
        /// <param name="odsutni">Lista sa ID-evima od odsutnih ucenika</param>
        /// <returns></returns>
        private JsonResult UpisiOdsutne(int[] odsutni)
        {
            var datum             = DateTime.Today;
            var casId             = 7;
            var opis              = "Cas 2";
            var profesor          = 1;
            var predmet           = 1;
            var odeljenje         = 4;
            var polugodiste       = 1;
            var tromesecje        = 1;
            var redniBrojPredmete = 3;
            var redniBrojCasa     = 2;

            Cas cas = new Cas()
            {
                CasId             = casId,
                Datum             = datum,
                Opis              = opis,
                ProfesorId        = profesor,
                PredmetId         = predmet,
                OdeljenjeId       = odeljenje,
                Polugodiste       = polugodiste,
                Tromesecje        = tromesecje,
                RedniBrojPredmeta = redniBrojPredmete,
                RedniBrojCasa     = redniBrojCasa
            };

            _context.Casovi.Add(cas);
            _context.SaveChanges();

            foreach (var odsutan in odsutni)
            {
                Odsustvo o = new Odsustvo();
                o.CasId    = casId;
                o.UcenikId = odsutan;

                _context.Odsustva.Add(o);
                _context.SaveChanges();
            }

            return(Json("", JsonRequestBehavior.AllowGet));
        }
예제 #19
0
파일: Aldea.cs 프로젝트: veroeb/Lab3final
        //Funcion de los recolectores (ORO)
        public int RecolectarOro()
        {
            int ultimo = AlmacenesOro.Count() - 1;
            int oro    = 0;

            foreach (RecolectorOro ro in ProdOro)
            {
                oro += ro.ProduccionPorSegundo;
            }
            int a = 100;

            while (a > 0)
            {
                foreach (AlmacenOro al in AlmacenesOro)
                {
                    if (al.Lleno() != true)
                    {
                        a   = al.Guardar(oro);
                        oro = a;
                    }

                    else if (al == AlmacenesOro[ultimo] && al.Lleno())
                    {
                        int b = Ayu.Guardar(oro);
                        oro = b;

                        if (oro > 0)
                        {
                            int final = Cas.Guardar(oro);
                        }
                    }
                    else if (oro == 0)
                    {
                        break;
                    }
                }
                break;
            }
            return(oro);
        }
예제 #20
0
        public List <UcenikIM> GetUcenikeForCas(CasIM cas)
        {
            using (var db = new ModelOsnovnaSkolaContainer())
            {
                Cas c = db.Cas.Include(p => p.ZauzetostUcionice.Odeljenje).SingleOrDefault(x => x.Id_casa == cas.Id_casa);

                Odeljenje o = c.ZauzetostUcionice.Odeljenje;


                List <UcenikIM> retVal = new List <UcenikIM>();

                foreach (var u in o.Ucenici)
                {
                    retVal.Add(new UcenikIM()
                    {
                        Id_ucenika = u.Id_ucenika, ime = u.ime, prezime = u.prezime, OdeljenjeId_odeljenja = u.Odeljenje.Id_odeljenja
                    });
                }

                return(retVal);
            }
        }
예제 #21
0
파일: Aldea.cs 프로젝트: veroeb/Lab3final
        //Funcion de los recolecotores (ELIXIR ROJO)
        public void RecolectarRojo()
        {
            int ultimo = AlmacenesRojo.Count() - 1;
            int rojo   = 0;

            foreach (RecolectorElixirRojo pr in ProdRojo)
            {
                rojo += pr.ProduccionPorSegundo;
            }
            int a = 100;

            while (a > 0)
            {
                foreach (AlmacenElixirRojo ar in AlmacenesRojo)
                {
                    if (ar.Lleno() != true)
                    {
                        a    = ar.Guardar(rojo);
                        rojo = a;
                    }
                    else if (ar == AlmacenesRojo[ultimo] && ar.Lleno())
                    {
                        int b = Ayu.GuardarElixirRojo(rojo);
                        rojo = b;

                        if (rojo > 0)
                        {
                            int final = Cas.GuardarElixirRojo(rojo);
                        }
                    }
                    else if (rojo == 0)
                    {
                        break;
                    }
                }
                break;
            }
        }
예제 #22
0
파일: Aldea.cs 프로젝트: veroeb/Lab3final
        public void RecolectarNegro()
        {
            int negro = 0;
            int a     = 100;

            foreach (RecolectorElixirNegro pn in ProdNegro)
            {
                negro += pn.ProduccionPorSegundo;
            }
            while (a > 0)
            {
                if (AlmacenNegro.Lleno() != true)
                {
                    a     = AlmacenNegro.Guardar(negro);
                    negro = a;
                }
                else if (negro > 0)
                {
                    int fin = Cas.GuardarElixirNegro(negro);
                }
                break;
            }
        }
예제 #23
0
        public bool ChangeCas(CasIM cas, out string retMsg)
        {
            using (var db = new ModelOsnovnaSkolaContainer())
            {
                Cas c = db.Cas.Include(z => z.ZauzetostUcionice.Ucionica).Include(p => p.ZauzetostUcionice.Odeljenje).SingleOrDefault(x => x.Id_casa == cas.Id_casa);

                UcionicaIM ucionica = new UcionicaIM()
                {
                    naziv        = c.ZauzetostUcionice.Ucionica.naziv,
                    broj_ucenika = c.ZauzetostUcionice.Ucionica.broj_ucenika,
                    Id_ucionice  = c.ZauzetostUcionice.Ucionica.Id_ucionice
                };
                OdeljenjeIM odeljenje = new OdeljenjeIM()
                {
                    Id_odeljenja = c.ZauzetostUcionice.Odeljenje.Id_odeljenja,
                    razred       = c.ZauzetostUcionice.Odeljenje.razred
                };

                retMsg = "";
                if (!ValidateCasExistance(cas, ucionica, odeljenje, out retMsg))
                {
                    c.ZauzetostUcionice.datum   = cas.datum;
                    c.ZauzetostUcionice.pocetak = cas.pocetak;

                    db.Entry(c).State = EntityState.Modified;
                    db.SaveChanges();
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            //Cas c = dao.FindById(cas.Id_casa);

            //c.pocetak = cas.pocetak;
        }
예제 #24
0
 public ConnectedAreas(Cas _father)
 {
     numbers  = new HashSet <Area>();
     outsides = new HashSet <Area>();
     father   = _father;
 }
        public string BuildEdi(List <Patient> patientList, InsuranceCompany insurance,
                               BillingProvider billingProvider)
        {
            var buildEdi = new StringBuilder();
            //Begin ISA
            var buildisa = new Isa();

            buildEdi.Append(buildisa.BuildIsa());

            //Begin GS
            var buildGs = new Gs();

            buildEdi.Append(buildGs.BuildGs());

            //Begin ST
            var buildSt = new St();

            buildEdi.Append(buildSt.BuildSt());

            //Begin BPR
            var buildBpr = new Bpr();

            buildEdi.Append(buildBpr.BuildBpr(insurance));

            //Build TRN
            var buildTrn = new Trn();

            buildEdi.Append(buildTrn.BuildTrn(insurance));

            //Ref Segment conditional, not included at this time
            //REF Receiver Identification
            //REF01 Receiver Reference Number
            //REF02 Receiver Reference Identification

            //Build DTM Loop Production Date
            var buildDtm = new Dtm();

            buildEdi.Append(buildDtm.BuildDtm(patientList));

            //Build N1 Insurance Company Identification Segment 1000A
            var buildNOne = new N1();

            buildEdi.Append(buildNOne.BuildNOne(insurance));

            //BuildN3 Insurance Company Identification Segment 1000A
            var buildNThree = new N3();

            buildEdi.Append(buildNThree.BuildNThree(insurance));

            // Build N4 Insurance Company Identification 1000A
            var buildNFour = new N4();

            buildEdi.Append(buildNFour.BuildN4(insurance));

            //Build Ref Insurance Company Identification 1000A
            var buildRef = new Ref();

            buildEdi.Append(buildRef.BuildRef());

            //Build Per Insurance Company Identification 1000A
            var buildPer = new Per();

            buildEdi.Append(buildPer.BuildPerPhone());

            //Build Per Insurance Company Website Information 1000A
            buildEdi.Append(buildPer.BuildPerWebSite());

            //Build N1 Provider Identifier Segment 1000B
            buildEdi.Append(buildNOne.BuildNOne(billingProvider));

            //Build N3 Provider Identifier Segment 1000B
            buildEdi.Append(buildNThree.BuildNThree(billingProvider));

            //Build N4 Provider Identifier Segment 1000B
            buildEdi.Append(buildNFour.BuildN4(billingProvider));

            //Build Ref Provider Identifier 1000B
            buildEdi.Append(buildRef.BuildRefAdditionalPayee());
            buildEdi.Append(buildRef.BuildRefAdditionalPayeeTwo());

            //LX Segment 2000B
            var buildLx = new Lx();

            buildEdi.Append(buildLx.BuildLx());

            //TS3 2000B NOT USED
            //TS2 2000B NOT USED
            //CLP Segment 2100

            foreach (Patient patient in patientList)
            {
                var buildClp = new Clp();
                buildEdi.Append(buildClp.BuildClp(patient));

                var buildNmOne = new Nm1();
                buildEdi.Append(buildNmOne.BuildNm1(patient));


                //MIA Inpatient Adjudication Information
                //MOA Outpatient Adjudication Information
                //REF Other CLaim Related Identification


                //Ref Rendering Provider Identifier 2100
                buildEdi.Append(buildRef.BuildRef(patient.Provider));

                //DTM Statement From or To Date 2100
                buildEdi.Append(buildDtm.BuildDtm(patient));

                //PER Claim Contact Information 2100

                //SVC Level 2110
                var buildSvc = new Svc();

                buildEdi.Append(buildSvc.BuildSvc(patient.Charge));
                buildEdi.Append(buildDtm.BuildDtm(patient.Charge));

                var buildCas = new Cas();
                if (patient.Charge.AdjustmentList != null)
                {
                    buildEdi.Append(buildCas.BuildCas(patient.Charge.AdjustmentList));
                    buildEdi.Append(buildCas.BuildCas(patient.Charge));
                }
                else
                {
                    buildEdi.Append(buildCas.BuildCas(patient.Charge));
                }
                buildEdi.Append(buildRef.BuildRefControlNumber());

                var buildAmt = new Amt();
                buildEdi.Append(buildAmt.BuildAmt(patient.Charge));
                //QTY 2110
                //LQ 2110
                //LQ01 Service Line Remittance Remark Code 1
                //LQ02 Service Line Remittance Remark Code 2

                foreach (AddonCharge addon in patient.Charge.AddonChargeList)
                {
                    buildEdi.Append(buildSvc.BuildSvc(addon));
                    buildEdi.Append(buildCas.BuildCas(addon.AdjustmentList));
                    buildEdi.Append(buildRef.BuildRefControlNumber());
                    buildEdi.Append(buildAmt.BuildAmt(addon));
                }
            }

            var buildSe = new Se();

            buildEdi.Append(buildSe.BuildSe());

            var buildGe = new Ge();

            buildEdi.Append(buildGe.BuildGe());

            var buildIea = new Iea();

            buildEdi.Append(buildIea.BuildIea());

            return(buildEdi.ToString());
        }
예제 #26
0
 public PrecacTableBase(int xSize, int ySize)
 {
     map = new AreaMap(xSize, ySize, this);
     cas = new Cas(this);
 }
예제 #27
0
 public CasUceniciViewModel(Cas c, List <UcenikSaPrisustvomViewModel> u, List <Predmet> p)
 {
     Cas      = c;
     Ucenici  = u;
     Predmeti = p;
 }
예제 #28
0
        public ActionResult Create(UpisCasaViewModel casViewModel)
        {
            var odeljenje = _context.Odeljenja
                            .SingleOrDefault(x => x.Razred == casViewModel.Razred && x.OznakaID == casViewModel.Odeljenje && x.StatusID == 3);

            string prof     = User.Identity.GetUserId();
            var    profesor = _context.Profesori
                              .SingleOrDefault(p => p.UserProfesorId == prof);

            var listaUcenika = odeljenje.Ucenici
                               .OrderBy(x => x.BrojUDnevniku)
                               .ToList();

            Cas cas = new Cas();

            cas.Naziv             = casViewModel.Naziv;
            cas.Opis              = casViewModel.Opis;
            cas.PredmetId         = casViewModel.PredmetId;
            cas.OdeljenjeId       = odeljenje.Id;
            cas.Odeljenje         = _context.Odeljenja.Single(x => x.Id == odeljenje.Id);
            cas.RedniBrojCasa     = casViewModel.RedniBrojCasa;
            cas.RedniBrojPredmeta = casViewModel.RedniBrojPredmeta;

            cas.Polugodiste = _context
                              .SkolskaGodine
                              .Single(x => x.SkolskaGodinaId == odeljenje.SkolskaGodinaId)
                              .Polugodista
                              .Single(x => x.PocetakPolugodista <= DateTime.Today && x.KrajPolugodista > DateTime.Today)
                              .TipPolugodista;

            cas.Tromesecje = _context
                             .SkolskaGodine
                             .Single(x => x.SkolskaGodinaId == odeljenje.SkolskaGodinaId)
                             .Polugodista
                             .Single(x => x.PocetakPolugodista <= DateTime.Today && x.KrajPolugodista > DateTime.Today)
                             .Tromesecja
                             .Single(x => x.PocetakTromesecja <= DateTime.Today && x.KrajTromesecja > DateTime.Today)
                             .TipTromesecja;


            cas.ProfesorId = profesor.ProfesorID;
            cas.Datum      = DateTime.Today;



            var profesorPredmeti = _context.Profesori
                                   .SingleOrDefault(p => p.ProfesorID == profesor.ProfesorID)
                                   .Predmeti.Select(x => x);

            var odeljenjePredmeti = _context.Odeljenja
                                    .SingleOrDefault(o => o.Id == odeljenje.Id)
                                    .Predmeti.Select(x => x);


            //Lista predmeta koje profesor predaje konkretnom odeljenju
            IEnumerable <Predmet> listaPredmeta = null;

            if (profesorPredmeti != null && odeljenjePredmeti != null)
            {
                listaPredmeta = profesorPredmeti.Intersect(odeljenjePredmeti);
            }
            else
            {
                listaPredmeta = new List <Predmet>();
            }


            predmetiID = new int[listaPredmeta.Count()];

            for (int i = 0; i < listaPredmeta.Count(); i++)
            {
                predmetiID[i] = listaPredmeta.ElementAt(i).PredmetID;
            }

            if (ModelState.IsValid)
            {
                var ucenici = new List <UcenikSaPrisustvomViewModel>();
                try
                {
                    var casovi = _context.Casovi
                                 .Where(c => c.Datum == DateTime.Today && c.OdeljenjeId == odeljenje.Id);

                    //casovi = casovi.Where()

                    int maxCas = casovi.Max(x => x.RedniBrojCasa);

                    var prethodniCas = casovi.SingleOrDefault(x => x.RedniBrojCasa == maxCas);

                    foreach (var item in odeljenje.Ucenici)
                    {
                        var odsutan = item.Odsustva.Where(x => x.CasId == prethodniCas.CasId)
                                      .SingleOrDefault(x => x.UcenikId == item.UcenikID);

                        if (odsutan == null)
                        {
                            ucenici.Add(new UcenikSaPrisustvomViewModel
                            {
                                BrojUDnevniku = item.BrojUDnevniku,
                                Fotografija   = item.Fotografija,
                                UcenikID      = item.UcenikID,
                                Ime           = item.Ime,
                                Prezime       = item.Prezime,
                                Prisutan      = true
                            });
                        }
                        else
                        {
                            ucenici.Add(new UcenikSaPrisustvomViewModel
                            {
                                BrojUDnevniku = item.BrojUDnevniku,
                                Fotografija   = item.Fotografija,
                                UcenikID      = item.UcenikID,
                                Ime           = item.Ime,
                                Prezime       = item.Prezime,
                                Prisutan      = false
                            });
                        }
                    }
                    ucenici.OrderBy(x => x.BrojUDnevniku).ToList();
                }
                catch (Exception)
                {
                    foreach (var item in odeljenje.Ucenici)
                    {
                        ucenici.Add(new UcenikSaPrisustvomViewModel
                        {
                            BrojUDnevniku = item.BrojUDnevniku,
                            Fotografija   = item.Fotografija,
                            UcenikID      = item.UcenikID,
                            Ime           = item.Ime,
                            Prezime       = item.Prezime,
                            Prisutan      = true
                        });
                    }
                }


                CasUceniciViewModel model = new CasUceniciViewModel()
                {
                    Cas      = cas,
                    Ucenici  = ucenici,
                    Predmeti = listaPredmeta.ToList(),
                    // PredmetiID = predmetiID
                };

                _context.Casovi.Add(cas);
                _context.SaveChanges();

                return(View("Cas", model));
                // return View("Evidencija", model);
            }

            ViewBag.OdeljenjeId = new SelectList(_context.Odeljenja, "Id", "Id", cas.OdeljenjeId);
            ViewBag.PredmetId   = new SelectList(_context.Predmeti, "PredmetID", "NazivPredmeta", cas.PredmetId);
            ViewBag.ProfesorId  = new SelectList(_context.Profesori, "ProfesorID", "Ime", cas.ProfesorId);
            return(View(cas));
        }