コード例 #1
0
        private void LoadWorkerMateriallistGrid()
        {
            List <TenderMaterialListEquipmentModel> tenderMaterialListEquipmentModels = new List <TenderMaterialListEquipmentModel>();

            this.SelectedMaterial.TenderEquipments            = null;
            this.SelectedMaterial.TenderMaterialListEquipment = null;
            List <TenderEquipment> a = this.SelectedMaterial.TenderEquipments;

            if (this.SelectedMaterial.TenderMaterialListEquipment != null)
            {
                foreach (TenderMaterialListEquipment tenderMaterialListEquipment in this.SelectedMaterial.TenderMaterialListEquipment)
                {
                    TenderMaterialListEquipmentModel tenderMaterialListEquipmentModel = new TenderMaterialListEquipmentModel(tenderMaterialListEquipment);
                    tenderMaterialListEquipmentModels.Add(tenderMaterialListEquipmentModel);
                }
            }

            bindingSourceAddWorker.DataSource  = tenderMaterialListEquipmentModels.Where(p => p.Equipment.IsWorker);
            bindingSourceAddVehicle.DataSource = tenderMaterialListEquipmentModels.Where(p => !p.Equipment.IsWorker);
        }
コード例 #2
0
        private void gridViewAddVehicle_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            if (e.Column == colAddVehicleId || e.Column == colAddVehicleWorkerUnitPrice)
            {
                return;
            }
            TenderMaterialListEquipmentModel currentItem = new TenderMaterialListEquipmentModel();
            int currentId = Convert.ToInt32(gridViewAddVehicle.GetFocusedRowCellValue("Id"));

            if (currentId <= 0)
            {
                //if (e.Value == null)
                //{
                //    return;
                //}
                currentItem = new TenderMaterialListEquipmentModel();
                TenderEquipment equipment = new TenderEquipment();
                equipment.IsWorker = false;
                equipment.TenderId = UICurrentManager.Instance.CurrentTender.Id;
                if (e.Column == colAddVehicleVehicle)
                {
                    //System.Data.DataRow row = gridViewAddVehicle.GetDataRow(gridViewAddVehicle.FocusedRowHandle);
                    //string cellValue = row[0].ToString();
                    //object a = gridViewAddVehicle.GetSelectedRow("SelectedVehicle");
                    object b = gridViewAddVehicle.ActiveEditor.EditValue;
                    equipment.WorkerVehicleId = (int)b;
                }
                OperationResult result = TenderEquipmentProvider.Instance.Save(equipment);
                if (result.Success)
                {
                    TenderMaterialListEquipment tenderMaterialListEquipment = new TenderMaterialListEquipment();
                    tenderMaterialListEquipment.EquipmentId    = equipment.Id;
                    tenderMaterialListEquipment.MaterialListId = this.SelectedMaterial.Id.Value;
                    tenderMaterialListEquipment.TenderId       = UICurrentManager.Instance.CurrentTender.Id;
                    tenderMaterialListEquipment.Equipment      = equipment;
                    OperationResult result1 = TenderMaterialListEquipmentProvider.Instance.Save(tenderMaterialListEquipment);
                    if (result1.Success)
                    {
                        currentItem           = new TenderMaterialListEquipmentModel(tenderMaterialListEquipment);
                        currentItem.Equipment = equipment;
                        gridViewAddVehicle.SetFocusedRowCellValue(colAddVehicleId, currentItem.Id);
                        LoadWorkerMateriallistGrid();
                        return;
                    }
                }
            }
            else
            {
                List <TenderMaterialListEquipmentModel> items = ((IEnumerable <TenderMaterialListEquipmentModel>)bindingSourceAddVehicle.DataSource).ToList();

                foreach (TenderMaterialListEquipmentModel item in items)
                {
                    if (item.Id == currentId)
                    {
                        currentItem = item;
                        break;
                    }
                }
            }

            if (e.Column == colAddVehicleQuantity)
            {
                currentItem.Quantity = SimpleApplicationBase.Toolkit.Helpers.GetValueFromObject <double>(e.Value);
            }
            else if (e.Column == colAddVehicleUnitTime)
            {
                currentItem.UnitTime = SimpleApplicationBase.Toolkit.Helpers.GetValueFromObject <int>(e.Value);
            }
            else if (e.Column == colAddVehicleUnitTimeType)
            {
                currentItem.UnitTimeType = SimpleApplicationBase.Toolkit.Helpers.GetValueFromObject <UnitTimeTypesEnum>(e.Value);
            }

            else if (e.Column == colAddVehicleVehicle)
            {
                currentItem.Equipment.WorkerVehicleId = (int)e.Value;
                TenderEquipmentProvider.Instance.Save(currentItem.Equipment);
                currentItem.Equipment = null;
            }

            currentItem.Save();
            grdAddVehicle.Refresh();
        }