Explorar o código

采购单异常明细列表,采购单筛选等

1018653686@qq.com hai 1 ano
pai
achega
ad903812e8

+ 25 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/controller/jd/JdOrderController.java

@@ -8,6 +8,7 @@ import com.fjhx.victoriatourist.entity.jd.dto.JdOrderDto;
 import com.fjhx.victoriatourist.entity.jd.dto.JdOrderSelectDto;
 import com.fjhx.victoriatourist.entity.jd.po.JdOrder;
 import com.fjhx.victoriatourist.entity.jd.po.JdOrderDetails;
+import com.fjhx.victoriatourist.entity.jd.vo.JdOrderDetailsVo;
 import com.fjhx.victoriatourist.entity.jd.vo.JdOrderVo;
 import com.fjhx.victoriatourist.entity.logistics.vo.LogisticsInfosVo;
 import com.fjhx.victoriatourist.entity.stock.dto.StockTransferDto;
@@ -147,4 +148,28 @@ public class JdOrderController {
     public void tellBackOrer(@RequestBody JdOrderDto jdOrderDto){
         jdOrderService.tellBackOrer(jdOrderDto);
     }
+    
+    /**
+     * 保存备注
+     * @author hj
+     * @date 2024/1/15 10:07
+     * @return null
+     */
+    @PostMapping("/saveRemark")
+    public void saveRemark(@RequestBody JdOrderDto jdOrderDto){
+        if (ObjectUtil.isNull(jdOrderDto.getId())){
+            throw new RuntimeException("参数错误");
+        }
+        jdOrderService.saveRemark(jdOrderDto);
+    }
+
+    /**
+     * 采购单明细异常列表
+     * @author hj
+     * @date 2024/1/15 10:09
+     */
+    @PostMapping("/jdOrderDetailExList")
+    public Page<JdOrderDetailsVo> jdOrderDetailExList(@RequestBody JdOrderSelectDto dto){
+        return jdOrderDetailsService.jdOrderDetailExList(dto);
+    }
 }

+ 4 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/entity/jd/dto/JdOrderDto.java

@@ -64,4 +64,8 @@ public class JdOrderDto extends JdOrder implements SetCustomizeAreaId {
      * 预约号
      */
     private String reservationCode;
+    /**
+     * 是否需要出库
+     */
+    private boolean isOut;
 }

+ 8 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/entity/jd/dto/JdOrderSelectDto.java

@@ -41,4 +41,12 @@ public class JdOrderSelectDto extends BaseSelectDto {
 
     /**回告状态**/
     private Integer confirmState;
+
+    private String hasEx;
+
+    private String hasRemark;
+
+    private String handleStatus;
+
+    private String exHandle;
 }

+ 4 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/JdOrderDetailsService.java

@@ -1,5 +1,7 @@
 package com.fjhx.victoriatourist.service.jd;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.victoriatourist.entity.jd.dto.JdOrderSelectDto;
 import com.fjhx.victoriatourist.entity.jd.po.JdOrderDetails;
 import com.fjhx.victoriatourist.entity.jd.vo.JdOrderDetailsVo;
 import com.ruoyi.common.core.service.BaseService;
@@ -18,4 +20,6 @@ import java.util.List;
 public interface JdOrderDetailsService extends BaseService<JdOrderDetails> {
 
     List<JdOrderDetailsVo> findListByJdOrderId(Long id);
+
+    Page<JdOrderDetailsVo> jdOrderDetailExList(JdOrderSelectDto dto);
 }

+ 2 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/JdOrderService.java

@@ -67,4 +67,6 @@ public interface JdOrderService extends BaseService<JdOrder> {
     void tellBackOrer(JdOrderDto jdOrderDto);
 
     boolean validJdOrderId(Long jdOrderId);
+
+    void saveRemark(JdOrderDto jdOrderDto);
 }

+ 21 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/impl/JdOrderDetailsServiceImpl.java

@@ -2,7 +2,11 @@ package com.fjhx.victoriatourist.service.jd.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.victoriatourist.entity.jd.dto.JdOrderSelectDto;
 import com.fjhx.victoriatourist.entity.jd.po.JdOrderDetails;
 import com.fjhx.victoriatourist.entity.jd.vo.JdOrderDetailsVo;
 import com.fjhx.victoriatourist.mapper.jd.JdOrderDetailsMapper;
@@ -28,4 +32,21 @@ public class JdOrderDetailsServiceImpl extends ServiceImpl<JdOrderDetailsMapper,
         List<JdOrderDetails> list = lambdaQuery().eq(JdOrderDetails::getJdOrderId, jdOrderId).list();
         return BeanUtil.copyToList(list, JdOrderDetailsVo.class);
     }
+
+    @Override
+    public Page<JdOrderDetailsVo> jdOrderDetailExList(JdOrderSelectDto dto) {
+        Page<JdOrderDetails> page = lambdaQuery()
+                .eq(JdOrderDetails::getHasEx, "1")
+                .like(ObjectUtil.isNotNull(dto.getOrderId()), JdOrderDetails::getOrderId, dto.getOrderId())
+                .eq(StrUtil.isNotBlank(dto.getHandleStatus()), JdOrderDetails::getHandleStatus, dto.getHandleStatus())
+                .eq(StrUtil.isNotBlank(dto.getExHandle()), JdOrderDetails::getExHandle, dto.getExHandle())
+                .page(new Page<>(dto.getPageNum(), dto.getPageSize()));
+
+        List<JdOrderDetails> records = page.getRecords();
+        List<JdOrderDetailsVo> voList = BeanUtil.copyToList(records, JdOrderDetailsVo.class);
+        Page<JdOrderDetailsVo> voPage = BeanUtil.copyProperties(page, Page.class);
+        voPage.setRecords(voList);
+
+        return voPage;
+    }
 }

+ 43 - 25
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/impl/JdOrderServiceImpl.java

@@ -134,6 +134,16 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
         wrapper.eq(ObjectUtil.isNotNull(dto.getIsCanConfirm()),"jo.is_can_confirm",dto.getIsCanConfirm());
         wrapper.eq("jo", JdOrder::getState, dto.getState());
         wrapper.eq("jo", JdOrder::getConfirmState, dto.getConfirmState());
+        //是否异常
+        wrapper.eq("jo", JdOrder::getHasEx, dto.getHasEx());
+        //是否备注
+        if(StrUtil.isNotBlank(dto.getHasRemark())) {
+            if (dto.getHasRemark().equals("1")){
+                wrapper.isNotNull("jo.remark");
+            }else {
+                wrapper.isNull("jo.remark");
+            }
+        }
 
         if (ObjectUtil.isNotEmpty(dto.getKeyword())) {
             wrapper.keyword(dto.getKeyword(),
@@ -680,31 +690,31 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
             .eq(JdOrder::getId,jdOrderDto.getId()).update();
 
         JdOrder jdOrder = getById(jdOrderDto.getId());
-        //插入到库存调整记录
-        DynamicDataSourceContextHolder.push(SourceConstant.WMS);
-        StockWait stockWait = new StockWait();
-        stockWait.setType(2);//待出库
-        stockWait.setBusinessType(StockWaitType.JD_ORDER_OUT.getDetailType());
-        stockWait.setBusinessId(jdOrder.getId());
-        stockWait.setBusinessCode(StrUtil.toString(jdOrder.getOrderId()));
-        stockWait.setStatus(0);
-        stockWaitService.save(stockWait);
-
-        List<StockWaitDetails> stockWaitDetailsList = new ArrayList<>();
-        List<JdOrderDetailsVo> jdOrderDetailsList = jdOrderDetailsService.findListByJdOrderId(jdOrderDto.getId());
-
-        for (JdOrderDetailsVo jdOrderDetailsVo : jdOrderDetailsList) {
-            //创建待出库明细
-            StockWaitDetails stockWaitDetails = new StockWaitDetails();
-            stockWaitDetails.setStockWaitId(stockWait.getId());
-            stockWaitDetails.setBusinessDetailsId(jdOrderDetailsVo.getId());
-            stockWaitDetails.setProductId(jdOrderDetailsVo.getProductId());
-            stockWaitDetails.setQuantity(new BigDecimal(jdOrderDetailsVo.getConfirmNum()));
-            stockWaitDetails.setReceiptQuantity(new BigDecimal(BigInteger.ZERO));
-            stockWaitDetailsList.add(stockWaitDetails);
+        if (jdOrderDto.isOut()){
+            //插入到库存调整记录
+            DynamicDataSourceContextHolder.push(SourceConstant.WMS);
+            StockWait stockWait = new StockWait();
+            stockWait.setType(2);//待出库
+            stockWait.setBusinessType(StockWaitType.JD_ORDER_OUT.getDetailType());
+            stockWait.setBusinessId(jdOrder.getId());
+            stockWait.setBusinessCode(StrUtil.toString(jdOrder.getOrderId()));
+            stockWait.setStatus(0);
+            stockWaitService.save(stockWait);
+            List<StockWaitDetails> stockWaitDetailsList = new ArrayList<>();
+            List<JdOrderDetailsVo> jdOrderDetailsList = jdOrderDetailsService.findListByJdOrderId(jdOrderDto.getId());
+
+            for (JdOrderDetailsVo jdOrderDetailsVo : jdOrderDetailsList) {
+                //创建待出库明细
+                StockWaitDetails stockWaitDetails = new StockWaitDetails();
+                stockWaitDetails.setStockWaitId(stockWait.getId());
+                stockWaitDetails.setBusinessDetailsId(jdOrderDetailsVo.getId());
+                stockWaitDetails.setProductId(jdOrderDetailsVo.getProductId());
+                stockWaitDetails.setQuantity(new BigDecimal(jdOrderDetailsVo.getConfirmNum()));
+                stockWaitDetails.setReceiptQuantity(new BigDecimal(BigInteger.ZERO));
+                stockWaitDetailsList.add(stockWaitDetails);
+            }
+            stockWaitDetailsService.saveBatch(stockWaitDetailsList);
         }
-        stockWaitDetailsService.saveBatch(stockWaitDetailsList);
-
         DynamicDataSourceContextHolder.poll();
 
     }
@@ -738,7 +748,7 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
         tellBackOrderVO.setDeliveryTime(jdOrderDto.getDeliveryTime());
         List<TellBackOrderVO.BackInfo> backInfos = BeanUtil.copyToList(jdOrderDto.getJdOrderDetailsList(), TellBackOrderVO.BackInfo.class);
         tellBackOrderVO.setBackInfo(backInfos);
-        jdApiService.tellBackOrer(tellBackOrderVO);
+//        jdApiService.tellBackOrer(tellBackOrderVO);
         //修改订单状态
         lambdaUpdate()
                 .set(JdOrder::getBusinessStatus, 2)
@@ -763,4 +773,12 @@ public class JdOrderServiceImpl extends ServiceImpl<JdOrderMapper, JdOrder> impl
         }
         return false;
     }
+
+    @Override
+    public void saveRemark(JdOrderDto jdOrderDto) {
+        lambdaUpdate()
+                .set(JdOrder::getRemark, jdOrderDto.getRemark())
+                .eq(JdOrder::getId,jdOrderDto.getId())
+                .update();
+    }
 }

+ 3 - 1
hx-victoriatourist/src/main/resources/mapper/jd/JdOrderMapper.xml

@@ -54,7 +54,9 @@
             jo.storage_time,
             jo.tc_flag,
             jo.tc_flag_name,
-            jo.book_time
+            jo.book_time,
+            jo.hasEx,
+            jo.remark
         from jd_order jo
             <!--LEFT JOIN jd_order_details jod ON jod.jd_order_id = jo.id
             LEFT JOIN bytesailing_item.product_info pi ON jod.product_id = pi.id