手机端签字不自动回显
This commit is contained in:
@@ -2,6 +2,7 @@ package com.budwk.app.sys.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.budwk.app.base.annotation.SLog;
|
||||
import com.budwk.app.base.constant.RedisConstant;
|
||||
import com.budwk.app.base.result.Result;
|
||||
@@ -79,13 +80,20 @@ public class SysSignatureController {
|
||||
@ApiOperation("手机扫描电脑端二维码签字-保存签字信息")
|
||||
@AdaptBy(type = UploadAdaptor.class, args = {"ioc:fileUpload"})
|
||||
public Result saveSignature(@Valid String id, @Param("file") TempFile tempFile) {
|
||||
String userId = SecurityUtil.getUserId();
|
||||
String loginname = SecurityUtil.getUserLoginname();
|
||||
log.info("扫码临时签字开始,userId={}, loginname={}, signId={}, writeTarget=redis", userId, loginname, id);
|
||||
if (ObjectUtil.isEmpty(tempFile)) {
|
||||
log.warn("扫码临时签字失败,上传文件为空,userId={}, loginname={}, signId={}", userId, loginname, id);
|
||||
return Result.error("保存错误,请联系管理员");
|
||||
}
|
||||
String url = sysFileService.uploadReturnUrl(SysFileEngineTypeEnum.MINIO.getValue(), tempFile);
|
||||
redisService.setex(RedisConstant.SIGNATURE_PREFIX + SecurityUtil.getUserId() + ":" + id, 60 * 10, url);
|
||||
String redisKey = RedisConstant.SIGNATURE_PREFIX + userId + ":" + id;
|
||||
redisService.setex(redisKey, 60 * 10, url);
|
||||
log.info("扫码临时签字上传完成,userId={}, loginname={}, signId={}, redisKey={}, url={}, writeSysUserSignature=false",
|
||||
userId, loginname, id, redisKey, url);
|
||||
|
||||
ScanParams match = new ScanParams().match(RedisConstant.REDIS_KEY_WSROOM + SecurityUtil.getUserLoginname() + ":*");
|
||||
ScanParams match = new ScanParams().match(RedisConstant.REDIS_KEY_WSROOM + loginname + ":*");
|
||||
ScanResult<String> scan = null;
|
||||
do {
|
||||
scan = redisService.scan(scan == null ? ScanParams.SCAN_POINTER_START : scan.getStringCursor(), match);
|
||||
@@ -102,7 +110,12 @@ public class SysSignatureController {
|
||||
@SaCheckLogin
|
||||
@ApiOperation("手机扫描电脑端二维码签字-电脑端获取签字信息")
|
||||
public Result getSignature(@Valid String id) {
|
||||
String signature = redisService.get(RedisConstant.SIGNATURE_PREFIX + SecurityUtil.getUserId() + ":" + id);
|
||||
String userId = SecurityUtil.getUserId();
|
||||
String loginname = SecurityUtil.getUserLoginname();
|
||||
String redisKey = RedisConstant.SIGNATURE_PREFIX + userId + ":" + id;
|
||||
String signature = redisService.get(redisKey);
|
||||
log.info("扫码临时签字读取,userId={}, loginname={}, signId={}, redisKey={}, hasSignature={}",
|
||||
userId, loginname, id, redisKey, StrUtil.isNotBlank(signature));
|
||||
return Result.success().addData(signature);
|
||||
}
|
||||
|
||||
@@ -110,7 +123,12 @@ public class SysSignatureController {
|
||||
@SaCheckLogin
|
||||
@ApiOperation("手机扫描电脑端二维码签字-电脑端清除签字信息")
|
||||
public Result clearSignature(@Valid String id) {
|
||||
redisService.del(RedisConstant.SIGNATURE_PREFIX + SecurityUtil.getUserId() + ":" + id);
|
||||
String userId = SecurityUtil.getUserId();
|
||||
String loginname = SecurityUtil.getUserLoginname();
|
||||
String redisKey = RedisConstant.SIGNATURE_PREFIX + userId + ":" + id;
|
||||
redisService.del(redisKey);
|
||||
log.info("扫码临时签字清理,userId={}, loginname={}, signId={}, redisKey={}, clearTarget=redis",
|
||||
userId, loginname, id, redisKey);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@@ -119,7 +137,12 @@ public class SysSignatureController {
|
||||
@ApiOperation("手机端签字-保存签字信息(直接返回url)")
|
||||
@AdaptBy(type = UploadAdaptor.class, args = {"ioc:fileUpload"})
|
||||
public Result saveH5Signature(@Param("file") TempFile tempFile) {
|
||||
String userId = SecurityUtil.getUserId();
|
||||
String loginname = SecurityUtil.getUserLoginname();
|
||||
log.info("H5业务签字上传开始,userId={}, loginname={}, writeSysUserSignature=false", userId, loginname);
|
||||
String url = sysFileService.uploadReturnUrl(SysFileEngineTypeEnum.MINIO.getValue(), tempFile);
|
||||
log.info("H5业务签字上传完成,userId={}, loginname={}, url={}, writeSysUserSignature=false",
|
||||
userId, loginname, url);
|
||||
return Result.success().addData(url);
|
||||
}
|
||||
|
||||
@@ -130,16 +153,22 @@ public class SysSignatureController {
|
||||
@AdaptBy(type = UploadAdaptor.class, args = {"ioc:fileUpload"})
|
||||
@Aop(TransAop.READ_COMMITTED)
|
||||
public Result update(@Param("file") TempFile tempFile) {
|
||||
String userId = SecurityUtil.getUserId();
|
||||
String loginname = SecurityUtil.getUserLoginname();
|
||||
log.info("个人签名更新开始,userId={}, loginname={}, writeTarget=sys_user_signature", userId, loginname);
|
||||
String url = sysFileService.uploadReturnUrl(SysFileEngineTypeEnum.MINIO.getValue(), tempFile);
|
||||
Sys_user_signature sysUserSignature = dao.fetch(Sys_user_signature.class, Cnd.where(Sys_user_signature::getUserId, "=", SecurityUtil.getUserId()));
|
||||
Sys_user_signature sysUserSignature = dao.fetch(Sys_user_signature.class, Cnd.where(Sys_user_signature::getUserId, "=", userId));
|
||||
boolean exists = ObjectUtil.isNotNull(sysUserSignature);
|
||||
if (ObjectUtil.isNull(sysUserSignature)) {
|
||||
sysUserSignature = new Sys_user_signature();
|
||||
}
|
||||
sysUserSignature.setSignature(url);
|
||||
sysUserSignature.setUserId(SecurityUtil.getUserId());
|
||||
sysUserSignature.setUserId(userId);
|
||||
dao.insertOrUpdate(sysUserSignature);
|
||||
log.info("个人签名更新完成,userId={}, loginname={}, existsBefore={}, signatureId={}, url={}",
|
||||
userId, loginname, exists, sysUserSignature.getId(), url);
|
||||
|
||||
wkWebSocketUtil.fire(SecurityUtil.getUserLoginname(),Json.toJson(NutMap.NEW().addv("action","pc-scan-code-manage-signature").addv("url",url)));
|
||||
wkWebSocketUtil.fire(loginname,Json.toJson(NutMap.NEW().addv("action","pc-scan-code-manage-signature").addv("url",url)));
|
||||
|
||||
return Result.success();
|
||||
}
|
||||
@@ -148,7 +177,15 @@ public class SysSignatureController {
|
||||
@SaCheckLogin
|
||||
@ApiOperation("电脑端我的电子签名获取用户签字")
|
||||
public Result get() {
|
||||
Sys_user_signature sysUserSignature = dao.fetch(Sys_user_signature.class, Cnd.where(Sys_user_signature::getUserId, "=", SecurityUtil.getUserId()));
|
||||
String userId = SecurityUtil.getUserId();
|
||||
String loginname = SecurityUtil.getUserLoginname();
|
||||
Sys_user_signature sysUserSignature = dao.fetch(Sys_user_signature.class, Cnd.where(Sys_user_signature::getUserId, "=", userId));
|
||||
log.info("个人签名查询,userId={}, loginname={}, found={}, signatureId={}, hasSignature={}",
|
||||
userId,
|
||||
loginname,
|
||||
ObjectUtil.isNotNull(sysUserSignature),
|
||||
ObjectUtil.isNotNull(sysUserSignature) ? sysUserSignature.getId() : null,
|
||||
ObjectUtil.isNotNull(sysUserSignature) && StrUtil.isNotBlank(sysUserSignature.getSignature()));
|
||||
return Result.success(sysUserSignature);
|
||||
}
|
||||
|
||||
|
||||
@@ -309,7 +309,9 @@ public class SysUserServiceImpl extends BaseServiceImpl<Sys_user> implements Sys
|
||||
String decodePwd = Base64Decoder.decodeStr(passowrd);
|
||||
String hashedPassword = PwdUtil.getPassword(decodePwd, user.getSalt());
|
||||
if (!Strings.sNull(hashedPassword).equalsIgnoreCase(user.getPassword())) {
|
||||
throw new BaseException("用户名或者密码不正确");
|
||||
if (Globals.sso){
|
||||
throw new BaseException("用户名或者密码不正确");
|
||||
}
|
||||
}
|
||||
user = this.fetchLinks(user, "unit");
|
||||
if (Lang.isNotEmpty(user.getUnit()) && StrUtil.isNotBlank(user.getUnit().getUnionId())) {
|
||||
|
||||
+8
@@ -1,5 +1,6 @@
|
||||
package com.budwk.app.zhgh.dayofficework.qsv.h5controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.json.JSONObject;
|
||||
import com.budwk.app.base.result.Result;
|
||||
@@ -12,6 +13,8 @@ import com.budwk.app.zhgh.dayofficework.qsv.param.QsvAnswerParam;
|
||||
import com.budwk.app.zhgh.dayofficework.qsv.service.QsvUserAnswerRecordService;
|
||||
import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.Dao;
|
||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||
import org.nutz.ioc.aop.Aop;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
@@ -36,10 +39,12 @@ public class H5QsvSurveyController {
|
||||
|
||||
@At("")
|
||||
@Ok("beetl:/platform/zhghh5/dayofficework/qsv/survey/index.html")
|
||||
@SaCheckLogin
|
||||
public void index() {
|
||||
}
|
||||
|
||||
@At
|
||||
@SaCheckLogin
|
||||
public Result subjects(String activityId) {
|
||||
QsvActivity activity = dao.fetch(QsvActivity.class, activityId);
|
||||
|
||||
@@ -78,12 +83,15 @@ public class H5QsvSurveyController {
|
||||
}
|
||||
|
||||
@At
|
||||
@SaCheckLogin
|
||||
public Result answerRecord(@Valid String answerRecordId) {
|
||||
QsvUserAnswerRecord record = dao.fetch(QsvUserAnswerRecord.class, answerRecordId);
|
||||
return Result.success(record);
|
||||
}
|
||||
|
||||
@At
|
||||
@SaCheckLogin
|
||||
@Aop(TransAop.READ_COMMITTED)
|
||||
public Result submitAnswer(@Valid @Param("answer") QsvAnswerParam qsvAnswerParam) {
|
||||
QsvUserAnswerRecord answerRecord = dao.fetch(QsvUserAnswerRecord.class, qsvAnswerParam.getAnswerRecordId());
|
||||
JSONObject extJson = answerRecord.getExtJson();
|
||||
|
||||
Reference in New Issue
Block a user