public override void RefreshDataView()
 {
     if (!bgwMain.IsBusy)
     {
         MethodBase.GetCurrentMethod().Info("Fecthing specialSparepart data...");
         _selectedSpecialSparepart = null;
         FormHelpers.CurrentMainForm.UpdateStatusInformation("Memuat data ban...", false);
         bgwMain.RunWorkerAsync();
     }
 }
        public void UpdateWheel(SpecialSparepartViewModel specialSparepart, int userId)
        {
            DateTime serverTime = DateTime.Now;
            specialSparepart.ModifyDate = serverTime;
            specialSparepart.ModifyUserId = userId;
            SpecialSparepart entity = _specialSparepartRepository.GetById(specialSparepart.Id);

            Map(specialSparepart, entity);
            _specialSparepartRepository.AttachNavigation<Sparepart>(entity.Sparepart);
            _specialSparepartRepository.AttachNavigation<Reference>(entity.ReferenceCategory);
            _specialSparepartRepository.Update(entity);
            _unitOfWork.SaveChanges();
        }
        private void bgwMain_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            if (e.Result is Exception)
            {
                this.ShowError("Proses memuat data gagal!");
            }

            if (gvSpecialSparepart.RowCount > 0)
            {
                SelectedSpecialSparepart = gvSpecialSparepart.GetRow(0) as SpecialSparepartViewModel;
            }

            FormHelpers.CurrentMainForm.UpdateStatusInformation("Memuat data ban selesai", true);
        }
        public void InsertWheel(SpecialSparepartViewModel specialSparepart, int userId)
        {
            DateTime serverTime = DateTime.Now;
            specialSparepart.CreateDate = serverTime;
            specialSparepart.CreateUserId = userId;
            specialSparepart.ModifyDate = serverTime;
            specialSparepart.ModifyUserId = userId;
            specialSparepart.Status = (int)DbConstant.DefaultDataStatus.Active;
            SpecialSparepart entity = new SpecialSparepart();

            Map(specialSparepart, entity);
            _specialSparepartRepository.AttachNavigation<Sparepart>(entity.Sparepart);
            _specialSparepartRepository.AttachNavigation<Reference>(entity.ReferenceCategory);
            _specialSparepartRepository.Add(entity);
            _unitOfWork.SaveChanges();
        }
        public void DeleteWheel(SpecialSparepartViewModel SpecialSparepart, int userId)
        {
            DateTime serverTime = DateTime.Now;
            List <SpecialSparepartDetail> details = _specialSparepartDetailRepository.GetMany(spd => spd.SpecialSparepartId == SpecialSparepart.Id).ToList();

            foreach (var iDetails in details)
            {
                iDetails.Status       = (int)DbConstant.DefaultDataStatus.Deleted;
                iDetails.ModifyDate   = serverTime;
                iDetails.ModifyUserId = userId;
                _specialSparepartDetailRepository.Update(iDetails);
            }

            SpecialSparepart.Status       = (int)DbConstant.DefaultDataStatus.Deleted;
            SpecialSparepart.ModifyDate   = serverTime;
            SpecialSparepart.ModifyUserId = userId;
            SpecialSparepart entity = _specialSparepartRepository.GetById(SpecialSparepart.Id);

            Map(SpecialSparepart, entity);
            _specialSparepartRepository.Update(entity);

            _unitOfWork.SaveChanges();
        }
 void gvSpecialSparepart_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
 {
     this.SelectedSpecialSparepart = gvSpecialSparepart.GetFocusedRow() as SpecialSparepartViewModel;
 }