新增  首页统计导办工单总数   导办工单时间统计   导办工单时段筛选接口   新增角色菜单关系表   新增角色菜单关系相关接口
8个文件已修改
8个文件已添加
556 ■■■■■ 已修改文件
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/HomeStatisticsController.java 82 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/UserController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/CountList.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/CountListNum.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/RoleMenuEntity.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/TimeWorkOrder.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/WorkOrder.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideRepairOrderMapper.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/RoleMenuEntityMapper.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IGuideRepairOrderService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IRoleMenuService.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/IRoleMenuImpl.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/GuideRepairOrderMapper.xml 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/RoleMenuMapper.xml 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
@@ -356,5 +356,29 @@
    }
    @ApiOperation("导办工单统计不同状态工单数")
    @GetMapping("/getWorkOrder")
    @Authorization
    public ResultData getWorkOrder(@CurrentUser SysUser sysUser)
    {
        WorkOrder workOrder=new WorkOrder();
        List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消6 已超时   7超时未办结  8未解决  9已解决)
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",ids,null));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",ids,null));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",ids,null));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",ids,null));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",ids,null));
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum("6",ids,null));
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("7",ids,null));
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum("8",ids,null));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum("9",ids,null));
        return ResultData.success(workOrder);
    }
}
flower_city/src/main/java/com/dg/core/controller/HomeStatisticsController.java
@@ -1,11 +1,22 @@
package com.dg.core.controller;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.CountList;
import com.dg.core.db.gen.entity.CountListNum;
import com.dg.core.db.gen.entity.TimeWorkOrder;
import com.dg.core.db.gen.entity.WorkOrder;
import com.dg.core.service.IGuideRepairOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.Calendar;
import java.util.List;
@Api(tags = {"首页统计接口"})
@RestController
@@ -13,25 +24,72 @@
public class HomeStatisticsController
{
    //导办工单接口
    @Autowired
    IGuideRepairOrderService iGuideRepairOrderService;
    @ApiOperation("首页统计不同状态工单数")
    @GetMapping("/getWorkOrder")
    public ResultData getWorkOrder()
    {
        WorkOrder workOrder=new WorkOrder();
        return ResultData.success();
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消6 已超时   7超时未办结  8未解决  9已解决)
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",null,null));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",null,null));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",null,null));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",null,null));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",null,null));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",null,null));
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum("6",null,null));
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("7",null,null));
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum("8",null,null));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum("9",null,null));
        return ResultData.success(workOrder);
    }
    @ApiOperation("首页统计不同时间段的工单数量")
    @GetMapping("/getTimeWorkOrder")
    public ResultData getTimeWorkOrder()
    {
        //1 今天   2昨天   3本月   4本年度
        //累计全部 本年 本月 今日 昨日
        TimeWorkOrder timeWorkOrder=new TimeWorkOrder();
        timeWorkOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum(null,null,null));
        timeWorkOrder.setYearNum(iGuideRepairOrderService.countStatisticsNum(null,null,"4"));
        timeWorkOrder.setMonthNum(iGuideRepairOrderService.countStatisticsNum(null,null,"3"));
        timeWorkOrder.setTodayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"1"));
        timeWorkOrder.setYesterdayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"2"));
        return ResultData.success(timeWorkOrder);
    }
    @ApiOperation("根据选择的时间段 筛选导办工单数 timeType:1 本年度 15 近15天的   30 近30天的")
    @GetMapping("/getSelectionTimeOrder")
    public ResultData getSelectionTimeOrder(@RequestParam("timeType") Integer timeType)
    {
        if(timeType<1)
        {
            return ResultData.error("请输入时间");
        }
        if(timeType==1)
        {
            Calendar calendar=Calendar.getInstance();
            timeType=calendar.get(Calendar.DAY_OF_YEAR);
        }
//        System.out.println(timeType);
        //1 本年度 15 近15天的   30 近30天的
        List<CountListNum> listOne=iGuideRepairOrderService.countListNum("2",null,timeType);
        List<CountListNum> listTwo=iGuideRepairOrderService.countListNum("3",null,timeType);
        CountList countList=new CountList();
        countList.setWaitDealWithList(listOne);
        countList.setHaveDealWith(listTwo);
        return ResultData.success(countList);
    }
}
flower_city/src/main/java/com/dg/core/controller/UserController.java
@@ -26,7 +26,7 @@
@Api(tags = {"用户接口"})
@RestController
@RequestMapping("/user")
public class UserController extends BaseController{
public class UserController extends BaseController {
    @Autowired
    com.dg.core.service.ISysUserService IUserService;
flower_city/src/main/java/com/dg/core/db/gen/entity/CountList.java
New file
@@ -0,0 +1,20 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@ApiModel("时间筛选列表实体类")
@Data
public class CountList implements Serializable
{
    @ApiModelProperty("待办结列表")
    private List<CountListNum> waitDealWithList;
    @ApiModelProperty("已办结列表")
    private List<CountListNum> haveDealWith;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/CountListNum.java
New file
@@ -0,0 +1,22 @@
package com.dg.core.db.gen.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
@ApiModel("时间筛选实体类")
@Data
public class CountListNum implements Serializable
{
    @ApiModelProperty("时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    @ApiModelProperty("数量")
    private Integer num;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/RoleMenuEntity.java
New file
@@ -0,0 +1,60 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
@ApiModel("角色菜单关系实体类")
@Data
@TableName("automessage_role_menu")
public class RoleMenuEntity implements Serializable
{
    /**
     * 主键id
     */
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 角色id
     */
    @ApiModelProperty("角色id")
    private String roleId;
    /**
     * 菜单id
     */
    @ApiModelProperty("菜单id")
    private String menuId;
    /**
     *
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime  updateTime;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/TimeWorkOrder.java
New file
@@ -0,0 +1,34 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * 导办工单统计类
 */
@ApiModel("不同时间段的工单数量")
@Data
public class TimeWorkOrder implements Serializable
{
    //累计全部 本年 本月 今日 昨日
    /**
     * 总数量
     */
    @ApiModelProperty("累计总数量")
    private Integer allNum=0;
    @ApiModelProperty("本年")
    private Integer yearNum;
    @ApiModelProperty("本月")
    private Integer monthNum;
    @ApiModelProperty("今天")
    private Integer todayNum;
    @ApiModelProperty("昨天")
    private Integer yesterdayNum;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/WorkOrder.java
@@ -14,59 +14,67 @@
public class WorkOrder implements Serializable
{
    /**
     * 总数量
     */
    @ApiModelProperty("总数量")
    private Integer allNum=0;
    /**
     * 待分配
     */
    @ApiModelProperty("待分配数量")
    private String waitDistribution;
    private Integer waitDistribution=0;
    /**
     * 待办结
     */
    @ApiModelProperty("待办结")
    private String waitDealWith;
    private Integer waitDealWith=0;
    /**
     * 已办结
     */
    @ApiModelProperty("已办结")
    private String haveDealWith;
    private Integer haveDealWith=0;
    /**
     * 待评价
     */
    @ApiModelProperty("待评价")
    private String remainEvaluated;
    private Integer remainEvaluated=0;
    /**
     * 已取消
     */
    @ApiModelProperty("已取消")
    private String canceled;
    private Integer canceled=0;
    /**
     * 已超时
     */
    @ApiModelProperty("已超时")
    private String overtime;
    private Integer overtime=0;
    /**
     * 超时未办结
     */
    @ApiModelProperty("超时未办结")
    private String overtimeWaitDealWith;
    private Integer overtimeWaitDealWith=0;
    /**
     * 未解决
     */
    @ApiModelProperty("未解决")
    private String unsolved;
    private Integer unsolved=0;
    /**
     * 已解决
     */
    @ApiModelProperty("已解决")
    private String resolved;
    private Integer resolved=0;
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideRepairOrderMapper.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import com.dg.core.db.gen.entity.CountListNum;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.data.repository.query.Param;
@@ -60,7 +61,21 @@
    int countConfigList(@Param("matterName") String matterName,@Param("ids") List<String> ids);
    /**
     * 统计工单用   1 今天   2昨天   3本月   4本年度
     * @return
     */
    int countStatisticsNum(@Param("state") String state,
                           @Param("ids") List<String> ids,
                           @Param("time") String time);
    /**
     * 统计工单用
     * @return
     */
    List<CountListNum> countListNum(@Param("state") String state,
                                    @Param("ids") List<String> ids,
                                    @Param("time") Integer time);
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/RoleMenuEntityMapper.java
New file
@@ -0,0 +1,41 @@
package com.dg.core.db.gen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dg.core.db.gen.entity.RoleMenuEntity;
import java.util.List;
public interface RoleMenuEntityMapper  extends BaseMapper<RoleMenuEntity>
{
    /**
     * 根据角色获取菜单id
     * @param roleId
     * @return
     */
    public List<RoleMenuEntity> selectConfigList(String roleId);
    /**
     * 新增
     * @param entity
     * @return
     */
    public int insertConfig(RoleMenuEntity entity);
    /**
     * 编辑
     * @param entity
     * @return
     */
    public int updateConfig(RoleMenuEntity entity);
    /**
     * 删除
     * @param Id
     * @return
     */
    public int deleteConfigById(String Id);
}
flower_city/src/main/java/com/dg/core/service/IGuideRepairOrderService.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import com.dg.core.db.gen.entity.CountListNum;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import org.springframework.data.repository.query.Param;
@@ -50,4 +51,17 @@
     */
    int countConfigList(String matterName,List<String> ids);
    /**
     * 统计工单用  1 今天   2昨天   3本月   4本年度 String time
     * @return
     */
    int countStatisticsNum(String state,List<String> ids,String time);
    List<CountListNum> countListNum(String state,
                                    List<String> ids,
                                    Integer time);
}
flower_city/src/main/java/com/dg/core/service/IRoleMenuService.java
New file
@@ -0,0 +1,37 @@
package com.dg.core.service;
import com.dg.core.db.gen.entity.RoleMenuEntity;
import java.util.List;
public interface IRoleMenuService
{
    /**
     * 根据角色获取菜单id
     * @param roleId
     * @return
     */
    public List<RoleMenuEntity> selectConfigList(String roleId);
    /**
     * 新增
     * @param entity
     * @return
     */
    public int insertConfig(RoleMenuEntity entity);
    /**
     * 编辑
     * @param entity
     * @return
     */
    public int updateConfig(RoleMenuEntity entity);
    /**
     * 删除
     * @param Id
     * @return
     */
    public int deleteConfigById(String Id);
}
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java
@@ -162,5 +162,21 @@
        return baseMapper.countConfigList(matterName,ids);
    }
    /**
     * 1 今天   2昨天   3本月   4本年度 String time
     * @param state
     * @param ids
     * @return
     */
    @Override
    public int countStatisticsNum(String state,List<String> ids,String time) {
        return baseMapper.countStatisticsNum(state,ids,time);
    }
    @Override
    public List<CountListNum> countListNum(String state, List<String> ids, Integer time) {
        return baseMapper.countListNum(state, ids,time);
    }
}
flower_city/src/main/java/com/dg/core/service/impl/IRoleMenuImpl.java
New file
@@ -0,0 +1,33 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.RoleMenuEntity;
import com.dg.core.db.gen.mapper.RoleMenuEntityMapper;
import com.dg.core.service.IRoleMenuService;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class IRoleMenuImpl extends ServiceImpl<RoleMenuEntityMapper, RoleMenuEntity> implements IRoleMenuService {
    @Override
    public List<RoleMenuEntity> selectConfigList(String roleId) {
        return baseMapper.selectConfigList(roleId);
    }
    @Override
    public int insertConfig(RoleMenuEntity entity) {
        return baseMapper.insertConfig(entity);
    }
    @Override
    public int updateConfig(RoleMenuEntity entity) {
        return baseMapper.updateConfig(entity);
    }
    @Override
    public int deleteConfigById(String Id) {
        return baseMapper.deleteConfigById(Id);
    }
}
flower_city/src/main/resources/mapper/GuideRepairOrderMapper.xml
@@ -138,10 +138,63 @@
        where  id= #{id}
    </update>
    <select id="countNum" resultType="integer">
        select count(id) from automessage_guide_repair_order
    </select>
    <select id="countStatisticsNum" parameterType="string" resultType="integer">
        select count(id) from automessage_guide_repair_order
        <where>
            <if test="state != null and state != ''">
                automessage_guide_repair_order.state=#{state}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
            <if test="time != null and time == 1 ">
                and to_days(automessage_guide_repair_order.create_time) = to_days(now())
            </if>
            <if test="time != null and time == 2 ">
                and TO_DAYS(NOW()) - TO_DAYS(automessage_guide_repair_order.create_time) = 1
            </if>
            <if test="time != null and time == 3 ">
                and DATE_FORMAT( automessage_guide_repair_order.create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
            </if>
            <if test="time != null and time == 4 ">
                and YEAR(automessage_guide_repair_order.create_time)=YEAR(NOW())
            </if>
        </where>
    </select>
    <select id="countListNum"  resultType="com.dg.core.db.gen.entity.CountListNum">
        select create_time,count(id) as num from automessage_guide_repair_order
        <where>
            <if test="state != null and state != ''">
                automessage_guide_repair_order.state=#{state}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
        GROUP BY
            date_format(create_time,'%y%m%d')
        ORDER BY
            create_time DESC
            LIMIT #{time}
    </select>
</mapper>
flower_city/src/main/resources/mapper/RoleMenuMapper.xml
New file
@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.RoleMenuEntityMapper">
    <resultMap type="com.dg.core.db.gen.entity.RoleMenuEntity" id="RoleMenuEntityResult">
        <id     property="id"      column="id"      />
        <id     property="roleId"      column="role_id"      />
        <id     property="menuId"      column="menu_id"      />
        <id     property="createTime"      column="create_time"      />
        <id     property="updateTime"      column="update_time"      />
    </resultMap>
    <sql id="selectRoleManagementEntityVo">
        SELECT
            id,
            role_id,
            menu_id,
            create_time,
            update_time
        FROM
            automessage_role_menu
    </sql>
    <select id="selectConfigList" parameterType="string" resultMap="RoleMenuEntityResult">
        <include refid="selectRoleManagementEntityVo"/>
        <where>
            <if test="roleId!=null and roleId!=''">
                and role_id=#{roleId}
            </if>
        </where>
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.RoleManagementEntity">
        insert into automessage_role_menu (
        <if test="id != null">id,</if>
        <if test="roleId != null and roleId != '' ">role_id,</if>
        <if test="menuId != null and menuId != '' ">menu_id,</if>
        update_time,
        create_time
        )values(
        <if test="id != null">#{id},</if>
        <if test="roleId != null and roleId != '' ">#{roleId},</if>
        <if test="menuId != null and menuId != '' ">#{menuId},</if>
        sysdate(),
        sysdate()
        )
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.RoleManagementEntity">
        update automessage_role_menu
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="roleId != null and roleId != '' ">role_id=#{roleId},</if>
            <if test="menuId != null and menuId != '' ">menu_id=#{menuId},</if>
            update_time=sysdate()
        </set>
        where  id= #{Id}
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from automessage_role_menu where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from automessage_role_menu
    </select>
</mapper>