From a4decd9f079e849f0a21602663eca6e6712ad7f0 Mon Sep 17 00:00:00 2001 From: Marvin Date: Wed, 13 Dec 2023 22:26:48 +0800 Subject: [PATCH 1/8] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9MailGroup=EF=BC=8C?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A0=B9=E6=93=9A=E7=BE=A4=E7=B5=84=E4=BB=A3?= =?UTF-8?q?=E7=A2=BC=E8=AE=80=E5=8F=96=E9=83=B5=E4=BB=B6=E6=B8=85=E5=96=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/BAS/MailGroupsController.cs | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/AMESCoreStudio.WebApi/Controllers/BAS/MailGroupsController.cs b/AMESCoreStudio.WebApi/Controllers/BAS/MailGroupsController.cs index 655d46e6..c7826de1 100644 --- a/AMESCoreStudio.WebApi/Controllers/BAS/MailGroupsController.cs +++ b/AMESCoreStudio.WebApi/Controllers/BAS/MailGroupsController.cs @@ -67,6 +67,47 @@ namespace AMESCoreStudio.WebApi.Controllers.BAS return mailGroup; } + /// + /// 用群组编号获取该Mail群組资料 + /// + /// + /// + // GET: api/MailGroups/5 + [Route("[action]")] + [HttpGet] + public async Task> GetMailList(string id) + { + ResultModel result = new ResultModel(); + var q = from a in _context.MailGroups + join b in _context.MailGroupDetails on a.GroupID equals b.GroupID + join c in _context.UserInfoes on b.UserID equals c.UserID + select new + { + a.GroupNo, + a.GroupID, + b.UserID, + c.UserEMail + }; + + q = q.Where(w => w.GroupNo.Equals(id)); + + //紀錄筆數 + result.DataTotal = q.Count(); + + result.Data = await q.ToListAsync(); + + if (result == null) + { + result.Msg = "查無資料"; + result.Success = false; + return result; + } + + result.Success = true; + result.Msg = "OK"; + return result; + } + /// /// 更新Mail群組资料 /// From c67b98914851258a02286722a46270da488f6318 Mon Sep 17 00:00:00 2001 From: "BB.Wang" Date: Thu, 14 Dec 2023 22:37:51 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E5=93=81=E8=B3=AA=E7=9C=8B=E6=9D=BF?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E6=9D=90=E6=96=99=E6=95=B8=E6=93=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/BLL/RPTController.cs | 70 ++++++++++++++----- 1 file changed, 53 insertions(+), 17 deletions(-) diff --git a/AMESCoreStudio.WebApi/Controllers/BLL/RPTController.cs b/AMESCoreStudio.WebApi/Controllers/BLL/RPTController.cs index e20c992a..e1ab93bc 100644 --- a/AMESCoreStudio.WebApi/Controllers/BLL/RPTController.cs +++ b/AMESCoreStudio.WebApi/Controllers/BLL/RPTController.cs @@ -1,24 +1,17 @@ -using AMESCoreStudio.CommonTools.Result; -using AMESCoreStudio.WebApi.Models.BAS; +using AMESCoreStudio.WebApi.Controllers.AMES; +using AMESCoreStudio.WebApi.DTO.AMES; using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; -using System.Threading.Tasks; -using System; -using System.Net.Mail; using Microsoft.Extensions.Configuration; -using System.Net; -using System.Linq; -using System.Text.RegularExpressions; -using System.IO; -using AMESCoreStudio.WebApi.Controllers.AMES; -using AMESCoreStudio.WebApi.DTO.AMES; -using System.Data; -using Newtonsoft.Json; using Newtonsoft.Json.Linq; -using AMESCoreStudio.WebApi.Controllers.SYS; -using System.Data.Common; +using System; using System.Collections.Generic; -using System.Reflection; +using System.Data; +using System.Data.Common; +using System.Linq; +using System.Threading.Tasks; +using Dapper; +using AMESCoreStudio.WebApi.Extensions; namespace AMESCoreStudio.WebApi.Controllers.BLL { @@ -576,6 +569,48 @@ namespace AMESCoreStudio.WebApi.Controllers.BLL } + private async Task Get_Material_NG_Rate(string sDate, string eDate) + { + try + { + #region NG Material Rate SQL + string sMS_SQL = @" SELECT A.REPAIR_QTY, B.T2_QTY, 100 - ROUND(A.REPAIR_QTY / B.T2_QTY * 100, 2) AS M_RATE"; + sMS_SQL = sMS_SQL + " FROM ("; + sMS_SQL = sMS_SQL + " SELECT COUNT(DISTINCT BARCODE_ID ) REPAIR_QTY"; + sMS_SQL = sMS_SQL + " FROM JHAMES.NG_INFO"; + sMS_SQL = sMS_SQL + " WHERE 1 = 1"; + sMS_SQL = sMS_SQL + " AND CREATE_DATE BETWEEN TO_DATE('" + sDate + "','YYYY/MM/DD') AND TO_DATE('" + eDate + "','YYYY/MM/DD')"; + sMS_SQL = sMS_SQL + " AND STATUS = 1"; + sMS_SQL = sMS_SQL + " AND STATION_ID = 1105"; + sMS_SQL = sMS_SQL + " ) A,"; + sMS_SQL = sMS_SQL + " ("; + sMS_SQL = sMS_SQL + " SELECT COUNT(DISTINCT BARCODE_ID) T2_QTY"; + sMS_SQL = sMS_SQL + " FROM("; + sMS_SQL = sMS_SQL + " SELECT BARCODE_ID, WIP_ID, COUNT(BARCODE_ID)"; + sMS_SQL = sMS_SQL + " FROM JHAMES.BARCODE_STATION"; + sMS_SQL = sMS_SQL + " WHERE 1 = 1"; + sMS_SQL = sMS_SQL + " AND STATION_ID = 1105"; + sMS_SQL = sMS_SQL + " AND CREATE_DATE BETWEEN TO_DATE('" + sDate + "','YYYY/MM/DD') AND TO_DATE('" + eDate + "','YYYY/MM/DD')"; + sMS_SQL = sMS_SQL + " GROUP BY BARCODE_ID, WIP_ID"; + sMS_SQL = sMS_SQL + " ORDER BY BARCODE_ID DESC"; + sMS_SQL = sMS_SQL + " )"; + sMS_SQL = sMS_SQL + " ) B"; + #endregion + + DynamicParameters p = new DynamicParameters(); + + var q1 = await _context.Database.DapperQueryAsync(sMS_SQL, p); + var aa = q1.FirstOrDefault().M_RATE; + return double.Parse(aa.ToString()); + } + catch (Exception ex) + { + string stEMP = ex.Message; + return 0.0; + } + + } + /// /// IOQ進料檢驗 /// @@ -1089,7 +1124,8 @@ namespace AMESCoreStudio.WebApi.Controllers.BLL #endregion // 線上材料品質 - result.LQC = 0.00; + //result.LQC = 0.00; + result.LQC = await Get_Material_NG_Rate(sDate, eDate); // QRC件數 新增筆數 //result.QRCNew = 4; From 388f482d3e8369949361c59b36421b21a5bd9a73 Mon Sep 17 00:00:00 2001 From: Yiru Date: Fri, 15 Dec 2023 08:25:42 +0800 Subject: [PATCH 3/8] =?UTF-8?q?1=E3=80=81=E5=A2=9E=E5=8A=A0=E9=A6=96?= =?UTF-8?q?=E4=BB=B6=E6=AA=A2=E7=9B=B8=E9=97=9C=E5=8A=9F=E8=83=BD(PDF?= =?UTF-8?q?=E3=80=81=E6=8E=92=E5=BA=8F=E3=80=81=E8=A1=A8=E5=96=AE=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=85=A8=E9=83=A8=E9=81=B8=E9=A0=85)=202=E3=80=81?= =?UTF-8?q?=E5=87=BA=E8=B2=A8=E5=BA=8F=E8=99=9F=E5=8F=96=E8=99=9F=E8=A6=8F?= =?UTF-8?q?=E5=89=87=E5=A2=9E=E5=8A=A0[M]=20=E4=BB=A3=E8=A1=A81~12?= =?UTF-8?q?=E6=9C=88(A~L)=203=E3=80=81FqcInhouseDetail=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A02=E5=80=8B=E6=AC=84=E4=BD=8DBarcode=5FNo=20=E8=88=87Ex?= =?UTF-8?q?tra=5FBarcode=5FNO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/SPCController.cs | 135 +- AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs | 6 + AMESCoreStudio.Web/Views/BAS/BAS019C.cshtml | 2 + AMESCoreStudio.Web/Views/BAS/BAS019U.cshtml | 1 + AMESCoreStudio.Web/Views/SPC/SPC004.cshtml | 9 +- AMESCoreStudio.Web/Views/SPC/SPC005.cshtml | 23 +- AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml | 4 + AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml | 4 + AMESCoreStudio.Web/Views/SPC/SPC005V.cshtml | 4 + .../wwwroot/Reports/SPC005ViewFAI.rdlc | 1530 +++++++++++++++++ .../images/ElectronicSignature/冯琪雅.jpg | Bin 0 -> 27537 bytes .../images/ElectronicSignature/王智永.jpg | Bin 0 -> 32986 bytes .../images/ElectronicSignature/王素華.jpg | Bin 0 -> 37717 bytes .../images/ElectronicSignature/鄧鈞澤.jpg | Bin 0 -> 38483 bytes .../images/ElectronicSignature/鍾美惠.jpg | Bin 0 -> 45314 bytes .../images/ElectronicSignature/陳姿君.jpg | Bin 0 -> 43403 bytes .../images/ElectronicSignature/陳昱中.jpg | Bin 0 -> 45981 bytes .../images/ElectronicSignature/陳漢翔.jpg | Bin 0 -> 41796 bytes .../AMES/InspectionResultMastersController.cs | 103 ++ .../Controllers/AMES/SerialRulesController.cs | 34 +- AMESCoreStudio.WebApi/DTO/AMES/IpqcDto.cs | 13 + AMESCoreStudio.WebApi/DTO/AMES/SPC005VIiew.cs | 5 + .../Models/AMES/FqcInhouseDetail.cs | 19 + .../Models/AMES/SerialRule.cs | 6 + .../Models/AMES/SerialRuleDetail.cs | 6 + 25 files changed, 1885 insertions(+), 19 deletions(-) create mode 100644 AMESCoreStudio.Web/wwwroot/Reports/SPC005ViewFAI.rdlc create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/冯琪雅.jpg create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/王智永.jpg create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/王素華.jpg create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/鄧鈞澤.jpg create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/鍾美惠.jpg create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/陳姿君.jpg create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/陳昱中.jpg create mode 100644 AMESCoreStudio.Web/wwwroot/images/ElectronicSignature/陳漢翔.jpg diff --git a/AMESCoreStudio.Web/Controllers/SPCController.cs b/AMESCoreStudio.Web/Controllers/SPCController.cs index 441e4322..58ab701b 100644 --- a/AMESCoreStudio.Web/Controllers/SPCController.cs +++ b/AMESCoreStudio.Web/Controllers/SPCController.cs @@ -997,6 +997,7 @@ namespace AMESCoreStudio.Web.Controllers public async Task SPC005C(int id) { var result = await _spcApi.GetInspectionForm(id); + ViewBag.InspectionTypeID = result[0].InspectionTypeID; var master = await _spcApi.GetInspectionResultMastersNewID(); ViewBag.FormID = result[0].InspectionFormID; ViewBag.MasterID = master; @@ -1038,6 +1039,8 @@ namespace AMESCoreStudio.Web.Controllers { return View(); } + var result1 = await _spcApi.GetInspectionForm(result.Select(s=>s.InspectionFormID).FirstOrDefault()); + ViewBag.InspectionTypeID = result1[0].InspectionTypeID; return View(result[0]); } [HttpGet] @@ -1055,6 +1058,8 @@ namespace AMESCoreStudio.Web.Controllers var user = await _sysApi.GetUserInfo(result[0].CreateUserID); var userName = user[0].UserName; ViewBag.UserName = userName; + var result1 = await _spcApi.GetInspectionForm(result.Select(s => s.InspectionFormID).FirstOrDefault()); + ViewBag.InspectionTypeID = result1[0].InspectionTypeID; return View(result[0]); } @@ -1418,20 +1423,28 @@ namespace AMESCoreStudio.Web.Controllers #endregion #region SPC005 報表 - public async Task SPC005_PDF(int id) + public async Task SPC005_PDF(int id,string Types) { string mimeType = ""; int extension = 1; Dictionary param = new Dictionary(); - var localReport = GetReprot(id); - var result = localReport.Result.Execute(RenderType.Pdf, extension, param, mimeType); - return File(result.MainStream, "application/pdf"); + if (Types == "IPQC") + { + var localReport = GetReprot(id); + var result = localReport.Result.Execute(RenderType.Pdf, extension, param, mimeType); + return File(result.MainStream, "application/pdf"); + } + else + { + var localReport = GetFAIReprot(id); + var result = localReport.Result.Execute(RenderType.Pdf, extension, param, mimeType); + return File(result.MainStream, "application/pdf"); + } } /// - /// 產生FQC報表 + /// 產生IPQC報表 /// - /// FQC單號 - /// FQC單號_編號 + /// IPQC報表 /// private async Task GetReprot(int id) { @@ -1576,6 +1589,114 @@ namespace AMESCoreStudio.Web.Controllers return localReport; } + /// + /// 產生首件報表 + /// + /// 首件單號 + /// + private async Task GetFAIReprot(int id) + { + var path = $"{this._env.WebRootPath}\\Reports\\SPC005ViewFAI.rdlc"; + LocalReport localReport = new LocalReport(path); + + System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance); + System.Text.Encoding.GetEncoding(1252); + var SPC005Master = new SPC005VIiew(); + IResultModel resultIpqcQuery; + resultIpqcQuery = _spcApi.GetFaiQuery(id).InvokeAsync().Result; + + + if (resultIpqcQuery.Data.Count() != 0) + { + var IPQCQuery = resultIpqcQuery.Data.FirstOrDefault(); + + SPC005Master = new SPC005VIiew() + { + InspectionNumber = IPQCQuery.InspectionNo, + OrderNumber = IPQCQuery.WipNo, + InspectionDate = IPQCQuery.InspectionDate.ToString("yyyy-MM-dd"), + ItemNo = IPQCQuery.ItemNo, + PlanQTY = IPQCQuery.PlanQTY.ToString(), + MedicalModel = IPQCQuery.CustomerMedical, + VIP = IPQCQuery.CustomerVIP, + BIOSVer = IPQCQuery.BIOS, + Approved = "黃信志", + Inspector = IPQCQuery.UpdateUser_Name, + ItemNoDesc = IPQCQuery.ItemNoDesc + + }; + + foreach (var item in IPQCQuery.IpqcDetail_ASSY) + { + SPC005Master.Detail1_ASSY.Add(new SPC005Detail1 + { + BarcodeNO = item.BarcodeNO, + Result = item.Result == "P" ? "PASS" : "FAIL", + Defect = item.Defect, + Station = item.Station + }); + } + + foreach (var item in IPQCQuery.qcItemDtos_ASSY) + { + SPC005Master.Detail2_ASSY.Add(new SPC005Detail2 + { + + SEQ = item.Seq.ToString(), + InspectionItemDesc = item.InspectionItemDesc, + InspectionResults = item.InspectionResult + }); + } + + + + #region 圖檔轉BASE64 + string ApprovedSign = null; + string InspectorSign = null; + if (System.IO.File.Exists($"{this._env.WebRootPath}/images/ElectronicSignature/{SPC005Master.Approved}.png")) + { + using (var b = new System.Drawing.Bitmap($"{this._env.WebRootPath}/images/ElectronicSignature/{SPC005Master.Approved}.png")) + { + using (var ms = new MemoryStream()) + { + b.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp); + ApprovedSign = Convert.ToBase64String(ms.ToArray()); + } + } + } + if (System.IO.File.Exists($"{this._env.WebRootPath}/images/ElectronicSignature/{SPC005Master.Inspector}.png")) + { + using (var b = new System.Drawing.Bitmap($"{this._env.WebRootPath}/images/ElectronicSignature/{SPC005Master.Inspector}.png")) + { + using (var ms = new MemoryStream()) + { + b.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp); + InspectorSign = Convert.ToBase64String(ms.ToArray()); + } + } + } + + SPC005Master.ApprovedSignImg = ApprovedSign; + SPC005Master.InspectorSignImg = InspectorSign; + #endregion + } + + var SPC005Masters = new List(); + SPC005Masters.Add(SPC005Master); + + + localReport.AddDataSource("DataSet1", SPC005Masters); + localReport.AddDataSource("DataSet2", SPC005Master.Detail1_ASSY); + localReport.AddDataSource("DataSet3", SPC005Master.Detail2_ASSY); + + localReport.AddDataSource("DataSet2_TEST", SPC005Master.Detail1_TEST); + localReport.AddDataSource("DataSet3_TEST", SPC005Master.Detail2_TEST); + + localReport.AddDataSource("DataSet2_PACK", SPC005Master.Detail1_PACK); + localReport.AddDataSource("DataSet3_PACK", SPC005Master.Detail2_PACK); + return localReport; + } + #endregion diff --git a/AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs b/AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs index b81750ea..2674928b 100644 --- a/AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs +++ b/AMESCoreStudio.Web/HttpApis/AMES/ISPC.cs @@ -282,6 +282,12 @@ namespace AMESCoreStudio.Web ITask> GetIpqcQuery(int InspectionID); + /// + /// IPQC資料 + /// + /// + [WebApiClient.Attributes.HttpGet("api/InspectionResultMasters/FaiQuery/{InspectionID}")] + ITask> GetFaiQuery(int InspectionID); /// /// 根據ID獲取指定巡檢結果Masters /// diff --git a/AMESCoreStudio.Web/Views/BAS/BAS019C.cshtml b/AMESCoreStudio.Web/Views/BAS/BAS019C.cshtml index c75f830f..bf9a03b2 100644 --- a/AMESCoreStudio.Web/Views/BAS/BAS019C.cshtml +++ b/AMESCoreStudio.Web/Views/BAS/BAS019C.cshtml @@ -35,6 +35,8 @@ + + diff --git a/AMESCoreStudio.Web/Views/BAS/BAS019U.cshtml b/AMESCoreStudio.Web/Views/BAS/BAS019U.cshtml index 44ed1ae6..79e3b2b3 100644 --- a/AMESCoreStudio.Web/Views/BAS/BAS019U.cshtml +++ b/AMESCoreStudio.Web/Views/BAS/BAS019U.cshtml @@ -44,6 +44,7 @@
+ diff --git a/AMESCoreStudio.Web/Views/SPC/SPC004.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC004.cshtml index 845d9f18..e6f2877f 100644 --- a/AMESCoreStudio.Web/Views/SPC/SPC004.cshtml +++ b/AMESCoreStudio.Web/Views/SPC/SPC004.cshtml @@ -220,12 +220,14 @@ }, { field: 'itemNo', - title: '料號' + title: '料號', + sort: true }, { field: 'statusNo', width: 100, - title: '狀態' + title: '狀態', + sort: true }, { field: 'createDate', @@ -242,7 +244,8 @@ else return "P"; // return "Total:" + d.detailItem + " Pass:" + d.detailPass + " Fail:" + d.detailFail + " N/A:" + d.detailNA; - } + }, + sort: true }, //{ // field: 'detailItem1', diff --git a/AMESCoreStudio.Web/Views/SPC/SPC005.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC005.cshtml index 72579ae6..67268af9 100644 --- a/AMESCoreStudio.Web/Views/SPC/SPC005.cshtml +++ b/AMESCoreStudio.Web/Views/SPC/SPC005.cshtml @@ -156,6 +156,7 @@ if (result.data) { $("#Form").empty(); $('#Form').append(new Option("請選擇", "")); + $('#Form').append(new Option("全部", "0")); var count = 0; $.each(result.data, function (index, item) { if (item.inspectionTypeID == data) { @@ -219,11 +220,13 @@ }, { field: 'itemNo', - title: '料號' + title: '料號', + sort: true }, { field: 'statusNo', - title: '狀態' + title: '狀態', + sort: true }, { field: 'createDate', @@ -240,7 +243,8 @@ else return "P"; // return "Total:" + d.detailItem + " Pass:" + d.detailPass + " Fail:" + d.detailFail + " N/A:" + d.detailNA; - } + }, + sort: true }, { align: 'center', title: '操作', width: 150, fixed: 'right', @@ -255,6 +259,9 @@ if ($("#Type").val() == 1001) { btns = btns + 'PDF '; } + if ($("#Type").val() == 1002) { + btns = btns + 'PDF '; + } } @@ -266,7 +273,13 @@ function PDF(obj) { if (obj.data.inspectionID) { - hg.open('PDF', '/SPC/SPC005_PDF?id=' + obj.data.inspectionID , '', '', true); + hg.open('PDF', '/SPC/SPC005_PDF?id=' + obj.data.inspectionID +"&Types=IPQC" , '', '', true); + } + } + + function PDF_FAI(obj) { + if (obj.data.inspectionID) { + hg.open('PDF', '/SPC/SPC005_PDF?id=' + obj.data.inspectionID + "&Types=FAI", '', '', true); } } @@ -312,7 +325,7 @@ class: 'layui-btn-normal', handler: function () { var form = $("#Form").val(); - if (form != -99) { + if (form != -99 && form != 0) { hg.open('新增巡檢結果', '/SPC/SPC005C/' + form, '', '', true); } else { diff --git a/AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml index a24f8ec4..358f6cb0 100644 --- a/AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml +++ b/AMESCoreStudio.Web/Views/SPC/SPC005C.cshtml @@ -121,6 +121,10 @@
*@
+ @if (ViewBag.InspectionTypeID == 1002) + { + QO4-067 + }
diff --git a/AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml index 71dd54dd..838066a7 100644 --- a/AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml +++ b/AMESCoreStudio.Web/Views/SPC/SPC005U.cshtml @@ -126,6 +126,10 @@ *@
+ @if (ViewBag.InspectionTypeID == 1002) + { + QO4-067 + }
diff --git a/AMESCoreStudio.Web/Views/SPC/SPC005V.cshtml b/AMESCoreStudio.Web/Views/SPC/SPC005V.cshtml index 762ee785..bb48444a 100644 --- a/AMESCoreStudio.Web/Views/SPC/SPC005V.cshtml +++ b/AMESCoreStudio.Web/Views/SPC/SPC005V.cshtml @@ -57,6 +57,10 @@ @Html.ValidationMessage("error")
+ @if (ViewBag.InspectionTypeID == 1002) + { + QO4-067 + }
diff --git a/AMESCoreStudio.Web/wwwroot/Reports/SPC005ViewFAI.rdlc b/AMESCoreStudio.Web/wwwroot/Reports/SPC005ViewFAI.rdlc new file mode 100644 index 00000000..9d6d5bb4 --- /dev/null +++ b/AMESCoreStudio.Web/wwwroot/Reports/SPC005ViewFAI.rdlc @@ -0,0 +1,1530 @@ + + + 0 + + + + System.Data.DataSet + /* Local Connection */ + + e0dcb4ed-57fb-41b0-a865-d53383fc0026 + + + + + + Accessory + /* Local Query */ + + + + Approved + System.String + + + Inspector + System.String + + + PlanQTY + System.String + + + BIOSVer + System.String + + + InspectionDate + System.String + + + InspectionNumber + System.String + + + MedicalModel + System.String + + + ItemNo + System.String + + + ItemNoDesc + System.String + + + OrderNumber + System.String + + + VIP + System.String + + + ApprovedSignImg + System.String + + + InspectorSignImg + System.String + + + + Accessory + FQC010VIiew + Accessory.FQC010VIiew, Accessory, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + + + Accessory + /* Local Query */ + + + + BarcodeNO + System.String + + + Result + System.String + + + Defect + System.String + + + Station + System.String + + + + Accessory + FQC010VIiew + Detail1 + Accessory.FQC010VIiew, Accessory, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + + + Accessory + /* Local Query */ + + + + InspectionResults + System.String + + + InspectionItemDesc + System.String + + + SEQ + System.String + + + + Accessory + FQC010VIiew + Detail2 + Accessory.FQC010VIiew, Accessory, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + + + Accessory + /* Local Query */ + + + + BarcodeNO + System.String + + + Result + System.String + + + Defect + System.String + + + + Accessory + FQC010VIiew + Detail1 + Accessory.FQC010VIiew, Accessory, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + + + Accessory + /* Local Query */ + + + + InspectionResults + System.String + + + InspectionItemDesc + System.String + + + SEQ + System.String + + + + Accessory + FQC010VIiew + Detail2 + Accessory.FQC010VIiew, Accessory, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + + + Accessory + /* Local Query */ + + + + BarcodeNO + System.String + + + Result + System.String + + + Defect + System.String + + + + Accessory + FQC010VIiew + Detail1 + Accessory.FQC010VIiew, Accessory, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + + + Accessory + /* Local Query */ + + + + InspectionResults + System.String + + + InspectionItemDesc + System.String + + + SEQ + System.String + + + + Accessory + FQC010VIiew + Detail2 + Accessory.FQC010VIiew, Accessory, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + + + + + + + + + true + true + + + + + Inspection Date: + + + + Textbox1 + 1.36409cm + 0.30622cm + 0.60324cm + 4.68409cm + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + 工單/委外廠單號: + + + + + + + Textbox1 + 1.96733cm + 0.30622cm + 0.60324cm + 4.68409cm + 1 + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + 料號: + + + + + + + Textbox1 + 2.57057cm + 0.30622cm + 0.60324cm + 4.68409cm + 2 + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + 數量: + + + + + + + Textbox1 + 3.17381cm + 0.30622cm + 0.60324cm + 4.68409cm + 3 + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + 產品首件檢查表 + + + + + + + Textbox44 + 0.10583cm + 9.15951cm + 1.24355cm + 9.71299cm + 4 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + QQ4-067 + + + + + + + Textbox45 + 0.5147cm + 21.48352cm + 0.61419cm + 2.4633cm + 5 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Rev.A7 + + + + + + + Textbox45 + 0.5147cm + 26.8639cm + 0.61419cm + 1.81031cm + 6 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =First(Fields!InspectionDate.Value, "DataSet1") + + + + + 0.5pt + + Middle + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =First(Fields!OrderNumber.Value, "DataSet1") + + 0.5pt + + Middle + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =First(Fields!ItemNo.Value, "DataSet1") + + + + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =First(Fields!PlanQTY.Value, "DataSet1") + + + + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + Embedded + avalue + FitProportional + 0.10583cm + 1.92953cm + 1.14483cm + 5.40124cm + 11 + + + + + + true + true + + + + + =First(Fields!Station.Value, "DataSet2") + + + + + + + Textbox45 + 4.19762cm + 0.30622cm + 0.61419cm + 28.36799cm + 12 + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + DodgerBlue + 2pt + 2pt + 2pt + 2pt + + + + + + + 7.97752cm + + + 2.8473cm + + + 17.54318cm + + + + + 0.62117cm + + + + + true + true + + + + + 抽驗序號 + + + + Textbox38 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + 檢驗結果 + + + + Textbox40 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Defect description + + + + Textbox42 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.62117cm + + + + + true + true + + + + + =Fields!BarcodeNO.Value + + + + ItemID + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Result.Value + + + + ItemName + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Defect.Value + + + + ItemType + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + After + + + + + + + DataSet2 + 5.15641cm + 0.30622cm + 1.24234cm + 28.368cm + 13 + + + + + + + + + 2.06048cm + + + 12.45692cm + + + 1.74015cm + + + + + 0.6cm + + + + + true + true + + + + + =Fields!SEQ.Value + + + + ProductionSerialNumber1 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!InspectionItemDesc.Value + + + + ShippingSerialNumber + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!InspectionResults.Value + + + + InspectionResults + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + + + DataSet3 + 6.78923cm + 6.27126cm + 0.6cm + 16.25755cm + 14 + + + + + + true + true + + + + + Inspector: + + + + + + + Textbox76 + 8.57413cm + 14.96744cm + 1.00557cm + 3.14055cm + 15 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + Database + =First(Fields!InspectorSignImg.Value, "DataSet1") + image/png + FitProportional + 8.57413cm + 20.21795cm + 1.00557cm + 8.45626cm + 16 + + + + + + true + + + + + Approved: + + + + + + + Textbox76 + 8.57413cm + 7.31026cm + 1.00557cm + 2.99263cm + 17 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =First(Fields!Approved.Value, "DataSet1") + + + + + + + 8.57413cm + 10.26761cm + 1.00557cm + 4.594cm + 18 + + =iif(IsNothing(First(Fields!ApprovedSignImg.Value, "DataSet1")),False,True) + + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + Database + =First(Fields!ApprovedSignImg.Value, "DataSet1") + image/png + FitProportional + 8.57413cm + 12.27991cm + 1.00557cm + 4.60783cm + 19 + + + + + + true + true + + + + + =First(Fields!Inspector.Value, "DataSet1") + + + + + + + 8.57413cm + 18.21382cm + 1.00557cm + 4.594cm + 20 + + =iif(IsNothing(First(Fields!ApprovedSignImg.Value, "DataSet1")), False, True) + + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =First(Fields!ItemNoDesc.Value, "DataSet1") + + + + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + true + 0.30801cm + 0.19832cm + 10.18936cm + 29.26494cm + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + Black + + 0.5pt + + + + + 4.24086in +