‘linchangsheng’ 3 달 전
부모
커밋
6222335988

+ 5 - 1
mall-server-api/src/main/java/com/gree/mall/manager/commonmapper/workorder/OrderBaseCMapper.java

@@ -31,7 +31,11 @@ public interface OrderBaseCMapper {
      * @param adminWebsitIds
      * @return
      */
-    public OrderBaseCountBean countOrderBaseIndex(@Param("companyWechatId") String companyWechatId, @Param("adminWebsitIds") List<String> adminWebsitIds,@Param("adminUserType") Integer adminUserType);
+    public OrderBaseCountBean countOrderBaseIndex(@Param("companyWechatId") String companyWechatId,
+                                                  @Param("adminWebsitIds") List<String> adminWebsitIds,
+                                                  @Param("adminUserType") Integer adminUserType,
+                                                  @Param("startTime") String startTime,
+                                                  @Param("endTime") String endTime);
 
     /**
      * 工单状态统计2

+ 4 - 2
mall-server-api/src/main/java/com/gree/mall/manager/controller/workerorder/OrderBaseCountController.java

@@ -9,6 +9,7 @@ import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
@@ -26,8 +27,9 @@ public class OrderBaseCountController {
 
     @PostMapping("/status/count")
     @ApiOperation(value = "按工单状态统计")
-    public ResponseHelper<OrderBaseCountBean> countStatus() {
-        OrderBaseCountBean orderBaseCountBean = orderBaseCountLogic.baseCountBean();
+    public ResponseHelper<OrderBaseCountBean> countStatus(   @RequestParam(required = false) String startTime,
+                                                             @RequestParam(required = false) String endTime) {
+        OrderBaseCountBean orderBaseCountBean = orderBaseCountLogic.baseCountBean(startTime,endTime);
         return ResponseHelper.success(orderBaseCountBean);
     }
 

+ 1 - 1
mall-server-api/src/main/java/com/gree/mall/manager/logic/workorder/ChangeOrderLogic.java

@@ -477,7 +477,7 @@ public class ChangeOrderLogic {
                     websitDispatch.setOrderSmallTypeText(orderSmallType.getOrderSmallTypeText());
                     websitDispatch.setOrderSmallId(orderSmallType.getId());
 
-                    websitDispatch.setCategoryId(goodsCategory.getCategoryId());
+                    websitDispatch.setCategoryId(goodsCategory.getCategoryNumber());
                     websitDispatch.setCategoryName(goodsCategory.getName());
                     websitDispatch.setSaleTypeId(sales.getDictCode());
                     websitDispatch.setSaleTypeName(sales.getDictValue());

+ 10 - 2
mall-server-api/src/main/java/com/gree/mall/manager/logic/workorder/OrderBaseCountLogic.java

@@ -31,6 +31,7 @@ import org.springframework.data.elasticsearch.core.SearchHits;
 import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
 import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
 import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -50,10 +51,12 @@ public class OrderBaseCountLogic {
      * 首页工单统计
      * @return
      */
-    public OrderBaseCountBean baseCountBean(){
+    public OrderBaseCountBean baseCountBean( String startTime,
+                                             String endTime){
         AdminUserCom adminUser = commonLogic.getAdminUser();
         OrderBaseCountBean orderBaseCountBean = orderBaseCMapper
-                .countOrderBaseIndex(adminUser.getCompanyWechatId(), adminUser.getAdminWebsitIds(),adminUser.getType());
+                .countOrderBaseIndex(adminUser.getCompanyWechatId(), adminUser.getAdminWebsitIds(),adminUser.getType()
+                ,startTime,endTime);
 
 /*
         List<PgOrderBase> pgOrderBaseList = pgOrderBaseService.lambdaQuery()
@@ -116,6 +119,11 @@ public class OrderBaseCountLogic {
                                 .should(QueryBuilders.termsQuery("websit_id", adminUser.getAdminWebsitIds()))
                 );
             }
+
+            queryBuilder.must(QueryBuilders.rangeQuery("create_time")
+                    .gte(startTime)
+                    .lte(endTime)
+            );
             //新增工单
             NativeSearchQuery searchQuery = new NativeSearchQueryBuilder()
                     .withQuery(queryBuilder)

+ 6 - 1
mall-server-api/src/main/java/com/gree/mall/manager/logic/workorder/OrderBaseLogic.java

@@ -2162,10 +2162,15 @@ public class OrderBaseLogic {
         }
         if (adminWebsit == null) {
 
+            GoodsCategory goodsCategory = goodsCategoryService.lambdaQuery()
+                    .eq(GoodsCategory::getCategoryNumber, orderAddBeanDTO.getOrderProducts().get(0).getMainId())
+                    .last("limit 1")
+                    .one();
+
             WebsitDispatch websitDispatch = websitDispatchService.lambdaQuery()
                     .eq(WebsitDispatch::getStreetCode, pgOrderBase.getStreetId())
                     .eq(WebsitDispatch::getSaleTypeId, pgOrderBase.getSaleType())
-                    .eq(WebsitDispatch::getCategoryId, orderAddBeanDTO.getOrderProducts().get(0).getMainId())
+                    .eq(WebsitDispatch::getCategoryId, goodsCategory.getCategoryId())
                     .eq(WebsitDispatch::getOrderSmallId, orderAddBeanDTO.getOrderSmallType())
                     .last("limit 1").one();
 

+ 3 - 0
mall-server-api/src/main/resources/mapper/workorder/OrderBaseCMapper.xml

@@ -246,6 +246,9 @@
             count(if(appraise_status in ('C'),1,null)) as 'cp'
         from pg_order_base a
         where 1=1
+        <if test="startTime != null and startTime !=''">
+            and a.create_time between #{startTime} and #{endTime}
+        </if>
         <if test="companyWechatId != null and companyWechatId !=''">
             and a.company_wechat_id = #{companyWechatId}
         </if>