コード例 #1
0
ファイル: MainForm.cs プロジェクト: Chuangludeng/EVE-SSS
        private void createBlueprintInfo()
        {
            Production_Blueprint         = DataManager.QueryBlueprintProduction(Production_Item.typeID);
            Production_Materials_EVEList = DataManager.QueryBlueprintProductionMaterials(Production_Item.typeID);

            Production_Materials_List.BeginUpdate();
            Production_Materials_List.Items.Clear();

            foreach (var item in Production_Materials_EVEList)
            {
                var listViewItem = new ListViewItem();

                listViewItem.Text = item.name;
                listViewItem.Tag  = item.typeID;
                listViewItem.SubItems.Add(item.request_quantity.ToString());
                listViewItem.SubItems.Add(item.number.ToString());
                listViewItem.SubItems.Add(item.price.ToString());
                listViewItem.SubItems.Add("");

                Production_Materials_List.Items.Add(listViewItem);
            }

            Production_Materials_List.EndUpdate();

            updateBlueprintInfo();
        }
コード例 #2
0
ファイル: MainForm.cs プロジェクト: Chuangludeng/EVE-SSS
        private void Production_Click(object sender, EventArgs e)
        {
            Production_Materials_List.BeginUpdate();

            int index = 0;

            foreach (ListViewItem item in Production_Materials_List.Items)
            {
                EVEItem eveItem = Production_Materials_EVEList[index];
                DataManager.QueryInventory(eveItem);

                eveItem.number = eveItem.number - int.Parse(item.SubItems[1].Text);

                DataManager.UpdateInventoryNumber(eveItem);

                index++;
            }

            Production_Materials_List.EndUpdate();

            DataManager.EnterInventory(Production_Blueprint.targetID, int.Parse(Production_Number.Text), int.Parse(Production_SingleCost.Text.Replace(",", "")), Production_Blueprint.targetName);

            updateBlueprintInfo();
        }
コード例 #3
0
ファイル: MainForm.cs プロジェクト: Chuangludeng/EVE-SSS
        private void updateBlueprintInfo()
        {
            Production_Materials_List.BeginUpdate();

            int index             = 0;
            int outNumber         = 0;
            int production_Number = 1;

            int save = 0;

            float cost = 0;

            bool canProduction = true;

            if (int.TryParse(Production_Number.Text, out outNumber))
            {
                if (outNumber == 0)
                {
                    outNumber = 1;
                }
                production_Number = outNumber;
            }

            if (int.TryParse(Production_BlueprintSave.Text, out outNumber))
            {
                save += outNumber;
            }

            if (int.TryParse(Production_BuildingsSave.Text, out outNumber))
            {
                save += outNumber;
            }

            if (int.TryParse(Production_BlueprintCost.Text, out outNumber))
            {
                cost += outNumber;
            }

            if (int.TryParse(Production_InventCost.Text, out outNumber))
            {
                cost += outNumber;
            }

            if (int.TryParse(Production_BuildingsCost.Text, out outNumber))
            {
                cost += outNumber;
            }

            cost = cost / production_Number;

            foreach (ListViewItem item in Production_Materials_List.Items)
            {
                EVEItem eveItem = Production_Materials_EVEList[index];
                DataManager.QueryInventory(eveItem);

                int number = (int)Math.Round(eveItem.request_quantity * ((100 - save) * 0.01f));

                float market_price = PriceService.GetPrice(eveItem.typeID).sell.min;

                item.SubItems[1].Text = (number * production_Number).ToString();
                item.SubItems[2].Text = (eveItem.number).ToString();
                if (number * production_Number > eveItem.number)
                {
                    item.ForeColor = Color.Red;
                    canProduction  = false;
                }
                else
                {
                    item.ForeColor = Color.Black;
                }
                item.SubItems[3].Text = (eveItem.price).ToString();
                item.SubItems[4].Text = (market_price).ToString();

                if (eveItem.number > 0)
                {
                    cost += number * eveItem.price;
                }
                else
                {
                    cost += number * market_price;
                }

                index++;
            }

            Production_Materials_List.EndUpdate();
            var   priceS = PriceService.GetPrice(Production_Blueprint.targetID);
            float sell   = priceS.sell.min;
            float buy    = priceS.buy.max;

            Production_SingleCost.Text   = cost.ToString("###,###");
            Production_Cost.Text         = (cost * production_Number).ToString("###,###");
            Production_Sell.Text         = sell.ToString("###,###");
            Production_Buy.Text          = buy.ToString("###,###");
            Production_SingleProfit.Text = (sell - cost).ToString("###,###");
            Production_Profit.Text       = ((sell - cost) * production_Number).ToString("###,###");

            Production.Enabled = canProduction;
        }