コード例 #1
0
ファイル: LaurelHub.cs プロジェクト: youllook/Laurelgit
        // 各單位累計盈餘與罰金計算
        public GameSettlement GetSettlement(string RoomID)
        {
            //取得成本資料
            CostSettingModel costSet = GetCostSet();

            // 盈餘 => 出貨 - 成本 (出貨數量*該項目賣出金額) - (進貨數量*該項目成本金額)
            // 罰金 => (超出庫存數量 + 短缺數量)*該項目罰金金額 
            GameSettlement data = new GameSettlement();

            foreach (var item in GameRecordList.Where(p => p.RoomId == RoomID).ToList())
            {
                string[] storageNameList = { "Manufacturer", "Distribution", "Wholesale", "Retailer" };
                foreach (var storageName in storageNameList)
                {
                    string[] pArray = { "dumpling", "riceball", "salad" };
                    foreach (var pName in pArray)
                    {
                        ((SettlementItem)data[storageName]).income +=
                            (((RecordDataItem)((RecordData)item[storageName])[pName]).income * (int)((StorageSetting)costSet[storageName]).income[pName]) -
                            (((RecordDataItem)((RecordData)item[storageName])[pName]).cost * (int)((StorageSetting)costSet[storageName]).cost[pName]);

                        ((SettlementItem)data[storageName]).fine +=
                            (
                                ((RecordDataItem)((RecordData)item[storageName])[pName]).overrun +
                                ((RecordDataItem)((RecordData)item[storageName])[pName]).lack
                            ) * (int)((StorageSetting)costSet[storageName]).fine[pName];
                    }
                }
            }
            return(data);
        }
コード例 #2
0
        public static CostSettingModel GetCostSet()
        {
            //Get CostData
            CostSettingModel costSet = new CostSettingModel();
            string           path    = AppDomain.CurrentDomain.BaseDirectory + "Files/cost_setting.json";
            string           content = Library.FileLib.ReadFile(path);

            costSet = JsonConvert.DeserializeObject <CostSettingModel>(content);
            return(costSet);
        }
コード例 #3
0
ファイル: HomeController.cs プロジェクト: youllook/Laurelgit
        public JsonResult CostSetting(CostSettingModel model)
        {
            var    saveContent = JsonConvert.SerializeObject(model);
            string settingPath = Library.FileLib.rootPath + "cost_setting.json";

            Library.FileLib.WriteOverFile(settingPath, saveContent);
            return(Json(new
            {
                msg = "儲存成功"
            }, JsonRequestBehavior.AllowGet));
        }
コード例 #4
0
ファイル: HomeController.cs プロジェクト: youllook/Laurelgit
        public ActionResult CostSetting()
        {
            CostSettingModel model = Library.SettingFile.GetCostSet();

            return(View(model));
        }