private void gridView1_KeyDown(object sender, KeyEventArgs e) { if (this.action == "insert" || this.action == "update") { if (this.CanAdd(this.invoice.Details)) { if (e.KeyData == Keys.Enter) { Model.InvoiceJRDetail detail = new Model.InvoiceJRDetail(); detail.InvoiceJRDetailId = Guid.NewGuid().ToString(); detail.InvoiceHCDetailNote = ""; detail.InvoiceHCDetailQuantity = 0; detail.InvoiceJRDetailNote = ""; detail.InvoiceJRDetailQuantity = 0; detail.InvoiceProductUnit = ""; detail.InvoiceWeiHuaiChuQuantity = 0; detail.InvoiceYiHuaiChuQuantity = 0; detail.Product = new Book.Model.Product(); this.invoice.Details.Add(detail); this.bindingSource1.Position = this.bindingSource1.IndexOf(detail); } } if (e.KeyData == Keys.Delete) { this.simpleButtonRemove.PerformClick(); } this.gridControl1.RefreshDataSource(); } }
/// <summary> /// Update a InvoiceJRDetail. /// </summary> public void Update(Model.InvoiceJRDetail invoiceJRDetail) { // // todo: add other logic here. // accessor.Update(invoiceJRDetail); }
/// <summary> /// Insert a InvoiceJRDetail. /// </summary> public void Insert(Model.InvoiceJRDetail invoiceJRDetail) { // // todo:add other logic here // accessor.Insert(invoiceJRDetail); }
private void simpleButtonAppend_Click(object sender, EventArgs e) { ChooseProductForm f = new ChooseProductForm(); if (f.ShowDialog(this) == DialogResult.OK) { if (this.invoice.Details.Count > 0 && string.IsNullOrEmpty(this.invoice.Details[0].ProductId)) { this.invoice.Details.RemoveAt(0); } Model.InvoiceJRDetail detail = null; if (ChooseProductForm.ProductList != null || ChooseProductForm.ProductList.Count > 0) { foreach (Model.Product product in ChooseProductForm.ProductList) { detail = new Book.Model.InvoiceJRDetail(); detail.Invoice = this.invoice; detail.InvoiceJRDetailId = Guid.NewGuid().ToString(); detail.Product = product; detail.ProductId = product.ProductId; detail.InvoiceJRDetailQuantity = 0; detail.InvoiceWeiHuaiChuQuantity = 0; detail.InvoiceYiHuaiChuQuantity = 0; detail.InvoiceJRDetailNote = ""; if (detail.Product.DepotUnit != null) { detail.InvoiceProductUnit = detail.Product.DepotUnit.ToString(); } this.invoice.Details.Add(detail); } } if (ChooseProductForm.ProductList == null || ChooseProductForm.ProductList.Count == 0) { detail = new Book.Model.InvoiceJRDetail(); detail.InvoiceJRDetailId = Guid.NewGuid().ToString(); detail.Invoice = this.invoice; detail.Product = f.SelectedItem as Model.Product; detail.ProductId = (f.SelectedItem as Model.Product).ProductId; //detail.InvoiceProductUnit = detail.Product.ProductBaseUnit; detail.InvoiceJRDetailQuantity = 0; detail.InvoiceWeiHuaiChuQuantity = 0; detail.InvoiceYiHuaiChuQuantity = 0; detail.InvoiceJRDetailNote = ""; this.invoice.Details.Add(detail); } this.gridControl1.RefreshDataSource(); this.bindingSource1.Position = this.bindingSource1.IndexOf(detail); } }
protected override void AddNew() { this.invoice = new Model.InvoiceJR(); this.invoice.InvoiceDate = DateTime.Now; this.invoice.Details = new List <Model.InvoiceJRDetail>(); this.invoice.InvoiceId = this.invoiceManager.GetNewId(); Model.InvoiceJRDetail detail = new Model.InvoiceJRDetail(); detail.InvoiceJRDetailId = Guid.NewGuid().ToString(); detail.InvoiceHCDetailNote = ""; detail.InvoiceHCDetailQuantity = 0; detail.InvoiceJRDetailNote = ""; detail.InvoiceJRDetailQuantity = 0; detail.InvoiceProductUnit = ""; detail.InvoiceWeiHuaiChuQuantity = 0; detail.InvoiceYiHuaiChuQuantity = 0; detail.Product = new Book.Model.Product(); this.invoice.Details.Add(detail); this.bindingSource1.Position = this.bindingSource1.IndexOf(detail); }
private void simpleButtonRemove_Click(object sender, EventArgs e) { if (this.bindingSource1.Current != null) { this.invoice.Details.Remove(this.bindingSource1.Current as Book.Model.InvoiceJRDetail); if (this.invoice.Details.Count == 0) { Model.InvoiceJRDetail detail = new Model.InvoiceJRDetail(); detail.InvoiceJRDetailId = Guid.NewGuid().ToString(); detail.InvoiceHCDetailNote = ""; detail.InvoiceHCDetailQuantity = 0; detail.InvoiceJRDetailNote = ""; detail.InvoiceJRDetailQuantity = 0; detail.InvoiceProductUnit = ""; detail.InvoiceWeiHuaiChuQuantity = 0; detail.InvoiceYiHuaiChuQuantity = 0; detail.Product = new Book.Model.Product(); this.invoice.Details.Add(detail); this.bindingSource1.Position = this.bindingSource1.IndexOf(detail); } this.gridControl1.RefreshDataSource(); } }
private void gridView1_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e) { if (e.Column == this.colProductId) { Model.InvoiceJRDetail detail = this.gridView1.GetRow(e.RowHandle) as Model.InvoiceJRDetail; if (detail != null) { Model.Product p = productManager.Get(e.Value.ToString()); detail.InvoiceJRDetailId = Guid.NewGuid().ToString(); detail.InvoiceHCDetailNote = ""; detail.InvoiceHCDetailQuantity = 0; detail.InvoiceJRDetailNote = ""; detail.InvoiceJRDetailQuantity = 0; detail.InvoiceWeiHuaiChuQuantity = 0; detail.InvoiceYiHuaiChuQuantity = 0; detail.Product = p; detail.ProductId = p.ProductId; detail.InvoiceProductUnit = p.ProduceUnit.CnName; //detail.InvoiceProductUnit = detail.Product.ProductBaseUnit; this.bindingSource1.Position = this.bindingSource1.IndexOf(detail); } this.gridControl1.RefreshDataSource(); } }
private void _Update(Model.InvoiceJR invoice) { invoice.UpdateTime = DateTime.Now;; //if (invoice.Customer != null) // invoice.CustomerId = invoice.Customer.CustomerId; //invoice.DepotId = invoice.Depot.DepotId; invoice.Employee0Id = invoice.Employee0.EmployeeId; Model.InvoiceJR invoiceOriginal = this.Get(invoice.InvoiceId); Helper.InvoiceStatus invoiceStatus = (Helper.InvoiceStatus)invoice.InvoiceStatus.Value; switch ((Helper.InvoiceStatus)invoiceOriginal.InvoiceStatus) { case Helper.InvoiceStatus.Draft: switch (invoiceStatus) { case Helper.InvoiceStatus.Draft: accessor.Update(invoice); invoiceJRDetailAccessor.Delete(invoice); foreach (Model.InvoiceJRDetail detail in invoice.Details) { if (detail.Product == null || string.IsNullOrEmpty(detail.Product.ProductId)) { continue; } detail.InvoiceId = invoice.InvoiceId; detail.InvoiceWeiHuaiChuQuantity = detail.InvoiceJRDetailQuantity; detail.InvoiceYiHuaiChuQuantity = 0; invoiceJRDetailAccessor.Insert(detail); } break; case Helper.InvoiceStatus.Normal: accessor.Delete(invoiceOriginal.InvoiceId); invoice.InsertTime = invoiceOriginal.InsertTime; invoice.UpdateTime = DateTime.Now; _Insert(invoice); break; case Helper.InvoiceStatus.Null: throw new InvalidOperationException(); } break; case Helper.InvoiceStatus.Normal: switch (invoiceStatus) { case Helper.InvoiceStatus.Draft: throw new InvalidOperationException(); case Helper.InvoiceStatus.Normal: invoiceOriginal.InvoiceStatus = (int)Helper.InvoiceStatus.Null; _TurnNull(invoiceOriginal); invoiceJRDetailAccessor.Delete(invoice); foreach (Model.InvoiceJRDetail detail in invoice.Details) { if (detail.Product == null || string.IsNullOrEmpty(detail.Product.ProductId)) { continue; } Model.Product p = detail.Product; //if (detail.InvoiceProductUnit == p.ProductOuterPackagingUnit) //{ // quantity = detail.InvoiceJRDetailQuantity * p.ProductBaseUnitRelationship * p.ProductInnerUnitRelationship; //} //else if (detail.InvoiceProductUnit == detail.Product.ProductInnerPackagingUnit) //{ // quantity = detail.InvoiceJRDetailQuantity * p.ProductBaseUnitRelationship; //} //else //{ // quantity = detail.InvoiceJRDetailQuantity; //} //p.ProductCurrentJRQuantity += quantity; if (detail.InvoiceJRDetailQuantity.Value == 0) { throw new Helper.InvalidValueException(Model.InvoiceJRDetail.PRO_InvoiceJRDetailQuantity); } byte[] pic = new byte[] { }; //if (p.ProductImage == null) // p.ProductImage = pic; //if (p.ProductImage1 == null) // p.ProductImage1 = pic; //if (p.ProductImage2 == null) // p.ProductImage2 = pic; //if (p.ProductImage3 == null) // p.ProductImage3 = pic; p.StocksQuantity += detail.InvoiceJRDetailQuantity.Value; productAccessor.Update(p); detail.InvoiceWeiHuaiChuQuantity = detail.InvoiceJRDetailQuantity - detail.InvoiceYiHuaiChuQuantity; Model.InvoiceJRDetail temp = invoiceJRDetailAccessor.Get(detail.InvoiceJRDetailId); if (temp != null) { temp.InvoiceId = invoice.InvoiceId; temp.InvoiceHCDetailQuantity = detail.InvoiceHCDetailQuantity; invoiceJRDetailAccessor.Update(temp); } else { detail.InvoiceId = invoice.InvoiceId; invoiceJRDetailAccessor.Insert(detail); } Model.Stock stock = stockAccessor.GetStockByProductIdAndDepotPositionId(p.ProductId, detail.DepotPositionId); if (stock == null) { stock = new Book.Model.Stock(); stock.StockId = Guid.NewGuid().ToString(); stock.ProductId = p.ProductId; stock.DepotPositionId = detail.DepotPositionId; stock.StockQuantity1 = detail.InvoiceJRDetailQuantity; stock.StockCurrentJR = stock.StockCurrentJR == null ? detail.InvoiceJRDetailQuantity : stock.StockCurrentJR + detail.InvoiceJRDetailQuantity; stock.DepotId = invoice.DepotId; stock.ProduceUnit = p.ProduceUnit.CnName; stockAccessor.Insert(stock); } else { stockAccessor.IncrementJR(depotPositionAcccessor.Get(detail.DepotPositionId), p, detail.InvoiceJRDetailQuantity.Value); } } accessor.Update(invoice); break; case Helper.InvoiceStatus.Null: foreach (Model.InvoiceJRDetail detail in invoice.Details) { if (detail.Product == null || string.IsNullOrEmpty(detail.Product.ProductId)) { continue; } Model.Product p = detail.Product; //if (detail.InvoiceProductUnit == detail.Product.ProductOuterPackagingUnit) //{ // jrQuantity = detail.InvoiceJRDetailQuantity * p.ProductBaseUnitRelationship * p.ProductInnerUnitRelationship; //} //else if (detail.InvoiceProductUnit == detail.Product.ProductInnerPackagingUnit) //{ // jrQuantity = detail.InvoiceJRDetailQuantity * p.ProductBaseUnitRelationship; //} //else //{ // jrQuantity = detail.InvoiceJRDetailQuantity; //} //p.ProductCurrentJRQuantity -= jrQuantity; p.StocksQuantity -= detail.InvoiceJRDetailQuantity.Value; //byte[] pic = new byte[] { }; //if (p.ProductImage == null) // p.ProductImage = pic; //if (p.ProductImage1 == null) // p.ProductImage1 = pic; //if (p.ProductImage2 == null) // p.ProductImage2 = pic; //if (p.ProductImage3 == null) // p.ProductImage3 = pic; productAccessor.Update(p); stockAccessor.DecrementJR(depotPositionAcccessor.Get(detail.DepotPositionId), p, detail.InvoiceJRDetailQuantity.Value); detail.InvoiceWeiHuaiChuQuantity -= detail.InvoiceJRDetailQuantity; detail.InvoiceJRDetailQuantity -= detail.InvoiceJRDetailQuantity; invoiceJRDetailAccessor.Update(detail); } break; } break; case Helper.InvoiceStatus.Null: throw new InvalidOperationException(); } }
public void Update(Model.InvoiceJRDetail e) { this.Update <Model.InvoiceJRDetail>(e); }
public void Insert(Model.InvoiceJRDetail e) { this.Insert <Model.InvoiceJRDetail>(e); }
private void _Insert(Book.Model.InvoiceHC invoice) { //经手人 if (invoice.Employee0 != null) { invoice.Employee0Id = invoice.Employee0.EmployeeId; } //录单人 if (invoice.Employee1 != null) { invoice.Employee1Id = invoice.Employee1.EmployeeId; } if ((Helper.InvoiceStatus)invoice.InvoiceStatus.Value == Helper.InvoiceStatus.Normal) { //过账人 if (invoice.Employee2 != null) { invoice.Employee2Id = invoice.Employee2.EmployeeId; } //过账时间 invoice.InvoiceGZTime = DateTime.Now; } //插入表单 accessor.Insert(invoice); //插入明细 foreach (Model.InvoiceHCDetail detail in invoice.Details) { Model.InvoiceJRDetail odetail = invoiceJRDetailAccessor.Get(detail.InvoiceJRDetailId); Model.InvoiceHCDetail hcdetail = new Book.Model.InvoiceHCDetail(); if (detail.InvoiceHCDetailQuantity > 0) { if (detail.InvoiceHCDetailQuantity <= odetail.InvoiceWeiHuaiChuQuantity) { hcdetail.InvoiceId = invoice.InvoiceId; hcdetail.InvoiceHCDetailId = Guid.NewGuid().ToString(); hcdetail.InvoiceHCDetailNote = detail.InvoiceHCDetailNote; hcdetail.InvoiceHCDetailQuantity = detail.InvoiceHCDetailQuantity; hcdetail.InvoiceJRDetailId = detail.InvoiceJRDetailId; hcdetail.InvoiceProductUnit = detail.InvoiceProductUnit; hcdetail.DepotPositionId = detail.DepotPositionId; hcdetail.ProductId = detail.ProductId; invoiceHCDetailAccessor.Insert(hcdetail); Model.Product p = productAccessor.Get(detail.ProductId); //if (p.ProductImage == null || p.ProductImage.Length == 0) // p.ProductImage = new byte[] { }; //if (p.ProductImage1 == null || p.ProductImage1.Length == 0) // p.ProductImage1 = new byte[] { }; //if (p.ProductImage2 == null || p.ProductImage2.Length == 0) // p.ProductImage2 = new byte[] { }; //if (p.ProductImage3 == null || p.ProductImage3.Length == 0) // p.ProductImage3 = new byte[] { }; p.StocksQuantity -= detail.InvoiceHCDetailQuantity; productAccessor.Update(p); odetail.InvoiceWeiHuaiChuQuantity -= detail.InvoiceHCDetailQuantity; odetail.InvoiceYiHuaiChuQuantity += detail.InvoiceHCDetailQuantity; invoiceJRDetailAccessor.Update(odetail); Model.Stock stock = stockAccessor.GetStockByProductIdAndDepotPositionId(p.ProductId, detail.DepotPositionId); if (stock == null) { stock = new Book.Model.Stock(); stock.StockId = Guid.NewGuid().ToString(); stock.ProductId = p.ProductId; stock.DepotPositionId = detail.DepotPositionId; stock.StockQuantity1 = detail.InvoiceHCDetailQuantity; stock.StockCurrentJC = stock.StockCurrentJC == null ? detail.InvoiceHCDetailQuantity : stock.StockCurrentJC + detail.InvoiceHCDetailQuantity; stock.DepotId = invoice.DepotId; stock.ProduceUnit = p.ProduceUnit.CnName; stockAccessor.Insert(stock); } else { stockAccessor.IncrementJC(new BL.DepotPositionManager().Get(detail.DepotPositionId), p, detail.InvoiceHCDetailQuantity.Value); } } else { throw new Helper.InvalidValueException("HaiRuTaiDuo"); } } else { throw new Helper.InvalidValueException("Details"); } } }
private void _Update(Model.InvoiceHC invoice) { invoice.UpdateTime = DateTime.Now;; //invoice.CustomerId = invoice.Customer.CustomerId; if (invoice.Employee0 != null) { invoice.Employee0Id = invoice.Employee0.EmployeeId; } Model.InvoiceHC invoiceOriginal = this.Get(invoice.InvoiceId); Helper.InvoiceStatus invoiceStatus = (Helper.InvoiceStatus)invoice.InvoiceStatus.Value; switch ((Helper.InvoiceStatus)invoiceOriginal.InvoiceStatus) { case Helper.InvoiceStatus.Draft: switch (invoiceStatus) { case Helper.InvoiceStatus.Draft: break; case Helper.InvoiceStatus.Normal: accessor.Delete(invoiceOriginal.InvoiceId); invoice.InsertTime = invoiceOriginal.InsertTime; invoice.UpdateTime = DateTime.Now; _Insert(invoice); break; case Helper.InvoiceStatus.Null: throw new InvalidOperationException(); } break; case Helper.InvoiceStatus.Normal: switch (invoiceStatus) { case Helper.InvoiceStatus.Normal: invoiceOriginal.InvoiceStatus = (int)Helper.InvoiceStatus.Null; _TurnNull(invoiceOriginal); accessor.Delete(invoiceOriginal.InvoiceId); invoice.InsertTime = invoiceOriginal.InsertTime; invoice.UpdateTime = DateTime.Now; _Insert(invoice); break; case Helper.InvoiceStatus.Null: foreach (Model.InvoiceHCDetail detail in invoice.Details) { if (detail.InvoiceHCDetailQuantity > 0) { Model.InvoiceJRDetail temp = invoiceJRDetailAccessor.Get(detail.InvoiceJRDetailId); if (temp != null) { temp.InvoiceWeiHuaiChuQuantity += detail.InvoiceHCDetailQuantity; temp.InvoiceYiHuaiChuQuantity -= detail.InvoiceHCDetailQuantity; invoiceJRDetailAccessor.Update(temp); } Model.Product p = detail.Product; //byte[] pic = new byte[] { }; //if (p.ProductImage == null) // p.ProductImage = pic; //if (p.ProductImage1 == null) // p.ProductImage1 = pic; //if (p.ProductImage2 == null) // p.ProductImage2 = pic; //if (p.ProductImage3 == null) // p.ProductImage3 = pic; productAccessor.Update(p); stockAccessor.DecrementJC(new BL.DepotPositionManager().Get(detail.DepotPositionId), p, detail.InvoiceHCDetailQuantity.Value); } } break; } break; case Helper.InvoiceStatus.Null: throw new InvalidOperationException(); } }