using Microsoft.AspNetCore.Mvc; using System.Threading.Tasks; using Microsoft.Extensions.Logging; using AMESCoreStudio.CommonTools.Result; using Microsoft.AspNetCore.Hosting; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using AMESCoreStudio.Web.Models; using System.Collections.Generic; using Microsoft.AspNetCore.Mvc.Rendering; using System.Linq; using AMESCoreStudio.WebApi.Models; using System; using System.Data; using AMESCoreStudio.Web.ViewModels; using AMESCoreStudio.WebApi.Models.AMES; using AMESCoreStudio.WebApi.DTO.AMES; namespace AMESCoreStudio.Web.Controllers { public class LABController : Controller { private readonly ILogger _logger; public readonly IREP _repApi; public readonly IPPS _ppsApi; public readonly IBAS _basApi; public readonly IPCS _pcsApi; public readonly ISYS _sysApi; public readonly IKCS _kcsApi; public readonly IQRS _qrsApi; public readonly ILAB _labApi; private readonly IWebHostEnvironment _env; public LABController(ILogger logger, IREP repApi, IPPS ppsApi, IBAS basApi, IPCS pcsApi, ISYS sysApi, IKCS kcsApi, IWebHostEnvironment env, IQRS qrsApi, IESUN esunApi, ILAB labApi) { _logger = logger; _repApi = repApi; _ppsApi = ppsApi; _basApi = basApi; _pcsApi = pcsApi; _sysApi = sysApi; _kcsApi = kcsApi; _qrsApi = qrsApi; _labApi = labApi; _env = env; } private void GetFlagList() { var FlagList = new List(); FlagList.Add(new SelectListItem("Y", "Y")); FlagList.Add(new SelectListItem("N", "N")); ViewBag.FlagList = FlagList; } public void GetUserID() { var userID = ""; HttpContext.Request.Cookies.TryGetValue("UserID", out userID); int user_id = 0; if (userID != null) { if (int.Parse(userID.ToString()) >= 0) { user_id = int.Parse(userID.ToString()); } } ViewBag.UserID = user_id; } #region LAB001工作群組維護相關 public IActionResult LAB001() { return View(); } //新增頁面 public IActionResult LAB001C() { GetFlagList(); return View(); } //修改页面 [HttpGet] public async Task LAB001U(int id) { GetFlagList(); var result = await _labApi.GetLabelParam(id); if (result.LabelFieldID == 0) { return View(); } return View(result); } //頁面提交,id=0 添加,id>0 修改 [HttpPost] public async Task LAB001CSaveAsync(LabelParam model) { if (ModelState.IsValid) { IResultModel result; result = await _labApi.PostLabelParam(JsonConvert.SerializeObject(model)); if (result.Success) //yiru modify 2022-09-27 { var _msg = "添加成功!"; return RedirectToAction("Refresh", "Home", new { msg = _msg }); } else { if (result.Errors.Count > 0) { ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); } else { ModelState.AddModelError("error", result.Msg); } } } return View("LAB001C", model); } public async Task LAB001USaveAsync(LabelParam model) { if (ModelState.IsValid) { IResultModel result; result = await _labApi.PutLabelParam(model.LabelFieldID, JsonConvert.SerializeObject(model)); if (result.Success) { var _msg = "修改成功!"; return RedirectToAction("Refresh", "Home", new { msg = _msg }); } else { if (result.Errors.Count > 0) { ModelState.AddModelError(result.Errors[0].Id, result.Errors[0].Msg); } else { ModelState.AddModelError("error", result.Msg); } } } return View("LAB001U", model); } [ResponseCache(Duration = 0)] [HttpGet] public async Task GetLabParamsAsync() { var result = await _labApi.GetLabParams(); if (result.Count > 0) { return Json(new Table() { code = 0, msg = "", data = result, count = result.Count }); } return Json(new Table() { count = 0, data = null }); } #endregion } }