diff --git a/AMESCoreStudio.Web/Controllers/FQCController.cs b/AMESCoreStudio.Web/Controllers/FQCController.cs index 60cf6a4a..47f21d13 100644 --- a/AMESCoreStudio.Web/Controllers/FQCController.cs +++ b/AMESCoreStudio.Web/Controllers/FQCController.cs @@ -1344,46 +1344,46 @@ namespace AMESCoreStudio.Web.Controllers #endregion #region FQC010 報表 - public async Task FQC010() + public async Task FQC010_PDF(string inhouseNo, int seqID) { string mimeType = ""; int extension = 1; - var path = $"{this._env.WebRootPath}\\Reports\\View.rdlc"; + var path = $"{this._env.WebRootPath}\\Reports\\FQC010View.rdlc"; LocalReport localReport = new LocalReport(path); Dictionary param = new Dictionary(); System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance); System.Text.Encoding.GetEncoding(1252); var FQC010Master = new FQC010VIiew(); IResultModel resultFqcQuery; - resultFqcQuery = _fqcApi.GetFqcQuery("QWO0002A1001").InvokeAsync().Result; + resultFqcQuery = _fqcApi.GetFqcQuery(inhouseNo, seqID).InvokeAsync().Result; if (resultFqcQuery.Data.Count() != 0) { var FqcQuery = resultFqcQuery.Data.FirstOrDefault(); FQC010Master = new FQC010VIiew() { - DefectDescription = "N/A", - InspectionDate = "2022/06/30", + DefectDescription = FqcQuery.QaMeno, + InspectionDate = FqcQuery.EndTime, AC = FqcQuery.AcQty.ToString(), Approved = "王曉明", AQL = "2.5", - SpeciallyAdoption = "特採Specially Adoption", - BIOSVer = "2.04A CS:7672H", + SpeciallyAdoption = FqcQuery.SpecialPo, + BIOSVer = FqcQuery.BIOS, ECN = "22N0202", ECNMemo = "工單生產已是最新ECN", - Factory = "YS00", - FactoryRemark = "N/A", - InspectionInstrumentNumber = "N/A", + Factory = FqcQuery.Werk.Split('-')[0], + FactoryRemark = FqcQuery.Werk.Split('-')[1], + InspectionInstrumentNumber = FqcQuery.OutfitNo, InspectionItems = "OS:[Win10 IoT]CPU test:[1.10G] RAM test:[4096]", InspectionNumber = FqcQuery.InhouseNo, InspectionStatus = "廠驗", InspectionType = FqcQuery.InspectionTypeName, Inspector = "蔡喬虎", Judgment = "Defect Quantity", - Line = "安勤產線", - LotSize = "1", + Line = FqcQuery.InhouseMemo, + LotSize = FqcQuery.InhouseQty.ToString(), Major = FqcQuery.MajorQty.ToString(), - MedicalModel = "N", + MedicalModel = FqcQuery.CustomerMedical, Minor = FqcQuery.MinorQty.ToString(), Model = FqcQuery.ItemNo, ModelName = FqcQuery.ModelNo, @@ -1399,7 +1399,7 @@ namespace AMESCoreStudio.Web.Controllers StorageLocation = "9000", Avalue = "AVALUE", VIP = FqcQuery.CustomerVIP, - WaiveRequisition = "XX" + WaiveRequisition = FqcQuery.StatusName }; // 抓全部檢驗工項 @@ -1461,6 +1461,131 @@ namespace AMESCoreStudio.Web.Controllers var result = localReport.Execute(RenderType.Pdf, extension, param, mimeType); return File(result.MainStream, "application/pdf"); + + //var result = localReport.Execute(RenderType.Excel, extension, param, mimeType); + //return File(result.MainStream, "application/msexcel", "Export.xls"); + } + + public async Task FQC010_Excel(string inhouseNo, int seqID) + { + string mimeType = ""; + int extension = 1; + var path = $"{this._env.WebRootPath}\\Reports\\FQC010View.rdlc"; + LocalReport localReport = new LocalReport(path); + Dictionary param = new Dictionary(); + System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance); + System.Text.Encoding.GetEncoding(1252); + var FQC010Master = new FQC010VIiew(); + IResultModel resultFqcQuery; + resultFqcQuery = _fqcApi.GetFqcQuery(inhouseNo, seqID).InvokeAsync().Result; + + if (resultFqcQuery.Data.Count() != 0) + { + var FqcQuery = resultFqcQuery.Data.FirstOrDefault(); + FQC010Master = new FQC010VIiew() + { + DefectDescription = FqcQuery.QaMeno, + InspectionDate = FqcQuery.EndTime, + AC = FqcQuery.AcQty.ToString(), + Approved = "王曉明", + AQL = "2.5", + SpeciallyAdoption = FqcQuery.SpecialPo, + BIOSVer = FqcQuery.BIOS, + ECN = "22N0202", + ECNMemo = "工單生產已是最新ECN", + Factory = FqcQuery.Werk.Split('-')[0], + FactoryRemark = FqcQuery.Werk.Split('-')[1], + InspectionInstrumentNumber = FqcQuery.OutfitNo, + InspectionItems = "OS:[Win10 IoT]CPU test:[1.10G] RAM test:[4096]", + InspectionNumber = FqcQuery.InhouseNo, + InspectionStatus = "廠驗", + InspectionType = FqcQuery.InspectionTypeName, + Inspector = "蔡喬虎", + Judgment = "Defect Quantity", + Line = FqcQuery.InhouseMemo, + LotSize = FqcQuery.InhouseQty.ToString(), + Major = FqcQuery.MajorQty.ToString(), + MedicalModel = FqcQuery.CustomerMedical, + Minor = FqcQuery.MinorQty.ToString(), + Model = FqcQuery.ItemNo, + ModelName = FqcQuery.ModelNo, + NOTE = @"ACC-M2 + E1589 + ESW-075R + ACC-BAT", + OrderNumber = FqcQuery.WipNo, + Product99 = "一般二級水準正常檢驗", + ReMajor = FqcQuery.ReQty.ToString(), + Sample = FqcQuery.QcQty.ToString(), + SamplingInspectionPlan = "ANSI/ASQZ 1.4II", + StorageLocation = "9000", + Avalue = "AVALUE", + VIP = FqcQuery.CustomerVIP, + WaiveRequisition = FqcQuery.StatusName + }; + + // 抓全部檢驗工項 + var result_QcItem = await _fqcApi.GetQcItemQuery(0, 0, 0); + // 取綁定工單檢驗工項資料 + var result_WipFQC = await _fqcApi.GetWipFqcItemByWipNo(FqcQuery.WipNo); + if (result_WipFQC.Count == 0) + { + //工單無設定檢驗工項時 在抓料號綁定檢驗工項 + var result_MaterialFQC = await _fqcApi.GetMaterialFqcItemsByitemNo(FqcQuery.ItemNo); + if (result_MaterialFQC.Count != 0) + { + // 檢驗工項 + foreach (var item in result_QcItem.Data.Where(w => result_MaterialFQC.Select(s => s.QcItemID).Contains(w.ItemID)).ToList()) + { + FQC010Master.Detail1.Add(new FQC010Detail1 + { + ItemID = item.ItemID.ToString(), + ItemName = item.ItemNameCN, + ItemType = item.ItemTypeName + }); + } + } + } + else + { + // 檢驗工項 + foreach (var item in result_QcItem.Data.Where(w => result_WipFQC.Select(s => s.QcItemID).Contains(w.ItemID)).ToList()) + { + FQC010Master.Detail1.Add(new FQC010Detail1 + { + ItemID = item.ItemID.ToString(), + ItemName = item.ItemNameCN, + ItemType = item.ItemTypeName + }); + } + } + + // 條碼細項 + var fqcDetail = await _fqcApi.FQC007InhouseDetails(FqcQuery.InhouseNo, Convert.ToInt32(FqcQuery.SeqID)); + foreach (var item in fqcDetail.Data) + { + FQC010Master.Detail2.Add(new FQC010Detail2 + { + ProductionSerialNumber = item.BarcodeNo, + ShippingSerialNumber = item.ExtraBarcodeNo, + IsSample = item.IsSample, + InspectionResults = item.StatusNo + }); + } + } + + var FQC010Masters = new List(); + FQC010Masters.Add(FQC010Master); + + localReport.AddDataSource("DataSet1", FQC010Masters); + localReport.AddDataSource("DataSet2", FQC010Master.Detail1); + localReport.AddDataSource("DataSet3", FQC010Master.Detail2); + + //var result = localReport.Execute(RenderType.Pdf, extension, param, mimeType); + //return File(result.MainStream, "application/pdf"); + + var result = localReport.Execute(RenderType.Excel, extension, param, mimeType); + return File(result.MainStream, "application/msexcel", "Export.xls"); } #endregion diff --git a/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml b/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml index aa5435bc..34438fc9 100644 --- a/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml +++ b/AMESCoreStudio.Web/Views/FQC/FQC008.cshtml @@ -5,8 +5,8 @@ - - 2.58586cm - 20.35627cm - 2.93245cm - 0cm - 9 - - - - - - 2.58586cm - 24.99626cm - 2.93245cm - 0cm - 10 - - - - true true @@ -158,7 +134,7 @@ 0.03528cm 0.6cm 4.81465cm - 11 + 9 @@ -192,7 +168,7 @@ 0.03528cm 0.58649cm 4.81465cm - 12 + 10 @@ -226,7 +202,7 @@ 0.03528cm 0.58649cm 4.81465cm - 13 + 11 @@ -260,7 +236,7 @@ 0.03528cm 0.58649cm 4.81465cm - 14 + 12 @@ -294,7 +270,7 @@ 0.03528cm 0.58649cm 4.81465cm - 15 + 13 @@ -328,7 +304,7 @@ 0.03528cm 0.58649cm 4.81465cm - 16 + 14 @@ -362,7 +338,7 @@ 0.03528cm 0.58649cm 4.81465cm - 17 + 15 @@ -396,7 +372,7 @@ 9.12975cm 0.58649cm 2.20247cm - 18 + 16 @@ -430,7 +406,7 @@ 9.12975cm 0.58649cm 2.20247cm - 19 + 17 @@ -464,7 +440,7 @@ 9.12975cm 0.58649cm 2.20247cm - 20 + 18 @@ -498,7 +474,7 @@ 9.12975cm 0.58649cm 2.20247cm - 21 + 19 @@ -532,7 +508,7 @@ 9.12975cm 0.58649cm 2.20247cm - 22 + 20 @@ -566,7 +542,7 @@ 14.14708cm 0.58649cm 3.13707cm - 23 + 21 @@ -597,10 +573,10 @@ Textbox1 4.34533cm - 14.16326cm + 14.14708cm 0.58649cm - 3.13707cm - 24 + 2.32739cm + 22 @@ -631,10 +607,10 @@ Textbox1 4.94533cm - 14.16326cm + 14.14708cm 0.5377cm - 3.13707cm - 25 + 2.32739cm + 23 @@ -668,7 +644,7 @@ 20.34569cm 0.58649cm 4.65057cm - 26 + 24 @@ -702,10 +678,10 @@ 20.34569cm 0.58649cm 4.65057cm - 27 + 25 + 2pt 2pt @@ -733,10 +709,10 @@ Textbox1 4.34533cm - 20.34569cm + 18.96702cm 0.58649cm - 4.65057cm - 28 + 2.57289cm + 26 @@ -768,7 +744,7 @@ 4.84993cm 0.58649cm 4.27982cm - 29 + 27 @@ -1136,14 +1112,14 @@ 2pt - + true true - =First(Fields!FactoryRemark.Value, "DataSet1") + =First(Fields!Line.Value, "DataSet1") @@ -1152,7 +1128,6 @@ @@ -1315,9 +1290,9 @@ Textbox38 + LightGreen 2pt 2pt 2pt @@ -1347,9 +1322,9 @@ Textbox40 + LightGreen 2pt 2pt 2pt @@ -1379,9 +1354,9 @@ Textbox42 + LightGreen 2pt 2pt 2pt @@ -1416,7 +1391,6 @@ ItemID 2pt @@ -1448,7 +1422,6 @@ ItemName 2pt @@ -1480,7 +1453,6 @@ ItemType 2pt @@ -1513,11 +1485,11 @@ DataSet2 - 11.2834cm - 0.33438cm + 10.54257cm + 0.36085cm 1.2cm 7.5cm - 31 + 29 @@ -1565,9 +1537,29 @@ Textbox47 + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + LightGreen 2pt 2pt 2pt @@ -1597,9 +1589,29 @@ Textbox49 + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + LightGreen 2pt 2pt 2pt @@ -1629,9 +1641,29 @@ Textbox51 + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + LightGreen 2pt 2pt 2pt @@ -1661,9 +1693,29 @@ Textbox53 + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + LightGreen 2pt 2pt 2pt @@ -1698,9 +1750,28 @@ ShippingSerialNumber + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + 2pt 2pt 2pt @@ -1730,9 +1801,28 @@ ProductionSerialNumber + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + 2pt 2pt 2pt @@ -1762,9 +1852,28 @@ IsSample + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + 2pt 2pt 2pt @@ -1794,9 +1903,28 @@ InspectionResults + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + 2pt 2pt 2pt @@ -1828,11 +1956,11 @@ DataSet3 - 12.92151cm + 12.15422cm 0.33438cm 1.2cm 14.72719cm - 32 + 30 @@ -1840,11 +1968,11 @@ - 15.40915cm + 13.79519cm 0.03451cm 0cm - 28.9426cm - 33 + 28.94183cm + 31 @@ -1905,10 +2033,9 @@ Approved - 0.05942cm - 2.79949cm - 0.69203cm - 2.84202cm + 2.69366cm + 0.75145cm + 3.08896cm 3 @@ -2043,19 +2167,7 @@ 16.96665cm 0cm 0cm - 35 - - - - - - 6.22107cm - 0.03451cm - 0cm - 28.97634cm - 36 + 33 @@ -2081,20 +2193,15 @@ Textbox1 - 5.51831cm - 0.03528cm - 0.70276cm - 4.81465cm - 37 + 4.34533cm + 24.04223cm + 0.58649cm + 2.46705cm + 34 - - - Black - 1pt - + 2pt 2pt 2pt @@ -2106,7 +2213,7 @@ 20.35627cm 0.57232cm 0cm - 38 + 35 @@ -2118,7 +2225,7 @@ 24.99626cm 0.58649cm 0cm - 39 + 36 @@ -2142,11 +2249,11 @@ Textbox1 - 1.34938cm + 1.39177cm 20.35627cm - 0.58649cm + 0.5441cm 4.63999cm - 40 + 37 @@ -2180,10 +2287,10 @@ 20.34569cm 0.58649cm 4.65057cm - 41 + 38 + 2pt 2pt @@ -2229,7 +2336,7 @@ 9.05441cm 1.24355cm 9.71299cm - 42 + 39 @@ -2264,7 +2371,7 @@ 21.37842cm 0.61419cm 2.4633cm - 43 + 40 @@ -2299,7 +2406,7 @@ 26.09873cm 0.61419cm 1.81031cm - 44 + 41 @@ -2328,13 +2435,13 @@ AC 4.34533cm - 24.99626cm + 21.5399cm 0.58649cm - 3.98008cm - 45 + 2.50233cm + 42 + 2pt 2pt @@ -2363,7 +2470,7 @@ 24.99626cm 0.58649cm 3.98008cm - 46 + 43 @@ -2395,7 +2502,7 @@ 24.99626cm 0.58649cm 3.98008cm - 47 + 44 @@ -2427,11 +2534,16 @@ 24.99626cm 0.58649cm 3.98008cm - 48 + 45 + + Black + + 1pt + 2pt 2pt 2pt @@ -2455,11 +2567,11 @@ InspectionDate - 1.36409cm + 1.39177cm 24.99626cm - 0.56472cm + 0.53704cm 3.98008cm - 49 + 46 @@ -2488,10 +2600,10 @@ InspectionNumber 1.36409cm - 4.86793cm + 4.84993cm 0.6cm - 4.26182cm - 50 + 4.27982cm + 47 @@ -2533,7 +2645,7 @@ 4.84993cm 0.6cm 4.27982cm - 51 + 48 @@ -2573,7 +2685,7 @@ 9.14775cm 0.6cm 19.84659cm - 52 + 49 @@ -2605,7 +2717,7 @@ 4.84993cm 0.55121cm 4.27982cm - 53 + 50 @@ -2647,7 +2759,7 @@ 4.84993cm 0.6cm 4.27982cm - 54 + 51 @@ -2689,7 +2801,7 @@ 4.84993cm 0.57298cm 4.27982cm - 55 + 52 @@ -2731,7 +2843,7 @@ 4.84993cm 0.55121cm 4.27982cm - 56 + 53 @@ -2769,20 +2881,15 @@ ReMajor - 5.51831cm - 4.84993cm - 0.66412cm - 4.27982cm - 57 + 4.34533cm + 26.50929cm + 0.58649cm + 2.46705cm + 54 - - Black - - 1pt - 2pt 2pt 2pt @@ -2810,7 +2917,7 @@ 11.33222cm 0.58649cm 2.81486cm - 58 + 55 @@ -2851,8 +2958,8 @@ 3.17235cm 11.33222cm 0.58649cm - 9.02405cm - 59 + 9.01347cm + 56 @@ -2893,8 +3000,8 @@ 3.77235cm 11.33222cm 0.57298cm - 2.83104cm - 60 + 2.81486cm + 57 @@ -2935,8 +3042,8 @@ 4.34533cm 11.33222cm 0.58649cm - 2.83104cm - 61 + 2.81486cm + 58 @@ -2977,8 +3084,8 @@ 4.93182cm 11.33222cm 0.6cm - 2.83104cm - 62 + 2.81486cm + 59 @@ -3020,7 +3127,7 @@ 17.28415cm 0.60826cm 3.06154cm - 63 + 60 @@ -3046,15 +3153,21 @@ FactoryRemark - 3.75884cm - 14.16326cm - 0.6cm - 6.18243cm - 64 + 3.77235cm + 14.14708cm + 0.57298cm + 6.19861cm + 61 + + + + + + + 2pt 2pt 2pt @@ -3079,10 +3192,10 @@ Sample 4.34533cm - 17.28415cm + 16.47447cm 0.58649cm - 3.06154cm - 65 + 2.49255cm + 62 @@ -3121,10 +3234,10 @@ Minor 4.93182cm - 17.28415cm + 16.47447cm 0.58649cm - 3.06154cm - 66 + 2.49255cm + 63 @@ -3145,28 +3258,29 @@ 2pt - + true true - =First(Fields!SpeciallyAdoption.Value, "DataSet1") + =First(Fields!WaiveRequisition.Value, "DataSet1") - - SpeciallyAdoption 4.93182cm - 20.35627cm - 0.55121cm - 4.65057cm - 67 + 18.96702cm + 0.58649cm + 2.57289cm + 64 @@ -3187,26 +3301,25 @@ 2pt - + true true - =First(Fields!WaiveRequisition.Value, "DataSet1") + =First(Fields!SpeciallyAdoption.Value, "DataSet1") @@ -3238,7 +3351,7 @@ 9.14775cm 0.6cm 11.19794cm - 69 + 66 @@ -3249,6 +3362,60 @@ 2pt + + true + true + + + + + 特採單號: + + + + + + + Textbox1 + 4.94533cm + 21.5399cm + 0.58649cm + 2.50233cm + 67 + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + Embedded + avalue + FitProportional + 0.10583cm + 1.82443cm + 1.14483cm + 5.40124cm + 68 + + + + true 0.34078cm @@ -3497,6 +3664,19 @@ + + + image/png + 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 + + Cm 3d6db279-309d-4d29-9940-23cf8e69bde0 \ No newline at end of file diff --git a/AMESCoreStudio.WebApi/Controllers/AMES/BarcodeItemsController.cs b/AMESCoreStudio.WebApi/Controllers/AMES/BarcodeItemsController.cs index a3393729..f4047425 100644 --- a/AMESCoreStudio.WebApi/Controllers/AMES/BarcodeItemsController.cs +++ b/AMESCoreStudio.WebApi/Controllers/AMES/BarcodeItemsController.cs @@ -507,7 +507,9 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES try { + _context.Entry(barcodeItem.B).State = EntityState.Detached; _context.BarcodeItems.Add(barcodeItem); + await _context.SaveChangesAsync(); result.Success = true; result.Msg = "OK"; diff --git a/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs b/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs index ad0c49b5..a3e87acc 100644 --- a/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs +++ b/AMESCoreStudio.WebApi/Controllers/AMES/FqcInhouseMasterController.cs @@ -215,10 +215,11 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES ItemNo = q1.ItemNo, ModelNo = q1.ModelNo, InhouseQty = q1.InhouseQty, + SpecialPo = q2.SpecialPo, QcQty = q3.QcQty, AcQty = q3.AcQty, ReQty = q3.ReQty, - StatusName = q1.Status, + StatusName = q1.Status == "P" ? "允收Pass" : q1.Status == "R" ? "批退Reject" : "", FqcID = q2.WipNo == null ? 0 : q2.FqcID, InhouseMemo = q2.InhouseMemo, ManualQaMeno = q2.ManualQaMeno, diff --git a/AMESCoreStudio.WebApi/DTO/AMES/FQC010VIiew.cs b/AMESCoreStudio.WebApi/DTO/AMES/FQC010VIiew.cs index f8d748a3..8931f822 100644 --- a/AMESCoreStudio.WebApi/DTO/AMES/FQC010VIiew.cs +++ b/AMESCoreStudio.WebApi/DTO/AMES/FQC010VIiew.cs @@ -46,12 +46,12 @@ namespace AMESCoreStudio.WebApi.DTO.AMES public string OrderNumber { get; set; } /// - /// + /// 批量 /// public string LotSize { get; set; } /// - /// + /// 醫療機種 /// public string MedicalModel { get; set; } @@ -61,9 +61,8 @@ namespace AMESCoreStudio.WebApi.DTO.AMES public string VIP { get; set; } /// - /// + /// 抽樣 /// - public string InspectionType { get; set; } /// @@ -85,12 +84,12 @@ namespace AMESCoreStudio.WebApi.DTO.AMES public string Factory { get; set; } /// - /// 產線 + /// 產線備註 /// public string Line { get; set; } /// - /// + /// 入庫庫別 /// public string StorageLocation { get; set; } @@ -106,39 +105,78 @@ namespace AMESCoreStudio.WebApi.DTO.AMES public string AQL { get; set; } + /// + /// 抽驗數 + /// public string Sample { get; set; } + /// + /// 允收數 + /// public string AC { get; set; } + /// + /// 不良數 + /// public string ReMajor { get; set; } + /// + /// 檢驗結果Judgment Quantity + /// public string Judgment { get; set; } + /// + /// Major + /// public string Major { get; set; } + /// + /// Minor + /// public string Minor { get; set; } /// /// 特採單 /// - public string SpeciallyAdoption { get; set; } + public string SpeciallyAdoption { get; set; } = "N/A"; + /// + /// 判斷結果 + /// public string WaiveRequisition { get; set; } + /// + /// 缺點描述 + /// public string DefectDescription { get; set; } - public string NOTE { get; set; } + public string NOTE { get; set; } = "N/A"; - public string FactoryRemark { get; set; } + /// + /// 委外廠 Name + /// + public string FactoryRemark { get; set; } = "N/A"; - public string ECNMemo { get; set; } + public string ECNMemo { get; set; } = "N/A"; + /// + /// 檢驗儀器編號 + /// public string InspectionInstrumentNumber { get; set; } - public string InspectionItems { get; set; } + /// + /// 檢驗項目 OS CPU RAM + /// + public string InspectionItems { get; set; } = "N/A"; + /// + /// 抽驗人員 + /// public string Approved { get; set; } + /// + /// 主管 + /// public string Inspector { get; set; } public List Detail1 { get; set; } diff --git a/AMESCoreStudio.WebApi/DTO/AMES/FqcDto.cs b/AMESCoreStudio.WebApi/DTO/AMES/FqcDto.cs index 7f1924f0..fb08a97e 100644 --- a/AMESCoreStudio.WebApi/DTO/AMES/FqcDto.cs +++ b/AMESCoreStudio.WebApi/DTO/AMES/FqcDto.cs @@ -137,6 +137,11 @@ namespace AMESCoreStudio.WebApi.DTO.AMES [Display(Name = "拒收數量")] public int ReQty { get; set; } = 0; + /// + /// 特採單 + /// + public string SpecialPo { get; set; } + /// /// 判定備註 ///