Browse Source

更新档案模块

更新字段维护模块
master
xia 3 years ago
parent
commit
172f3bc4d5
  1. 8
      archives/src/main/java/com/storeroom/modules/archives/controller/ArchivesController.java
  2. 3
      archives/src/main/java/com/storeroom/modules/archives/service/ArchivesService.java
  3. 38
      archives/src/main/java/com/storeroom/modules/archives/service/impl/ArchivesServiceImpl.java
  4. 14
      archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesDictionary.java
  5. 4
      archives/src/main/java/com/storeroom/modules/dictionary/domain/Field.java
  6. 5
      archives/src/main/java/com/storeroom/modules/dictionary/domain/vo/FieldVO.java
  7. 6
      archives/src/main/java/com/storeroom/modules/dictionary/repository/ArchivesDictionaryRepository.java
  8. 1
      archives/src/main/java/com/storeroom/modules/dictionary/service/impl/FieldServiceImpl.java

8
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<Object> doedit(
String categoryId,String archivesId
){
return ApiResponse.success(archivesService.doedit(categoryId,archivesId));
}
@ApiOperation("测试档案")

3
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();
}

38
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<Object[]> 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<ArchivesDictionary> showFiled = archivesDictionaryRepository.findAllByCategoryIdAndIsInputOrderByIsSequenceAsc(categoryId,true);
if(!StringUtils.isEmpty(archivesId)){
ArchivesType archivesType = archivesTypeRepository.findById(categoryId).get();
List<String> 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<Object[]> 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<queryFields.size();i++){
echo.put(queryFields.get(i),doeditEntity[i]);
}
json.put("echo",echo);
}
}
json.put("showFiled",showFiled);
return json;
}
@Override

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

@ -25,6 +25,14 @@ public class ArchivesDictionary extends BaseEntity implements Serializable {
@ApiModelProperty(value = "ID", hidden = true)
private String id;
@ApiModelProperty(value = "门类id")
@Column(name = "category_id")
private String categoryId;
@ApiModelProperty(value = "系统字典id")
@Column(name = "sys_dictionary_id")
private String sysDictionaryId;
// @OneToMany(mappedBy = "",cascade = {CascadeType.PERSIST,CascadeType.REMOVE})
// private List<Category> category_id;
@ -45,7 +53,11 @@ public class ArchivesDictionary extends BaseEntity implements Serializable {
@Column(name = "is_data_type")
@ApiModelProperty(value = "数据类型")
private String isDataType;
private Integer isDataType;
@Column(name = "is_data_type_details")
@ApiModelProperty(value = "数据类型详情")
private String isDataTypeDetails;
@Column(name = "is_column_length")
@ApiModelProperty(value = "字段长度")

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

@ -39,6 +39,10 @@ public class Field extends BaseEntity implements Serializable {
@ApiModelProperty(value = "数据类型")
private Integer isDataType;
@Column(name = "is_data_type_details")
@ApiModelProperty(value = "数据类型详情")
private String isDataTypeDetails;
@Column(name = "is_column_length")
@ApiModelProperty(value = "字段长度")
private Integer isColumnLength;

5
archives/src/main/java/com/storeroom/modules/dictionary/domain/vo/FieldVO.java

@ -42,6 +42,11 @@ public class FieldVO {
@JsonProperty("isDataType")
private Integer isDataType;
@ApiModelProperty(value = "数据类型详情")
@JSONField(name="isDataTypeDetails")
@JsonProperty("isDataTypeDetails")
private String isDataTypeDetails;
@ApiModelProperty(value = "字段长度")
@JSONField(name="isColumnLength")
@JsonProperty("isColumnLength")

6
archives/src/main/java/com/storeroom/modules/dictionary/repository/ArchivesDictionaryRepository.java

@ -1,16 +1,18 @@
package com.storeroom.modules.dictionary.repository;
import com.storeroom.modules.dictionary.domain.ArchivesType;
import com.storeroom.modules.dictionary.domain.ArchivesDictionary;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import java.util.List;
public interface ArchivesDictionaryRepository extends JpaRepository<ArchivesType,String>, JpaSpecificationExecutor<ArchivesType> {
public interface ArchivesDictionaryRepository extends JpaRepository<ArchivesDictionary,String>, JpaSpecificationExecutor<ArchivesDictionary> {
@Query(nativeQuery = true,
value = "select field_name from archives_dictionary where category_id = ?1 and is_display is true order by is_displayorder asc")
List<String> findDisPlayField(String categoryId);
List<ArchivesDictionary> findAllByCategoryIdAndIsInputOrderByIsSequenceAsc(String categoryId,boolean isInput);
}

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

@ -39,6 +39,7 @@ public class FieldServiceImpl implements FieldService {
field.setIsDefaultValue(dto.getIsDefaultValue());
field.setDictionaryId(dto.getDictionaryId());
field.setIsDataType(dto.getIsDataType());
field.setIsDataTypeDetails(dto.getIsDataType() == 1 ? "varchar":"int");
field.setIsColumnLength(dto.getIsColumnLength());
if(null == dto.getIsSequence()) {
Integer maxSequence = fieldRepository.getMaxSequence(dto.getIsType());

Loading…
Cancel
Save