public ProductInStoreListDialog(long departmentID) { InitializeComponent(); Util.SetSceen(this); ClientProductInStoreBillSave productInStore = null; var Details = new List <ClientProductInStoreDetail>(); var path = Path.Combine(Util.DataFolder, typeof(ClientProductInStoreBillSave).Name); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string[] files = Directory.GetFiles(path + @"\", "*.xml"); listView1.BeginUpdate(); if (files.Count() > 0) { foreach (var file in files) { XmlSerializer serializer = new XmlSerializer(typeof(ClientProductInStoreBillSave)); using (var stream = File.Open(file, FileMode.Open)) { productInStore = serializer.Deserialize(stream) as ClientProductInStoreBillSave; if (productInStore.Department_ID == departmentID && SysConfig.Current.User_ID == productInStore.User_ID) { foreach (var detail in productInStore.Details) { Details.Add(detail); } } } } foreach (var detail in Details.GroupBy(x => x.Goods_ID)) { var item = new ListViewItem(string.Format("{0}", productInStore.CreateTime.ToString("yyyy-MM-dd"))); item.SubItems.Add(detail.FirstOrDefault().ProductNumber); item.SubItems.Add(productInStore.InStoreType_Name); item.SubItems.Add(detail.FirstOrDefault().Store_Name); item.SubItems.Add(detail.FirstOrDefault().Goods_Name); item.SubItems.Add(string.Format("{0}", detail.Sum(x => x.MainNumber))); item.SubItems.Add(string.Format("{0}", detail.Sum(x => x.SecondNumber))); item.SubItems.Add(SysConfig.Current.Username); listView1.Items.Add(item); } } listView1.EndUpdate(); }
public ProductInStoreDetailDialog(ClientProductInStoreBillSave record) { InitializeComponent(); Util.SetSceen(this); productInStore = record; listView1.BeginUpdate(); foreach (var detail in record.Details) { var item = new ListViewItem(detail.ProductNumber); item.SubItems.Add(detail.Store_Name); item.SubItems.Add(detail.Goods_Name); item.SubItems.Add(string.Format("{0}", detail.MainNumber)); item.SubItems.Add(string.Format("{0}", detail.SecondNumber)); listView1.Items.Add(item); } listView1.EndUpdate(); }
private void btn_OK_Click(object sender, EventArgs e) { if (productInStore.Details.Count == 0) { MessageBox.Show("至少录入一条记录"); return; } var folder = Path.Combine(Util.DataFolder, typeof(ClientProductInStoreBillSave).Name); if (!Directory.Exists(folder)) { Directory.CreateDirectory(folder); } foreach (var details in productInStore.Details.GroupBy(x => x.Store_ID)) { var newBill = new ClientProductInStoreBillSave(); newBill = productInStore; newBill.DeviceId = Guid.NewGuid().ToString(); newBill.Details.Clear(); foreach (var clientProductInStoreDetail in details) { newBill.Details.Add(clientProductInStoreDetail); } var file = Path.Combine(folder, typeof(ClientProductInStoreBillSave).Name + DateTime.Now.ToString("yyyyMMddhhmmss") + ".xml"); XmlSerializer serializer = new XmlSerializer(typeof(ClientProductInStoreBillSave)); using (var stream = File.Open(file, FileMode.Create)) { serializer.Serialize(stream, productInStore); } } productInStore.Details.Clear(); listView1.BeginUpdate(); listView1.Items.Clear(); listView1.EndUpdate(); MessageBox.Show("已保存到本机等待发送"); }
public ProductInStoreDialog(long departMentID, long template) { InitializeComponent(); Util.SetSceen(this); productInStore = new ClientProductInStoreBillSave { AccountingUnit_ID = SysConfig.Current.AccountingUnit_ID.Value, Department_ID = departMentID, Domain_ID = SysConfig.Current.Domain_ID, User_ID = SysConfig.Current.User_ID, CreateTime = DateTime.Today }; comboBoxSelectStore.Items.Add(""); comboBoxSelectGoods.Items.Add(""); comboBoxProductPlan.Items.Add(""); string file = Path.Combine(Path.Combine(Util.DataFolder, typeof(ClientProductInStore).Name), template.ToString() + ".xml"); XmlSerializer serializer = new XmlSerializer(typeof(ClientProductInStore)); using (var stream = File.Open(file, FileMode.Open)) { productInStoreTemplate = serializer.Deserialize(stream) as ClientProductInStore; } productInStore.InStoreType_ID = productInStoreTemplate.InStoreType_ID; productInStore.InStoreType_Name = productInStoreTemplate.InStoreType_Name; foreach (var storeDetail in productInStoreTemplate.StoreDetails) { if (storeDetail.Store_ID != 0) { comboBoxSelectStore.Items.Add(new Option(storeDetail.Store_Name, storeDetail.Store_ID)); } } foreach (var goodsDetail in productInStoreTemplate.GoodsDetails) { if (goodsDetail.Goods_ID != 0) { comboBoxSelectGoods.Items.Add(new Option(goodsDetail.Goods_Name, goodsDetail.Goods_ID)); } if (!goodsInfo.ContainsKey(goodsDetail.Goods_ID)) { goodsInfo.Add(goodsDetail.Goods_ID, new Tuple <string, decimal?, decimal?>(goodsDetail.Goods_UnitConvertDirection, goodsDetail.Goods_MainUnitRatio, goodsDetail.Goods_SecondUnitRatio)); } } var productPlanFolder = Path.Combine(Util.DataFolder, typeof(ClientProductPlan).Name); if (Directory.Exists(productPlanFolder)) { var productPlanFile = Directory.GetFiles(productPlanFolder, "*.xml"); XmlSerializer ppSerializer = new XmlSerializer(typeof(ClientProductPlan)); foreach (var ppFile in productPlanFile) { using (var stream = File.Open(ppFile, FileMode.Open)) { var productPlan = ppSerializer.Deserialize(stream) as ClientProductPlan; comboBoxProductPlan.Items.Add(new Option(productPlan.PlanNumber, productPlan.ID)); } } } comboBoxProductPlan.Focus(); DeviceContext.Current.ScannerReader += new EventHandler <ScanEventArgs>(Device_ScannerReaders); }