订单服务代码生成

This commit is contained in:
jieyuu 2024-08-17 13:47:46 +08:00
parent 9ea03fdf60
commit 4c56a4b51c
10 changed files with 368 additions and 1 deletions

View File

@ -20,7 +20,6 @@ public class MyBatisPlusGenerator {
// 作者 // 作者
.setAuthor("jieyuu") .setAuthor("jieyuu")
// 生成路径最好使用绝对路径window路径是不一样的 // 生成路径最好使用绝对路径window路径是不一样的
//TODO TODO TODO TODO
.setOutputDir("D:\\workspace\\project\\xdclass-shop\\xdclass-shop\\xdclass-coupon-service\\src\\main\\java") .setOutputDir("D:\\workspace\\project\\xdclass-shop\\xdclass-shop\\xdclass-coupon-service\\src\\main\\java")
// 文件覆盖 // 文件覆盖
.setFileOverride(true) .setFileOverride(true)

View File

@ -11,6 +11,14 @@
<artifactId>xdclass-order-service</artifactId> <artifactId>xdclass-order-service</artifactId>
<dependencies>
<dependency>
<groupId>net.jieyuu</groupId>
<artifactId>xdclass-common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<properties> <properties>
<maven.compiler.source>8</maven.compiler.source> <maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target> <maven.compiler.target>8</maven.compiler.target>

View File

@ -0,0 +1,21 @@
package net.jieyuu.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author jieyuu
* @since 2024-08-17
*/
@RestController
@RequestMapping("/api/order/v1/")
public class ProductOrderController {
}

View File

@ -0,0 +1,16 @@
package net.jieyuu.mapper;
import net.jieyuu.model.ProductOrderItemDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author jieyuu
* @since 2024-08-17
*/
public interface ProductOrderItemMapper extends BaseMapper<ProductOrderItemDO> {
}

View File

@ -0,0 +1,16 @@
package net.jieyuu.mapper;
import net.jieyuu.model.ProductOrderDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author jieyuu
* @since 2024-08-17
*/
public interface ProductOrderMapper extends BaseMapper<ProductOrderDO> {
}

View File

@ -0,0 +1,96 @@
package net.jieyuu.model;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author jieyuu
* @since 2024-08-17
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("product_order")
public class ProductOrderDO implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 订单唯一标识
*/
private String outTradeNo;
/**
* NEW 未支付订单,PAY已经支付订单,CANCEL超时取消订单
*/
private String state;
/**
* 订单生成时间
*/
private Date createTime;
/**
* 订单总金额
*/
private BigDecimal totalAmount;
/**
* 订单实际支付价格
*/
private BigDecimal payAmount;
/**
* 支付类型微信-银行-支付宝
*/
private String payType;
/**
* 昵称
*/
private String nickname;
/**
* 头像
*/
private String headImg;
/**
* 用户id
*/
private Integer userId;
/**
* 0表示未删除1表示已经删除
*/
private Integer del;
/**
* 更新时间
*/
private Date updateTime;
/**
* 订单类型 DAILY普通单PROMOTION促销订单
*/
private String orderType;
/**
* 收货地址 json存储
*/
private String receiverAddress;
}

View File

@ -0,0 +1,70 @@
package net.jieyuu.model;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author jieyuu
* @since 2024-08-17
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("product_order_item")
public class ProductOrderItemDO implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 订单号
*/
private Long productOrderId;
private String outTradeNo;
/**
* 产品id
*/
private Long productId;
/**
* 商品名称
*/
private String productName;
/**
* 商品图片
*/
private String productImg;
/**
* 购买数量
*/
private Integer buyNum;
private Date createTime;
/**
* 购物项商品总价格
*/
private BigDecimal totalAmount;
/**
* 购物项商品单价
*/
private BigDecimal amount;
}

View File

@ -0,0 +1,24 @@
<?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="net.jieyuu.mapper.ProductOrderItemMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="net.jieyuu.model.ProductOrderItemDO">
<id column="id" property="id" />
<result column="product_order_id" property="productOrderId" />
<result column="out_trade_no" property="outTradeNo" />
<result column="product_id" property="productId" />
<result column="product_name" property="productName" />
<result column="product_img" property="productImg" />
<result column="buy_num" property="buyNum" />
<result column="create_time" property="createTime" />
<result column="total_amount" property="totalAmount" />
<result column="amount" property="amount" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, product_order_id, out_trade_no, product_id, product_name, product_img, buy_num, create_time, total_amount, amount
</sql>
</mapper>

View File

@ -0,0 +1,28 @@
<?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="net.jieyuu.mapper.ProductOrderMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="net.jieyuu.model.ProductOrderDO">
<id column="id" property="id" />
<result column="out_trade_no" property="outTradeNo" />
<result column="state" property="state" />
<result column="create_time" property="createTime" />
<result column="total_amount" property="totalAmount" />
<result column="pay_amount" property="payAmount" />
<result column="pay_type" property="payType" />
<result column="nickname" property="nickname" />
<result column="head_img" property="headImg" />
<result column="user_id" property="userId" />
<result column="del" property="del" />
<result column="update_time" property="updateTime" />
<result column="order_type" property="orderType" />
<result column="receiver_address" property="receiverAddress" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, out_trade_no, state, create_time, total_amount, pay_amount, pay_type, nickname, head_img, user_id, del, update_time, order_type, receiver_address
</sql>
</mapper>

View File

@ -0,0 +1,89 @@
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
public class MyBatisPlusGenerator {
public static void main(String[] args) {
//1. 全局配置
GlobalConfig config = new GlobalConfig();
// 作者
config.setAuthor("jieyuu")
// 生成路径最好使用绝对路径window路径是不一样的
.setOutputDir("D:\\workspace\\project\\xdclass-shop\\xdclass-shop\\xdclass-order-service\\src\\main\\java")
// 文件覆盖
.setFileOverride(true)
// 主键策略
.setIdType(IdType.AUTO)
.setDateType(DateType.ONLY_DATE)
// 设置生成的service接口的名字的首字母是否为I默认Service是以I开头的
.setServiceName("%sService")
//实体类结尾名称
.setEntityName("%sDO")
//生成基本的resultMap
.setBaseResultMap(true)
//不使用AR模式
.setActiveRecord(false)
//生成基本的SQL片段
.setBaseColumnList(true);
//2. 数据源配置
DataSourceConfig dsConfig = new DataSourceConfig();
// 设置数据库类型
dsConfig.setDbType(DbType.MYSQL)
.setDriverName("com.mysql.cj.jdbc.Driver")
.setUrl("jdbc:mysql://134.175.219.253:3306/xdclass_order?useSSL=false")
.setUsername("root")
.setPassword("59ae8683c59fead903132a8d440bd7d9fd4936529d1d6f45f9d41111d7537bdd");
//3. 策略配置globalConfiguration中
StrategyConfig stConfig = new StrategyConfig();
//全局大写命名
stConfig.setCapitalMode(true)
// 数据库表映射到实体的命名策略
.setNaming(NamingStrategy.underline_to_camel)
//使用lombok
.setEntityLombokModel(true)
//使用restcontroller注解
.setRestControllerStyle(true)
// 生成的表, 支持多表一起生成以数组形式填写
.setInclude("product_order", "product_order_item");
//4. 包名策略配置
PackageConfig pkConfig = new PackageConfig();
pkConfig.setParent("net.jieyuu")
.setMapper("mapper")
.setService("service")
.setController("controller")
.setEntity("model")
.setXml("mapper");
//5. 整合配置
AutoGenerator ag = new AutoGenerator();
ag.setGlobalConfig(config)
.setDataSource(dsConfig)
.setStrategy(stConfig)
.setPackageInfo(pkConfig);
//6. 执行操作
ag.execute();
System.out.println("======= 小滴课堂 Done 相关代码生成完毕 ========");
}
}