From 1e4cab335b1cb68ad3438e522ea410c2d2e753ed Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Tue, 07 Sep 2021 14:54:16 +0800 Subject: [PATCH] data_move --- src/main/java/com/xcong/excoin/modules/datamove/entity/BaseEntity.java | 28 ++ src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreExpressInfoMapper.java | 8 src/main/resources/mapper/datamove/JhyOrderItemsMapper.xml | 5 src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderItemsMapper.java | 7 pom.xml | 14 src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreDetailsMapper.java | 7 src/test/java/com/xcong/excoin/dataMoveTest.java | 49 +++ src/main/java/com/xcong/excoin/modules/datamove/DataMoveService.java | 243 ++++++++++++++++++ src/main/java/com/xcong/excoin/modules/datamove/dao/JhyInfoMapper.java | 11 src/main/resources/mapper/datamove/JhyOrderMapper.xml | 5 src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrderDetails.java | 35 ++ src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreDetails.java | 36 ++ src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrder.java | 47 +++ src/main/resources/mapper/datamove/ScoreOrderMapper.xml | 5 src/main/resources/mapper/datamove/ScoreDetailsMapper.xml | 5 src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrder.java | 73 +++++ src/main/resources/mapper/datamove/JhyInfoMapper.xml | 5 src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderDetailsMapper.java | 7 src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderMapper.java | 7 src/main/resources/application-test.yml | 24 + src/main/java/com/xcong/excoin/modules/datamove/entity/JhyInfo.java | 44 +++ src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreExpressInfo.java | 28 ++ src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderMapper.java | 7 src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrderItems.java | 42 +++ src/main/resources/application.yml | 31 + 25 files changed, 749 insertions(+), 24 deletions(-) diff --git a/pom.xml b/pom.xml index 2b52ce0..daa219c 100644 --- a/pom.xml +++ b/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> diff --git a/src/main/java/com/xcong/excoin/modules/datamove/DataMoveService.java b/src/main/java/com/xcong/excoin/modules/datamove/DataMoveService.java new file mode 100644 index 0000000..55b0364 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/DataMoveService.java @@ -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") + "'"); + } + } +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyInfoMapper.java b/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyInfoMapper.java new file mode 100644 index 0000000..b80c36f --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyInfoMapper.java @@ -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> { +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderItemsMapper.java b/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderItemsMapper.java new file mode 100644 index 0000000..12adade --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderItemsMapper.java @@ -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> { +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderMapper.java b/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderMapper.java new file mode 100644 index 0000000..d2e394a --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/dao/JhyOrderMapper.java @@ -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> { +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreDetailsMapper.java b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreDetailsMapper.java new file mode 100644 index 0000000..ebeded4 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreDetailsMapper.java @@ -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> { +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreExpressInfoMapper.java b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreExpressInfoMapper.java new file mode 100644 index 0000000..7948383 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreExpressInfoMapper.java @@ -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> { +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderDetailsMapper.java b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderDetailsMapper.java new file mode 100644 index 0000000..2c4457e --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderDetailsMapper.java @@ -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> { +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderMapper.java b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderMapper.java new file mode 100644 index 0000000..7d581a3 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/dao/ScoreOrderMapper.java @@ -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> { +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/BaseEntity.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/BaseEntity.java new file mode 100644 index 0000000..5e72a21 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/BaseEntity.java @@ -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; +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyInfo.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyInfo.java new file mode 100644 index 0000000..28dac6c --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyInfo.java @@ -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; +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrder.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrder.java new file mode 100644 index 0000000..2b979c1 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrder.java @@ -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; + +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrderItems.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrderItems.java new file mode 100644 index 0000000..90ea6c1 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/JhyOrderItems.java @@ -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; +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreDetails.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreDetails.java new file mode 100644 index 0000000..0ebd996 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreDetails.java @@ -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; +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreExpressInfo.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreExpressInfo.java new file mode 100644 index 0000000..69a3b44 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreExpressInfo.java @@ -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; +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrder.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrder.java new file mode 100644 index 0000000..6878376 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrder.java @@ -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; +} diff --git a/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrderDetails.java b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrderDetails.java new file mode 100644 index 0000000..b0ff655 --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/datamove/entity/ScoreOrderDetails.java @@ -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; +} diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml index 944d185..8f85456 100644 --- a/src/main/resources/application-test.yml +++ b/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} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 99c137d..cab8752 100644 --- a/src/main/resources/application.yml +++ b/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 diff --git a/src/main/resources/mapper/datamove/JhyInfoMapper.xml b/src/main/resources/mapper/datamove/JhyInfoMapper.xml new file mode 100644 index 0000000..81f4526 --- /dev/null +++ b/src/main/resources/mapper/datamove/JhyInfoMapper.xml @@ -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> \ No newline at end of file diff --git a/src/main/resources/mapper/datamove/JhyOrderItemsMapper.xml b/src/main/resources/mapper/datamove/JhyOrderItemsMapper.xml new file mode 100644 index 0000000..bf2fa55 --- /dev/null +++ b/src/main/resources/mapper/datamove/JhyOrderItemsMapper.xml @@ -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> \ No newline at end of file diff --git a/src/main/resources/mapper/datamove/JhyOrderMapper.xml b/src/main/resources/mapper/datamove/JhyOrderMapper.xml new file mode 100644 index 0000000..0f341b1 --- /dev/null +++ b/src/main/resources/mapper/datamove/JhyOrderMapper.xml @@ -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> \ No newline at end of file diff --git a/src/main/resources/mapper/datamove/ScoreDetailsMapper.xml b/src/main/resources/mapper/datamove/ScoreDetailsMapper.xml new file mode 100644 index 0000000..f4b8ed2 --- /dev/null +++ b/src/main/resources/mapper/datamove/ScoreDetailsMapper.xml @@ -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> \ No newline at end of file diff --git a/src/main/resources/mapper/datamove/ScoreOrderMapper.xml b/src/main/resources/mapper/datamove/ScoreOrderMapper.xml new file mode 100644 index 0000000..eddf55a --- /dev/null +++ b/src/main/resources/mapper/datamove/ScoreOrderMapper.xml @@ -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> \ No newline at end of file diff --git a/src/test/java/com/xcong/excoin/dataMoveTest.java b/src/test/java/com/xcong/excoin/dataMoveTest.java new file mode 100644 index 0000000..7816e7a --- /dev/null +++ b/src/test/java/com/xcong/excoin/dataMoveTest.java @@ -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()); + } + +} -- Gitblit v1.9.1