Commit 5429833e by zhu.zewen

优化云签接口

parent 5d131f57
...@@ -22,6 +22,8 @@ import javax.annotation.Resource; ...@@ -22,6 +22,8 @@ import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import static com.jmai.sys.AbstractService.nextId;
@Slf4j @Slf4j
@Component @Component
public class CloudsignService { public class CloudsignService {
...@@ -106,7 +108,7 @@ public class CloudsignService { ...@@ -106,7 +108,7 @@ public class CloudsignService {
/** /**
* PIN码登录 * PIN码登录
*/ */
public LoginByPinResponse loginByPin(PinLoginRequest request){ public LoginByPinResponse loginByPin(LoginByPinRequest request){
request.setLoginType(1); request.setLoginType(1);
// 自动填充业务参数 // 自动填充业务参数
if (cloudSignProperties.getTestEnabled()) { if (cloudSignProperties.getTestEnabled()) {
...@@ -459,11 +461,16 @@ public class CloudsignService { ...@@ -459,11 +461,16 @@ public class CloudsignService {
LocalDateTime expiryTime = getExpiryTimeFromStatus(encryptedToken); LocalDateTime expiryTime = getExpiryTimeFromStatus(encryptedToken);
cloudSignToken.setExpiryTime(expiryTime); cloudSignToken.setExpiryTime(expiryTime);
cloudSignToken.setStatus(1); // 设置为有效状态 cloudSignToken.setStatus(1); // 设置为有效状态
// 保存到数据库
// 先尝试删除旧的令牌记录(如果有) // 先尝试删除旧的令牌记录(如果有)
cloudSignTokenMapper.delete(Wrappers.<CloudSignToken>lambdaUpdate() cloudSignTokenMapper.update(null, Wrappers.lambdaUpdate(CloudSignToken.class)
.eq(CloudSignToken::getUserId, user.getUserId())); .eq(CloudSignToken::getWorkNo, user.getWorkNo())
.set(CloudSignToken::getUpdateBy, SpringContextUtils.getUserId())
.set(CloudSignToken::getUpdateTime, LocalDateTime.now())
.set(CloudSignToken::getDelFlag, 1)
.setSql("workNo ='" + user.getWorkNo() + ":" + nextId() + "'")
);
// 插入新的令牌记录 // 插入新的令牌记录
cloudSignTokenMapper.insert(cloudSignToken); cloudSignTokenMapper.insert(cloudSignToken);
} }
......
...@@ -6,7 +6,7 @@ import lombok.Data; ...@@ -6,7 +6,7 @@ import lombok.Data;
@Data @Data
@ApiModel(value = "PinLoginRequest", description = "PIN码登录请求参数") @ApiModel(value = "PinLoginRequest", description = "PIN码登录请求参数")
public class PinLoginRequest { public class LoginByPinRequest {
@ApiModelProperty(value = "深圳市卫生计生组织机构代码,每个医院均有独立编码", hidden = true) @ApiModelProperty(value = "深圳市卫生计生组织机构代码,每个医院均有独立编码", hidden = true)
private String businessOrgCode; private String businessOrgCode;
......
...@@ -39,8 +39,6 @@ public class CloudSignController extends AbstractService { ...@@ -39,8 +39,6 @@ public class CloudSignController extends AbstractService {
@Resource @Resource
private CloudSignTokenMapper cloudSignTokenMapper; private CloudSignTokenMapper cloudSignTokenMapper;
@PostMapping("/checkTokenValid") @PostMapping("/checkTokenValid")
@ApiOperation(value = "检查当前用户令牌有效性") @ApiOperation(value = "检查当前用户令牌有效性")
public ResponseData<Void> checkTokenValid() { public ResponseData<Void> checkTokenValid() {
...@@ -50,17 +48,20 @@ public class CloudSignController extends AbstractService { ...@@ -50,17 +48,20 @@ public class CloudSignController extends AbstractService {
@PostMapping("/loginByPin") @PostMapping("/loginByPin")
@ApiOperation(value = "PIN码登录") @ApiOperation(value = "PIN码登录")
public ResponseData<LoginByPinResponse> loginByPin(@RequestBody PinLoginRequest pinLoginRequest) { public ResponseData<LoginByPinResponse> loginByPin(@RequestBody LoginByPinRequest req) {
String workNo = SpringContextUtils.getWorkNo(); String workNo = SpringContextUtils.getWorkNo();
if (ObjectUtil.isEmpty(workNo)) { if (ObjectUtil.isEmpty(workNo)) {
throw new ServiceException("当前用户工号为空"); throw new ServiceException("当前用户工号为空");
} }
pinLoginRequest.setRelBizNo(workNo); req.setRelBizNo(workNo);
pinLoginRequest.setUserEncodePin(pinLoginRequest.getUserEncodePin()); req.setUserEncodePin(req.getUserEncodePin());
// 现在业务参数和测试环境配置会在服务层自动处理 // 现在业务参数和测试环境配置会在服务层自动处理
LoginByPinResponse pinLogin = cloudsignService.loginByPin(pinLoginRequest); LoginByPinResponse pinLogin = cloudsignService.loginByPin(req);
if (ObjectUtil.isNotEmpty(pinLogin) && ObjectUtil.isNotEmpty(pinLogin.getEventValue())) {
pinLogin.getEventValue().setEncryptedToken("【已保存】");
}
return ResponseData.ok(pinLogin); return ResponseData.ok(pinLogin);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment