ソースを参照

添加 京东出库异常记录

yzc 2 年 前
コミット
c896310cf6

+ 6 - 0
hx-service-api/victoriatourist-api/src/main/java/com/fjhx/entity/abnormal/AbnormalDetails.java

@@ -30,6 +30,7 @@ public class AbnormalDetails extends BaseEntity {
     /**
      * 处理说明
      */
+    @TableField(value = "`explain`")
     private String explain;
 
     /**
@@ -43,6 +44,11 @@ public class AbnormalDetails extends BaseEntity {
     private Long handleUser;
 
     /**
+     * 下一个跟进用户
+     */
+    private Long nextHandleUser;
+
+    /**
      * 跟进时间
      */
     private Date handleTime;

+ 9 - 0
hx-service/victoriatourist/src/main/java/com/fjhx/service/abnormal/impl/AbnormalDetailsServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fjhx.service.abnormal.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.base.Condition;
@@ -13,10 +14,12 @@ import com.fjhx.service.abnormal.AbnormalInfoService;
 import com.fjhx.utils.Assert;
 import com.fjhx.utils.UserClientUtil;
 import com.fjhx.utils.wrapperUtil.IWrapper;
+import com.fjhx.websocket.service.WebSocketServer;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -67,6 +70,12 @@ public class AbnormalDetailsServiceImpl extends ServiceImpl<AbnormalDetailsMappe
         abnormalInfo.setHandleTime(abnormalDetailsVo.getHandleTime());
         abnormalInfoService.updateById(abnormalInfo);
 
+        //给下一个跟进人发消息通知
+        JSONObject meassage = new JSONObject();
+        meassage.put("msg","有异常需要您跟进");
+        meassage.put("abnormalInfoId",abnormalDetailsVo.getAbnormalInfoId().toString());
+        WebSocketServer.sendInfo(abnormalDetailsVo.getNextHandleUser().toString(),1,meassage);
+
         save(abnormalDetailsVo);
     }
 

+ 25 - 0
hx-service/victoriatourist/src/main/java/com/fjhx/service/order/impl/OrderDetailsServiceImpl.java

@@ -1,9 +1,11 @@
 package com.fjhx.service.order.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.constants.SystemConfigKeyConstant;
+import com.fjhx.entity.abnormal.AbnormalInfo;
 import com.fjhx.entity.logistics.LogisticsInfo;
 import com.fjhx.entity.order.OrderDetails;
 import com.fjhx.entity.order.OrderInfo;
@@ -14,6 +16,7 @@ import com.fjhx.params.order.OrderDetailsEx;
 import com.fjhx.params.stock.ChangeProduct;
 import com.fjhx.params.stock.StockChangeDto;
 import com.fjhx.params.stock.StockTransferAddDto;
+import com.fjhx.service.abnormal.AbnormalInfoService;
 import com.fjhx.service.logistics.LogisticsInfoService;
 import com.fjhx.service.order.OrderDetailsService;
 import com.fjhx.service.order.OrderInfoService;
@@ -60,6 +63,9 @@ public class OrderDetailsServiceImpl extends ServiceImpl<OrderDetailsMapper, Ord
     @Autowired
     private SystemConfigService systemConfigService;
 
+    @Autowired
+    private AbnormalInfoService abnormalInfoService;
+
     @Override
     public List<OrderDetailsEx> listByOrderSalesId(Long orderId) {
         Assert.notEmpty(orderId, "订单id不能为空");
@@ -104,6 +110,25 @@ public class OrderDetailsServiceImpl extends ServiceImpl<OrderDetailsMapper, Ord
                     return changeProduct;
                 }).collect(Collectors.toList());
 
+                //判断京东订单出库数据与接收数量是否一致
+                boolean flag = false;
+                List<IssueDto.IssueDetails> orderDetailsList = issueDto.getOrderDetailsList();
+                List<OrderDetails> list = list(q -> q.eq(OrderDetails::getOrderId, orderId));
+                for (OrderDetails orderDetails:list){
+                    IssueDto.IssueDetails issueDetails = orderDetailsList.stream().filter(i -> orderDetails.getProductId().equals(i.getProductId())).findFirst().get();
+                    if(orderDetails.getQuantity()!=issueDetails.getChangeQuantity()){
+                        flag = true;
+                    }
+                }
+                if(flag) {
+                    AbnormalInfo abnormalInfo = new AbnormalInfo();
+                    abnormalInfo.setId(IdWorker.getId());
+                    abnormalInfo.setType(20);
+                    abnormalInfo.setLinkId(orderId);
+                    abnormalInfo.setTitle("京东订单出库数据与接收数量不一致");
+                    abnormalInfoService.save(abnormalInfo);
+                }
+
                 StockTransferAddDto stockTransferAddDto = new StockTransferAddDto();
                 stockTransferAddDto.setJdOrderInfoId(orderId);
                 stockTransferAddDto.setOutWarehouseId(issueDto.getWarehouseId());

+ 18 - 0
hx-service/victoriatourist/src/main/java/com/fjhx/service/quality/impl/QualityDetailsServiceImpl.java

@@ -1,14 +1,18 @@
 package com.fjhx.service.quality.impl;
 
+import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.base.BaseIdEntity;
 import com.fjhx.constants.StatusConstant;
+import com.fjhx.entity.abnormal.AbnormalInfo;
 import com.fjhx.entity.quality.QualityDetails;
 import com.fjhx.entity.quality.QualityInfo;
 import com.fjhx.entity.stock.Stock;
 import com.fjhx.enums.stock.QualityStatusEnum;
 import com.fjhx.mapper.quality.QualityDetailsMapper;
+import com.fjhx.service.abnormal.AbnormalInfoService;
 import com.fjhx.service.quality.QualityDetailsService;
 import com.fjhx.service.quality.QualityInfoService;
 import com.fjhx.service.stock.StockService;
@@ -41,6 +45,9 @@ public class QualityDetailsServiceImpl extends ServiceImpl<QualityDetailsMapper,
     @Autowired
     private QualityInfoService qualityInfoService;
 
+    @Autowired
+    private AbnormalInfoService abnormalInfoService;
+
     @Transactional(rollbackFor = Exception.class)
     @Override
     public synchronized void edit(List<QualityDetails> qualityDetailsList) {
@@ -112,6 +119,17 @@ public class QualityDetailsServiceImpl extends ServiceImpl<QualityDetailsMapper,
                 qualityFlag = false;
             }
         }
+
+        //质检存在不合格 记录异常数据
+        if(disqualificationQuantityMap.size()>0){
+            AbnormalInfo abnormalInfo = new AbnormalInfo();
+            abnormalInfo.setId(IdWorker.getId());
+            abnormalInfo.setType(10);
+            abnormalInfo.setLinkId(qualityInfoId);
+            abnormalInfo.setTitle("质检存在不合格");
+            abnormalInfoService.save(abnormalInfo);
+        }
+
         // 修改质检未完成状态
         QualityInfo qualityInfo = new QualityInfo();
         qualityInfo.setId(qualityInfoId);

+ 16 - 0
hx-service/victoriatourist/src/main/java/com/fjhx/service/stock/impl/StockTransferServiceImpl.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.base.Condition;
 import com.fjhx.constants.StatusConstant;
+import com.fjhx.entity.abnormal.AbnormalInfo;
 import com.fjhx.entity.product.ProductInfo;
 import com.fjhx.entity.stock.StockTransfer;
 import com.fjhx.enums.stock.InTypeEnum;
@@ -13,6 +14,7 @@ import com.fjhx.mapper.stock.StockTransferMapper;
 import com.fjhx.params.stock.ChangeProduct;
 import com.fjhx.params.stock.StockChangeDto;
 import com.fjhx.params.stock.StockTransferAddDto;
+import com.fjhx.service.abnormal.AbnormalInfoService;
 import com.fjhx.service.stock.StockService;
 import com.fjhx.service.stock.StockTransferService;
 import com.fjhx.utils.Assert;
@@ -42,6 +44,9 @@ public class StockTransferServiceImpl extends ServiceImpl<StockTransferMapper, S
     @Autowired
     private StockService stockService;
 
+    @Autowired
+    private AbnormalInfoService abnormalInfoService;
+
     @Override
     public Page<Map<String, Object>> getPage(Condition condition) {
 
@@ -134,6 +139,17 @@ public class StockTransferServiceImpl extends ServiceImpl<StockTransferMapper, S
         stockChangeDto.setDefaultRemarks(stockTransfer.getRemark());
         stockChangeDto.setTypeEnum(InTypeEnum.TRANSFER);
         stockChangeDto.setChangeDetailsList(Collections.singletonList(changeProduct));
+
+        //调仓接收数量与发出数量不一致
+        if(stockTransfer.getInQuantity()!=stockTransfer.getOutQuantity()){
+            AbnormalInfo abnormalInfo = new AbnormalInfo();
+            abnormalInfo.setId(IdWorker.getId());
+            abnormalInfo.setType(30);
+            abnormalInfo.setLinkId(dto.getId());
+            abnormalInfo.setTitle("调仓接收数量与发出数量不一致");
+            abnormalInfoService.save(abnormalInfo);
+        }
+
         stockService.changeQuantity(stockChangeDto);
     }