From 59e91a4e9ddaf23cebb12993c774aa899ab22d16 Mon Sep 17 00:00:00 2001
From: 郑永安 <zyazyz250@sina.com>
Date: 星期一, 19 六月 2023 14:22:45 +0800
Subject: [PATCH] 描述

---
 src/main/java/com/gk/firework/Controller/DictionaryController.java |  333 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 333 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/gk/firework/Controller/DictionaryController.java b/src/main/java/com/gk/firework/Controller/DictionaryController.java
new file mode 100644
index 0000000..001193c
--- /dev/null
+++ b/src/main/java/com/gk/firework/Controller/DictionaryController.java
@@ -0,0 +1,333 @@
+package com.gk.firework.Controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.gk.firework.Domain.*;
+import com.gk.firework.Domain.Utils.*;
+import com.gk.firework.Service.*;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
+import java.text.SimpleDateFormat;
+import java.util.*;
+
+@Api(tags = "数据字典接口")
+@RestController
+public class DictionaryController {
+    @Autowired
+    DictionaryTypeService dictionaryTypeService;
+    @Autowired
+    DictionaryItemService dictionaryItemService;
+
+
+    @Autowired
+    UserService userService;
+    @Autowired
+    RoleService roleService;
+    @Autowired
+    UserRolesService userRolesService;
+    @Autowired
+    RolePermissionsService rolePermissionsService;
+    @Autowired
+    ExcelExportService excelExportService;
+    @Autowired
+    DistrictService districtService;
+    @Autowired
+    UserRolesService userRolesInfoService;
+
+    @GetMapping("/dictionary-types")
+    @ApiOperation(value = "获取数据字典类型",response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageIndex",value = "当前页码"),
+            @ApiImplicitParam(name = "pageSize",value = "每页行数"),
+            @ApiImplicitParam(name = "name",value = "名称"),
+    })
+    public Msg getDictionaryTypeInfo(@RequestParam(defaultValue = "0") Integer pageIndex, @RequestParam(defaultValue = "10") Integer pageSize, String name){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+
+        PageInfo pageInfo = new PageInfo(pageIndex, pageSize);
+        HashMap<String, Object> condition = new HashMap<String, Object>();
+
+        if (StringUtils.isNotBlank(name)) {
+            condition.put("name", name.trim());
+        }
+
+        pageInfo.setCondition(condition);
+        dictionaryTypeService.selectDataGrid(pageInfo);
+        msg.setResult(pageInfo);
+        return msg;
+    }
+
+    @PostMapping("/adddictionary-types")
+    @ApiOperation(value = "添加数据字典类型",response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "code",value = "编码",required = true),
+            @ApiImplicitParam(name = "text",value = "名称",required = true),
+            @ApiImplicitParam(name = "description",value = "备注"),
+            @ApiImplicitParam(name = "operator",value = "操作人"),
+    })
+    public Msg addDiactionaryTypeInfo(@RequestBody JSONObject jsonObject){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+        String code = jsonObject.getString("code");
+        String text = jsonObject.getString("text");
+        String operator = jsonObject.getString("operator");
+        DictionaryTypeInfo dictionaryExistCode = dictionaryTypeService.selctByCode(code);
+        if (dictionaryExistCode != null){
+            msg.setCode("999");
+            msg.setMessage("编码已存在");
+            return msg;
+        }
+        DictionaryTypeInfo dictionaryExistText = dictionaryTypeService.selctByText(text);
+        if (dictionaryExistText != null){
+            msg.setCode("999");
+            msg.setMessage("名称已存在");
+            return msg;
+        }
+        DictionaryTypeInfo dictionaryTypeInfo = new DictionaryTypeInfo();
+        dictionaryTypeInfo.setCode(code);
+        dictionaryTypeInfo.setStatus((byte)1);
+        dictionaryTypeInfo.setText(text);
+        dictionaryTypeInfo.setCreatedby(operator);
+        dictionaryTypeInfo.setCreateddate(new Date());
+        dictionaryTypeInfo.setModifiedby(operator);
+        dictionaryTypeInfo.setModifieddate(new Date());
+        dictionaryTypeInfo.setDescription(jsonObject.getString("description"));
+        dictionaryTypeService.save(dictionaryTypeInfo);
+        return msg;
+    }
+
+    @PostMapping("/putdictionary-types")
+    @ApiOperation(value = "修改字典类型",response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "id",value = "id",required = true),
+            @ApiImplicitParam(name = "code",value = "编码",required = true),
+            @ApiImplicitParam(name = "text",value = "名称",required = true),
+            @ApiImplicitParam(name = "description",value = "备注"),
+            @ApiImplicitParam(name = "operator",value = "操作人"),
+    })
+    public Msg putDiactionaryTypefo(@RequestBody JSONObject jsonObject){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+        Long id = jsonObject.getLong("id");
+        String code = jsonObject.getString("code");
+        String text = jsonObject.getString("text");
+        String operator = jsonObject.getString("operator");
+        List<DictionaryTypeInfo> dictionaryTypes = dictionaryTypeService.selectExistInfo(id,code,null);
+        if (dictionaryTypes.size() > 0){
+            msg.setCode("999");
+            msg.setMessage("编码重复");
+            return msg;
+        }
+        List<DictionaryTypeInfo> dictionaryTypeInfoList = dictionaryTypeService.selectExistInfo(id,null,text);
+        if (dictionaryTypeInfoList.size() > 0){
+            msg.setCode("999");
+            msg.setMessage("名称重复");
+            return msg;
+        }
+        DictionaryTypeInfo dictionaryTypeInfo = new DictionaryTypeInfo();
+        dictionaryTypeInfo.setId(jsonObject.getLong("id"));
+        dictionaryTypeInfo.setCode(code);
+        dictionaryTypeInfo.setText(text);
+        dictionaryTypeInfo.setModifiedby(operator);
+        dictionaryTypeInfo.setModifieddate(new Date());
+        dictionaryTypeInfo.setDescription(jsonObject.getString("description"));
+        dictionaryTypeService.updateById(dictionaryTypeInfo);
+        return msg;
+
+    }
+
+    @PostMapping("/deldictionary-types")
+    @ApiOperation(value = "删除字典类型", notes = "删除字典类型", response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType="query",name = "id",value = "id",required = true),
+            @ApiImplicitParam(paramType="body",name = "lastmodifiedby",value = "更新人"),
+
+    })
+    public Msg delDiactionaryTypeInfo(@ApiParam(value = "id,lastmodifiedby")
+                             @RequestBody JSONObject jsonObject){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+        DictionaryTypeInfo dictionaryTypeInfo = new DictionaryTypeInfo();
+        dictionaryTypeInfo.setId(jsonObject.getLong("id"));
+        dictionaryTypeInfo.setModifiedby(jsonObject.getString("lastmodifiedby"));
+        dictionaryTypeInfo.setModifieddate(new Date());
+        dictionaryTypeInfo.setStatus((byte)0);
+        dictionaryTypeService.updateById(dictionaryTypeInfo);
+        return msg;
+    }
+
+    @GetMapping("/dictionary-items")
+    @ApiOperation(value = "获取数据字典详情",response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageIndex",value = "当前页码"),
+            @ApiImplicitParam(name = "pageSize",value = "每页行数"),
+            @ApiImplicitParam(name = "name",value = "名称"),
+            @ApiImplicitParam(name = "dictionaryTypeId",value = "字典类型id"),
+    })
+    public Msg getDiactionaryItemInfo(@RequestParam(defaultValue = "0") Integer pageIndex, @RequestParam(defaultValue = "10") Integer pageSize,
+                                      String name,Long dictionaryTypeId){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+
+        PageInfo pageInfo = new PageInfo(pageIndex, pageSize);
+        HashMap<String, Object> condition = new HashMap<String, Object>();
+
+        if (StringUtils.isNotBlank(name)) {
+            condition.put("name", name.trim());
+        }
+
+        if (dictionaryTypeId != null){
+            condition.put("dictionaryTypeId",dictionaryTypeId);
+        }
+
+        pageInfo.setCondition(condition);
+        dictionaryItemService.selectDataGrid(pageInfo);
+        msg.setResult(pageInfo);
+        return msg;
+    }
+
+    @GetMapping("/dictionaryAllItems")
+    @ApiOperation(value = "获取数据字典详情",response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "dictionaryType",value = "字典类型名称"),
+    })
+    public Msg getDiactionaryItemInfo(String dictionaryType){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+
+        List<DictionaryItemInfo> dictionaryItems = dictionaryItemService.selectByType(dictionaryType);
+        msg.setResult(dictionaryItems);
+        return msg;
+    }
+
+    @PostMapping("/adddictionary-items")
+    @ApiOperation(value = "添加数据字典详情",response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "text",value = "字典标签",required = true),
+            @ApiImplicitParam(name = "value",value = "字典值",required = true),
+            @ApiImplicitParam(name = "description",value = "备注"),
+            @ApiImplicitParam(name = "dictionaryTypeId",value = "类型id"),
+            @ApiImplicitParam(name = "operator",value = "操作人"),
+            @ApiImplicitParam(name = "sort",value = "序号"),
+            @ApiImplicitParam(name = "status",value = "状态"),
+    })
+    public Msg addDiactionaryItemInfo(@RequestBody JSONObject jsonObject){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+        String value = jsonObject.getString("value");
+        String text = jsonObject.getString("text");
+        String operator = jsonObject.getString("operator");
+        Long typeid = jsonObject.getLong("dictionaryTypeId");
+        if (typeid == null){
+            msg.setCode("999");
+            msg.setMessage("未选择字典类型");
+            return msg;
+        }
+        DictionaryItemInfo dictionaryExistCode = dictionaryItemService.selctByText(text);
+        if (dictionaryExistCode != null){
+            msg.setCode("999");
+            msg.setMessage("字典标签已存在");
+            return msg;
+        }
+        DictionaryItemInfo dictionaryExistText = dictionaryItemService.selctByValue(value);
+        if (dictionaryExistText != null){
+            msg.setCode("999");
+            msg.setMessage("字典值已存在");
+            return msg;
+        }
+        DictionaryItemInfo dictionaryItemInfo = new DictionaryItemInfo();
+        dictionaryItemInfo.setTypeid(typeid);
+        dictionaryItemInfo.setValue(value);
+        dictionaryItemInfo.setStatus(jsonObject.getByte("status"));
+        dictionaryItemInfo.setText(text);
+        dictionaryItemInfo.setSort(jsonObject.getInteger("sort"));
+        dictionaryItemInfo.setCreatedby(operator);
+        dictionaryItemInfo.setCreateddate(new Date());
+        dictionaryItemInfo.setModifiedby(operator);
+        dictionaryItemInfo.setModifieddate(new Date());
+        dictionaryItemInfo.setDescription(jsonObject.getString("description"));
+        dictionaryItemService.save(dictionaryItemInfo);
+        return msg;
+    }
+
+    @PostMapping("/putdictionary-items")
+    @ApiOperation(value = "修改字典详情",response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "id",value = "id",required = true),
+            @ApiImplicitParam(name = "text",value = "字典标签",required = true),
+            @ApiImplicitParam(name = "value",value = "字典值",required = true),
+            @ApiImplicitParam(name = "description",value = "备注"),
+            @ApiImplicitParam(name = "operator",value = "操作人"),
+            @ApiImplicitParam(name = "sort",value = "序号"),
+            @ApiImplicitParam(name = "status",value = "状态"),
+    })
+    public Msg putDiactionaryItemfo(@RequestBody JSONObject jsonObject){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+        Long id = jsonObject.getLong("id");
+
+        String value = jsonObject.getString("value");
+        String text = jsonObject.getString("text");
+        String operator = jsonObject.getString("operator");
+
+        List<DictionaryTypeInfo> dictionaryTypes = dictionaryItemService.selectExistInfo(id,value,null);
+        if (dictionaryTypes.size() > 0){
+            msg.setCode("999");
+            msg.setMessage("字典值重复");
+            return msg;
+        }
+        List<DictionaryTypeInfo> dictionaryTypeInfoList = dictionaryItemService.selectExistInfo(id,null,text);
+        if (dictionaryTypeInfoList.size() > 0){
+            msg.setCode("999");
+            msg.setMessage("字典标签重复");
+            return msg;
+        }
+
+        DictionaryItemInfo dictionaryItemInfo = new DictionaryItemInfo();
+        dictionaryItemInfo.setId(id);
+        dictionaryItemInfo.setValue(value);
+        dictionaryItemInfo.setStatus(jsonObject.getByte("status"));
+        dictionaryItemInfo.setText(text);
+        dictionaryItemInfo.setSort(jsonObject.getInteger("sort"));
+        dictionaryItemInfo.setModifiedby(operator);
+        dictionaryItemInfo.setModifieddate(new Date());
+        dictionaryItemInfo.setDescription(jsonObject.getString("description"));
+        dictionaryItemService.updateById(dictionaryItemInfo);
+        return msg;
+    }
+
+    @PostMapping("/deldictionary-items")
+    @ApiOperation(value = "删除字典详情", notes = "删除字典详情", response = Msg.class)
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType="query",name = "id",value = "id",required = true),
+            @ApiImplicitParam(paramType="body",name = "lastmodifiedby",value = "更新人"),
+
+    })
+    public Msg delDiactionaryItemInfo(@ApiParam(value = "id,lastmodifiedby")
+                                      @RequestBody JSONObject jsonObject){
+        Msg msg = new Msg();
+        msg.setCode("200");
+        msg.setMessage("success");
+        DictionaryItemInfo dictionaryTypeInfo = new DictionaryItemInfo();
+        dictionaryTypeInfo.setId(jsonObject.getLong("id"));
+        dictionaryItemService.removeById(dictionaryTypeInfo);
+        return msg;
+    }
+
+
+}

--
Gitblit v1.9.2