|
@@ -5,6 +5,7 @@ import cn.rankin.data.api.user.dto.TerminalDeviceDTO;
|
|
|
import cn.rankin.data.api.user.entity.TerminalDevice;
|
|
|
import cn.rankin.userservice.code.UserServiceAPICode;
|
|
|
import cn.rankin.userservice.repository.TerminalDeviceRepository;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -12,6 +13,7 @@ import org.springframework.stereotype.Service;
|
|
|
import javax.transaction.Transactional;
|
|
|
import java.util.List;
|
|
|
|
|
|
+@Slf4j
|
|
|
@Service
|
|
|
public class TerminalDeviceService {
|
|
|
|
|
@@ -32,13 +34,17 @@ public class TerminalDeviceService {
|
|
|
String terminal = terminalDeviceDTO.getTerminal();
|
|
|
|
|
|
TerminalDevice terminalDevice = terminalDeviceRepository.findByUserId(userId);
|
|
|
+
|
|
|
if (terminalDevice != null) {
|
|
|
if(!deviceCode.equals(terminalDevice.getDeviceCode())){
|
|
|
//存在设备号不一致,账号被其他设备使用中
|
|
|
return APIResult.error(UserServiceAPICode.USER_IS_BOUND);
|
|
|
}else{
|
|
|
//根据设备号,merchant,删除设备绑定记录,后面会重新添加绑定关系
|
|
|
- deleteTerminalDeviceByDeviceCodeMerchant(deviceCode, merchant);
|
|
|
+ //deleteTerminalDeviceByDeviceCodeMerchant(deviceCode, merchant);
|
|
|
+ //根据设备号,merchant,删除设备绑定记录,后面会重新添加绑定关系
|
|
|
+ log.info("uid=,{}",userId);
|
|
|
+ deleteTerminalDeviceByUid(userId);
|
|
|
terminalDeviceBindLogService.insert(deviceCode, merchant, userId, brand, ip, modelNo, terminal+"_del");
|
|
|
}
|
|
|
}
|
|
@@ -58,6 +64,10 @@ public class TerminalDeviceService {
|
|
|
return APIResult.ok(deviceBind);
|
|
|
}
|
|
|
|
|
|
+ private void deleteTerminalDeviceByUid(String userId) {
|
|
|
+ terminalDeviceRepository.deleteByUserId(userId);
|
|
|
+ }
|
|
|
+
|
|
|
private void deleteTerminalDeviceByDeviceCodeMerchant(String deviceCode, String merchant) {
|
|
|
terminalDeviceRepository.deleteByDeviceCodeAndMerchant(deviceCode, merchant);
|
|
|
terminalDeviceRepository.deleteByDeviceCodeAndMerchant(deviceCode, null);
|