复制组织支持从dict_data创建标签数据

This commit is contained in:
gaoqr
2026-08-13 18:41:12 +08:00
parent c05f73af28
commit 8294ff5cd2
@@ -2,6 +2,7 @@ package com.cf.imes.module.system.service.lable;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.cf.imes.framework.common.enums.CommonStatusEnum;
import com.cf.imes.framework.common.enums.DeletedCodeEnum; import com.cf.imes.framework.common.enums.DeletedCodeEnum;
import com.cf.imes.framework.common.enums.UserSettingTypeEnum; import com.cf.imes.framework.common.enums.UserSettingTypeEnum;
import com.cf.imes.framework.common.exception.ServiceException; import com.cf.imes.framework.common.exception.ServiceException;
@@ -13,6 +14,7 @@ import com.cf.imes.module.system.controller.admin.label.vo.LabelPageReqVO;
import com.cf.imes.module.system.controller.admin.label.vo.LabelRespVO; import com.cf.imes.module.system.controller.admin.label.vo.LabelRespVO;
import com.cf.imes.module.system.controller.admin.label.vo.LabelSaveReqVO; import com.cf.imes.module.system.controller.admin.label.vo.LabelSaveReqVO;
import com.cf.imes.module.system.controller.admin.label.vo.LabelGroupRespVO; import com.cf.imes.module.system.controller.admin.label.vo.LabelGroupRespVO;
import com.cf.imes.module.system.dal.dataobject.dict.DictDataDO;
import com.cf.imes.module.system.dal.dataobject.labeltemplate.LabelTemplateDO; import com.cf.imes.module.system.dal.dataobject.labeltemplate.LabelTemplateDO;
import com.cf.imes.module.system.dal.dataobject.lable.LabelDO; import com.cf.imes.module.system.dal.dataobject.lable.LabelDO;
import com.cf.imes.module.system.dal.dataobject.labeltype.LabelTypeDO; import com.cf.imes.module.system.dal.dataobject.labeltype.LabelTypeDO;
@@ -21,9 +23,10 @@ import com.cf.imes.module.system.dal.dataobject.setting.PackageConfigDO;
import com.cf.imes.module.system.dal.mysql.label.LabelMapper; import com.cf.imes.module.system.dal.mysql.label.LabelMapper;
import com.cf.imes.module.system.dal.mysql.labeltemplate.LabelTemplateMapper; import com.cf.imes.module.system.dal.mysql.labeltemplate.LabelTemplateMapper;
import com.cf.imes.module.system.dal.mysql.labeltype.LabelTypeMapper; import com.cf.imes.module.system.dal.mysql.labeltype.LabelTypeMapper;
import com.cf.imes.module.system.dal.mysql.dict.DictDataMapper;
import com.cf.imes.module.system.dal.mysql.machine.MachineMapper; import com.cf.imes.module.system.dal.mysql.machine.MachineMapper;
import com.cf.imes.module.system.dal.mysql.setting.PackageConfigMapper; import com.cf.imes.module.system.dal.mysql.setting.PackageConfigMapper;
import com.cf.imes.module.system.enums.label.LabelTemplateType; import com.cf.imes.module.system.enums.DictTypeConstants;
import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonNode;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -66,6 +69,9 @@ public class LabelServiceImpl implements LabelService {
@Resource @Resource
private LabelTypeMapper labelTypeMapper; private LabelTypeMapper labelTypeMapper;
@Resource
private DictDataMapper dictDataMapper;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long createLabel(LabelSaveReqVO createReqVO) { public Long createLabel(LabelSaveReqVO createReqVO) {
@@ -237,9 +243,14 @@ public class LabelServiceImpl implements LabelService {
public void copyInitalLabel(Long organId) { public void copyInitalLabel(Long organId) {
List<LabelDO> addList = new ArrayList<>(); List<LabelDO> addList = new ArrayList<>();
LabelTemplateType[] values = LabelTemplateType.values(); List<DictDataDO> dictDataList = dictDataMapper.selectListByStatusAndDictType(
for (LabelTemplateType value : values) { CommonStatusEnum.ENABLE.getStatus(), DictTypeConstants.LABEL_TYPE);
String labelType = value.getType(); for (DictDataDO dictData : dictDataList) {
String labelType = dictData.getValue();
LabelTypeDO systemLabelType = labelTypeMapper.selectSystemByType(labelType);
if (systemLabelType == null) {
continue;
}
// 获取标签类型的默认模板 // 获取标签类型的默认模板
LabelTemplateDO labelTemplateDO = labelTemplateMapper.selectOne(new LambdaQueryWrapperX<LabelTemplateDO>() LabelTemplateDO labelTemplateDO = labelTemplateMapper.selectOne(new LambdaQueryWrapperX<LabelTemplateDO>()
@@ -252,7 +263,7 @@ public class LabelServiceImpl implements LabelService {
// 复制标签内容a // 复制标签内容a
if (ObjectUtil.isNotNull(labelTemplateDO)) { if (ObjectUtil.isNotNull(labelTemplateDO)) {
LabelDO labelDO = LabelDO.builder() LabelDO labelDO = LabelDO.builder()
.labelTypeId(labelTypeMapper.selectSystemByType(labelType).getId()) .labelTypeId(systemLabelType.getId())
.type(labelType) .type(labelType)
.name(labelTemplateDO.getName()) .name(labelTemplateDO.getName())
.remark(labelTemplateDO.getRemark()) .remark(labelTemplateDO.getRemark())