From f56f591417e617fdc2fd50d49eccae0bb5cf0341 Mon Sep 17 00:00:00 2001 From: gmhao <1285330039@qq.com> Date: Mon, 11 Dec 2023 12:53:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AD=97=E5=85=B8=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sgzb/base/api/domain/SysDictData.java | 177 ++++++++++++++++++ .../controller/SysDictDataController.java | 107 +++++++++++ .../sgzb/base/mapper/SysDictDataMapper.java | 65 +++++++ .../base/service/ISysDictDataService.java | 65 +++++++ .../service/impl/SysDictDataServiceImpl.java | 97 ++++++++++ .../mapper/base/SysDictDataMapper.xml | 111 +++++++++++ 6 files changed, 622 insertions(+) create mode 100644 sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/SysDictData.java create mode 100644 sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/controller/SysDictDataController.java create mode 100644 sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/SysDictDataMapper.java create mode 100644 sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ISysDictDataService.java create mode 100644 sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/impl/SysDictDataServiceImpl.java create mode 100644 sgzb-modules/sgzb-base/src/main/resources/mapper/base/SysDictDataMapper.xml diff --git a/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/SysDictData.java b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/SysDictData.java new file mode 100644 index 00000000..634d88c8 --- /dev/null +++ b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/SysDictData.java @@ -0,0 +1,177 @@ +package com.bonus.sgzb.base.api.domain; + + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.bonus.sgzb.common.core.annotation.Excel; +import com.bonus.sgzb.common.core.annotation.Excel.ColumnType; +import com.bonus.sgzb.common.core.constant.UserConstants; +import com.bonus.sgzb.common.core.web.domain.BaseEntity; + +/** + * 字典数据表 sys_dict_data + * + * @author ruoyi + */ +public class SysDictData extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 字典编码 */ + @Excel(name = "字典编码", cellType = ColumnType.NUMERIC) + private Long dictCode; + + /** 字典排序 */ + @Excel(name = "字典排序", cellType = ColumnType.NUMERIC) + private Long dictSort; + + /** 字典标签 */ + @Excel(name = "字典标签") + private String dictLabel; + + /** 字典键值 */ + @Excel(name = "字典键值") + private String dictValue; + + /** 字典类型 */ + @Excel(name = "字典类型") + private String dictType; + + /** 样式属性(其他样式扩展) */ + private String cssClass; + + /** 表格字典样式 */ + private String listClass; + + /** 是否默认(Y是 N否) */ + @Excel(name = "是否默认", readConverterExp = "Y=是,N=否") + private String isDefault; + + /** 状态(0正常 1停用) */ + @Excel(name = "状态", readConverterExp = "0=正常,1=停用") + private String status; + + public Long getDictCode() + { + return dictCode; + } + + public void setDictCode(Long dictCode) + { + this.dictCode = dictCode; + } + + public Long getDictSort() + { + return dictSort; + } + + public void setDictSort(Long dictSort) + { + this.dictSort = dictSort; + } + + @NotBlank(message = "字典标签不能为空") + @Size(min = 0, max = 100, message = "字典标签长度不能超过100个字符") + public String getDictLabel() + { + return dictLabel; + } + + public void setDictLabel(String dictLabel) + { + this.dictLabel = dictLabel; + } + + @NotBlank(message = "字典键值不能为空") + @Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符") + public String getDictValue() + { + return dictValue; + } + + public void setDictValue(String dictValue) + { + this.dictValue = dictValue; + } + + @NotBlank(message = "字典类型不能为空") + @Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符") + public String getDictType() + { + return dictType; + } + + public void setDictType(String dictType) + { + this.dictType = dictType; + } + + @Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符") + public String getCssClass() + { + return cssClass; + } + + public void setCssClass(String cssClass) + { + this.cssClass = cssClass; + } + + public String getListClass() + { + return listClass; + } + + public void setListClass(String listClass) + { + this.listClass = listClass; + } + + public boolean getDefault() + { + return UserConstants.YES.equals(this.isDefault); + } + + public String getIsDefault() + { + return isDefault; + } + + public void setIsDefault(String isDefault) + { + this.isDefault = isDefault; + } + + public String getStatus() + { + return status; + } + + public void setStatus(String status) + { + this.status = status; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("dictCode", getDictCode()) + .append("dictSort", getDictSort()) + .append("dictLabel", getDictLabel()) + .append("dictValue", getDictValue()) + .append("dictType", getDictType()) + .append("cssClass", getCssClass()) + .append("listClass", getListClass()) + .append("isDefault", getIsDefault()) + .append("status", getStatus()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/controller/SysDictDataController.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/controller/SysDictDataController.java new file mode 100644 index 00000000..beaa85d0 --- /dev/null +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/controller/SysDictDataController.java @@ -0,0 +1,107 @@ +package com.bonus.sgzb.base.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.bonus.sgzb.base.api.domain.SysDictData; +import com.bonus.sgzb.base.service.ISysDictDataService; +import com.bonus.sgzb.common.core.utils.poi.ExcelUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.bonus.sgzb.common.log.annotation.Log; +import com.bonus.sgzb.common.log.enums.BusinessType; +import com.bonus.sgzb.common.core.web.controller.BaseController; +import com.bonus.sgzb.common.core.web.domain.AjaxResult; +import com.bonus.sgzb.common.core.web.page.TableDataInfo; + +/** + * 字典数据Controller + * + * @author bonus + * @date 2023-12-10 + */ +@Api +@RestController +@RequestMapping("/sysDictData") +public class SysDictDataController extends BaseController +{ + @Autowired + private ISysDictDataService sysDictDataService; + + /** + * 查询字典数据列表 + */ + @ApiOperation(value = "查询字典数据列表") + @GetMapping("/list") + public TableDataInfo list(SysDictData sysDictData) + { + startPage(); + List list = sysDictDataService.selectSysDictDataList(sysDictData); + return getDataTable(list); + } + + /** + * 导出字典数据列表 + */ + @ApiOperation(value = "导出字典数据列表") + @Log(title = "字典数据", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SysDictData sysDictData) + { + List list = sysDictDataService.selectSysDictDataList(sysDictData); + ExcelUtil util = new ExcelUtil(SysDictData.class); + util.exportExcel(response, list, "字典数据数据"); + } + + /** + * 获取字典数据详细信息 + */ + @ApiOperation(value = "获取字典数据详细信息") + @GetMapping(value = "/{dictCode}") + public AjaxResult getInfo(@PathVariable("dictCode") Long dictCode) + { + return success(sysDictDataService.selectSysDictDataByDictCode(dictCode)); + } + + /** + * 新增字典数据 + */ + @ApiOperation(value = "新增字典数据") + @Log(title = "字典数据", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SysDictData sysDictData) + { + return toAjax(sysDictDataService.insertSysDictData(sysDictData)); + } + + /** + * 修改字典数据 + */ + @ApiOperation(value = "修改字典数据") + @Log(title = "字典数据", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SysDictData sysDictData) + { + return toAjax(sysDictDataService.updateSysDictData(sysDictData)); + } + + /** + * 删除字典数据 + */ + @ApiOperation(value = "删除字典数据") + @Log(title = "字典数据", businessType = BusinessType.DELETE) + @DeleteMapping("/{dictCodes}") + public AjaxResult remove(@PathVariable Long[] dictCodes) + { + return toAjax(sysDictDataService.deleteSysDictDataByDictCodes(dictCodes)); + } +} diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/SysDictDataMapper.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/SysDictDataMapper.java new file mode 100644 index 00000000..4c4cb3ed --- /dev/null +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/mapper/SysDictDataMapper.java @@ -0,0 +1,65 @@ +package com.bonus.sgzb.base.mapper; + + + +import com.bonus.sgzb.base.api.domain.SysDictData; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +/** + * 字典数据Mapper接口 + * + * @author GMH + * @date 2023-12-10 + */ +@Mapper +public interface SysDictDataMapper +{ + /** + * 查询字典数据 + * + * @param dictCode 字典数据主键 + * @return 字典数据 + */ + public SysDictData selectSysDictDataByDictCode(Long dictCode); + + /** + * 查询字典数据列表 + * + * @param sysDictData 字典数据 + * @return 字典数据集合 + */ + public List selectSysDictDataList(SysDictData sysDictData); + + /** + * 新增字典数据 + * + * @param sysDictData 字典数据 + * @return 结果 + */ + public int insertSysDictData(SysDictData sysDictData); + + /** + * 修改字典数据 + * + * @param sysDictData 字典数据 + * @return 结果 + */ + public int updateSysDictData(SysDictData sysDictData); + + /** + * 删除字典数据 + * + * @param dictCode 字典数据主键 + * @return 结果 + */ + public int deleteSysDictDataByDictCode(Long dictCode); + + /** + * 批量删除字典数据 + * + * @param dictCodes 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSysDictDataByDictCodes(Long[] dictCodes); +} diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ISysDictDataService.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ISysDictDataService.java new file mode 100644 index 00000000..44c56095 --- /dev/null +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ISysDictDataService.java @@ -0,0 +1,65 @@ +package com.bonus.sgzb.base.service; + + + +import com.bonus.sgzb.base.api.domain.SysDictData; + +import java.util.List; + + +/** + * 字典数据Service接口 + * + * @author bonus + * @date 2023-12-10 + */ +public interface ISysDictDataService +{ + /** + * 查询字典数据 + * + * @param dictCode 字典数据主键 + * @return 字典数据 + */ + public SysDictData selectSysDictDataByDictCode(Long dictCode); + + /** + * 查询字典数据列表 + * + * @param sysDictData 字典数据 + * @return 字典数据集合 + */ + public List selectSysDictDataList(SysDictData sysDictData); + + /** + * 新增字典数据 + * + * @param sysDictData 字典数据 + * @return 结果 + */ + public int insertSysDictData(SysDictData sysDictData); + + /** + * 修改字典数据 + * + * @param sysDictData 字典数据 + * @return 结果 + */ + public int updateSysDictData(SysDictData sysDictData); + + /** + * 批量删除字典数据 + * + * @param dictCodes 需要删除的字典数据主键集合 + * @return 结果 + */ + public int deleteSysDictDataByDictCodes(Long[] dictCodes); + + /** + * 删除字典数据信息 + * + * @param dictCode 字典数据主键 + * @return 结果 + */ + public int deleteSysDictDataByDictCode(Long dictCode); +} diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/impl/SysDictDataServiceImpl.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/impl/SysDictDataServiceImpl.java new file mode 100644 index 00000000..9bbdacf0 --- /dev/null +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/impl/SysDictDataServiceImpl.java @@ -0,0 +1,97 @@ +package com.bonus.sgzb.base.service.impl; + +import java.util.List; + +import com.bonus.sgzb.base.api.domain.SysDictData; +import com.bonus.sgzb.base.mapper.SysDictDataMapper; +import com.bonus.sgzb.base.service.ISysDictDataService; +import com.bonus.sgzb.common.core.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 字典数据Service业务层处理 + * + * @author bonus + * @date 2023-12-10 + */ +@Service +public class SysDictDataServiceImpl implements ISysDictDataService +{ + @Autowired + private SysDictDataMapper sysDictDataMapper; + + /** + * 查询字典数据 + * + * @param dictCode 字典数据主键 + * @return 字典数据 + */ + @Override + public SysDictData selectSysDictDataByDictCode(Long dictCode) + { + return sysDictDataMapper.selectSysDictDataByDictCode(dictCode); + } + + /** + * 查询字典数据列表 + * + * @param sysDictData 字典数据 + * @return 字典数据 + */ + @Override + public List selectSysDictDataList(SysDictData sysDictData) + { + return sysDictDataMapper.selectSysDictDataList(sysDictData); + } + + /** + * 新增字典数据 + * + * @param sysDictData 字典数据 + * @return 结果 + */ + @Override + public int insertSysDictData(SysDictData sysDictData) + { + sysDictData.setCreateTime(DateUtils.getNowDate()); + return sysDictDataMapper.insertSysDictData(sysDictData); + } + + /** + * 修改字典数据 + * + * @param sysDictData 字典数据 + * @return 结果 + */ + @Override + public int updateSysDictData(SysDictData sysDictData) + { + sysDictData.setUpdateTime(DateUtils.getNowDate()); + return sysDictDataMapper.updateSysDictData(sysDictData); + } + + /** + * 批量删除字典数据 + * + * @param dictCodes 需要删除的字典数据主键 + * @return 结果 + */ + @Override + public int deleteSysDictDataByDictCodes(Long[] dictCodes) + { + return sysDictDataMapper.deleteSysDictDataByDictCodes(dictCodes); + } + + /** + * 删除字典数据信息 + * + * @param dictCode 字典数据主键 + * @return 结果 + */ + @Override + public int deleteSysDictDataByDictCode(Long dictCode) + { + return sysDictDataMapper.deleteSysDictDataByDictCode(dictCode); + } +} diff --git a/sgzb-modules/sgzb-base/src/main/resources/mapper/base/SysDictDataMapper.xml b/sgzb-modules/sgzb-base/src/main/resources/mapper/base/SysDictDataMapper.xml new file mode 100644 index 00000000..20aec08f --- /dev/null +++ b/sgzb-modules/sgzb-base/src/main/resources/mapper/base/SysDictDataMapper.xml @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + select dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, update_by, update_time, remark from sys_dict_data + + + + + + + + insert into sys_dict_data + + dict_sort, + dict_label, + dict_value, + dict_type, + css_class, + list_class, + is_default, + status, + create_by, + create_time, + update_by, + update_time, + remark, + + + #{dictSort}, + #{dictLabel}, + #{dictValue}, + #{dictType}, + #{cssClass}, + #{listClass}, + #{isDefault}, + #{status}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + + + + + update sys_dict_data + + dict_sort = #{dictSort}, + dict_label = #{dictLabel}, + dict_value = #{dictValue}, + dict_type = #{dictType}, + css_class = #{cssClass}, + list_class = #{listClass}, + is_default = #{isDefault}, + status = #{status}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + + where dict_code = #{dictCode} + + + + delete from sys_dict_data where dict_code = #{dictCode} + + + + delete from sys_dict_data where dict_code in + + #{dictCode} + + + \ No newline at end of file