From 2596ac58edccaa512c73642d4e2a50884c3fabd9 Mon Sep 17 00:00:00 2001 From: tongfei <244188119@qq.com> Date: Mon, 8 Jan 2024 10:25:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=99=BB=E5=87=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 | Bin 232149 -> 232149 bytes .../Controllers/LoginController.cs | 3 +- src/WMS.Web.Api/Controllers/TestController.cs | 5 +- src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml | 208 +++++++++--------- src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml | 14 ++ .../Dto/Login/LoginOutAuthorizeRequest.cs | 14 ++ src/WMS.Web.Core/Dto/Login/LoginOutDto.cs | 2 + src/WMS.Web.Core/Help/HttpClientHelp.cs | 37 +++- .../IService/Public/ILoginService.cs | 7 + .../Services/Public/ErpService.cs | 22 +- .../Services/Public/LoginService.cs | 28 ++- 11 files changed, 228 insertions(+), 112 deletions(-) create mode 100644 src/WMS.Web.Core/Dto/Login/LoginOutAuthorizeRequest.cs diff --git a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 index a4bc898a65fa56f720199d73750d66d33afab161..d9b8b51e9990a03c53700a3610734070378ab4fd 100644 GIT binary patch delta 9324 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 diff --git a/src/WMS.Web.Api/Controllers/LoginController.cs b/src/WMS.Web.Api/Controllers/LoginController.cs index d2a8ddbd..b8a64f99 100644 --- a/src/WMS.Web.Api/Controllers/LoginController.cs +++ b/src/WMS.Web.Api/Controllers/LoginController.cs @@ -77,9 +77,10 @@ namespace WMS.Web.Api.Controllers SessionId = logininfo.UserInfo.SeesionId, Token = logininfo.TokenInfo.Token, AccessToken = logininfo.TokenInfo.PhpToken, + RefreshToken=logininfo.TokenInfo.RefreshToken, ExpiresIn = logininfo.TokenInfo.Expired }; - var res = await _loginService.LoginOutAsync(dto); + var res = await _loginService.LoginOut(dto); } } return Result.ReSuccess(); diff --git a/src/WMS.Web.Api/Controllers/TestController.cs b/src/WMS.Web.Api/Controllers/TestController.cs index 139f658b..5c7c64e2 100644 --- a/src/WMS.Web.Api/Controllers/TestController.cs +++ b/src/WMS.Web.Api/Controllers/TestController.cs @@ -116,14 +116,15 @@ namespace WMS.Web.Api.Controllers public async Task TestTF() { ////var result = await this._erpService.BillQueryForOrg(); - //var result = await this._erpService.BillQueryForBillType(); + var result = await this._erpService.BillQueryForBillType(); //if (!result.IsSuccess) // return ""; //return JsonConvert.SerializeObject(result.Data); // var bis = new List() { "CGDD224198", "CGDD224199", "CGDD224200", "CGDD224202", "SUB00006680", "CGDD224203", "SUB000066801", "CGDD224204", "CGDD224205", "CGDD224206", "CGDD224207", "SUB00006681", "CGDD224208", "CGDD224209", "SUB00006682", "CGDD224210", "CGDD224211", "CGDD224212", "CGDD224213", "CGDD224216", "SUB00006683", "CGDD224218", "CGDD224219", "CGDD224220", "CGDD224221", "CGDD224222", "CGDD224223", "CGDD224224", "CGDD224225", "CGDD224226", "CGDD224227", "CGDD224229", "CGDD224230", "CGDD224231", "CGDD224232", "CGDD224233", "SUB00006685", "SUB00006686", "CGDD224234", "CGDD224235", "CGDD224236", "CGDD224237", "CGDD224238", "CGDD224239", "CGDD224240", "CGDD224241", "CGDD224242", "CGDD224243", "CGDD224244", "CGDD224245", "CGDD224246", "CGDD224247", "CGDD224248", "CGDD224249", "CGDD224250", "CGDD224251" }; - var result = await this._erpService.BillQueryForPurchaseInStock(); + + //var result = await this._erpService.BillQueryForPurchaseInStock(); //var result1 = await this._erpService.BillQueryForMiscellaneous(); //var result2 = await this._erpService.BillQueryForTransferDirect(); //var result3 = await this._erpService.BillQueryForTransferin(); diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 6a87800e..e6c11aed 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -4192,31 +4192,6 @@ 出库状态 - - - 单据类型 - - - - - 操作人(出库人) - - - - - 操作时间(出库时间) - - - - - 出库人 - - - - - 出库时间 - - 来源单号 @@ -4227,16 +4202,6 @@ 销售订单号 - - - 来源单号(集合) - - - - - 销售订单号(集合) - - 发货组织 @@ -4247,9 +4212,14 @@ 收货客户 - + - 物料名称 + 单据类型 + + + + + 物料规格型号 @@ -4257,9 +4227,14 @@ 物料编码 - + - 物料规格型号 + 物料名称 + + + + + 单位 @@ -4277,21 +4252,6 @@ 已出库数量 - - - 订单明细备注 - - - - - 创建时间(erp那边的创建时间) - - - - - 单位 - - 出库开始时间 @@ -4302,6 +4262,46 @@ 出库结束时间 + + + 操作人 + + + + + 操作时间 + + + + + 出库人 + + + + + 出库时间 + + + + + 来源单号(集合) + + + + + 销售订单号(集合) + + + + + 订单明细备注 + + + + + 创建时间(erp那边的创建时间) + + 出库单任务 @@ -4397,11 +4397,61 @@ 单据编号 + + + 来源单号 + + + + + 销售订单号 + + + + + 发货组织 + + + + + 收货客户 + + 单据类型 + + + 物料规格型号 + + + + + 物料编码 + + + + + 物料名称 + + + + + 单位 + + + + + 仓库ID + + + + + 出库数量 + + 创建人 @@ -4417,16 +4467,6 @@ 同步成功或者失败 null 就是未同步 - - - 来源单号 - - - - - 销售订单号 - - 来源单号(集合) @@ -4437,46 +4477,6 @@ 销售订单号(集合) - - - 发货组织 - - - - - 收货客户 - - - - - 物料名称 - - - - - 物料编码 - - - - - 物料规格型号 - - - - - 单位 - - - - - 仓库ID - - - - - 出库数量 - - 备注 diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml index 013da79d..92a2f4c6 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml @@ -3213,6 +3213,13 @@ + + + 登录退出 + + + + 刷新token @@ -4816,6 +4823,13 @@ + + + 登录退出 + + + + 刷新token diff --git a/src/WMS.Web.Core/Dto/Login/LoginOutAuthorizeRequest.cs b/src/WMS.Web.Core/Dto/Login/LoginOutAuthorizeRequest.cs new file mode 100644 index 00000000..6e777958 --- /dev/null +++ b/src/WMS.Web.Core/Dto/Login/LoginOutAuthorizeRequest.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace WMS.Web.Core.Dto.Login +{ + public class LoginOutAuthorizeRequest + { + public string AccessToken { get; set; } + + public string RefreshToken { get; set; } + + } +} diff --git a/src/WMS.Web.Core/Dto/Login/LoginOutDto.cs b/src/WMS.Web.Core/Dto/Login/LoginOutDto.cs index 56c7cf3e..6c7110cc 100644 --- a/src/WMS.Web.Core/Dto/Login/LoginOutDto.cs +++ b/src/WMS.Web.Core/Dto/Login/LoginOutDto.cs @@ -38,5 +38,7 @@ namespace WMS.Web.Core.Dto.Login ///ops自己产生的token 给前端验证用的 /// public string Token { get; set; } + + public string RefreshToken { get; set; } } } diff --git a/src/WMS.Web.Core/Help/HttpClientHelp.cs b/src/WMS.Web.Core/Help/HttpClientHelp.cs index 014427e0..b58b1cdb 100644 --- a/src/WMS.Web.Core/Help/HttpClientHelp.cs +++ b/src/WMS.Web.Core/Help/HttpClientHelp.cs @@ -88,7 +88,7 @@ namespace WMS.Web.Core.Help public string PostHttp(string url, LoginAuthorizeRequest reqData) { var str = string.Format("client_id={0}&client_secret={1}&grant_type={2}&username={3}&password={4}&scope={5}", - reqData.ClientId, reqData.ClientSecret, reqData.GrantType, reqData.UserName, reqData.Password,reqData.Scope); + reqData.ClientId, reqData.ClientSecret, reqData.GrantType, reqData.UserName, reqData.Password, reqData.Scope); ASCIIEncoding encoding = new ASCIIEncoding(); byte[] byte1 = encoding.GetBytes(str); HttpContent httpContent = new StringContent(str); @@ -111,13 +111,13 @@ namespace WMS.Web.Core.Help var resData = response.Content.ReadAsStringAsync().Result; return resData; } - + } public string PostHttp(string url, LoginAuthorizeCodeRequest reqData) { var str = string.Format("client_id={0}&client_secret={1}&grant_type={2}&code={3}&scope={4}", - reqData.ClientId, reqData.ClientSecret, reqData.GrantType, reqData.Code,reqData.Scope); + reqData.ClientId, reqData.ClientSecret, reqData.GrantType, reqData.Code, reqData.Scope); ASCIIEncoding encoding = new ASCIIEncoding(); byte[] byte1 = encoding.GetBytes(str); HttpContent httpContent = new StringContent(str); @@ -143,6 +143,37 @@ namespace WMS.Web.Core.Help } + public string GetHttpOut(string url, LoginOutAuthorizeRequest reqData) + { + try + { + HttpClient client = new HttpClient(); + //请求头添加其他值 + client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", reqData.AccessToken); + client.DefaultRequestHeaders.Add("Refresh-Authorization", reqData.RefreshToken); + client.DefaultRequestHeaders.Connection.Add("Keep-Alive"); + client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); + client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue ("utf-8")); + + HttpResponseMessage response = client.GetAsync(url).Result; + if (response.IsSuccessStatusCode) + { + var resData = response.Content.ReadAsStringAsync().Result; + return resData; + + } + else + { + var resData = response.Content.ReadAsStringAsync().Result; + return resData; + } + } + catch (Exception ex) + { + return ""; + } + } + public string PostHttpNoData(string url, string cookieValue = "") { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); diff --git a/src/WMS.Web.Domain/IService/Public/ILoginService.cs b/src/WMS.Web.Domain/IService/Public/ILoginService.cs index 3b16f76e..0e88d213 100644 --- a/src/WMS.Web.Domain/IService/Public/ILoginService.cs +++ b/src/WMS.Web.Domain/IService/Public/ILoginService.cs @@ -52,6 +52,13 @@ namespace WMS.Web.Domain.IService.Public /// Task LoginOutAsync(LoginOutDto dto); + /// + /// 登录退出 + /// + /// + /// + Task LoginOut(LoginOutDto dto); + /// /// 刷新token diff --git a/src/WMS.Web.Domain/Services/Public/ErpService.cs b/src/WMS.Web.Domain/Services/Public/ErpService.cs index f0329644..83a484d1 100644 --- a/src/WMS.Web.Domain/Services/Public/ErpService.cs +++ b/src/WMS.Web.Domain/Services/Public/ErpService.cs @@ -86,6 +86,26 @@ namespace WMS.Web.Domain.Services.Public } } + public async Task> Init1() + { + BasicHttpBinding binding = new BasicHttpBinding(); + binding.MaxReceivedMessageSize = int.MaxValue; + binding.SendTimeout = new TimeSpan(int.MaxValue); + EndpointAddress address = new EndpointAddress(this._erpOptions.EndpointAddress); + this._client = new ERPGWSoapClient(binding, address); + try + { + var result = await this._client.ValidateSystemAsync(this._erpOptions.UserName, this._erpOptions.Password, "Orico", ""); + if (result == null) + return Result.ReFailure(ResultCodes.Erp_Login_Error); + return Result.ReSuccess(result.AccessToken); + } + catch (Exception ex) + { + return Result.ReFailure(ResultCodes.Erp_Login_Error); + } + } + /// /// 查单据类型的值 /// @@ -95,7 +115,7 @@ namespace WMS.Web.Domain.Services.Public try { //1.先登录金蝶-拿到token - var token_result = await this.Init(); + var token_result = await this.Init1(); if (!token_result.IsSuccess) return ResultList.ReFailure(token_result); diff --git a/src/WMS.Web.Domain/Services/Public/LoginService.cs b/src/WMS.Web.Domain/Services/Public/LoginService.cs index 3aa94309..de354706 100644 --- a/src/WMS.Web.Domain/Services/Public/LoginService.cs +++ b/src/WMS.Web.Domain/Services/Public/LoginService.cs @@ -462,7 +462,7 @@ namespace WMS.Web.Domain.Services.Public reqData.Add("app_id", _soaOptions.AppId); reqData.Add("app_secret", _soaOptions.AppSecret); reqData.Add("access_token", dto.AccessToken); - string result = _httpClientHelp.PostHttp(_soaOptions.Url + "/uc/authorize/signin_out", reqData, true, dto.SessionId); + string result = _httpClientHelp.PostHttp(_soaOptions.Url_V3 + "/uc/authorize/signin_out", reqData, true, dto.SessionId); _logger.LogInformation("退出登录返回:" + result); var jObject = JsonObject.Parse(result); if (jObject["errno"] == 0) @@ -477,6 +477,32 @@ namespace WMS.Web.Domain.Services.Public } } + /// + /// 登录退出 + /// + /// + /// + public async Task LoginOut(LoginOutDto dto) + { + //2.请求PHP单点登出接口 + var reqData = new LoginOutAuthorizeRequest(); + reqData.AccessToken = dto.AccessToken; + reqData.RefreshToken = dto.RefreshToken; + string result = _httpClientHelp.GetHttpOut(_soaOptions.Url_V3 + "/uc/logout", reqData); + _logger.LogInformation("退出登录返回:" + result); + var jObject = JsonObject.Parse(result); + if (jObject["code"] == 0) + { + //设置本地token的缓存:为黑名单的token做存储 + await CacheOutToken(dto); + return Result.ReSuccess(); + } + else + { + return Result.ReFailure(BaseResultCodes.UnAuthorized); + } + } + /// /// 刷新token ///