|
@@ -0,0 +1,109 @@
|
|
|
+package com.xy.service;
|
|
|
+
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import com.xy.dto.SysDict.SysDictDto;
|
|
|
+import com.xy.dto.SysDict.SysDictItemDto;
|
|
|
+import com.xy.dto.SysDict.SysDictItemPageDto;
|
|
|
+import com.xy.dto.SysDict.SysDictPageDto;
|
|
|
+import com.xy.entity.SysDict;
|
|
|
+import com.xy.entity.SysDictItem;
|
|
|
+import com.xy.utils.Beans;
|
|
|
+import com.xy.utils.PageBean;
|
|
|
+import com.xy.utils.R;
|
|
|
+import com.xy.vo.SysDictItemVo;
|
|
|
+import com.xy.vo.SysDictVo;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import lombok.RequiredArgsConstructor;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+import static com.xy.utils.Beans.copy;
|
|
|
+import static com.xy.utils.PlusBeans.toIPage;
|
|
|
+import static com.xy.utils.PlusBeans.toPageBean;
|
|
|
+
|
|
|
+@Service
|
|
|
+@RequiredArgsConstructor
|
|
|
+@Api(tags = "字典表管理API")
|
|
|
+public class SysApiServiceImpl implements SysDicApiService {
|
|
|
+
|
|
|
+
|
|
|
+ private final SysDictItemService sysDictItemService;
|
|
|
+
|
|
|
+ private final SysDictService sysDictService;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<SysDictVo> getById(Long id) {
|
|
|
+ return R.ok(Beans.copy(SysDictVo.class, sysDictItemService.getById(id)));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<PageBean<SysDictVo>> getDictPage(SysDictPageDto dto) {
|
|
|
+ PageBean pageBean = dto.getPage();
|
|
|
+ IPage page = sysDictService.page(toIPage(pageBean), Wrappers.<com.xy.entity.SysDict>lambdaQuery()
|
|
|
+ .like(StrUtil.isNotBlank(dto.getDictKey()), com.xy.entity.SysDict::getDictKey, dto.getDictKey()));
|
|
|
+ return R.ok(toPageBean(SysDictVo.class, page));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<List<SysDictItemVo>> getDictByKey(String key) {
|
|
|
+ List<SysDictItem> sysDictItemList = sysDictItemService.list(Wrappers.<SysDictItem>lambdaQuery().eq(SysDictItem::getDictKey, key));
|
|
|
+ return R.ok(copy(SysDictItemVo.class, sysDictItemList));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<Boolean> add(SysDictDto sysDictDto) {
|
|
|
+ return R.ok(sysDictService.save(copy(SysDict.class, sysDictDto)));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<Boolean> removeById(Long id) {
|
|
|
+ sysDictService.removeDict(id);
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<Boolean> updateSysDictById(SysDictDto sysDictDto) {
|
|
|
+ sysDictService.updateDict(copy(com.xy.entity.SysDict.class, sysDictDto));
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<PageBean<SysDictItemVo>> getSysDictItemPage(SysDictItemPageDto pageDto) {
|
|
|
+ PageBean pageBean = pageDto.getPage();
|
|
|
+ SysDictItem sysDictItem = copy(SysDictItem.class, pageDto);
|
|
|
+ IPage page = sysDictItemService.page(toIPage(pageBean), Wrappers.query(sysDictItem));
|
|
|
+ return R.ok(toPageBean(SysDictItemVo.class, page));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<SysDictItemVo> getDictItemById(Long id) {
|
|
|
+ return R.ok(copy(SysDictItemVo.class, sysDictItemService.getById(id)));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<Boolean> addItem(SysDictItemDto sysDictItemDto) {
|
|
|
+ return R.ok(sysDictItemService.save(copy(SysDictItem.class, sysDictItemDto)));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<Boolean> updateSysDictItemById(SysDictItemDto sysDictItemDto) {
|
|
|
+ sysDictItemService.updateDictItem(copy(SysDictItem.class, sysDictItemDto));
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<Boolean> removeDictItemById(Long id) {
|
|
|
+ sysDictItemService.removeDictItem(id);
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R<Boolean> clearDictCache() {
|
|
|
+ sysDictService.clearDictCache();
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+}
|