diff --git a/AMESCoreStudio.Web/Controllers/PCSController.cs b/AMESCoreStudio.Web/Controllers/PCSController.cs index 01397a41..b1356c9d 100644 --- a/AMESCoreStudio.Web/Controllers/PCSController.cs +++ b/AMESCoreStudio.Web/Controllers/PCSController.cs @@ -711,6 +711,27 @@ namespace AMESCoreStudio.Web.Controllers ViewBag.GetWipSystemTypeSelect = q; } + /// + /// 工單資訊 系統工程資訊 DMI燒入 Type + /// + /// + private void GetWipSystemDMITypeSelect(string SelectedValue = null) + { + List values = new List(); + if (SelectedValue != null) + { + values = SelectedValue.Split(',').ToList(); + } + var q = Enum.GetValues(typeof(EnumPCS.EnumWipSystemDMIBIType)).Cast() + .Select(s => new SelectListItem + { + Text = EnumPCS.GetDisplayName(s).ToString(), + Value = Convert.ToInt32(Enum.Parse(typeof(EnumPCS.EnumWipSystemDMIBIType), s.ToString())).ToString() + }).ToList(); + + ViewBag.GetWipSystemDMITypeSelect = q; + } + /// /// SOP_Type /// @@ -1008,7 +1029,7 @@ namespace AMESCoreStudio.Web.Controllers } /// - /// 生產單位 Json By WipNp + /// 生產單位 Json By WipNo /// /// [HttpPost] @@ -1240,9 +1261,9 @@ namespace AMESCoreStudio.Web.Controllers } /// - /// 用工單號碼查詢綁定作業站 + /// 用工單號碼查詢綁定作業站 /// - /// RuleStation + /// StationID [HttpPost] public async Task GetRuleStationByWipNoUnitNoJson(string wipNo) { @@ -1357,7 +1378,6 @@ namespace AMESCoreStudio.Web.Controllers #region PCS001 工單資料維護 public async Task PCS001(WipDataViewModel model = null) { - //await GetUnitList(); await GetProductType(); await GetFactoryInfo(); await GetFactoryUnit(); @@ -1784,26 +1804,7 @@ namespace AMESCoreStudio.Web.Controllers model.wipInfoBlobs = await _pcsApi.GetWipInfoBlob(model.wipInfo.WipNO); } - await GetItemsList(); - await GetProductType(); - await GetFactoryInfo(); - await GetFactoryUnit(); - await GetLineInfo(); - await GetMFGType(); - await GetProcessTypes(); - await GetMaterialFlowRuleJson(model.wipAtt.ItemNO, model.wipInfo.UnitNO); - await GetOutfitCommodityInfoJson(); - await GetFactoryUnitByWipNoJson(model.wipInfo.WipNO); - await GetRuleStationByWipNoUnitNoJson(model.wipInfo.WipNO); - GetWipSEQType(); - GetBurnType(); - GetPartsBakeType(); - GetPCBBakeTypeSelect(); - GetPCBProcessingTypeSelect(); - GetSolderPasteSelect(); - GetWipType(); - GetWipSystemTypeSelect(); - GetWipSystemPMTypeSelect(); + GetCheckboxApproveLogo(model.wipLabel != null ? model.wipLabel.ApproveLogo : null); GetCheckboxCompanyLogo(model.wipLabel != null ? model.wipLabel.CompanyLogo : null); GetCheckboxPrintMode(model.wipLabel != null ? model.wipLabel.PrintMode : null); @@ -1884,27 +1885,9 @@ namespace AMESCoreStudio.Web.Controllers model.wipInfoBlobs = await _pcsApi.GetWipInfoBlob(model.wipInfo.WipNO); } - await GetItemsList(); - await GetProductType(); - await GetFactoryInfo(); - await GetFactoryUnit(); - await GetLineInfo(); - await GetMFGType(); - await GetProcessTypes(); - await GetMaterialFlowRuleJson(model.wipAtt.ItemNO, model.wipInfo.UnitNO); - await GetOutfitCommodityInfoJson(); - await GetFactoryUnitByWipNoJson(model.wipInfo.WipNO); - await GetRuleStationByWipNoUnitNoJson(model.wipInfo.WipNO); - GetWipSEQType(); - GetBurnType(); - GetPartsBakeType(); - GetPCBBakeTypeSelect(); - GetPCBProcessingTypeSelect(); - GetSolderPasteSelect(); - GetWipType(); - GetWipSystemTypeSelect(); - GetWipSystemPMTypeSelect(); - GetSOPTypeSelect(); + + await WipDataSelectAll(model.wipAtt.WipNO, model.wipAtt.ItemNO, model.wipInfo.UnitNO); + GetCheckboxApproveLogo(model.wipLabel != null ? model.wipLabel.ApproveLogo : null); GetCheckboxCompanyLogo(model.wipLabel != null ? model.wipLabel.CompanyLogo : null); GetCheckboxPrintMode(model.wipLabel != null ? model.wipLabel.PrintMode : null); @@ -1922,34 +1905,7 @@ namespace AMESCoreStudio.Web.Controllers { #region 選單 - await GetItemsList(); - await GetProductType(); - await GetFactoryInfo(); - await GetFactoryUnit(); - await GetLineInfo(); - await GetMFGType(); - await GetProcessTypes(); - await GetFlowRuleList(); - await GetFactoryUnitByWipNoJson(model.wipInfo.WipNO); - await GetMaterialFlowRuleJson(model.wipAtt.ItemNO, model.wipInfo.UnitNO); - await GetOutfitCommodityInfoJson(); - await GetRuleStationByWipNoUnitNoJson(model.wipInfo.WipNO); - GetWipSEQType(); - GetBurnType(); - GetPartsBakeType(); - GetPCBBakeTypeSelect(); - GetPCBProcessingTypeSelect(); - GetSolderPasteSelect(); - GetWipType(); - GetWipSystemTypeSelect(); - GetSOPTypeSelect(); - GetCheckboxApproveLogo(); - GetCheckboxCompanyLogo(); - GetCheckboxPrintMode(); - GetCheckboxWipAttr(); - GetCheckboxDIP(); - GetCheckboxSMD(); - GetWipSystemPMTypeSelect(); + #endregion @@ -2206,19 +2162,26 @@ namespace AMESCoreStudio.Web.Controllers //取得使用者上傳檔案的原始檔名 FileName = Path.GetFileName(formFile.FileName); //取原始檔名中的副檔名 - var fileExt = Path.GetExtension(FileName); + //var fileExt = Path.GetExtension(FileName); //為避免使用者上傳的檔案名稱發生重複,重新給一個亂數名稱 - NewName = Path.GetRandomFileName() + fileExt; + //NewName = Path.GetRandomFileName() + fileExt; //指定要寫入的路徑、檔名和副檔名 - FilePath = $"\\PDF\\";//本機目錄 - using (var stream = new FileStream(_env.WebRootPath + FilePath + FileName, FileMode.Create)) + FilePath = $@"{_env.WebRootPath}\UploadFolder\{model.wipInfo.WipNO}"; + var path = $@"{FilePath}\{FileName}"; + + if (!System.IO.Directory.Exists(FilePath)) + { + System.IO.Directory.CreateDirectory(FilePath); + } + + using (var stream = new FileStream(path, FileMode.Create)) { await formFile.CopyToAsync(stream); } model.wipInfoBlob.WipNo = model.wipInfo.WipNO; model.wipInfoBlob.ImageName = FileName; - model.wipInfoBlob.Filepath = FilePath; + model.wipInfoBlob.Filepath = $@"\UploadFolder\{model.wipInfo.WipNO}\"; result = await _pcsApi.PostWipInfoBlob(JsonConvert.SerializeObject(model.wipInfoBlob)); } } @@ -2267,6 +2230,63 @@ namespace AMESCoreStudio.Web.Controllers } } + /// + /// 工單資料畫面 Select All + /// + /// 工單號碼 + /// 工單料號 + /// 生產單位 + /// + public async Task WipDataSelectAll(string WipNo = null , string ItemNo = null , string UnitNo=null) + { + // KP Items + await GetItemsList(); + // 產品別 + await GetProductType(); + // 廠別 委外廠 + await GetFactoryInfo(); + // 生產單位 + await GetFactoryUnit(); + // 線別 + await GetLineInfo(); + // 正背面 + await GetMFGType(); + // 工單類型 + await GetProcessTypes(); + // 料號流程 + await GetMaterialFlowRuleJson(ItemNo, UnitNo); + // 治具種類 + await GetOutfitCommodityInfoJson(); + // 生產單位 By WipNo + await GetFactoryUnitByWipNoJson(WipNo); + // 工單號碼綁定作業站 治具使用 + await GetRuleStationByWipNoUnitNoJson(WipNo); + // 工程資訊-DMI 燒入 + GetWipSystemDMITypeSelect(); + // 制令序號 + GetWipSEQType(); + // 燒入 + GetBurnType(); + // 零件烘烤 + GetPartsBakeType(); + // 板卡資訊 PCB烘烤 + GetPCBBakeTypeSelect(); + // 板卡資訊 PCB加工 + GetPCBProcessingTypeSelect(); + // 板卡資訊 錫膏 + GetSolderPasteSelect(); + // 工單狀態 標準 重工 + GetWipType(); + // 工程資訊 軟體料號Type + GetWipSystemTypeSelect(); + // 工程資訊 Power Model + GetWipSystemPMTypeSelect(); + // SOP Type + GetSOPTypeSelect(); + + } + + /// /// CheckMAC 資料是否正確 /// @@ -4330,78 +4350,6 @@ namespace AMESCoreStudio.Web.Controllers return PartialView("_SOPPartial", Json(new Table() { count = 0, data = null })); } - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #region PCS025組件资料维护相关 public IActionResult PCS025() @@ -4586,19 +4534,6 @@ namespace AMESCoreStudio.Web.Controllers #endregion - public async Task PCS999() - { - return View(); - } - - //頁面提交,id=0 添加,id>0 修改 - [HttpPost] - public async Task PCS999Async(MaterialKpDtos model) - { - var aa = "string"; - return View(model); - } - /// /// 登入UserID /// diff --git a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs index 38172066..124d7366 100644 --- a/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs +++ b/AMESCoreStudio.Web/HttpApis/AMES/IPCS.cs @@ -56,7 +56,7 @@ namespace AMESCoreStudio.Web ITask> GetMFGTypes(); /// - /// 正背面 + /// 工單類型 /// /// [WebApiClient.Attributes.HttpGet("api/ProcessTypes")] diff --git a/AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml b/AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml index 020935de..68a19015 100644 --- a/AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml +++ b/AMESCoreStudio.Web/Views/PCS/PCS001R.cshtml @@ -411,559 +411,557 @@ } - + + + @* 板卡-工程資訊sheet *@ +
+
+
+ +
+ +
- @* 板卡-工程資訊sheet *@ -
-
-
- -
- + +
+ +
+
- -
- +
+
+ +
+ +
-
-
-
- +
+
- +
-
-
- -
- +
+
+ +
+ +
+
-
-
-
- +
+
- +
-
-
- -
- +
+
+ +
+ + + + + @* + + *@ +
+
-
-
-
- +
+
- - - - - @* - - *@ +
-
-
- -
- -
-
- -
-
- -
- - @**@ -
-
- -
- +
+
+ +
+ + @**@ +
+
+ +
+ +
-
+
-
-
- -
- +
+ +
+ +
-
-
-
- -
-
- -
- +
+
+ +
+
+ +
+ +
+
+
+ +
+ + +
-
- + +
+
- - +
-
-
- -
- +
+
+ +
+ +
+
-
-
-
- -
- +
+ +
+
-
-
- -
- +
+
+ +
+ +
+
-
-
-
- +
+
- +
-
- -
- -
- -
-
-
-
- -
- +
+
+ +
+ +
-
-
- -
- +
+ +
+ +
-
-
-
-
- -
- - +
+
+
+ +
+ + +
-
-
- -
- - +
+ +
+ + +
-
-
- -
- - +
+ +
+ + +
-
-
- -
- +
+ +
+ +
-
-
-
- -
- - +
+
+ +
+ + +
-
-
- -
- +
+ +
+ +
-
-
-
- -
- - +
+
+ +
+ + +
-
-
- -
- +
+ +
+ +
-
- @* 系統-工程資訊sheet *@ -
-
-
- -
- -
+ @* 系統-工程資訊sheet *@ +
+
+
+ +
+ +
- -
- + +
+ +
-
-
-
- -
- -
-
- +
+
+ +
+ +
+
+ +
-
-
- -
- +
+ +
+ +
-
-
-
-
- -
- +
+
+
+ +
+ +
-
-
- -
- +
+ +
+ +
-
-
- -
- +
+ +
+ +
+
+ +
+
-
- -
-
-
-
-
- -
- -
+
+
+ +
+ +
- -
- + +
+ +
-
-
-
- -
- -
- -
- -
- -
- +
+
+ +
+ +
+ +
+ +
+ +
+ +
-
-
-
- -
- +
+
+ +
+ +
-
-
-
- -
- +
+
+ +
+ +
-
-
-
- -
- +
+
+ +
+ +
-
-
-
- -
- +
+
+ +
+ +
-
-
-
- -
- - +
+
+ +
+ + +
-
-
-
- -
- +
+
+ +
+ +
-
-
-
+
-
+
-
-
- -
- +
+ +
+ +
-
- @* 治具組合sheet *@ -
- - @{ int j = 0;} - - - - - - - - - @foreach (var index in Model.WipOutfits) - { - - - - - - j++; - } - -
- 治具種類 - - 生產單位 - - 作業站 -
- @index.PartNoName - - @index.UnitNoName - - @index.StationName -
-
- - @* SOP文件 sheet *@ -
-
- - @{ int l = 0;} - - - - - - - - - - @foreach (var index in Model.WipSops) - { + @* 治具組合sheet *@ +
+
SOP文件敘述檔案路徑SOP類型生產單位
+ @{ int j = 0;} + - - - - + + + - l++; - } - -
- - @index.SOPName - - @index.SOPPath - - @index.SOPTypeName - - @index.UnitNoName - + 治具種類 + + 生產單位 + + 作業站 +
-
- - @* 標籤選項sheet *@ -
-
- - -
- -
- -
- -
-
-
- -
- -
- -
-
-
- -
- - -
-
-
- -
- -
-
- -
- -
- -
+ + + @foreach (var index in Model.WipOutfits) + { + + + @index.PartNoName + + + @index.UnitNoName + + + @index.StationName + + + j++; + } + +
-
- @* 上傳資料sheet *@ -
-
+ @* SOP文件 sheet *@ +
+
+ @{ int l = 0;} - + + + - @foreach (var index in Model.wipInfoBlobs) + @foreach (var index in Model.WipSops) { + + + l++; }
檔案名稱SOP文件敘述 檔案路徑SOP類型生產單位
- @index.ImageName + @index.SOPName + + @index.SOPPath + + @index.SOPTypeName - @index.Filepath + @index.UnitNoName
+ + @* 標籤選項sheet *@ +
+
+ + +
+ +
+ +
+ +
+
+
+ +
+ +
+ +
+
+
+ +
+ + +
+
+
+ +
+ +
+
+ +
+ +
+ +
+
+
+ + @* 上傳資料sheet *@ +
+
+ + + + + + + + + @foreach (var index in Model.wipInfoBlobs) + { + + + + + } + +
檔案名稱檔案路徑
+ + @index.ImageName + + @index.Filepath +
+
+
+
- -
@section Scripts { diff --git a/AMESCoreStudio.Web/Views/PCS/PCS003.cshtml b/AMESCoreStudio.Web/Views/PCS/PCS003.cshtml index 7ebf2110..b455b8a4 100644 --- a/AMESCoreStudio.Web/Views/PCS/PCS003.cshtml +++ b/AMESCoreStudio.Web/Views/PCS/PCS003.cshtml @@ -719,9 +719,9 @@
- +
- +
@@ -755,13 +755,13 @@
-
+
-
+
-
+
@@ -778,13 +778,13 @@
-
+
-
+
-
+
@@ -793,13 +793,13 @@
-
+
-
+
-
+
@@ -808,13 +808,13 @@
-
+
-
+
-
+
@@ -823,13 +823,13 @@
-
+
-
+
-
+
@@ -838,13 +838,13 @@
-
+
-
+
-
+
@@ -875,25 +875,23 @@
-
- +
+
-
- -
- -
+ +
+
- +
diff --git a/AMESCoreStudio.Web/Views/PCS/PCS999.cshtml b/AMESCoreStudio.Web/Views/PCS/PCS999.cshtml deleted file mode 100644 index e95d03f1..00000000 --- a/AMESCoreStudio.Web/Views/PCS/PCS999.cshtml +++ /dev/null @@ -1,73 +0,0 @@ -@model AMESCoreStudio.WebApi.DTO.AMES.MaterialKpDtos -@{ - ViewData["Title"] = "系統資料管理"; - Layout = "~/Views/Shared/_AMESLayout.cshtml"; -} - -
-
-
-
-
- -
- - -
-
- 刷新 - - - -
-
-
-
-
- -@section Scripts{ - @{ await Html.RenderPartialAsync("_ValidationScriptsPartial"); - await Html.RenderPartialAsync("_FileinputScriptsPartial"); } - -} diff --git a/AMESCoreStudio.Web/wwwroot/js/layAutoComplete.js b/AMESCoreStudio.Web/wwwroot/js/layAutoComplete.js index cc9420a0..afd7c56d 100644 --- a/AMESCoreStudio.Web/wwwroot/js/layAutoComplete.js +++ b/AMESCoreStudio.Web/wwwroot/js/layAutoComplete.js @@ -117,7 +117,7 @@ layui.define(['jquery'], function (exports) { $.post(option.url, $.extend({ search: value }, option.query), function (res) { display(res[option.resArray]) }) - }, 500); + }, 300); } } else { $panel.empty() @@ -127,7 +127,7 @@ layui.define(['jquery'], function (exports) { $el.blur(function () { setTimeout(function () { - $panel.hide(500) + $panel.hide(300) }, 100) }) } diff --git a/AMESCoreStudio.WebApi/Enums/EnumPCS.cs b/AMESCoreStudio.WebApi/Enums/EnumPCS.cs index fe96db47..295e03d5 100644 --- a/AMESCoreStudio.WebApi/Enums/EnumPCS.cs +++ b/AMESCoreStudio.WebApi/Enums/EnumPCS.cs @@ -144,6 +144,12 @@ namespace AMESCoreStudio.WebApi.Enum [Display(Name = "H/W AT")] C = 3, + /// + /// Other + /// + [Display(Name = "Other")] + D = 4, + } /// @@ -176,6 +182,25 @@ namespace AMESCoreStudio.WebApi.Enum D = 4, } + /// + /// 工單資訊 系統工程資訊 DMI燒入 Type + /// + public enum EnumWipSystemDMIBIType + { + /// + /// YES + /// + [Display(Name = "YES")] + Y = 1, + + /// + /// N/A + /// + [Display(Name = "N/A")] + N = 2, + + } + /// /// SOP Type /// @@ -358,6 +383,8 @@ namespace AMESCoreStudio.WebApi.Enum [Display(Name = "其他")] D = 4, } + + /// /// Get Enum Display diff --git a/AMESCoreStudio.WebApi/Models/AMES/WipSystem.cs b/AMESCoreStudio.WebApi/Models/AMES/WipSystem.cs index 0ddc12f9..8c42b657 100644 --- a/AMESCoreStudio.WebApi/Models/AMES/WipSystem.cs +++ b/AMESCoreStudio.WebApi/Models/AMES/WipSystem.cs @@ -239,7 +239,7 @@ namespace AMESCoreStudio.WebApi.Models.AMES [Column("OS_VER")] [StringLength(20)] [DataMember] - [Display(Name = "OS版本")] + [Display(Name = "出貨OS")] public string OsVer { get; set; } /// @@ -255,7 +255,7 @@ namespace AMESCoreStudio.WebApi.Models.AMES /// JUMPER設定 /// [Column("JUMPER")] - [StringLength(20)] + [StringLength(200)] [DataMember] [Display(Name = "JUMPER設定")] public string Jumper { get; set; } diff --git a/AMES程式測試回報(2022-02-12).docx b/AMES程式測試回報(2022-02-12).docx deleted file mode 100644 index fca2db5e..00000000 --- a/AMES程式測試回報(2022-02-12).docx +++ /dev/null @@ -1,29 +0,0 @@ - AMES專案系統測試報告 - -測試日期:2022-2-14 -測試版本:AMES 1.0.0 -測試人員:B.B. Wang - -測試記錄: - 過站時,Table要寫入以下幾個 - - 生產序號在測試戰被判Fail,但是下一站卻可以刷Pass過站 - - - 包裝過站,包裝過站的資料,沒有寫入barcode_station - 入庫單作業,選擇那些生產序號時,選中的資料移轉時會出錯 - - - - 包裝裝箱時,出貨序號有綁起訖值? - - 入庫作業時,入庫過的,做過FQC的生產序號,也會跟著跑出來 -WO0002A10001、WO0002A10003已於上一次產生過一張入庫單 - - 一張入庫單,有二箱在該入庫單內,但資料只會顯示一筆箱號,資料庫內茶數量是2箱(MASTER),但DETAIL內只有一箱紀錄 - - - TTT - -------------------------------------------------紀錄截止線------------------------------------------------ - diff --git a/TxBarcodeInfo001.vsd b/TxBarcodeInfo001.vsd deleted file mode 100644 index 37339d68..00000000 Binary files a/TxBarcodeInfo001.vsd and /dev/null differ diff --git a/安勤問題待處理/AMES待解決之問題_All總表.xlsx b/安勤問題待處理/AMES待解決之問題_All總表.xlsx deleted file mode 100644 index 76f98ec9..00000000 Binary files a/安勤問題待處理/AMES待解決之問題_All總表.xlsx and /dev/null differ