“mitao”
2026-03-15 6945c31451cab54a93c38e908d4213cce7ac2ea1
Merge remote-tracking branch 'origin/master'
3个文件已修改
117 ■■■■■ 已修改文件
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpClockInServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpClockInMapper.xml 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/service/impl/XpVehicleServiceImpl.java 4 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpClockInServiceImpl.java
@@ -486,7 +486,8 @@
                log.info("打卡成功通知,共需通知 {} 位用户", enabledUsers.size());
                // 2. 构建通知内容
                String message = String.format("你已于%s打卡成功!", clockTime);
                String format = clockTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
                String message = String.format("你已于%s打卡成功!", format);
                String bodyJson = buildAgreementPushBodyJson(message);
                // 3. 构建并保存通知记录
@@ -606,7 +607,7 @@
        dto.setAccount(accounts);
        dto.setTitle("打卡成功通知");
        dto.setBody(buildAgreementPushBodyJson(message));
        dto.setPushType("NOTICE");
        dto.setPushType("MESSAGE");
        return dto;
    }
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpClockInMapper.xml
@@ -28,43 +28,85 @@
        ifnull(sum(aa.num3), 0) as notClockInDays,
        ifnull(dd.num1, 0) as shouldClockInDays
        from (
            select app_user_id, count(id) as num1, 0 as num2, 0 as num3 from xp_clock_in where is_deleted = 0 and
            clock_in_result = 1 and clock_out_result = 1
            <if test="null != appUserIds and appUserIds.size() > 0">
                and app_user_id in
                <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                    #{item}
                </foreach>
            </if>
            <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
            </if>
            select app_user_id, sum(num1) as num1, 0 as num2, 0 as num3 from (
                select app_user_id, count(id) as num1 from xp_clock_in where is_deleted = 0 and clock_in_result = 1
                <if test="null != appUserIds and appUserIds.size() > 0">
                    and app_user_id in
                    <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                        #{item}
                    </foreach>
                </if>
                <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                    and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
                </if>
                group by app_user_id
                union all
                select app_user_id, count(id) as num1 from xp_clock_in where is_deleted = 0 and clock_out_result = 1
                <if test="null != appUserIds and appUserIds.size() > 0">
                    and app_user_id in
                    <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                        #{item}
                    </foreach>
                </if>
                <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                    and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
                </if>
                group by app_user_id
            ) as temp
            group by app_user_id
            union all
            select app_user_id, 0 as num1, count(id) as num2, 0 as num3 from xp_clock_in where is_deleted = 0 and
            (clock_in_result = 2 or clock_out_result = 2)
            <if test="null != appUserIds and appUserIds.size() > 0">
                and app_user_id in
                <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                    #{item}
                </foreach>
            </if>
            <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
            </if>
            select app_user_id, 0 as num1, sum(num2) as num2, 0 as num3 from (
                 select app_user_id, count(id) as num2 from xp_clock_in where is_deleted = 0 and clock_in_result = 2
                 <if test="null != appUserIds and appUserIds.size() > 0">
                     and app_user_id in
                     <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                         #{item}
                     </foreach>
                 </if>
                 <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                     and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
                 </if>
                 group by app_user_id
                 union all
                 select app_user_id, count(id) as num2 from xp_clock_in where is_deleted = 0 and clock_out_result = 2
                 <if test="null != appUserIds and appUserIds.size() > 0">
                     and app_user_id in
                     <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                         #{item}
                     </foreach>
                 </if>
                 <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                     and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
                 </if>
                 group by app_user_id
            ) as temp
            group by app_user_id
            union all
            select app_user_id, 0 as num1, 0 as num2, count(id) as num3 from xp_clock_in where is_deleted = 0 and
            (clock_in_result = 3 or clock_out_result = 3)
            <if test="null != appUserIds and appUserIds.size() > 0">
                and app_user_id in
                <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                    #{item}
                </foreach>
            </if>
            <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
            </if>
            select app_user_id, 0 as num1, 0 as num2, sum(num3) as num3 from (
                select app_user_id, count(id) as num3 from xp_clock_in where is_deleted = 0 and clock_in_result = 3
                <if test="null != appUserIds and appUserIds.size() > 0">
                    and app_user_id in
                    <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                        #{item}
                    </foreach>
                </if>
                <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                    and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
                </if>
                group by app_user_id
                union all
                select app_user_id, count(id) as num3 from xp_clock_in where is_deleted = 0 and clock_out_result = 3
                <if test="null != appUserIds and appUserIds.size() > 0">
                    and app_user_id in
                    <foreach item="item" collection="appUserIds" separator="," open="(" close=")" index="index">
                        #{item}
                    </foreach>
                </if>
                <if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
                    and DATE_FORMAT(clock_in_time, '%Y-%m-%d') between #{startTime} and #{endTime}
                </if>
                group by app_user_id
                ) as temp
            group by app_user_id
        ) as aa
        left join xp_fleet_operations bb on (aa.app_user_id = bb.operations_user_id)
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/service/impl/XpVehicleServiceImpl.java
@@ -211,8 +211,8 @@
            } else {
                xpVehicleVO.setMileageRange(0F);
                xpVehicleVO.setCurrentElectricity(0);
                xpVehicleVO.setLongitude(0D);
                xpVehicleVO.setLatitude(0D);
                xpVehicleVO.setLongitude(104.056302);
                xpVehicleVO.setLatitude(30.586688);
            }
        }