From 7e313cdff5d0acdf783712aef60893d417de58d5 Mon Sep 17 00:00:00 2001 From: xia Date: Tue, 24 May 2022 11:23:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=B8=BB=E9=94=AE=E8=A7=84?= =?UTF-8?q?=E5=88=99=20=E6=96=B0=E5=A2=9E=E5=AD=97=E6=AE=B5=E7=BB=B4?= =?UTF-8?q?=E6=8A=A4=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dictionary/controller/FieldController.java | 17 +++++++++++++++++ .../dictionary/domain/ArchivesDictionary.java | 4 ++-- .../modules/dictionary/domain/Dictionary.java | 10 ++++------ .../modules/dictionary/domain/Field.java | 2 -- .../repository/DictionaryRepository.java | 4 ++++ .../dictionary/repository/FieldRepository.java | 4 ++++ .../service/impl/DictionaryServiceImpl.java | 15 ++++++++++----- .../service/impl/FieldServiceImpl.java | 12 +++++++++++- 8 files changed, 52 insertions(+), 16 deletions(-) diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/controller/FieldController.java b/archives/src/main/java/com/storeroom/modules/dictionary/controller/FieldController.java index eac0f1e..71472d7 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/controller/FieldController.java +++ b/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 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); + } + } diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesDictionary.java b/archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesDictionary.java index 587bc30..561e5c1 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesDictionary.java +++ b/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_id; - @OneToMany(mappedBy = "archivesDictionary",cascade = {CascadeType.PERSIST,CascadeType.REMOVE}) - private List sysDictionaryId; +// @OneToMany(mappedBy = "archivesDictionary",cascade = {CascadeType.PERSIST,CascadeType.REMOVE}) +// private List sysDictionaryId; @ApiModelProperty(value = "字段名称") @Column(name = "field_name") diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/domain/Dictionary.java b/archives/src/main/java/com/storeroom/modules/dictionary/domain/Dictionary.java index 7e75dbf..ba082b7 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/domain/Dictionary.java +++ b/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 = "代码") diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/domain/Field.java b/archives/src/main/java/com/storeroom/modules/dictionary/domain/Field.java index b3bb4d9..13649fe 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/domain/Field.java +++ b/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") diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/repository/DictionaryRepository.java b/archives/src/main/java/com/storeroom/modules/dictionary/repository/DictionaryRepository.java index 89e3bad..2d11fac 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/repository/DictionaryRepository.java +++ b/archives/src/main/java/com/storeroom/modules/dictionary/repository/DictionaryRepository.java @@ -29,4 +29,8 @@ public interface DictionaryRepository extends JpaRepository{ 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> 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); } diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/repository/FieldRepository.java b/archives/src/main/java/com/storeroom/modules/dictionary/repository/FieldRepository.java index a5f05c7..42c2d6c 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/repository/FieldRepository.java +++ b/archives/src/main/java/com/storeroom/modules/dictionary/repository/FieldRepository.java @@ -19,4 +19,8 @@ public interface FieldRepository extends JpaRepository{ @Query("from Field where isType = ?1 order by isSequence asc ") List findAllByIsType(Integer isType); + @Query(nativeQuery = true, + value = "select max(is_sequence) from sys_field where is_type = ?1 ") + Integer getMaxSequence(Integer isType); + } diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/DictionaryServiceImpl.java b/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/DictionaryServiceImpl.java index 18c33ab..d14f3d3 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/DictionaryServiceImpl.java +++ b/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); diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/FieldServiceImpl.java b/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/FieldServiceImpl.java index 349fca9..b806980 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/FieldServiceImpl.java +++ b/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);