public CExcelInputHelper(CSmartArray array) { //Application pApp = new Application(); m_pApp = new Application(); Workbook pBook = m_pApp.Workbooks.Add(); m_pSheet = pBook.Sheets[1]; m_pSheet.Cells[1, 1] = "наименование"; m_pSheet.Cells[1, 2] = "количество"; //int count = array.GetCount(); int count = m_spisok.GetCount(); for (int i = 0; i < count; i++) { ProductTag tag = (ProductTag)(i + 1); m_pSheet.Cells[i + 2, 1] = m_spisok.GetName(tag); m_pSheet.Cells[i + 2, 2] = array.GetTagCount(tag); } Range pRange = m_pSheet.Range[m_pSheet.Cells[1, 1], m_pSheet.Cells[count + 1, 2]]; //Range pColumn = m_pSheet.Columns["A:FF"]; //pColumn.AutoFit(); for (int i = (int)XlBordersIndex.xlEdgeLeft; i <= (int)XlBordersIndex.xlInsideHorizontal; i++) { pRange.Borders[(XlBordersIndex)i].LineStyle = XlLineStyle.xlContinuous; } m_pApp.Visible = true; }
private Kernal.CSmartArray GetAllPlaneArray() { Kernal.CSmartArray array = m_PlaneSet1.CalcArray(); array.Merge(m_PlaneSet2.CalcArray()); array.Merge(m_PlaneSet3.CalcArray()); return(array); }
private void LoadZakazListToSmartArray(CSmartArray array, List <CZakaz> pList) { for (int i = 0; i < pList.Count; i++) { array.Merge(pList[i].GetSmartArray()); } }
public bool IsEqual(CSmartArray array) { Dictionary <ProductTag, int> map = array.GetMap(); int count = m_TagMap.Count; if (count != map.Count) { return(false); } var en = m_TagMap.Keys.GetEnumerator(); en.MoveNext(); for (int i = 0; i < count; i++) { ProductTag pTag = en.Current; int TagCount = array.GetTagCount(pTag); if (TagCount == 0) { return(false); } if (TagCount != GetTagCount(pTag)) { return(false); } } return(true); }
private Kernal.CSmartArray GetAllTrainArray() { Kernal.CSmartArray array = m_TrainSet1.CalcArray(); array.Merge(m_TrainSet2.CalcArray()); array.Merge(m_TrainSet3.CalcArray()); return(array); }
public void UpdateResult(CSmartArray arr) { if (arr == null) { return; } arr.Merge(m_Result); m_Result.RemoveAll(); }
public CSmartArray CalcArray() { CSmartArray array = new CSmartArray(); for (int i = 0; i < m_ZakazCollection.Count; i++) { array.Merge(m_ZakazCollection[i]); } return(array); }
public CSmartArray CalcArray() { CSmartArray array = new CSmartArray(); for (int i = 0; i < m_prCollection.Count; i++) { array.Add(m_prCollection[i].GetProductTag(), m_prCollection[i].GetValue()); } return(array); }
public static CSmartArray Create() { CSmartArray cSmartArray = new CSmartArray(); return(cSmartArray); // TODO: Edit factory method of CSmartArray // This method should be able to configure the object in all possible ways. // Add as many parameters as needed, // and assign their values to each field by using the API. }
private void SelectedIndexChange(object sender, EventArgs e) { int sIndex = ZakazList.SelectedIndex; CSmartArray array = null; if (sIndex != -1) { array = m_ZakazCollection[ZakazList.SelectedIndex]; } m_prCollection.FillControls(array); }
public CSmartArray GetArray() { CSmartArray array = new CSmartArray(); int count = TextList.Count; for (int i = 0; i < count; i++) { array.Add(TextList[i].Text, (int)NumericList[i].Value); } return(array); }
public void Merge(CSmartArray Arr) { var e = Arr.m_TagMap.Keys.GetEnumerator(); e.MoveNext(); for (int i = 0; i < Arr.m_TagMap.Keys.Count; i++) { ProductTag pTag = e.Current; Add(pTag, Arr.m_TagMap[pTag]); e.MoveNext(); } e.Dispose(); }
public void Refresh() { m_InputCount = new List <int>(); m_SmartInput = new CSmartArray(); m_Result = new CSmartArray(); int count = m_TagInputArray.Count(); for (int i = 0; i < count; i++) { m_InputCount.Add(0); } }
public CSmartArray Copy() { CSmartArray array = new CSmartArray(); var e = m_TagMap.Keys.GetEnumerator(); for (int i = 0; i < m_TagMap.Keys.Count; i++) { e.MoveNext(); ProductTag tag = e.Current; array.Add(tag, m_TagMap[tag]); } return(array); }
virtual public void SetInput(CSmartArray Array) { int count = m_TagInputArray.Count; for (int i = 0; i < count; i++) { ProductTag tag = m_TagInputArray[i]; int ProductCount = Array.GetTagCount(tag); m_InputCount[i] = ProductCount; m_SmartInput.Add(tag, ProductCount); Array.ClearTag(tag); } }
public CSmartArray GetArray() { CSmartArray array = new CSmartArray(); int count = m_spisok.GetCount(); for (int i = 1; i < count; i++) { string name = m_pSheet.Cells[i + 1, 1].Text; string value = m_pSheet.Cells[i + 1, 2].Text; array.Add(name, Convert.ToInt32(value)); } return(array); }
private void button2_Click_1(object sender, EventArgs e) { Kernal.CProductCalc ar = new Kernal.CProductCalc(); Kernal.CSmartArray array = GetAllZakazArray(); array.ExcludeWhatHave(m_AlreadyHave.Copy()); ar.SetArray(array); ar.SetAlreadyHave(m_AlreadyHave.Copy()); for (int i = 0; i < CalcCount; i++) { ar.Calc(); } ShowResultForm(ar.Print()); }
private CProductCalc GetProductCalcSimpleAndSecond(List <CZakaz> simpleZakazes, List <CZakaz> newZakazes) { CSmartArray calcArray2 = new CSmartArray(); LoadZakazListToSmartArray(calcArray2, simpleZakazes); LoadZakazListToSmartArray(calcArray2, newZakazes); CProductCalc productCalc2 = new CProductCalc(); productCalc2.SetArray(calcArray2); productCalc2.SetAlreadyHave(m_alreadyHave.Copy()); productCalc2.Calc(5); return(productCalc2); }
public void Calc() { List <CZakaz> simpleZakazes = new List <CZakaz>(); List <CZakaz> newZakazes = new List <CZakaz>(); List <CZakaz> resolveZakazes = new List <CZakaz>(); UpdateZakazsList(resolveZakazes, newZakazes, simpleZakazes); CSmartArray calcArray = new CSmartArray(); LoadZakazListToSmartArray(calcArray, simpleZakazes); CProductCalc productCalc = new CProductCalc(); productCalc.SetArray(calcArray); productCalc.SetAlreadyHave(m_alreadyHave.Copy()); productCalc.Calc(5); Worksheet pTotalSheet = m_pBook.Worksheets.Add(); pTotalSheet.Name = GetUniqueSheetName("MainTotal"); ExportToExcel(pTotalSheet, productCalc.GetFactoryList(), productCalc.GetArray()); { Worksheet pOneTableSheet = m_pBook.Worksheets.Add(); pOneTableSheet.Name = GetUniqueSheetName("OneTableTotal"); Kernal.CAllFactoryOneTable allFactoryOneTable = new Kernal.CAllFactoryOneTable(productCalc.GetFactoryList(), pOneTableSheet); Kernal.CAllSourceWrite AllSourceWrite = new Kernal.CAllSourceWrite(pOneTableSheet, productCalc.GetArray()); } if (newZakazes.Count > 0) { CProductCalc productCalc2 = GetProductCalcSimpleAndSecond(simpleZakazes, newZakazes); { Worksheet pTotalSheet2 = m_pBook.Worksheets.Add(); pTotalSheet2.Name = GetUniqueSheetName("OtherTotal"); ExportToExcel(pTotalSheet2, productCalc2.GetFactoryList(), productCalc2.GetArray()); } productCalc2.ExcludeWhatHave(productCalc); Worksheet pSimpleSheet = m_pBook.Worksheets.Add(); pSimpleSheet.Name = GetUniqueSheetName("SimpleTotal"); new CSimpleFactoryExport(pSimpleSheet, productCalc2.GetFactoryList(), productCalc2.GetArray()); } if (resolveZakazes.Count > 0) { CProductCalc productCalc2 = GetProductCalcSimpleAndSecond(simpleZakazes, resolveZakazes); CSmartArray newAlreadyHave = productCalc.GetAlreadyHave(); //вывести на другой лист значение newAlreadyHave } }
private void planeCalc_Click(object sender, EventArgs e) { Kernal.CProductCalc calc = new Kernal.CProductCalc(); Kernal.CSmartArray array = GetAllPlaneArray(); array.ExcludeWhatHave(m_AlreadyHave.Copy()); calc.SetArray(array); calc.SetAlreadyHave(m_AlreadyHave.Copy()); for (int i = 0; i < CalcCount; i++) { calc.Calc(); } ShowResultForm(calc.Print()); }
private void SaveZakaz(object sender, EventArgs e) { CSmartArray array = m_prCollection.CalcArray(); int sIndex = ZakazList.SelectedIndex; if (sIndex == -1) { m_ZakazCollection.Add(array); string name = "заказ " + (ZakazList.Items.Count + 1).ToString(); ZakazList.Items.Add(name); } else { m_ZakazCollection[sIndex] = array; } }
private void button1_Click(object sender, EventArgs e) { Kernal.CSmartArray array = GetAllZakazArray(); array.Merge(GetAllTrainArray()); array.Merge(GetAllPlaneArray()); array.ExcludeWhatHave(m_AlreadyHave.Copy()); Kernal.CProductCalc calc = new Kernal.CProductCalc(); calc.SetArray(array); calc.SetAlreadyHave(m_AlreadyHave.Copy()); for (int i = 0; i < CalcCount; i++) { calc.Calc(); } ShowResultForm(calc.Print()); Kernal.CExportAllFactoryHelper helper = new Kernal.CExportAllFactoryHelper(calc.GetFactoryList()); }
public CSimpleFactoryExport(Worksheet pSheet, List <CFactory> pList, CSmartArray array) { int row = 1; for (int i = 0; i < pList.Count; i++) { CFactory pFactory = pList[i]; if (!pFactory.IsEmpty()) { Range pRange = pSheet.Range[pSheet.Cells[row, 1], pSheet.Cells[row, 2]]; pRange.Merge(); pRange.Value = pList[i].GetFactName(); row++; } ExportFactory(pSheet, pFactory, ref row); } Dictionary <ProductTag, int> map = array.GetMap(); Dictionary <ProductTag, int> .KeyCollection.Enumerator e = map.Keys.GetEnumerator(); int count = map.Keys.Count; pSheet.Range[pSheet.Cells[row, 1], pSheet.Cells[row, 2]].Merge(); pSheet.Range[pSheet.Cells[row, 1], pSheet.Cells[row, 2]] = "Вырастить на поле"; row++; for (int i = 0; i < count; i++) { e.MoveNext(); ProductTag tag = e.Current; string name = m_spisok.GetName(tag); int value = map[tag]; pSheet.Cells[row, 1] = name; pSheet.Cells[row, 2] = value; row++; } Range FullRange = pSheet.Range[pSheet.Cells[1, 1], pSheet.Cells[row - 1, 2]]; for (int i = (int)XlBordersIndex.xlEdgeLeft; i <= (int)XlBordersIndex.xlInsideHorizontal; i++) { FullRange.Borders[(XlBordersIndex)i].LineStyle = XlLineStyle.xlContinuous; } pSheet.Columns[1].AutoFit(); }
public void FillControls(CSmartArray array) { List <ProductTag> ptList = new List <ProductTag>(); List <int> iList = new List <int>(); if (array != null) { array.FillArray(ptList, iList); } int count = ptList.Count; for (int i = 0; i < count; i++) { m_prCollection[i].SetValue(ptList[i], iList[i]); } for (int i = count; i < m_prCollection.Count; i++) { m_prCollection[i].SetValue(Kernal.ProductTag.ptNotFound, 0); } }
public CAllSourceWrite(Worksheet pSheet, CSmartArray array) { Dictionary <ProductTag, int> map = array.GetMap(); Dictionary <ProductTag, int> .KeyCollection.Enumerator e = map.Keys.GetEnumerator(); const int startRow = 3; const int startColumn = 10; Utils.WriteHeader(pSheet, startRow, startColumn); int count = map.Keys.Count; for (int i = 0; i < count; i++) { e.MoveNext(); ProductTag tag = e.Current; string name = m_spisok.GetName(tag); int value = map[tag]; Utils.WriteTagString(pSheet, startRow + i, startColumn, name, value); } }
public void ExcludeWhatHave(CSmartArray Arr) { var e = m_TagMap.Keys.GetEnumerator(); List <ProductTag> sameTag = new List <ProductTag>(); for (int i = 0; i < m_TagMap.Keys.Count; i++) { e.MoveNext(); ProductTag tag = e.Current; int count = Arr.GetTagCount(tag); if (count != 0) { sameTag.Add(tag); } } for (int i = 0; i < sameTag.Count; i++) { ProductTag tag = sameTag[i]; int count = Arr.GetTagCount(tag); int value = m_TagMap[tag]; if (value > count) { Add(tag, -count); Arr.ClearTag(tag); } else if (value < count) { ClearTag(tag); Arr.Add(tag, -value); } else //одинаковое значение { ClearTag(tag); Arr.ClearTag(tag); } } //e.MoveNext(); }
public CExportAllFactoryHelper(Worksheet pSheet, List <CFactory> pList, CSmartArray array) { m_pFactoryList = pList; m_array = array; ExportForExcel(pSheet); }
public CZakaz() { m_isNew = false; m_isResolve = false; m_array = new CSmartArray(); }
//another change static public void SetHaveProduct(CSmartArray arr) { //arr.Add(("пшеница"), 2); arr.Add(("кукуруза"), 3); arr.Add(("морковь"), 3); arr.Add(("сахарный тросник"), 3); arr.Add(("хлопок"), 3); arr.Add(("клубника"), 3); arr.Add(("томат"), 6); //arr.Add(("сосна"), 4); //arr.Add(("картофель"), 4); arr.Add(("какао"), 5); arr.Add(("каучук"), 6); //arr.Add(("шелк"), 3); //arr.Add(("перец"), 1); arr.Add("яйцо", 13); arr.Add("кукурузные чипсы", 10); arr.Add(("хлеб"), 1); arr.Add(("печенье"), 1); arr.Add(("бублик"), 2); arr.Add(("пицца"), 2); arr.Add(("картофельный хлеб"), 0); arr.Add(("банановый хлеб"), 1); arr.Add(("сливки"), 1); arr.Add(("сыр"), 4); arr.Add(("масло"), 0); arr.Add(("йогурт"), 1); arr.Add(("персиковый йогурт"), 1); arr.Add(("хлопковая ткань"), 5); arr.Add(("пряжа"), 4); arr.Add(("шелковая ткань"), 3); arr.Add(("рубашка"), 4); arr.Add(("свитер"), 3); arr.Add(("пальто"), 0); arr.Add(("шляпа"), 3); arr.Add(("платье"), 3); arr.Add(("костюм"), 1); arr.Add(("попкорн"), 4); arr.Add(("кукурузные чипсы"), 2); arr.Add(("Гранола"), 5); arr.Add(("чипсы"), 0); arr.Add(("милкшейк"), 2); arr.Add(("чизбургер"), 0); arr.Add(("сэндвич"), 1); arr.Add(("картошка фри"), 2); arr.Add(("печеный картофель"), 1); arr.Add(("резина"), 3); arr.Add(("пластик"), 4); arr.Add(("клей"), 1); arr.Add(("сахар"), 4); arr.Add(("сироп"), 2); arr.Add(("карамель"), 0); arr.Add(("медовая карамель"), 2); arr.Add(("бумага"), 4); arr.Add(("бумажные полотенца"), 1); arr.Add(("обои"), 1); arr.Add(("книга"), 1); arr.Add(("мороженное"), 2); arr.Add(("фруктовый лед"), 3); arr.Add(("заморолженный йогурт"), 2); arr.Add(("эскимо"), 4); arr.Add(("ананасовый сорбет"), 2); arr.Add(("кекс"), 1); arr.Add(("шоколадный пирог"), 1); arr.Add(("пирожное"), 3); arr.Add(("пончик"), 0); }
private void ExportToExcel(Worksheet pSheet, List <CFactory> pFactory, CSmartArray array) { CExportAllFactoryHelper excelHelper = new CExportAllFactoryHelper(pSheet, pFactory, array); }