Merge branch 'dev' into dev_WMS20260401

# Conflicts:
#	mhd_wms/src/main/java/com/mhd/wms/domain/shelfMaterialDetail/repository/persistence/ShelfMaterialDetailImpl.java
This commit is contained in:
赵辉
2026-04-28 13:41:57 +08:00
20 changed files with 249 additions and 22 deletions
@@ -460,7 +460,7 @@ public class UserDriverApplicationService {
userDO.setAvatar(userDriverDO.getAvatar());
userDO.setUserAccount(userDriverDO.getUserAccount()); // 账号通常是手机号
userDO.setUserName(userDriverDO.getUserName()); // 真实姓名
userDO.setUserPhone(userDriverDO.getUserAccount()); // 手机号
userDO.setUserPhone(userDriverDO.getUserPhone()); // 手机号
userDO.setBusinessType(userDriverDO.getBusinessType()); // 业务类型已在 determineAndSetBusinessType 中确定
if (StringUtils.isBlank(userDO.getUserAccount())) {
@@ -469,6 +469,9 @@ public class UserDriverApplicationService {
if (StringUtils.isBlank(userDO.getUserName())) {
throw new ServiceException("用户姓名不能为空");
}
if (StringUtils.isBlank(userDO.getUserPhone())) {
throw new ServiceException("用户电话不能为空");
}
UserPo newUserPo = userApplicationService.addDriverUser(userDO);
userDriverDO.setUserId(newUserPo.getUserId()); // 回填新生成的userId到userDriverDO
@@ -612,7 +612,7 @@ public class UserDriverEnterpriseApplicationService {
BeanUtils.copyProperties(userDriverEnterpriseDo, userDO, IgnoreNullUtil.getNullPropertyNames(userDriverEnterpriseDo));
// 关键信息设置
userDO.setUserPhone(userDriverEnterpriseDo.getUserAccount()); // 手机号通常作为账号
// userDO.setUserPhone(userDriverEnterpriseDo.getUserAccount()); // 手机号通常作为账号
// userDO.setUserName(userDriverEnterpriseDo.getEnterpriseName()); // 或其他表示用户名的字段
if (userDriverEnterpriseDo.getUserId() == null) {
@@ -322,6 +322,8 @@ public class UserShipperApplicationService {
//========================用户注册===========================
UserDO userDO = new UserDO();
userDO.setAvatar(userShipperDO.getAvatar());
//账号唯一性检验
checkUserAccountUnique(userShipperDO.getUserAccount(),null,configSwitch.getTopOrganizationId());
userDO.setUserAccount(userShipperDO.getUserAccount());
userDO.setUserName(userShipperDO.getUserName());
userDO.setUserId(userShipperDO.getUserId());
@@ -333,7 +335,8 @@ public class UserShipperApplicationService {
userDO.setRoleName(roleName);
}
userDO.setUserPhone(userShipperDO.getUserAccount());
userDO.setUserPhone(userShipperDO.getUserPhone());
userShipperDO.setShipperType(1);
userShipperDO.setDelFlag(1);
@@ -1182,4 +1185,29 @@ public class UserShipperApplicationService {
// 根据userId查询货主信息
return userShipperDomainService.selectByUserId(userId);
}
/**
* 校验登录账号唯一性
* @param userAccount 登录账号
* @param userId 用户ID编辑时传入用于排除自身新增时传null
* @param topOrganizationId 顶级组织ID
*/
private void checkUserAccountUnique(String userAccount, Long userId, Long topOrganizationId) {
if (StringUtils.isBlank(userAccount)) {
return; // 账号为空不校验
}
UserDO checkDO = new UserDO();
checkDO.setTopOrganizationId(topOrganizationId);
checkDO.setUserAccount(userAccount);
checkDO.setUserId(userId);
UserPo existUser = userDomainService.findByTopOrganizationIdAndUserAccount(checkDO);
if (existUser != null) {
throw new ServiceException("登录账号已存在");
}
}
}