public void ZapisJobInformaciDoDatabaze(Models.Job JobData) { using (AlitaDatabase db = VytvorInstanci()) { SetOnline(db); Job jobDataDatabaze = new Job(); JobModelToJobEntity(JobData, ref jobDataDatabaze); if (JobData.CasDokonceni != DateTime.MinValue) { jobDataDatabaze.Finnished = JobData.CasDokonceni; } var serverZDatabaze = db.RobotServer.Single(x => x.Device_Id == JobData.Server.Device_ID); jobDataDatabaze.Server_Id = JobData.Server.Device_ID; serverZDatabaze.Job.Add(jobDataDatabaze); jobDataDatabaze.RobotServer = serverZDatabaze; jobDataDatabaze.Id = VolneJobId(); db.Job.Add(jobDataDatabaze); try { db.SaveChanges(); } catch (DbEntityValidationException ex) { db.Job.Remove(jobDataDatabaze); jobDataDatabaze.Id++; db.Job.Add(jobDataDatabaze); db.SaveChanges(); } SetOffline(db); } }
public void AktualizujJobDataVDatabazi(Models.Job JobData) { using (AlitaDatabase db = VytvorInstanci()) { var obsah = db.Job.Where(x => x.IdOnServer == JobData.ID); Job jobEntity = obsah.First(); JobModelToJobEntity(JobData, ref jobEntity); var agv = db.Agv.Include(x => x.Device_Id) .Where(x => x.Device_Id == JobData.Robot.Device_ID) .First(); jobEntity.Agv_Id = agv.Id; jobEntity.Agv = agv; db.SaveChanges(); } }