zuy 2 éve
szülő
commit
52e7557e31

+ 12 - 0
common/src/main/java/com/kym/common/IQuery.java

@@ -0,0 +1,12 @@
+package com.kym.common;
+
+/**
+ * 实体查询对象
+ *
+ * @param <T>
+ */
+public class IQuery<T> {
+    public int pageSize = -1;
+    public int pageNum;
+    public T query;
+}

+ 19 - 0
common/src/main/java/com/kym/common/controller/IController.java

@@ -0,0 +1,19 @@
+package com.kym.common.controller;
+
+import com.kym.common.R;
+
+import java.util.function.Consumer;
+import java.util.function.Supplier;
+
+
+public class IController {
+
+    public R<?> resp(Supplier<?> supplier) {
+        return R.success(supplier.get());
+    }
+
+    public R<?> resp(Consumer<?> consumer) {
+        consumer.accept(null);
+        return R.success();
+    }
+}

+ 59 - 0
entity/src/main/java/com/kym/entity/miniapp/DataDict.java

@@ -0,0 +1,59 @@
+package com.kym.entity.miniapp;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 数据字典
+ * </p>
+ *
+ * @author zuy
+ * @since 2023-08-13
+ */
+@Getter
+@Setter
+@TableName("t_data_dict")
+public class DataDict implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * ID
+     */
+    private Long id;
+
+    /**
+     * 字典编码
+     */
+    private String code;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 定义值
+     */
+    private Integer value;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+}

+ 9 - 0
entity/src/main/java/com/kym/entity/miniapp/WalletDetail.java

@@ -20,6 +20,15 @@ import java.time.LocalDateTime;
 @TableName("t_wallet_detail")
 public class WalletDetail implements Serializable {
 
+    public static final int TYPE_充值 = 1;
+    public static final int TYPE_提现 = 2;
+    public static final int TYPE_消费 = 3;
+
+
+    public static final int STATUS_待确认 = 1;
+    public static final int STATUS_已确认 =21;
+    public static final int STATUS_已取消 = 3;
+
     private static final long serialVersionUID = 1L;
 
     private Long id;

+ 16 - 0
mapper/src/main/java/com/kym/mapper/miniapp/DataDictMapper.java

@@ -0,0 +1,16 @@
+package com.kym.mapper.miniapp;
+
+import com.kym.entity.miniapp.DataDict;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 数据字典 Mapper 接口
+ * </p>
+ *
+ * @author zuy
+ * @since 2023-08-13
+ */
+public interface DataDictMapper extends BaseMapper<DataDict> {
+
+}

+ 22 - 0
mapper/src/main/resources/mappers/miniapp/DataDictMapper.xml

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.kym.mapper.miniapp.DataDictMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.kym.entity.miniapp.DataDict">
+        <result column="id" property="id" />
+        <result column="code" property="code" />
+        <result column="name" property="name" />
+        <result column="value" property="value" />
+        <result column="weight" property="weight" />
+        <result column="remark" property="remark" />
+        <result column="create_time" property="createTime" />
+        <result column="update_time" property="updateTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, code, name, value, weight,remark, create_time, update_time
+    </sql>
+
+</mapper>

+ 43 - 0
miniapp/src/main/java/com/kym/miniapp/controller/DataDictController.java

@@ -0,0 +1,43 @@
+package com.kym.miniapp.controller;
+
+import com.kym.common.IQuery;
+import com.kym.common.R;
+import com.kym.common.annotation.SysLog;
+import com.kym.common.controller.IController;
+import com.kym.entity.miniapp.DataDict;
+import com.kym.service.miniapp.DataDictService;
+import jakarta.annotation.Resource;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 数据字典 前端控制器
+ * </p>
+ * <ul>
+ *     <li>字典以常量形式定义在业务实体类中,业务逻辑以常量替代,取消魔法值</li>
+ *     <li>字典只提供查询接口,修改、新增由数据库DML执行实现</li>
+ *     <li>为保持与前端及关联系统一致,字典定义后不可修改,不可删除,可废弃</li>
+ * </ul>
+ *
+ * @author zuy
+ * @since 2023-08-13
+ */
+@RestController
+@RequestMapping("/dataDict")
+public class DataDictController extends IController {
+
+    @Resource
+    private DataDictService dataDictService;
+
+    @SysLog("字典列表")
+    @PostMapping("list")
+    public R<?> list(@RequestBody IQuery<DataDict> query) {
+        return resp(() -> dataDictService.list(query));
+    }
+
+
+}

+ 19 - 0
service/src/main/java/com/kym/service/miniapp/DataDictService.java

@@ -0,0 +1,19 @@
+package com.kym.service.miniapp;
+
+import com.kym.common.IQuery;
+import com.kym.entity.miniapp.DataDict;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+
+/**
+ * <p>
+ * 数据字典 服务类
+ * </p>
+ *
+ * @author zuy
+ * @since 2023-08-13
+ */
+public interface DataDictService extends IService<DataDict> {
+
+    Object list(IQuery<DataDict> query);
+}

+ 29 - 0
service/src/main/java/com/kym/service/miniapp/impl/DataDictServiceImpl.java

@@ -0,0 +1,29 @@
+package com.kym.service.miniapp.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.kym.common.IQuery;
+import com.kym.entity.miniapp.DataDict;
+import com.kym.mapper.miniapp.DataDictMapper;
+import com.kym.service.miniapp.DataDictService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * 数据字典 服务实现类
+ * </p>
+ *
+ * @author zuy
+ * @since 2023-08-13
+ */
+@Service
+public class DataDictServiceImpl extends ServiceImpl<DataDictMapper, DataDict> implements DataDictService {
+
+    @Override
+    public Object list(IQuery<DataDict> query) {
+        PageHelper.startPage(query.pageNum, query.pageSize);
+        return new PageInfo<>(list());
+    }
+}