|
@@ -92,6 +92,8 @@ public class DetailDownloadServiceImpl implements DetailDownloadService {
|
|
|
OrderProductService orderProductService;
|
|
|
@Resource
|
|
|
ItfTblWxjsXxyyJyktDownloadService itfTblWxjsXxyyJyktDownloadService;
|
|
|
+ @Resource
|
|
|
+ OrderRepairDetailReasonService orderRepairDetailReasonService;
|
|
|
|
|
|
|
|
|
|
|
@@ -367,7 +369,7 @@ public class DetailDownloadServiceImpl implements DetailDownloadService {
|
|
|
List<OrderDetailFile> fs = orderDetailFileService.lambdaQuery()
|
|
|
.select(OrderDetailFile::getFjguid,OrderDetailFile::getFileType)
|
|
|
.eq(OrderDetailFile::getOrderBaseId,order.getId()).list();
|
|
|
- if (CollectionUtils.isEmpty(fs)){
|
|
|
+ if (CollectionUtils.isNotEmpty(fs)){
|
|
|
fs.stream().forEach(event->{
|
|
|
fsFjguid.add(event.getFjguid());
|
|
|
});
|
|
@@ -394,87 +396,80 @@ public class DetailDownloadServiceImpl implements DetailDownloadService {
|
|
|
upSynStatusAzJyktFJ(downloadTaskNo);
|
|
|
}
|
|
|
|
|
|
- // pgguid = order_repair_detail.brand_wxjsguid TL_SynDataFrom_tbl_wxjs_jykt_child
|
|
|
+ // pgguid = order_repair_detail.brand_wxjsguid
|
|
|
+ // TL_SynDataFrom_tbl_wxjs_jykt_child
|
|
|
+ // 四个方法放在一起处理 有一个处理完就要修改对应的task_list
|
|
|
public void processwxjsJyktFj(String downloadTaskNo, String pgguid) {
|
|
|
- List<OrderDetailFile> odfs = new ArrayList<>();
|
|
|
- List<OrderInstallDetail> oids = new ArrayList<>();
|
|
|
- Map<String,List<OrderInstallDetail>> oidsMap = new HashMap<>();
|
|
|
- List<String> fsFjguid = new ArrayList<>();
|
|
|
+ Boolean flag = Boolean.FALSE;
|
|
|
+ List<OrderRepairDetailReason> ordrs = new ArrayList<>();
|
|
|
+ List<OrderRepairDetail> irds = new ArrayList<>();
|
|
|
+ Map<String,List<OrderRepairDetail>> irdsMap = new HashMap<>();
|
|
|
+ List<OrderRepairDetailReason> ordrsOld = new ArrayList<>();
|
|
|
+ List<String> xxyyguid = new ArrayList<>();
|
|
|
if (1==1){
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- // 维修现象下载记录 itf_tbl_wxjs_xxyy_jykt_download ->OrderRepairDetailReason
|
|
|
- List<ItfTblWxjsXxyyJyktDownload> wxxxs = itfTblWxjsXxyyJyktDownloadService.lambdaQuery()
|
|
|
- .eq(ItfTblWxjsXxyyJyktDownload::getDownloadTaskNo,downloadTaskNo).list();
|
|
|
- if (CollectionUtils.isNotEmpty(wxxxs)){
|
|
|
-
|
|
|
- }
|
|
|
|
|
|
|
|
|
+ // 维修现象下载同步 无数据时不处理同时修改同步状态
|
|
|
+ // TL_SynDataFrom_tbl_wxjs_xxyy_jykt
|
|
|
+ // itf_tbl_wxjs_xxyy_jykt_download ->OrderRepairDetailReason
|
|
|
+ List<ItfTblWxjsXxyyJyktDownload> wxxxs = itfTblWxjsXxyyJyktDownloadService.lambdaQuery()
|
|
|
+ .eq(ItfTblWxjsXxyyJyktDownload::getDownloadTaskNo,downloadTaskNo).list();
|
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(wxxxs)){
|
|
|
+ irds = orderRepairDetailService.lambdaQuery()
|
|
|
+ .eq(OrderRepairDetail::getBrandWxjsguid,pgguid).list();
|
|
|
+ // 无数据不处理
|
|
|
+ if (CollectionUtils.isEmpty(irds)) {
|
|
|
+ flag = Boolean.TRUE;
|
|
|
+ }
|
|
|
|
|
|
+ irdsMap = irds.stream().collect(Collectors.groupingBy(OrderRepairDetail::getBrandWxjsguid));
|
|
|
|
|
|
+ ordrsOld = orderRepairDetailReasonService.lambdaQuery()
|
|
|
+ .eq(OrderRepairDetailReason::getOrderBaseId,irds.get(0).getOrderBaseId()).list();
|
|
|
|
|
|
+ if (CollectionUtils.isEmpty(ordrsOld)){
|
|
|
+ ordrsOld.stream().forEach(event->{
|
|
|
+ xxyyguid.add(event.getXxyyguid());
|
|
|
+ });
|
|
|
+ }
|
|
|
|
|
|
+ // 生成采集附件明细数据 暂时忽略更新,无新增
|
|
|
|
|
|
+ for (ItfTblWxjsXxyyJyktDownload item:wxxxs){
|
|
|
+ OrderRepairDetailReason n = new OrderRepairDetailReason();
|
|
|
+ n.setId(IdWorker.getIdStr());
|
|
|
+ ordrs.add(n);
|
|
|
+ }
|
|
|
|
|
|
+ if (ordrs.size()>0) {
|
|
|
+ orderRepairDetailReasonService.saveBatch(ordrs);
|
|
|
+ ordrs.clear();
|
|
|
+ }
|
|
|
+ // 修改同步状态
|
|
|
+ upSynStatusWxjsXxyyJykt(downloadTaskNo);
|
|
|
|
|
|
+ }
|
|
|
|
|
|
- // 提取附件数据
|
|
|
- List<ItfTblAzWgmxJyktFjDownload> jykts = itfTblAzWgmxJyktFjDownloadService.lambdaQuery()
|
|
|
- .eq(ItfTblAzWgmxJyktFjDownload::getDownloadTaskNo, downloadTaskNo)
|
|
|
- .eq(ItfTblAzWgmxJyktFjDownload::getSynStatus,0).list();
|
|
|
+ if (flag) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
- // 提取采集数据
|
|
|
- oids = orderInstallDetailService.lambdaQuery()
|
|
|
- .select(OrderInstallDetail::getPgwcmxid,OrderInstallDetail::getId)
|
|
|
- .eq(OrderInstallDetail::getPgwcmxid,pgguid).list();
|
|
|
- oidsMap = oids.stream().collect(Collectors.groupingBy(OrderInstallDetail::getPgwcmxid));
|
|
|
|
|
|
- if (!CollectionUtils.isEmpty(jykts)){
|
|
|
- // 提取工单数据
|
|
|
- OrderBase order = orderBaseService.lambdaQuery()
|
|
|
- .eq(OrderBase::getId,oids.get(0).getOrderBaseId())
|
|
|
- .last("limit 1").one();
|
|
|
- if (order!=null){
|
|
|
- // 提取现有的采集附件数据
|
|
|
- List<OrderDetailFile> fs = orderDetailFileService.lambdaQuery()
|
|
|
- .select(OrderDetailFile::getFjguid,OrderDetailFile::getFileType)
|
|
|
- .eq(OrderDetailFile::getOrderBaseId,order.getId()).list();
|
|
|
- if (CollectionUtils.isEmpty(fs)){
|
|
|
- fs.stream().forEach(event->{
|
|
|
- fsFjguid.add(event.getFjguid());
|
|
|
- });
|
|
|
- }
|
|
|
|
|
|
- for (ItfTblAzWgmxJyktFjDownload item :jykts){
|
|
|
- // 采集明细表未同步不处理
|
|
|
- if (!oidsMap.containsKey(item.getPgwcmxid())){
|
|
|
- odfs.clear();
|
|
|
- break;
|
|
|
- }
|
|
|
- // 生成采集附件明细数据 暂时忽略更新,无新增
|
|
|
- if (!fsFjguid.contains(item.getFjguid())){
|
|
|
- getItfTblAzWgmxJyktFj(odfs,oidsMap.get(item.getPgwcmxid()).get(0), order, item);
|
|
|
- }
|
|
|
- }
|
|
|
- if (odfs.size()>0) {
|
|
|
- orderDetailFileService.saveBatch(odfs);
|
|
|
- odfs.clear();
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
// 修改同步状态
|
|
|
- upSynStatusAzJyktFJ(downloadTaskNo);
|
|
|
+ OrderPar req = new OrderPar();
|
|
|
+ req.setOrderNo(downloadTaskNo);
|
|
|
+ installDownloadTaskListMapper.updateSynStatus(req);
|
|
|
}
|
|
|
|
|
|
// 维修工单这里放的为pgid
|
|
|
public void processWxjsJykt(String downloadTaskNo, String pgguid) {
|
|
|
List<OrderRepairDetail> ords = new ArrayList<>();
|
|
|
List<ItfGreeToFaDownloadTaskList> its = new ArrayList<>();
|
|
|
- List<OrderInstallDetail> oids = new ArrayList<>();
|
|
|
- Map<String,List<OrderInstallDetail>> oidsMap = new HashMap<>();
|
|
|
List<String> wxjsguid = new ArrayList<>();
|
|
|
|
|
|
// 提取维修结算表下载记录
|
|
@@ -1329,9 +1324,19 @@ public class DetailDownloadServiceImpl implements DetailDownloadService {
|
|
|
.eq("download_task_no", downloadTaskNo)
|
|
|
.eq("syn_status",0);
|
|
|
itfTblAzWgmxJyktFjDownloadService.update(up,upWrapper);
|
|
|
+
|
|
|
installDownloadTaskListMapper.updateSynStatus(req);
|
|
|
}
|
|
|
|
|
|
+ public void upSynStatusWxjsXxyyJykt(String downloadTaskNo) {
|
|
|
+ ItfTblWxjsXxyyJyktDownload up = new ItfTblWxjsXxyyJyktDownload();
|
|
|
+ up.setSynStatus(1);
|
|
|
+ QueryWrapper upWrapper = new QueryWrapper<ItfTblWxjsXxyyJyktDownload>()
|
|
|
+ .eq("download_task_no", downloadTaskNo)
|
|
|
+ .eq("syn_status",0);
|
|
|
+ itfTblWxjsXxyyJyktDownloadService.update(up,upWrapper);
|
|
|
+ }
|
|
|
+
|
|
|
public void upSynStatusAzSyktFJ(String downloadTaskNo) {
|
|
|
ItfTblAzWgmxSyktFjDownload up = new ItfTblAzWgmxSyktFjDownload();
|
|
|
up.setSynStatus(1);
|