diff --git a/HiyoshiCfhWeb/Controllers/ImportController.cs b/HiyoshiCfhWeb/Controllers/ImportController.cs deleted file mode 100644 index 9e2b6a5..0000000 --- a/HiyoshiCfhWeb/Controllers/ImportController.cs +++ /dev/null @@ -1,105 +0,0 @@ -using HiyoshiCfhWeb.Extensions; -using HiyoshiCfhWeb.Models; -using Microsoft.AspNet.Identity; -using System; -using System.Collections.Generic; -using System.Data.SQLite; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using System.Web; -using System.Web.Hosting; -using System.Web.Mvc; - -namespace HiyoshiCfhWeb.Controllers -{ - [Authorize] - public class ImportController : Controller - { - private ApplicationDbContext db = new ApplicationDbContext(); - - public ActionResult Materials() - { - return View(); - } - - [HttpPost] - [ValidateAntiForgeryToken] - public ActionResult Materials(HttpPostedFileWrapper importFile) - { - if (importFile != null) - { - var filename = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString() + importFile.FileName); - importFile.SaveAs(filename); - TempData["filename"] = filename; - return RedirectToAction("MaterialsProc"); - } - return View(); - } - - public ActionResult MaterialsProc(string id) - { - string filename = TempData["filename"] as string; - if (filename == null) - { - return RedirectToAction("Materials"); - } - else if (id == null) - { - TempData.Keep(); - return View(Tuple.Create(0, 0, filename, false)); - } - else - { - var strs = id.Split('-'); - int start, end; - if (Int32.TryParse(strs[0], out start) && Int32.TryParse(strs[1], out end) && end > start) - { - var uid = User.Identity.GetUserId(); - var admiral = db.Admirals.Where(x => x.UserId == uid).First(); - var connection = new SQLiteConnection(); - connection.ConnectionString = string.Format("Data Source={0};Version=3;", filename); - connection.Open(); - using (var command = connection.CreateCommand()) - { - command.CommandText = "SELECT * FROM Resources LIMIT @offset, @limit"; - command.Parameters.AddWithValue("@offset", start); - command.Parameters.AddWithValue("@limit", end - start); - var reader = command.ExecuteReader(); - while (reader.Read()) - { - var record = new MaterialRecord(); - record.TimeUtc = reader.GetDateTime(1).JstToUtc(); - record.Type = (MaterialType)reader.GetInt32(2); - record.Value = reader.GetInt32(3); - record.AdmiralId = admiral.AdmiralId; - db.MaterialRecords.Add(record); - } - db.SaveChanges(); - } - using (var command = connection.CreateCommand()) - { - command.CommandText = "SELECT COUNT(*) FROM Resources"; - var reader = command.ExecuteReader(); - reader.Read(); - var size = reader.GetInt32(0); - if (size <= end) - { - return View(Tuple.Create(start, size, filename, true)); - } - else - { - TempData.Keep(); - return View(Tuple.Create(start, end, filename, false)); - } - } - } - else - { - return RedirectToAction("Materials"); - } - } - } - } -} \ No newline at end of file diff --git a/HiyoshiCfhWeb/HiyoshiCfhWeb.csproj b/HiyoshiCfhWeb/HiyoshiCfhWeb.csproj index 4062f61..4d2cec2 100644 --- a/HiyoshiCfhWeb/HiyoshiCfhWeb.csproj +++ b/HiyoshiCfhWeb/HiyoshiCfhWeb.csproj @@ -155,12 +155,6 @@ ..\packages\System.Data.SQLite.Core.1.0.109.1\lib\net46\System.Data.SQLite.dll - - ..\packages\System.Data.SQLite.EF6.1.0.109.0\lib\net46\System.Data.SQLite.EF6.dll - - - ..\packages\System.Data.SQLite.Linq.1.0.109.0\lib\net46\System.Data.SQLite.Linq.dll - ..\packages\System.Diagnostics.DiagnosticSource.4.5.0\lib\net46\System.Diagnostics.DiagnosticSource.dll @@ -270,7 +264,6 @@ - @@ -545,8 +538,6 @@ - - diff --git a/HiyoshiCfhWeb/Views/Import/Materials.cshtml b/HiyoshiCfhWeb/Views/Import/Materials.cshtml deleted file mode 100644 index 112e391..0000000 --- a/HiyoshiCfhWeb/Views/Import/Materials.cshtml +++ /dev/null @@ -1,18 +0,0 @@ -@{ - ViewBag.Title = "資材統計のインポート"; -} - -

@ViewBag.Title

- -

資材統計プラグインのデータをインポートします。下のフォームで ResourcesStatisticsPlugin.db をアップロードすることでインポートを開始できます。

-

大きなデータベースに対応するために1000件ずつ、ブラウザの画面を更新しながらとり込み作業を行います。 - 安定した通信環境とブラウザを使用してインポート作業を行ってください。

- -@using (Html.BeginForm(null, null, FormMethod.Post, new { enctype = "multipart/form-data" })) -{ - @Html.AntiForgeryToken() -
- -
- -} diff --git a/HiyoshiCfhWeb/Views/Import/MaterialsProc.cshtml b/HiyoshiCfhWeb/Views/Import/MaterialsProc.cshtml deleted file mode 100644 index 3fc1cb9..0000000 --- a/HiyoshiCfhWeb/Views/Import/MaterialsProc.cshtml +++ /dev/null @@ -1,39 +0,0 @@ -@model Tuple - -@{ - ViewBag.Title = "資材統計のインポート処理"; - var start = Model.Item1; - var end = Model.Item2; - var filename = Model.Item3; - var isFinished = Model.Item4; -} - -

@ViewBag.Title

- -

ファイル名: @filename

- -@if (start == 0 && end == 0) -{ -

正常にインポートを行うために、通信が安定した場所でインポートを開始してください。また、処理中にブラウザを閉じたりしないでください。

-

@Html.ActionLink("インポート", "MaterialsProc", new { id = "0-1000" }, new { @class = "btn btn-primary" })

-} -else -{ -

区間[@start, @end)のインポート完了。

- if (isFinished) - { -

全区間でのインポートが完了しました。

- } - else - { -

インポートを続けます。お待ちください。

-

- 警告 現在インポート作業中です。このタブを閉じないでください。万一問題が発生した場合はやり直さずに管理者に連絡してください。 -

- - } -} \ No newline at end of file diff --git a/HiyoshiCfhWeb/Web.config b/HiyoshiCfhWeb/Web.config index 102ef29..76ba7ab 100644 --- a/HiyoshiCfhWeb/Web.config +++ b/HiyoshiCfhWeb/Web.config @@ -1,26 +1,26 @@ - + -
+
-
+
- + - - - - - - + + + + + + - - - - - + + + + + - + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + - - - - - - - \ No newline at end of file + + diff --git a/HiyoshiCfhWeb/packages.config b/HiyoshiCfhWeb/packages.config index 36fdf3b..af1b7bb 100644 --- a/HiyoshiCfhWeb/packages.config +++ b/HiyoshiCfhWeb/packages.config @@ -52,10 +52,7 @@ - - -