Example #1
0
        private void GetVehicleInfos()
        {
            VehicleInfo[] source = CO_IA.Client.Utility.GetVehicleInfos(new VehicleQueryCondition());
            if (exitVehicle != null && exitVehicle.Count > 0)
            {
                source = source.Where(item =>
                {
                    if (string.IsNullOrEmpty(item.VehicleNo))
                    {
                        return(true);
                    }
                    foreach (string s in exitVehicle)
                    {
                        if (s == item.VehicleNo)
                        {
                            return(false);
                        }
                    }
                    return(true);
                }).ToArray();
            }
            List <VehicleInfo> monitorsource = source.Where(r => r.IsMonitor).ToList();

            this.VehicleItemsSource = new List <VehicleInfo>();
            VehicleItemsSource.AddRange(monitorsource);
            VehicleItemsSource.AddRange(source.Except(monitorsource));
        }
Example #2
0
 private void chkAll_Loaded(object sender, RoutedEventArgs e)
 {
     chkAll = sender as CheckBox;
     if (this.VehicleItemsSource != null)
     {
         chkAll.IsChecked = VehicleItemsSource.Any(item => item.IsChecked);
     }
 }
Example #3
0
        private void btnDelete_Click(object sender, RoutedEventArgs e)
        {
            int checkcount = VehicleItemsSource.Count(r => r.IsChecked == true);

            if (checkcount == 0)
            {
                MessageBox.Show("请勾选要删除的车辆");
            }
            else
            {
                MessageBoxResult result = MessageBox.Show("确认要删除选中的车辆?", "提示", MessageBoxButton.YesNo);
                if (result == MessageBoxResult.Yes)
                {
                    try
                    {
                        List <string> vehiclenos = (VehicleItemsSource.Where(v => v.IsChecked == true)).Select(r => r.GUID).ToList();
                        PT_BS_Service.Client.Framework.BeOperationInvoker.Invoke <I_CO_IA_PlanDatabase>(channel =>
                        {
                            List <string> errorguid = channel.DeleteVehicleInfo(vehiclenos);
                            if (errorguid.Count == 0)
                            {
                                GetVehicleInfos();
                                MessageBox.Show("删除成功", "提示", MessageBoxButton.OK);
                                chkAll.IsChecked = false;//取消选中
                            }
                            else
                            {
                                StringBuilder strmsg = new StringBuilder();
                                foreach (string item in errorguid)
                                {
                                    VehicleInfo vehicle = VehicleItemsSource.FirstOrDefault(r => r.GUID == item);
                                    vehicle.IsChecked   = true;
                                    if (vehicle != null)
                                    {
                                        strmsg.AppendLine(string.Format("车牌号码'{0}',已经有设备不能删除 ", vehicle.VehicleNo));
                                    }
                                }
                                MessageBox.Show(strmsg.ToString(), "删除完成", MessageBoxButton.OK);
                                GetVehicleInfos();
                                //未删除的监测车还是选中状态
                                VehicleItemsSource.Where(r => errorguid.Contains(r.GUID)).ToList().ForEach(v => v.IsChecked = true);
                            }
                        });
                    }
                    catch (Exception ex)
                    {
                        if (ex.Message.Contains("违反完整约束条件"))
                        {
                            MessageBox.Show("车辆已经有使用,不能删除!");
                        }
                    }
                }
            }
        }
Example #4
0
 private void chkCell_Click(object sender, RoutedEventArgs e)
 {
     if (VehicleItemsSource != null)
     {
         int checkcount = VehicleItemsSource.Count(r => r.IsChecked == true);
         if (checkcount == VehicleItemsSource.Length)
         {
             chkAll.IsChecked = true;
         }
         else if (checkcount == 0)
         {
             chkAll.IsChecked = false;
         }
         else
         {
             chkAll.IsChecked = null;
         }
     }
 }