/// <summary>
 /// Insert a PackingListDetail.
 /// </summary>
 public void Insert(Model.PackingListDetail packingListDetail)
 {
     //
     // todo:add other logic here
     //
     accessor.Insert(packingListDetail);
 }
 /// <summary>
 /// Update a PackingListDetail.
 /// </summary>
 public void Update(Model.PackingListDetail packingListDetail)
 {
     //
     // todo: add other logic here.
     //
     accessor.Update(packingListDetail);
 }
Exemple #3
0
        private void btn_AddProduct_Click(object sender, EventArgs e)
        {
            Book.UI.Invoices.ChooseProductForm f = new Book.UI.Invoices.ChooseProductForm();

            if (f.ShowDialog(this) == DialogResult.OK)
            {
                if (ChooseProductForm.ProductList != null && ChooseProductForm.ProductList.Count > 0)
                {
                    Model.PackingListDetail packingDetail = null;
                    foreach (Model.Product product in ChooseProductForm.ProductList)
                    {
                        packingDetail = new Book.Model.PackingListDetail();
                        packingDetail.PackingListDetailId = Guid.NewGuid().ToString();
                        packingDetail.PackingListHeader   = this.packingListHeader;
                        packingDetail.Product             = product;
                        packingDetail.ProductId           = product.ProductId;

                        packingDetail.BoxMaxQuantity    = Convert.ToDecimal(packingDetail.Product.Digital);
                        packingDetail.BoxMaxNetWeight   = Convert.ToDecimal(packingDetail.Product.NetWeight);
                        packingDetail.BoxMaxGrossWeight = Convert.ToDecimal(packingDetail.Product.GrossWeight);
                        packingDetail.BoxMaxCaiji       = Convert.ToDecimal(packingDetail.Product.Volume);

                        packingDetail.Quantity    = 0;
                        packingDetail.NetWeight   = 0;
                        packingDetail.GrossWeight = 0;
                        packingDetail.Caiji       = 0;


                        packingListHeader.Details.Add(packingDetail);
                    }
                }
                else if (ChooseProductForm.ProductList == null || ChooseProductForm.ProductList.Count == 0)
                {
                    Model.Product product = f.SelectedItem as Model.Product;

                    Model.PackingListDetail packingDetail = new Book.Model.PackingListDetail();
                    packingDetail.PackingListDetailId = Guid.NewGuid().ToString();
                    packingDetail.PackingListHeader   = this.packingListHeader;
                    packingDetail.Product             = product;
                    packingDetail.ProductId           = product.ProductId;

                    packingDetail.BoxMaxQuantity    = Convert.ToDecimal(packingDetail.Product.Digital);
                    packingDetail.BoxMaxNetWeight   = Convert.ToDecimal(packingDetail.Product.NetWeight);
                    packingDetail.BoxMaxGrossWeight = Convert.ToDecimal(packingDetail.Product.GrossWeight);
                    packingDetail.BoxMaxCaiji       = Convert.ToDecimal(packingDetail.Product.Volume);

                    packingDetail.Quantity    = 0;
                    packingDetail.NetWeight   = 0;
                    packingDetail.GrossWeight = 0;
                    packingDetail.Caiji       = 0;


                    packingListHeader.Details.Add(packingDetail);
                }

                this.bindingSourceDetail.DataSource = packingListHeader.Details;
                this.gridControl3.RefreshDataSource();
                this.bindingSourceDetail.MoveLast();
            }
        }
Exemple #4
0
        /// <summary>
        /// 移除
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void simpleButton2_Click(object sender, EventArgs e)
        {
            if (this.bindingSourceDetail.Current == null)
            {
                return;
            }

            Model.PackingListDetail detail = this.bindingSourceDetail.Current as Model.PackingListDetail;
            this.packingListHeader.Details.Remove(detail);

            this.gridControl3.RefreshDataSource();
        }
Exemple #5
0
        // 添加客户订单
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            if (this.ncc_Customer.EditValue == null)
            {
                MessageBox.Show("請先選擇客戶", "提示", MessageBoxButtons.OK);
                return;
            }

            XS.SearcharInvoiceXSForm f = new Book.UI.Invoices.XS.SearcharInvoiceXSForm(this.ncc_Customer.EditValue as Model.Customer);
            if (f.ShowDialog(this) == DialogResult.OK)
            {
                if (f.key != null && f.key.Count > 0)
                {
                    Model.PackingListDetail packingDetail = null;

                    foreach (Model.InvoiceXODetail detail in f.key)
                    {
                        packingDetail                     = new Book.Model.PackingListDetail();
                        packingDetail.CartonQty           = 1;
                        packingDetail.PackingListDetailId = Guid.NewGuid().ToString();
                        packingDetail.Product             = detail.Product;
                        packingDetail.ProductId           = detail.ProductId;
                        packingDetail.PONo                = detail.Invoice.CustomerInvoiceXOId;
                        packingDetail.PackingListHeader   = this.packingListHeader;
                        packingDetail.InvoiceXODetail     = detail;
                        packingDetail.InvoiceXODetailId   = detail.InvoiceXODetailId;

                        packingListHeader.Details.Add(packingDetail);
                    }
                }

                this.bindingSourceDetail.DataSource = packingListHeader.Details;
                this.gridControl3.RefreshDataSource();
                this.bindingSourceDetail.MoveLast();
            }
        }
Exemple #6
0
 public void Update(Model.PackingListDetail e)
 {
     this.Update <Model.PackingListDetail>(e);
 }
Exemple #7
0
 public void Insert(Model.PackingListDetail e)
 {
     this.Insert <Model.PackingListDetail>(e);
 }
Exemple #8
0
        private void gridView3_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            string str = e.Value.ToString();

            Model.PackingListDetail detail = this.bindingSourceDetail.Current as Model.PackingListDetail;

            if (e.Column.Name == "gridColumn2")
            {
                if (!string.IsNullOrEmpty(str) && (str.Contains('-') || str.Contains('_') || str.Contains('~')))
                {
                    string[] cartonNos = null;
                    if (str.Contains('-'))
                    {
                        cartonNos = str.Split('-');
                    }
                    else if (str.Contains('_'))
                    {
                        cartonNos = str.Split('_');
                    }
                    else
                    {
                        cartonNos = str.Split('~');
                    }

                    try
                    {
                        int startNo = int.Parse(cartonNos[0]);
                        int endNo   = int.Parse(cartonNos[1]);
                        if (endNo >= startNo)
                        {
                            //还原数量到最初状态
                            if (detail.CartonQty > 1)
                            {
                                //detail.Quantity = (detail.Quantity.HasValue ? detail.Quantity.Value : 0) / detail.CartonQty;
                                detail.NetWeight   = (detail.NetWeight.HasValue ? detail.NetWeight.Value : 0) / detail.CartonQty;
                                detail.GrossWeight = (detail.GrossWeight.HasValue ? detail.GrossWeight.Value : 0) / detail.CartonQty;
                                detail.Caiji       = (detail.Caiji.HasValue ? detail.Caiji.Value : 0) / detail.CartonQty;
                            }


                            //根据现在的箱数计算数量
                            detail.CartonQty = endNo - startNo + 1;
                            //detail.Quantity = (detail.Quantity.HasValue ? detail.Quantity.Value : 0) * detail.CartonQty;
                            detail.NetWeight   = (detail.NetWeight.HasValue ? detail.NetWeight.Value : 0) * detail.CartonQty;
                            detail.GrossWeight = (detail.GrossWeight.HasValue ? detail.GrossWeight.Value : 0) * detail.CartonQty;
                            detail.Caiji       = (detail.Caiji.HasValue ? detail.Caiji.Value : 0) * detail.CartonQty;
                        }
                    }
                    catch
                    {
                        return;
                    }
                }
                else
                {
                    detail.CartonNo = e.Value + "-" + e.Value;

                    if (detail.CartonQty > 1)
                    {
                        //detail.Quantity = (detail.Quantity.HasValue ? detail.Quantity.Value : 0) / detail.CartonQty;
                        detail.NetWeight   = (detail.NetWeight.HasValue ? detail.NetWeight.Value : 0) / detail.CartonQty;
                        detail.GrossWeight = (detail.GrossWeight.HasValue ? detail.GrossWeight.Value : 0) / detail.CartonQty;
                        detail.Caiji       = (detail.Caiji.HasValue ? detail.Caiji.Value : 0) / detail.CartonQty;

                        detail.CartonQty = 1;
                    }
                }

                //else
                //{
                //    if (detail.CartonQty > 1)
                //    {
                //        detail.Quantity = (detail.Quantity.HasValue ? detail.Quantity.Value : 0) / detail.CartonQty;
                //        detail.NetWeight = (detail.NetWeight.HasValue ? detail.NetWeight.Value : 0) / detail.CartonQty;
                //        detail.GrossWeight = (detail.GrossWeight.HasValue ? detail.GrossWeight.Value : 0) / detail.CartonQty;
                //    }
                //}
            }
            //else if (e.Column.Name == "gridColumn6")
            //{
            //    decimal qty = 0;
            //    decimal.TryParse(str, out qty);
            //    detail.Quantity = qty * detail.CartonQty;
            //}
            else if (e.Column.Name == "gridColumn7")
            {
                decimal netWeight = 0;
                decimal.TryParse(str, out netWeight);
                detail.NetWeight = netWeight * detail.CartonQty;
            }
            else if (e.Column.Name == "gridColumn8")
            {
                decimal grossWeight = 0;
                decimal.TryParse(str, out grossWeight);
                detail.GrossWeight = grossWeight * detail.CartonQty;
            }
            else if (e.Column.Name == "gridColumn14")
            {
                decimal caiji = 0;
                decimal.TryParse(str, out caiji);
                detail.Caiji = caiji * detail.CartonQty;
            }

            this.gridControl3.RefreshDataSource();
        }
Exemple #9
0
        // 添加客户订单
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            if (packingListHeader.Details == null)
            {
                packingListHeader.Details = new List <Model.PackingListDetail>();
            }

            XS.SearcharInvoiceXSForm f = new Book.UI.Invoices.XS.SearcharInvoiceXSForm();
            if (f.ShowDialog(this) == DialogResult.OK)
            {
                if (f.key != null && f.key.Count > 0)
                {
                    Model.PackingListDetail packingDetail = null;

                    foreach (Model.InvoiceXODetail detail in f.key)
                    {
                        packingDetail = new Book.Model.PackingListDetail();
                        //packingDetail.CartonQty = 1;
                        packingDetail.PackingListDetailId = Guid.NewGuid().ToString();
                        packingDetail.Product             = detail.Product;
                        packingDetail.ProductId           = detail.ProductId;
                        packingDetail.PONo = detail.Invoice.CustomerInvoiceXOId;
                        packingDetail.PackingListHeader = this.packingListHeader;
                        packingDetail.InvoiceXODetail   = detail;
                        packingDetail.InvoiceXODetailId = detail.InvoiceXODetailId;

                        //2020年1月6日02:13:07
                        packingDetail.BoxMaxQuantity    = Convert.ToDecimal(packingDetail.Product.Digital);
                        packingDetail.BoxMaxNetWeight   = Convert.ToDecimal(packingDetail.Product.NetWeight);
                        packingDetail.BoxMaxGrossWeight = Convert.ToDecimal(packingDetail.Product.GrossWeight);
                        packingDetail.BoxMaxCaiji       = Convert.ToDecimal(packingDetail.Product.Volume);

                        if (packingDetail.Product.Digital > 0)
                        {
                            packingDetail.CartonQty = (int)Math.Ceiling(Convert.ToDouble(detail.InvoiceXODetailQuantity) / Convert.ToDouble(packingDetail.Product.Digital));

                            if (packingListHeader.Details.Count == 0)   //第一个
                            {
                                packingDetail.CartonNo = "1-" + packingDetail.CartonQty.ToString();
                            }
                            else
                            {
                                string[] cartonNos = null;
                                Model.PackingListDetail lastDetail = packingListHeader.Details.Last();
                                if (lastDetail.CartonNo.Contains('-'))
                                {
                                    cartonNos = lastDetail.CartonNo.Split('-');
                                }
                                else if (lastDetail.CartonNo.Contains('_'))
                                {
                                    cartonNos = lastDetail.CartonNo.Split('_');
                                }
                                else
                                {
                                    cartonNos = lastDetail.CartonNo.Split('~');
                                }

                                if (cartonNos.Length >= 2)
                                {
                                    packingDetail.CartonNo = string.Format("{0}-{1}", Convert.ToInt32(cartonNos[1]) + 1, Convert.ToInt32(cartonNos[1]) + packingDetail.CartonQty);
                                }
                            }
                        }

                        packingDetail.Quantity    = Convert.ToDecimal(detail.InvoiceXODetailQuantity);
                        packingDetail.NetWeight   = packingDetail.BoxMaxNetWeight * packingDetail.CartonQty;
                        packingDetail.GrossWeight = packingDetail.BoxMaxGrossWeight * packingDetail.CartonQty;
                        packingDetail.Caiji       = packingDetail.BoxMaxCaiji * packingDetail.CartonQty;


                        packingListHeader.Details.Add(packingDetail);
                    }
                }

                this.bindingSourceDetail.DataSource = packingListHeader.Details;
                this.gridControl3.RefreshDataSource();
                this.bindingSourceDetail.MoveLast();
            }
        }