Exemple #1
0
        private void bwInsert_DoWork(object sender, DoWorkEventArgs e)
        {
            foreach (var insertModel in rejectDetailFromTableList)
            {
                OutsoleMaterialRejectDetailController.Insert(insertModel);
            }

            // create OutsoleMaterialDetail and Update
            var updateRejectToOutsoleMaterialDetailList = new List <OutsoleMaterialDetailModel>();

            var ousoleMaterialRejectDetailModel = rejectDetailFromTableList.FirstOrDefault();

            if (ousoleMaterialRejectDetailModel != null)
            {
                var sizeNoList = rejectDetailFromTableList.Select(s => s.SizeNo).Distinct().ToList();
                foreach (var sizeNo in sizeNoList)
                {
                    var osMaterialDetail = new OutsoleMaterialDetailModel()
                    {
                        ProductNo         = ousoleMaterialRejectDetailModel.ProductNo,
                        OutsoleSupplierId = ousoleMaterialRejectDetailModel.OutsoleSupplierId,
                        SizeNo            = sizeNo,
                        CreatedBy         = ousoleMaterialRejectDetailModel.CreatedBy,
                        IndexNo           = ousoleMaterialRejectDetailModel.IndexNo,
                        Round             = ousoleMaterialRejectDetailModel.Round,
                        Reject            = rejectDetailFromTableList.Where(w => w.SizeNo == sizeNo).Select(s => s.QuantityReject).Sum()
                    };
                    updateRejectToOutsoleMaterialDetailList.Add(osMaterialDetail);
                }
            }

            foreach (var updateModel in updateRejectToOutsoleMaterialDetailList)
            {
                OutsoleMaterialRejectDetailController.UpdateRejectToOutsoleMaterialDetail(updateModel);
            }
        }
Exemple #2
0
        private void bwLoad_DoWork(object sender, DoWorkEventArgs e)
        {
            // Excute DB
            rejectIssuesList = OutsoleMaterialRejectIssuesController.Select();
            rejectDetailList = OutsoleMaterialRejectDetailController.SelectPerPOPerSupplierPerIndexNoPerRound(productNo, supplierClicked.OutsoleSupplierId, INDEXNO, ROUND);

            // Create Table
            Dispatcher.Invoke(new Action(() => {
                // Reject Issues Id
                dt.Columns.Add("OutsoleMaterialRejectIssuesId", typeof(Int32));
                DataGridTextColumn columnRejectIssuesId = new DataGridTextColumn();
                columnRejectIssuesId.Binding            = new Binding("OutsoleMaterialRejectIssuesId");
                columnRejectIssuesId.Visibility         = Visibility.Hidden;
                dgOutsoleMaterialRejectDetail.Columns.Add(columnRejectIssuesId);

                // Reject Issues Name
                dt.Columns.Add("OutsoleMaterialRejectIssuesVietNamese", typeof(String));
                DataGridTextColumn columnRejectIssuesVietNamese = new DataGridTextColumn();
                columnRejectIssuesVietNamese.Binding            = new Binding("OutsoleMaterialRejectIssuesVietNamese");
                columnRejectIssuesVietNamese.Header             = "Vấn Đề";
                columnRejectIssuesVietNamese.MinWidth           = 100;
                columnRejectIssuesVietNamese.IsReadOnly         = true;
                dgOutsoleMaterialRejectDetail.Columns.Add(columnRejectIssuesVietNamese);

                for (int i = 0; i <= sizeRunList.Count - 1; i++)
                {
                    SizeRunModel sizeRun = sizeRunList[i];

                    dt.Columns.Add(String.Format("Column{0}", i), typeof(Int32));
                    DataGridTextColumn column = new DataGridTextColumn();
                    column.SetValue(TagProperty, sizeRun.SizeNo);
                    column.Header = String.Format("{0}\n{1}\n{2}", sizeRun.SizeNo, sizeRun.OutsoleSize, sizeRun.MidsoleSize);

                    Style style = new Style(typeof(DataGridCell));
                    style.Setters.Add(new Setter(TextBlock.TextAlignmentProperty, TextAlignment.Center));
                    column.CellStyle = style;

                    column.MinWidth = 40;
                    column.Binding  = new Binding(String.Format("Column{0}", i))
                    {
                        Mode = BindingMode.TwoWay, UpdateSourceTrigger = UpdateSourceTrigger.LostFocus
                    };
                    dgOutsoleMaterialRejectDetail.Columns.Add(column);
                }

                // Fill Data
                foreach (var rejectIssues in rejectIssuesList)
                {
                    var rejectDetailPerRejectIssuesId = rejectDetailList.Where(w => w.OutsoleMaterialRejectIssuesId == rejectIssues.OutsoleMaterialRejectIssuesId).ToList();

                    DataRow dr = dt.NewRow();
                    dr["OutsoleMaterialRejectIssuesId"]         = rejectIssues.OutsoleMaterialRejectIssuesId;
                    dr["OutsoleMaterialRejectIssuesVietNamese"] = rejectIssues.OutsoleMaterialRejectIssuesVietNamese;

                    for (int i = 0; i <= sizeRunList.Count - 1; i++)
                    {
                        var sizeRun = sizeRunList[i];
                        var rejectDetailPerRejectIssuesIdPerSize = rejectDetailPerRejectIssuesId.FirstOrDefault(f => f.SizeNo == sizeRun.SizeNo);
                        if (rejectDetailPerRejectIssuesIdPerSize != null)
                        {
                            dr[String.Format("Column{0}", i)] = rejectDetailPerRejectIssuesIdPerSize.QuantityReject;
                        }
                    }
                    dt.Rows.Add(dr);
                }
                dgOutsoleMaterialRejectDetail.ItemsSource = dt.AsDataView();
                e.Result = dt;
            }));
        }