Browse Source

组态大屏设计,bug修复

thing_master
xiachao 1 year ago
parent
commit
f02e07c9b7
  1. 20
      common/core/src/main/java/com/thing/common/core/utils/HttpContextUtils.java
  2. 1
      modules/carbon-track/src/main/java/com/thing/carbontrack/event/standardcal/listener/ProductionResultListener.java
  3. 2
      modules/visual-design/src/main/java/com/thing/visual/board/dto/IotVisualManageDTO.java
  4. 2
      modules/visual-design/src/main/java/com/thing/visual/board/entity/IotVisualManageEntity.java
  5. 13
      modules/visual-design/src/main/java/com/thing/visual/board/service/impl/IotVisualManageServiceImpl.java
  6. 7
      modules/visual-design/src/main/java/com/thing/visual/configuration/service/impl/IotVisualDesignServiceImpl.java
  7. 4
      modules/visual-design/src/main/java/com/thing/visual/group/service/impl/IotVisualGroupServiceImpl.java
  8. 4
      modules/visual-design/src/main/java/com/thing/visual/material/dto/IotVisualMaterialDTO.java
  9. 17
      modules/visual-design/src/main/java/com/thing/visual/material/service/impl/IotVisualMaterialServiceImpl.java

20
common/core/src/main/java/com/thing/common/core/utils/HttpContextUtils.java

@ -83,14 +83,18 @@ public class HttpContextUtils {
public static String getLanguage() { public static String getLanguage() {
//默认语言 //默认语言
String defaultLanguage = "zh-CN"; String defaultLanguage = "zh-CN";
// //request
// HttpServletRequest request = getHttpServletRequest();
// if(request == null){
// return defaultLanguage;
// }
//
// //请求语言
// defaultLanguage = request.getHeader(HttpHeaders.ACCEPT_LANGUAGE);
//request
HttpServletRequest request = getHttpServletRequest();
if(request == null){
return defaultLanguage;
}
//请求语言
try {
defaultLanguage = request.getHeader(HttpHeaders.ACCEPT_LANGUAGE);
} catch (Exception e) {
throw new RuntimeException(e);
}
return defaultLanguage; return defaultLanguage;
} }

1
modules/carbon-track/src/main/java/com/thing/carbontrack/event/standardcal/listener/ProductionResultListener.java

@ -68,7 +68,6 @@ public class ProductionResultListener {
* 计算产品批次碳足迹 * 计算产品批次碳足迹
* @param production * @param production
*/ */
@Transactional
public synchronized void calculate(ProductionPage production){ public synchronized void calculate(ProductionPage production){
try { try {
QuantityDto quantityDto = iotCarbonProductionRecordService.getQuantityByMidAndPrCode(production.getMId(),production.getPrCode()); QuantityDto quantityDto = iotCarbonProductionRecordService.getQuantityByMidAndPrCode(production.getMId(),production.getPrCode());

2
modules/visual-design/src/main/java/com/thing/visual/board/dto/IotVisualManageDTO.java

@ -51,6 +51,6 @@ public class IotVisualManageDTO implements Serializable {
@Schema(description = "所属企业(租户code)") @Schema(description = "所属企业(租户code)")
private Long tenantCode; private Long tenantCode;
private Integer isDefault;
} }

2
modules/visual-design/src/main/java/com/thing/visual/board/entity/IotVisualManageEntity.java

@ -49,4 +49,6 @@ public class IotVisualManageEntity extends BaseInfoEntity {
*/ */
private String previewUrl; private String previewUrl;
private Integer isDefault;
} }

13
modules/visual-design/src/main/java/com/thing/visual/board/service/impl/IotVisualManageServiceImpl.java

@ -29,6 +29,7 @@ import com.thing.sys.biz.service.SysMenuService;
import com.thing.sys.biz.service.SysRoleMenuService; import com.thing.sys.biz.service.SysRoleMenuService;
import com.thing.sys.biz.service.SysRoleService; import com.thing.sys.biz.service.SysRoleService;
import com.thing.sys.security.context.TenantContext; import com.thing.sys.security.context.TenantContext;
import com.thing.sys.security.context.UserContext;
import com.thing.sys.security.domain.SecurityUser; import com.thing.sys.security.domain.SecurityUser;
import com.thing.sys.security.domain.UserDetail; import com.thing.sys.security.domain.UserDetail;
import com.thing.util.TenantSubsetUtil; import com.thing.util.TenantSubsetUtil;
@ -56,6 +57,8 @@ import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.mybatisflex.core.query.QueryMethods.column; import static com.mybatisflex.core.query.QueryMethods.column;
import static com.thing.visual.board.entity.table.IotVisualManageEntityTableDef.IOT_VISUAL_MANAGE_ENTITY;
import static com.thing.visual.component.entity.table.IotVisualComponentEntityTableDef.IOT_VISUAL_COMPONENT_ENTITY;
/** /**
* 组态大屏管理 * 组态大屏管理
@ -88,7 +91,8 @@ public class IotVisualManageServiceImpl extends BaseServiceImpl<IotVisualManageM
@Override @Override
public QueryWrapper getWrapper(Map<String, Object> params){ public QueryWrapper getWrapper(Map<String, Object> params){
QueryColumn nameColumn = column("name"); QueryColumn nameColumn = column("name");
QueryColumn idColumn = column("id::varchar");
QueryColumn idColumn = column("id");
Long tenantCode = UserContext.getTenantCode();
QueryWrapper wrapper = new QueryWrapper(); QueryWrapper wrapper = new QueryWrapper();
String type = (String) params.get("type"); String type = (String) params.get("type");
@ -105,10 +109,13 @@ public class IotVisualManageServiceImpl extends BaseServiceImpl<IotVisualManageM
String ids = (String) params.get("ids"); String ids = (String) params.get("ids");
if(StringUtils.isNotBlank(ids)&&!"null".equals(params.get("ids"))){ if(StringUtils.isNotBlank(ids)&&!"null".equals(params.get("ids"))){
List<String> idList = Arrays.asList(ids.split(","));
List<Long> idList = Arrays.stream(ids.split(","))
.map(String::trim) // 去掉可能的空格
.map(Long::parseLong) // 将每个字符串转换为 Long
.collect(Collectors.toList());
wrapper.in( "id", idList,CollectionUtils.isNotEmpty(idList)); wrapper.in( "id", idList,CollectionUtils.isNotEmpty(idList));
} }
wrapper.in("tenant_code",tenantSubsetUtil.paramsAddTenantCodeList(true));
wrapper.and(IOT_VISUAL_MANAGE_ENTITY.TENANT_CODE.eq(tenantCode).or(IOT_VISUAL_MANAGE_ENTITY.IS_DEFAULT.eq(0)));
return wrapper; return wrapper;
} }

7
modules/visual-design/src/main/java/com/thing/visual/configuration/service/impl/IotVisualDesignServiceImpl.java

@ -114,13 +114,16 @@ public class IotVisualDesignServiceImpl extends BaseServiceImpl<IotVisualDesignM
wrapper.eq("board_manage_id",id); wrapper.eq("board_manage_id",id);
IotVisualDesignDTO data = this.getOneAs(wrapper, IotVisualDesignDTO.class); IotVisualDesignDTO data = this.getOneAs(wrapper, IotVisualDesignDTO.class);
IotVisualManageEntity manageEntity = iotVisualManageService.getById(id);
IotVisualManageEntity manageEntity = iotVisualManageService.getById(id);
data.setThumbnailUrl(manageEntity.getThumbnailUrl()); data.setThumbnailUrl(manageEntity.getThumbnailUrl());
data.setPageName(manageEntity.getName()); data.setPageName(manageEntity.getName());
data.setPreviewUrl(manageEntity.getPreviewUrl()); data.setPreviewUrl(manageEntity.getPreviewUrl());
if(ObjectUtil.isNotEmpty(data)){ if(ObjectUtil.isNotEmpty(data)){
if(StringUtils.isNotBlank(data.getApiSetIds())){ if(StringUtils.isNotBlank(data.getApiSetIds())){
List<String> apiIds = Arrays.asList(data.getApiSetIds().split(","));
List<Long> apiIds = Arrays.stream(data.getApiSetIds().split(","))
.map(String::trim) // 去掉可能的空格
.map(Long::parseLong) // 将每个字符串转换为 Long
.collect(Collectors.toList());
if(!apiIds.isEmpty()){ if(!apiIds.isEmpty()){
data.setIotThingApiDTOList( ConvertUtils.sourceToTarget(iotThingApiDao.selectListByIds(apiIds), IotThingApiDTO.class)); data.setIotThingApiDTOList( ConvertUtils.sourceToTarget(iotThingApiDao.selectListByIds(apiIds), IotThingApiDTO.class));
} }

4
modules/visual-design/src/main/java/com/thing/visual/group/service/impl/IotVisualGroupServiceImpl.java

@ -95,12 +95,12 @@ public class IotVisualGroupServiceImpl extends BaseServiceImpl<IotVisualGroupMap
.set(IotVisualGroupEntity::getThumbnailUrl,dto.getThumbnailUrl()) .set(IotVisualGroupEntity::getThumbnailUrl,dto.getThumbnailUrl())
.set(IotVisualGroupEntity::getBusinessName,dto.getBusinessName()) .set(IotVisualGroupEntity::getBusinessName,dto.getBusinessName())
.set(IotVisualGroupEntity::getRemark,dto.getRemark()) .set(IotVisualGroupEntity::getRemark,dto.getRemark())
.where(IotVisualGroupEntity::getName).eq(dto.getName()).eq(IotVisualGroupEntity::getBusinessName,temp.getName())
.where(IotVisualGroupEntity::getName).eq(dto.getName()).eq(IotVisualGroupEntity::getBusinessName,dto.getOldName())
.update(); .update();
}else { }else {
UpdateChain.of(IotVisualGroupEntity.class) UpdateChain.of(IotVisualGroupEntity.class)
.set(IotVisualGroupEntity::getBsSort, temp.getSort()) .set(IotVisualGroupEntity::getBsSort, temp.getSort())
.where(IotVisualGroupEntity::getName).eq(dto.getName()).eq(IotVisualGroupEntity::getBusinessName,temp.getName())
.where(IotVisualGroupEntity::getName).eq(dto.getName()).eq(IotVisualGroupEntity::getBusinessName,dto.getOldName())
.update(); .update();
} }
}); });

4
modules/visual-design/src/main/java/com/thing/visual/material/dto/IotVisualMaterialDTO.java

@ -50,11 +50,11 @@ public class IotVisualMaterialDTO implements Serializable {
@Schema(description = "创建者") @Schema(description = "创建者")
private Long creator; private Long creator;
@Schema(description = "创建时间") @Schema(description = "创建时间")
private Date createDate;
private Long createDate;
@Schema(description = "更新者") @Schema(description = "更新者")
private Long updater; private Long updater;
@Schema(description = "更新时间") @Schema(description = "更新时间")
private Date updateDate;
private Long updateDate;
@Schema(description = "是否可以编辑 0可编辑 1不可编辑") @Schema(description = "是否可以编辑 0可编辑 1不可编辑")
private String isOperate ="0"; private String isOperate ="0";

17
modules/visual-design/src/main/java/com/thing/visual/material/service/impl/IotVisualMaterialServiceImpl.java

@ -72,9 +72,6 @@ public class IotVisualMaterialServiceImpl extends BaseServiceImpl<IotVisualMater
@Override @Override
public QueryWrapper getWrapper(Map<String, Object> params){ public QueryWrapper getWrapper(Map<String, Object> params){
QueryColumn is_default = column("is_default");
QueryColumn tenant_code = column("tenant_code");
QueryWrapper wrapper = new QueryWrapper(); QueryWrapper wrapper = new QueryWrapper();
wrapper.leftJoin("iot_visual_group").on("iot_visual_material.group_id = iot_visual_group.id"); wrapper.leftJoin("iot_visual_group").on("iot_visual_material.group_id = iot_visual_group.id");
@ -88,14 +85,14 @@ public class IotVisualMaterialServiceImpl extends BaseServiceImpl<IotVisualMater
} }
String type = (String) params.get("type"); String type = (String) params.get("type");
wrapper.like("type", type,StringUtils.isNotBlank(type));
wrapper.like("iot_visual_material.type", type,StringUtils.isNotBlank(type));
String name = (String) params.get("name"); String name = (String) params.get("name");
wrapper.like( "name", name,StringUtils.isNotBlank(name));
wrapper.like( "iot_visual_material.name", name,StringUtils.isNotBlank(name));
ArrayList ids = MapUtil.get(params, "ids",ArrayList.class); ArrayList ids = MapUtil.get(params, "ids",ArrayList.class);
if (ObjectUtil.isNotNull(ids)&& !ids.isEmpty()) { if (ObjectUtil.isNotNull(ids)&& !ids.isEmpty()) {
wrapper.in("id", ids);
wrapper.in("iot_visual_material.id", ids);
} }
wrapper.and(is_default.eq(0).or(tenant_code.eq(UserContext.getTenantCode())));
wrapper.and("( iot_visual_material.is_default = 0 or iot_visual_material.tenant_code = "+UserContext.getTenantCode()+")");
wrapper.orderBy("iot_visual_group.sort,iot_visual_group.bs_sort,iot_visual_material.sort",true); wrapper.orderBy("iot_visual_group.sort,iot_visual_group.bs_sort,iot_visual_material.sort",true);
return wrapper; return wrapper;
} }
@ -200,7 +197,7 @@ public class IotVisualMaterialServiceImpl extends BaseServiceImpl<IotVisualMater
public Result saveBatch(IotVisualMaterialDTO[] dtos) { public Result saveBatch(IotVisualMaterialDTO[] dtos) {
try { try {
for (IotVisualMaterialDTO dto : dtos) { for (IotVisualMaterialDTO dto : dtos) {
this.saveIotSourceMaterialDTO(dto);
this.saveIotSourceMaterialDTO(dto);
} }
} catch (SysException e) { } catch (SysException e) {
return new Result().error("批量新增失败"); return new Result().error("批量新增失败");
@ -214,7 +211,7 @@ public class IotVisualMaterialServiceImpl extends BaseServiceImpl<IotVisualMater
QueryWrapper wrapper = new QueryWrapper(); QueryWrapper wrapper = new QueryWrapper();
wrapper.select(max(IOT_VISUAL_MATERIAL_ENTITY.SORT).as("sort")) wrapper.select(max(IOT_VISUAL_MATERIAL_ENTITY.SORT).as("sort"))
.from(IOT_VISUAL_MATERIAL_ENTITY).eq(IotVisualMaterialEntity::getGroupId,groupId); .from(IOT_VISUAL_MATERIAL_ENTITY).eq(IotVisualMaterialEntity::getGroupId,groupId);
wrapper.and(IOT_VISUAL_MATERIAL_ENTITY.TENANT_CODE.eq(tenantCode).or(IOT_VISUAL_MATERIAL_ENTITY.IS_DEFAULT.eq("1")));
wrapper.and(IOT_VISUAL_MATERIAL_ENTITY.TENANT_CODE.eq(tenantCode).or(IOT_VISUAL_MATERIAL_ENTITY.IS_DEFAULT.eq(1)));
Integer number = this.mapper.selectOneByQueryAs(wrapper,Integer.class); Integer number = this.mapper.selectOneByQueryAs(wrapper,Integer.class);
if(ObjectUtils.isEmpty(number)){ if(ObjectUtils.isEmpty(number)){
return 1; return 1;
@ -305,7 +302,7 @@ public class IotVisualMaterialServiceImpl extends BaseServiceImpl<IotVisualMater
QueryWrapper wrapper = new QueryWrapper(); QueryWrapper wrapper = new QueryWrapper();
wrapper.eq("group_id",groupId); wrapper.eq("group_id",groupId);
wrapper.orderBy("sort",true); wrapper.orderBy("sort",true);
wrapper.and(IOT_VISUAL_MATERIAL_ENTITY.TENANT_CODE.eq(tenantCode).or(IOT_VISUAL_MATERIAL_ENTITY.IS_DEFAULT.eq("1")));
wrapper.and(IOT_VISUAL_MATERIAL_ENTITY.TENANT_CODE.eq(tenantCode).or(IOT_VISUAL_MATERIAL_ENTITY.IS_DEFAULT.eq(1)));
return this.listAs(wrapper,ComponentSortInfo.class); return this.listAs(wrapper,ComponentSortInfo.class);
} }
Loading…
Cancel
Save