diff --git a/src/main/java/com/sczx/store/controller/SysDataController.java b/src/main/java/com/sczx/store/controller/SysDataController.java new file mode 100644 index 0000000..b6f5fb1 --- /dev/null +++ b/src/main/java/com/sczx/store/controller/SysDataController.java @@ -0,0 +1,39 @@ +package com.sczx.store.controller; + + +import com.sczx.store.common.Result; +import com.sczx.store.dto.SysDictDataDTO; +import com.sczx.store.service.SysDataService; +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.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + *

+ * 字典数据表 + *

+ * + * @author zhangli + * @since 2025-07-27 21:39:33 + */ +@Api(value = "系统数据接口", tags = "系统数据") +@RestController +@RequestMapping("/sys") +public class SysDataController { + + @Autowired + private SysDataService sysDataService; + + @ApiOperation(value = "根据字典key查询字典数据") + @GetMapping("/listDictDataByDicType") + public Result> listDictDataByDicType(@RequestParam(name = "dicType") String dicType){ + + return Result.ok(sysDataService.listDictDataByDicType(dicType)); + } +} diff --git a/src/main/java/com/sczx/store/convert/SysDictDataConvert.java b/src/main/java/com/sczx/store/convert/SysDictDataConvert.java new file mode 100644 index 0000000..8c80483 --- /dev/null +++ b/src/main/java/com/sczx/store/convert/SysDictDataConvert.java @@ -0,0 +1,16 @@ +package com.sczx.store.convert; + +import com.sczx.store.dto.SysDictDataDTO; +import com.sczx.store.po.SysDictDataPO; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +@Mapper +public interface SysDictDataConvert { + SysDictDataConvert INSTANCE = Mappers.getMapper(SysDictDataConvert.class); + SysDictDataPO dtoToPO(SysDictDataDTO dto); + SysDictDataDTO poToDTO(SysDictDataPO po); + List posToDtos(List pos); +} diff --git a/src/main/java/com/sczx/store/dto/SysDictDataDTO.java b/src/main/java/com/sczx/store/dto/SysDictDataDTO.java new file mode 100644 index 0000000..c80120b --- /dev/null +++ b/src/main/java/com/sczx/store/dto/SysDictDataDTO.java @@ -0,0 +1,22 @@ +package com.sczx.store.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel(value = "SysDictDataDTO对象", description = "字典数据传输对象") +@Data +public class SysDictDataDTO { + + @ApiModelProperty("字典标签") + private String dictLabel; + + @ApiModelProperty("字典键值") + private String dictValue; + + @ApiModelProperty("字典类型") + private String dictType; + + @ApiModelProperty("状态(0正常 1停用)") + private String status; +} diff --git a/src/main/java/com/sczx/store/mapper/SysDictDataMapper.java b/src/main/java/com/sczx/store/mapper/SysDictDataMapper.java new file mode 100644 index 0000000..fd0c2a7 --- /dev/null +++ b/src/main/java/com/sczx/store/mapper/SysDictDataMapper.java @@ -0,0 +1,16 @@ +package com.sczx.store.mapper; + +import com.sczx.store.po.SysDictDataPO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 字典数据表 Mapper 接口 + *

+ * + * @author zhangli + * @since 2025-07-27 21:39:33 + */ +public interface SysDictDataMapper extends BaseMapper { + +} diff --git a/src/main/java/com/sczx/store/po/SysDictDataPO.java b/src/main/java/com/sczx/store/po/SysDictDataPO.java new file mode 100644 index 0000000..4b25ebf --- /dev/null +++ b/src/main/java/com/sczx/store/po/SysDictDataPO.java @@ -0,0 +1,74 @@ +package com.sczx.store.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + *

+ * 字典数据表 + *

+ * + * @author zhangli + * @since 2025-07-27 21:39:33 + */ +@Getter +@Setter +@TableName("sys_dict_data") +@ApiModel(value = "SysDictDataPO对象", description = "字典数据表") +public class SysDictDataPO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("字典编码") + @TableId(value = "dict_code", type = IdType.AUTO) + private Long dictCode; + + @ApiModelProperty("字典排序") + private Integer dictSort; + + @ApiModelProperty("字典标签") + private String dictLabel; + + @ApiModelProperty("字典键值") + private String dictValue; + + @ApiModelProperty("字典类型") + private String dictType; + + @ApiModelProperty("样式属性(其他样式扩展)") + private String cssClass; + + @ApiModelProperty("表格回显样式") + private String listClass; + + @ApiModelProperty("是否默认(Y是 N否)") + private String isDefault; + + @ApiModelProperty("状态(0正常 1停用)") + private String status; + + @ApiModelProperty("创建者") + private String createBy; + + @ApiModelProperty("创建时间") + private LocalDateTime createTime; + + @ApiModelProperty("更新者") + private String updateBy; + + @ApiModelProperty("更新时间") + private LocalDateTime updateTime; + + @ApiModelProperty("备注") + private String remark; + + +} diff --git a/src/main/java/com/sczx/store/repository/SysDictDataRepo.java b/src/main/java/com/sczx/store/repository/SysDictDataRepo.java new file mode 100644 index 0000000..e212c8e --- /dev/null +++ b/src/main/java/com/sczx/store/repository/SysDictDataRepo.java @@ -0,0 +1,16 @@ +package com.sczx.store.repository; + +import com.sczx.store.po.SysDictDataPO; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 字典数据表 服务类 + *

+ * + * @author zhangli + * @since 2025-07-27 21:39:33 + */ +public interface SysDictDataRepo extends IService { + +} diff --git a/src/main/java/com/sczx/store/repository/impl/SysDictDataRepoImpl.java b/src/main/java/com/sczx/store/repository/impl/SysDictDataRepoImpl.java new file mode 100644 index 0000000..e5ebd85 --- /dev/null +++ b/src/main/java/com/sczx/store/repository/impl/SysDictDataRepoImpl.java @@ -0,0 +1,20 @@ +package com.sczx.store.repository.impl; + +import com.sczx.store.po.SysDictDataPO; +import com.sczx.store.mapper.SysDictDataMapper; +import com.sczx.store.repository.SysDictDataRepo; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 字典数据表 服务实现类 + *

+ * + * @author zhangli + * @since 2025-07-27 21:39:33 + */ +@Service +public class SysDictDataRepoImpl extends ServiceImpl implements SysDictDataRepo { + +} diff --git a/src/main/java/com/sczx/store/service/SysDataService.java b/src/main/java/com/sczx/store/service/SysDataService.java new file mode 100644 index 0000000..09f7056 --- /dev/null +++ b/src/main/java/com/sczx/store/service/SysDataService.java @@ -0,0 +1,15 @@ +package com.sczx.store.service; + +import com.sczx.store.dto.SysDictDataDTO; + +import java.util.List; + +public interface SysDataService { + + /** + * 根据字典类型查询字典数据 + * @param dicType + * @return + */ + List listDictDataByDicType(String dicType); +} diff --git a/src/main/java/com/sczx/store/service/impl/SysDataServiceImpl.java b/src/main/java/com/sczx/store/service/impl/SysDataServiceImpl.java new file mode 100644 index 0000000..d39e22f --- /dev/null +++ b/src/main/java/com/sczx/store/service/impl/SysDataServiceImpl.java @@ -0,0 +1,30 @@ +package com.sczx.store.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.sczx.store.convert.SysDictDataConvert; +import com.sczx.store.dto.SysDictDataDTO; +import com.sczx.store.po.SysDictDataPO; +import com.sczx.store.repository.SysDictDataRepo; +import com.sczx.store.service.SysDataService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Slf4j +@Service +public class SysDataServiceImpl implements SysDataService { + + @Autowired + private SysDictDataRepo sysDictDataRepo; + + @Override + public List listDictDataByDicType(String dicType) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(SysDictDataPO::getDictType, dicType); + List sysDictDataPOList = sysDictDataRepo.list(wrapper); + + return SysDictDataConvert.INSTANCE.posToDtos(sysDictDataPOList); + } +} diff --git a/src/main/resources/mapper/SysDictDataMapper.xml b/src/main/resources/mapper/SysDictDataMapper.xml new file mode 100644 index 0000000..e99bfb2 --- /dev/null +++ b/src/main/resources/mapper/SysDictDataMapper.xml @@ -0,0 +1,5 @@ + + + + +