Merge remote-tracking branch 'origin/master'

liweidong
绫Umbrella 5 days ago
commit e76635c1dc
  1. 63
      blade-auth/src/main/java/org/springblade/core/oauth2/exception/ExceptionCode.java
  2. 4
      blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java
  3. 4
      blade-service-api/blade-user-api/src/main/java/org/springblade/system/pojo/entity/User.java
  4. 44
      blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsPartServiceImpl.java
  5. 35
      blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsTaskingServiceImpl.java
  6. 3
      blade-service/blade-system/src/main/java/org/springblade/system/excel/UserExcel.java
  7. 3
      blade-service/blade-system/src/main/java/org/springblade/system/mapper/UserMapper.xml

@ -0,0 +1,63 @@
package org.springblade.core.oauth2.exception;
import lombok.Generated;
/**
* @author 石玖洲
* @Description
* @create 2026-04-18 10:22
*/
public enum ExceptionCode implements Oauth2ExceptionCode {
INVALID_REQUEST(2000, "无效请求"),
USER_NOT_FOUND(2001, "用户不存在"),
USER_TENANT_NOT_FOUND(2002, "用户租户不存在"),
USER_TOO_MANY_FAILS(2003, "用户登录失败次数过多"),
INVALID_USER(2004, "用户密码错误"),
INVALID_USER_PASSWORD(2004, "用户密码强度过低"),
UNAUTHORIZED_USER(2005, "认证信息错误或无效"),
UNAUTHORIZED_USER_TENANT(2006, "用户租户未授权"),
INVALID_REFRESH_TOKEN(2010, "令牌刷新错误或无效"),
CLIENT_NOT_FOUND(3000, "客户端不存在"),
INVALID_CLIENT(3001, "客户端认证失败"),
INVALID_CLIENT_REDIRECT_URI(3002, "客户端未授权"),
UNAUTHORIZED_CLIENT(3003, "客户端未授权"),
UNSUPPORTED_GRANT_TYPE(4000, "不支持的授权类型"),
INVALID_GRANTER(4001, "无效的授权类型"),
INVALID_SCOPE(4002, "授权范围"),
SERVER_ERROR(5000, "服务器错误"),
ACCESS_DENIED(5001, "访问被拒绝"),
TEMPORARILY_UNAVAILABLE(5002, "服务暂不可用");
final int code;
final String message;
public static org.springblade.core.oauth2.exception.ExceptionCode of(int code) {
org.springblade.core.oauth2.exception.ExceptionCode[] var1 = values();
int var2 = var1.length;
for(int var3 = 0; var3 < var2; ++var3) {
org.springblade.core.oauth2.exception.ExceptionCode value = var1[var3];
if (value.code == code) {
return value;
}
}
throw new IllegalArgumentException(String.format("无效的错误代码: %s", code));
}
@Generated
public int getCode() {
return this.code;
}
@Generated
public String getMessage() {
return this.message;
}
@Generated
private ExceptionCode(final int code, final String message) {
this.code = code;
this.message = message;
}
}

@ -32,8 +32,8 @@ public interface LauncherConstant {
* nacos dev 地址
*/
String NACOS_DEV_ADDR = "192.168.249.27:8848";
// String NACOS_DEV_ADDR = "127.0.0.1:8848";
// String NACOS_DEV_ADDR = "192.168.249.27:8848";
String NACOS_DEV_ADDR = "127.0.0.1:8848";
/**R
* nacos prod 地址

@ -114,9 +114,5 @@ public class User extends TenantEntity {
* 是否主管
*/
private Integer isLeader;
/**
* 工号
*/
private String workNo;
}

@ -446,33 +446,31 @@ public class DsPartServiceImpl extends BaseServiceImpl<DsPartMapper, DsPartEntit
DsPartEntity partEntity = dsPartMapper.selectById(partVersionEntity.getPartId());
DsPartSynthesisVO dsPartSynthesisVO = new DsPartSynthesisVO();
//查询子件信息
if (TaskingConstant.IS_SINTERING.equals(partEntity.getIsSintering())) {
List<DsPartRelationEntity> partRelationEntityList = partRelationService.selectDsPartRelationByPartId(partEntity.getId());
if(!CollectionUtils.isEmpty(partRelationEntityList)){
List<Long> idList = partRelationEntityList.stream()
.map(DsPartRelationEntity::getChildPartId)
.collect(Collectors.toList());
List<DsPartRelationEntity> partRelationEntityList = partRelationService.selectDsPartRelationByPartId(partEntity.getId());
if(!CollectionUtils.isEmpty(partRelationEntityList)){
List<Long> idList = partRelationEntityList.stream()
.map(DsPartRelationEntity::getChildPartId)
.collect(Collectors.toList());
List<DsPartEntity> dsPartEntityList = dsPartMapper.selectDsPartByIds(idList);
List<DsPartEntity> dsPartEntityList = dsPartMapper.selectDsPartByIds(idList);
List<DsPartVO> dsPartVOList = dsPartEntityList.stream()
.map(entity -> {
DsPartVO vo = new DsPartVO();
BeanUtils.copyProperties(entity, vo);
List<DsPartVO> dsPartVOList = dsPartEntityList.stream()
.map(entity -> {
DsPartVO vo = new DsPartVO();
BeanUtils.copyProperties(entity, vo);
if (vo.getUpdateUser() != null) {
String userName = userClient.userInfo(Func.toLong(vo.getUpdateUser()))
.getData()
.getUser()
.getName();
vo.setUpdateUserStr(userName);
}
return vo;
})
.collect(Collectors.toList());
if (vo.getUpdateUser() != null) {
String userName = userClient.userInfo(Func.toLong(vo.getUpdateUser()))
.getData()
.getUser()
.getName();
vo.setUpdateUserStr(userName);
}
return vo;
})
.collect(Collectors.toList());
dsPartSynthesisVO.setDsPartVOList(dsPartVOList);
}
dsPartSynthesisVO.setDsPartVOList(dsPartVOList);
}
dsPartSynthesisVO.setDsPartEntity(partEntity);

@ -1851,28 +1851,19 @@ public class DsTaskingServiceImpl extends BaseServiceImpl<DsTaskingMapper, DsTas
log.info("开始处理子件:{}", subCode);
try {
// 1. 查询子件老MES数据(null仅代表无该子件的详细数据,不代表跳过)
DsPartEntity oldMesSubPart = getOldMesPart(subCode);
if (oldMesSubPart == null) {
// 子件无老MES详细数据,创建空的基础对象(保证核心逻辑能执行)
log.warn("子件 {} 无老MES详细数据,创建基础空对象处理", subCode);
oldMesSubPart = new DsPartEntity();
if(!StringUtils.isEmpty(subPartInfo.getSubName())){
oldMesSubPart.setPartName(subPartInfo.getSubName());
}
oldMesSubPart.setPartCode(subPartInfo.getSubCode());
oldMesSubPart.setQuota(subPartInfo.getQuota());
oldMesSubPart.setSubType(subPartInfo.getSubType());
oldMesSubPart.setProductType(subPartInfo.getProductType());
oldMesSubPart.setArea(subPartInfo.getArea());
oldMesSubPart.setConfigCode(subPartInfo.getConfigNo());
oldMesSubPart.setPlate(subPartInfo.getPlate());
oldMesSubPart.setMaterial(subPartInfo.getMaterial());
oldMesSubPart.setPlateCode(subPartInfo.getPlateCode());
oldMesSubPart.setSinTerType(subPartInfo.getSinTerType());
}
// 1. 处理子件数据进行赋值
DsPartEntity oldMesSubPart = new DsPartEntity();
oldMesSubPart.setPartName(subPartInfo.getSubName());
oldMesSubPart.setPartCode(subPartInfo.getSubCode());
oldMesSubPart.setQuota(subPartInfo.getQuota());
oldMesSubPart.setSubType(subPartInfo.getSubType());
oldMesSubPart.setProductType(subPartInfo.getProductType());
oldMesSubPart.setArea(subPartInfo.getArea());
oldMesSubPart.setConfigCode(subPartInfo.getConfigNo());
oldMesSubPart.setPlate(subPartInfo.getPlate());
oldMesSubPart.setMaterial(subPartInfo.getMaterial());
oldMesSubPart.setPlateCode(subPartInfo.getPlateCode());
oldMesSubPart.setSinTerType(subPartInfo.getSinTerType());
// 2. 递归处理当前子件自身(生成版本号、创建零件、同步工艺等核心逻辑)
DsPartEntity newSubPart = processPartRecursively(oldMesSubPart);

@ -53,6 +53,9 @@ public class UserExcel implements Serializable {
@ExcelProperty("租户编号")
private String tenantId;
@ExcelProperty("用户工号")
private String code;
@ExcelIgnore
@ExcelProperty("用户平台")
private String userType;

@ -90,6 +90,9 @@
<if test="user.status!=null and user.status>=0">
and status = #{user.status}
</if>
<if test="user.code != null and user.code != ''">
and code = #{user.code}
</if>
<if test="deptIdList!=null and deptIdList.size>0">
and id in (
SELECT

Loading…
Cancel
Save