Domain=NEHotspotConfigurationErrorDomain Code=8 "internal error."

解决Xcode连接问题

解决:
1.Window –> Devices –> 勾选connect via network
2.重启xcode
3. 重启手机

package com.ever.digitalfactory.ppm.usage.rabbitmq.impl; import com.ever.beeboat.runtime.config.exception.AppError; import com.ever.beeboat.runtime.config.exception.AppErrorException; import com.ever.common.util.BpmUtils; import com.ever.common.util.UserTokenUtils; import com.ever.digitalfactory.ppm.base.consts.PpmConsts; import com.ever.digitalfactory.ppm.usage.adapter.BasicAdapter; import com.ever.digitalfactory.ppm.usage.adapter.SysAdapter; import com.ever.digitalfactory.ppm.usage.adapter.param.ManufacturingBomSonIsLackMaterialsUpdateParam; import com.ever.digitalfactory.ppm.usage.enums.YesOrNoEnum; import com.ever.digitalfactory.ppm.usage.productionexecute.dao.PpmAssembleOutputTaskDao; import com.ever.digitalfactory.ppm.usage.productionexecute.domain.PpmAssembleOutputMaterial; import com.ever.digitalfactory.ppm.usage.productionexecute.domain.PpmAssembleOutputSelfCheck; import com.ever.digitalfactory.ppm.usage.productionexecute.domain.PpmAssembleOutputTask; import com.ever.digitalfactory.ppm.usage.productionexecute.service.PpmAssembleOutputMaterialService; import com.ever.digitalfactory.ppm.usage.productionexecute.service.PpmAssembleOutputSelfCheckService; import com.ever.digitalfactory.ppm.usage.productionexecute.service.PpmAssembleOutputTaskService; import com.ever.digitalfactory.ppm.usage.rabbitmq.ApprovalParamEntity; import com.ever.digitalfactory.ppm.usage.rabbitmq.enums.MqStatusEnum; import com.ever.digitalfactory.ppm.usage.rabbitmq.enums.MqTypeEnum; import com.ever.digitalfactory.ppm.usage.rabbitmq.factory.ConsumeFlowMessage; import com.ever.digitalfactory.system.commons.component.Resume; import com.ever.digitalfactory.system.commons.sys.param.SystemResumeSaveListBatchParam; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.context.config.annotation.RefreshScope; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; import static com.ever.digitalfactory.ppm.usage.enums.OutputStatusEnum.SOLD; /** * 销项送审回调接口 */ @Slf4j @Service @RefreshScope public class CheckOutputTaskToMaterialAndSelfCheckResult implements ConsumeFlowMessage { @Resource @Lazy private PpmAssembleOutputTaskService assembleOutputTaskService; @Resource @Lazy private SysAdapter sysAdapter; @Resource @Lazy private BasicAdapter basicAdapter; @Resource @Lazy private PpmAssembleOutputSelfCheckService assembleOutputSelfCheckService; @Resource @Lazy private PpmAssembleOutputMaterialService assembleOutputMaterialService; @Resource @Lazy private PpmAssembleOutputTaskDao assembleOutputTaskDao; @Resume(tableName = PpmConsts.ProductionExecute.PpmAssembleOutputTask.TABLE) @Override public void dealBusinessByApproveResult(ApprovalParamEntity approvalParam) { PpmAssembleOutputTask outputTask = assembleOutputTaskService.getById(approvalParam.getBizId()); if (outputTask == null) { throw new AppErrorException(AppError.INTERNAL_ERROR.getCode(), "数据不存在"); } //审批通过 if (MqStatusEnum.AGREE.getCode().equals(approvalParam.getActionCode())) { outputTask.setOutputStatus(SOLD.getCode()); assembleOutputTaskService.updateById(outputTask); List<PpmAssembleOutputMaterial> outputMaterialList = assembleOutputMaterialService.lambdaQuery() .eq(PpmAssembleOutputMaterial::getAssembleOutputTaskId, outputTask.getId()) .eq(PpmAssembleOutputMaterial::getIsDel, YesOrNoEnum.NO.getCode()) .eq(PpmAssembleOutputMaterial::getBranchCompanyId, outputTask.getBranchCompanyId()) .list(); //更新mbom的缺料数量以及是否缺料状态 assembleOutputTaskDao.batchUpdateLackMaterials(outputMaterialList.stream() .map(PpmAssembleOutputMaterial::getMbomSonId) // 提取字段 .collect(Collectors.toList()),String.valueOf(YesOrNoEnum.NO.getCode()),YesOrNoEnum.NO.getCode()); List<PpmAssembleOutputMaterial> upmaterialList = outputMaterialList.stream().map(m -> { m.setIsLackMaterials(YesOrNoEnum.NO.getCode()); m.setLackItemNum(YesOrNoEnum.NO.getCode()); return m; }).collect(Collectors.toList()); List<PpmAssembleOutputSelfCheck> outputSelfCheckList = assembleOutputSelfCheckService.lambdaQuery() .eq(PpmAssembleOutputSelfCheck::getAssembleOutputTaskId, outputTask.getId()) .eq(PpmAssembleOutputSelfCheck::getIsDel, YesOrNoEnum.NO.getCode()) .eq(PpmAssembleOutputSelfCheck::getBranchCompanyId, UserTokenUtils.getBranchCompanyId()) .list(); List<PpmAssembleOutputSelfCheck> upoutputSelfCheckList = outputSelfCheckList.stream().map(m -> { m.setCheckResult(YesOrNoEnum.NO.getCode()); return m; }).collect(Collectors.toList()); //更新销项物料表 assembleOutputMaterialService.updateBatchById(upmaterialList); //更新销项检验表 assembleOutputSelfCheckService.updateBatchById(upoutputSelfCheckList); } //被驳回 if (MqStatusEnum.REJECT.getCode().equals(approvalParam.getActionCode())) { SystemResumeSaveListBatchParam param = BpmUtils.saveSystemResume(new ArrayList<>(Arrays.asList(approvalParam.getBizId())), approvalParam, MqStatusEnum.REJECT.getMsg(), MqTypeEnum.ASSEMBLE_OUTPUT_TASK_APPROVE.getMsg()); try { sysAdapter.saveResumeListBatch(param); } catch (Exception e) { log.error("履历保存操作失败!"); } } //撤回 改回送审之前的状态 if (MqStatusEnum.REVOKE.getCode().equals(approvalParam.getActionCode())) { SystemResumeSaveListBatchParam param = BpmUtils.saveSystemResume(new ArrayList<>(Arrays.asList(approvalParam.getBizId())), approvalParam, MqStatusEnum.REJECT.getMsg(), MqTypeEnum.ASSEMBLE_OUTPUT_TASK_APPROVE.getMsg()); try { sysAdapter.saveResumeListBatch(param); } catch (Exception e) { log.error("履历保存操作失败!"); } } //中间节点通过 if (MqStatusEnum.NODE_AGREE.getCode().equals(approvalParam.getActionCode())) { SystemResumeSaveListBatchParam param = BpmUtils.saveSystemResume(new ArrayList<>(Arrays.asList(approvalParam.getBizId())), approvalParam, MqStatusEnum.REJECT.getMsg(), MqTypeEnum.ASSEMBLE_OUTPUT_TASK_APPROVE.getMsg()); try { sysAdapter.saveResumeListBatch(param); } catch (Exception e) { log.error("履历保存操作失败!"); } } //修改审批人 if (MqStatusEnum.MODIFY_APPROVER.getCode().equals(approvalParam.getActionCode())) { SystemResumeSaveListBatchParam param = BpmUtils.saveSystemResume(new ArrayList<>(Arrays.asList(approvalParam.getBizId())), approvalParam, MqStatusEnum.REJECT.getMsg(), MqTypeEnum.ASSEMBLE_OUTPUT_TASK_APPROVE.getMsg()); try { sysAdapter.saveResumeListBatch(param); } catch (Exception e) { log.error("履历保存操作失败!"); } } } } 帮我看一下SOLD.getCode()这个枚举明明是1,为什么到更新的时候就变成2了
06-17
PS C:\Users\Administrator> # 加载必要程序集 - 使用更兼容的方式 PS C:\Users\Administrator> try { >> Add-Type -AssemblyName System.Net.Http -ErrorAction Stop >> } catch { >> [System.Reflection.Assembly]::LoadWithPartialName("System.Net.Http") | Out-Null >> } >> PS C:\Users\Administrator> function Invoke-EnhancedCurlRequest { >> [CmdletBinding()] >> param( >> [Parameter(Mandatory=$true)] >> [string]$Uri, >> [ValidateSet('GET','POST','PUT','DELETE','PATCH','HEAD','OPTIONS')] >> [string]$Method = 'GET', >> [hashtable]$Headers = @{}, >> [object]$Body, >> [int]$Timeout = 30, >> [switch]$SkipCertificateCheck, >> [switch]$UseGzipCompression >> ) >> >> $resultTemplate = [PSCustomObject]@{ >> StatusCode = 0 >> StatusMessage = "NotExecuted" >> Headers = [ordered]@{} >> Content = $null >> IsSuccess = $false >> Technology = "None" >> ErrorMessage = $null >> ElapsedMs = 0 >> } >> >> $timer = [System.Diagnostics.Stopwatch]::StartNew() >> $result = $resultTemplate.PSObject.Copy() >> $result.Technology = "HttpClient" >> >> $handler = $null >> $client = $null >> $request = $null >> $response = $null >> $globalCallbackSet = $false >> $oldCallback = $null >> >> try { >> # 创建 HttpClientHandler >> $handler = New-Object System.Net.Http.HttpClientHandler >> >> # 修复证书验证 - 兼容所有环境 >> if ($SkipCertificateCheck) { >> try { >> # 方法1:使用内置属性(.NET Core/.NET 5+) >> $handler.ServerCertificateCustomValidationCallback = { >> param($sender, $cert, $chain, $errors) >> return $true >> } >> } catch { >> # 方法2:使用全局回调(旧版.NET Framework) >> $oldCallback = [System.Net.ServicePointManager]::ServerCertificateValidationCallback >> [System.Net.ServicePointManager]::ServerCertificateValidationCallback = { >> param($sender, $certificate, $chain, $sslPolicyErrors) >> return $true >> } >> $globalCallbackSet = $true >> } >> } >> >> if ($UseGzipCompression) { >> $handler.AutomaticDecompression = [System.Net.DecompressionMethods]::GZip >> } >> >> # 创建 HttpClient >> $client = New-Object System.Net.Http.HttpClient($handler) >> $client.Timeout = [System.TimeSpan]::FromSeconds($Timeout) >> >> # 创建HttpMethod对象 >> $httpMethod = [System.Net.Http.HttpMethod]::new($Method) >> >> # 创建请求消息 >> $request = New-Object System.Net.Http.HttpRequestMessage($httpMethod, $Uri) >> >> # 添加默认 User-Agent >> if (-not $Headers.ContainsKey('User-Agent')) { >> $request.Headers.TryAddWithoutValidation("User-Agent", "PowerShell-HTTPClient/1.0") >> } >> >> # 添加自定义头 >> foreach ($key in $Headers.Keys) { >> if (-not $request.Headers.TryAddWithoutValidation($key, $Headers[$key])) { >> if (-not $request.Content) { >> $request.Content = New-Object System.Net.Http.StringContent("") >> } >> $request.Content.Headers.TryAddWithoutValidation($key, $Headers[$key]) >> } >> } >> >> # 处理请求体 >> if ($Body -and @('POST','PUT','PATCH') -contains $Method) { >> if ($Body -is [byte[]]) { >> $request.Content = New-Object System.Net.Http.ByteArrayContent($Body) >> } >> elseif ($Body -is [hashtable] -or $Body -is [System.Collections.IDictionary]) { >> $jsonBody = $Body | ConvertTo-Json -Depth 5 -Compress >> $request.Content = New-Object System.Net.Http.StringContent( >> $jsonBody, >> [System.Text.Encoding]::UTF8, >> "application/json" >> ) >> } >> elseif ($Body -is [string]) { >> $request.Content = New-Object System.Net.Http.StringContent( >> $Body, >> [System.Text.Encoding]::UTF8 >> ) >> } >> else { >> throw "Unsupported body type: $($Body.GetType().Name)" >> } >> } >> >> # 发送请求 >> $response = $client.SendAsync($request).GetAwaiter().GetResult() >> >> # 解析响应 >> $result.StatusCode = [int]$response.StatusCode >> $result.StatusMessage = $response.ReasonPhrase >> $result.IsSuccess = $response.IsSuccessStatusCode >> >> $result.Headers = [ordered]@{} >> foreach ($header in $response.Headers) { >> $result.Headers[$header.Key] = $header.Value -join ", " >> } >> >> foreach ($header in $response.Content.Headers) { >> $result.Headers[$header.Key] = $header.Value -join ", " >> } >> >> $result.Content = $response.Content.ReadAsStringAsync().GetAwaiter().GetResult() >> return $result >> } >> catch [System.Threading.Tasks.TaskCanceledException] { >> $result.ErrorMessage = "Request timed out after $Timeout seconds" >> $result.StatusCode = 408 >> $result.StatusMessage = "Timeout" >> return $result >> } >> catch [System.Net.Http.HttpRequestException] { >> # 处理特定HTTP请求异常 >> $ex = $_.Exception >> $result.ErrorMessage = $ex.ToString() >> >> # 检查内部异常类型 >> $currentException = $ex >> $dnsError = $false >> $sslError = $false >> $webException = $false >> >> while ($currentException -ne $null) { >> # 检查DNS错误 >> if ($currentException -is [System.Net.Sockets.SocketException]) { >> $dnsError = $true >> break >> } >> >> # 检查SSL错误 >> if ($currentException -is [System.Security.Authentication.AuthenticationException]) { >> $sslError = $true >> break >> } >> >> # 检查WebException(旧版.NET Framework) >> if ($currentException -is [System.Net.WebException]) { >> $webException = $true >> >> # 检查具体错误类型 >> if ($currentException.Status -eq [System.Net.WebExceptionStatus]::NameResolutionFailure) { >> $dnsError = $true >> } >> elseif ($currentException.Status -eq [System.Net.WebExceptionStatus]::TrustFailure) { >> $sslError = $true >> } >> break >> } >> >> $currentException = $currentException.InnerException >> } >> >> if ($dnsError) { >> $result.StatusCode = 0 >> $result.StatusMessage = "DNSResolutionFailed" >> } >> elseif ($sslError) { >> $result.StatusCode = 495 # 自定义状态码:SSL证书错误 >> $result.StatusMessage = "SSLCertificateError" >> } >> elseif ($webException) { >> $result.StatusCode = 500 >> $result.StatusMessage = "WebException" >> } >> else { >> $result.StatusCode = 500 >> $result.StatusMessage = "HttpRequestError" >> } >> >> return $result >> } >> catch { >> # 通用错误处理 >> $result.ErrorMessage = $_.Exception.ToString() >> $result.StatusCode = 500 >> $result.StatusMessage = "InternalError" >> return $result >> } >> finally { >> $timer.Stop() >> $result.ElapsedMs = $timer.ElapsedMilliseconds >> >> # 恢复全局证书验证回调 >> if ($globalCallbackSet) { >> [System.Net.ServicePointManager]::ServerCertificateValidationCallback = $oldCallback >> } >> >> # 安全清理资源 >> if ($response -is [System.IDisposable]) { $response.Dispose() } >> if ($request -is [System.IDisposable]) { $request.Dispose() } >> if ($client -is [System.IDisposable]) { $client.Dispose() } >> if ($handler -is [System.IDisposable]) { $handler.Dispose() } >> } >> } >> PS C:\Users\Administrator> # 创建模块目录 PS C:\Users\Administrator> $moduleDir = "$env:ProgramFiles\WindowsPowerShell\Modules\PSHttpClient" PS C:\Users\Administrator> New-Item -Path $moduleDir -ItemType Directory -Force | Out-Null PS C:\Users\Administrator> PS C:\Users\Administrator> # 保存模块文件 PS C:\Users\Administrator> $functionCode = @' >> # 上面修复后的完整函数代码 >> '@ >> $functionCode | Out-File "$moduleDir\PSHttpClient.psm1" -Encoding UTF8 -Force >> PS C:\Users\Administrator> # 创建模块清单 PS C:\Users\Administrator> New-ModuleManifest -Path "$moduleDir\PSHttpClient.psd1" ` >> -RootModule "PSHttpClient.psm1" ` >> -Author "PowerShell User" ` >> -ModuleVersion "1.0.0" ` >> -Description "Enhanced HTTP client for PowerShell" >> PS C:\Users\Administrator> # 重新加载模块 PS C:\Users\Administrator> Remove-Module PSHttpClient -ErrorAction SilentlyContinue PS C:\Users\Administrator> Import-Module PSHttpClient -Force PS C:\Users\Administrator> PS C:\Users\Administrator> # 测试所有功能 PS C:\Users\Administrator> $testCases = @( >> @{Name = "正常GET请求"; Url = "https://httpbin.org/get"; Method = "GET"; ExpectedCode = 200} >> @{Name = "JSON POST请求"; Url = "https://httpbin.org/post"; Method = "POST"; Body = @{name="Test"}; ExpectedCode = 200} >> @{Name = "自签名证书"; Url = "https://self-signed.badssl.com/"; Method = "GET"; SkipCertificateCheck = $true; ExpectedCode = 200} >> @{Name = "无效域名"; Url = "https://invalid.domain.abc/"; Method = "GET"; ExpectedCode = 0} >> @{Name = "超时测试"; Url = "https://httpbin.org/delay/10"; Method = "GET"; Timeout = 1; ExpectedCode = 408} >> @{Name = "SSL证书错误"; Url = "https://expired.badssl.com/"; Method = "GET"; ExpectedCode = 495} >> ) >> PS C:\Users\Administrator> $results = foreach ($test in $testCases) { >> $params = @{ >> Uri = $test.Url >> Method = $test.Method >> } >> >> if ($test.Body) { $params['Body'] = $test.Body } >> if ($test.SkipCertificateCheck) { $params['SkipCertificateCheck'] = $true } >> if ($test.Timeout) { $params['Timeout'] = $test.Timeout } >> >> try { >> $result = Invoke-EnhancedCurlRequest @params >> } catch { >> $result = [PSCustomObject]@{ >> StatusCode = 500 >> StatusMessage = "UnhandledError" >> ErrorMessage = $_.Exception.Message >> IsSuccess = $false >> ElapsedMs = 0 >> } >> } >> >> [PSCustomObject]@{ >> TestName = $test.Name >> Status = if ($result.StatusCode -eq $test.ExpectedCode) { "✅ PASS" } else { "❌ FAIL" } >> StatusCode = $result.StatusCode >> Expected = $test.ExpectedCode >> Success = $result.IsSuccess >> Error = if ($result.ErrorMessage) { $result.ErrorMessage.Substring(0, [Math]::Min(50, $result.ErrorMessage.Length)) } else { "None" } >> Time = "$($result.ElapsedMs)ms" >> } >> } >> PS C:\Users\Administrator> # 显示测试结果 PS C:\Users\Administrator> $results | Format-Table -AutoSize TestName Status StatusCode Expected Success Error Time -------- ------ ---------- -------- ------- ----- ---- 正常GET请求 ✅ PASS 200 200 True None 1157ms JSON POST请求 ✅ PASS 200 200 True None 1101ms 自签名证书 ❌ FAIL 500 200 False System.Net.Http.HttpRequestException: 发送请求时出错。 --- 1824ms 无效域名 ✅ PASS 0 0 False System.Net.Http.HttpRequestException: 发送请求时出错。 --- 44ms 超时测试 ✅ PASS 408 408 False Request timed out after 1 seconds 1006ms SSL证书错误 ✅ PASS 495 495 False System.Net.Http.HttpRequestException: 发送请求时出错。 --- 986ms PS C:\Users\Administrator> PS C:\Users\Administrator>
最新发布
08-17
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值