Merge branch 'dev' into test

This commit is contained in:
chenbowen
2025-11-26 12:40:05 +08:00
8 changed files with 35 additions and 6 deletions

View File

@@ -64,6 +64,11 @@
<appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 --> <appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 -->
<appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 --> <appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 -->
</root> </root>
<!--针对不同的业务路径,配置dao层的sql打印日志级别为DEBUG-->
<logger name="com.zt.plat.module.infra.dal.mysql" level="DEBUG" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
</springProfile> </springProfile>
<!-- 其它环境 --> <!-- 其它环境 -->

View File

@@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.zt.plat.framework.common.pojo.PageResult; import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.module.infra.api.file.FileApi; import com.zt.plat.module.infra.api.file.FileApi;
import com.zt.plat.module.infra.api.file.dto.FileCreateReqDTO;
import com.zt.plat.module.mp.controller.admin.material.vo.MpMaterialPageReqVO; import com.zt.plat.module.mp.controller.admin.material.vo.MpMaterialPageReqVO;
import com.zt.plat.module.mp.controller.admin.material.vo.MpMaterialUploadNewsImageReqVO; import com.zt.plat.module.mp.controller.admin.material.vo.MpMaterialUploadNewsImageReqVO;
import com.zt.plat.module.mp.controller.admin.material.vo.MpMaterialUploadPermanentReqVO; import com.zt.plat.module.mp.controller.admin.material.vo.MpMaterialUploadPermanentReqVO;
@@ -218,7 +219,8 @@ public class MpMaterialServiceImpl implements MpMaterialService {
private String uploadFile(String mediaId, File file) { private String uploadFile(String mediaId, File file) {
String path = mediaId + "." + FileTypeUtil.getType(file); String path = mediaId + "." + FileTypeUtil.getType(file);
return fileApi.createFile(FileUtil.readBytes(file), path); FileCreateReqDTO createReqDTO = new FileCreateReqDTO().setName(file.getName()).setDirectory(path).setType(FileTypeUtil.getType(file)).setContent(FileUtil.readBytes(file));
return fileApi.createFile(createReqDTO).getData();
} }
} }

View File

@@ -64,6 +64,11 @@
<appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 --> <appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 -->
<appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 --> <appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 -->
</root> </root>
<!--针对不同的业务路径,配置dao层的sql打印日志级别为DEBUG-->
<logger name="com.zt.plat.module.mp.dal.mysql" level="DEBUG" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
</springProfile> </springProfile>
<!-- 其它环境 --> <!-- 其它环境 -->

View File

@@ -64,6 +64,11 @@
<appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 --> <appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 -->
<appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 --> <appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 -->
</root> </root>
<!--针对不同的业务路径,配置dao层的sql打印日志级别为DEBUG-->
<logger name="com.zt.plat.module.report.dal.mysql" level="DEBUG" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
</springProfile> </springProfile>
<!-- 其它环境 --> <!-- 其它环境 -->

View File

@@ -92,6 +92,10 @@ public class UserSaveReqVO {
@JsonIgnore @JsonIgnore
private boolean skipMobileValidation; private boolean skipMobileValidation;
@Schema(hidden = true)
@JsonIgnore
private boolean skipEmailValidation;
// ========== 仅【创建】时,需要传递的字段 ========== // ========== 仅【创建】时,需要传递的字段 ==========
@Schema(description = "密码", requiredMode = Schema.RequiredMode.REQUIRED, example = "123456") @Schema(description = "密码", requiredMode = Schema.RequiredMode.REQUIRED, example = "123456")

View File

@@ -440,6 +440,7 @@ public class IWorkSyncProcessorImpl implements IWorkSyncProcessor {
req.setStatus(status.getStatus()); req.setStatus(status.getStatus());
req.setSkipAssociationValidation(true); req.setSkipAssociationValidation(true);
req.setSkipMobileValidation(true); req.setSkipMobileValidation(true);
req.setSkipEmailValidation(true);
return req; return req;
} }

View File

@@ -109,7 +109,7 @@ public class AdminUserServiceImpl implements AdminUserService {
// 1.2 校验正确性 // 1.2 校验正确性
validateUserForCreateOrUpdate(null, createReqVO.getUsername(), validateUserForCreateOrUpdate(null, createReqVO.getUsername(),
createReqVO.getMobile(), createReqVO.getEmail(), createReqVO.getDeptIds(), createReqVO.getPostIds(), createReqVO.getMobile(), createReqVO.getEmail(), createReqVO.getDeptIds(), createReqVO.getPostIds(),
createReqVO.isSkipAssociationValidation(), createReqVO.isSkipMobileValidation()); createReqVO.isSkipAssociationValidation(), createReqVO.isSkipMobileValidation(), createReqVO.isSkipEmailValidation());
// 2.1 插入用户 // 2.1 插入用户
AdminUserDO user = BeanUtils.toBean(createReqVO, AdminUserDO.class); AdminUserDO user = BeanUtils.toBean(createReqVO, AdminUserDO.class);
user.setStatus(CommonStatusEnum.ENABLE.getStatus()); user.setStatus(CommonStatusEnum.ENABLE.getStatus());
@@ -155,7 +155,7 @@ public class AdminUserServiceImpl implements AdminUserService {
} }
}); });
// 1.3 校验正确性 // 1.3 校验正确性
validateUserForCreateOrUpdate(null, registerReqVO.getUsername(), null, null, null, null, false, false); validateUserForCreateOrUpdate(null, registerReqVO.getUsername(), null, null, null, null, false, false, false);
// 2. 插入用户 // 2. 插入用户
AdminUserDO user = BeanUtils.toBean(registerReqVO, AdminUserDO.class); AdminUserDO user = BeanUtils.toBean(registerReqVO, AdminUserDO.class);
@@ -175,7 +175,7 @@ public class AdminUserServiceImpl implements AdminUserService {
// 1. 校验正确性 // 1. 校验正确性
AdminUserDO oldUser = validateUserForCreateOrUpdate(updateReqVO.getId(), updateReqVO.getUsername(), AdminUserDO oldUser = validateUserForCreateOrUpdate(updateReqVO.getId(), updateReqVO.getUsername(),
updateReqVO.getMobile(), updateReqVO.getEmail(), updateReqVO.getDeptIds(), updateReqVO.getMobile(), updateReqVO.getEmail(), updateReqVO.getDeptIds(),
updateReqVO.getPostIds(), updateReqVO.isSkipAssociationValidation(), updateReqVO.isSkipMobileValidation()); updateReqVO.getPostIds(), updateReqVO.isSkipAssociationValidation(), updateReqVO.isSkipMobileValidation(), updateReqVO.isSkipEmailValidation());
// 2.1 只更新非空字段 // 2.1 只更新非空字段
AdminUserDO updateObj = new AdminUserDO(); AdminUserDO updateObj = new AdminUserDO();
@@ -515,7 +515,7 @@ public class AdminUserServiceImpl implements AdminUserService {
private AdminUserDO validateUserForCreateOrUpdate(Long id, String username, String mobile, String email, private AdminUserDO validateUserForCreateOrUpdate(Long id, String username, String mobile, String email,
Set<Long> deptIds, Set<Long> postIds, boolean skipAssociationValidation, Set<Long> deptIds, Set<Long> postIds, boolean skipAssociationValidation,
boolean skipMobileValidation) { boolean skipMobileValidation, boolean skipEmailValidation) {
// 关闭数据权限,避免因为没有数据权限,查询不到数据,进而导致唯一校验不正确 // 关闭数据权限,避免因为没有数据权限,查询不到数据,进而导致唯一校验不正确
return DataPermissionUtils.executeIgnore(() -> { return DataPermissionUtils.executeIgnore(() -> {
// 校验用户存在 // 校验用户存在
@@ -527,7 +527,9 @@ public class AdminUserServiceImpl implements AdminUserService {
validateMobileUnique(id, mobile); validateMobileUnique(id, mobile);
} }
// 校验邮箱唯一 // 校验邮箱唯一
validateEmailUnique(id, email); if (!skipEmailValidation) {
validateEmailUnique(id, email);
}
// 校验岗位处于开启状态 // 校验岗位处于开启状态
if (!skipAssociationValidation) { if (!skipAssociationValidation) {
postService.validatePostList(postIds); postService.validatePostList(postIds);

View File

@@ -64,6 +64,11 @@
<appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 --> <appender-ref ref="GRPC"/> <!-- 本地环境下,如果不想接入 SkyWalking 日志服务,可以注释掉本行 -->
<appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 --> <appender-ref ref="ASYNC"/> <!-- 本地环境下,如果不想打印日志,可以注释掉本行 -->
</root> </root>
<!--针对不同的业务路径,配置dao层的sql打印日志级别为DEBUG-->
<logger name="com.zt.plat.module.system.dal.mysql" level="DEBUG" additivity="false">
<appender-ref ref="STDOUT"/>
</logger>
</springProfile> </springProfile>
<!-- 其它环境 --> <!-- 其它环境 -->