提交 1eb4dc6e authored 作者: xiajunjie's avatar xiajunjie

fix: 字段重名

上级 a17e55c2
...@@ -5,13 +5,19 @@ import com.auth0.jwt.interfaces.DecodedJWT; ...@@ -5,13 +5,19 @@ import com.auth0.jwt.interfaces.DecodedJWT;
import com.github.xiaoymin.knife4j.annotations.ApiSupport; import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.auth.filter.F2CLinkFilter; import io.dataease.auth.filter.F2CLinkFilter;
import io.dataease.base.domain.DatasetTableField; import io.dataease.base.domain.DatasetTableField;
import io.dataease.base.domain.DatasetTableFieldExample;
import io.dataease.base.mapper.DatasetTableFieldMapper;
import io.dataease.commons.exception.DEException;
import io.dataease.controller.request.dataset.MultFieldValuesRequest; import io.dataease.controller.request.dataset.MultFieldValuesRequest;
import io.dataease.controller.response.DatasetTableField4Type; import io.dataease.controller.response.DatasetTableField4Type;
import io.dataease.i18n.Translator;
import io.dataease.service.dataset.DataSetFieldService; import io.dataease.service.dataset.DataSetFieldService;
import io.dataease.service.dataset.DataSetTableFieldsService; import io.dataease.service.dataset.DataSetTableFieldsService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
...@@ -73,6 +79,7 @@ public class DataSetTableFieldController { ...@@ -73,6 +79,7 @@ public class DataSetTableFieldController {
@ApiOperation("保存") @ApiOperation("保存")
@PostMapping("save") @PostMapping("save")
public DatasetTableField save(@RequestBody DatasetTableField datasetTableField) { public DatasetTableField save(@RequestBody DatasetTableField datasetTableField) {
dataSetTableFieldsService.checkFieldName(datasetTableField);
return dataSetTableFieldsService.save(datasetTableField); return dataSetTableFieldsService.save(datasetTableField);
} }
...@@ -85,7 +92,7 @@ public class DataSetTableFieldController { ...@@ -85,7 +92,7 @@ public class DataSetTableFieldController {
@ApiOperation("多字段值枚举") @ApiOperation("多字段值枚举")
@PostMapping("linkMultFieldValues") @PostMapping("linkMultFieldValues")
public List<Object> linkMultFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception { public List<Object> linkMultFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception {
HttpServletRequest request =((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String linkToken = request.getHeader(F2CLinkFilter.LINK_TOKEN_KEY); String linkToken = request.getHeader(F2CLinkFilter.LINK_TOKEN_KEY);
DecodedJWT jwt = JWT.decode(linkToken); DecodedJWT jwt = JWT.decode(linkToken);
Long userId = jwt.getClaim("userId").asLong(); Long userId = jwt.getClaim("userId").asLong();
......
...@@ -32,12 +32,6 @@ public class DataSetTableFieldsService { ...@@ -32,12 +32,6 @@ public class DataSetTableFieldsService {
} }
public DatasetTableField save(DatasetTableField datasetTableField) { public DatasetTableField save(DatasetTableField datasetTableField) {
DatasetTableFieldExample datasetTableFieldExample = new DatasetTableFieldExample();
datasetTableFieldExample.createCriteria().andNameEqualTo(datasetTableField.getName()).andTableIdEqualTo(datasetTableField.getTableId());
List<DatasetTableField> datasetTableFields = datasetTableFieldMapper.selectByExample(datasetTableFieldExample);
if (CollectionUtils.isNotEmpty(datasetTableFields)) {
DEException.throwException(Translator.get("i18n_field_name_repeat"));
}
if (StringUtils.isEmpty(datasetTableField.getId())) { if (StringUtils.isEmpty(datasetTableField.getId())) {
datasetTableField.setId(UUID.randomUUID().toString()); datasetTableField.setId(UUID.randomUUID().toString());
// 若dataeasename为空,则用MD5(id)作为dataeasename // 若dataeasename为空,则用MD5(id)作为dataeasename
...@@ -54,6 +48,21 @@ public class DataSetTableFieldsService { ...@@ -54,6 +48,21 @@ public class DataSetTableFieldsService {
return datasetTableField; return datasetTableField;
} }
public void checkFieldName(DatasetTableField datasetTableField) {
if (StringUtils.isNotEmpty(datasetTableField.getName()) && StringUtils.isNotEmpty(datasetTableField.getTableId())) {
DatasetTableFieldExample datasetTableFieldExample = new DatasetTableFieldExample();
DatasetTableFieldExample.Criteria criteria = datasetTableFieldExample.createCriteria();
criteria.andNameEqualTo(datasetTableField.getName()).andTableIdEqualTo(datasetTableField.getTableId());
if (StringUtils.isNotEmpty(datasetTableField.getId())) {
criteria.andIdNotEqualTo(datasetTableField.getId());
}
List<DatasetTableField> datasetTableFields = datasetTableFieldMapper.selectByExample(datasetTableFieldExample);
if (CollectionUtils.isNotEmpty(datasetTableFields)) {
DEException.throwException(Translator.get("i18n_field_name_repeat"));
}
}
}
public List<DatasetTableField> list(DatasetTableField datasetTableField) { public List<DatasetTableField> list(DatasetTableField datasetTableField) {
DatasetTableFieldExample datasetTableFieldExample = new DatasetTableFieldExample(); DatasetTableFieldExample datasetTableFieldExample = new DatasetTableFieldExample();
DatasetTableFieldExample.Criteria criteria = datasetTableFieldExample.createCriteria(); DatasetTableFieldExample.Criteria criteria = datasetTableFieldExample.createCriteria();
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论