package com.jsh.erp.controller; import com.jsh.erp.datasource.entities.SysDict; import com.jsh.erp.datasource.entities.SysDictItem; import com.jsh.erp.service.sys.SysDictService; import com.jsh.erp.utils.BaseResponseInfo; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.HashMap; import java.util.List; import java.util.Map; @RestController @RequestMapping("/sysDict") public class SysDictController { @Resource private SysDictService sysDictService; @GetMapping("/list") public BaseResponseInfo list(@RequestParam(value = "dictCode", required = false) String dictCode, @RequestParam(value = "dictName", required = false) String dictName, @RequestParam(value = "status", required = false) Integer status, @RequestParam("currentPage") Integer currentPage, @RequestParam("pageSize") Integer pageSize) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); Map map = new HashMap<>(); try { SysDict query = new SysDict(); query.setDictCode(dictCode); query.setDictName(dictName); query.setStatus(status); List dataList = sysDictService.getList(query); int total = dataList.size(); map.put("total", total); map.put("rows", dataList); baseResponseInfo.code = 200; baseResponseInfo.data = map; } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @GetMapping("/{id}") public BaseResponseInfo getById(@PathVariable Long id) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { SysDict data = sysDictService.getById(id); baseResponseInfo.code = 200; baseResponseInfo.data = data; } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @PostMapping public BaseResponseInfo add(@RequestBody SysDict sysDict) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { int result = sysDictService.add(sysDict); if(result > 0) { baseResponseInfo.code = 200; baseResponseInfo.msg = "新增成功"; } } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @PutMapping public BaseResponseInfo update(@RequestBody SysDict sysDict) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { int result = sysDictService.update(sysDict); if(result > 0) { baseResponseInfo.code = 200; baseResponseInfo.msg = "修改成功"; } } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @DeleteMapping("/{id}") public BaseResponseInfo delete(@PathVariable Long id) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { int result = sysDictService.deleteById(id); if(result > 0) { baseResponseInfo.code = 200; baseResponseInfo.msg = "删除成功"; } } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @DeleteMapping("/deleteBatch") public BaseResponseInfo deleteBatch(@RequestParam("ids") String ids) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { String[] idArray = ids.split(","); int result = 0; for(String id : idArray) { result += sysDictService.deleteById(Long.parseLong(id)); } if(result > 0) { baseResponseInfo.code = 200; baseResponseInfo.data = "删除成功"; } } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.data = e.getMessage(); } return baseResponseInfo; } // 字典项相关接口 @GetMapping("/items/{dictId}") public BaseResponseInfo getItems(@PathVariable Long dictId) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { List items = sysDictService.getItemsByDictId(dictId); baseResponseInfo.code = 200; baseResponseInfo.data = items; } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } // 字典项相关接口 @GetMapping("/items/dict-code/{dictCode}") public BaseResponseInfo getItems(@PathVariable String dictCode) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { List items = sysDictService.getItemsBySictCode(dictCode); baseResponseInfo.code = 200; baseResponseInfo.data = items; } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @PostMapping("/item") public BaseResponseInfo addItem(@RequestBody SysDictItem sysDictItem) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { int result = sysDictService.addItem(sysDictItem); if(result > 0) { baseResponseInfo.code = 200; baseResponseInfo.msg = "新增成功"; } } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @PutMapping("/item") public BaseResponseInfo updateItem(@RequestBody SysDictItem sysDictItem) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { int result = sysDictService.updateItem(sysDictItem); if(result > 0) { baseResponseInfo.code = 200; baseResponseInfo.msg = "修改成功"; } } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @DeleteMapping("/item/{id}") public BaseResponseInfo deleteItem(@PathVariable Long id) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { int result = sysDictService.deleteItemById(id); if(result > 0) { baseResponseInfo.code = 200; baseResponseInfo.msg = "删除成功"; } } catch(Exception e) { baseResponseInfo.code = 500; baseResponseInfo.msg = e.getMessage(); } return baseResponseInfo; } @GetMapping("/getByDictCodeAndItemText") public BaseResponseInfo getByDictCodeAndItemText(@RequestParam(value = "dictCode", required = true) String dictCode, @RequestParam(value = "itemText", required = true) String itemText) { BaseResponseInfo baseResponseInfo = new BaseResponseInfo(); try { SysDictItem sysDictItem = sysDictService.getByDictCodeAndItemText(dictCode,itemText); baseResponseInfo.code = 200; baseResponseInfo.data = sysDictItem; } catch (Exception e) { baseResponseInfo.code = 500; baseResponseInfo.data = e.getMessage(); } return baseResponseInfo; } }