Compare commits

..

No commits in common. "563bc271f36649f344604c586fd238d0e13f1c81" and "40b26f94d82bb6ff9ea7c2dea5a7924b8b58b7ea" have entirely different histories.

3 changed files with 17 additions and 102 deletions

View File

@ -40,9 +40,7 @@ public class ThirdServiceUtil {
*/ */
public <T> T callDevice(LexMarkDTO lexMarkDTO, Class<T> responseType) { public <T> T callDevice(LexMarkDTO lexMarkDTO, Class<T> responseType) {
try { try {
String urlStr = lexMarkServiceIp + ":" + lexMarkServicePort + "/CallDevice"; URL url = new URL(lexMarkServiceIp + ":" + lexMarkServicePort + "/CallDevice");
URL url = new URL(urlStr);
log.info("开始请求利盟服务URL: {}, 请求体: {}", urlStr, JSON.toJSONString(lexMarkDTO));
HttpURLConnection connection = (HttpURLConnection) url.openConnection(); HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST"); connection.setRequestMethod("POST");
connection.setDoOutput(true); connection.setDoOutput(true);
@ -54,28 +52,23 @@ public class ThirdServiceUtil {
wr.write(input, 0, input.length); wr.write(input, 0, input.length);
} }
int responseCode = connection.getResponseCode(); int responseCode = connection.getResponseCode();
log.info("利盟服务响应码: {}", responseCode);
if (responseCode != HttpURLConnection.HTTP_OK) { if (responseCode != HttpURLConnection.HTTP_OK) {
throw new RRException("利盟服务请求失败,响应码:" + responseCode); throw new RRException("利盟服务请求失败,响应码:" + responseCode);
} }
// 指定编码为 UTF-8 BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
try (BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) {
String inputLine; String inputLine;
StringBuilder response = new StringBuilder(); StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) { while ((inputLine = in.readLine()) != null) {
response.append(inputLine); response.append(inputLine);
} }
String responseStr = response.toString(); in.close();
log.info("利盟服务响应内容: {}", responseStr);
// 将响应 JSON 字符串转换为泛型对象 // 将响应 JSON 字符串转换为泛型对象
T result = JSON.parseObject(responseStr, responseType); T result = JSON.parseObject(response.toString(), responseType);
if (result instanceof LexMarkResultVO && ((LexMarkResultVO) result).getResult() != 0) { if (result instanceof LexMarkResultVO && ((LexMarkResultVO) result).getResult() != 0) {
throw new RRException(result.toString()); throw new RRException(result.toString());
} }
return result; return result;
}
} catch (Exception e) { } catch (Exception e) {
log.error("利盟服务请求发生异常", e);
if (e instanceof RRException) { if (e instanceof RRException) {
throw new RRException(((RRException) e).getCode(), e.getMessage()); throw new RRException(((RRException) e).getCode(), e.getMessage());
} }

View File

@ -38,10 +38,7 @@ public class KeypadServiceImpl implements KeypadService {
*/ */
@Override @Override
public Result inputData() { public Result inputData() {
log.info("开始执行密码输入流程");
// 连接数字键盘 // 连接数字键盘
log.info("准备连接数字键盘设备");
LexMarkDTO connect = new LexMarkDTO(); LexMarkDTO connect = new LexMarkDTO();
connect.setDevName(LexMarkConst.ENCRYPTOR); connect.setDevName(LexMarkConst.ENCRYPTOR);
connect.setActionName(MiddlewareFunctionsConst.OPEN_CONNECTION); connect.setActionName(MiddlewareFunctionsConst.OPEN_CONNECTION);
@ -50,15 +47,11 @@ public class KeypadServiceImpl implements KeypadService {
connectParam.put("TimeOut", 90000); connectParam.put("TimeOut", 90000);
connectParam.put("ServiceName", LexMarkConst.ENCRYPTOR); connectParam.put("ServiceName", LexMarkConst.ENCRYPTOR);
connect.setParam(connectParam.toJSONString()); connect.setParam(connectParam.toJSONString());
log.info("调用设备连接方法,参数: {}", connect);
IDCardReadResultVO connectResult = thirdServiceUtil.callDevice(connect, IDCardReadResultVO.class); IDCardReadResultVO connectResult = thirdServiceUtil.callDevice(connect, IDCardReadResultVO.class);
log.info("设备连接结果: {}", connectResult);
WebSocketClient webSocketClient = null; WebSocketClient webSocketClient = null;
try { try {
if (connectResult.getResult() == 0) { if (connectResult.getResult() == 0) {
log.info("数字键盘设备连接成功,准备进行明文输入");
// 明文输入 // 明文输入
LexMarkDTO plaintext = new LexMarkDTO(); LexMarkDTO plaintext = new LexMarkDTO();
plaintext.setDevName(LexMarkConst.ENCRYPTOR); plaintext.setDevName(LexMarkConst.ENCRYPTOR);
@ -77,58 +70,43 @@ public class KeypadServiceImpl implements KeypadService {
plaintextParam.put("ActiveKeys", 81919); plaintextParam.put("ActiveKeys", 81919);
plaintextParam.put("TerminateKeys", 1024); plaintextParam.put("TerminateKeys", 1024);
plaintext.setParam(plaintextParam.toJSONString()); plaintext.setParam(plaintextParam.toJSONString());
log.info("调用明文输入方法,参数: {}", plaintext);
// 创建 WebSocket 客户端 // 创建 WebSocket 客户端
log.info("创建 WebSocket 客户端,连接地址: ws://127.0.0.1:12347");
webSocketClient = new WebSocketClient("ws://127.0.0.1:12347"); webSocketClient = new WebSocketClient("ws://127.0.0.1:12347");
IDCardReadResultVO plaintextResult = thirdServiceUtil.callDevice(plaintext, IDCardReadResultVO.class); IDCardReadResultVO plaintextResult = thirdServiceUtil.callDevice(plaintext, IDCardReadResultVO.class);
log.info("明文输入操作结果: {}", plaintextResult);
if (plaintextResult.getResult() == 0) { if (plaintextResult.getResult() == 0) {
log.info("明文输入成功,开始等待确认");
try { try {
// 适当延长等待时间 // 适当延长等待时间
while (true) { while (true) {
TimeUnit.SECONDS.sleep(1); TimeUnit.SECONDS.sleep(1);
Boolean confirm = webSocketClient.getConfirm(); Boolean confirm = webSocketClient.getConfirm();
if (confirm) { if (confirm) {
log.info("收到确认信息,结束等待");
break; break;
} }
} }
} catch (InterruptedException e) { } catch (InterruptedException e) {
log.error("等待确认信息时被中断", e);
e.printStackTrace(); e.printStackTrace();
} }
String password = webSocketClient.getPassword(); String password = webSocketClient.getPassword();
log.info("密码输入完成,密码为: {}", password);
return Result.ok("密码输入完成!", password); return Result.ok("密码输入完成!", password);
} else { } else {
log.error("密码输入异常!详情:{}", connectResult.getDesc());
return Result.error("密码输入异常!详情:" + connectResult.getDesc()); return Result.error("密码输入异常!详情:" + connectResult.getDesc());
} }
} else { } else {
log.error("数字键盘设备连接失败!详情:{}", connectResult.getDesc());
return Result.error("数字键盘设备连接失败!详情:" + connectResult.getDesc()); return Result.error("数字键盘设备连接失败!详情:" + connectResult.getDesc());
} }
} finally { } finally {
if (webSocketClient != null) { if (webSocketClient != null) {
log.info("关闭 WebSocket 客户端");
webSocketClient.close(); webSocketClient.close();
} }
// 关闭身份证读卡设备 // 关闭身份证读卡设备
log.info("准备关闭数字键盘设备");
LexMarkDTO close = new LexMarkDTO(); LexMarkDTO close = new LexMarkDTO();
close.setDevName(LexMarkConst.ENCRYPTOR); close.setDevName(LexMarkConst.ENCRYPTOR);
close.setCallID(0); close.setCallID(0);
close.setActionName(MiddlewareFunctionsConst.CLOSE_CONNECTION); close.setActionName(MiddlewareFunctionsConst.CLOSE_CONNECTION);
log.info("调用设备关闭方法,参数: {}", close);
IDCardReadResultVO closeResult = thirdServiceUtil.callDevice(close, IDCardReadResultVO.class); IDCardReadResultVO closeResult = thirdServiceUtil.callDevice(close, IDCardReadResultVO.class);
log.info("设备关闭结果: {}", closeResult);
if (closeResult.getResult() != 0) { if (closeResult.getResult() != 0) {
log.error("数字键盘设备关闭异常!"); log.info("数字键盘设备关闭异常!");
} }
} }
} }

View File

@ -46,9 +46,7 @@ public class ReadCardServiceImpl implements ReadCardService {
@Override @Override
public Result IDCardReader() { public Result IDCardReader() {
Result result = null; Result result = null;
log.info("开始执行身份证读取流程");
try { try {
log.info("准备连接非接身份证读卡模块");
// 连接非接身份证读卡模块 // 连接非接身份证读卡模块
LexMarkDTO connect = new LexMarkDTO(); LexMarkDTO connect = new LexMarkDTO();
connect.setActionName(MiddlewareFunctionsConst.OPEN_CONNECTION); connect.setActionName(MiddlewareFunctionsConst.OPEN_CONNECTION);
@ -58,11 +56,8 @@ public class ReadCardServiceImpl implements ReadCardService {
connectParam.put("TimeOut", 30000); connectParam.put("TimeOut", 30000);
connectParam.put("ServiceName", LexMarkConst.ID_CARD_READ); connectParam.put("ServiceName", LexMarkConst.ID_CARD_READ);
connect.setParam(connectParam.toJSONString()); connect.setParam(connectParam.toJSONString());
log.info("调用设备连接方法,参数: {}", connect);
IDCardReadResultVO connectResult = thirdServiceUtil.callDevice(connect, IDCardReadResultVO.class); IDCardReadResultVO connectResult = thirdServiceUtil.callDevice(connect, IDCardReadResultVO.class);
log.info("设备连接结果: {}", connectResult);
if (connectResult.getResult() == 0) { if (connectResult.getResult() == 0) {
log.info("设备连接成功,准备读取身份证");
// 身份证读取 // 身份证读取
LexMarkDTO read = new LexMarkDTO(); LexMarkDTO read = new LexMarkDTO();
read.setActionName(MiddlewareFunctionsConst.ACCEPT_AND_READ_TRACKS); read.setActionName(MiddlewareFunctionsConst.ACCEPT_AND_READ_TRACKS);
@ -72,14 +67,10 @@ public class ReadCardServiceImpl implements ReadCardService {
readParam.put("TimeOut", 0); readParam.put("TimeOut", 0);
readParam.put("TrackMap", 776); readParam.put("TrackMap", 776);
read.setParam(readParam.toJSONString()); read.setParam(readParam.toJSONString());
log.info("调用设备读取方法,参数: {}", read);
IDCardReadResultVO readResult = thirdServiceUtil.callDevice(read, IDCardReadResultVO.class); IDCardReadResultVO readResult = thirdServiceUtil.callDevice(read, IDCardReadResultVO.class);
log.info("设备读取结果: {}", readResult);
if (readResult.getResult() == 0) { if (readResult.getResult() == 0) {
log.info("身份证读取成功,开始解析身份证信息");
IDCardReadResultVO.Param resultParam = JSON.parseObject(readResult.getParam().toString(), IDCardReadResultVO.Param.class); IDCardReadResultVO.Param resultParam = JSON.parseObject(readResult.getParam().toString(), IDCardReadResultVO.Param.class);
if (resultParam.getResult() == 0) { if (resultParam.getResult() == 0) {
log.info("身份证信息解析成功,开始封装用户信息");
UserInfoVO userInfoVO = new UserInfoVO(); UserInfoVO userInfoVO = new UserInfoVO();
// 身份证基本信息 解析 // 身份证基本信息 解析
String[] array = Stream.of(resultParam.getChipdata().getDatas().split("\\|")) String[] array = Stream.of(resultParam.getChipdata().getDatas().split("\\|"))
@ -101,34 +92,26 @@ public class ReadCardServiceImpl implements ReadCardService {
// 反面 // 反面
userInfoVO.setBackimage(resultParam.getBackimage().getDatas()); userInfoVO.setBackimage(resultParam.getBackimage().getDatas());
result = Result.ok(userInfoVO); result = Result.ok(userInfoVO);
log.info("用户信息封装成功,返回结果: {}", result);
} else { } else {
result = Result.error("身份证读取失败!"); result = Result.error("身份证读取失败!");
log.error("身份证信息解析失败,返回结果: {}", result);
} }
} else { } else {
result = Result.error(readResult.getDesc()); result = Result.error(readResult.getDesc());
log.error("身份证读取失败,错误信息: {}, 返回结果: {}", readResult.getDesc(), result);
} }
} else { } else {
result = Result.error(connectResult.getDesc()); result = Result.error(connectResult.getDesc());
log.error("设备连接失败,错误信息: {}, 返回结果: {}", connectResult.getDesc(), result);
} }
} finally { } finally {
log.info("准备关闭身份证读卡设备");
// 关闭身份证读卡设备 // 关闭身份证读卡设备
LexMarkDTO close = new LexMarkDTO(); LexMarkDTO close = new LexMarkDTO();
close.setDevName(LexMarkConst.ID_CARD_READ); close.setDevName(LexMarkConst.ID_CARD_READ);
close.setCallID(0); close.setCallID(0);
close.setActionName(MiddlewareFunctionsConst.CLOSE_CONNECTION); close.setActionName(MiddlewareFunctionsConst.CLOSE_CONNECTION);
log.info("调用设备关闭方法,参数: {}", close);
IDCardReadResultVO closeResult = thirdServiceUtil.callDevice(close, IDCardReadResultVO.class); IDCardReadResultVO closeResult = thirdServiceUtil.callDevice(close, IDCardReadResultVO.class);
log.info("设备关闭结果: {}", closeResult);
if (closeResult.getResult() != 0) { if (closeResult.getResult() != 0) {
log.error("身份证读卡设备关闭异常!"); log.info("身份证读卡设备关闭异常!");
} }
} }
log.info("身份证读取流程结束,最终返回结果: {}", result);
return result; return result;
} }
@ -145,10 +128,7 @@ public class ReadCardServiceImpl implements ReadCardService {
@Override @Override
public Result SocialSecurityCardReader() { public Result SocialSecurityCardReader() {
log.info("开始执行社保卡读取流程");
// 社保卡读卡设备连接 // 社保卡读卡设备连接
log.info("准备连接社保卡读卡设备");
LexMarkDTO connect = new LexMarkDTO(); LexMarkDTO connect = new LexMarkDTO();
connect.setActionName(MiddlewareFunctionsConst.OPEN_CONNECTION); connect.setActionName(MiddlewareFunctionsConst.OPEN_CONNECTION);
connect.setCallID(19256); connect.setCallID(19256);
@ -157,14 +137,9 @@ public class ReadCardServiceImpl implements ReadCardService {
connectParam.put("TimeOut", 30000); connectParam.put("TimeOut", 30000);
connectParam.put("ServiceName", LexMarkConst.CARD_READER); connectParam.put("ServiceName", LexMarkConst.CARD_READER);
connect.setParam(connectParam.toJSONString()); connect.setParam(connectParam.toJSONString());
log.info("调用设备连接方法,参数: {}", connect);
IDCardReadResultVO connectResult = thirdServiceUtil.callDevice(connect, IDCardReadResultVO.class); IDCardReadResultVO connectResult = thirdServiceUtil.callDevice(connect, IDCardReadResultVO.class);
log.info("设备连接结果: {}", connectResult);
if (connectResult.getResult() == 0) { if (connectResult.getResult() == 0) {
log.info("社保卡读卡设备连接成功,准备进卡");
// 进卡 // 进卡
log.info("准备执行进卡操作");
LexMarkDTO enterTheCard = new LexMarkDTO(); LexMarkDTO enterTheCard = new LexMarkDTO();
enterTheCard.setActionName(MiddlewareFunctionsConst.ACCEPT_AND_READ_TRACKS); enterTheCard.setActionName(MiddlewareFunctionsConst.ACCEPT_AND_READ_TRACKS);
enterTheCard.setCallID(19256); enterTheCard.setCallID(19256);
@ -174,14 +149,9 @@ public class ReadCardServiceImpl implements ReadCardService {
enterTheCardParam.put("TrackMap", 11); enterTheCardParam.put("TrackMap", 11);
enterTheCardParam.put("TimeOut", 0); enterTheCardParam.put("TimeOut", 0);
enterTheCard.setParam(enterTheCardParam.toJSONString()); enterTheCard.setParam(enterTheCardParam.toJSONString());
log.info("调用进卡方法,参数: {}", enterTheCard);
IDCardReadResultVO enterTheCardResult = thirdServiceUtil.callDevice(enterTheCard, IDCardReadResultVO.class); IDCardReadResultVO enterTheCardResult = thirdServiceUtil.callDevice(enterTheCard, IDCardReadResultVO.class);
log.info("进卡操作结果: {}", enterTheCardResult);
if (enterTheCardResult.getResult() == 0) { if (enterTheCardResult.getResult() == 0) {
log.info("进卡操作成功,准备上电");
// 上电 // 上电
log.info("准备执行上电操作");
LexMarkDTO powerOn = new LexMarkDTO(); LexMarkDTO powerOn = new LexMarkDTO();
powerOn.setActionName(MiddlewareFunctionsConst.CHIPPOWER); powerOn.setActionName(MiddlewareFunctionsConst.CHIPPOWER);
powerOn.setCallID(19256); powerOn.setCallID(19256);
@ -190,14 +160,9 @@ public class ReadCardServiceImpl implements ReadCardService {
powerOnParam.put("PsamNo", 1); powerOnParam.put("PsamNo", 1);
powerOnParam.put("ChipAction", 2); powerOnParam.put("ChipAction", 2);
powerOn.setParam(powerOnParam.toJSONString()); powerOn.setParam(powerOnParam.toJSONString());
log.info("调用上电方法,参数: {}", powerOn);
IDCardReadResultVO powerOnResult = thirdServiceUtil.callDevice(powerOn, IDCardReadResultVO.class); IDCardReadResultVO powerOnResult = thirdServiceUtil.callDevice(powerOn, IDCardReadResultVO.class);
log.info("上电操作结果: {}", powerOnResult);
if (powerOnResult.getResult() == 0) { if (powerOnResult.getResult() == 0) {
log.info("上电操作成功,准备读取社保卡信息");
// 社保卡信息读取 // 社保卡信息读取
log.info("准备读取社保卡信息");
LexMarkDTO socialSecurityCardReader = new LexMarkDTO(); LexMarkDTO socialSecurityCardReader = new LexMarkDTO();
socialSecurityCardReader.setActionName(MiddlewareFunctionsConst.I_READ_CARD_BAS); socialSecurityCardReader.setActionName(MiddlewareFunctionsConst.I_READ_CARD_BAS);
socialSecurityCardReader.setCallID(19256); socialSecurityCardReader.setCallID(19256);
@ -205,12 +170,8 @@ public class ReadCardServiceImpl implements ReadCardService {
JSONObject socialSecurityCardReaderParam = new JSONObject(); JSONObject socialSecurityCardReaderParam = new JSONObject();
socialSecurityCardReaderParam.put("iType", 3); socialSecurityCardReaderParam.put("iType", 3);
socialSecurityCardReader.setParam(socialSecurityCardReaderParam.toJSONString()); socialSecurityCardReader.setParam(socialSecurityCardReaderParam.toJSONString());
log.info("调用读取社保卡信息方法,参数: {}", socialSecurityCardReader);
IDCardReadResultVO socialSecurityCardReaderResult = thirdServiceUtil.callDevice(socialSecurityCardReader, IDCardReadResultVO.class); IDCardReadResultVO socialSecurityCardReaderResult = thirdServiceUtil.callDevice(socialSecurityCardReader, IDCardReadResultVO.class);
log.info("读取社保卡信息结果: {}", socialSecurityCardReaderResult);
if (socialSecurityCardReaderResult.getResult() == 0) { if (socialSecurityCardReaderResult.getResult() == 0) {
log.info("社保卡信息读取成功,开始解析信息");
// 社保信息 // 社保信息
IDCardReadResultVO.SocialSecurityCard resultParam = JSON.parseObject(socialSecurityCardReaderResult.getParam().toString(), IDCardReadResultVO.SocialSecurityCard.class); IDCardReadResultVO.SocialSecurityCard resultParam = JSON.parseObject(socialSecurityCardReaderResult.getParam().toString(), IDCardReadResultVO.SocialSecurityCard.class);
String[] split = resultParam.getRerurnData().split("\\|"); String[] split = resultParam.getRerurnData().split("\\|");
@ -227,22 +188,17 @@ public class ReadCardServiceImpl implements ReadCardService {
socialSecurityCardInfoVO.setExpireDate(split[8]); socialSecurityCardInfoVO.setExpireDate(split[8]);
socialSecurityCardInfoVO.setTerminalNumber(split[9]); socialSecurityCardInfoVO.setTerminalNumber(split[9]);
socialSecurityCardInfoVO.setTerminalDeviceNumber(split[10]); socialSecurityCardInfoVO.setTerminalDeviceNumber(split[10]);
log.info("社保卡信息解析完成,返回成功结果");
return Result.ok(socialSecurityCardInfoVO); return Result.ok(socialSecurityCardInfoVO);
} else { } else {
log.error("社保卡信息读取失败,详情:{}", socialSecurityCardReaderResult.getDesc());
return Result.error("社保卡信息读取失败!详情:" + socialSecurityCardReaderResult.getDesc()); return Result.error("社保卡信息读取失败!详情:" + socialSecurityCardReaderResult.getDesc());
} }
} else { } else {
log.error("社保卡读取设备上电失败,详情:{}", powerOnResult.getDesc());
return Result.error("社保卡读取设备上电失败!详情:" + powerOnResult.getDesc()); return Result.error("社保卡读取设备上电失败!详情:" + powerOnResult.getDesc());
} }
} else { } else {
log.error("社保卡读取设备进卡失败,详情:{}", enterTheCardResult.getDesc());
return Result.error("社保卡读取设备进卡失败!详情:" + enterTheCardResult.getDesc()); return Result.error("社保卡读取设备进卡失败!详情:" + enterTheCardResult.getDesc());
} }
} else { } else {
log.error("社保卡读取设备连接失败,详情:{}", connectResult.getDesc());
return Result.error("社保卡读取设备连接失败!详情:" + connectResult.getDesc()); return Result.error("社保卡读取设备连接失败!详情:" + connectResult.getDesc());
} }
} }
@ -254,10 +210,7 @@ public class ReadCardServiceImpl implements ReadCardService {
*/ */
@Override @Override
public Result cardRefund() { public Result cardRefund() {
log.info("开始执行社保卡退卡流程");
// 社保卡退卡 // 社保卡退卡
log.info("准备发起社保卡退卡请求");
LexMarkDTO cardRefund = new LexMarkDTO(); LexMarkDTO cardRefund = new LexMarkDTO();
cardRefund.setDevName(LexMarkConst.CARD_READER); cardRefund.setDevName(LexMarkConst.CARD_READER);
cardRefund.setCallID(19256); cardRefund.setCallID(19256);
@ -266,30 +219,21 @@ public class ReadCardServiceImpl implements ReadCardService {
cardRefundParam.put("position", 1); cardRefundParam.put("position", 1);
cardRefundParam.put("ejectpos", 1); cardRefundParam.put("ejectpos", 1);
cardRefund.setParam(cardRefundParam.toJSONString()); cardRefund.setParam(cardRefundParam.toJSONString());
log.info("调用设备退卡方法,参数: {}", cardRefund);
IDCardReadResultVO cardRefundResult = thirdServiceUtil.callDevice(cardRefund, IDCardReadResultVO.class); IDCardReadResultVO cardRefundResult = thirdServiceUtil.callDevice(cardRefund, IDCardReadResultVO.class);
log.info("设备退卡操作结果: {}", cardRefundResult);
if (cardRefundResult.getResult() == 0) { if (cardRefundResult.getResult() == 0) {
log.info("社保卡退卡成功,准备关闭社保卡读卡设备");
// 退卡成功再关闭社保卡读卡设备 // 退卡成功再关闭社保卡读卡设备
LexMarkDTO close = new LexMarkDTO(); LexMarkDTO close = new LexMarkDTO();
close.setDevName(LexMarkConst.CARD_READER); close.setDevName(LexMarkConst.CARD_READER);
close.setCallID(0); close.setCallID(0);
close.setActionName(MiddlewareFunctionsConst.CLOSE_CONNECTION); close.setActionName(MiddlewareFunctionsConst.CLOSE_CONNECTION);
log.info("调用设备关闭方法,参数: {}", close);
IDCardReadResultVO closeResult = thirdServiceUtil.callDevice(close, IDCardReadResultVO.class); IDCardReadResultVO closeResult = thirdServiceUtil.callDevice(close, IDCardReadResultVO.class);
log.info("设备关闭操作结果: {}", closeResult);
if (closeResult.getResult() != 0) { if (closeResult.getResult() != 0) {
log.error("社保卡读卡设备关闭异常!"); log.info("社保卡读卡设备关闭异常!");
} }
log.info("社保卡退卡流程完成,退卡成功");
return Result.ok("退卡成功!"); return Result.ok("退卡成功!");
} else { } else {
log.error("退卡失败!请联系工作人员!");
return Result.error("退卡失败!请联系工作人员!"); return Result.error("退卡失败!请联系工作人员!");
} }
} }
} }