From ff982948331200f951a486a7b38c11c009da19b2 Mon Sep 17 00:00:00 2001 From: xwt <2740516069@qq.com> Date: 星期四, 17 七月 2025 14:29:49 +0800 Subject: [PATCH] 来料检获取附件信息 --- StandardInterface/MES.Service/Dto/service/RKJDaa001.cs | 16 +++++++ StandardInterface/MES.Service/service/QC/LljService.cs | 25 ++++++++++++ StandardInterface/MES.Service/service/QC/RKJService.cs | 12 +++--- StandardInterface/MESApplication/Controllers/QC/LljController.cs | 64 ++++++++++++++++++++++++++++++++ StandardInterface/MESApplication/appsettings.json | 2 5 files changed, 111 insertions(+), 8 deletions(-) diff --git a/StandardInterface/MES.Service/Dto/service/RKJDaa001.cs b/StandardInterface/MES.Service/Dto/service/RKJDaa001.cs index e7a61de..61b439d 100644 --- a/StandardInterface/MES.Service/Dto/service/RKJDaa001.cs +++ b/StandardInterface/MES.Service/Dto/service/RKJDaa001.cs @@ -13,7 +13,8 @@ public decimal? ItemInId { get; set; } // 浠诲姟鍗曞彿 - [SugarColumn(ColumnName = "ITEM_NO")] public string? ItemNo { get; set; } + [SugarColumn(ColumnName = "ITEM_NO")] + public string? ItemNo { get; set; } [SugarColumn(ColumnName = "ITEM_NAME")] public string? ItemName { get; set; } @@ -21,4 +22,17 @@ // 璁㈠崟鏁伴噺 [SugarColumn(ColumnName = "QUANTITY")] public decimal? Quantity { get; set; } + + //浜х嚎缂栫爜 + [SugarColumn(ColumnName = "DAA015")] + public string? Daa015 { get; set; } + + //浜х嚎缂栫爜 + [SugarColumn(ColumnName = "DAA015")] + public string? Daa020 { get; set; } + + //鐢宠鍗曞彿 + [SugarColumn(ColumnName = "BILL_NO")] + public string? billNo { get; set; } + } \ No newline at end of file diff --git a/StandardInterface/MES.Service/service/QC/LljService.cs b/StandardInterface/MES.Service/service/QC/LljService.cs index 57e31ce..6a7e76f 100644 --- a/StandardInterface/MES.Service/service/QC/LljService.cs +++ b/StandardInterface/MES.Service/service/QC/LljService.cs @@ -311,6 +311,31 @@ return input.Substring(startIndex + 1, length); } + public List<QamftpDto> GetAttachments(string releaseNo) + { + var db = SqlSugarHelper.GetInstance(); + return db.Queryable<MesQamftp>() + .Where(x => x.ReleaseNo == releaseNo) + .OrderBy(x => x.Fdate, OrderByType.Desc) + .Select(x => new QamftpDto + { + Id = x.Id, + ItemNo = x.ItemNo, + Ftype = x.Ftype, + Fattach = x.Fattach, + Fversion = x.Fversion, + Fdate = x.Fdate, + CreateBy = x.CreateBy, + CreateDate = x.CreateDate, + Company = x.Company, + Factory = x.Factory, + ReleaseNo = x.ReleaseNo, + F_type = x.F_type, + LastupdateBy = x.LastupdateBy, + LastupdateDate = x.LastupdateDate, + ItemId = x.ItemId + }).ToList(); + } public int saveItem(LLJDto rkjDto) { var items = rkjDto.items; diff --git a/StandardInterface/MES.Service/service/QC/RKJService.cs b/StandardInterface/MES.Service/service/QC/RKJService.cs index 07260a8..d7a9df3 100644 --- a/StandardInterface/MES.Service/service/QC/RKJService.cs +++ b/StandardInterface/MES.Service/service/QC/RKJService.cs @@ -50,14 +50,14 @@ //鑾峰彇宸ュ崟鍙� - public List<RkDaa002> GetDaa001s(string lineNo) + public List<RKJDaa001> GetDaa001s(string lineNo) { var db = SqlSugarHelper.GetInstance(); - // return db.Queryable<RKJDaa001>() - // .Where(t => t.LineNo == lineNo) - // .OrderBy(t => t.BillNo, OrderByType.Desc) - // .ToList(); - return null; + return db.Queryable<RKJDaa001>() + .Where(t => t.Daa020 == lineNo) + .OrderBy(t => t.ItemInId, OrderByType.Desc) + .ToList(); + //return null; } //鏍规嵁妫�楠屾爣鍑嗘潵璁$畻妫�楠屼釜鏁� diff --git a/StandardInterface/MESApplication/Controllers/QC/LljController.cs b/StandardInterface/MESApplication/Controllers/QC/LljController.cs index 8112f51..576e5c6 100644 --- a/StandardInterface/MESApplication/Controllers/QC/LljController.cs +++ b/StandardInterface/MESApplication/Controllers/QC/LljController.cs @@ -316,4 +316,68 @@ return ResponseResult.ResponseError(ex); } } + + [HttpPost("getAttachments")] + public ResponseResult GetAttachments([FromBody] JObject data) + { + var releaseNo = data["releaseNo"]?.ToString(); + try + { + dynamic resultInfos = new System.Dynamic.ExpandoObject(); + var tbBillList = new LljService().GetAttachments(releaseNo); + if (tbBillList == null || tbBillList.Count == 0) + { + return new ResponseResult + { + status = 1, + message = "璇ユ楠屽崟鏈笂浼犻檮浠朵俊鎭紒", + data = null + }; + } + resultInfos.tbBillList = tbBillList; + return new ResponseResult + { + status = 0, + message = "OK", + data = resultInfos + }; + } + catch (Exception ex) + { + return ResponseResult.ResponseError(ex); + } + } + + [HttpGet("DownloadFtpFile")] + public IActionResult DownloadFtpFile([FromQuery] string itemNo, [FromQuery] string fileName) + { + // FTP鏈嶅姟鍣ㄤ俊鎭紙璇锋浛鎹负瀹為檯淇℃伅锛� + string ftpServer = "ftp://36.26.21.214"; + string ftpUser = "hm_ftp"; + string ftpPwd = "dell_123"; // 宸叉洿鏂颁负鐪熷疄瀵嗙爜 + string ftpPath = $"{ftpServer}/IQC/{itemNo}/{fileName}"; + try + { + var request = (System.Net.FtpWebRequest)System.Net.WebRequest.Create(ftpPath); + request.Method = System.Net.WebRequestMethods.Ftp.DownloadFile; + request.Credentials = new System.Net.NetworkCredential(ftpUser, ftpPwd); + request.UseBinary = true; + request.UsePassive = true; + using (var response = (System.Net.FtpWebResponse)request.GetResponse()) + using (var ftpStream = response.GetResponseStream()) + using (var ms = new System.IO.MemoryStream()) + { + ftpStream.CopyTo(ms); + ms.Position = 0; + string contentType = "application/octet-stream"; + // 闃插尽鎬у鐞嗭紝鍘婚櫎fileName涓殑鍥炶溅鎹㈣鍜岀┖鏍� + fileName = fileName?.Trim().Replace("\r", "").Replace("\n", ""); + return File(ms.ToArray(), contentType, fileName); + } + } + catch (Exception ex) + { + return BadRequest($"FTP涓嬭浇澶辫触锛歿ex.Message}锛宖tpPath={ftpPath}锛宖ileName={fileName}"); + } + } } \ No newline at end of file diff --git a/StandardInterface/MESApplication/appsettings.json b/StandardInterface/MESApplication/appsettings.json index 28cfc2a..59a3601 100644 --- a/StandardInterface/MESApplication/appsettings.json +++ b/StandardInterface/MESApplication/appsettings.json @@ -10,6 +10,6 @@ "AppSettings": { "TestErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfo", "ProductionErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfoFormal", - "DataBaseConn": "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.22)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = hm_prd; Password=hmprd" + "DataBaseConn": "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.22)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = test_dev; Password=hmprd" } } -- Gitblit v1.9.3