diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDisplayController.java b/archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDisplayController.java index 504d4ff..8cee4de 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDisplayController.java +++ b/archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDisplayController.java @@ -1,21 +1,25 @@ package com.storeroom.modules.dictionary.controller; +import com.storeroom.annotaion.rest.AnonymousPostMapping; import com.storeroom.annotaion.rest.AnonymousPutMapping; import com.storeroom.exception.BaseException; import com.storeroom.exception.constant.ResponseStatus; import com.storeroom.modules.dictionary.service.ArchivesDictionaryService; import com.storeroom.modules.dictionary.service.dto.ArchivesDictionaryDTO; import com.storeroom.modules.dictionary.service.dto.ArchivesDictionarySmallDTO; +import com.storeroom.modules.dictionary.service.dto.ArchivesDisplaySmallDTO; import com.storeroom.utils.ApiResponse; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; +import java.util.Set; @Api(tags = "著录界面预览") @RestController @@ -36,4 +40,11 @@ public class ArchivesDisplayController { } + @ApiOperation("修改界面浏览设置状态") + @AnonymousPutMapping("state") + public ApiResponse ChangeDisplayState(@Validated @RequestBody Set archivesDisplaySmallDTO) { + archivesDictionaryService.ChangeDisplayState(archivesDisplaySmallDTO); + return ApiResponse.success(ResponseStatus.SUCCESS); + } + } 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 b98b2b0..2521029 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 @@ -2,6 +2,7 @@ package com.storeroom.modules.dictionary.domain; import com.storeroom.base.BaseEntity; import io.swagger.annotations.ApiModelProperty; +import io.swagger.annotations.ApiOperation; import lombok.Getter; import lombok.Setter; @@ -127,6 +128,10 @@ public class ArchivesDictionary extends BaseEntity implements Serializable { @ApiModelProperty(value = "排序") private Integer displayOrder; + @Column(name = "display_order_by") + @ApiModelProperty(value = "升序降序") + private String displayOrderBy; + @Column(name = "is_displayformat") @ApiModelProperty(value = "是否有显示格式") private Boolean isDisplayformat; diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesDictionaryService.java b/archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesDictionaryService.java index ff90180..02d7943 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesDictionaryService.java +++ b/archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesDictionaryService.java @@ -4,8 +4,10 @@ package com.storeroom.modules.dictionary.service; import com.storeroom.modules.dictionary.domain.ArchivesDictionary; import com.storeroom.modules.dictionary.service.dto.ArchivesDictionaryDTO; import com.storeroom.modules.dictionary.service.dto.ArchivesDictionarySmallDTO; +import com.storeroom.modules.dictionary.service.dto.ArchivesDisplaySmallDTO; import java.util.List; +import java.util.Set; public interface ArchivesDictionaryService { @@ -61,4 +63,14 @@ public interface ArchivesDictionaryService { void upSort(List archivesDictionaryDTO); + /** + * 修改列表显示状态 + * @param archivesDictionarySmallDTOS + */ + void ChangeDisplayState(Set archivesDictionarySmallDTOS); + + + void ChangeDisplaySort(Set archivesDisplaySmallDTOS); + + } diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesDisplaySmallDTO.java b/archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesDisplaySmallDTO.java new file mode 100644 index 0000000..385c02f --- /dev/null +++ b/archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesDisplaySmallDTO.java @@ -0,0 +1,26 @@ +package com.storeroom.modules.dictionary.service.dto; + + +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +@Data +public class ArchivesDisplaySmallDTO implements Serializable { + + @NotNull + private String id; + + private String displayformatType; + + private Integer displayLength; + + private Boolean isDisplay; + + private Integer sort; + + private String displayOrderBy; + + +} diff --git a/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesDictionaryImpl.java b/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesDictionaryImpl.java index a5b91af..90fadbc 100644 --- a/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesDictionaryImpl.java +++ b/archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesDictionaryImpl.java @@ -7,6 +7,7 @@ import com.storeroom.modules.dictionary.repository.ArchivesDictionaryRepository; import com.storeroom.modules.dictionary.service.ArchivesDictionaryService; import com.storeroom.modules.dictionary.service.dto.ArchivesDictionaryDTO; import com.storeroom.modules.dictionary.service.dto.ArchivesDictionarySmallDTO; +import com.storeroom.modules.dictionary.service.dto.ArchivesDisplaySmallDTO; import com.storeroom.modules.dictionary.service.mapstruct.ArchivesDictionaryMapper; import com.storeroom.utils.NanoIdUtils; import com.storeroom.utils.ValidationUtil; @@ -16,6 +17,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; +import java.util.Set; @Service @RequiredArgsConstructor @@ -98,7 +100,7 @@ public class ArchivesDictionaryImpl implements ArchivesDictionaryService { if (arc1.size() == 0) { arc.setId(NanoIdUtils.randomNanoId()); archivesDictionaryRepository.save(arc); - }else { + } else { throw new BaseException("字段名称不能重复"); } } @@ -121,5 +123,20 @@ public class ArchivesDictionaryImpl implements ArchivesDictionaryService { archivesDictionaryRepository.saveAll(list); } + @Override + @Transactional + public void ChangeDisplayState(Set archivesDictionarySmallDTOS) { + List list = new ArrayList<>(); + for (ArchivesDisplaySmallDTO ar : archivesDictionarySmallDTOS) { + ArchivesDictionary ad = archivesDictionaryRepository.findById(ar.getId()).orElseGet(ArchivesDictionary::new); + ad.setIsDisplay(ar.getIsDisplay()); + ad.setDisplayformatType(ar.getDisplayformatType()); + ad.setDisplayLength(ar.getDisplayLength()); + ad.setIsSequence(ar.getSort()); + list.add(ad); + } + archivesDictionaryRepository.saveAll(list); + } + }