yaozhixue il y a 1 an
Parent
commit
b94cab6219

+ 3 - 0
src/main/java/com/zfire/jiasm/syncdata/service/PublicService.java

@@ -47,6 +47,9 @@ public interface PublicService {
     Date stepMonth(Date sourceDate, int month);
     // 修改数据上传任务表同步状态
     void updateUploadTaskListStatus(String orderNo, Long synReqId,Integer synStatus,Integer uploadTaskType);
+
+    void updateUploadTaskListInfo(Long synReqId,String msg);
+
     // 修改数据上传任务表同步状态
     void updateUploadTaskLisError(OutJiasmToGreeUploadTaskList ojtutl, String msg);
 

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

@@ -186,6 +186,7 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                 ojtutls = outJiasmToGreeUploadTaskListService.lambdaQuery()
                         .eq(OutJiasmToGreeUploadTaskList::getSynStatus,0)
                         .eq(OutJiasmToGreeUploadTaskList::getUploadTaskType,uploadTaskType)
+                        .eq(OutJiasmToGreeUploadTaskList::getSynReqId,928)// 测试使用
                         .lt(OutJiasmToGreeUploadTaskList::getSynTimes,1000)
                         .orderByAsc(OutJiasmToGreeUploadTaskList::getSynReqId).list();
                 for (OutJiasmToGreeUploadTaskList ojtutl:ojtutls){
@@ -266,7 +267,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
 
         // 提取对应的子信息
         OrderInformation oi = orderInformationService.lambdaQuery()
-                .eq(OrderInformation::getId, ojtutl.getId()).one();
+                .eq(OrderInformation::getId, ojtutl.getId())
+                .last("limit 1")
+                .one();
         if (oi!=null){
             // 更新 pgguid,pgid 因该表无这两个字段,从工单主表中取即可
             // 修改内部序
@@ -277,7 +280,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
             orderPar.setId(ojtutl.getId());
             ItfTblAzAssignXzydUpload rec = orderInformationNewMapper.getOrderInformation(orderPar);
             OrderBase orderBase = orderBaseService.lambdaQuery()
-                    .eq(OrderBase::getId,rec.getWorkerOrderNo()).one();
+                    .eq(OrderBase::getId,rec.getWorkerOrderNo())
+                    .last("limit 1")
+                    .one();
             rec.setPgguid(orderBase.getPgguid());
             rec.setPgid(orderBase.getPgid());
 
@@ -320,10 +325,14 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
     @Transactional(rollbackFor = Exception.class)
     public void generateAzMx(Brand brand, OutJiasmToGreeUploadTaskList ojtutl) {
         OrderBase orderBase = orderBaseService.lambdaQuery()
-                .eq(OrderBase::getId, ojtutl.getOrderNo()).one();
+                .eq(OrderBase::getId, ojtutl.getOrderNo())
+                .last("limit 1")
+                .one();
         // 提取工单机型数据
         OrderProduct op = orderProductService.lambdaQuery()
-                .eq(OrderProduct::getId, ojtutl.getId()).one();
+                .eq(OrderProduct::getId, ojtutl.getId())
+                .last("limit 1")
+                .one();
         if (op==null){
             throw new RemoteServiceException("order_product找不到记录id="+ojtutl.getId());
         }
@@ -381,7 +390,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
     @Transactional(rollbackFor = Exception.class)
     public  void getAppointment(OutJiasmToGreeUploadTaskList ojtutl) {
         OrderBase orderBase = orderBaseService.lambdaQuery()
-                .eq(OrderBase::getId, ojtutl.getOrderNo()).one();
+                .eq(OrderBase::getId, ojtutl.getOrderNo())
+                .last("limit 1")
+                .one();
         if (orderBase !=null ){
             ReAppointment request = new ReAppointment();
             request.setOrderNo(ojtutl.getOrderNo());
@@ -415,7 +426,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
     @Transactional(rollbackFor = Exception.class)
     public void getFkmx(Brand brand, OutJiasmToGreeUploadTaskList ojtutl) {
         OrderBase orderBase = orderBaseService.lambdaQuery()
-                .eq(OrderBase::getId, ojtutl.getOrderNo()).one();
+                .eq(OrderBase::getId, ojtutl.getOrderNo())
+                .last("limit 1")
+                .one();
         if (orderBase !=null ){
             // 修改fikd
             OperatingLog request = new OperatingLog();
@@ -474,7 +487,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
     @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()).one();
+                .eq(OrderBase::getId, ojtutl.getId())
+                .last("limit 1")
+                .one();
 
         if (orderBase !=null ){
             // 若工单被删除不再同步 不写生成数据
@@ -527,7 +542,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
             ItfTblAzAssignFeeUpload feeUpload = new ItfTblAzAssignFeeUpload();
             // 从工单扩展表提取辅材信息
             OrderInstall orderInstall =orderInstallService.lambdaQuery()
-                    .eq(OrderInstall::getOrderBaseId, orderBase.getId()).one();
+                    .eq(OrderInstall::getOrderBaseId, orderBase.getId())
+                    .last("limit 1")
+                    .one();
             if (orderInstall !=null){
                 feeUpload.setWorkerOrderNo(orderBase.getId());
                 feeUpload.setId(orderBase.getPgguid());
@@ -570,7 +587,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                         orderBase.getDispatchStatus().equals(GDAppointStatusEnum.INSTALL_STATUS_A4_1.getCode()))) {
             // 查看是否已发送 工单号,只能插入一次
             ItfMessagehuifangentity message = itfMessagehuifangentityService.lambdaQuery()
-                    .eq(ItfMessagehuifangentity::getOrderBaseId, orderBase.getId()).one();
+                    .eq(ItfMessagehuifangentity::getOrderBaseId, orderBase.getId())
+                    .last("limit 1")
+                    .one();
 
             // 自建工单 这里可放在定时任务中执行,代码是不会走这里的
             if (!orderBase.getUploadFlag()){
@@ -695,7 +714,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
             // 采集明细表中取pgwcmxid
             OrderInstallDetail orderInstallDetail = orderInstallDetailService.lambdaQuery()
                     .eq(OrderInstallDetail::getOrderBaseId,code.getOrderBaseId())
-                    .eq(OrderInstallDetail::getId,code.getOrderDetailId()).one();
+                    .eq(OrderInstallDetail::getId,code.getOrderDetailId())
+                    .last("limit 1")
+                    .one();
             if (orderInstallDetail == null || StringUtils.isEmpty(orderInstallDetail.getPgwcmxid())){
                 continue;
             } else {
@@ -899,7 +920,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
                 // 提取获取采集明细表数据中获取pgwcmxid(生成格力总部-采集明细序号)
                 OrderInstallDetail detailone = orderInstallDetailService.lambdaQuery()
                         .eq(OrderInstallDetail::getOrderBaseId,file.getOrderBaseId())
-                        .eq(OrderInstallDetail::getId,file.getOrderDetailId()).one();
+                        .eq(OrderInstallDetail::getId,file.getOrderDetailId())
+                        .last("limit 1")
+                        .one();
 
                 // 获取完工明细数据(采集附件表) 家用、商用、其他
                 getwgmxData(mainName, file, detailone);
@@ -1157,7 +1180,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
 
         ItfTblWangdianWxgDownload wxg = itfTblWangdianWxgDownloadService.lambdaQuery()
                 .eq(ItfTblWangdianWxgDownload::getSfzen,mxup.getAzrenid())
-                .eq(ItfTblWangdianWxgDownload::getWdno,websitSH.getWdId()).one();
+                .eq(ItfTblWangdianWxgDownload::getWdno,websitSH.getWdId())
+                .last("limit 1")
+                .one();
 
         if (wxg !=null){
             mxup.setAzrenid(wxg.getWxgid());
@@ -1218,7 +1243,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
 
         ItfTblWangdianWxgDownload wxg = itfTblWangdianWxgDownloadService.lambdaQuery()
                 .eq(ItfTblWangdianWxgDownload::getSfzen,mxup.getAzrenid())
-                .eq(ItfTblWangdianWxgDownload::getWdno,websitSH.getWdId()).one();
+                .eq(ItfTblWangdianWxgDownload::getWdno,websitSH.getWdId())
+                .last("limit 1")
+                .one();
 
         if (wxg !=null){
             mxup.setAzrenid(wxg.getWxgid());
@@ -1280,7 +1307,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
 
         ItfTblWangdianWxgDownload wxg = itfTblWangdianWxgDownloadService.lambdaQuery()
                 .eq(ItfTblWangdianWxgDownload::getSfzen,mxup.getAzrenid())
-                .eq(ItfTblWangdianWxgDownload::getWdno,websitSH.getWdId()).one();
+                .eq(ItfTblWangdianWxgDownload::getWdno,websitSH.getWdId())
+                .last("limit 1")
+                .one();
 
         if (wxg !=null){
             mxup.setAzrenid(wxg.getWxgid());
@@ -1380,7 +1409,9 @@ public class InstallProduceDataUploadServiceImpl implements InstallProduceDataUp
         // 所属区域处理
         BrandWebsit bb = brandWebsitService.lambdaQuery()
                 .eq(BrandWebsit::getGroupCompanyId,brand.getBrandId())
-                .eq(BrandWebsit::getBrandWebsitNumber,lcls.getJspgwdno()).one();
+                .eq(BrandWebsit::getBrandWebsitNumber,lcls.getJspgwdno())
+                .last("limit 1")
+                .one();
         lcls.setSsqy("其他");
         if (bb!=null){
             if (bb.getBelongCompany().equals("X2300000") || bb.getBelongCompany().equals("S9219807")) {

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

@@ -144,7 +144,7 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
                     String mainName = CategoryRefmap.get(orderBase.getMainId()).get(0).getRefDictName();
 
                     // 数据生成
-                    if (! installDtailJS(cjOrWg, brand, orderBase, lcls, detail, taskno, pgwcmxid, mainName)){
+                    if (! installDtailJS(cjOrWg, brand, orderBase, lcls, detail, taskno, pgwcmxid, mainName,ojtutl.getSynReqId())){
                         return Boolean.FALSE;
                     }
 
@@ -424,7 +424,9 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
         lcls.setCjwdxtbh(websitSH.getBrandSysWebsitNumber());
     }
 
-    private Boolean installDtailJS(String cjOrWg, Brand brand, OrderBase orderBase, ItfTblAzAssignLcLsUpload lcls, OrderInstallDetail detail, String taskno, String pgwcmxid, String mainName) {
+    private Boolean installDtailJS(String cjOrWg, Brand brand, OrderBase orderBase, ItfTblAzAssignLcLsUpload lcls,
+                                   OrderInstallDetail detail, String taskno, String pgwcmxid, String mainName,
+                                   Long synReqId) {
         // 获取完工采集明细数据 (家用空调、商用空调、其他) TL_fa_order_install_detail_js
         if (!getCJMXDataCj(cjOrWg, brand, orderBase, lcls, detail, pgwcmxid, mainName, taskno)){
             return Boolean.FALSE;
@@ -438,14 +440,15 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
         }
 
         // 处理条码明细
-        if (!getDetailCodeCj(orderBase, detail, mainName, taskno)){
+        if (!getDetailCodeCj(orderBase, detail, mainName, taskno, synReqId)){
             return Boolean.FALSE;
         }
         return Boolean.TRUE;
     }
 
 
-    private Boolean getDetailCodeCj(OrderBase orderBase, OrderInstallDetail detail, String mainName, String taskno) {
+    private Boolean getDetailCodeCj(OrderBase orderBase, OrderInstallDetail detail,
+                                    String mainName, String taskno, Long synReqId) {
         // 获取条码采集明细id
         InstalDetailCode instalDetailCode = new InstalDetailCode();
         instalDetailCode.setOrderNo(detail.getOrderBaseId());
@@ -454,15 +457,10 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
         // 采集附近件表可能已上传条码图片,如上传这里不再上传直接赋值即可
 
 
-
-
-
-
-
         // 处理条码明细
         for (OrderInstallDetailCode code :codes){
-
             if (StringUtils.isEmpty(code.getPath())){
+                publicService.updateUploadTaskListInfo(synReqId,"order_install_detail_code.path未准备上传被忽略");
                 return Boolean.FALSE;
             }
             // 条码上传
@@ -914,12 +912,13 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
 
     private void upOutId(OrderInstallDetail detail) {
         List<OrderInstallDetail> upList = new ArrayList<>();
+        List<OrderInstallDetailCode> upCodeList = new ArrayList<>();
         List<OrderInstallDetail> detaillist = orderInstallDetailService.lambdaQuery()
                 .eq(OrderInstallDetail::getOrderBaseId, detail.getOrderBaseId())
                 .eq(OrderInstallDetail::getOutId,0).list();
         // 找出最大的序 默认值为0
         int outId=0;
-        if (detaillist!=null && detaillist.size()>0){
+        if (CollectionUtils.isNotEmpty(detaillist)){
             for (OrderInstallDetail item:detaillist){
                 if (outId<item.getOutId()){
                     outId = item.getOutId();
@@ -928,10 +927,8 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
             for (OrderInstallDetail ite:detaillist){
                 if (ite.getOutId() == 0){
                     outId++;
-                    OrderInstallDetail n = new OrderInstallDetail();
-                    n.setId(ite.getId());
-                    n.setOutId(outId);
-                    upList.add(n);
+                    ite.setOutId(outId);
+                    upList.add(ite);
                 }
             }
             // 修改序
@@ -940,7 +937,6 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
                 upList.clear();
             }
             detaillist.clear();
-
         }
 
         // 采集条码码 outid统一修改
@@ -948,7 +944,7 @@ public class OrderBaseInstallCjOrWgServiceImpl implements orderBaseInstallCjOrWg
         List<OrderInstallDetailCode> codelist = orderInstallDetailCodeService.lambdaQuery()
                 .eq(OrderInstallDetailCode::getOrderBaseId, detail.getOrderBaseId())
                 .eq(OrderInstallDetailCode::getOutId,0).list();
-        if (codelist!=null && codelist.size()>0){
+        if (CollectionUtils.isNotEmpty(codelist)){
             InstalDetailCode codep = new InstalDetailCode();
             codep.setOrderNo(detail.getOrderBaseId());
             codeOrderInstallDetailMapper.updateCodeOutId(codep);

+ 9 - 0
src/main/java/com/zfire/jiasm/syncdata/service/impl/PublicServiceImpl.java

@@ -459,6 +459,15 @@ public class PublicServiceImpl implements PublicService {
     }
 
     @Override
+    public void updateUploadTaskListInfo(Long synReqId,String msg){
+        OutJiasmToGreeUploadTaskList upoutgultl = new OutJiasmToGreeUploadTaskList();
+        upoutgultl.setSynReqId(synReqId);
+        upoutgultl.setSynTime(new Date());
+        upoutgultl.setSynErrMsg(msg);
+        outJiasmToGreeUploadTaskListService.updateById(upoutgultl);
+    }
+
+    @Override
     public void updateUploadTaskLisError(OutJiasmToGreeUploadTaskList ojtutl, String msg){
         ojtutl.setSynTime(new Date());
         ojtutl.setSynErrMsg("other");