puzhibing
2026-04-25 e3daeef349b6908a03749af2bfabb23f9ae4d658
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java
@@ -68,6 +68,8 @@
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.net.URLEncoder;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -707,4 +709,25 @@
        vo.setSlaveMacList(jsonObject.getList("slaveMacList", String.class));
        return R.ok(vo);
    }
    /**
     * 判断用户类型
     * @param userId
     * @return 2=老用户,3=新用户,4=流失用户
     */
    @PostMapping("/logan/inner/order/determineUserType")
    public R<Integer> determineUserType(@RequestParam Long userId){
        //判断流失用户
        XpOrder one = xpOrderService.getOne(new QueryWrapper<XpOrder>().eq("app_user_id", userId).in("status", Arrays.asList(9, 10)).last(" order by create_time desc limit 1"));
        if(null != one){
            long time = LocalDateTime.now().toEpochSecond(ZoneOffset.of("GMT+8")) - one.getCreateTime().toEpochSecond(ZoneOffset.of("GMT+8"));
            if(time >= 60 * 60 * 24 * 5){
                return R.ok(4);
            }
            return R.ok(2);
        }else{
            return R.ok(3);
        }
    }
}