From 9f5592e93a3b9774ba5fa5f791727b983e134869 Mon Sep 17 00:00:00 2001 From: zhaoxiaohao <913652501@qq.com> Date: Tue, 07 Apr 2020 17:50:43 +0800 Subject: [PATCH] 添加字典管理功能 --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/resources/application.yml | 1 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java | 47 +++++++++++++++ kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/vo/SysDictionariesVo.java | 10 +++ kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDictionariesService.java | 8 ++ kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDictionariesMapper.java | 2 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDictionariesController.java | 30 +++++++++ kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDictionaries.java | 9 +- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDictionariesMapper.xml | 14 ++++ 8 files changed, 110 insertions(+), 11 deletions(-) diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDictionaries.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDictionaries.java index a04cd74..563a202 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDictionaries.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDictionaries.java @@ -1,10 +1,7 @@ package com.kidgrow.usercenter.model; +import com.baomidou.mybatisplus.annotation.*; import com.kidgrow.common.model.SuperModel; -import com.baomidou.mybatisplus.annotation.FieldFill; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.activerecord.Model; import lombok.AllArgsConstructor; import lombok.Data; @@ -36,6 +33,9 @@ */ @NotEmpty(message = "字典值不能为空") private String dictionariesName; + + @NotEmpty(message = "字典KEY不能为空") + private String dictionariesKey; /** * 字典归属分类的标识(如果这个字典项是分类,则该字段为空) */ @@ -47,6 +47,7 @@ /** * 是否删除,1删除,0未删除 */ + @TableLogic private Integer isDel; /** * 状态,1启用,0停用 diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/vo/SysDictionariesVo.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/vo/SysDictionariesVo.java new file mode 100644 index 0000000..28ede91 --- /dev/null +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/vo/SysDictionariesVo.java @@ -0,0 +1,10 @@ +package com.kidgrow.usercenter.vo; + +import com.kidgrow.usercenter.model.SysDictionaries; +import lombok.Data; + +@Data +public class SysDictionariesVo extends SysDictionaries { + + private String dictionariesClassName; +} diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDictionariesMapper.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDictionariesMapper.java index 8721214..141fe6e 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDictionariesMapper.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDictionariesMapper.java @@ -31,4 +31,6 @@ * @return SysDictionaries对象 */ SysDictionaries findByObject(@Param("p") SysDictionaries sysDictionaries); + + List<SysDictionaries> findAll(@Param("p") Map<String, Object> params); } diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDictionariesService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDictionariesService.java index 1c5fba0..933ce9d 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDictionariesService.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDictionariesService.java @@ -1,9 +1,11 @@ package com.kidgrow.usercenter.service; +import com.kidgrow.common.model.ResultBody; import com.kidgrow.usercenter.model.SysDictionaries; import com.kidgrow.common.model.PageResult; import com.kidgrow.common.service.ISuperService; +import java.util.List; import java.util.Map; /** @@ -20,7 +22,7 @@ * @param params * @return */ - PageResult<SysDictionaries> findList(Map<String, Object> params); + PageResult findList(Map<String, Object> params); /** @@ -29,5 +31,9 @@ * @return SysDictionaries对象 */ SysDictionaries findByObject(SysDictionaries sysDictionaries); + + ResultBody updateEnabled(Map<String, Object> params); + + List<SysDictionaries> findAll(Map<String, Object> params); } diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java index 7b5ad28..f53f2a7 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java @@ -1,10 +1,18 @@ package com.kidgrow.usercenter.service.impl; +import com.baomidou.mybatisplus.core.conditions.AbstractWrapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.kidgrow.common.model.ResultBody; +import com.kidgrow.usercenter.vo.SysDictionariesVo; +import org.apache.commons.lang3.StringUtils; +import org.springframework.cglib.beans.BeanCopier; import org.springframework.stereotype.Service; import com.kidgrow.common.model.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.kidgrow.common.service.impl.SuperServiceImpl; +import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import org.apache.commons.collections4.MapUtils; @@ -31,10 +39,24 @@ * @return */ @Override - public PageResult<SysDictionaries> findList(Map<String, Object> params){ + public PageResult findList(Map<String, Object> params){ Page<SysDictionaries> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); List<SysDictionaries> list = baseMapper.findList(page, params); - return PageResult.<SysDictionaries>builder().data(list).code(0).count(page.getTotal()).build(); + List<SysDictionariesVo> listvo = new ArrayList<>(); + for (SysDictionaries dictionaries:list + ) { + SysDictionariesVo sysDictionariesVo=new SysDictionariesVo(); + BeanCopier beanCopier = BeanCopier.create(SysDictionaries.class, SysDictionariesVo.class, false); + beanCopier.copy(dictionaries,sysDictionariesVo,null); + if(StringUtils.isNotBlank(dictionaries.getDictionariesClassId())){ + SysDictionaries dic = baseMapper.selectById(dictionaries.getDictionariesClassId()); + if(dic!=null){ + sysDictionariesVo.setDictionariesClassName(dic.getDictionariesName()); + } + } + listvo.add(sysDictionariesVo); + } + return PageResult.<SysDictionariesVo>builder().data(listvo).code(0).count(page.getTotal()).build(); } /** @@ -46,4 +68,25 @@ public SysDictionaries findByObject(SysDictionaries sysDictionaries){ return baseMapper.findByObject(sysDictionaries); } + + @Override + public ResultBody updateEnabled(Map<String, Object> params) { + Long id = MapUtils.getLong(params, "id"); + SysDictionaries dictionaries = baseMapper.selectById(id); + if(dictionaries!=null){ + Integer enabled = MapUtils.getInteger( params,"enabled"); + dictionaries.setEnabled(enabled); + dictionaries.setUpdateTime(new Date()); + int i = baseMapper.updateById(dictionaries); + return ResultBody.ok(0,"更新成功"); + }else { + return ResultBody.failed("更新成功"); + } + + } + + @Override + public List<SysDictionaries> findAll(Map<String, Object> params) { + return baseMapper.findAll(params); + } } diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDictionariesMapper.xml b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDictionariesMapper.xml index f9c5492..b8f51c3 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDictionariesMapper.xml +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDictionariesMapper.xml @@ -16,10 +16,13 @@ and id = #{p.id} </if> <if test="p.dictionariesName != null and p.dictionariesName !=''"> - and dictionaries_name = #{p.dictionariesName} + and dictionaries_name like '%${p.dictionariesName}%' </if> <if test="p.dictionariesClassId != null and p.dictionariesClassId !=''"> and dictionaries_class_id = #{p.dictionariesClassId} + </if> + <if test="p.dictionariesClassIdIsNull != null and p.dictionariesClassIdIsNull !=''"> + and dictionaries_class_id is null </if> <if test="p.dictionariesOrder != null and p.dictionariesOrder !=''"> and dictionaries_order = #{p.dictionariesOrder} @@ -67,6 +70,13 @@ <include refid="Column_List"/> from sys_dictionaries <include refid="where"/> - order by id desc + order by id asc + </select> + <select id="findAll" resultType="com.kidgrow.usercenter.model.SysDictionaries"> + select + <include refid="Column_List"/> + from sys_dictionaries + <include refid="where"/> + order by id asc </select> </mapper> \ No newline at end of file diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDictionariesController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDictionariesController.java index 47b328b..4fc3002 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDictionariesController.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDictionariesController.java @@ -2,6 +2,7 @@ import java.util.Map; import com.kidgrow.common.controller.BaseController; +import org.apache.commons.collections4.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.ObjectError; import org.springframework.web.bind.annotation.*; @@ -50,12 +51,12 @@ @ApiImplicitParam(name = "limit", value = "分页结束位置", required = true, dataType = "Integer") }) @GetMapping - public ResultBody<PageResult> list(@RequestParam Map<String, Object> params) { + public PageResult list(@RequestParam Map<String, Object> params) { if(params.size()==0){ params.put("page",1); params.put("limit",10); } - return ResultBody.ok().data(sysDictionariesService.findList(params)); + return sysDictionariesService.findList(params); } /** @@ -65,6 +66,12 @@ @GetMapping("/{id}") public ResultBody findById(@PathVariable Long id) { SysDictionaries model = sysDictionariesService.getById(id); + return ResultBody.ok().data(model).msg("查询成功"); + } + @ApiOperation(value = "根据SysDictionaries当做查询条件进行查询") + @PostMapping("/findAll") + public ResultBody findAll(@RequestBody Map<String, Object> params) { + List<SysDictionaries> model = sysDictionariesService.findAll(params); return ResultBody.ok().data(model).msg("查询成功"); } @@ -102,6 +109,25 @@ } /** + * 修改字典表状态 + * + * @param params + * @return + */ + @ApiOperation(value = "修改字典表状态") + @GetMapping("/updateEnabled") + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "用户id", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "enabled", value = "是否启用", required = true, dataType = "Integer") + }) + public ResultBody updateEnabled(@RequestParam Map<String, Object> params) { + Long id = MapUtils.getLong(params, "id"); + if (id==null) { + return ResultBody.failed("请选择一条数据"); + } + return sysDictionariesService.updateEnabled(params); + } + /** * 删除 */ @ApiOperation(value = "删除") diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/resources/application.yml b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/resources/application.yml index 2837660..07f5a57 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/resources/application.yml +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/resources/application.yml @@ -65,6 +65,7 @@ - sys_user_logs - sys_organization - sys_user_org + - sys_dictionaries ignoreSqls: - com.kidgrow.usercenter.mapper.SysRoleMapper.findAll -- Gitblit v1.8.0