Browse Source

更新主键规则

新增字段维护验证
master
xia 3 years ago
parent
commit
7e313cdff5
  1. 17
      archives/src/main/java/com/storeroom/modules/dictionary/controller/FieldController.java
  2. 4
      archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesDictionary.java
  3. 10
      archives/src/main/java/com/storeroom/modules/dictionary/domain/Dictionary.java
  4. 2
      archives/src/main/java/com/storeroom/modules/dictionary/domain/Field.java
  5. 4
      archives/src/main/java/com/storeroom/modules/dictionary/repository/DictionaryRepository.java
  6. 4
      archives/src/main/java/com/storeroom/modules/dictionary/repository/FieldRepository.java
  7. 15
      archives/src/main/java/com/storeroom/modules/dictionary/service/impl/DictionaryServiceImpl.java
  8. 12
      archives/src/main/java/com/storeroom/modules/dictionary/service/impl/FieldServiceImpl.java

17
archives/src/main/java/com/storeroom/modules/dictionary/controller/FieldController.java

@ -2,11 +2,13 @@ package com.storeroom.modules.dictionary.controller;
import com.storeroom.annotaion.rest.AnonymousGetMapping;
import com.storeroom.annotaion.rest.AnonymousPostMapping;
import com.storeroom.config.RsaProperties;
import com.storeroom.exception.constant.ResponseStatus;
import com.storeroom.modules.dictionary.service.FieldService;
import com.storeroom.modules.dictionary.service.dto.FieldDTO;
import com.storeroom.modules.dictionary.service.dto.PrimaryDTO;
import com.storeroom.utils.ApiResponse;
import com.storeroom.utils.RsaUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
@ -21,6 +23,7 @@ import org.springframework.web.bind.annotation.*;
@RequestMapping("/api/field")
public class FieldController {
String maintainCode = "83560792";
private final FieldService fieldService;
@ApiOperation("编辑字段表")
@ -43,4 +46,18 @@ public class FieldController {
return ApiResponse.success(fieldService.findGroupType(isType));
}
@ApiOperation("维护验证码")
@GetMapping("/verifyMaintenance")
public ApiResponse<Object> verifyMaintenance(String passWord){
boolean isVerify = false;
try {
String decryptPass = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,passWord);
isVerify = maintainCode.equals(decryptPass);
} catch (Exception e) {
isVerify = false;
e.printStackTrace();
}
return ApiResponse.success(isVerify);
}
}

4
archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesDictionary.java

@ -28,8 +28,8 @@ public class ArchivesDictionary extends BaseEntity implements Serializable {
// @OneToMany(mappedBy = "",cascade = {CascadeType.PERSIST,CascadeType.REMOVE})
// private List<Category> category_id;
@OneToMany(mappedBy = "archivesDictionary",cascade = {CascadeType.PERSIST,CascadeType.REMOVE})
private List<Dictionary> sysDictionaryId;
// @OneToMany(mappedBy = "archivesDictionary",cascade = {CascadeType.PERSIST,CascadeType.REMOVE})
// private List<Dictionary> sysDictionaryId;
@ApiModelProperty(value = "字段名称")
@Column(name = "field_name")

10
archives/src/main/java/com/storeroom/modules/dictionary/domain/Dictionary.java

@ -18,8 +18,6 @@ public class Dictionary extends BaseEntity implements Serializable {
@Id
@Column(name = "id")
@GeneratedValue(generator = "idGenerator")
@GenericGenerator(name = "idGenerator", strategy = "uuid")
private String id;
@Column(name = "dic_name")
@ -30,10 +28,10 @@ public class Dictionary extends BaseEntity implements Serializable {
* 关联门类字典表 N:1
*
*/
@JoinColumn(name = "id")
@ManyToOne(fetch = FetchType.LAZY)
@ApiModelProperty(value = "门类字典")
private ArchivesDictionary archivesDictionary;
// @JoinColumn(name = "id")
// @ManyToOne(fetch = FetchType.LAZY)
// @ApiModelProperty(value = "门类字典")
// private ArchivesDictionary archivesDictionary;
@Column(name = "dic_code")
@ApiModelProperty(value = "代码")

2
archives/src/main/java/com/storeroom/modules/dictionary/domain/Field.java

@ -17,8 +17,6 @@ public class Field extends BaseEntity implements Serializable {
@Id
@Column(name = "id")
@GeneratedValue(generator = "idGenerator")
@GenericGenerator(name = "idGenerator", strategy = "uuid")
private String id;
@Column(name = "field_name")

4
archives/src/main/java/com/storeroom/modules/dictionary/repository/DictionaryRepository.java

@ -29,4 +29,8 @@ public interface DictionaryRepository extends JpaRepository<Dictionary, String>{
countQuery = "SELECT count(1) FROM archives_dictionary_config where dic_pid = ?1",
value = "SELECT id,dic_name as dicName,dic_code as dicCode,dic_explain as dicExplain,dic_sequence as dicSequence,dic_type as dicType,dic_pid as dicPid FROM archives_dictionary_config where dic_pid = ?1")
Page<Map<String,Object>> findSubsetById(String id, Pageable page);
@Query(nativeQuery = true,
value = "select max(dic_sequence) from archives_dictionary_config where if(?1 is null,dic_pid is null,dic_pid = ?1) ")
Integer getMaxSequence(String pid);
}

4
archives/src/main/java/com/storeroom/modules/dictionary/repository/FieldRepository.java

@ -19,4 +19,8 @@ public interface FieldRepository extends JpaRepository<Field, String>{
@Query("from Field where isType = ?1 order by isSequence asc ")
List<Field> findAllByIsType(Integer isType);
@Query(nativeQuery = true,
value = "select max(is_sequence) from sys_field where is_type = ?1 ")
Integer getMaxSequence(Integer isType);
}

15
archives/src/main/java/com/storeroom/modules/dictionary/service/impl/DictionaryServiceImpl.java

@ -6,10 +6,7 @@ import com.storeroom.modules.dictionary.domain.vo.DictionaryVO;
import com.storeroom.modules.dictionary.repository.DictionaryRepository;
import com.storeroom.modules.dictionary.service.DictionaryService;
import com.storeroom.modules.dictionary.service.dto.DictionaryDTO;
import com.storeroom.utils.MapUtil;
import com.storeroom.utils.PageSort;
import com.storeroom.utils.PageUtil;
import com.storeroom.utils.ResultUtils;
import com.storeroom.utils.*;
import lombok.RequiredArgsConstructor;
import org.springframework.cache.annotation.CacheConfig;
import org.springframework.data.domain.Page;
@ -55,12 +52,20 @@ public class DictionaryServiceImpl implements DictionaryService {
if(null != dto.getId()){
dictionary = dictionaryRepository.findById(dto.getId()).get();
}else{
String newId = NanoIdUtils.randomNanoId();
dictionary.setId(newId);
dictionary.setCreateBy(userName);
}
dictionary.setDicName(dto.getDicName());
dictionary.setDicCode(dto.getDicCode());
dictionary.setDicExplain(dto.getDicExplain());
dictionary.setDicSequence(dto.getDicSequence());
if(null == dto.getDicSequence()){
Integer maxSequence = dictionaryRepository.getMaxSequence(dto.getDicPid());
Integer thisSequence = maxSequence == null ? 1 : maxSequence+1;
dictionary.setDicSequence(thisSequence);
}else{
dictionary.setDicSequence(dto.getDicSequence());
}
dictionary.setDicType(dto.getDicType());
dictionary.setDicPid(dto.getDicPid());
dictionary.setUpdatedBy(userName);

12
archives/src/main/java/com/storeroom/modules/dictionary/service/impl/FieldServiceImpl.java

@ -6,6 +6,8 @@ import com.storeroom.modules.dictionary.domain.vo.FieldVO;
import com.storeroom.modules.dictionary.repository.FieldRepository;
import com.storeroom.modules.dictionary.service.FieldService;
import com.storeroom.modules.dictionary.service.dto.FieldDTO;
import com.storeroom.utils.NanoIdUtils;
import com.storeroom.utils.RsaUtils;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@ -24,6 +26,8 @@ public class FieldServiceImpl implements FieldService {
if(null != dto.getId()){
field = fieldRepository.findById(dto.getId()).get();
}else{
String newId = NanoIdUtils.randomNanoId();
field.setId(newId);
field.setCreateBy(userName);
}
String origId = fieldRepository.findIdFirstByFieldName(dto.getFieldName());
@ -36,7 +40,13 @@ public class FieldServiceImpl implements FieldService {
field.setDictionaryId(dto.getDictionaryId());
field.setIsDataType(dto.getIsDataType());
field.setIsColumnLength(dto.getIsColumnLength());
field.setIsSequence(dto.getIsSequence());
if(null == dto.getIsSequence()) {
Integer maxSequence = fieldRepository.getMaxSequence(dto.getIsType());
Integer thisSequence = maxSequence == null ? 1 : maxSequence+1;
field.setIsSequence(thisSequence);
}else{
field.setIsSequence(dto.getIsSequence());
}
field.setIsType(dto.getIsType());
field.setIsSystem(dto.getIsSystem());
field = fieldRepository.saveAndFlush(field);

Loading…
Cancel
Save