提交 9ff15c9f 编写于 作者: wowowow刚刚's avatar wowowow刚刚

抽奖活动链条

上级 f302746c
此差异已折叠。
package org.itxzw;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
......
......@@ -15,9 +15,9 @@ thread:
# 数据库配置;启动时配置数据库资源信息
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/xfg_frame_archetype?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&serverTimezone=UTC&useSSL=true
username: root
password: 123456
url: jdbc:mysql://127.0.0.1:3306/xfg_frame_archetype?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&serverTimezone=UTC&useSSL=true
driver-class-name: com.mysql.cj.jdbc.Driver
hikari:
pool-name: Retail_HikariCP
......@@ -31,9 +31,9 @@ spring:
type: com.zaxxer.hikari.HikariDataSource
# MyBatis 配置【如需使用记得打开】
#mybatis:
# mapper-locations: classpath:/mybatis/mapper/*.xml
# config-location: classpath:/mybatis/config/mybatis-config.xml
mybatis:
mapper-locations: classpath:/mybatis/mapper/*.xml
config-location: classpath:/mybatis/config/mybatis-config.xml
# 日志
logging:
......
<?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="org.itxzw.infrastructure.persistent.dao.IAwardDao">
<resultMap id="dataMap" type="org.itxzw.infrastructure.persistent.po.Award">
<id column="id" property="id"/>
<result column="award_id" property="awardId"/>
<result column="award_key" property="awardKey"/>
<result column="award_config" property="awardConfig"/>
<result column="award_desc" property="awardDesc"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
</resultMap>
<select id="queryAwardList" resultMap="dataMap">
select award_id, award_key, award_config, award_desc
from award
limit 10
</select>
<select id="queryAwardConfigByAwardId" parameterType="java.lang.Integer" resultType="java.lang.String">
select award_config from award where award_id = #{awardId}
</select>
<select id="queryAwardKeyByAwardId" parameterType="java.lang.Integer" resultType="java.lang.String">
select award_key from award where award_id = #{awardId}
</select>
</mapper>
<?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="org.itxzw.infrastructure.persistent.dao.IStrategyAwardDao">
<resultMap id="dataMap" type="org.itxzw.infrastructure.persistent.po.StrategyAward">
<id column="id" property="id"/>
<result column="strategy_id" property="strategyId"/>
<result column="award_id" property="awardId"/>
<result column="award_title" property="awardTitle"/>
<result column="award_subtitle" property="awardSubtitle"/>
<result column="award_count" property="awardCount"/>
<result column="award_count_surplus" property="awardCountSurplus"/>
<result column="award_rate" property="awardRate"/>
<result column="rule_models" property="ruleModels"/>
<result column="sort" property="sort"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
</resultMap>
<select id="queryStrategyAwardList" resultMap="dataMap">
select *
from strategy_award
limit 10
</select>
</mapper>
<?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="org.itxzw.infrastructure.persistent.dao.Xxx">
<mapper namespace="org.itxzw.infrastructure.persistent.dao.IStrategyDao">
<resultMap id="CaseMap" type="org.itxzw.infrastructure.persistent.po.A">
<resultMap id="dataMap" type="org.itxzw.infrastructure.persistent.po.Strategy">
<id column="id" property="id"/>
<result column="strategy_id" property="strategyId"/>
<result column="strategy_desc" property="strategyDesc"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
</resultMap>
<insert id="insert" parameterType="org.itxzw.infrastructure.persistent.po.A">
INSERT INTO table(a,b,c) VALUES(#{a}, #{b}, #{c})
</insert>
<update id="update" parameterType="org.itxzw.infrastructure.persistent.po.A">
UPDATE table SET a = #{a} WHERE b = #{b}
</update>
<select id="queryEmployeeByEmployNumber" parameterType="java.lang.String" resultMap="CaseMap">
SELECT a, b, c
FROM table
WHERE a = #{a}
<select id="queryStrategyList" resultMap="dataMap">
select *
from strategy
limit 10
</select>
</mapper>
<?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="org.itxzw.infrastructure.persistent.dao.IStrategyRuleDao">
<resultMap id="dataMap" type="org.itxzw.infrastructure.persistent.po.StrategyRule">
<id column="id" property="id"/>
<result column="strategy_id" property="strategyId"/>
<result column="award_id" property="awardId"/>
<result column="rule_type" property="ruleType"/>
<result column="rule_model" property="ruleModel"/>
<result column="rule_value" property="ruleValue"/>
<result column="rule_desc" property="ruleDesc"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
</resultMap>
<select id="queryStrategyRuleList" resultMap="dataMap">
select *
from strategy_rule limit 10
</select>
</mapper>
package org.itxzw.test.infrastructure;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.itxzw.infrastructure.persistent.dao.IAwardDao;
import org.itxzw.infrastructure.persistent.dao.IStrategyAwardDao;
import org.itxzw.infrastructure.persistent.dao.IStrategyDao;
import org.itxzw.infrastructure.persistent.dao.IStrategyRuleDao;
import org.itxzw.infrastructure.persistent.po.Award;
import org.itxzw.infrastructure.persistent.po.Strategy;
import org.itxzw.infrastructure.persistent.po.StrategyAward;
import org.itxzw.infrastructure.persistent.po.StrategyRule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import javax.annotation.Resource;
import java.util.List;
@Slf4j
@RunWith(SpringRunner.class)
@SpringBootTest
public class AwardDaoTest {
@Autowired
private IAwardDao awardDao;
@Autowired
private IStrategyDao strategyDao;
@Autowired
private IStrategyAwardDao strategyAwardDao;
@Autowired
private IStrategyRuleDao strategyRuleDao;
@Test
public void test_queryAwardList() {
List<StrategyAward> strategyAwards = strategyAwardDao.queryStrategyAwardList();
log.info("测试结果:{}", JSON.toJSONString(strategyAwards));
List<StrategyRule> strategyRules = strategyRuleDao.queryStrategyRuleList();
log.info("测试结果:{}", JSON.toJSONString(strategyRules));
}
}
package org.itxzw.infrastructure.persistent.dao;
import org.apache.ibatis.annotations.Mapper;
import org.itxzw.infrastructure.persistent.po.Award;
import java.util.List;
/**
* 奖品表DAO
*/
@Mapper
public interface IAwardDao {
List<Award> queryAwardList();
}
package org.itxzw.infrastructure.persistent.dao;
import org.apache.ibatis.annotations.Mapper;
import org.itxzw.infrastructure.persistent.po.StrategyAward;
import java.util.List;
/**
* 抽奖策略奖品明细配置DAO
*/
@Mapper
public interface IStrategyAwardDao {
List<StrategyAward> queryStrategyAwardList();
}
package org.itxzw.infrastructure.persistent.dao;
import org.apache.ibatis.annotations.Mapper;
import org.itxzw.infrastructure.persistent.po.Strategy;
import java.util.List;
/**
* 抽奖策略DAO
*/
@Mapper
public interface IStrategyDao {
List<Strategy> queryStrategyList();
}
package org.itxzw.infrastructure.persistent.dao;
import org.apache.ibatis.annotations.Mapper;
import org.itxzw.infrastructure.persistent.po.StrategyRule;
import java.util.List;
/**
* 策略规则DAO
*/
@Mapper
public interface IStrategyRuleDao {
List<StrategyRule> queryStrategyRuleList();
}
package org.itxzw.infrastructure.persistent.po;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* 奖品表
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Award {
private Long id; // bigint unsigned -> Long
private Long awardId; // bigint -> Long
private String awardKey; // varchar(255) -> String
private String awardConfig; // varchar(255) -> String
private String awardDesc; // varchar(255) -> String
private Date createTime; // datetime -> Date
private Date updateTime; // datetime -> Date
}
package org.itxzw.infrastructure.persistent.po;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* 抽奖策略
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Strategy {
private Long id;
private Long strategyId;
private String strategyDesc;
private Date createTime;
private Date updateTime;
}
package org.itxzw.infrastructure.persistent.po;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.util.Date;
/**
* 抽奖策略奖品明细配置
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class StrategyAward {
private Long id;
private Long strategyId;
private Integer awardId;
private String awardTitle;
private String awardSubtitle;
private Integer awardCount;
private Integer awardCountSurplus;
private BigDecimal awardRate;
private String ruleModels;
private Integer sort;
private Date createTime;
private Date updateTime;
}
package org.itxzw.infrastructure.persistent.po;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* 策略规则
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class StrategyRule {
private Long id;
private Integer strategyId;
private Integer awardId;
private Byte ruleType;
private String ruleModel;
private String ruleValue;
private String ruleDesc;
private Date createTime;
private Date updateTime;
}
24-08-03.11:28:49.610 [main ] INFO Application - Starting Application using Java 1.8.0_131 on zhiwen-xiong-hz with PID 10712 (D:\Code\Java\xiangmu\dayingxiao\xfg-frame-archetype-lite\big-market\big-market-app\target\classes started by a1829 in D:\Code\Java\xiangmu\dayingxiao\xfg-frame-archetype-lite\big-market)
24-08-03.11:28:49.612 [main ] INFO Application - The following 1 profile is active: "dev"
24-08-03.11:28:50.103 [main ] WARN ClassPathMapperScanner - No MyBatis mapper was found in '[org.itxzw]' package. Please check your configuration.
24-08-03.11:28:50.362 [main ] INFO TomcatWebServer - Tomcat initialized with port(s): 8091 (http)
24-08-03.11:28:50.369 [main ] INFO Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8091"]
24-08-03.11:28:50.369 [main ] INFO StandardService - Starting service [Tomcat]
24-08-03.11:28:50.369 [main ] INFO StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.75]
24-08-03.11:28:50.555 [main ] INFO [/] - Initializing Spring embedded WebApplicationContext
24-08-03.11:28:50.556 [main ] INFO ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 915 ms
24-08-03.11:28:50.950 [main ] INFO Http11NioProtocol - Starting ProtocolHandler ["http-nio-8091"]
24-08-03.11:28:50.966 [main ] INFO TomcatWebServer - Tomcat started on port(s): 8091 (http) with context path ''
24-08-03.11:28:50.972 [main ] INFO Application - Started Application in 1.788 seconds (JVM running for 2.674)
24-08-19.21:30:58.065 [main ] INFO Application - Starting Application using Java 1.8.0_131 on zhiwen-xiong-hz with PID 15480 (D:\Code\Java\xiangmu\dayingxiao\xfg-frame-archetype-lite\big-market\big-market-app\target\classes started by a1829 in D:\Code\Java\xiangmu\dayingxiao\xfg-frame-archetype-lite\big-market)
24-08-19.21:30:58.067 [main ] INFO Application - The following 1 profile is active: "dev"
24-08-19.21:30:58.736 [main ] INFO TomcatWebServer - Tomcat initialized with port(s): 8091 (http)
24-08-19.21:30:58.742 [main ] INFO Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8091"]
24-08-19.21:30:58.743 [main ] INFO StandardService - Starting service [Tomcat]
24-08-19.21:30:58.743 [main ] INFO StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.75]
24-08-19.21:30:58.930 [main ] INFO [/] - Initializing Spring embedded WebApplicationContext
24-08-19.21:30:58.930 [main ] INFO ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 834 ms
24-08-19.21:30:59.426 [main ] INFO Http11NioProtocol - Starting ProtocolHandler ["http-nio-8091"]
24-08-19.21:30:59.443 [main ] INFO TomcatWebServer - Tomcat started on port(s): 8091 (http) with context path ''
24-08-19.21:30:59.448 [main ] INFO Application - Started Application in 1.666 seconds (JVM running for 2.272)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册