using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using AMESCoreStudio.WebApi.Models.SYS; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Localization; using Microsoft.AspNetCore.Http; using AMESCoreStudio.Web.Models; using AMESCoreStudio.CommonTools.Result; using static AMESCoreStudio.Web.ViewModels.LAB.LAB003ViewModel; using AMESCoreStudio.WebApi.Models.AMES; 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, ILAB labApi, ISYS sysApi, IPCS pcsApi, IStringLocalizer sharedLocalizer) { _sysApi = sysApi; _kcsApi = kcsApi; _qrsApi = qrsApi; _labApi = labApi; _env = env; } private void GetFlagList() { var FlagList = new List(); public async Task LAB003(string mat) { var id = GetLogInUserID(); ViewBag.UserID = id; var result = await _sysApi.GetUserInfo(id); var name = result[0].UserName; ViewBag.UserName = name; return View(); } } ViewBag.UserID = user_id; } public async Task LAB004() { int id = GetLogInUserID(); var result = await _sysApi.GetUserInfo(id); var name = result[0].UserNo; ViewBag.userno = name; return View(); } public async Task LAB003U(string OrderNo) { List model = new List(); model = await _labApi.GetLabelReq(OrderNo); return View(model); } //修改页面 [HttpGet] public async Task GetLab004(string OrderNo, string ModelNo, DateTime? strdate, DateTime? enddate, string UserNo) { List xx = new List(); UserInfo User = new UserInfo(); if (UserNo != null) User = await _sysApi.GetUserInfoByUserNo(UserNo); var result = await _labApi.GetLabelItemMaster(OrderNo, ModelNo, strdate, enddate, User.UserID); if (result!=null) { return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.Data.Count() }); } return Json(new Table() { count = 0, data = null }); } public async Task LAB003P(string LabMat) { var result = await _labApi.GetLabelPicture(LabMat); var x = "file://////"+result.Data.FirstOrDefault(); ViewBag.Picture = x; return View(result.Data); } //頁面提交,id=0 添加,id>0 修改 [HttpPost] public async Task SaveParamLAB003([FromBody] List Lab) { IResultModel result; foreach (var name in Lab) { name.UserId = GetLogInUserID(); } result = await _labApi.PostLabelItemMaster(JsonConvert.SerializeObject(Lab)); return Json(new Result() { success = result.Success, msg = result.Msg }); } [HttpGet] public async Task GetLabelField(string Labmat) { ResultModel result = new ResultModel(); result = await _labApi.GetLabelField(Labmat); return Json(new Result() { success = result.Success, msg = result.Msg, data = result.Data }); } [HttpGet] public async Task GetOrderSn(string OderNo) { int Sn = 1; ResultModel result = new ResultModel(); result = await _labApi.GetLabelItemMaster(OderNo, null,null, null, -1); if(result.Data.Any()) { var r2 = result.Data.Max(x => x.ordeR_NO).ToString(); Sn = int.Parse(r2.Substring(7)) + 1; } string sSn = Sn.ToString("000"); return sSn; } [HttpGet] public async Task GetSampleSn(int Qty) { ResultModel result = new ResultModel(); result = await _labApi.GetSampleSerialRulesNEW(Qty); return result.Msg; } [HttpGet] public async Task GetLabel(string Model) { ResultModel result = new ResultModel(); result = await _labApi.GetLabel(Model); return Json(new Result() { success = result.Success, msg = result.Msg, data = result.Data }); } public int GetLogInUserID() { int user_id = 0; HttpContext.Request.Cookies.TryGetValue("UserID", out string userID); if (userID != null) { if (int.Parse(userID.ToString()) >= 0) { user_id = int.Parse(userID.ToString()); } return View("LAB001U", model); } return user_id; } return Json(new Table() { count = 0, data = null }); } #endregion } }