yaozhixue 2 years ago
parent
commit
c3722a206e

+ 64 - 16
src/main/java/com/zfire/jiasm/syncdata/service/impl/InstallProduceDataUploadServiceImpl.java

@@ -2,6 +2,7 @@ package com.zfire.jiasm.syncdata.service.impl;
 
 
 
 
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.zfire.jiasm.syncdata.base.BaseService;
 import com.zfire.jiasm.syncdata.base.BaseService;
@@ -200,11 +201,8 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                             // 22 - TL_PrePareSynDataby_fa_order_install_test
                             // 22 - TL_PrePareSynDataby_fa_order_install_test
                             // 221 - TL_PrePareSynDataby_az_assign_cj
                             // 221 - TL_PrePareSynDataby_az_assign_cj
                             // 222 - TL_PrePareSynDataby_az_assign_wg
                             // 222 - TL_PrePareSynDataby_az_assign_wg
-
                             if (uploadTaskType==22){
                             if (uploadTaskType==22){
-                                // 采集表与采集条码表ID超范围 - 采集表及采集条码明细表中的outid统一修改
-                                orderBaseInstallCjOrWgService.upOutId(ojtutl.getId());
-                                if (!orderBaseInstall(brand, ojtutl, CategoryRefmap)) {
+                                if (!orderBaseInstallProc(brand, ojtutl, CategoryRefmap)) {
                                     continue;
                                     continue;
                                 }
                                 }
                             } else if (uploadTaskType==221){
                             } else if (uploadTaskType==221){
@@ -490,12 +488,12 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
         return resultData;
         return resultData;
     }
     }
 
 
-    @Transactional(rollbackFor = Exception.class)
-    public boolean orderBaseInstall(Brand brand, OutJiasmToGreeUploadTaskList ojtutl, Map<String, List<SysDictRef>> CategoryRefmap) {
+    public boolean orderBaseInstallProc(Brand brand, OutJiasmToGreeUploadTaskList ojtutl, Map<String, List<SysDictRef>> CategoryRefmap) {
         OrderBase orderBase = orderBaseService.lambdaQuery()
         OrderBase orderBase = orderBaseService.lambdaQuery()
                 .eq(OrderBase::getId, ojtutl.getId())
                 .eq(OrderBase::getId, ojtutl.getId())
                 .last("limit 1")
                 .last("limit 1")
                 .one();
                 .one();
+
         if (orderBase !=null ){
         if (orderBase !=null ){
             // 若工单被删除不再同步 不写生成数据
             // 若工单被删除不再同步 不写生成数据
 
 
@@ -504,6 +502,46 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                 return Boolean.FALSE;
                 return Boolean.FALSE;
             }
             }
 
 
+            // 采集表与采集条码表ID超范围 - 采集表及采集条码明细表中的outid统一修改
+            orderBaseInstallCjOrWgService.upOutId(ojtutl.getId());
+            // 采集表中的pgguid 统一改成工单基础表的pgguid
+            upInstallDetailPgguid(orderBase);
+
+            // 修改采集明细的序 pgwcmxid 生成格力总部-采集明细序号
+            upPgwcmxid(ojtutl);
+
+        }
+
+        orderBaseInstall(brand, ojtutl, CategoryRefmap,orderBase);
+
+        return Boolean.TRUE;
+    }
+
+    private void upPgwcmxid(OutJiasmToGreeUploadTaskList ojtutl) {
+        List<OrderInstallDetail> upList = new ArrayList<>();
+        List<OrderInstallDetail> detaillist = orderInstallDetailService.lambdaQuery()
+                .eq(OrderInstallDetail::getOrderBaseId, ojtutl.getId())
+                .list();
+        if (CollectionUtils.isNotEmpty(detaillist)){
+            for (OrderInstallDetail item:detaillist){
+                if (StringUtils.isEmpty(item.getPgwcmxid())){
+                    item.setPgwcmxid(IdWorker.getIdStr());
+                    upList.add(item);
+                }
+            }
+            // 修改序
+            if (upList.size()>0){
+                orderInstallDetailService.updateBatchById(upList);
+                upList.clear();
+            }
+        }
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    public boolean orderBaseInstall(Brand brand, OutJiasmToGreeUploadTaskList ojtutl,
+                                    Map<String, List<SysDictRef>> CategoryRefmap, OrderBase orderBase) {
+        if (orderBase !=null ){
+
             // 安装工单产品信息,操作日志,完工明细,完工明细附件 以主表的pgguid统一修改
             // 安装工单产品信息,操作日志,完工明细,完工明细附件 以主表的pgguid统一修改
             // 生成待同步的工单主表数据
             // 生成待同步的工单主表数据
             ItfTblAzAssignLcLsUpload lcls = getItfTblAzAssignLcLsUpload(brand, ojtutl, orderBase);
             ItfTblAzAssignLcLsUpload lcls = getItfTblAzAssignLcLsUpload(brand, ojtutl, orderBase);
@@ -527,13 +565,15 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                 return Boolean.FALSE;
                 return Boolean.FALSE;
             }
             }
         }
         }
-
         // 修改数据上传任务表中的状态   这里固定值 22
         // 修改数据上传任务表中的状态   这里固定值 22
         publicService.updateUploadTaskListStatus(ojtutl.getOrderNo(),ojtutl.getSynReqId(),1,22);
         publicService.updateUploadTaskListStatus(ojtutl.getOrderNo(),ojtutl.getSynReqId(),1,22);
 
 
         return Boolean.TRUE;
         return Boolean.TRUE;
     }
     }
 
 
+
+
+
     private Boolean getFeeUpload(OrderBase orderBase) {
     private Boolean getFeeUpload(OrderBase orderBase) {
         // 根据辅材订单支付表存在支付时生成安装费用数据
         // 根据辅材订单支付表存在支付时生成安装费用数据
         List<OrderPayOutlayItem> pitems = orderPayOutlayItemService.lambdaQuery()
         List<OrderPayOutlayItem> pitems = orderPayOutlayItemService.lambdaQuery()
@@ -675,7 +715,7 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                     }
                     }
 
 
                     // 获取完工采集明细数据 (家用空调、商用空调、其他)
                     // 获取完工采集明细数据 (家用空调、商用空调、其他)
-                    getCJMXData(brand, CategoryRefmap, orderBase, lcls, detail,mainName);
+                    getCJMXData(brand, orderBase, lcls, detail,mainName);
 
 
                     // 获取采集附件数据 (家用、商用、其他)
                     // 获取采集附件数据 (家用、商用、其他)
                     getcjfjdata(orderBase, detail, mainName);
                     getcjfjdata(orderBase, detail, mainName);
@@ -788,9 +828,10 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
     }
     }
 
 
     @Nullable
     @Nullable
-    private void getCJMXData(Brand brand, Map<String, List<SysDictRef>> CategoryRefmap, OrderBase orderBase,
-                             ItfTblAzAssignLcLsUpload lcls, OrderInstallDetail detail,String mainName) {
-        // 修改采集明细的序 pgwcmxid 生成格力总部-采集明细序号
+    private void getCJMXData(Brand brand, OrderBase orderBase, ItfTblAzAssignLcLsUpload lcls,
+                             OrderInstallDetail detail,String mainName) {
+
+        /*// 修改采集明细的序 pgwcmxid 生成格力总部-采集明细序号
         if (StringUtils.isEmpty(detail.getPgwcmxid())){
         if (StringUtils.isEmpty(detail.getPgwcmxid())){
             upCerrentRec(detail);
             upCerrentRec(detail);
         }
         }
@@ -798,7 +839,7 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
         upInstallDetailPgguid(orderBase);
         upInstallDetailPgguid(orderBase);
 
 
         // 采集表与采集条码表ID超范围 - 采集表及采集明细表中的outid统一修改
         // 采集表与采集条码表ID超范围 - 采集表及采集明细表中的outid统一修改
-        // upOutId(detail);
+        upOutId(detail);*/
 
 
 
 
         // 采集标志 1100:保存,1110:作废,1120:转结算
         // 采集标志 1100:保存,1110:作废,1120:转结算
@@ -1318,11 +1359,18 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
         mxup.setZjczwdxtbh(websitSH.getBrandSysWebsitNumber());
         mxup.setZjczwdxtbh(websitSH.getBrandSysWebsitNumber());
     }
     }
 
 
+
     public void upInstallDetailPgguid(OrderBase orderBase) {
     public void upInstallDetailPgguid(OrderBase orderBase) {
-        InstallDetail installDetail = new InstallDetail();
-        installDetail.setOrderNo(orderBase.getId());
-        installDetail.setPgguId(orderBase.getPgguid());
-        detailOrderInstallMapper.installUpdatePgguid(installDetail);
+        List<OrderInstallDetail> detaillist = orderInstallDetailService.lambdaQuery()
+                .eq(OrderInstallDetail::getOrderBaseId, orderBase.getId())
+                .isNull(OrderInstallDetail::getPgguid)
+                .list();
+        if (CollectionUtils.isNotEmpty(detaillist)){
+            InstallDetail installDetail = new InstallDetail();
+            installDetail.setOrderNo(orderBase.getId());
+            installDetail.setPgguId(orderBase.getPgguid());
+            detailOrderInstallMapper.installUpdatePgguid(installDetail);
+        }
     }
     }
 
 
     public void upCerrentRec(OrderInstallDetail detail) {
     public void upCerrentRec(OrderInstallDetail detail) {

+ 8 - 0
src/main/java/com/zfire/jiasm/syncdata/service/impl/OrderBaseInstallCjOrWgServiceImpl.java

@@ -948,6 +948,14 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
     }
     }
 
 
     @Override
     @Override
+    public void upInstallDetailPgguid(OrderBase orderBase) {
+        InstallDetail installDetail = new InstallDetail();
+        installDetail.setOrderNo(orderBase.getId());
+        installDetail.setPgguId(orderBase.getPgguid());
+        detailOrderInstallMapper.installUpdatePgguid(installDetail);
+    }
+
+    @Override
     public  void upOutId(String orderBaseId) {
     public  void upOutId(String orderBaseId) {
         List<OrderInstallDetail> upList = new ArrayList<>();
         List<OrderInstallDetail> upList = new ArrayList<>();
         List<OrderInstallDetail> detaillist = orderInstallDetailService.lambdaQuery()
         List<OrderInstallDetail> detaillist = orderInstallDetailService.lambdaQuery()

+ 2 - 0
src/main/java/com/zfire/jiasm/syncdata/service/orderBaseInstallCjOrWgService.java

@@ -1,6 +1,7 @@
 package com.zfire.jiasm.syncdata.service;
 package com.zfire.jiasm.syncdata.service;
 
 
 import com.zfire.jiasm.syncdata.plus.entity.Brand;
 import com.zfire.jiasm.syncdata.plus.entity.Brand;
+import com.zfire.jiasm.syncdata.plus.entity.OrderBase;
 import com.zfire.jiasm.syncdata.plus.entity.OutJiasmToGreeUploadTaskList;
 import com.zfire.jiasm.syncdata.plus.entity.OutJiasmToGreeUploadTaskList;
 import com.zfire.jiasm.syncdata.plus.entity.SysDictRef;
 import com.zfire.jiasm.syncdata.plus.entity.SysDictRef;
 
 
@@ -8,6 +9,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
 public interface orderBaseInstallCjOrWgService {
 public interface orderBaseInstallCjOrWgService {
+    void upInstallDetailPgguid(OrderBase orderBase);
     void upOutId(String orderBaseId);
     void upOutId(String orderBaseId);
     Boolean orderBaseInstallCjOrWg(String cjOrWg, Brand brand, OutJiasmToGreeUploadTaskList ojtutl,
     Boolean orderBaseInstallCjOrWg(String cjOrWg, Brand brand, OutJiasmToGreeUploadTaskList ojtutl,
                                    Map<String, List<SysDictRef>> CategoryRefmap);
                                    Map<String, List<SysDictRef>> CategoryRefmap);