private void btnCancelChange_Click(object sender, EventArgs e)
        {
            VehicleWheelViewModel vwChanged = VehicleWheelList.Where(vw => vw.Id == this.SelectedVehicleWheel.Id).FirstOrDefault();

            if (vwChanged != null)
            {
                SpecialSparepartDetailViewModel wheelDetail = lookUpChangedSerialNumber.GetSelectedDataRow() as SpecialSparepartDetailViewModel;

                if (wheelDetail != null)
                {
                    _wheelDetailChanged.Remove(wheelDetail);

                    vwChanged.ReplaceWithWheelDetailName         = string.Empty;
                    vwChanged.ReplaceWithWheelDetailId           = 0;
                    vwChanged.ReplaceWithWheelDetailSerialNumber = string.Empty;
                    vwChanged.IsUsedWheelRetrieved = false;
                    vwChanged.Price       = 0;
                    vwChanged.SparepartId = 0;

                    ClearSelection();
                }
            }

            gvVehicleWheel.RefreshData();
        }
Exemplo n.º 2
0
        public VehicleWheelViewModel IsWheelUsedByOtherVehicle(int wheelDetailId, int vehicleId)
        {
            VehicleWheel result = _vehicleWheelRepository.GetMany(
                vw => vw.VehicleId != vehicleId && vw.WheelDetailId == wheelDetailId && vw.Status == (int)DbConstant.DefaultDataStatus.Active).FirstOrDefault();

            VehicleWheelViewModel mappedResult = new VehicleWheelViewModel();

            return(Map(result, mappedResult));
        }
        private void deleteFromStockWheeldetailToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (this.ShowConfirmation("Yakin menghapus data ban?") == System.Windows.Forms.DialogResult.Yes)
            {
                if (this.SelectedVehicleWheel != null)
                {
                    this.WheelDetailList.Add(this.SelectedVehicleWheel.WheelDetail);
                }

                VehicleWheelViewModel selectedVWToDelete = this.gvVehicleWheel.GetFocusedRow() as VehicleWheelViewModel;
                _presenter.SetWheelAsDeleted(selectedVWToDelete.Id);
                gvVehicleWheel.DeleteSelectedRows();
            }
        }
        void _repoItemLookUpEdit_EditValueChanged(object sender, EventArgs e)
        {
            if (this.SelectedVehicle != null)
            {
                DevExpress.XtraEditors.LookUpEdit lookup = sender as DevExpress.XtraEditors.LookUpEdit;

                SpecialSparepartDetailViewModel selectedWheelDetail = lookup.GetSelectedDataRow() as SpecialSparepartDetailViewModel;
                this.SelectedVehicleWheel.WheelDetail   = selectedWheelDetail;
                this.SelectedVehicleWheel.WheelDetailId = selectedWheelDetail.Id;

                VehicleWheelViewModel foundConflict = _presenter.IsWheelUsedByOtherVehicle(selectedWheelDetail.Id);

                if (foundConflict != null)
                {
                    if (this.ShowConfirmation("Ban dengan nomor seri " + lookup.SelectedText +
                                              " sudah digunakan pada kendaraan dengan nopol " + foundConflict.Vehicle.ActiveLicenseNumber + "!" +
                                              "\n\n Apakah anda yakin ingin menukar?") == System.Windows.Forms.DialogResult.Yes)
                    {
                        foundConflict.WheelDetailId = _presenter.GetCurrentInstalledWheel(this.SelectedVehicleWheel.Id);
                        VehicleWheelViewModel insertedWheel = _presenter.InsertVechileWheel(foundConflict);
                        VehicleWheelViewModel selectedWheel = this.gvVehicleWheel.GetFocusedRow() as VehicleWheelViewModel;
                        selectedWheel.Id            = insertedWheel.Id;
                        selectedWheel.WheelDetailId = insertedWheel.WheelDetailId;
                        selectedWheel.VehicleId     = insertedWheel.VehicleId;
                    }
                    else
                    {
                        sender = null;
                    }
                }
                else
                {
                    VehicleWheelViewModel newWheel = new VehicleWheelViewModel
                    {
                        WheelDetailId = selectedWheelDetail.Id,
                        VehicleId     = this.SelectedVehicle.Id,
                    };

                    VehicleWheelViewModel insertedWheel = _presenter.InsertVechileWheel(newWheel);
                    VehicleWheelViewModel selectedWheel = this.gvVehicleWheel.GetFocusedRow() as VehicleWheelViewModel;
                    selectedWheel.Id            = insertedWheel.Id;
                    selectedWheel.WheelDetailId = insertedWheel.WheelDetailId;
                    selectedWheel.VehicleId     = insertedWheel.VehicleId;
                }
            }
        }
        void gvVehicleWheel_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
        {
            //ClearSelection();

            VehicleWheelViewModel vw = gvVehicleWheel.GetRow(e.FocusedRowHandle) as VehicleWheelViewModel;

            this.SelectedVehicleWheel       = vw;
            this.SelectedWheelName          = vw.WheelDetail.Sparepart.Name;
            this.SelectedWHeelSerialNumber  = vw.WheelDetail.SerialNumber;
            this.SelectedWHeelSparepartCode = vw.WheelDetail.Sparepart.Code;

            this.txtChangedCode.EditValue            = string.Empty;
            this.lookUpChangedWheel.EditValue        = vw.SparepartId;
            this.lookUpChangedSerialNumber.EditValue = vw.ReplaceWithWheelDetailId;
            this.ckeUsedGoodRetrieved.Checked        = vw.IsUsedWheelRetrieved;
            this.Price = vw.Price;
        }
        private void gvVehicleWheel_CustomRowCellEditForEditing(object sender, CustomRowCellEditEventArgs e)
        {
            if (e.Column.FieldName != "WheelDetail.SerialNumber")
            {
                return;
            }
            VehicleWheelViewModel currentDataRow = gvVehicleWheel.GetRow(e.RowHandle) as VehicleWheelViewModel;
            List <SpecialSparepartDetailViewModel> listNotUsedWheel = new List <SpecialSparepartDetailViewModel>();

            listNotUsedWheel = _presenter.GetAvailableWheel();

            //foreach (var item in VehicleWheelList)
            //{
            //    if (item.Id > 0)
            //        listNotUsedWheel.Add(item.WheelDetail);
            //}

            //listNotUsedWheel.AddRange(WheelDetailList);

            //List<string> runtimeSerial = new List<string>();
            //if (VehicleWheelList != null && VehicleWheelList.Count > 0 && SelectedVehicle != null)
            //{
            //    //runtimeSerial = VehicleWheelList.Select(w => w.WheelDetail.SerialNumber).ToList();
            //    foreach (var item in VehicleWheelList)
            //    {
            //        if (item.Id > 0)
            //            runtimeSerial.Add(item.WheelDetail.SerialNumber);
            //    }
            //}

            //listNotUsedWheel = listNotUsedWheel.Where(w => !runtimeSerial.Contains(w.SerialNumber)).ToList();

            //if (currentDataRow != null) // insert current row into list only for edit
            //{
            //    listNotUsedWheel.Insert(0, currentDataRow.WheelDetail);
            //}
            _repoItemLookUpEdit.DataSource = listNotUsedWheel;
            e.RepositoryItem = _repoItemLookUpEdit;
        }
 private void gvVehicleWheel_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
 {
     this.SelectedVehicleWheel = gvVehicleWheel.GetFocusedRow() as VehicleWheelViewModel;
 }
Exemplo n.º 8
0
        public VehicleWheelViewModel InsertVehicleWheel(VehicleWheelViewModel vw, int userId)
        {
            VehicleWheelViewModel result = new VehicleWheelViewModel();

            if (vw != null)
            {
                DateTime serverTime = DateTime.Now;


                VehicleWheel vwEntity = new VehicleWheel();
                Map(vw, vwEntity);
                vwEntity.Id           = 0;
                vwEntity.Notes        = vw.Notes;
                vwEntity.VehicleId    = vw.VehicleId;
                vwEntity.CreateDate   = vwEntity.ModifyDate = serverTime;
                vwEntity.CreateUserId = vwEntity.ModifyUserId = userId;
                vwEntity.Status       = (int)DbConstant.DefaultDataStatus.Active;

                _vehicleWheelRepository.AttachNavigation(vwEntity.Vehicle);
                _vehicleWheelRepository.AttachNavigation(vwEntity.WheelDetail);
                _vehicleWheelRepository.AttachNavigation(vwEntity.CreateUser);
                _vehicleWheelRepository.AttachNavigation(vwEntity.ModifyUser);
                _vehicleWheelRepository.Add(vwEntity);

                _unitOfWork.SaveChanges();
                result = Map(vwEntity, result);

                SpecialSparepartDetail wdEntity = _specialSparepartDetailRepository.GetById(vw.WheelDetailId);
                wdEntity.ModifyDate   = serverTime;
                wdEntity.ModifyUserId = userId;
                wdEntity.Status       = (int)DbConstant.WheelDetailStatus.Installed;

                _specialSparepartDetailRepository.AttachNavigation(wdEntity.Sparepart);
                _specialSparepartDetailRepository.AttachNavigation(wdEntity.CreateUser);
                _specialSparepartDetailRepository.AttachNavigation(wdEntity.ModifyUser);
                _specialSparepartDetailRepository.Update(wdEntity);
                _unitOfWork.SaveChanges();

                Sparepart spEntity = _sparepartRepository.GetById(wdEntity.SparepartId);
                spEntity.ModifyDate   = serverTime;
                spEntity.ModifyUserId = userId;
                spEntity.StockQty     = spEntity.StockQty - 1;

                _sparepartRepository.AttachNavigation(spEntity.UnitReference);
                _sparepartRepository.AttachNavigation(spEntity.CategoryReference);
                _sparepartRepository.AttachNavigation(spEntity.CreateUser);
                _sparepartRepository.AttachNavigation(spEntity.ModifyUser);
                _sparepartRepository.Update(spEntity);
                _unitOfWork.SaveChanges();

                SparepartStockCard stockCard = new SparepartStockCard();
                Reference          transactionReferenceTable = _referenceRepository.GetMany(r => r.Code == DbConstant.REF_TRANSTBL_VEHICLE).FirstOrDefault();

                stockCard.CreateUserId     = userId;
                stockCard.PurchaseDate     = serverTime;
                stockCard.PrimaryKeyValue  = wdEntity.Id;
                stockCard.ReferenceTableId = transactionReferenceTable.Id;
                stockCard.SparepartId      = spEntity.Id;
                stockCard.Description      = "Vehicle Update";
                stockCard.QtyOut           = 1;
                stockCard.QtyOutPrice      = Convert.ToDouble(wdEntity.PurchasingDetail != null ? wdEntity.PurchasingDetail.Price : wdEntity.SparepartManualTransaction != null ? wdEntity.SparepartManualTransaction.Price : 0);

                SparepartStockCard lastStockCard  = _sparepartStokCardRepository.RetrieveLastCard(spEntity.Id);
                double             lastStock      = 0;
                double             lastStockPrice = 0;
                if (lastStockCard != null)
                {
                    lastStock      = lastStockCard.QtyLast;
                    lastStockPrice = lastStockCard.QtyLastPrice;
                }

                stockCard.QtyFirst      = lastStock;
                stockCard.QtyFirstPrice = lastStockPrice;
                stockCard.QtyLast       = lastStock - stockCard.QtyOut;
                stockCard.QtyLastPrice  = lastStockPrice - stockCard.QtyOutPrice;
                _sparepartStokCardRepository.AttachNavigation(stockCard.CreateUser);
                _sparepartStokCardRepository.AttachNavigation(stockCard.Sparepart);
                _sparepartStokCardRepository.AttachNavigation(stockCard.ReferenceTable);
                stockCard = _sparepartStokCardRepository.Add(stockCard);
                _unitOfWork.SaveChanges();

                if (wdEntity.PurchasingDetail != null)
                {
                    SparepartStockCardDetail stockCardDtail = new SparepartStockCardDetail();
                    stockCardDtail.ParentStockCard = stockCard;
                    stockCardDtail.PricePerItem    = Convert.ToDouble(wdEntity.PurchasingDetail.Price);
                    stockCardDtail.QtyOut          = 1;
                    stockCardDtail.QtyOutPrice     = Convert.ToDouble(wdEntity.PurchasingDetail.Price);
                    SparepartStockCardDetail lastStockCardDetail = _sparepartStokCardDetailRepository.RetrieveLastCardDetailByPurchasingId(wdEntity.Sparepart.Id, wdEntity.PurchasingDetail.PurchasingId);
                    double lastStockDetail      = 0;
                    double lastStockDetailPrice = 0;
                    if (lastStockCardDetail != null)
                    {
                        lastStockDetail      = lastStockCardDetail.QtyLast;
                        lastStockDetailPrice = lastStockCardDetail.QtyLastPrice;
                    }
                    stockCardDtail.QtyFirst      = lastStockDetail;
                    stockCardDtail.QtyFirstPrice = lastStockDetailPrice;
                    stockCardDtail.QtyLast       = lastStockDetail - stockCardDtail.QtyOut;
                    stockCardDtail.QtyLastPrice  = lastStockDetailPrice - stockCardDtail.QtyOutPrice;
                    stockCardDtail.PurchasingId  = wdEntity.PurchasingDetail.PurchasingId;

                    _sparepartStokCardDetailRepository.AttachNavigation(stockCardDtail.ParentStockCard);
                    _sparepartStokCardDetailRepository.Add(stockCardDtail);
                    _unitOfWork.SaveChanges();
                }

                if (wdEntity.SparepartManualTransaction != null)
                {
                    SparepartStockCardDetail stockCardDtail = new SparepartStockCardDetail();
                    stockCardDtail.ParentStockCard = stockCard;
                    stockCardDtail.PricePerItem    = Convert.ToDouble(wdEntity.SparepartManualTransaction.Price);
                    stockCardDtail.QtyOut          = 1;
                    stockCardDtail.QtyOutPrice     = Convert.ToDouble(1 * wdEntity.SparepartManualTransaction.Price);
                    SparepartStockCardDetail lastStockCardDetail = _sparepartStokCardDetailRepository.RetrieveLastCardDetailByTransactionManualId(wdEntity.Sparepart.Id, wdEntity.SparepartManualTransactionId.Value);
                    double lastStockDetail      = 0;
                    double lastStockDetailPrice = 0;
                    if (lastStockCardDetail != null)
                    {
                        lastStockDetail      = lastStockCardDetail.QtyLast;
                        lastStockDetailPrice = lastStockCardDetail.QtyLastPrice;
                    }
                    stockCardDtail.QtyFirst      = lastStockDetail;
                    stockCardDtail.QtyFirstPrice = lastStockDetailPrice;
                    stockCardDtail.QtyLast       = lastStockDetail - stockCardDtail.QtyOut;
                    stockCardDtail.QtyLastPrice  = lastStockDetailPrice - stockCardDtail.QtyOutPrice;
                    stockCardDtail.SparepartManualTransactionId = wdEntity.SparepartManualTransactionId;

                    _sparepartStokCardDetailRepository.AttachNavigation(stockCardDtail.ParentStockCard);
                    _sparepartStokCardDetailRepository.Add(stockCardDtail);
                    _unitOfWork.SaveChanges();
                }

                _unitOfWork.SaveChanges();
            }

            return(result);
        }
 public VehicleWheelViewModel InsertVechileWheel(VehicleWheelViewModel vw)
 {
     return(Model.InsertVehicleWheel(vw, LoginInformation.UserId));
 }