guoshilong
2022-09-23 aa62314c186de81906dc26289edb2c1865482a2e
数据统计sql加上if判断,巡检人员多查询一个字段手机号
4 files modified
38 ■■■■ changed files
src/main/java/org/springblade/modules/taskinfo/mapper/TaskplanUserMapper.xml 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/taskinfo/vo/TaskplanUserVO.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/userstatistics/mapper/UserStatisticsMapper.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/userstatistics/mapper/UserStatisticsMapper.xml 32 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/taskinfo/mapper/TaskplanUserMapper.xml
@@ -14,7 +14,7 @@
    <select id="selectTaskplanUserPage" resultMap="taskplanUserResultMap">
        select itu.*,bu.name
        select itu.*,bu.name,bu.phone
         from ins_taskplan_user itu
         LEFT JOIN blade_user bu ON itu.user_id = bu.id
         where itu.is_deleted = 0
src/main/java/org/springblade/modules/taskinfo/vo/TaskplanUserVO.java
@@ -33,4 +33,6 @@
    private static final long serialVersionUID = 1L;
    private String name;
    private String phone;
}
src/main/java/org/springblade/modules/userstatistics/mapper/UserStatisticsMapper.java
@@ -10,6 +10,6 @@
import java.util.Map;
@Repository
public interface UserStatisticsMapper extends BaseMapper {
public interface UserStatisticsMapper {
    List<Map<String,String>> getRepairTask(IPage page,@Param("startTime") String startTime, @Param("endTime") String endTime);
}
src/main/java/org/springblade/modules/userstatistics/mapper/UserStatisticsMapper.xml
@@ -14,26 +14,42 @@
        LEFT JOIN blade_role role ON user.role_id = role.id
        LEFT JOIN (
        SELECT DISTINCT re.to_user_id,count(*) as num FROM ins_repairsorder re WHERE re.is_deleted = 0 AND re.state = 1 -- 状态state = 1 派单的数据
        AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &gt;= #{startTime}
        AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &lt;= #{endTime}
        <if test="startTime !=null and startTime !=''">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime != null and endTime !='' ">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        GROUP BY re.to_user_id
        ) a ON user.id = a.to_user_id
        LEFT JOIN (
        SELECT DISTINCT re.to_user_id,count(*) as num FROM ins_repairsorder re WHERE re.is_deleted = 0 AND re.state = 2 -- 状态state = 2 完成派单
        AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &gt;= #{startTime}
        AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &lt;= #{endTime}
        <if test="startTime !=null and startTime !=''">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime != null and endTime !='' ">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        GROUP BY re.to_user_id
        ) b ON user.id = b.to_user_id
        LEFT JOIN (
        SELECT DISTINCT sk.to_user_id,count(*) as num FROM ins_taskinfo sk WHERE sk.is_deleted = 0 AND sk.state = 0
        AND DATE_FORMAT(sk.create_time,'%Y-%m-%d') &gt;= #{startTime}
        AND DATE_FORMAT(sk.create_time,'%Y-%m-%d') &lt;= #{endTime}
        <if test="startTime !=null and startTime !=''">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime != null and endTime !='' ">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        GROUP BY sk.to_user_id
        ) c ON user.id = c.to_user_id
        LEFT JOIN (
        SELECT DISTINCT sk.to_user_id,count(*) as num FROM ins_taskinfo sk WHERE sk.is_deleted = 0 AND sk.state = 2
        AND DATE_FORMAT(sk.create_time,'%Y-%m-%d') &gt;= #{startTime}
        AND DATE_FORMAT(sk.create_time,'%Y-%m-%d') &lt;= #{endTime}
        <if test="startTime !=null and startTime !=''">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime != null and endTime !='' ">
            AND DATE_FORMAT(re.create_time,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        GROUP BY sk.to_user_id
        ) d ON user.id = d.to_user_id
        WHERE (role.role_alias = 'wx' or  role.role_alias = 'xj') and user.is_deleted = 0