无品牌校区导入
This commit is contained in:
parent
a9a83afdd6
commit
40efe42369
@ -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<Row> 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<Store> stores = RowUtil.toEntityList(notBrandStore, Store.class);
|
||||
SpringUtils.getBean(StoreService.class).saveBatch(stores);
|
||||
List<StoreExtend> 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<Row> waitSignStore = rowList.stream().filter(item -> StringUtils.equals(item.getString("signStatus"), "待签约")).collect(Collectors.toList());
|
||||
//List<Row> waitSignStore = rowList.stream().filter(item -> StringUtils.equals(item.getString("signStatus"), "待签约")).collect(Collectors.toList());
|
||||
|
||||
|
||||
System.out.println(JSONArray.toJSONString(rowList));
|
||||
/*Map<String, String> phoneToId = DbChain.table(STAFF.getTableName())
|
||||
.select(STAFF.ID)
|
||||
.select(SYS_USER.PHONE_NUMBER.as("phone"))
|
||||
|
||||
@ -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<Row> filterList = rowList.stream().filter(item -> StringUtils.isNotBlank(item.getString("id"))).collect(Collectors.toList());
|
||||
SpringUtils.getBean(StoreService.class).updateBatch(RowUtil.toEntityList(filterList, Store.class));
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user