Ver Fonte

feat: 校验财务验证码

shc há 2 anos atrás
pai
commit
f2023600b6

+ 30 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/ApiController.java

@@ -17,6 +17,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.zxing.WriterException;
@@ -106,6 +107,7 @@ import com.qunzhixinxi.hnqz.admin.util.Html2ImageByJsWrapper;
 import com.qunzhixinxi.hnqz.admin.util.QRCodeGenerator;
 import com.qunzhixinxi.hnqz.admin.view.user.UserUpdateInput;
 import com.qunzhixinxi.hnqz.common.core.constant.CommonConstants;
+import com.qunzhixinxi.hnqz.common.core.constant.enums.LoginTypeEnum;
 import com.qunzhixinxi.hnqz.common.core.util.R;
 import com.qunzhixinxi.hnqz.common.log.annotation.SysLog;
 import com.qunzhixinxi.hnqz.common.security.annotation.Inner;
@@ -4256,5 +4258,33 @@ public class ApiController {
 
 	}
 
+	/**
+	 * 校验是财务验证码是否存在
+	 *
+	 * @return 校验结果
+	 */
+	@GetMapping(value = "/check-code/for-fina")
+	public R<?> checkFinaCode(@RequestParam(value = "code") String code) {
+
+
+		Integer userId = SecurityUtils.getUser().getId();
+
+		// 获取用户信息判断,是否需要发送验证码
+		SysUser sysUser = sysUserService.getById(userId);
+
+		if (Objects.isNull(sysUser)){
+			log.error("用户不存在");
+			return R.failed("用户不存在");
+		}
+
+		log.info("是否需要发送验证码temp3:{}", sysUser.getTemp3());
+		String username = Objects.isNull(sysUser.getTemp3())  ? sysUser.getUsername() : sysUser.getTemp3();
+
+		final String key = com.qunzhixinxi.hnqz.common.core.constant.CacheConstants.DEFAULT_CODE_KEY + LoginTypeEnum.SMS.getType() + StringPool.AT + username + "@fina";
+
+		return R.ok(redisTemplate.hasKey(key) ? code.equals(redisTemplate.opsForValue().get(key)) : Boolean.FALSE);
+
+	}
+
 
 }