Bläddra i källkod

销售订单获取详情

Min 11 månader sedan
förälder
incheckning
ab6d3eb2a3

+ 12 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/SalesOrderController.java

@@ -62,6 +62,18 @@ public class SalesOrderController {
         return salesOrderService.getList(inchargerId,orderType,orderName,orderCode,customId,businessName,receivedStatus,startDate,endDate,productCode,pageIndex,pageSize,isDelete);
     }
 
+    /**
+    * @Description:根据id获取详情数据
+    * @Param: [id]
+    * @return: com.management.platform.util.HttpRespMsg
+    * @Author: yurk
+    * @Date: 2024/5/31
+    */
+    @RequestMapping("/getDetail")
+    public HttpRespMsg getDetail(Integer id){
+        return salesOrderService.getDetail(id);
+    }
+
 
     /**
      * 新增编辑订单数据

+ 2 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/SalesOrderService.java

@@ -30,4 +30,6 @@ public interface SalesOrderService extends IService<SalesOrder> {
     HttpRespMsg businessOpportunityStage(Integer queryType, Integer dateType);
 
     HttpRespMsg productWithOrder(Integer id);
+
+    HttpRespMsg getDetail(Integer id);
 }

+ 41 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/SalesOrderServiceImpl.java

@@ -218,6 +218,47 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
         return msg;
     }
 
+
+    @Override
+    public HttpRespMsg getDetail(Integer id) {
+        HttpRespMsg msg=new HttpRespMsg();
+        User user = userMapper.selectById(request.getHeader("token"));
+        SalesOrder salesOrder = salesOrderMapper.selectById(id);
+        if(salesOrder==null){
+            msg.setError("数据异常");
+            return msg;
+        }
+        List<OrderProductDetail> orderProductDetails = orderProductDetailService.list(new LambdaQueryWrapper<OrderProductDetail>().eq(OrderProductDetail::getOrderId,salesOrder.getId()));
+        List<User> userList = userMapper.selectList(new LambdaQueryWrapper<User>().eq(User::getCompanyId, user.getCompanyId()));
+        List<SysDict> sysDictOfOrderType = sysDictMapper.selectList(new LambdaQueryWrapper<SysDict>().eq(SysDict::getCompanyId, user.getCompanyId()).eq(SysDict::getCode, "OrderType"));
+        List<Custom> customList = customService.list(new LambdaQueryWrapper<Custom>().eq(Custom::getCompanyId, user.getCompanyId()));
+        List<BusinessOpportunity> businessOpportunityList = businessOpportunityService.list(new LambdaQueryWrapper<BusinessOpportunity>().eq(BusinessOpportunity::getCompanyId, user.getCompanyId()));
+        Optional<User> item = userList.stream().filter(u -> u.getId().equals(salesOrder.getCreatorId())).findFirst();
+        if(item.isPresent()){
+            salesOrder.setCreatorName(item.get().getName());
+        }
+        Optional<User> incharger = userList.stream().filter(u -> u.getId().equals(salesOrder.getInchargerId())).findFirst();
+        if(incharger.isPresent()){
+            salesOrder.setInchargerName(incharger.get().getName());
+        }
+        Optional<SysDict> type = sysDictOfOrderType.stream().filter(s -> s.getId().equals(salesOrder.getType())).findFirst();
+        if(type.isPresent()){
+            salesOrder.setTypeName(type.get().getName());
+        }
+        Optional<Custom> custom = customList.stream().filter(c -> c.getId().equals(salesOrder.getCustomId())).findFirst();
+        if(custom.isPresent()){
+            salesOrder.setCustomName(custom.get().getCustomName());
+        }
+        Optional<BusinessOpportunity> businessOpportunity = businessOpportunityList.stream().filter(b -> salesOrder.getBusinessOpportunityId() != null && b.getId().equals(salesOrder.getBusinessOpportunityId())).findFirst();
+        if(businessOpportunity.isPresent()){
+            salesOrder.setBusinessOpportunityName(businessOpportunity.get().getName());
+        }
+        List<OrderProductDetail> details = orderProductDetails.stream().filter(o -> o.getOrderId().equals(salesOrder.getId())).collect(Collectors.toList());
+        salesOrder.setOrderProductDetailList(details);
+        msg.setData(salesOrder);
+        return msg;
+    }
+
     @Override
     public HttpRespMsg importData(MultipartFile multipartFile) {
         HttpRespMsg msg=new HttpRespMsg();