private void NavigatedJobDetail(CollectJob job) { if (job == null) { return; } DetailJob detailJob = new DetailJob() { AddressDetail = job.AddressDetail, CompanyName = job.CompanyName, IsCollected = true, JobId = job.JobId, StartTime = job.StartTime, University = job.University, Latitude = job.Latitude, Longitude = job.Longitude, Url = job.Url, Status = job.Status, NoteText = job.NoteText, OfficalWeibo = job.OfficalWeibo }; if (!double.IsNaN(job.Latitude)) { detailJob.IsPathAvailable = true; } else { detailJob.IsPathAvailable = false; } (App.Current as App).CurrentJob = detailJob; Messenger.Default.Send <string>(@"/View/JobDetailPage.xaml?jobId=" + job.JobId, "Navigate"); }
public List <CollectJob> GetCollectJobList() { //IQueryable<FavouriteTable> query = // from c in db.favouriteTable //where true // select c; List <CollectJob> collectJobList = new List <CollectJob>(); foreach (FavouriteTable j in db.favouriteTable) { CollectJob job = new CollectJob() { AddressDetail = j.Job_AddressDetail, CompanyName = j.Job_CompanyName, StartTime = j.Job_StartTime, Status = j.Fav_Status, University = j.Job_University, JobId = j.Job_ID, Url = j.Job_Url, Latitude = j.Job_AddressLatitude, Longitude = j.Job_AddressLongitude, NoteText = j.Fav_Remarks, OfficalWeibo = j.Job_OfficalWeibo }; collectJobList.Add(job); } return(collectJobList); }
public void CreateCollectJobWithLimit(ResourceSource source, int limit) { var job = new CollectJob(source, limit); Assert.AreEqual(source, job.Resource); Assert.AreEqual(limit, job.Limit); Assert.AreEqual(limit <= 0, job.LimitReached); }
public void CreateCollectJob(ResourceSource source) { var job = new CollectJob(source); Assert.AreEqual(source, job.Resource); Assert.AreEqual(source.Amount, job.Limit); Assert.AreEqual(source.Amount <= 0, job.LimitReached); }
public void Initialize() { shimsContext = ShimsContext.Create(); SetupShims(); collectJob = new CollectJob(); privateObject = new PrivateObject(collectJob); collectJob.JobUid = DummyGuid; }
public void ExecuteJobOnce() { var settlement = new Settlement(); var villager = new Villager(); var definition = new ResourceDefinition("Stone", 1); var job = new CollectJob(new ResourceSource(definition, 15)); job.AssignedVillagers.Add(villager); job.Execute(settlement); Assert.IsFalse(job.LimitReached); Assert.AreEqual(1, job.AssignedVillagers.Count()); Assert.AreEqual(1, settlement.StockPile[definition]); }
public int ExecuteJobToLimit(ResourceDefinition definition, int resourceAmount, int limit) { var settlement = new Settlement(); var villager = new Villager(); var job = new CollectJob(new ResourceSource(definition, resourceAmount), limit); job.AssignedVillagers.Add(villager); Assert.IsFalse(job.LimitReached); for (var i = 0; i < resourceAmount; i++) { job.Execute(settlement); } Assert.AreEqual(1, job.AssignedVillagers.Count()); return(settlement.StockPile[definition]); }
public CollectJob GetNewInsertCollectJobItem(string Id) { FavouriteTable j = db.favouriteTable.SingleOrDefault(c => c.Job_ID.Equals(Id)); CollectJob job = new CollectJob() { AddressDetail = j.Job_AddressDetail, CompanyName = j.Job_CompanyName, StartTime = j.Job_StartTime, Status = j.Fav_Status, University = j.Job_University, JobId = j.Job_ID, Latitude = j.Job_AddressLatitude, Longitude = j.Job_AddressLongitude, NoteText = j.Fav_Remarks, Url = j.Job_Url, OfficalWeibo = j.Job_OfficalWeibo }; return(job); }
protected override JobHandle OnUpdate(JobHandle inputDeps) { //---------check if we need to run---------// var entSchedule = GetSingletonEntity <CpSysSchedule>(); var cpSchedule = GetSingleton <CpSysSchedule>(); if (!cpSchedule.CanRunSysUpdateAtt()) { return(inputDeps); } _lastRunFrame = Time.frameCount; var em = World.Active.EntityManager; //---------preapre---------// is_converge_arr[0] = true; int cnt_relation = _group_rel.CalculateLength(); var access_att_ro = GetComponentDataFromEntity <CpAttitude>(isReadOnly: true); var access_att_rw = GetComponentDataFromEntity <CpAttitude>(); var access_schedule = GetComponentDataFromEntity <CpSysSchedule>(); var access_dirty = GetComponentDataFromEntity <CpIsDirty>(isReadOnly: false); var accbuf_relation = GetBufferFromEntity <CpRelationBuf>(isReadOnly: true); //---------run---------// //---------collect modifications---------// var jobCollect = new CollectJob { acc_att = access_att_ro, is_converge_arr = is_converge_arr, orig_attitudes = orig_attitudes.ToConcurrent(), target_mods = target_mods.ToConcurrent(), unique_nodes = unique_nodes.ToConcurrent(), }.Schedule(this, inputDeps); var jobCheckConverge = new CheckConvergeJob { is_converge_arr = is_converge_arr, entSchedule = entSchedule, acc_schedule = access_schedule, }.Schedule(jobCollect); //---------assign back to attitudes---------// var jobWriteBack = new WriteBackJob { acc_att = access_att_rw, }.Schedule(target_mods, 1, jobCollect); var jobClearTargetMods = target_mods.ClearWithJob(jobWriteBack); var jobSetDirtyNode = new SetDirtyByTargetNodes { orig_attitude = orig_attitudes, accbuf_relation = accbuf_relation, acc_att = access_att_ro, acc_dirty = access_dirty, NODE_THRES = NODE_MOD_THRES, }.Schedule(unique_nodes, 8, jobWriteBack); var jobClearUniqueNodes = unique_nodes.ClearWithJob(jobSetDirtyNode); var jobClearOrigAttitude = orig_attitudes.ClearWithJob(jobSetDirtyNode); var handle_clear = JobHandle.CombineDependencies(jobClearTargetMods, jobClearUniqueNodes, jobClearOrigAttitude); return(JobHandle.CombineDependencies(handle_clear, jobCheckConverge)); }