From 40efe42369f6509c2c2996f926fecd2447257684 Mon Sep 17 00:00:00 2001 From: DB <2502523450@qq.com> Date: Mon, 29 Jan 2024 21:51:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A0=E5=93=81=E7=89=8C=E6=A0=A1=E5=8C=BA?= =?UTF-8?q?=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/cpop/oam/web/CpopDataSyncTests.java | 52 ++++++++++++++----- .../cpop/oam/web/CpopOldDataSyncTests.java | 12 ----- 2 files changed, 40 insertions(+), 24 deletions(-) diff --git a/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopDataSyncTests.java b/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopDataSyncTests.java index 712f556..c3e72be 100644 --- a/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopDataSyncTests.java +++ b/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopDataSyncTests.java @@ -1,6 +1,5 @@ package com.cpop.oam.web; -import com.alibaba.fastjson.JSONArray; import com.cpop.common.utils.StringUtils; import com.cpop.core.utils.SpringUtils; import com.cpop.jambox.business.entity.BrandExtend; @@ -14,31 +13,26 @@ import com.cpop.jambox.business.service.StoreExtendService; import com.cpop.system.business.entity.Store; import com.cpop.system.business.entity.StoreSign; import com.cpop.system.business.entity.WxPayScore; -import com.cpop.system.business.mapper.StoreMapper; -import com.cpop.system.business.mapper.StoreSignMapper; import com.cpop.system.business.service.StoreService; import com.cpop.system.business.service.StoreSignService; import com.cpop.system.business.service.WxPayScoreService; import com.mybatisflex.core.datasource.DataSourceKey; -import com.mybatisflex.core.row.Db; import com.mybatisflex.core.row.DbChain; import com.mybatisflex.core.row.Row; import com.mybatisflex.core.row.RowUtil; -import com.mybatisflex.core.update.UpdateChain; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.ActiveProfiles; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import static com.cpop.core.base.table.table.SysUserTableDef.SYS_USER; import static com.cpop.jambox.business.entity.table.StoreExtendTableDef.STORE_EXTEND; -import static com.cpop.oam.business.entity.table.StaffTableDef.STAFF; import static com.cpop.system.business.entity.table.StoreSignTableDef.STORE_SIGN; import static com.cpop.system.business.entity.table.StoreTableDef.STORE; import static com.mybatisflex.core.query.QueryMethods.count; @@ -219,19 +213,53 @@ public class CpopDataSyncTests { try { DataSourceKey.use("jambox"); rowList = DbChain.table("OAM_data_sign") - .select("sign_status","store_id","brand_id","sign_status","sign_time","end_time","sign_name","cre_time") - .from("OAM_data_sign") + .select("ods.sign_status", "tmi.mechanism as storeName", "ods.store_id as storeCloudId", "tbi.brand_id as brandCloudId", "ods.sign_time as signCreateTime", "ods.end_time as expireDate", "ods.activation_time as renewDate", + "ods.sign_name as signStaffId", "ods.cre_time as createDate", "ods.address as storeAddr", "ods.charge_name as personCharge","tmi.charge_phone as phone", "tmi.X as longitude", "tmi.Y as latitude", "tmi.test as isTest", + "tmi.reg_addr as licenseAddr", "str_to_date(tmi.reg_date,'%Y年%m月%d') as licenseDate", "tmi.reg_Name as licenseName", + "tmi.ness_license_id as licenseCode", "tmi.corp_name as licenseUserName", "tmi.reg_pic as licensePicUrl") + .from("OAM_data_sign").as("ods") + .leftJoin("t_mechanism_info").as("tmi").on("tmi.mechanism_id = ods.mechanism_id") + .leftJoin("t_brand_info").as("tbi").on("tbi.id = ods.brand_id") + .and("ods.store_id is not null") .list(); } finally { DataSourceKey.clear(); } + DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + //无品牌校区 - + List notBrandStore = rowList.stream().filter(item -> StringUtils.isBlank(item.getString("brandCloudId"))).collect(Collectors.toList()); + notBrandStore.forEach(item->{ + if (StringUtils.isNotBlank(item.getString("signStaffId"))){ + item.put("haveCounselor",true); + } + if (item.getString("createDate").length() < 11) { + item.put("createTime", LocalDateTime.parse(item.getString("createDate") + " 00:00:00", dateTimeFormatter)); + } else { + item.put("createTime", LocalDateTime.parse(item.getString("createDate"), dateTimeFormatter)); + } + if (StringUtils.isNotBlank(item.getString("renewDate"))){ + item.put("haveActive",true); + } + item.put("sourceType","JAMBOX"); + }); + //先同步校区数据 + List stores = RowUtil.toEntityList(notBrandStore, Store.class); + SpringUtils.getBean(StoreService.class).saveBatch(stores); + List storeExtends = new ArrayList<>(); + for (int i = 0; i < stores.size(); i++) { + StoreExtend storeExtend = new StoreExtend(); + storeExtend.setStoreId(stores.get(i).getId()); + storeExtend.setCreateTime(LocalDateTime.now()); + storeExtend.setStoreCloudId(notBrandStore.get(i).getString("storeCloudId")); + storeExtends.add(storeExtend); + } + SpringUtils.getBean(StoreExtendService.class).saveBatch(storeExtends); //过滤出已签约的数据 - List waitSignStore = rowList.stream().filter(item -> StringUtils.equals(item.getString("signStatus"), "待签约")).collect(Collectors.toList()); + //List waitSignStore = rowList.stream().filter(item -> StringUtils.equals(item.getString("signStatus"), "待签约")).collect(Collectors.toList()); + - System.out.println(JSONArray.toJSONString(rowList)); /*Map phoneToId = DbChain.table(STAFF.getTableName()) .select(STAFF.ID) .select(SYS_USER.PHONE_NUMBER.as("phone")) diff --git a/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopOldDataSyncTests.java b/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopOldDataSyncTests.java index e4b0a51..485add3 100644 --- a/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopOldDataSyncTests.java +++ b/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopOldDataSyncTests.java @@ -1,9 +1,5 @@ package com.cpop.oam.web; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.alibaba.fastjson.serializer.SerializerFeature; import com.cpop.common.utils.StringUtils; import com.cpop.core.base.enums.OrderSource; import com.cpop.core.utils.SpringUtils; @@ -20,19 +16,14 @@ import com.github.binarywang.wxpay.bean.payscore.PartnerUserSignPlanEntity; import com.github.binarywang.wxpay.bean.payscore.PayScorePlanDetailResult; import com.github.binarywang.wxpay.bean.payscore.WxPartnerPayScoreSignPlanResult; import com.github.binarywang.wxpay.bean.profitsharing.result.ProfitSharingV3Result; -import com.github.binarywang.wxpay.bean.request.WxPayOrderQueryRequest; -import com.github.binarywang.wxpay.bean.request.WxPayOrderQueryV3Request; import com.github.binarywang.wxpay.bean.request.WxPayPartnerOrderQueryV3Request; -import com.github.binarywang.wxpay.bean.result.WxPayOrderQueryResult; import com.github.binarywang.wxpay.bean.result.WxPayPartnerOrderQueryV3Result; import com.github.binarywang.wxpay.exception.WxPayException; -import com.github.binarywang.wxpay.service.PartnerPayScoreSignPlanService; import com.github.binarywang.wxpay.service.WxPayService; import com.mybatisflex.annotation.KeyType; import com.mybatisflex.core.datasource.DataSourceKey; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.core.row.*; -import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -44,12 +35,10 @@ import java.math.RoundingMode; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import static com.cpop.jambox.business.entity.table.EasyLearnOrderDetailTableDef.EASY_LEARN_ORDER_DETAIL; import static com.cpop.jambox.business.entity.table.EasyLearnOrderExtendTableDef.EASY_LEARN_ORDER_EXTEND; import static com.cpop.jambox.business.entity.table.EasyLearnOrderTableDef.EASY_LEARN_ORDER; import static com.cpop.jambox.business.entity.table.StoreExtendTableDef.STORE_EXTEND; @@ -99,7 +88,6 @@ public class CpopOldDataSyncTests { rowList.forEach(item->{ item.set("id",storeMap.get(item.getString("storeCloudId"))); }); - List filterList = rowList.stream().filter(item -> StringUtils.isNotBlank(item.getString("id"))).collect(Collectors.toList()); SpringUtils.getBean(StoreService.class).updateBatch(RowUtil.toEntityList(filterList, Store.class)); }