public TrainingMasterView(int id) { InitializeComponent(); MessagingCenter.Subscribe <ViewModelCommonUtil>(this, ViewModelConst.MessagingTrainingSelfScroll, (sender) => { ControlScroll.ScrollToAsync(ControlScroll, ScrollToPosition.Start, false); }); NavigationPage.SetHasNavigationBar(this, false); var vm = new TrainingMasterViewModel(id: id, partStack: PartStack, loadStack: LoadStack) { ErrorStack = ErrorStack.Children }; BindingContext = vm; }
public IActionResult Post([FromBody] TrainingMasterViewModel nTrainingMaster) { if (nTrainingMaster.TrainingDate != null) { var tempDate = nTrainingMaster.TrainingDate.Value; System.TimeSpan time = System.TimeSpan.Parse(nTrainingMaster.TrainingDateTime); nTrainingMaster.TrainingDate = new System.DateTime(tempDate.Year, tempDate.Month, tempDate.Day, time.Hours, time.Minutes, 0); } if (nTrainingMaster.TrainingDateEnd != null) { var tempDate = nTrainingMaster.TrainingDateEnd.Value; System.TimeSpan time = System.TimeSpan.Parse(nTrainingMaster.TrainingDateEndTime); nTrainingMaster.TrainingDateEnd = new System.DateTime(tempDate.Year, tempDate.Month, tempDate.Day, time.Hours, time.Minutes, 0); } nTrainingMaster.CreateDate = DateTime.Now; nTrainingMaster.Creator = nTrainingMaster.Creator ?? "Someone"; var course = this.repositoryCousre.Get(nTrainingMaster.TrainingCousreId.Value); if (nTrainingMaster.TblTrainingDetail != null) { foreach (var detail in nTrainingMaster.TblTrainingDetail) { detail.MinScore = course.MinimunScore; detail.CreateDate = nTrainingMaster.CreateDate; detail.Creator = nTrainingMaster.Creator; if (detail.Score != null) { detail.StatusForTraining = (byte)(detail.Score >= detail.MinScore ? 1 : 2); } } } if (nTrainingMaster.PlaceId.HasValue) { nTrainingMaster.TblTrainingMasterHasPlace.Add(new TblTrainingMasterHasPlace() { CreateDate = nTrainingMaster.CreateDate, Creator = nTrainingMaster.Creator ?? "Someone", PlaceId = nTrainingMaster.PlaceId.Value, }); } return(new JsonResult( this.repository.AddAsync(this.mapper.Map <TrainingMasterViewModel, TblTrainingMaster>(nTrainingMaster)).Result, this.DefaultJsonSettings)); }
public IActionResult Put(int id, [FromBody] TrainingMasterViewModel uTrainingMaster) { if (uTrainingMaster.TrainingDate != null) { var tempDate = uTrainingMaster.TrainingDate.Value; System.TimeSpan time = System.TimeSpan.Parse(uTrainingMaster.TrainingDateTime); uTrainingMaster.TrainingDate = new System.DateTime(tempDate.Year, tempDate.Month, tempDate.Day, time.Hours, time.Minutes, 0); } if (uTrainingMaster.TrainingDateEnd != null) { var tempDate = uTrainingMaster.TrainingDateEnd.Value; System.TimeSpan time = System.TimeSpan.Parse(uTrainingMaster.TrainingDateEndTime); uTrainingMaster.TrainingDateEnd = new System.DateTime(tempDate.Year, tempDate.Month, tempDate.Day, time.Hours, time.Minutes, 0); } uTrainingMaster.ModifyDate = DateTime.Now; uTrainingMaster.Modifyer = uTrainingMaster.Modifyer ?? "Someone"; var course = this.repositoryCousre.Get(uTrainingMaster.TrainingCousreId.Value); if (uTrainingMaster.TblTrainingDetail != null) { foreach (var detail in uTrainingMaster.TblTrainingDetail) { detail.MinScore = course.MinimunScore; if (detail.TrainingDetailId > 0) { detail.ModifyDate = uTrainingMaster.ModifyDate; detail.Modifyer = uTrainingMaster.Modifyer; } else { detail.CreateDate = uTrainingMaster.ModifyDate; detail.Creator = uTrainingMaster.Modifyer; } if (detail.Score != null) { detail.StatusForTraining = (byte)(detail.Score >= detail.MinScore ? 1 : 2); } } } // Update Place if (uTrainingMaster.PlaceId.HasValue) { Expression <Func <TblTrainingMasterHasPlace, bool> > condition = e => e.TrainingMasterId == uTrainingMaster.TrainingMasterId; var HasPlace = this.repositoryHasPlace.Find(condition); if (HasPlace != null) { HasPlace.ModifyDate = uTrainingMaster.ModifyDate; HasPlace.Modifyer = uTrainingMaster.Modifyer; HasPlace.PlaceId = uTrainingMaster.PlaceId; this.repositoryHasPlace.Update(HasPlace, HasPlace.TrainingMasterHasPlaceId); } else { uTrainingMaster.TblTrainingMasterHasPlace.Add(new TblTrainingMasterHasPlace() { CreateDate = uTrainingMaster.ModifyDate, Creator = uTrainingMaster.Modifyer ?? "Someone", PlaceId = uTrainingMaster.PlaceId, }); } } var hasData = this.repository.Update( this.mapper.Map <TrainingMasterViewModel, TblTrainingMaster>(uTrainingMaster), id); if (hasData != null) { // filter Expression <Func <TblTrainingDetail, bool> > condition = m => m.TrainingMasterId == id; var dbTrainingDetails = this.repositoryDetail.FindAll(condition); //Remove TrainingDetail if edit remove it foreach (var dbTrainingDetail in dbTrainingDetails) { if (!uTrainingMaster.TblTrainingDetail.Any(x => x.EmployeeTraining == dbTrainingDetail.EmployeeTraining)) { this.repositoryDetail.Delete(dbTrainingDetail.TrainingDetailId); } } //Update TrainingDetail foreach (var detail in uTrainingMaster.TblTrainingDetail) { if (detail.TrainingDetailId > 0) { this.repositoryDetail.Update(detail, detail.TrainingDetailId); } else { detail.TrainingMasterId = uTrainingMaster.TrainingMasterId; this.repositoryDetail.Add(detail); } } } return(new JsonResult(hasData, this.DefaultJsonSettings)); }