xia 3 years ago
parent
commit
d4acc50240
  1. 69
      archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDicSettingController.java
  2. 8
      archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDictrionaryController.java
  3. 4
      archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesListSettingController.java
  4. 12
      archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesNoSetting.java
  5. 10
      archives/src/main/java/com/storeroom/modules/dictionary/repository/ArchivesDictionaryRepository.java
  6. 10
      archives/src/main/java/com/storeroom/modules/dictionary/repository/ArchivesNoSettingRepository.java
  7. 8
      archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesDictionaryService.java
  8. 36
      archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesNoSettingService.java
  9. 2
      archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesDicStateDTO.java
  10. 2
      archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesDictionaryDTO.java
  11. 10
      archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesNoSettingDTO.java
  12. 40
      archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesDictionaryImpl.java
  13. 74
      archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesNoSettingImpl.java
  14. 3
      archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesTypeServiceImpl.java
  15. 3
      archives/src/main/java/com/storeroom/modules/dictionary/service/impl/DynamicTableImpl.java

69
archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDicSettingController.java

@ -1,18 +1,27 @@
package com.storeroom.modules.dictionary.controller;
import com.storeroom.annotaion.rest.AnonymousDeleteMapping;
import com.storeroom.annotaion.rest.AnonymousGetMapping;
import com.storeroom.annotaion.rest.AnonymousPostMapping;
import com.storeroom.annotaion.rest.AnonymousPutMapping;
import com.storeroom.exception.BaseException;
import com.storeroom.modules.dictionary.service.ArchivesDictionaryService;
import com.storeroom.modules.dictionary.service.ArchivesNoSettingService;
import com.storeroom.modules.dictionary.service.dto.ArchivesNoSettingDTO;
import com.storeroom.utils.ApiResponse;
import com.storeroom.utils.StringUtils;
import com.storeroom.utils.enums.ResponseStatus;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.Set;
@Api(tags = "档号规则设置")
@RestController
@RequiredArgsConstructor
@ -20,13 +29,65 @@ import org.springframework.web.bind.annotation.RestController;
public class ArchivesDicSettingController {
private final ArchivesNoSettingService arcSettingService;
private final ArchivesDictionaryService archivesDictionaryService;
@ApiOperation("新增规则字段")
@AnonymousPostMapping("create")
public ApiResponse<Object> create(@RequestBody ArchivesNoSettingDTO archivesNoSettingDTO){
arcSettingService.create(archivesNoSettingDTO);
return ApiResponse.success(ResponseStatus.SUCCESS);
public ApiResponse<Object> create(@RequestBody Set<ArchivesNoSettingDTO> archivesNoSettingDTOS) {
if (archivesNoSettingDTOS.size() != 0 ) {
archivesNoSettingDTOS.forEach(item -> {
archivesDictionaryService.updateIsDisplayFormat(item.getDictionaryId(), true);
});
arcSettingService.create(archivesNoSettingDTOS);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
throw new BaseException("数据异常");
}
@ApiOperation("移除规则字段")
@AnonymousDeleteMapping("delete")
public ApiResponse<Object> delete(@RequestBody Set<ArchivesNoSettingDTO> archivesNoSettingDTOS) {
if (archivesNoSettingDTOS.size() != 0) {
archivesNoSettingDTOS.forEach(item -> {
archivesDictionaryService.updateIsDisplayFormat(item.getDictionaryId(), false);
});
arcSettingService.delete(archivesNoSettingDTOS);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
throw new BaseException("数据异常");
}
@ApiOperation("修改规则字段")
@AnonymousPutMapping("update")
public ApiResponse<Object> update(@RequestBody Set<ArchivesNoSettingDTO> archivesNoSettingDTOS) {
if (archivesNoSettingDTOS.size() != 0) {
arcSettingService.update(archivesNoSettingDTOS);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
throw new BaseException("数据异常");
}
@ApiOperation("修改规则排序")
@AnonymousPutMapping("squence")
public ApiResponse<Object> squence(@RequestBody Set<ArchivesNoSettingDTO> archivesNoSettingDTOS) {
if (archivesNoSettingDTOS.size() != 0) {
arcSettingService.sequence(archivesNoSettingDTOS);
return ApiResponse.success(ResponseStatus.SUCCESS);
}
throw new BaseException("数据异常");
}
@ApiOperation("获取规则列表")
@AnonymousGetMapping("list")
public ApiResponse<Object> getAll(@RequestParam String categoryId) {
if (!StringUtils.isEmpty(categoryId)) {
return ApiResponse.success(arcSettingService.findByCategoryId(categoryId));
}
throw new BaseException("id异常");
}
}

8
archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesDictrionaryController.java

@ -30,7 +30,7 @@ public class ArchivesDictrionaryController {
@ApiOperation("获取隐藏状态字典")
@AnonymousGetMapping("is-dispaly")
@AnonymousGetMapping("is-display")
public ApiResponse<Object> getIsDisPlayState(@RequestParam Boolean isDisPlayState,@RequestParam String categoryId) {
if (isDisPlayState != null) {
return ApiResponse.success(arcdicService.getIsDisPlayState(isDisPlayState,categoryId));
@ -83,11 +83,11 @@ public class ArchivesDictrionaryController {
@ApiOperation("门类字段管理")
@AnonymousGetMapping("manage")
public ApiResponse<Object> getFieldName(@RequestParam String categoryId, Integer isDataType,Boolean isInput) {
if (!StringUtils.isEmpty(categoryId) && isDataType != null) {
public ApiResponse<Object> getFieldName(@RequestParam String categoryId, Integer isType,Boolean isInput) {
if (!StringUtils.isEmpty(categoryId) && isType != null) {
ArchivesDicStateDTO dto = new ArchivesDicStateDTO();
dto.setCategoryId(categoryId);
dto.setIsDataType(isDataType);
dto.setIsType(isType);
dto.setIsInput(isInput);
return ApiResponse.success(arcdicService.getAll(dto));
}

4
archives/src/main/java/com/storeroom/modules/dictionary/controller/ArchivesListSettingController.java

@ -30,8 +30,8 @@ public class ArchivesListSettingController {
@ApiOperation("新增列表显示设置")
@AnonymousPostMapping("create")
public ApiResponse<Object> create(@RequestBody ArchivesDisplaySmallDTO archivesDisplaySmallDTO) {
if (!StringUtils.isEmpty(archivesDisplaySmallDTO.getId())) {
public ApiResponse<Object> create(@RequestBody Set<ArchivesDisplaySmallDTO> archivesDisplaySmallDTO) {
if (archivesDisplaySmallDTO.size() != 0) {
archivesDictionaryService.createListDisplay(archivesDisplaySmallDTO);
return ApiResponse.success(ResponseStatus.SUCCESS);
}

12
archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesNoSetting.java

@ -27,12 +27,12 @@ public class ArchivesNoSetting extends BaseEntity implements Serializable {
private String id;
@ApiModelProperty(value = "列名")
@Column(name = "filed_cn_name")
private String filedCnName;
@Column(name = "field_cn_name")
private String fieldCnName;
@ApiModelProperty(value = "字段名")
@Column(name = "filed_name")
private String filedName;
@Column(name = "field_name")
private String fieldName;
@ApiModelProperty(value = "连接符")
@Column(name = "connector")
@ -55,11 +55,11 @@ public class ArchivesNoSetting extends BaseEntity implements Serializable {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
ArchivesNoSetting that = (ArchivesNoSetting) o;
return Objects.equals(id, that.id) && Objects.equals(filedCnName, that.filedCnName) && Objects.equals(filedName, that.filedName) && Objects.equals(connector, that.connector) && Objects.equals(sequence, that.sequence) && Objects.equals(categoryId, that.categoryId) && Objects.equals(dictionaryId, that.dictionaryId);
return Objects.equals(id, that.id) && Objects.equals(fieldCnName, that.fieldCnName) && Objects.equals(fieldName, that.fieldName) && Objects.equals(connector, that.connector) && Objects.equals(sequence, that.sequence) && Objects.equals(categoryId, that.categoryId) && Objects.equals(dictionaryId, that.dictionaryId);
}
@Override
public int hashCode() {
return Objects.hash(id, filedCnName, filedName, connector, sequence, categoryId, dictionaryId);
return Objects.hash(id, fieldCnName, fieldName, connector, sequence, categoryId, dictionaryId);
}
}

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

@ -37,11 +37,11 @@ public interface ArchivesDictionaryRepository extends JpaRepository<ArchivesDict
/**
* 通过门类id字典数据类型输入状态查询
*
* @param categoryId
* @param isDateType
* @return
* @param
* @param
* @return /
*/
List<ArchivesDictionary> findByCategoryIdAndIsDataTypeAndIsInput(String categoryId, Integer isDateType,Boolean isInput);
List<ArchivesDictionary> findByCategoryIdAndIsTypeAndIsInput(String categoryId, Integer isType,Boolean isInput);
/**
* 通过门类id和字典数据类型查询
@ -49,7 +49,7 @@ public interface ArchivesDictionaryRepository extends JpaRepository<ArchivesDict
* @param isDateType
* @return
*/
List<ArchivesDictionary> findByCategoryIdAndIsDataType(String categoryId, Integer isDateType);
List<ArchivesDictionary> findByCategoryIdAndIsType(String categoryId, Integer isDateType);
/**
* 通过名称查询

10
archives/src/main/java/com/storeroom/modules/dictionary/repository/ArchivesNoSettingRepository.java

@ -3,6 +3,9 @@ package com.storeroom.modules.dictionary.repository;
import com.storeroom.modules.dictionary.domain.ArchivesNoSetting;
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 ArchivesNoSettingRepository extends JpaRepository<ArchivesNoSetting, String>, JpaSpecificationExecutor<ArchivesNoSetting> {
@ -16,4 +19,11 @@ public interface ArchivesNoSettingRepository extends JpaRepository<ArchivesNoSet
* @return \
*/
ArchivesNoSetting findByDictionaryId(String id);
@Query(value = "SELECT MAX(sequence) AS maxsque FROM archives_no_setting",nativeQuery = true)
Integer findByMax();
@Query(value = "SELECT * FROM archives_no_setting WHERE category_id = ?1 ORDER BY sequence ASC",nativeQuery = true)
List<ArchivesNoSetting> findByCategoryId(String id);
}

8
archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesDictionaryService.java

@ -82,7 +82,7 @@ public interface ArchivesDictionaryService {
* 修改列表显示设置
* @param archivesDisplaySmallDTO /
*/
void createListDisplay(ArchivesDisplaySmallDTO archivesDisplaySmallDTO);
void createListDisplay(Set<ArchivesDisplaySmallDTO> archivesDisplaySmallDTO);
/**
@ -103,4 +103,10 @@ public interface ArchivesDictionaryService {
* @param archivesDisplaySmallDTOS
*/
void updateOrderBy(Set<ArchivesDisplaySmallDTO> archivesDisplaySmallDTOS);
/**
* 修改isDisplayformat状态
* @param id /
*/
void updateIsDisplayFormat(String id,Boolean isDisplayformat);
}

36
archives/src/main/java/com/storeroom/modules/dictionary/service/ArchivesNoSettingService.java

@ -3,6 +3,9 @@ package com.storeroom.modules.dictionary.service;
import com.storeroom.modules.dictionary.service.dto.ArchivesNoSettingDTO;
import java.util.List;
import java.util.Set;
/**
* 档案配置规则服务
*/
@ -11,6 +14,7 @@ public interface ArchivesNoSettingService {
/**
* 判断自动生成数据状态
*
* @param dicId
* @return
*/
@ -19,7 +23,37 @@ public interface ArchivesNoSettingService {
/**
* 创建规则字段
*
* @param archivesNoSettingDTO /
*/
void create(ArchivesNoSettingDTO archivesNoSettingDTO);
void create(Set<ArchivesNoSettingDTO> archivesNoSettingDTO);
/**
* 删除规则字段
*
* @param archivesNoSettingDTOS /
*/
void delete(Set<ArchivesNoSettingDTO> archivesNoSettingDTOS);
/**
* 修改规则字段
*
* @param archivesNoSettingDTOS /
*/
void update(Set<ArchivesNoSettingDTO> archivesNoSettingDTOS);
/**
* 修改排序
*
* @param archivesNoSettingDTOS /
*/
void sequence(Set<ArchivesNoSettingDTO> archivesNoSettingDTOS);
/**
* 获取所有规则设置列表
*
* @return /
*/
List<ArchivesNoSettingDTO> findByCategoryId(String categoryId);
}

2
archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesDicStateDTO.java

@ -14,7 +14,7 @@ public class ArchivesDicStateDTO implements Serializable {
private String categoryId;
@NotNull
private Integer isDataType;
private Integer isType;
@NotNull
private Boolean isInput;

2
archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesDictionaryDTO.java

@ -73,6 +73,8 @@ public class ArchivesDictionaryDTO extends BaseDTO implements Serializable {
private Integer displayLength;
private Integer queue;
@Override
public boolean equals(Object o) {
if (this == o) return true;

10
archives/src/main/java/com/storeroom/modules/dictionary/service/dto/ArchivesNoSettingDTO.java

@ -2,18 +2,20 @@ package com.storeroom.modules.dictionary.service.dto;
import com.storeroom.base.BaseDTO;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
@Data
@Getter
@Setter
public class ArchivesNoSettingDTO extends BaseDTO implements Serializable {
private String id;
private String filedCnName;
private String fieldCnName;
private String filedName;
private String fieldName;
private String connector;

40
archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesDictionaryImpl.java

@ -41,9 +41,9 @@ public class ArchivesDictionaryImpl implements ArchivesDictionaryService {
public List<ArchivesDictionaryDTO> getAll(ArchivesDicStateDTO archivesDicStateDTO) {
List<ArchivesDictionary> list;
if (archivesDicStateDTO.getIsInput() != null) {
list = archivesDictionaryRepository.findByCategoryIdAndIsDataTypeAndIsInput(archivesDicStateDTO.getCategoryId(), archivesDicStateDTO.getIsDataType(), archivesDicStateDTO.getIsInput());
list = archivesDictionaryRepository.findByCategoryIdAndIsTypeAndIsInput(archivesDicStateDTO.getCategoryId(), archivesDicStateDTO.getIsType(), archivesDicStateDTO.getIsInput());
} else {
list = archivesDictionaryRepository.findByCategoryIdAndIsDataType(archivesDicStateDTO.getCategoryId(), archivesDicStateDTO.getIsDataType());
list = archivesDictionaryRepository.findByCategoryIdAndIsType(archivesDicStateDTO.getCategoryId(), archivesDicStateDTO.getIsType());
}
List<ArchivesDictionaryDTO> dtoList = new ArrayList<>();
list.forEach(item -> {
@ -160,20 +160,23 @@ public class ArchivesDictionaryImpl implements ArchivesDictionaryService {
}
@Override
public void createListDisplay(ArchivesDisplaySmallDTO archivesDisplaySmallDTO) {
ArchivesDictionary archivesDictionary = archivesDictionaryRepository.findById(archivesDisplaySmallDTO.getId()).orElseGet(ArchivesDictionary::new);
if (archivesDictionary != null) {
if (archivesDictionary.getDisplayOrder() == null) {
archivesDictionary.setDisplayOrder(1);
} else {
Integer num = archivesDictionary.getDisplayOrder() + 1;
archivesDictionary.setDisplayOrder(num);
public void createListDisplay(Set<ArchivesDisplaySmallDTO> archivesDisplaySmallDTO) {
archivesDisplaySmallDTO.forEach(item->{
ArchivesDictionary archivesDictionary = archivesDictionaryRepository.findById(item.getId()).orElseGet(ArchivesDictionary::new);
if (archivesDictionary != null) {
if (archivesDictionary.getDisplayOrder() == null) {
archivesDictionary.setDisplayOrder(1);
} else {
Integer num = archivesDictionary.getDisplayOrder() + 1;
archivesDictionary.setDisplayOrder(num);
}
archivesDictionary.setDisplayLength(item.getDisplayLength());
archivesDictionary.setDisplayformatType(item.getDisplayformatType());
archivesDictionary.setIsDisplay(item.getIsDisplay());
archivesDictionaryRepository.save(archivesDictionary);
}
archivesDictionary.setDisplayLength(archivesDisplaySmallDTO.getDisplayLength());
archivesDictionary.setDisplayformatType(archivesDisplaySmallDTO.getDisplayformatType());
archivesDictionary.setIsDisplay(archivesDisplaySmallDTO.getIsDisplay());
archivesDictionaryRepository.save(archivesDictionary);
}
});
}
@ -216,4 +219,11 @@ public class ArchivesDictionaryImpl implements ArchivesDictionaryService {
});
}
@Override
public void updateIsDisplayFormat(String id,Boolean isDisplayformat) {
ArchivesDictionary ad=archivesDictionaryRepository.findById(id).orElseGet(ArchivesDictionary::new);
ad.setIsDisplayformat(isDisplayformat);
archivesDictionaryRepository.save(ad);
}
}

74
archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesNoSettingImpl.java

@ -8,7 +8,13 @@ import com.storeroom.modules.dictionary.service.dto.ArchivesNoSettingDTO;
import com.storeroom.modules.dictionary.service.mapstruct.ArchivesNoSettingMapper;
import com.storeroom.utils.NanoIdUtils;
import lombok.RequiredArgsConstructor;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
@Service
@RequiredArgsConstructor
@ -29,9 +35,69 @@ public class ArchivesNoSettingImpl implements ArchivesNoSettingService {
}
@Override
public void create(ArchivesNoSettingDTO archivesNoSettingDTO) {
archivesNoSettingDTO.setId(NanoIdUtils.randomNanoId());
ArchivesNoSetting as = archivesNoSettingMapper.toEntity(archivesNoSettingDTO);
ansRepostiory.save(as);
public void create(Set<ArchivesNoSettingDTO> archivesNoSettingDTO) {
archivesNoSettingDTO.forEach(item -> {
Integer num = ansRepostiory.findByMax();
if (num == 0) {
item.setSequence(1);
}
item.setId(NanoIdUtils.randomNanoId());
item.setSequence(num + 1);
ArchivesNoSetting as = archivesNoSettingMapper.toEntity(item);
ansRepostiory.save(as);
});
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(Set<ArchivesNoSettingDTO> archivesNoSettingDTOS) {
archivesNoSettingDTOS.forEach(item -> {
ArchivesNoSetting as = archivesNoSettingMapper.toEntity(item);
ansRepostiory.delete(as);
});
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(Set<ArchivesNoSettingDTO> archivesNoSettingDTOS) {
archivesNoSettingDTOS.forEach(item -> {
ArchivesNoSetting as = ansRepostiory.findById(item.getId()).orElseGet(ArchivesNoSetting::new);
if (as != null) {
as.setId(item.getId());
as.setCategoryId(item.getCategoryId());
as.setConnector(item.getConnector());
as.setFieldCnName(item.getFieldCnName());
as.setSequence(item.getSequence());
as.setFieldName(item.getFieldName());
as.setDictionaryId(item.getDictionaryId());
ansRepostiory.save(as);
}
});
}
@Override
public void sequence(Set<ArchivesNoSettingDTO> archivesNoSettingDTOS) {
archivesNoSettingDTOS.forEach(item -> {
ArchivesNoSetting as = ansRepostiory.findById(item.getId()).orElseGet(ArchivesNoSetting::new);
if (as != null) {
as.setSequence(item.getSequence());
ansRepostiory.save(as);
}
});
}
@Override
public List<ArchivesNoSettingDTO> findByCategoryId(String categoryId) {
List<ArchivesNoSetting> ar = ansRepostiory.findByCategoryId(categoryId);
List<ArchivesNoSettingDTO> dtoList = new ArrayList<>();
ar.forEach(item -> {
ArchivesNoSettingDTO dto = archivesNoSettingMapper.toDto(item);
dtoList.add(dto);
});
return dtoList;
}
}

3
archives/src/main/java/com/storeroom/modules/dictionary/service/impl/ArchivesTypeServiceImpl.java

@ -1,7 +1,6 @@
package com.storeroom.modules.dictionary.service.impl;
import com.storeroom.exception.BaseException;
import com.storeroom.modules.dictionary.domain.ArchivesDictionary;
import com.storeroom.modules.dictionary.domain.ArchivesType;
import com.storeroom.modules.dictionary.repository.ArchivesTypeRepository;
import com.storeroom.modules.dictionary.service.ArchivesTypeService;
@ -96,6 +95,7 @@ public class ArchivesTypeServiceImpl implements ArchivesTypeService {
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String id) {
ArchivesType archivesType=archivesTypeRepository.findById(id).orElseGet(ArchivesType::new);
String tableName = archivesType.getEnName();
@ -104,6 +104,7 @@ public class ArchivesTypeServiceImpl implements ArchivesTypeService {
}
@Override
@Transactional
public void updateSort(Set<ArcTypeSmallDTO> arcDicSmallDTO) {
List<ArchivesType> list = new ArrayList<>();
for (ArcTypeSmallDTO id : arcDicSmallDTO) {

3
archives/src/main/java/com/storeroom/modules/dictionary/service/impl/DynamicTableImpl.java

@ -85,7 +85,7 @@ public class DynamicTableImpl implements DynamicTableService {
@Override
public void DeleteTable(String tableName) {
if (!StringUtils.isEmpty(tableName) && checkTableNameExitst(tableName)) {
//StringBuilder stringBuilder = new StringBuilder("DROP TABLE " + tableName + "");
String sql = "DROP TABLE " + tableName + "";
jdbcTemplate.execute(sql);
}
@ -141,6 +141,7 @@ public class DynamicTableImpl implements DynamicTableService {
archivesDictionaryDTO.setIsType(j.getIsType());
archivesDictionaryDTO.setIsSystem(j.getIsSystem());
archivesDictionaryDTO.setIsColumnType(j.getIsType());
archivesDictionaryDTO.setIsInput(true);
newList.add(archivesDictionaryDTO);
}

Loading…
Cancel
Save