فهرست منبع

修改派单接口的问题

jinshihui 2 روز پیش
والد
کامیت
44de6e0050

+ 4 - 1
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/MaTechnicianController.java

@@ -424,7 +424,10 @@ public class MaTechnicianController extends BaseController {
     }
 
     /**
-     * 查询技师列表
+     * 查询我的资料
+     *
+     * @param openid 微信openid
+     * @return R<MerchantProfileVO>
      */
     @GetMapping("/profile")
     @ApiOperation("查询商户端我的资料")

+ 1 - 1
nightFragrance-framework/src/main/java/com/ylx/framework/config/SecurityConfig.java

@@ -119,7 +119,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
                         ,"/technician/technician/clientLogin","/technician/technician/wait/list","/technician/technician/getServiceCategoryList"
                 ,"/technician/technician/getTechnician" ,"/technician/technician/getTechnicianInfo","/technician/technician/getTechnicianList",
                         "/technician/technician/apply","/technician/technician/resetPassword",
-                       "/customer/banner/page","/customer/service/category/**").permitAll()
+                       "/customer/banner/page","/customer/service/category/**","/technician/technician/profile").permitAll()
                 // 静态资源,可匿名访问
                 .antMatchers(HttpMethod.GET, "/", "/*.txt", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
                 .antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()

+ 3 - 3
nightFragrance-massage/src/main/java/com/ylx/home/hot/service/impl/HomeHotRecommendServiceImpl.java

@@ -9,7 +9,7 @@ import com.ylx.common.utils.DictUtils;
 import com.ylx.common.utils.DistanceUtil;
 import com.ylx.home.hot.domain.dto.HotRecommendDTO;
 import com.ylx.home.hot.domain.vo.HotRecommendVO;
-import com.ylx.home.hot.domain.vo.ProjectSalesVO;
+//import com.ylx.home.hot.domain.vo.ProjectSalesVO;
 import com.ylx.home.hot.service.HomeHotRecommendService;
 import com.ylx.massage.domain.MaTechnician;
 import com.ylx.massage.mapper.MaTechnicianMapper;
@@ -112,7 +112,7 @@ public class HomeHotRecommendServiceImpl implements HomeHotRecommendService {
 
     @Override
     public void syncAllHotRank() {
-        redisTemplate.delete(HOT_MERCHANT_RANK_KEY);
+        /*redisTemplate.delete(HOT_MERCHANT_RANK_KEY);
         List<MaTechnician> validTechList = techMapper.selectAllValidTech();
         for (MaTechnician tech : validTechList) {
             double score = tech.getNNum() != null ? tech.getNNum() : 0;
@@ -129,7 +129,7 @@ public class HomeHotRecommendServiceImpl implements HomeHotRecommendService {
             long salesCount = vo.getSalesCount() != null ? vo.getSalesCount() : 0L;
             redisTemplate.opsForZSet().add(HOT_PROJECT_RANK_KEY, vo.getId().toString(), salesCount);
         }
-        log.info("热门排行ZSet全量同步完成,商户数量:{}, 项目数量:{}", validTechList.size(), allProjectSales.size());
+        log.info("热门排行ZSet全量同步完成,商户数量:{}, 项目数量:{}", validTechList.size(), allProjectSales.size());*/
     }
 
     /**

+ 0 - 6
nightFragrance-massage/src/main/java/com/ylx/order/domain/dto/AdminOrderDispatchDTO.java

@@ -32,10 +32,4 @@ public class AdminOrderDispatchDTO {
      */
     @ApiModelProperty("查询半径,单位米;为空时默认10000米")
     private BigDecimal radiusMeters;
-
-    /**
-     * 派单备注。
-     */
-    @ApiModelProperty("派单备注")
-    private String remark;
 }

+ 31 - 5
nightFragrance-massage/src/main/java/com/ylx/order/mapper/AdminOrderMapper.java

@@ -45,6 +45,13 @@ public interface AdminOrderMapper extends BaseMapper<TOrder> {
 
     List<AdminOrderDispatchMerchantVO> selectDispatchMerchantCandidates(@Param("order") AdminOrderDispatchOrderVO order, @Param("query") AdminOrderDispatchMerchantQueryDTO query);
 
+    /**
+     *
+     * @param order
+     * @param merchantId 商户ID
+     * @param radiusMeters 查询半径,单位米;为空时默认 10000 米。
+     * @return AdminOrderDispatchMerchantVO
+     */
     AdminOrderDispatchMerchantVO selectDispatchMerchantById(@Param("order") AdminOrderDispatchOrderVO order,
                                                             @Param("merchantId") Integer merchantId,
                                                             @Param("radiusMeters") java.math.BigDecimal radiusMeters);
@@ -56,14 +63,33 @@ public interface AdminOrderMapper extends BaseMapper<TOrder> {
      */
     int countCurrentDispatchByOrderId(@Param("orderId") Long orderId);
 
+    /**
+     * 插入订单派单记录
+     *
+     * @param dispatch
+     * @return int 插入结果
+     */
     int insertOrderDispatch(OrderDispatch dispatch);
 
-    int updateOrderDispatch(@Param("orderId") Long orderId,
-                            @Param("merchant") AdminOrderDispatchMerchantVO merchant,
+    /**
+     * 更新订单派单状态
+     * @param orderId
+     * @param merchant
+     * @param statusBefore
+     * @param statusAfter
+     * @return int 更新结果
+     */
+    int updateOrderDispatch(@Param("orderId") Long orderId, @Param("merchant") AdminOrderDispatchMerchantVO merchant,
                             @Param("statusBefore") Integer statusBefore,
                             @Param("statusAfter") Integer statusAfter);
 
-    int insertOrderStatusFlow(@Param("orderId") Long orderId,
-                              @Param("status") Integer status,
-                              @Param("operator") String operator);
+    /**
+     * 插入订单状态流转记录
+     *
+     * @param orderId
+     * @param status
+     * @param operator
+     * @return int 插入结果
+     */
+    int insertOrderStatusFlow(@Param("orderId") Long orderId, @Param("status") Integer status, @Param("operator") String operator);
 }

+ 6 - 0
nightFragrance-massage/src/main/java/com/ylx/order/service/AdminOrderService.java

@@ -29,5 +29,11 @@ public interface AdminOrderService {
 
     List<AdminOrderDispatchMerchantVO> listDispatchMerchants(Long id, AdminOrderDispatchMerchantQueryDTO dto);
 
+    /**
+     * 派单
+     *
+     * @param id 订单ID
+     * @param dto
+     */
     void dispatch(Long id, AdminOrderDispatchDTO dto);
 }

+ 13 - 1
nightFragrance-massage/src/main/java/com/ylx/order/service/impl/AdminOrderServiceImpl.java

@@ -205,6 +205,7 @@ public class AdminOrderServiceImpl implements AdminOrderService {
         validatePendingDispatchOrder(order);
         validateDispatchOrderLocation(order);
 
+        // 处理派单半径,默认10000米
         BigDecimal radiusMeters = normalizeDispatchRadius(dto.getRadiusMeters());
         AdminOrderDispatchMerchantVO merchant = adminOrderMapper.selectDispatchMerchantById(order, dto.getMerchantId(), radiusMeters);
         if (merchant == null) {
@@ -257,6 +258,11 @@ public class AdminOrderServiceImpl implements AdminOrderService {
         }
     }
 
+    /**
+     * 验证待派单订单的下单坐标是否为空
+     *
+     * @param order
+     */
     private void validateDispatchOrderLocation(AdminOrderDispatchOrderVO order) {
         if (order.getUserLatitude() == null || order.getUserLongitude() == null) {
             throw new ServiceException("订单下单坐标不能为空");
@@ -298,6 +304,13 @@ public class AdminOrderServiceImpl implements AdminOrderService {
         return radiusMeters;
     }
 
+    /**
+     * 构建订单派单记录
+     * @param order
+     * @param merchant
+     * @param dto
+     * @return OrderDispatch
+     */
     private OrderDispatch buildOrderDispatch(AdminOrderDispatchOrderVO order, AdminOrderDispatchMerchantVO merchant, AdminOrderDispatchDTO dto) {
         LocalDateTime now = LocalDateTime.now();
         String operator = getCurrentOperator();
@@ -325,7 +338,6 @@ public class AdminOrderServiceImpl implements AdminOrderService {
         dispatch.setOrderStatusBefore(ORDER_STATUS_PENDING_DISPATCH);
         dispatch.setOrderStatusAfter(ORDER_STATUS_PENDING_ACCEPT);
         dispatch.setDispatchTime(now);
-        dispatch.setRemark(StringUtils.hasText(dto.getRemark()) ? dto.getRemark().trim() : null);
         dispatch.setOperatorName(operator);
         dispatch.setCreateBy(operator);
         dispatch.setCreateTime(now);

+ 1 - 2
nightFragrance-massage/src/main/java/com/ylx/project/mapper/ProjectMapper.java

@@ -2,7 +2,6 @@ package com.ylx.project.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ylx.home.hot.domain.vo.ProjectSalesVO;
 import com.ylx.massage.domain.dto.OptionDTO;
 import com.ylx.massage.domain.dto.ServiceOptionDTO;
 import com.ylx.massage.domain.vo.ProductOptionVO;
@@ -35,5 +34,5 @@ public interface ProjectMapper extends BaseMapper<Project> {
     /**
      * 查询全部上架有效项目及实时完成订单销量
      */
-    List<ProjectSalesVO> selectAllProjectSalesCount();
+    //List<ProjectSalesVO> selectAllProjectSalesCount();
 }

+ 4 - 3
nightFragrance-massage/src/main/resources/mapper/order/AdminOrderMapper.xml

@@ -379,6 +379,7 @@
         ORDER BY osf.create_time ASC
     </select>
 
+    <!-- 根据订单ID查询派单订单 -->
     <select id="selectDispatchOrderById" resultType="com.ylx.order.domain.vo.AdminOrderDispatchOrderVO">
         SELECT
             o.id AS orderId,
@@ -443,7 +444,7 @@
             WHERE t.is_delete = 0
               AND t.audit_status = 2
               AND t.n_status2 = 0
-              AND t.merchant_status = '0'
+              AND t.merchant_status = 0
               AND addr.longitude IS NOT NULL
               AND addr.latitude IS NOT NULL
               <choose>
@@ -515,8 +516,7 @@
             WHERE t.id = #{merchantId}
               AND t.is_delete = 0
               AND t.audit_status = 2
-              AND t.n_status2 = 0
-              AND t.merchant_status = '0'
+              AND t.merchant_status =0
               AND addr.longitude IS NOT NULL
               AND addr.latitude IS NOT NULL
               <choose>
@@ -529,6 +529,7 @@
               </choose>
         ) candidate
         WHERE candidate.distance_meters &lt;= #{radiusMeters}
+        ORDER BY candidate.distance_meters ASC
         LIMIT 1
     </select>
 

+ 2 - 2
nightFragrance-massage/src/main/resources/mapper/project/ProjectMapper.xml

@@ -200,7 +200,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
     <!-- 查询全部上架有效项目及实时完成订单销量 -->
-    <select id="selectAllProjectSalesCount" resultType="com.ylx.home.hot.domain.vo.ProjectSalesVO">
+    <!--<select id="selectAllProjectSalesCount" resultType="com.ylx.home.hot.domain.vo.ProjectSalesVO">
         SELECT
             p.id AS id,
             COALESCE(COUNT(o.id), 0) AS salesCount
@@ -211,7 +211,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         WHERE p.is_delete = 0
           AND p.status = 0
         GROUP BY p.id
-    </select>
+    </select>-->
 
 
 </mapper>