narsil/Tanshu.Accounts.PointOfSale/Sales/CustomersForm.cs
unknown 964d0a78bf Added Basecode to Product
Added Voucher Type During Printing
Added Discount Report
Fixed Void bill table not getting cleared error
Added PAX to table
Removed Itital Setup button in MainForm as it was not doing anything
2011-12-05 15:11:02 +05:30

103 lines
3.0 KiB
C#

using System;
using System.Windows.Forms;
using Tanshu.Accounts.Repository;
using Tanshu.Accounts.Contracts;
using Tanshu.Accounts.Entities;
using Tanshu.Accounts.Entities.Auth;
namespace Tanshu.Accounts.PointOfSale
{
public partial class CustomersForm : Form
{
private int? _customerID;
private Customer _customer;
private readonly string phone;
#region Form Load
public CustomersForm(int? customerID, string phone)
{
InitializeComponent();
this._customerID = customerID;
this.phone = phone;
}
private void CustomersForm_Load(object sender, EventArgs e)
{
if (_customerID.HasValue)
{
using (var bi = new CustomerBI(false))
_customer = bi.Get(x => x.CustomerID == _customerID.Value);
btnDelete.Enabled = true;
txtName.Text = _customer.Name;
txtPhone.Text = _customer.Phone;
txtAddress.Text = _customer.Address;
txtRemarks.Text = _customer.Remarks;
chkImportant.Checked = _customer.Important;
}
else
txtPhone.Text = phone;
btnSave.Text = _customerID.HasValue ? "&Update" : "&Save";
}
#endregion
#region Buttons
private void btnSave_Click(object sender, EventArgs e)
{
if (!ValidateValues())
{
MessageBox.Show("Missing Information: Please check the form.");
txtName.Focus();
}
else
{
Save();
btnCancel_Click(sender, e);
}
}
private void btnDelete_Click(object sender, EventArgs e)
{
using (var bi = new CustomerBI())
bi.Delete(x => x.CustomerID == _customer.CustomerID);
btnCancel_Click(sender, e);
}
private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
}
#endregion
#region Add / Edit / Delete
private bool ValidateValues()
{
return txtName.Text.Trim().Length != 0;
}
private void Save()
{
if (_customer == null)
_customer = new Customer();
_customer.Name = txtName.Text;
_customer.Phone = txtPhone.Text;
_customer.Address = txtAddress.Text;
_customer.Remarks = txtRemarks.Text;
_customer.Important = chkImportant.Checked;
using (var bi = new CustomerBI())
if (_customer.CustomerID == 0)
bi.Insert(_customer);
else
bi.Update(_customer);
}
private void Delete(int customerID)
{
using (var bi = new CustomerBI())
bi.Delete(x => x.CustomerID == customerID);
}
#endregion
public Customer Customer
{
get { return _customer; }
}
}
}