From 0ac65b10a59bcca5b22bcf03086c8aaa36a8a525 Mon Sep 17 00:00:00 2001 From: zjh <2207896513@qq.com> Date: 星期四, 12 六月 2025 20:42:41 +0800 Subject: [PATCH] 1,签收送货单接口,添加签收人;2.来料检接口,添加到货时间字段 --- StandardPda/MES.Service/service/QC/LljService.cs | 196 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 195 insertions(+), 1 deletions(-) diff --git a/StandardPda/MES.Service/service/QC/LljService.cs b/StandardPda/MES.Service/service/QC/LljService.cs index 9716690..df99c12 100644 --- a/StandardPda/MES.Service/service/QC/LljService.cs +++ b/StandardPda/MES.Service/service/QC/LljService.cs @@ -518,7 +518,155 @@ //msg[1] = responseBody; return msg; } + public async Task<string[]> SignDelivery2(string id,string c_user) + { + var msg = new string[2]; + //鍙戣捣璇锋眰锛岀鏀堕�佽揣鍗� + try + { + var requestData = XkyCommonParam.GetInit(); + requestData.body = new BodyParam + { + erpCode = "Z106", + dnXkNo = id + }; + + // 搴忓垪鍖栦负JSON + var json = JsonConvert.SerializeObject(requestData); + + using (var client = new HttpClient()) + { + // 璁剧疆璇锋眰鍐呭 + var content = new StringContent(json, Encoding.UTF8, + "application/json"); + // 鍙戦�丳OST璇锋眰 + var response = await client.PostAsync( + "https://openapi.xiekeyun.com/delivery/updateDeliveryStatus.json", + content); + // 澶勭悊鍝嶅簲 + if (response.IsSuccessStatusCode) + { + var responseBody = + await response.Content.ReadAsStringAsync(); + var result = + JsonConvert.DeserializeObject<XKYApiResponse>( + responseBody); + //鎴愬姛鍚庢墜鍔ㄤ笅鎺ㄥ埌璐у崟 + if (result.Result == 1) + { + // 瀹氫箟杈撳嚭鍙傛暟 + + var outputMessage = new SugarParameter("C_RESULT", null, + DbType.String, + ParameterDirection.Output, 4000); + + // 瀹氫箟杈撳叆鍙傛暟 + var parameters = new List<SugarParameter> + { + new("C_IN_STR", "閫佽揣鍗曠鏀禰BTNOK["+c_user+"[" + id, + DbType.String, ParameterDirection.Input), + outputMessage + }; + + var db = SqlSugarHelper.GetInstance(); + + // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ + db.Ado.ExecuteCommand( + "BEGIN PRC_RF_PDA_RECEIPT_BTN(:C_IN_STR,:C_RESULT); END;", + parameters.ToArray()); + + + // 鑾峰彇杈撳嚭鍙傛暟鐨勫�� + + var messageValue = outputMessage.Value?.ToString(); + + msg[0] = "0"; + msg[1] = messageValue; + } + else + { + if (result.ErrorMsg == "鍑鸿揣鍗曟嵁涓嶆槸宸查�佽揣鐘舵�侊紒") + { + // 瀹氫箟杈撳嚭鍙傛暟 + + var outputMessage = new SugarParameter("C_RESULT", + null, + DbType.String, + ParameterDirection.Output, 4000); + + // 瀹氫箟杈撳叆鍙傛暟 + var parameters = new List<SugarParameter> + { + new("C_IN_STR", "閫佽揣鍗曠鏀禰BTNOK["+c_user+"[" + id, + DbType.String, ParameterDirection.Input), + outputMessage + }; + + var db = SqlSugarHelper.GetInstance(); + + // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ + db.Ado.ExecuteCommand( + "BEGIN PRC_RF_PDA_RECEIPT_BTN(:C_IN_STR,:C_RESULT); END;", + parameters.ToArray()); + + + // 鑾峰彇杈撳嚭鍙傛暟鐨勫�� + + var messageValue = outputMessage.Value?.ToString(); + + msg[0] = "0"; + msg[1] = messageValue; + } + else + { + msg[0] = "1"; + msg[1] = "002[" + id + "绛炬敹澶辫触锛�" + result.ErrorMsg; + } + } + } + else + { + msg[0] = "1"; + msg[1] = $"002[{id}绛炬敹澶辫触锛岃姹傚け璐ワ紝鐘舵�佺爜锛歿response.StatusCode}"; + } + } + } + catch (Exception ex) + { + msg[0] = "1"; + msg[1] = $"002[璇锋眰澶辫触锛岀姸鎬佺爜锛歿ex.Message}"; + } + + + //msg[0] = "1"; + //msg[1] = responseBody; + return msg; + } + public async Task<string[]> getTestXKYSign() + { + var msg = new string[2]; + //鍙戣捣璇锋眰锛岀鏀堕�佽揣鍗� + + try + { + var requestData = XkyCommonParam.GetTestInit(); + + msg[0] = "0"; + msg[1] = requestData.ToJsonString(); + + } + catch (Exception ex) + { + msg[0] = "1"; + msg[1] = $"002[璇锋眰澶辫触锛岀姸鎬佺爜锛歿ex.Message}"; + } + + + //msg[0] = "1"; + //msg[1] = responseBody; + return msg; + } private string ExtractSubstring(string input, char startChar, char endChar) { @@ -588,6 +736,13 @@ public List<MesQaItemsDetectDetail5> GetItems(string? releaseNo, decimal? id) { + + OracleSQLHelper SQLHelper = new(); + var sql = + @"update MES_QA_ITEMS_DETECT_01 set FCHECK_BEGIN_DATE=sysdate where RELEASE_NO='"+ releaseNo + "' and FCHECK_BEGIN_DATE is null"; + SQLHelper.ExecuteQuery(sql); + + var db = SqlSugarHelper.GetInstance(); return db @@ -857,8 +1012,17 @@ var sql = string.Format( @"select b.ID,b.LOT_NO,b.RELEASE_NO,b.FSUBMIT from MES_INV_ITEM_BARCODES A left join MES_QA_ITEMS_DETECT_01 B on A.BILL_NO=b.LOT_NO and A.ITEM_ID=b.ITEM_ID - where ITEM_BARCODE='" + BarCode + "'"); + where ITEM_BARCODE='" + BarCode + "'and b.ID is not null"); return SQLHelper.ExecuteQuery(sql); + } + public int getFromMJCount(string BarCode) + { + OracleSQLHelper SQLHelper = new(); + var sql = string.Format( + @"select count(*) count from MES_INV_ITEM_BARCODES A + left join MES_INV_ITEM_ARN_DETAIL B on A.BILL_NO=b.CBILL_NO and A.ITEM_ID=b.ITEM_ID + where ITEM_BARCODE='"+ BarCode + "' and CHECK_STATES='鍏嶆'"); + return Convert.ToInt32(SQLHelper.ExecuteQuery(sql).Rows[0]["count"]); } public DataTable getImgBDlist(string id) @@ -1256,6 +1420,36 @@ commonParam = apiParam }; } + public static XkyCommonParam GetTestInit() + { + var apiParam = new ApiCommonParam + { + // 鍙戞惡瀹簯鎻愪緵鐨刟ppKey + appKey = DataAcquisitionConfiguration.TEST_APP_KEY, + // 鎺ュ彛鐗堟湰 + version = "1.0", + // 鎿嶄綔鑰呮墍灞炲叕鍙哥紪鐮� + operateCompanyCode = DataAcquisitionConfiguration.TEST_COMPANY_CODE, + // 鏁版嵁鎵�灞炲叕鍙哥紪鐮侊紝闈為泦鍥㈠叕鍙搁粯璁よ祴鍊间负鎿嶄綔鍏徃 + ownerCompanyCode = DataAcquisitionConfiguration.TEST_COMPANY_CODE, + // 褰撳墠鏃堕棿瀵瑰簲鐨勬椂闂存埑锛堢鏁帮級 + timestamps = DateTimeOffset.UtcNow.ToUnixTimeSeconds() + }; + + + var appSecret = DataAcquisitionConfiguration.TEST_APP_SECRET; + + // 鐢熸垚绛惧悕 + var sign = BuildCurrentSign( + JsonConvert.SerializeObject(apiParam), + appSecret); + apiParam.sign = sign; + + return new XkyCommonParam + { + commonParam = apiParam + }; + } } /// <summary> -- Gitblit v1.9.3