diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dict.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dict.java index a1a4e29..126f2e5 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dict.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dict.java @@ -15,41 +15,58 @@ */ package org.nl.modules.system.domain; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; +import lombok.Data; import org.nl.modules.common.base.BaseEntity; import javax.persistence.*; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.io.Serializable; -import java.util.List; /** * @author Zheng Jie * @date 2019-04-10 */ +@Data @Entity -@Getter -@Setter -@Table(name="sys_dict") public class Dict extends BaseEntity implements Serializable { @Id - @Column(name = "dict_id") - @NotNull(groups = Update.class) - @ApiModelProperty(value = "ID", hidden = true) + @Column(name = "role_id") + @NotNull(groups = {Update.class}) @GeneratedValue(strategy = GenerationType.IDENTITY) + @ApiModelProperty(value = "ID", hidden = true) private Long id; + // 字典标识 + @JsonSerialize(using= ToStringSerializer.class) + private Long dict_id; - @OneToMany(mappedBy = "dict",cascade={CascadeType.PERSIST,CascadeType.REMOVE}) - private List dictDetails; + // 编码 + private String code; - @NotBlank - @ApiModelProperty(value = "名称") + // 名称 private String name; - @ApiModelProperty(value = "描述") - private String description; -} \ No newline at end of file + // 字典标签 + private String label; + + // 字典值 + private String value; + + // 排序号 + private String dict_sort; + + // 字典类型 + private String dict_type; + + /** + * 参数123 + */ + private String para1; + + private String para2; + + private String para3; +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/DictDetail.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/DictDetail.java index a0ec089..763271c 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/DictDetail.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/DictDetail.java @@ -41,9 +41,6 @@ public class DictDetail extends BaseEntity implements Serializable { @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; - @JoinColumn(name = "dict_id") - @ManyToOne(fetch=FetchType.LAZY) - @ApiModelProperty(value = "字典", hidden = true) private Dict dict; @ApiModelProperty(value = "字典标签") diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/repository/DictDetailRepository.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/repository/DictDetailRepository.java index a16ac27..02c670e 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/repository/DictDetailRepository.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/repository/DictDetailRepository.java @@ -32,5 +32,4 @@ public interface DictDetailRepository extends JpaRepository, J * @param name / * @return / */ - List findByDictName(String name); -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictController.java index e605eaa..27be096 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictController.java @@ -23,6 +23,7 @@ import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.logging.annotation.Log; import org.nl.modules.system.domain.Dict; import org.nl.modules.system.service.DictService; +import org.nl.modules.system.service.dto.DictDto; import org.nl.modules.system.service.dto.DictQueryCriteria; import org.springframework.data.domain.Pageable; import org.springframework.http.HttpStatus; @@ -72,8 +73,8 @@ public class DictController { @ApiOperation("新增字典") @PostMapping @SaCheckPermission("dict:add") - public ResponseEntity create(@Validated @RequestBody Dict resources){ - if (resources.getId() != null) { + public ResponseEntity create(@RequestBody Dict resources){ + if (resources.getDict_id() != null) { throw new BadRequestException("A new "+ ENTITY_NAME +" cannot already have an ID"); } dictService.create(resources); diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictDetailController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictDetailController.java index f81d986..c2a7e64 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictDetailController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictDetailController.java @@ -79,8 +79,8 @@ public class DictDetailController { if (resources.getId() != null) { throw new BadRequestException("A new "+ ENTITY_NAME +" cannot already have an ID"); } - Optional d=dictRepository.findById(resources.getDict().getId()); - resources.setName(dictRepository.findById(resources.getDict().getId()).get().getName()); + Optional d=dictRepository.findById(resources.getDict().getDict_id()); + resources.setName(dictRepository.findById(resources.getDict().getDict_id()).get().getName()); dictDetailService.create(resources); return new ResponseEntity<>(HttpStatus.CREATED); } @@ -90,7 +90,7 @@ public class DictDetailController { @PutMapping @SaCheckPermission("dict:edit") public ResponseEntity update(@Validated(DictDetail.Update.class) @RequestBody DictDetail resources){ - resources.setName(dictRepository.findById(resources.getDict().getId()).get().getName()); + resources.setName(dictRepository.findById(resources.getDict().getDict_id()).get().getName()); dictDetailService.update(resources); return new ResponseEntity<>(HttpStatus.NO_CONTENT); } @@ -103,4 +103,4 @@ public class DictDetailController { dictDetailService.delete(id); return new ResponseEntity<>(HttpStatus.OK); } -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictService.java index 76a0011..da6be0d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictService.java @@ -47,6 +47,14 @@ public interface DictService { */ List queryAll(DictQueryCriteria dict); + /** + * 根据ID查询 + * @param dict_id ID + * @return Point + */ + Dict findById(Long dict_id); + + /** * 创建 * @param resources / @@ -73,4 +81,4 @@ public interface DictService { * @throws IOException / */ void download(List queryAll, HttpServletResponse response) throws IOException; -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDto.java index 5eb3a84..9c6664a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDto.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDto.java @@ -15,6 +15,9 @@ */ package org.nl.modules.system.service.dto; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; import lombok.Getter; import lombok.Setter; import org.nl.modules.common.base.BaseDTO; @@ -26,15 +29,55 @@ import java.util.List; * @author Zheng Jie * @date 2019-04-10 */ -@Getter -@Setter -public class DictDto extends BaseDTO implements Serializable { +@Data +public class DictDto implements Serializable { - private Long id; + // 字典标识 + @JsonSerialize(using= ToStringSerializer.class) + private Long dict_id; - private List dictDetails; + // 编码 + private String code; + // 名称 private String name; - private String description; + // 字典标签 + private String label; + + // 字典值 + private String value; + + // 排序号 + private String dict_sort; + + // 字典类型 + private String dict_type; + + /** + * 参数123 + */ + private String para1; + + private String para2; + + private String para3; + + /** 创建人 */ + private Long create_id; + + /** 创建人 */ + private String create_name; + + /** 创建时间 */ + private String create_time; + + /** 修改人 */ + private Long update_optid; + + /** 修改人 */ + private String update_optname; + + /** 修改时间 */ + private String update_time; } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictQueryCriteria.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictQueryCriteria.java index 410b725..92a03f7 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictQueryCriteria.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictQueryCriteria.java @@ -25,6 +25,6 @@ import org.nl.modules.common.annotation.Query; @Data public class DictQueryCriteria { - @Query(blurry = "name,description") + @Query(blurry = "name") private String blurry; } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictDetailServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictDetailServiceImpl.java index e60fa8e..216000b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictDetailServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictDetailServiceImpl.java @@ -80,7 +80,7 @@ public class DictDetailServiceImpl implements DictDetailService { @Override @Cacheable(key = "'name:' + #p0") public List getDictByName(String name) { - return dictDetailMapper.toDto(dictDetailRepository.findByDictName(name)); + return null; } @Override @@ -93,7 +93,7 @@ public class DictDetailServiceImpl implements DictDetailService { } public void delCaches(DictDetail dictDetail){ - Dict dict = dictRepository.findById(dictDetail.getDict().getId()).orElseGet(Dict::new); + Dict dict = dictRepository.findById(dictDetail.getDict().getDict_id()).orElseGet(Dict::new); redisUtils.del("dict::name:" + dict.getName()); } -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java index 246675d..ec1f11f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictServiceImpl.java @@ -95,7 +95,7 @@ public class DictServiceImpl implements DictService { @Override @Transactional(rollbackFor = Exception.class) public void update(Dict resources) { - DictDto entity = this.findById(resources.getDict_id()); + Dict entity = this.findById(resources.getDict_id()); if (entity == null) { throw new BadRequestException("被删除或无权限,操作失败!"); } @@ -115,12 +115,14 @@ public class DictServiceImpl implements DictService { @Override @Transactional(rollbackFor = Exception.class) public void delete(Set ids) { - // 清理缓存 - List dicts = dictRepository.findByIdIn(ids); - for (Dict dict : dicts) { - delCaches(dict); + WQLObject wo = WQLObject.getWQLObject("sys_dict"); + for (Long dict_id : ids) { + // 清理缓存 + Dict dictDto = this.findById(dict_id); + delCaches(dictDto); + // 删除数据 + wo.delete("id = '" + dict_id + "'"); } - dictRepository.deleteByIdIn(ids); } @Override @@ -155,13 +157,13 @@ public class DictServiceImpl implements DictService { } @Override - public DictDto findById(Long dict_id) { + public Dict findById(Long dict_id) { WQLObject wo = WQLObject.getWQLObject("sys_dict"); JSONObject json = wo.query("dict_id =" + dict_id + "").uniqueResult(0); if (ObjectUtil.isNotEmpty(json)) { - return json.toJavaObject(DictDto.class); + return json.toJavaObject(Dict.class); } - final DictDto obj = json.toJavaObject(DictDto.class); + final Dict obj = json.toJavaObject(Dict.class); return obj; } } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_DICT.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_DICT.wql index e69de29..ef0ca9d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_DICT.wql +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_DICT.wql @@ -0,0 +1,58 @@ +[交易说明] + 交易名: 字典分页查询 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.blurry TYPEAS s_string + + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + PAGEQUERY + SELECT + dict.* + FROM + sys_dict dict + WHERE + 1 = 1 + OPTION 输入.blurry <> "" + (dict.code like "%" 输入.blurry "%" or dict.name like "%" 输入.blurry "%") + ENDOPTION + ENDSELECT + ENDPAGEQUERY + ENDIF + + +