pom.xml
@@ -19,7 +19,7 @@ <mysql-driver.version>8.0.17</mysql-driver.version> <alibaba-druid.version>1.1.18</alibaba-druid.version> <mybatis.version>2.0.1</mybatis.version> <mybatis-plus.version>3.3.1.tmp</mybatis-plus.version> <mybatis-plus.version>3.3.0</mybatis-plus.version> <validation-api.version>2.0.1.Final</validation-api.version> <hibernate-validator.version>6.1.0.Final</hibernate-validator.version> <swagger.version>2.9.2</swagger.version> @@ -77,12 +77,6 @@ <artifactId>spring-boot-starter-amqp</artifactId> </dependency> <!-- <dependency>--> <!-- <groupId>org.springframework.security</groupId>--> <!-- <artifactId>spring-security-test</artifactId>--> <!-- <scope>test</scope>--> <!-- </dependency>--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> @@ -124,6 +118,12 @@ </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>3.0.0</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>${alibaba-druid.version}</version> src/main/java/com/xcong/excoin/modules/datamove/DataMoveService.java
New file @@ -0,0 +1,243 @@ package com.xcong.excoin.modules.datamove; import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.IdUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.dynamic.datasource.annotation.DS; import com.xcong.excoin.modules.datamove.dao.*; import com.xcong.excoin.modules.datamove.entity.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.Map; /** * @author wzy * @date 2021-07-01 **/ @Service public class DataMoveService { @Autowired private JdbcTemplate jdbcTemplate; @Autowired private JhyInfoMapper jhyInfoMapper; @Autowired private JhyOrderMapper jhyOrderMapper; @Autowired private JhyOrderItemsMapper jhyOrderItemsMapper; public <T> T mapToBane(Map<String, Object> map, Class<T> t) { String s = JSONObject.toJSONString(map); return JSONObject.parseObject(s, t); } @DS("slave") public List<Map<String, Object>> oldJhyTest() { return jdbcTemplate.queryForList("select * from zx_jhy"); } public void newJhyInfoTest(List<Map<String, Object>> datas) { for (Map<String, Object> data : datas) { JhyInfo jhyInfo = mapToBane(data, JhyInfo.class); String date = data.get("create_time").toString(); jhyInfo.setCreatedTime(DateUtil.parse(date, "yyyy-MM-dd HH:mm:ss")); jhyInfo.setCardPos(data.get("card").toString()); jhyInfo.setIsJhy("1"); jhyInfo.setStatus(2); jhyInfoMapper.insert(jhyInfo); } } @DS("slave") public List<Map<String, Object>> oldOrderTest() { List<Map<String, Object>> maps = jdbcTemplate.queryForList("select * from zx_jhy_order_info"); for (Map<String, Object> map : maps) { List<Map<String, Object>> goods = jdbcTemplate.queryForList("select * from zx_jhy_order_goods where order_id=" + map.get("id")); if (map.get("jhy") != null && !"0".equals(map.get("jhy").toString())) { Map<String, Object> jhy = jdbcTemplate.queryForMap("select * from zx_users where id=" + map.get("jhy")); if (jhy != null) { map.put("jhy_id", jhy.get("yhid")); } } map.put("items", goods); } return maps; } @Transactional(rollbackFor = Exception.class) public void newOrderTest(List<Map<String, Object>> datas) { for (Map<String, Object> data : datas) { JhyOrder jhyOrder = mapToBane(data, JhyOrder.class); String createTime = data.get("create_time").toString(); jhyOrder.setCreatedTime(DateUtil.parse(createTime, "yyyy-MM-dd HH:mm:ss")); jhyOrder.setArea(data.get("address_area").toString()); jhyOrder.setOrderNo(data.get("order_id").toString()); jhyOrder.setAddress(data.get("address").toString()); String udpateTime = data.get("update_time").toString(); jhyOrder.setReceivingTime(DateUtil.parse(udpateTime, "yyyy-MM-dd HH:mm:ss")); jhyOrder.setWeight(data.get("remark").toString()); jhyOrder.setIsCommented(null); String reserveDate = data.get("create_time").toString(); jhyOrder.setReserveDate(DateUtil.parse(reserveDate, "yyyy-MM-dd")); jhyOrder.setIsAnonymous(null); jhyOrder.setUsername(data.get("username").toString()); switch (jhyOrder.getStatus()) { case 4 : jhyOrder.setStatus(3); break; case 6: jhyOrder.setStatus(5); } Map<String, Object> userId = jdbcTemplate.queryForMap("select * from xzx_user_info where user_id='" + jhyOrder.getUserId() + "'"); jhyOrder.setPhone(userId.get("mobile_phone").toString()); jhyOrderMapper.insert(jhyOrder); boolean flag = false; List<Map<String, Object>> items = (List<Map<String, Object>>) data.get("items"); for (Map<String, Object> item : items) { JhyOrderItems jhyOrderItems = mapToBane(item, JhyOrderItems.class); jhyOrderItems.setOrderId(jhyOrder.getId()); if (jhyOrder.getStatus() != 5) { String total = data.get("ordersum").toString(); jhyOrderItems.setScore(total); if (items.size() > 1) { if (!flag) { jhyOrderItems.setWeight(new BigDecimal(total).divide(BigDecimal.valueOf(40), 2, BigDecimal.ROUND_DOWN)); } else { jhyOrderItems.setWeight(BigDecimal.ZERO); jhyOrderItems.setScore("0"); } flag = true; } else { jhyOrderItems.setWeight(new BigDecimal(total).divide(BigDecimal.valueOf(40), 2, BigDecimal.ROUND_DOWN)); } } jhyOrderItemsMapper.insert(jhyOrderItems); } } } @DS("slave") public List<Map<String, Object>> oldShopOrderList() { List<Map<String, Object>> maps = jdbcTemplate.queryForList("select * from zx_order_info"); for (Map<String, Object> map : maps) { Map<String, Object> sku = jdbcTemplate.queryForMap("select * from zx_order_goods where order_id=" + map.get("id")); Map<String, Object> user = jdbcTemplate.queryForMap("select * from zx_users where id=" + map.get("user_id")); System.out.println(sku.get("sku_id")); Map<String, Object> goods = jdbcTemplate.queryForMap("select * from zx_goods where id=" + sku.get("sku_id")); map.put("user_id", user.get("yhid")); map.put("sku", sku); map.put("goods", goods); } return maps; } public String generate(String prefix,long datacenterId){ Snowflake snowflake = IdUtil.getSnowflake(Convert.toLong(0), datacenterId); return prefix+snowflake.nextIdStr(); } @Autowired private ScoreOrderMapper scoreOrderMapper; @Autowired private ScoreExpressInfoMapper scoreExpressInfoMapper; @Autowired private ScoreOrderDetailsMapper scoreOrderDetailsMapper; public void newShopOrderList(List<Map<String, Object>> maps) { for (Map<String, Object> map : maps) { Map<String, Object> goods = (Map<String, Object>) map.get("goods"); ScoreOrder scoreOrder = mapToBane(map, ScoreOrder.class); scoreOrder.setGoodsName(goods.get("name").toString()); scoreOrder.setOrderNo(generate("JF", 9)); scoreOrder.setCnt(Integer.parseInt(map.get("number").toString())); scoreOrder.setTotalPrice(new BigDecimal(map.get("total_mount").toString())); String createTime = map.get("create_time").toString(); scoreOrder.setCreatedTime(DateUtil.parse(createTime, "yyyy-MM-dd HH:mm:ss")); scoreOrder.setIsFinish(2); scoreOrderMapper.insert(scoreOrder); ScoreExpressInfo expressInfo = new ScoreExpressInfo(); expressInfo.setOrderId(scoreOrder.getId()); expressInfo.setAddress(map.get("address").toString()); expressInfo.setPhone(map.get("mobile").toString()); expressInfo.setUsername(map.get("username").toString()); expressInfo.setCreatedTime(DateUtil.parse(createTime, "yyyy-MM-dd HH:mm:ss")); expressInfo.setUserId(scoreOrder.getUserId()); scoreExpressInfoMapper.insert(expressInfo); Map<String, Object> sku = (Map<String, Object>) map.get("sku"); ScoreOrderDetails orderDetails = new ScoreOrderDetails(); orderDetails.setOrderId(scoreOrder.getId()); orderDetails.setCnt(scoreOrder.getCnt()); orderDetails.setUnitPrice(new BigDecimal(goods.get("present_price").toString())); orderDetails.setStyle(goods.get("style").toString()); orderDetails.setSku(goods.get("specs").toString()); orderDetails.setThumb("https://pic.cnxzx.com/media/" + goods.get("image_url")); orderDetails.setTotalPrice(new BigDecimal(map.get("total_mount").toString())); orderDetails.setGoodsName(goods.get("name").toString()); scoreOrderDetailsMapper.insert(orderDetails); } } @DS("slave") public List<Map<String, Object>> oldScoreDetails() { List<Map<String, Object>> maps = jdbcTemplate.queryForList("select * from zx_integral_records"); for (Map<String, Object> map : maps) { Map<String, Object> user = jdbcTemplate.queryForMap("select * from zx_users where id=" + map.get("user_id")); map.put("user_id", user.get("yhid")); } return maps; } @Autowired private ScoreDetailsMapper scoreDetailsMapper; public void newScoreDetails(List<Map<String, Object>> maps) { for (Map<String, Object> map : maps) { ScoreDetails scoreDetails = mapToBane(map, ScoreDetails.class); String createTime = map.get("create_time").toString(); scoreDetails.setCreatedTime(DateUtil.parse(createTime, "yyyy-MM-dd HH:mm:ss")); scoreDetails.setCurrentScore(new BigDecimal(map.get("present").toString())); scoreDetails.setChangeScore(new BigDecimal(map.get("change").toString())); scoreDetails.setOriginalScore(new BigDecimal(map.get("original").toString())); scoreDetails.setType(Integer.parseInt(map.get("source_type").toString())); scoreDetails.setOrderNo(map.get("order_id").toString()); scoreDetailsMapper.insert(scoreDetails); } } @DS("slave") public List<Map<String, Object>> oldScore() { return jdbcTemplate.queryForList("select * from zx_users where integral!=0"); } public void newScore(List<Map<String, Object>> maps) { for (Map<String, Object> map : maps) { jdbcTemplate.update("update xzx_account_info set collect_score=" + map.get("integral") + " where user_id='" + map.get("yhid") + "'"); } } } src/main/java/com/xcong/excoin/modules/datamove/dao/JhyInfoMapper.java
New file @@ -0,0 +1,11 @@ package com.xcong.excoin.modules.datamove.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xcong.excoin.modules.datamove.entity.JhyInfo; /** * @author wzy * @date 2021-07-01 **/ public interface JhyInfoMapper extends BaseMapper<JhyInfo> { } src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderItemsMapper.java
New file @@ -0,0 +1,7 @@ package com.xcong.excoin.modules.datamove.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xcong.excoin.modules.datamove.entity.JhyOrderItems; public interface JhyOrderItemsMapper extends BaseMapper<JhyOrderItems> { } src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderMapper.java
New file @@ -0,0 +1,7 @@ package com.xcong.excoin.modules.datamove.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xcong.excoin.modules.datamove.entity.JhyOrder; public interface JhyOrderMapper extends BaseMapper<JhyOrder> { } src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreDetailsMapper.java
New file @@ -0,0 +1,7 @@ package com.xcong.excoin.modules.datamove.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xcong.excoin.modules.datamove.entity.ScoreDetails; public interface ScoreDetailsMapper extends BaseMapper<ScoreDetails> { } src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreExpressInfoMapper.java
New file @@ -0,0 +1,8 @@ package com.xcong.excoin.modules.datamove.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xcong.excoin.modules.datamove.entity.ScoreExpressInfo; public interface ScoreExpressInfoMapper extends BaseMapper<ScoreExpressInfo> { } src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderDetailsMapper.java
New file @@ -0,0 +1,7 @@ package com.xcong.excoin.modules.datamove.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xcong.excoin.modules.datamove.entity.ScoreOrderDetails; public interface ScoreOrderDetailsMapper extends BaseMapper<ScoreOrderDetails> { } src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderMapper.java
New file @@ -0,0 +1,7 @@ package com.xcong.excoin.modules.datamove.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xcong.excoin.modules.datamove.entity.ScoreOrder; public interface ScoreOrderMapper extends BaseMapper<ScoreOrder> { } src/main/java/com/xcong/excoin/modules/datamove/entity/BaseEntity.java
New file @@ -0,0 +1,28 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.io.Serializable; import java.util.Date; @Data public class BaseEntity implements Serializable { private static final long serialVersionUID = 1L; private String createdBy; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createdTime; private short delFlag; private Integer revision; @TableId(value = "id",type = IdType.AUTO) private Long id; } src/main/java/com/xcong/excoin/modules/datamove/entity/JhyInfo.java
New file @@ -0,0 +1,44 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @Data @TableName("xzx_jhy_info") public class JhyInfo extends BaseEntity { private String userId; private String username; private String gender; private String mobile; private String identity; private String address; private String lon; private String lat; private String cardPos; /** * 是否集物员 1-是 2-否 */ private String isJhy; public static final String IS_JHY_Y = "1"; public static final String IS_JHY_N = "2"; /** * 审核状态 1-待审核 2-审核通过 3-审核拒绝 */ private Integer status; public static final Integer CHECK_WAIT = 1; public static final Integer CHECK_PASS = 2; public static final Integer CHECK_REFUSE = 3; } src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrder.java
New file @@ -0,0 +1,73 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.util.Date; @Data @TableName("xzx_jhy_order") public class JhyOrder extends BaseEntity { private String userId; private String orderNo; private String username; private String phone; private String area; private String address; private Date reserveDate; private String reserveTime; private Date receivingTime; private String longitude; private String latitude; private String weight; /** * 订单状态 状态 1-待接单2-已接单3-已完成(用户)/待入库(集物员)4-已完成5-已取消 */ private Integer status; public static final Integer ORDER_STATUS_WAITING = 1; public static final Integer ORDER_STATUS_IMG = 2; public static final Integer ORDER_STATUS_CONFIRM = 3; public static final Integer ORDER_STATUS_CANCEL = 5; /** * 评论 */ private String comment; /** * 分数 */ private Integer score; /** * 是否匿名 1-是 2-否 */ private Integer isAnonymous; /** * 是否已评论 1-是 2-否 */ private Integer isCommented; private String remark; /** * 集物员ID */ private String jhyId; } src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrderItems.java
New file @@ -0,0 +1,42 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; @Data @TableName("xzx_jhy_order_items") @ApiModel(value = "JhyOrderItems", description = "订单详情") public class JhyOrderItems extends BaseEntity { private Long orderId; @ApiModelProperty(value="标题") private String title; @ApiModelProperty(value="价格") private BigDecimal price; @ApiModelProperty(value="图片") private String picture; @ApiModelProperty(value="备注") private String remark; @ApiModelProperty(value="重量") private BigDecimal weight; @ApiModelProperty(value="积分") private String score; @ApiModelProperty(value="类型") private Long itemType; @TableField(exist = false) @ApiModelProperty(value = "单位") private transient String itemUnit; } src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreDetails.java
New file @@ -0,0 +1,36 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.math.BigDecimal; @Data @TableName("xzx_score_details") public class ScoreDetails extends BaseEntity { //订单编号 private String orderNo; //用户ID private String userId; //交易类型 1-用户充值2-集物员支付3-用户兑换所得4-用户消费5-消费退回6-管理员充值7-其他 private Integer type; public static final Integer SCORE_TYPE_USER_RECHARGE = 1; public static final Integer SCORE_TYPE_PAY = 2; public static final Integer SCORE_TYPE_EXCHANGE = 3; public static final Integer SCORE_TYPE_SHOPPING = 4; public static final Integer SCORE_TYPE_SHOPPING_RETURN = 5; public static final Integer SCORE_TYPE_ADMIN_RECHARGE = 6; public static final Integer SCORE_TYPE_OTHER = 7; //原始积分 private BigDecimal originalScore; //变化积分 private BigDecimal changeScore; //当前积分 private BigDecimal currentScore; } src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreExpressInfo.java
New file @@ -0,0 +1,28 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; /** * @author wzy * @date 2021-06-21 **/ @Data @TableName("xzx_score_express_info") public class ScoreExpressInfo extends BaseEntity { private String userId; private String username; private String phone; private String address; private String expressNo; private String expressCom; private Long orderId; } src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrder.java
New file @@ -0,0 +1,47 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.math.BigDecimal; /** * @author wzy * @date 2021-06-21 **/ @Data @TableName("xzx_score_order") public class ScoreOrder extends BaseEntity { private String orderNo; private String goodsName; private String userId; private String voucherImg; private Integer cnt; private BigDecimal totalPrice; /** * 1-待发货2-待收货3-已收货4-已完成5-已评价6-已取消 */ private Integer status; public static final Integer STATUS_READY = 1; public static final Integer STATUS_ON = 2; public static final Integer STATUS_DOING = 3; public static final Integer STATUS_DONE = 4; public static final Integer STATUS_EVALUATE = 5; public static final Integer STATUS_CANCEL = 6; /** * 后台确认提货 1:是 2:否 */ private Integer isFinish; public static final Integer ISFINISH_YES = 1; public static final Integer ISFINISH_NO = 2; private String remark; } src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrderDetails.java
New file @@ -0,0 +1,35 @@ package com.xcong.excoin.modules.datamove.entity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.math.BigDecimal; /** * @author wzy * @date 2021-06-21 **/ @Data @TableName("xzx_score_order_details") public class ScoreOrderDetails extends BaseEntity { private String goodsName; private BigDecimal unitPrice; private Integer cnt; private BigDecimal totalPrice; private String sku; private String style; private String thumb; private Long goodsId; private Long skuId; private Long orderId; } src/main/resources/application-test.yml
@@ -7,14 +7,22 @@ profiles: active: test datasource: # url: jdbc:mysql://rm-bp151tw8er79ig9kb5o.mysql.rds.aliyuncs.com:3306/db_biue?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2b8 # username: ctcoin_data # password: ctcoin_123 url: jdbc:mysql://120.27.238.55:3306/db_otc?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2b8 username: ct_test password: 123456 driver-class-name: com.mysql.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource dynamic: primary: master strict: false datasource: master: url: jdbc:mysql://120.27.238.55:3306/db_xzx?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useAffectedRows=true&serverTimezone=GMT%2b8 username: ct_test password: 123456 driver-class-name: com.mysql.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource slave: url: jdbc:mysql://120.27.238.55:3306/db_jf?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useAffectedRows=true&serverTimezone=GMT%2b8 username: ct_test password: 123456 type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver druid: initial-size: ${spring_datasource_druid_initial_size:10} max-active: ${spring_datasource_druid_max_active:20} src/main/resources/application.yml
@@ -6,15 +6,25 @@ spring: profiles: active: dev autoconfigure: exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure datasource: url: jdbc:mysql://154.91.195.170:3306/db_otc?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2b8 username: yd_otc password: yd_otc123!@# # url: jdbc:mysql://120.27.238.55:3306/db_otc?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2b8 # username: ct_test # password: 123456 driver-class-name: com.mysql.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource dynamic: primary: master strict: false datasource: master: url: jdbc:mysql://120.27.238.55:3306/db_xzx?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useAffectedRows=true&serverTimezone=GMT%2b8 username: ct_test password: 123456 driver-class-name: com.mysql.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource slave: url: jdbc:mysql://120.27.238.55:3306/xzxapp_new?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useAffectedRows=true&serverTimezone=GMT%2b8 username: ct_test password: 123456 type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver druid: initial-size: ${spring_datasource_druid_initial_size:10} max-active: ${spring_datasource_druid_max_active:20} @@ -96,7 +106,10 @@ mybatis-plus: mapper-locations: classpath:mapper/**/*.xml file: storage: path: /home/javaweb/webresource/images url: http://download.topclouds.cc/images/ app: debug: true project: otc src/main/resources/mapper/datamove/JhyInfoMapper.xml
New file @@ -0,0 +1,5 @@ <?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.xcong.excoin.modules.datamove.dao.JhyInfoMapper"> </mapper> src/main/resources/mapper/datamove/JhyOrderItemsMapper.xml
New file @@ -0,0 +1,5 @@ <?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.xcong.excoin.modules.datamove.dao.JhyOrderItemsMapper"> </mapper> src/main/resources/mapper/datamove/JhyOrderMapper.xml
New file @@ -0,0 +1,5 @@ <?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.xcong.excoin.modules.datamove.dao.JhyOrderMapper"> </mapper> src/main/resources/mapper/datamove/ScoreDetailsMapper.xml
New file @@ -0,0 +1,5 @@ <?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.xcong.excoin.modules.datamove.dao.ScoreDetailsMapper"> </mapper> src/main/resources/mapper/datamove/ScoreOrderMapper.xml
New file @@ -0,0 +1,5 @@ <?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.xcong.excoin.modules.datamove.dao.ScoreOrderMapper"> </mapper> src/test/java/com/xcong/excoin/dataMoveTest.java
New file @@ -0,0 +1,49 @@ package com.xcong.excoin; import cn.hutool.core.collection.CollUtil; import com.baomidou.dynamic.datasource.annotation.DS; import com.xcong.excoin.modules.datamove.DataMoveService; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.jdbc.core.JdbcTemplate; import java.util.ArrayList; import java.util.List; import java.util.Map; @Slf4j @SpringBootTest public class dataMoveTest { @Autowired private DataMoveService dataMoveService; @Test public void jhyInfoTest() { List<Map<String, Object>> oldData = dataMoveService.oldJhyTest(); dataMoveService.newJhyInfoTest(oldData); } @Test public void jhyOrderTest() { dataMoveService.newOrderTest(dataMoveService.oldOrderTest()); } @Test public void shopOrderTest() { dataMoveService.newShopOrderList(dataMoveService.oldShopOrderList()); } @Test public void scoreDetailsTest() { dataMoveService.newScoreDetails(dataMoveService.oldScoreDetails()); } @Test public void scoreTest() { dataMoveService.newScore(dataMoveService.oldScore()); } }