Exemplo n.º 1
0
        private void BtnSingleRowDelete_Click(object sender, RoutedEventArgs e)
        {
            if (MainDataGrid.SelectedItems.Count == 1)
            {
                LabelPrintCurrencyModel model = MainDataGrid.SelectedItem as LabelPrintCurrencyModel;
                if (model.PrintStatus == "未打印")
                {
                    MessageBox.Show("只能删除已打印数据");
                    return;
                }

                string r = new LabelPrintService().DeleteCurrentPrintData(model.ID);
                if (r != null)
                {
                    (this.MainDataGrid.ItemsSource as ObservableCollection <LabelPrintCurrencyModel>).Remove(model);
                    //CurrentRecords.Remove(model);
                    this.MainDataGrid.SelectedItem = null;
                    // 删除日志
                    new LabelPrintService().DeletePrintLog(new List <int> {
                        model.ID
                    });
                    isRefreshParentDataGrid = true;
                    MessageBox.Show(r);
                    return;
                }
                MessageBox.Show("删除失败,请联系管理员");
            }
            else
            {
                MessageBox.Show("删除失败:请先选中数据,有且仅有1条数据");
            }
        }
Exemplo n.º 2
0
        private void BtnBatchNoDelete_Click(object sender, RoutedEventArgs e)
        {
            if (MainDataGrid.SelectedItems.Count == 1)
            {
                LabelPrintCurrencyModel model = MainDataGrid.SelectedItem as LabelPrintCurrencyModel;
                if (model.PrintStatus == "未打印")
                {
                    MessageBox.Show("只能删除已打印数据");
                    return;
                }
                var itemSource = MainDataGrid.ItemsSource as ObservableCollection <LabelPrintCurrencyModel>;

                List <int> ids = itemSource.Where(m => m.CreateTime == model.CreateTime && m.BatchNo == model.BatchNo).Select(m => m.ID).ToList <int>();

                string r = new LabelPrintService().BatchDeleteCurrentPrintData(ids);
                if (r != null)
                {
                    for (int i = 0; i < itemSource.Count; i++)
                    {
                        DateTime time    = itemSource[i].CreateTime;
                        string   batchno = itemSource[i].BatchNo;
                        // 默认提取数据是按添加时间降序
                        if (time > model.CreateTime)
                        {
                            continue;
                        }
                        else if (time == model.CreateTime)
                        {
                            if (batchno == model.BatchNo)
                            {
                                itemSource.RemoveAt(i);
                                i--;
                            }
                        }
                        else
                        {
                            break;
                        }
                    }

                    this.MainDataGrid.SelectedItem = null;
                    // 删除日志
                    new LabelPrintService().DeletePrintLog(ids);
                    isRefreshParentDataGrid = true;
                    MessageBox.Show(r);
                    return;
                }
                MessageBox.Show("删除失败,请联系管理员");
            }
            else
            {
                MessageBox.Show("删除失败:有且仅有1条数据");
            }
        }