/*************************************************************
         * 登録ボタン押下時の処理
         *************************************************************/
        private void btnAppend_Click(object sender, EventArgs e)
        {
            if (Program.MessageBoxBefore("登録しますか?") == DialogResult.Yes)
            {
                // 登録データのオブジェクトを作成
                var entity = new Fare()
                {
                    code = textRegCode.Text,
                    year = Const.TARGET_YEAR,
                    name = textRegName.Text,
                    price_budget = Conversion.Parse(textRegPriceBudget.Text),
                    price_actual = Conversion.Parse(textRegPriceActual.Text),
                    note = textRegNote.Text,
                    update_user = string.Concat(SystemInformation.ComputerName, "/", SystemInformation.UserName),
                    update_date = DateTime.Now,
                    del_flg = Const.FLG_OFF
                };

                // データ登録処理(既に同じコードが存在する場合は登録しない)
                using (var context = new CostAccountingEntities())
                {
                    var target = from t in context.Fare
                                 where t.code.Equals(entity.code) && t.year.Equals(entity.year)
                                 select t;
                    if (target.Count() == 0)
                    {
                        context.Fare.Add(entity);
                        context.SaveChanges();

                        Logger.Info(Message.INF003, new string[] { this.Text, Message.create(textRegCode, textRegName) });
                        Program.MessageBoxAfter("登録しました。");

                        Form_Prepare_FareReg_Load(sender, e);
                    }
                    else
                    {
                        Program.MessageBoxError("既に同じコードの設備が登録されています。");
                    }

                }
            }
        }
        /*************************************************************
         * 初期データ登録ボタン押下時の処理
         *************************************************************/
        private void btnDefaultDataReg_Click(object sender, EventArgs e)
        {
            if (Program.MessageBoxBefore("初期データを登録しますか?" + Environment.NewLine + "※現在登録されているデータは削除されます※") == DialogResult.Yes)
            {
                using (var context = new CostAccountingEntities())
                {
                    // データ削除処理
                    var target = from t in context.Fare
                                 where t.year.Equals(Const.TARGET_YEAR)
                                 select t;

                    context.Fare.RemoveRange(target);

                    string fareData = Properties.Resources.defaultFareData;
                    string[] fareItems = fareData.Split(',');

                    // データ登録処理
                    foreach (string fare in fareItems)
                    {
                        string[] data = fare.Split('#');
                        var entity = new Fare()
                        {
                            code = data[0],
                            year = Const.TARGET_YEAR,
                            name = data[1],
                            price_budget = decimal.Zero,
                            price_actual = decimal.Zero,
                            note = string.Empty,
                            update_user = string.Concat(SystemInformation.ComputerName, "/", SystemInformation.UserName),
                            update_date = DateTime.Now,
                            del_flg = Const.FLG_OFF
                        };
                        context.Fare.Add(entity);
                    }
                    context.SaveChanges();
                }
                Program.MessageBoxAfter("登録しました。");
                Form_Prepare_FareReg_Load(sender, e);
            }
        }