yaozhixue vor 1 Jahr
Ursprung
Commit
c397338350

BIN
1690010108085022722.jpeg


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

@@ -25,6 +25,7 @@ import com.zfire.jiasm.syncdata.response.WebsitSH;
 import com.zfire.jiasm.syncdata.service.InstallProduceDataUploadService;
 import com.zfire.jiasm.syncdata.service.OrderService;
 import com.zfire.jiasm.syncdata.service.PublicService;
+import com.zfire.jiasm.syncdata.service.orderBaseInstallCjOrWgService;
 import com.zfire.jiasm.syncdata.upload.order.InstallProduceDataUpload;
 import com.zfire.jiasm.syncdata.utils.MyBeanUtils;
 import com.zfire.jiasm.syncdata.utils.RemoteServiceException;
@@ -187,7 +188,7 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                 ojtutls = outJiasmToGreeUploadTaskListService.lambdaQuery()
                         .eq(OutJiasmToGreeUploadTaskList::getSynStatus,0)
                         .eq(OutJiasmToGreeUploadTaskList::getUploadTaskType,uploadTaskType)
-                        // .eq(OutJiasmToGreeUploadTaskList::getSynReqId,21886) // 测试用
+                        // .eq(OutJiasmToGreeUploadTaskList::getSynReqId,22843) // 测试用
                         .lt(OutJiasmToGreeUploadTaskList::getSynTimes,1000)
                         .orderByAsc(OutJiasmToGreeUploadTaskList::getSynReqId).list();
                 for (OutJiasmToGreeUploadTaskList ojtutl:ojtutls){
@@ -202,20 +203,15 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                             // 221 - TL_PrePareSynDataby_az_assign_cj
                             // 222 - TL_PrePareSynDataby_az_assign_wg
                             if (uploadTaskType==22){
-                                if (!orderBaseInstallProc(brand, ojtutl, CategoryRefmap)) {
+                                if (!orderBaseInstall(brand, ojtutl, CategoryRefmap)) {
                                     continue;
                                 }
-                            } else if (uploadTaskType==221){
+                            } else if (uploadTaskType==221 || uploadTaskType==222){
                                 cjOrWg="cj";
-                                // 采集表与采集条码表ID超范围 - 采集表及采集条码明细表中的outid统一修改
-                                orderBaseInstallCjOrWgService.upOutId(ojtutl.getId());
-                                if (!orderBaseInstallCjOrWgService.orderBaseInstallCjOrWg(cjOrWg, brand, ojtutl, CategoryRefmap)) {
-                                    continue;
+                                if (uploadTaskType==222) {
+                                    cjOrWg = "wg";
                                 }
-                            } else if (uploadTaskType==222){
-                                cjOrWg="wg";
-                                // 采集表与采集条码表ID超范围 - 采集表及采集条码明细表中的outid统一修改
-                                orderBaseInstallCjOrWgService.upOutId(ojtutl.getId());
+
                                 if (!orderBaseInstallCjOrWgService.orderBaseInstallCjOrWg(cjOrWg, brand, ojtutl, CategoryRefmap)) {
                                     continue;
                                 }
@@ -488,7 +484,8 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
         return resultData;
     }
 
-    public boolean orderBaseInstallProc(Brand brand, OutJiasmToGreeUploadTaskList ojtutl, Map<String, List<SysDictRef>> CategoryRefmap) {
+    @Transactional(rollbackFor = Exception.class)
+    public boolean orderBaseInstall(Brand brand, OutJiasmToGreeUploadTaskList ojtutl, Map<String, List<SysDictRef>> CategoryRefmap) {
         OrderBase orderBase = orderBaseService.lambdaQuery()
                 .eq(OrderBase::getId, ojtutl.getId())
                 .last("limit 1")
@@ -502,46 +499,6 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                 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统一修改
             // 生成待同步的工单主表数据
             ItfTblAzAssignLcLsUpload lcls = getItfTblAzAssignLcLsUpload(brand, ojtutl, orderBase);
@@ -831,7 +788,7 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
     private void getCJMXData(Brand brand, OrderBase orderBase, ItfTblAzAssignLcLsUpload lcls,
                              OrderInstallDetail detail,String mainName) {
 
-        /*// 修改采集明细的序 pgwcmxid 生成格力总部-采集明细序号
+        // 修改采集明细的序 pgwcmxid 生成格力总部-采集明细序号
         if (StringUtils.isEmpty(detail.getPgwcmxid())){
             upCerrentRec(detail);
         }
@@ -839,7 +796,7 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
         upInstallDetailPgguid(orderBase);
 
         // 采集表与采集条码表ID超范围 - 采集表及采集明细表中的outid统一修改
-        upOutId(detail);*/
+        upOutId(detail);
 
 
         // 采集标志 1100:保存,1110:作废,1120:转结算
@@ -887,6 +844,49 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
         }
     }
 
+    private void upOutId(OrderInstallDetail detail) {
+        List<OrderInstallDetail> upList = new ArrayList<>();
+        List<OrderInstallDetail> detaillist = orderInstallDetailService.lambdaQuery()
+                .eq(OrderInstallDetail::getOrderBaseId, detail.getOrderBaseId())
+                .orderByAsc(OrderInstallDetail::getCreateTime).list();
+        // 找出最大的序 默认值为0
+        int outId=0;
+        if (detaillist!=null && detaillist.size()>0){
+            for (OrderInstallDetail item:detaillist){
+                if (outId<item.getOutId()){
+                    outId = item.getOutId();
+                }
+            }
+            for (OrderInstallDetail ite:detaillist){
+                if (ite.getOutId() == 0){
+                    outId++;
+                    OrderInstallDetail n = new OrderInstallDetail();
+                    n.setId(ite.getId());
+                    n.setOutId(outId);
+                    upList.add(n);
+                }
+            }
+            // 修改序
+            if (upList.size()>0){
+                orderInstallDetailService.updateBatchById(upList);
+                upList.clear();
+            }
+
+            detaillist.clear();
+        }
+
+        // 采集条码码 outid统一修改
+        // 采集表与采集条码表ID超范围 - 采集表及采集明细表中的outid统一修改
+        List<OrderInstallDetailCode> codelist = orderInstallDetailCodeService.lambdaQuery()
+                .eq(OrderInstallDetailCode::getOrderBaseId, detail.getOrderBaseId())
+                .eq(OrderInstallDetailCode::getOutId,0).list();
+        if (codelist!=null && codelist.size()>0){
+            InstalDetailCode codep = new InstalDetailCode();
+            codep.setOrderNo(detail.getOrderBaseId());
+            codeOrderInstallDetailMapper.updateCodeOutId(codep);
+        }
+    }
+
     // 处理附件采集数据上传
     public Boolean getcjfjdata(OrderBase orderBase, OrderInstallDetail detail, String mainName) {
         String oldFile ="";

+ 17 - 25
src/main/java/com/zfire/jiasm/syncdata/service/impl/OrderBaseInstallCjOrWgServiceImpl.java

@@ -112,8 +112,7 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public Boolean orderBaseInstallCjOrWg(String cjOrWg, Brand brand, OutJiasmToGreeUploadTaskList ojtutl,
-                                          Map<String, List<SysDictRef>> CategoryRefmap){
+    public Boolean orderBaseInstallCjOrWg(String cjOrWg, Brand brand, OutJiasmToGreeUploadTaskList ojtutl, Map<String, List<SysDictRef>> CategoryRefmap){
         OrderBase orderBase = orderBaseService.lambdaQuery()
                 .eq(OrderBase::getId, ojtutl.getId())
                 .last("limit 1")
@@ -140,11 +139,12 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
                                 ("wg".equals(cjOrWg) && detail.getIsWgSend().equals("NO")))) {
                     // 生成taskno,pgwcmxid 共用
                     String taskno = IdWorker.getIdStr();
+                    String pgwcmxid = IdWorker.getIdStr();
                     // 根据产品类别名称 生成不同的完工明细数据
                     String mainName = CategoryRefmap.get(orderBase.getMainId()).get(0).getRefDictName();
 
                     // 数据生成
-                    if (! installDtailJS(cjOrWg, brand, orderBase, lcls, detail, taskno, mainName,ojtutl.getSynReqId())){
+                    if (! installDtailJS(cjOrWg, brand, orderBase, lcls, detail, taskno, pgwcmxid, mainName,ojtutl.getSynReqId())){
                         return Boolean.FALSE;
                     }
 
@@ -425,10 +425,10 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
     }
 
     private Boolean installDtailJS(String cjOrWg, Brand brand, OrderBase orderBase, ItfTblAzAssignLcLsUpload lcls,
-                                   OrderInstallDetail detail, String taskno, String mainName,
+                                   OrderInstallDetail detail, String taskno, String pgwcmxid, String mainName,
                                    Long synReqId) {
         // 获取完工采集明细数据 (家用空调、商用空调、其他) TL_fa_order_install_detail_js
-        if (!getCJMXDataCj(cjOrWg, brand, orderBase, lcls, detail, mainName, taskno)){
+        if (!getCJMXDataCj(cjOrWg, brand, orderBase, lcls, detail, pgwcmxid, mainName, taskno)){
             return Boolean.FALSE;
         }
 
@@ -852,9 +852,13 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
     }
 
     private Boolean getCJMXDataCj(String cjOrWg, Brand brand, OrderBase orderBase, ItfTblAzAssignLcLsUpload lcls,
-                                  OrderInstallDetail item, String mainName, String taskno) {
+                                  OrderInstallDetail item, String pgwcmxid, String mainName, String taskno) {
+        if (org.apache.commons.lang3.StringUtils.isEmpty(item.getPgwcmxid())){
+            item.setPgwcmxid(pgwcmxid);
+            item.updateById();
+        }
         // 采集表与采集条码表ID超范围 - 采集表及采集条码明细表中的outid统一修改
-        // upOutId(item);
+        upOutId(item);
 
         // 采集标志 1100:保存,1110:作废,1120:转结算
         Integer cjstat = 1100;
@@ -869,8 +873,8 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
             cjstat = 1110;
         }
         // 修改首次提交时间
-        // item.setFirstTime(new Date());
-        // item.updateById();
+        item.setFirstTime(new Date());
+        item.updateById();
 
         InstallDetail request = new InstallDetail();
         request.setOrderNo(item.getOrderBaseId());
@@ -947,19 +951,10 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
         return itfTblazwgmxqitaService.save(ta);
     }
 
-    @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) {
+    private void upOutId(OrderInstallDetail detail) {
         List<OrderInstallDetail> upList = new ArrayList<>();
         List<OrderInstallDetail> detaillist = orderInstallDetailService.lambdaQuery()
-                .eq(OrderInstallDetail::getOrderBaseId, orderBaseId)
+                .eq(OrderInstallDetail::getOrderBaseId, detail.getOrderBaseId())
                 .list();
         // 找出最大的序 默认值为0
         int outId=0;
@@ -973,9 +968,6 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
                 if (ite.getOutId() == 0){
                     outId++;
                     ite.setOutId(outId);
-                    // 修改首次提交时间
-                    ite.setFirstTime(new Date());
-                    ite.setPgwcmxid(IdWorker.getIdStr());
                     upList.add(ite);
                 }
             }
@@ -990,11 +982,11 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
         // 采集条码码 outid统一修改
         // 采集表与采集条码表ID超范围 - 采集表及采集明细表中的outid统一修改
         List<OrderInstallDetailCode> codelist = orderInstallDetailCodeService.lambdaQuery()
-                .eq(OrderInstallDetailCode::getOrderBaseId, orderBaseId)
+                .eq(OrderInstallDetailCode::getOrderBaseId, detail.getOrderBaseId())
                 .eq(OrderInstallDetailCode::getOutId,0).list();
         if (CollectionUtils.isNotEmpty(codelist)){
             InstalDetailCode codep = new InstalDetailCode();
-            codep.setOrderNo(orderBaseId);
+            codep.setOrderNo(detail.getOrderBaseId());
             codeOrderInstallDetailMapper.updateCodeOutId(codep);
         }
     }

+ 1 - 4
src/main/java/com/zfire/jiasm/syncdata/service/orderBaseInstallCjOrWgService.java

@@ -9,9 +9,6 @@ import java.util.List;
 import java.util.Map;
 
 public interface orderBaseInstallCjOrWgService {
-    void upInstallDetailPgguid(OrderBase orderBase);
-    void upOutId(String orderBaseId);
-    Boolean orderBaseInstallCjOrWg(String cjOrWg, Brand brand, OutJiasmToGreeUploadTaskList ojtutl,
-                                   Map<String, List<SysDictRef>> CategoryRefmap);
+    Boolean orderBaseInstallCjOrWg(String cjOrWg, Brand brand, OutJiasmToGreeUploadTaskList ojtutl, Map<String, List<SysDictRef>> CategoryRefmap);
 
 }

+ 1 - 1
src/main/resources/mapper/FileOrderDetailMapper.xml

@@ -3,7 +3,7 @@
 <mapper namespace="com.zfire.jiasm.syncdata.dao.mapper.FileOrderDetailMapper">
 
     <select id="getId" parameterType="com.zfire.jiasm.syncdata.parameter.InstallCJDetailFile" resultType="com.zfire.jiasm.syncdata.plus.entity.OrderDetailFile">
-        select a.id,a.file_path,a.brand_file_index,a.order_detail_id,a.order_base_id
+        select a.id,a.file_path,a.brand_file_index,a.order_detail_id,a.order_base_id,a.brand_file_path
         from order_detail_file a, order_install_detail b
         where a.order_base_id = #{request.orderNo} and b.order_base_id = #{request.orderNo}
           and a.order_detail_id = b.id