|
@@ -92,7 +92,7 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void extractedCertInfo(){
|
|
|
|
|
|
+ public void extractedCertInfo() throws Exception {
|
|
WangdianWxgVos wvos = new WangdianWxgVos();
|
|
WangdianWxgVos wvos = new WangdianWxgVos();
|
|
List<WorkerCert> addList = new ArrayList<>();
|
|
List<WorkerCert> addList = new ArrayList<>();
|
|
Map<String,Object> req = new HashMap<>();
|
|
Map<String,Object> req = new HashMap<>();
|
|
@@ -100,16 +100,15 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
Map<String,List<Worker>> workerWorkeridMap = new HashMap<>();
|
|
Map<String,List<Worker>> workerWorkeridMap = new HashMap<>();
|
|
Map<String,List<WorkerCert>> WorkerCertWorkerIdMaps = new HashMap<>();
|
|
Map<String,List<WorkerCert>> WorkerCertWorkerIdMaps = new HashMap<>();
|
|
List<ItfTblWangdianWxgDownload> wxgDownladRecs = new ArrayList<>();
|
|
List<ItfTblWangdianWxgDownload> wxgDownladRecs = new ArrayList<>();
|
|
- List<WebsitWorker> websitWorkerUp = new ArrayList<>();
|
|
|
|
List<String> workerIdandNames = new ArrayList<>();
|
|
List<String> workerIdandNames = new ArrayList<>();
|
|
List<InsureWorkerCommercial> insurecs = new ArrayList<>();
|
|
List<InsureWorkerCommercial> insurecs = new ArrayList<>();
|
|
List<InsureWorkerCommercialFile> insurefiles = new ArrayList<>();
|
|
List<InsureWorkerCommercialFile> insurefiles = new ArrayList<>();
|
|
List<String> bxWorkerIdWebsitIds = new ArrayList<>();
|
|
List<String> bxWorkerIdWebsitIds = new ArrayList<>();
|
|
Map<String,List<WebsitWorker>> websitWorderwidwdidMap = new HashMap<>();
|
|
Map<String,List<WebsitWorker>> websitWorderwidwdidMap = new HashMap<>();
|
|
Map<String,List<WebsitWorker>> addBxWorkers = new HashMap<>();
|
|
Map<String,List<WebsitWorker>> addBxWorkers = new HashMap<>();
|
|
- List<WebsitWorker> websitWorkers = new ArrayList<>();
|
|
|
|
|
|
+ List<WebsitWorker> upWebsitWorkers = new ArrayList<>();
|
|
|
|
|
|
- // 提取品牌信息
|
|
|
|
|
|
+ // 提取品牌信息
|
|
Brand brand = baseService.getBrand();
|
|
Brand brand = baseService.getBrand();
|
|
if (brand == null) {
|
|
if (brand == null) {
|
|
return;
|
|
return;
|
|
@@ -124,9 +123,13 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
}
|
|
}
|
|
|
|
|
|
// 提取待同步获取保险信息的师傅数据
|
|
// 提取待同步获取保险信息的师傅数据
|
|
- /*List<WebsitWorker> websitWorkers = websitWorkerService.lambdaQuery()
|
|
|
|
- .eq(WebsitWorker::getOutZjlj,WebsitWorker::getWebsitId,WebsitWorker::getWebsitWorkerId)
|
|
|
|
- .list();*/
|
|
|
|
|
|
+ List<WebsitWorker> wwrecords = websitWorkerService.lambdaQuery()
|
|
|
|
+ .isNull(WebsitWorker::getOutZjlj)
|
|
|
|
+ .list();
|
|
|
|
+ if (CollectionUtils.isNotEmpty(wwrecords)){
|
|
|
|
+ addBxWorkers = wwrecords.stream().collect(Collectors.groupingBy(WebsitWorker::getWorkerId));
|
|
|
|
+ wwrecords.clear();
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -156,7 +159,7 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
ItfTblWangdianWxgDownload::getWxgmc,
|
|
ItfTblWangdianWxgDownload::getWxgmc,
|
|
ItfTblWangdianWxgDownload::getYddh,
|
|
ItfTblWangdianWxgDownload::getYddh,
|
|
ItfTblWangdianWxgDownload::getFlag)
|
|
ItfTblWangdianWxgDownload::getFlag)
|
|
- // .eq(ItfTblWangdianWxgDownload::getSfzen,"431003199803271316")// 测试用
|
|
|
|
|
|
+ .eq(ItfTblWangdianWxgDownload::getSfzen,"430422198107105010")// 测试用
|
|
.like(ItfTblWangdianWxgDownload::getWdno,"S%").list();
|
|
.like(ItfTblWangdianWxgDownload::getWdno,"S%").list();
|
|
|
|
|
|
// 提取现有已存在的证件信息的师傅信息(待回传同步的证件不处理)
|
|
// 提取现有已存在的证件信息的师傅信息(待回传同步的证件不处理)
|
|
@@ -206,11 +209,12 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
log.info("总部获取的工程师证件照信息wvos:{}", JSONObject.toJSONString(wvos));
|
|
log.info("总部获取的工程师证件照信息wvos:{}", JSONObject.toJSONString(wvos));
|
|
// 同步-新增证件信息
|
|
// 同步-新增证件信息
|
|
getCertInfo(wvos, addList, workerId, WorkerCertWorkerIdMaps,wxg.getWdno(),workerIdandNames,
|
|
getCertInfo(wvos, addList, workerId, WorkerCertWorkerIdMaps,wxg.getWdno(),workerIdandNames,
|
|
- workerWorkeridMap,insurecs,insurefiles, bxWorkerIdWebsitIds,websitWorderwidwdidMap, insure);
|
|
|
|
|
|
+ workerWorkeridMap,insurecs,insurefiles, bxWorkerIdWebsitIds,
|
|
|
|
+ websitWorderwidwdidMap, insure,addBxWorkers, upWebsitWorkers);
|
|
// 新增或修改(证件)
|
|
// 新增或修改(证件)
|
|
addDataCert(addList);
|
|
addDataCert(addList);
|
|
// 修改保险信息
|
|
// 修改保险信息
|
|
- addBxInfo(insurecs, insurefiles);
|
|
|
|
|
|
+ upWebsitWorker(upWebsitWorkers);
|
|
|
|
|
|
log.info("工程师证件照信息同步成功-师傅证件信息:{}", wxg.getSfzen());
|
|
log.info("工程师证件照信息同步成功-师傅证件信息:{}", wxg.getSfzen());
|
|
} else {
|
|
} else {
|
|
@@ -218,11 +222,10 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
log.info("msg:{}", response.getMsg());
|
|
log.info("msg:{}", response.getMsg());
|
|
}
|
|
}
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
- addDataCert(addList);
|
|
|
|
- upWebsitWorker(websitWorkerUp);
|
|
|
|
- addBxInfo(insurecs, insurefiles);
|
|
|
|
ex.printStackTrace();
|
|
ex.printStackTrace();
|
|
log.info("工程师证件照信息同步失败-师傅证件信息:{}", wxg.getSfzen());
|
|
log.info("工程师证件照信息同步失败-师傅证件信息:{}", wxg.getSfzen());
|
|
|
|
+ throw new Exception("工程师证件照信息同步失败");
|
|
|
|
+
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -296,7 +299,6 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
wc.clear();
|
|
wc.clear();
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
for (ItfTblWangdianWxgDownload wxg :wxgDownladRecs){
|
|
for (ItfTblWangdianWxgDownload wxg :wxgDownladRecs){
|
|
// 无效的数据不新增
|
|
// 无效的数据不新增
|
|
if (wxg.getFlag() != null){
|
|
if (wxg.getFlag() != null){
|
|
@@ -339,7 +341,7 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
// 新增或修改(证件)
|
|
// 新增或修改(证件)
|
|
addDataCert(addList);
|
|
addDataCert(addList);
|
|
// 修改保险信息
|
|
// 修改保险信息
|
|
- addBxInfo(insurecs, insurefiles);
|
|
|
|
|
|
+ addBxInfoBak(insurecs, insurefiles);
|
|
|
|
|
|
log.info("工程师证件照信息同步成功-师傅证件信息:{}", wxg.getSfzen());
|
|
log.info("工程师证件照信息同步成功-师傅证件信息:{}", wxg.getSfzen());
|
|
} else {
|
|
} else {
|
|
@@ -349,7 +351,7 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
addDataCert(addList);
|
|
addDataCert(addList);
|
|
upWebsitWorker(websitWorkerUp);
|
|
upWebsitWorker(websitWorkerUp);
|
|
- addBxInfo(insurecs, insurefiles);
|
|
|
|
|
|
+ addBxInfoBak(insurecs, insurefiles);
|
|
ex.printStackTrace();
|
|
ex.printStackTrace();
|
|
log.info("工程师证件照信息同步失败-师傅证件信息:{}", wxg.getSfzen());
|
|
log.info("工程师证件照信息同步失败-师傅证件信息:{}", wxg.getSfzen());
|
|
}
|
|
}
|
|
@@ -358,7 +360,7 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
}
|
|
}
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
- public void addBxInfo(List<InsureWorkerCommercial> insurecs, List<InsureWorkerCommercialFile> insurefiles) {
|
|
|
|
|
|
+ public void addBxInfoBak(List<InsureWorkerCommercial> insurecs, List<InsureWorkerCommercialFile> insurefiles) {
|
|
if (insurecs.size()>0){
|
|
if (insurecs.size()>0){
|
|
insureWorkerCommercialService.saveOrUpdateBatch(insurecs);
|
|
insureWorkerCommercialService.saveOrUpdateBatch(insurecs);
|
|
insurecs.clear();
|
|
insurecs.clear();
|
|
@@ -369,7 +371,6 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
@Override
|
|
@Override
|
|
public void extractedCert() {
|
|
public void extractedCert() {
|
|
List<WorkerCert> workerCertList = new ArrayList<>();
|
|
List<WorkerCert> workerCertList = new ArrayList<>();
|
|
@@ -1186,7 +1187,9 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
List<InsureWorkerCommercial> insurecs,
|
|
List<InsureWorkerCommercial> insurecs,
|
|
List<InsureWorkerCommercialFile> insurefiles,
|
|
List<InsureWorkerCommercialFile> insurefiles,
|
|
List<String> bxWorkerIdWebsitIds,
|
|
List<String> bxWorkerIdWebsitIds,
|
|
- Map<String,List<WebsitWorker>> websitWorderwidwdidMap, Insure insure) throws ParseException {
|
|
|
|
|
|
+ Map<String,List<WebsitWorker>> websitWorderwidwdidMap,
|
|
|
|
+ Insure insure,Map<String,List<WebsitWorker>> addBxWorkers,
|
|
|
|
+ List<WebsitWorker> upWebsitWorkers) throws ParseException {
|
|
// 同步-新增证件信息
|
|
// 同步-新增证件信息
|
|
for (ZJInfo zj: wvos.getZjInfoList()){
|
|
for (ZJInfo zj: wvos.getZjInfoList()){
|
|
// 保除证
|
|
// 保除证
|
|
@@ -1194,11 +1197,15 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
if (insure == null){
|
|
if (insure == null){
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
- if (produceBXInfo(workerId, wdno, workerWorkeridMap, insurecs, insurefiles,
|
|
|
|
- bxWorkerIdWebsitIds, zj,websitWorderwidwdidMap, insure)){
|
|
|
|
|
|
+ // 师傅所在网点数据未下载保险证件时才可以下载
|
|
|
|
+ if (!addBxWorkers.containsKey(workerId)){
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ // 获取保险证件数据
|
|
|
|
+ produceBXInfo(workerId, wdno, workerWorkeridMap, insurecs, insurefiles,
|
|
|
|
+ bxWorkerIdWebsitIds, zj,websitWorderwidwdidMap, insure, addBxWorkers, upWebsitWorkers);
|
|
|
|
+
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1277,17 +1284,19 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
- private boolean produceBXInfo(String workerId, String wdno, Map<String, List<Worker>> workerWorkeridMap,
|
|
|
|
|
|
+ private void produceBXInfo(String workerId, String wdno, Map<String, List<Worker>> workerWorkeridMap,
|
|
List<InsureWorkerCommercial> insurecs, List<InsureWorkerCommercialFile> insurefiles,
|
|
List<InsureWorkerCommercial> insurecs, List<InsureWorkerCommercialFile> insurefiles,
|
|
List<String> bxWorkerIdWebsitIds, ZJInfo zj,
|
|
List<String> bxWorkerIdWebsitIds, ZJInfo zj,
|
|
- Map<String, List<WebsitWorker>> websitWorderwidwdidMap, Insure insure) throws ParseException {
|
|
|
|
|
|
+ Map<String, List<WebsitWorker>> websitWorderwidwdidMap,
|
|
|
|
+ Insure insure, Map<String,List<WebsitWorker>> addBxWorkers,
|
|
|
|
+ List<WebsitWorker> upWebsitWorkers) throws ParseException {
|
|
// 提取商户售后网点对应的平台售后网点信息 存在一对多的关系 无对应关系退出不处理
|
|
// 提取商户售后网点对应的平台售后网点信息 存在一对多的关系 无对应关系退出不处理
|
|
List<WebsitOrderSign> wos = publicService.shShwdToptshwdByBrandWebsitNo(wdno);
|
|
List<WebsitOrderSign> wos = publicService.shShwdToptshwdByBrandWebsitNo(wdno);
|
|
if (CollectionUtils.isEmpty(wos)){
|
|
if (CollectionUtils.isEmpty(wos)){
|
|
- return true;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
- // 生成商用保险对像 网点多对1时每个网点放一份
|
|
|
|
|
|
+ // 生成保险对像 网点多对1时每个网点放一份
|
|
for (WebsitOrderSign item : wos){
|
|
for (WebsitOrderSign item : wos){
|
|
// 防重
|
|
// 防重
|
|
if (bxWorkerIdWebsitIds.contains(workerId +item.getWebsitId())){
|
|
if (bxWorkerIdWebsitIds.contains(workerId +item.getWebsitId())){
|
|
@@ -1300,19 +1309,55 @@ public class GLPPWXGQueryAddServiceImpl implements GLPPWXGQueryAddService {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
|
|
|
|
- // 生成商用保险对像
|
|
|
|
- InsureWorkerCommercial a = getInsureWorkerCommercial(workerId, workerWorkeridMap, insurecs, zj, item,websitWorkerId, insure);
|
|
|
|
-
|
|
|
|
- // 生成附件对像
|
|
|
|
- getInsureWorkerCommercialFile(insurefiles, zj, a);
|
|
|
|
|
|
+ // 提取师傅所在网点数据进行修改
|
|
|
|
+ for (WebsitWorker w:addBxWorkers.get(workerId)){
|
|
|
|
+ // 网点对应
|
|
|
|
+ if (w.getWebsitId().equals(item.getWebsitId())){
|
|
|
|
+ // 获取师傅保险信息
|
|
|
|
+ getWebsitWorkerInfo(zj, upWebsitWorkers, w);
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
bxWorkerIdWebsitIds.add(workerId +item.getWebsitId());
|
|
bxWorkerIdWebsitIds.add(workerId +item.getWebsitId());
|
|
}
|
|
}
|
|
- return false;
|
|
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private void getWebsitWorkerInfo(ZJInfo zj, List<WebsitWorker> upWebsitWorkers, WebsitWorker w) throws ParseException {
|
|
|
|
+ WebsitWorker upwwinfo = new WebsitWorker();
|
|
|
|
+ MyBeanUtils.copyProperties(w,upwwinfo);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ // 有效期
|
|
|
|
+ if (StringUtils.isNotEmpty(zj.getZjyxq())){
|
|
|
|
+ upwwinfo.setInsureStartTime(publicService.subOneYear(baseService.utcToDateStr(zj.getZjyxq())));
|
|
|
|
+ upwwinfo.setGmbxyxq(baseService.utcToDateStr(zj.getZjyxq()));
|
|
|
|
+ }
|
|
|
|
+ upwwinfo.setInsureStatus(2);
|
|
|
|
+ // 保险公司及编号
|
|
|
|
+ if (zj.getZjbh().contains("/")){
|
|
|
|
+ List<String> result = Arrays.asList(zj.getZjbh().split("/"));
|
|
|
|
+ upwwinfo.setSafeCompany(result.get(0));
|
|
|
|
+ upwwinfo.setInsureName(result.get(0));
|
|
|
|
+ upwwinfo.setSafeNo(result.get(1));
|
|
|
|
+ } else {
|
|
|
|
+ upwwinfo.setSafeNo(zj.getZjbh());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if (StringUtils.isEmpty(zj.getZjlj())){
|
|
|
|
+ upwwinfo.setOutZjljProcess(-1);
|
|
|
|
+ } else {
|
|
|
|
+ upwwinfo.setOutZjlj(zj.getZjlj());
|
|
|
|
+ upwwinfo.setOutZjljProcess(0);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ upWebsitWorkers.add(upwwinfo);
|
|
}
|
|
}
|
|
|
|
|
|
@Nullable
|
|
@Nullable
|
|
- private String checkWebsitWorker(String workerId, Map<String, List<WebsitWorker>> websitWorderwidwdidMap, WebsitOrderSign item) {
|
|
|
|
|
|
+ private String checkWebsitWorker(String workerId, Map<String, List<WebsitWorker>> websitWorderwidwdidMap,
|
|
|
|
+ WebsitOrderSign item) {
|
|
String websitWorkerId="";
|
|
String websitWorkerId="";
|
|
if (!websitWorderwidwdidMap.containsKey(workerId)){
|
|
if (!websitWorderwidwdidMap.containsKey(workerId)){
|
|
return null;
|
|
return null;
|