From 172f3bc4d52d24f6bb408d406bac370fded2941e Mon Sep 17 00:00:00 2001 From: xia Date: Tue, 31 May 2022 14:32:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=A1=A3=E6=A1=88=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=20=E6=9B=B4=E6=96=B0=E5=AD=97=E6=AE=B5=E7=BB=B4?= =?UTF-8?q?=E6=8A=A4=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ArchivesController.java | 8 ++++ .../archives/service/ArchivesService.java | 3 ++ .../service/impl/ArchivesServiceImpl.java | 38 +++++++++++++++++-- .../dictionary/domain/ArchivesDictionary.java | 14 ++++++- .../modules/dictionary/domain/Field.java | 4 ++ .../modules/dictionary/domain/vo/FieldVO.java | 5 +++ .../ArchivesDictionaryRepository.java | 6 ++- .../service/impl/FieldServiceImpl.java | 1 + 8 files changed, 72 insertions(+), 7 deletions(-) diff --git a/archives/src/main/java/com/storeroom/modules/archives/controller/ArchivesController.java b/archives/src/main/java/com/storeroom/modules/archives/controller/ArchivesController.java index a0e5ea8..b95496f 100644 --- a/archives/src/main/java/com/storeroom/modules/archives/controller/ArchivesController.java +++ b/archives/src/main/java/com/storeroom/modules/archives/controller/ArchivesController.java @@ -26,6 +26,14 @@ public class ArchivesController { return ApiResponse.success(archivesService.initArchivesView(categoryId,query,page)); } + @ApiOperation("档案预编辑") + @GetMapping("/doedit") + public ApiResponse doedit( + String categoryId,String archivesId + ){ + return ApiResponse.success(archivesService.doedit(categoryId,archivesId)); + } + @ApiOperation("测试档案") diff --git a/archives/src/main/java/com/storeroom/modules/archives/service/ArchivesService.java b/archives/src/main/java/com/storeroom/modules/archives/service/ArchivesService.java index 3966c0d..e807d60 100644 --- a/archives/src/main/java/com/storeroom/modules/archives/service/ArchivesService.java +++ b/archives/src/main/java/com/storeroom/modules/archives/service/ArchivesService.java @@ -5,5 +5,8 @@ import org.springframework.data.domain.Pageable; public interface ArchivesService { //初始化档案列表 Object initArchivesView(String categoryId, String query, Pageable page); + //预编辑档案 初始化信息 + Object doedit(String categoryId,String archivesId); + String test(); } diff --git a/archives/src/main/java/com/storeroom/modules/archives/service/impl/ArchivesServiceImpl.java b/archives/src/main/java/com/storeroom/modules/archives/service/impl/ArchivesServiceImpl.java index 8985c01..0a5e389 100644 --- a/archives/src/main/java/com/storeroom/modules/archives/service/impl/ArchivesServiceImpl.java +++ b/archives/src/main/java/com/storeroom/modules/archives/service/impl/ArchivesServiceImpl.java @@ -1,11 +1,14 @@ package com.storeroom.modules.archives.service.impl; import cn.hutool.json.JSONArray; +import cn.hutool.json.JSONObject; import com.storeroom.modules.archives.repository.ArchivesSummaryRepository; import com.storeroom.modules.archives.service.ArchivesService; +import com.storeroom.modules.dictionary.domain.ArchivesDictionary; import com.storeroom.modules.dictionary.domain.ArchivesType; import com.storeroom.modules.dictionary.repository.ArchivesDictionaryRepository; import com.storeroom.modules.dictionary.repository.ArchivesTypeRepository; +import com.storeroom.utils.StringUtils; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; @@ -13,6 +16,7 @@ import org.springframework.stereotype.Service; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Optional; @@ -50,10 +54,36 @@ public class ArchivesServiceImpl implements ArchivesService { quertOrder = " order by " + quertOrder.substring(0,quertOrder.length()-1); List list = entityManager.createNativeQuery("select "+queryField+" from "+queryTable+quertOrder).getResultList(); - JSONArray jsons = new JSONArray(); - jsons.put(queryFields); - jsons.put(list); - return jsons; + JSONObject json = new JSONObject(); + json.put("queryFields",queryFields); + json.put("showlist",list); + return json; + } + + @Override + public Object doedit(String categoryId,String archivesId) { + JSONObject json = new JSONObject(); + List showFiled = archivesDictionaryRepository.findAllByCategoryIdAndIsInputOrderByIsSequenceAsc(categoryId,true); + if(!StringUtils.isEmpty(archivesId)){ + ArchivesType archivesType = archivesTypeRepository.findById(categoryId).get(); + List queryFields = new ArrayList<>(); + for(ArchivesDictionary archivesDictionary:showFiled){ + queryFields.add(archivesDictionary.getFieldName()); + } + String queryField = queryFields.stream().map(String::valueOf).collect(Collectors.joining(",")); + String queryTable = archivesType.getEnName(); + List list = entityManager.createNativeQuery("select "+queryField+" from "+queryTable + " where id = '"+archivesId+"'").getResultList(); + Object[] doeditEntity = list.size() > 0 ? list.get(0) : null; + if(null != doeditEntity){ + JSONObject echo = new JSONObject(); + for(int i = 0;i