Commit 22767fad authored by cq990612's avatar cq990612

优化代码结构

parent 73cfb458
...@@ -821,6 +821,31 @@ public class DateUtil { ...@@ -821,6 +821,31 @@ public class DateUtil {
return date; return date;
} }
public static boolean isYearAndMonthEqual(Date date1, Date date2) {
if (getYear(date1) == getYear(date2) && getMonth(date1) == getMonth(date2)) {
return true;
}
return false;
}
/**
* 获取某月的最后一天
*
*/
public static Date getLastDayByMonth2(Date date)
{
Calendar cal = Calendar.getInstance();
//设置年份
cal.set(Calendar.YEAR,getYear(date));
//设置月份
cal.set(Calendar.MONTH, getMonth(date));
//获取某月最大天数
int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
//设置日历中月份的最大天数
cal.set(Calendar.DAY_OF_MONTH, lastDay);
//格式化日期
return cal.getTime();
}
} }
...@@ -41,4 +41,6 @@ public interface WorkCollectMapper extends BaseMapper<WorkCollect> { ...@@ -41,4 +41,6 @@ public interface WorkCollectMapper extends BaseMapper<WorkCollect> {
* @return 修改成功的条数 * @return 修改成功的条数
*/ */
int updateStatusOrTotalTime(@Param("id") Integer id,@Param("status") Integer status,@Param("totalTime") Integer totalTime); int updateStatusOrTotalTime(@Param("id") Integer id,@Param("status") Integer status,@Param("totalTime") Integer totalTime);
List<WorkCollect> getCompletedByUserIdAndMonth(@Param("userId") Integer userId, @Param("month") Date month);
} }
...@@ -44,7 +44,7 @@ public interface WorkProjectMapper extends BaseMapper<WorkProject> { ...@@ -44,7 +44,7 @@ public interface WorkProjectMapper extends BaseMapper<WorkProject> {
* @param deptIds 所属部门 * @param deptIds 所属部门
* @return * @return
*/ */
List<ManagerProjectsDto> getManagerProjectsDto(@Param("userId") Integer userId, @Param("type") Integer type, @Param("isConclusion") Integer isConclusion,@Param("deptIds") List<Integer> deptIds); List<ManagerProjectsDto> getManagerProjectsDto(@Param("userId") Integer userId, @Param("type") Integer type, @Param("isConclusion") Integer isConclusion,@Param("deptIds") List<Integer> deptIds,@Param("key") String key);
int updateIsConclusionById(Integer id); int updateIsConclusionById(Integer id);
......
...@@ -41,7 +41,7 @@ public interface WorkUserMapper extends BaseMapper<WorkUser> { ...@@ -41,7 +41,7 @@ public interface WorkUserMapper extends BaseMapper<WorkUser> {
*/ */
List<StatisticsTableDto> getStatisticsTableDtos(List<Integer> userIds); List<StatisticsTableDto> getStatisticsTableDtos(List<Integer> userIds);
List<UserRoleDto> getUserRoleDto(@Param("status") Integer status,@Param("key") String key); List<UserRoleDto> getUserRoleDto(@Param("status") Integer status,@Param("key") String key,@Param("deptId") Integer deptId,@Param("roleId") Integer roleId);
List<WorkRole> getUserRole(Integer id); List<WorkRole> getUserRole(Integer id);
......
...@@ -76,5 +76,22 @@ ...@@ -76,5 +76,22 @@
</if> </if>
</where> </where>
</select> </select>
<select id="getCompletedByUserIdAndMonth" resultType="cn.wisenergy.model.app.WorkCollect">
SELECT
<include refid="Base_Column_List"/>
FROM
<include refid="table"/>
<where>
total_time = 8
<if test="userId !=null">
AND user_id = #{userId}
</if>
<if test="month !=null">
AND DATE_FORMAT(work_day, '%Y%m') = DATE_FORMAT(#{month} ,'%Y%m')
</if>
</where>
</select>
</mapper> </mapper>
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
<result column="dept_manager_id" property="deptManagerId"/> <result column="dept_manager_id" property="deptManagerId"/>
<result column="create_time" property="createTime" /> <result column="create_time" property="createTime" />
<result column="modify_time" property="modifyTime" /> <result column="modify_time" property="modifyTime" />
<result column="sort" property="sort"/>
</resultMap> </resultMap>
...@@ -32,7 +33,7 @@ ...@@ -32,7 +33,7 @@
</sql> </sql>
<sql id="cols_exclude_id"> <sql id="cols_exclude_id">
dept_name,oa_dept_id,dept_manager_id,centre_id, create_time, modify_time dept_name,oa_dept_id,dept_manager_id,centre_id, create_time, modify_time,sort
</sql> </sql>
<sql id="criteria"> <sql id="criteria">
...@@ -47,7 +48,7 @@ ...@@ -47,7 +48,7 @@
<!-- 通用查询结果列 --> <!-- 通用查询结果列 -->
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id,dept_name, oa_dept_id,centre_id, dept_name, create_time, modify_time id,dept_name, oa_dept_id,centre_id, dept_name, create_time, modify_time,sort
</sql> </sql>
<update id="updateManagerIdISNullById"> <update id="updateManagerIdISNullById">
UPDATE <include refid="table"/> UPDATE <include refid="table"/>
......
...@@ -152,30 +152,40 @@ ...@@ -152,30 +152,40 @@
LEFT JOIN work_user_project up ON p.id = up.project_id LEFT JOIN work_user_project up ON p.id = up.project_id
LEFT JOIN work_user u on u.id = up.user_id LEFT JOIN work_user u on u.id = up.user_id
<where> <where>
<if test="null != userId">
AND p.manager_id = #{userId}
</if>
<if test="null !=type"> <if test="null !=type">
AND p.type = #{type} AND p.type = #{type}
</if> </if>
<if test="null !=isConclusion"> <if test="null !=isConclusion">
AND p.is_conclusion = #{isConclusion} AND p.is_conclusion = #{isConclusion}
</if> </if>
<if test="deptIds != null and deptIds.size>0">
<if test="deptIds != null"> AND p.dept_id IN
OR (p.dept_id IN
<foreach collection="deptIds" item="deptId" separator="," open="(" close=")"> <foreach collection="deptIds" item="deptId" separator="," open="(" close=")">
#{deptId} #{deptId}
</foreach> </foreach>
</if>
<if test="null != userId">
OR (p.manager_id = #{userId}
<if test="null !=type">
AND p.type = #{type}
</if>
<if test="null !=isConclusion"> <if test="null !=isConclusion">
AND p.is_conclusion = #{isConclusion} AND p.is_conclusion = #{isConclusion}
</if> </if>
<if test="null !=type"> <if test="deptIds != null and deptIds.size>0">
AND p.type = #{type} AND p.dept_id IN
<foreach collection="deptIds" item="deptId" separator="," open="(" close=")">
#{deptId}
</foreach>
</if> </if>
) )
</if> </if>
<if test="null != key and key!=''">
AND (
p.project_name like concat('%',#{key},'%') OR
lu.manager_name like concat('%',#{key},'%')
)
</if>
</where> </where>
......
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
<result column="type" property="type" /> <result column="type" property="type" />
<result column="status" property="status" /> <result column="status" property="status" />
<result column="wx_id" property="wxId" /> <result column="wx_id" property="wxId" />
<result column="submit_order" property="submitOrder"/>
<result column="create_time" property="createTime" /> <result column="create_time" property="createTime" />
<result column="modify_time" property="modifyTime" /> <result column="modify_time" property="modifyTime" />
</resultMap> </resultMap>
...@@ -32,11 +33,11 @@ ...@@ -32,11 +33,11 @@
</sql> </sql>
<sql id="cols_exclude_id"> <sql id="cols_exclude_id">
name, oa_user_id, login_name, phone, dept_id, email, role ,type,status,wx_id,create_time,modify_time name, oa_user_id, login_name, phone, dept_id, email, role ,type,status,wx_id,submit_order,create_time,modify_time
</sql> </sql>
<sql id="values"> <sql id="values">
#{name},#{oaUserId},#{loginName},#{phone},#{deptId},#{email},#{role},#{type},#{status},#{wxId},now(),now() #{name},#{oaUserId},#{loginName},#{phone},#{deptId},#{email},#{role},#{type},#{status},#{wxId},#{submitOrder},now(),now()
</sql> </sql>
<sql id="updateCondition"> <sql id="updateCondition">
...@@ -51,6 +52,7 @@ ...@@ -51,6 +52,7 @@
<if test="type != null">type =#{type},</if> <if test="type != null">type =#{type},</if>
<if test="status != null">status = #{status},</if> <if test="status != null">status = #{status},</if>
<if test="wxId != null">wx_id =#{wxId},</if> <if test="wxId != null">wx_id =#{wxId},</if>
<if test="submitOrder != null">submit_order = #{submitOrder},</if>
modify_time =now() modify_time =now()
</sql> </sql>
...@@ -66,7 +68,8 @@ ...@@ -66,7 +68,8 @@
<if test="role != null">and role = #{role}</if> <if test="role != null">and role = #{role}</if>
<if test="type != null">and type =#{type}</if> <if test="type != null">and type =#{type}</if>
<if test="status != null">and status = #{status}</if> <if test="status != null">and status = #{status}</if>
<if test="wxId != null">and wx_id =#{wxId},</if> <if test="wxId != null">and wx_id =#{wxId}</if>
<if test="submitOrder != null">and submit_order = #{submitOrder}</if>
<if test="createTime != null">and create_time &gt;= #{createTime}</if> <if test="createTime != null">and create_time &gt;= #{createTime}</if>
<if test="modifyTime != null">and #{modifyTime} &gt;= modify_time</if> <if test="modifyTime != null">and #{modifyTime} &gt;= modify_time</if>
</sql> </sql>
...@@ -110,23 +113,39 @@ ...@@ -110,23 +113,39 @@
<id column="id" property="id"/> <id column="id" property="id"/>
<result column="name" property="name"/> <result column="name" property="name"/>
<result column="status" property="status"/> <result column="status" property="status"/>
<result column="dept_id" property="deptId"/>
<result column="dept_name" property="deptName"/>
<result column="submit_order" property="submitOrder"/>
<collection property="workRoles" column="id" javaType="List" select="getUserRole" ofType="cn.wisenergy.model.app.WorkRole"/> <collection property="workRoles" column="id" javaType="List" select="getUserRole" ofType="cn.wisenergy.model.app.WorkRole"/>
</resultMap> </resultMap>
<select id="getUserRoleDto" resultMap="UserRoleMap"> <select id="getUserRoleDto" resultMap="UserRoleMap">
select u.id as 'id',u.name as 'name',u.status as 'status',r.id as 'role_id',r.name as 'role_name' select u.id as 'id',u.name as 'name',u.status as 'status',if(r.id is null,0,r.id) as 'role_id',r.name as 'role_name',d.id as 'dept_id',d.dept_name,u.submit_order
from work_user u LEFT JOIN (select role_id,user_id FROM work_user_role GROUP BY user_id) ur ON u.id = ur.user_id from work_user u LEFT JOIN (select role_id,user_id FROM work_user_role GROUP BY user_id) ur ON u.id = ur.user_id
LEFT JOIN work_dept d ON u.dept_id = d.id
LEFT JOIN work_role r on ur.role_id = r.id LEFT JOIN work_role r on ur.role_id = r.id
<where> <where>
<if test="null !=status"> <if test="null !=status">
AND u.status = #{status} AND u.status = #{status}
</if> </if>
<if test="null !=key"> <if test="null !=key and ''!=key">
AND u.name like concat('%',#{key},'%') AND u.name like concat('%',#{key},'%')
</if> </if>
<if test="null != deptId">
AND u.dept_id = #{deptId}
</if>
<if test="null !=roleId and roleId != 0">
AND r.id = #{roleId}
</if>
<if test="null !=roleId and roleId == 0">
AND r.id is null
</if>
ORDER BY CONVERT( u.name USING gbk )
</where> </where>
</select> </select>
<select id="getUserRole" resultType="cn.wisenergy.model.app.WorkRole"> <select id="getUserRole" resultType="cn.wisenergy.model.app.WorkRole">
......
...@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableId; ...@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
...@@ -19,9 +18,8 @@ import java.util.Date; ...@@ -19,9 +18,8 @@ import java.util.Date;
* @since 2021-01-19 * @since 2021-01-19
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="WorkDept", description="工单部门实体类") @ApiModel(value="WorkDept", description="工单部门实体类")
public class WorkDept implements Serializable { public class WorkDept implements Serializable,Comparable<WorkDept> {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
...@@ -47,5 +45,11 @@ public class WorkDept implements Serializable { ...@@ -47,5 +45,11 @@ public class WorkDept implements Serializable {
@ApiModelProperty(name = "deptManagerId", value = "部门经理id") @ApiModelProperty(name = "deptManagerId", value = "部门经理id")
private Integer deptManagerId; private Integer deptManagerId;
@ApiModelProperty(name = "sort", value = "排序")
private Integer sort;
@Override
public int compareTo(WorkDept o) {
return sort-o.getSort();
}
} }
...@@ -62,6 +62,9 @@ public class WorkUser implements Serializable { ...@@ -62,6 +62,9 @@ public class WorkUser implements Serializable {
@ApiModelProperty(name = "wxId",value = "微信id") @ApiModelProperty(name = "wxId",value = "微信id")
private String wxId; private String wxId;
@ApiModelProperty(name = "submitOrder",value = "是否需要填报工单 0不需要 1需要")
private Integer submitOrder;
@ApiModelProperty(name = "createTime",value = "创建时间") @ApiModelProperty(name = "createTime",value = "创建时间")
private Date createTime; private Date createTime;
......
...@@ -14,4 +14,6 @@ public class CalendarMonthDto { ...@@ -14,4 +14,6 @@ public class CalendarMonthDto {
private List<CalendarDto> calendarDtos; private List<CalendarDto> calendarDtos;
private Integer rejectMonth; private Integer rejectMonth;
private String notCompleteDay;
} }
...@@ -32,6 +32,9 @@ public class ProjectDto { ...@@ -32,6 +32,9 @@ public class ProjectDto {
@ApiModelProperty(name = "managerName", value = "项目经理姓名") @ApiModelProperty(name = "managerName", value = "项目经理姓名")
private String managerName; private String managerName;
@ApiModelProperty(name = "deptId",value = "部门id")
private Integer deptId;
......
...@@ -14,5 +14,8 @@ public class UserRoleDto { ...@@ -14,5 +14,8 @@ public class UserRoleDto {
private Integer id; private Integer id;
private String name; private String name;
private Integer status; private Integer status;
private Integer deptId;
private String deptName;
private Integer submitOrder;
private List<WorkRole> workRoles; private List<WorkRole> workRoles;
} }
...@@ -26,10 +26,9 @@ public class GetManagerProjectsVo { ...@@ -26,10 +26,9 @@ public class GetManagerProjectsVo {
@ApiModelProperty(name = "isConclusion",value = "是否结项:0:结项,1:未结束") @ApiModelProperty(name = "isConclusion",value = "是否结项:0:结项,1:未结束")
private Integer isConclusion; private Integer isConclusion;
@ApiModelProperty(name = "deptId",value = "部门id")
/* @ApiModelProperty(name = "deptId",value = "部门id")
private Integer deptId; private Integer deptId;
@ApiModelProperty(name = "projectId", value = "项目id") @ApiModelProperty(name = "key", value = "模糊查询条件:项目/商机名称、项目/商机负责人")
private Integer projectId;*/ private String key;
} }
package cn.wisenergy.model.vo;
import lombok.Data;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
@Data
public class GetUserListVo {
private Integer userId;
private Integer page;
private Integer pageSize;
private Integer status;
private String key;
private Integer deptId;
private Integer roleId;
}
...@@ -7,6 +7,7 @@ import cn.wisenergy.model.dto.WorkTimeAndCostCollect; ...@@ -7,6 +7,7 @@ import cn.wisenergy.model.dto.WorkTimeAndCostCollect;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -64,4 +65,12 @@ public interface StatisticsService { ...@@ -64,4 +65,12 @@ public interface StatisticsService {
* @return * @return
*/ */
List<ProjectStatisticsByMonth> getProjectStatistics(Integer userId, Integer deptId, Integer year, Integer projectId); List<ProjectStatisticsByMonth> getProjectStatistics(Integer userId, Integer deptId, Integer year, Integer projectId);
/**
* 获取某月需要填报的日期
* @param date
* @param toToday
* @return
*/
List<Date> currentMonthWorkDays(Date date, boolean toToday);
} }
package cn.wisenergy.service; package cn.wisenergy.service;
import cn.wisenergy.model.app.WorkCentre; import cn.wisenergy.model.app.WorkCentre;
import cn.wisenergy.model.app.WorkDept;
import cn.wisenergy.model.app.WorkUser;
import java.util.List;
/** /**
* @Authotr:陈奇 * @Authotr:陈奇
...@@ -13,4 +17,6 @@ public interface WorkCentreService { ...@@ -13,4 +17,6 @@ public interface WorkCentreService {
Boolean updateManagerIdIsNullById(Integer id); Boolean updateManagerIdIsNullById(Integer id);
Boolean updateById(WorkCentre workCentre); Boolean updateById(WorkCentre workCentre);
List<WorkDept> getDeptByCentreManager(WorkUser user);
} }
...@@ -31,4 +31,11 @@ public interface WorkDeptService { ...@@ -31,4 +31,11 @@ public interface WorkDeptService {
Boolean updateById(WorkDept workDept); Boolean updateById(WorkDept workDept);
List<WorkDept> getDeptByManagerId(Integer userId); List<WorkDept> getDeptByManagerId(Integer userId);
/**
* 获取管理员所管理的项目的部门
* @param userId
* @return
*/
List<WorkDept> getDeptOfProjectOfManager(Integer userId);
} }
...@@ -4,6 +4,7 @@ import cn.wisenergy.model.app.WorkUser; ...@@ -4,6 +4,7 @@ import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.dto.AllRoleAndUserRoleDto; import cn.wisenergy.model.dto.AllRoleAndUserRoleDto;
import cn.wisenergy.model.dto.OrganizationDto; import cn.wisenergy.model.dto.OrganizationDto;
import cn.wisenergy.model.dto.ResultUser; import cn.wisenergy.model.dto.ResultUser;
import cn.wisenergy.model.vo.GetUserListVo;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -56,9 +57,9 @@ public interface WorkUserService { ...@@ -56,9 +57,9 @@ public interface WorkUserService {
*/ */
OrganizationDto getOrganizationStructure(); OrganizationDto getOrganizationStructure();
AllRoleAndUserRoleDto getUserRoleDto(Integer userId,Integer page, Integer pageSize,Integer status,String key); AllRoleAndUserRoleDto getUserRoleDto(GetUserListVo getUserListVo);
Boolean modifyRole(Integer userId, List<Integer> roleIds,Integer status); Boolean modifyRole(Integer userId, List<Integer> roleIds,Integer status,Integer submitOrder);
Boolean reSetPassword(Integer userId); Boolean reSetPassword(Integer userId);
......
...@@ -2,6 +2,7 @@ package cn.wisenergy.service.impl; ...@@ -2,6 +2,7 @@ package cn.wisenergy.service.impl;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.wisenergy.common.utils.DateUtil; import cn.wisenergy.common.utils.DateUtil;
import cn.wisenergy.common.utils.DateUtils;
import cn.wisenergy.common.utils.ExcelUtils; import cn.wisenergy.common.utils.ExcelUtils;
import cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM; import cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM;
import cn.wisenergy.common.utils.exception.BaseCustomException; import cn.wisenergy.common.utils.exception.BaseCustomException;
...@@ -866,8 +867,10 @@ public class StatisticsServiceImpl implements StatisticsService { ...@@ -866,8 +867,10 @@ public class StatisticsServiceImpl implements StatisticsService {
Date now = new Date(); Date now = new Date();
if (DateUtil.getYear(date) == DateUtil.getYear(now) && DateUtil.getMonth(date) == DateUtil.getMonth(now) && toToday) { if (DateUtil.getYear(date) == DateUtil.getYear(now) && DateUtil.getMonth(date) == DateUtil.getMonth(now) && toToday) {
endDate = DateUtil.getStartOfDay(now); endDate = DateUtil.getStartOfDay(now);
System.out.println("endDate1 = " + DateUtils.dateToStringWithPattern(endDate,"yyyy-MM-dd"));
} else { } else {
endDate = DateUtil.getLastDayOfMonth(date); endDate = DateUtil.getLastDayByMonth2(date);
System.out.println("endDate2 = " +DateUtils.dateToStringWithPattern(endDate,"yyyy-MM-dd"));
} }
// 当月月第一天到截止时间的日期集合 // 当月月第一天到截止时间的日期集合
List<Date> workDays = DateUtil.getDatesBetweenTwoDate(startDate, endDate); List<Date> workDays = DateUtil.getDatesBetweenTwoDate(startDate, endDate);
......
...@@ -3,12 +3,19 @@ package cn.wisenergy.service.impl; ...@@ -3,12 +3,19 @@ package cn.wisenergy.service.impl;
import cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM; import cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM;
import cn.wisenergy.common.utils.exception.BaseCustomException; import cn.wisenergy.common.utils.exception.BaseCustomException;
import cn.wisenergy.mapper.WorkCentreMapper; import cn.wisenergy.mapper.WorkCentreMapper;
import cn.wisenergy.mapper.WorkDeptMapper;
import cn.wisenergy.model.app.WorkCentre; import cn.wisenergy.model.app.WorkCentre;
import cn.wisenergy.model.app.WorkDept;
import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.service.WorkCentreService; import cn.wisenergy.service.WorkCentreService;
import cn.wisenergy.service.WorkDeptService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
/** /**
* @Authotr:陈奇 * @Authotr:陈奇
* @QQ1799796883 * @QQ1799796883
...@@ -20,6 +27,12 @@ public class WorkCentreServiceImpl implements WorkCentreService { ...@@ -20,6 +27,12 @@ public class WorkCentreServiceImpl implements WorkCentreService {
@Autowired @Autowired
private WorkCentreMapper workCentreMapper; private WorkCentreMapper workCentreMapper;
@Autowired
private WorkDeptService workDeptService;
@Autowired
private WorkDeptMapper workDeptMapper;
@Override @Override
public WorkCentre getCentreById(Integer id) { public WorkCentre getCentreById(Integer id) {
log.info("WorkCentreServiceImpl[]getCentreById[]input.param.id:{}" + id); log.info("WorkCentreServiceImpl[]getCentreById[]input.param.id:{}" + id);
...@@ -53,4 +66,18 @@ public class WorkCentreServiceImpl implements WorkCentreService { ...@@ -53,4 +66,18 @@ public class WorkCentreServiceImpl implements WorkCentreService {
int updateRow = workCentreMapper.updateById(workCentre); int updateRow = workCentreMapper.updateById(workCentre);
return updateRow>0; return updateRow>0;
} }
@Override
public List<WorkDept> getDeptByCentreManager(WorkUser user) {
log.info("WorkCentreServiceImpl[]getDeptByCentreManagerId[]input.param.user" + user);
if (null == user) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
Integer centreId = workDeptService.getById(user.getDeptId()).getCentreId();
WorkCentre workCentre = workCentreMapper.selectById(centreId);
HashMap<String, Object> map = new HashMap<>(5);
map.put("centre_id", workCentre.getId());
List<WorkDept> workDeptList = workDeptMapper.getDeptByCondition(map);
return workDeptList;
}
} }
...@@ -8,13 +8,12 @@ import cn.wisenergy.mapper.WorkTimeOrderMapper; ...@@ -8,13 +8,12 @@ import cn.wisenergy.mapper.WorkTimeOrderMapper;
import cn.wisenergy.model.app.WorkCollect; import cn.wisenergy.model.app.WorkCollect;
import cn.wisenergy.model.app.WorkSubmitAdopt; import cn.wisenergy.model.app.WorkSubmitAdopt;
import cn.wisenergy.model.app.WorkTimeOrder; import cn.wisenergy.model.app.WorkTimeOrder;
import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.dto.CalendarDto; import cn.wisenergy.model.dto.CalendarDto;
import cn.wisenergy.model.dto.CalendarMonthDto; import cn.wisenergy.model.dto.CalendarMonthDto;
import cn.wisenergy.model.dto.SubtotalDto; import cn.wisenergy.model.dto.SubtotalDto;
import cn.wisenergy.model.enums.StatusEnum; import cn.wisenergy.model.enums.StatusEnum;
import cn.wisenergy.service.WorkCollectService; import cn.wisenergy.service.*;
import cn.wisenergy.service.WorkSubmitAdoptService;
import cn.wisenergy.service.WorkTimeOrderService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -23,6 +22,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -23,6 +22,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
...@@ -59,6 +59,12 @@ public class WorkCollectServiceImpl implements WorkCollectService { ...@@ -59,6 +59,12 @@ public class WorkCollectServiceImpl implements WorkCollectService {
@Autowired @Autowired
private WorkSubmitAdoptService workSubmitAdoptService; private WorkSubmitAdoptService workSubmitAdoptService;
@Autowired
private WorkUserService workUserService;
@Autowired
private StatisticsService statisticsService;
/** /**
* 功能: 查询某年月的填报情况 * 功能: 查询某年月的填报情况
...@@ -86,6 +92,20 @@ public class WorkCollectServiceImpl implements WorkCollectService { ...@@ -86,6 +92,20 @@ public class WorkCollectServiceImpl implements WorkCollectService {
rejectMonth = timeOrders.size(); rejectMonth = timeOrders.size();
} }
calendarMonthDto.setRejectMonth(rejectMonth); calendarMonthDto.setRejectMonth(rejectMonth);
WorkUser user = workUserService.getById(userId);
if (1 == user.getSubmitOrder()) {
List<Date> notCompletedByMonth = getNotCompletedByMonth(userId, workMonth);
StringBuffer sb = new StringBuffer();
if (!CollectionUtils.isEmpty(notCompletedByMonth)) {
notCompletedByMonth.forEach(notComplete -> sb.append(DateUtil.getDay(notComplete)).append("日,") );
sb.deleteCharAt(sb.length() - 1);
calendarMonthDto.setNotCompleteDay(sb.toString());
}
}else{
calendarMonthDto.setNotCompleteDay("0");
}
return calendarMonthDto; return calendarMonthDto;
} }
...@@ -164,6 +184,21 @@ public class WorkCollectServiceImpl implements WorkCollectService { ...@@ -164,6 +184,21 @@ public class WorkCollectServiceImpl implements WorkCollectService {
return workCollect; return workCollect;
} }
/**
* 获取当月已经填的并满8小时
* @param userId
* @param month
* @return
*/
public List<Date> getNotCompletedByMonth(Integer userId,Date month) {
boolean flag = DateUtil.isYearAndMonthEqual(month, new Date());
List<Date> workDays = statisticsService.currentMonthWorkDays(month, flag);
List<WorkCollect> completedCollect = workCollectMapper.getCompletedByUserIdAndMonth(userId, month);
List<Date> completedDays = new ArrayList<>();
completedCollect.forEach(collect -> completedDays.add(collect.getWorkDay()));
workDays.removeAll(completedDays);
return workDays;
}
/** /**
* 功能:修改某日的审批工时情况 * 功能:修改某日的审批工时情况
* *
......
...@@ -5,16 +5,23 @@ import cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM; ...@@ -5,16 +5,23 @@ import cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM;
import cn.wisenergy.common.utils.exception.BaseCustomException; import cn.wisenergy.common.utils.exception.BaseCustomException;
import cn.wisenergy.mapper.WorkDeptMapper; import cn.wisenergy.mapper.WorkDeptMapper;
import cn.wisenergy.model.app.WorkDept; import cn.wisenergy.model.app.WorkDept;
import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.dto.OrganizationStructureDto; import cn.wisenergy.model.dto.OrganizationStructureDto;
import cn.wisenergy.model.dto.ProjectDto;
import cn.wisenergy.model.dto.UserRoleLevelDto;
import cn.wisenergy.model.enums.LevelEnum;
import cn.wisenergy.model.enums.LevelRankEnum;
import cn.wisenergy.service.WorkCentreService;
import cn.wisenergy.service.WorkDeptService; import cn.wisenergy.service.WorkDeptService;
import cn.wisenergy.service.WorkProjectService;
import cn.wisenergy.service.WorkUserService;
import cn.wisenergy.service.utils.UserRoleLevelUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.util.HashMap; import java.util.*;
import java.util.List;
import java.util.Map;
/** /**
* <p> * <p>
...@@ -31,6 +38,18 @@ public class WorkDeptServiceImpl implements WorkDeptService { ...@@ -31,6 +38,18 @@ public class WorkDeptServiceImpl implements WorkDeptService {
@Autowired @Autowired
private WorkDeptMapper workDeptMapper; private WorkDeptMapper workDeptMapper;
@Autowired
private WorkDeptService workDeptService;
@Autowired
private WorkUserService workUserService;
@Autowired
private WorkCentreService workCentreService;
@Autowired
private WorkProjectService workProjectService;
@Override @Override
public WorkDept getById(Integer id) { public WorkDept getById(Integer id) {
log.info("WorkDeptServiceImpl[]getById[]input.param.id" + id); log.info("WorkDeptServiceImpl[]getById[]input.param.id" + id);
...@@ -100,4 +119,64 @@ public class WorkDeptServiceImpl implements WorkDeptService { ...@@ -100,4 +119,64 @@ public class WorkDeptServiceImpl implements WorkDeptService {
} }
return workDeptList; return workDeptList;
} }
/**
* 获取管理员所管理的项目的部门
*
* @param userId
* @return
*/
@Override
public List<WorkDept> getDeptOfProjectOfManager(Integer userId) {
log.info("WorkDeptServiceImpl[]getDeptOfProjectOfManager[]input.param.userId:{}" + userId);
if (null == userId) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
WorkUser user = workUserService.getById(userId);
if (null == user) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_USER_INFO_FAIL);
}
List<UserRoleLevelDto> roleUserLevel = UserRoleLevelUtils.getRoleUserLevel(userId);
if (!UserRoleLevelUtils.isManagerLevel(userId, LevelEnum.PROJECT_MANAGER.getLevelName())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
}
Set<WorkDept> depts = new LinkedHashSet<>();
for (UserRoleLevelDto userRoleLevelDto : roleUserLevel) {
if (userRoleLevelDto.getLevelName().equals(LevelEnum.PROJECT_MANAGER.getLevelName())) {
// 中心级
if (LevelRankEnum.CENTRAL_LEVEL.getRank().equals(userRoleLevelDto.getRank())) {
List<WorkDept> deptByCentreManager = workCentreService.getDeptByCentreManager(user);
if (!CollectionUtils.isEmpty(deptByCentreManager)) {
depts.addAll(deptByCentreManager);
}
}
// 部门级
if (LevelRankEnum.DEPARTMENT_LEVEL.getRank().equals(userRoleLevelDto.getRank())) {
WorkDept dept = workDeptService.getById(user.getDeptId());
if (null != dept) {
depts.add(dept);
}
}
// 项目级
if (LevelRankEnum.PROJECT_LEVEL.getRank().equals(userRoleLevelDto.getRank())) {
List<ProjectDto> projectIdByManager = workProjectService.getByManagerId(userId, null);
if (!CollectionUtils.isEmpty(projectIdByManager)) {
List<Integer> deptIds = new ArrayList<>();
projectIdByManager.forEach(project -> deptIds.add(project.getDeptId()));
List<WorkDept> workDepts = workDeptMapper.selectBatchIds(deptIds);
if (!CollectionUtils.isEmpty(workDepts)) {
depts.addAll(workDepts);
}
}
}
}
}
if (!CollectionUtils.isEmpty(depts)) {
List<WorkDept> workDepts = new ArrayList<>(depts);
Collections.sort(workDepts);
depts.clear();
return workDepts;
}
return null;
}
} }
...@@ -10,6 +10,7 @@ import cn.wisenergy.model.app.*; ...@@ -10,6 +10,7 @@ import cn.wisenergy.model.app.*;
import cn.wisenergy.model.dto.ManagerProjectsDto; import cn.wisenergy.model.dto.ManagerProjectsDto;
import cn.wisenergy.model.dto.ProjectDto; import cn.wisenergy.model.dto.ProjectDto;
import cn.wisenergy.model.dto.UserProjectDto; import cn.wisenergy.model.dto.UserProjectDto;
import cn.wisenergy.model.dto.UserRoleLevelDto;
import cn.wisenergy.model.enums.LevelEnum; import cn.wisenergy.model.enums.LevelEnum;
import cn.wisenergy.model.enums.LevelRankEnum; import cn.wisenergy.model.enums.LevelRankEnum;
import cn.wisenergy.model.enums.ManagerEnum; import cn.wisenergy.model.enums.ManagerEnum;
...@@ -30,10 +31,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -30,10 +31,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.*;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -69,6 +67,9 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -69,6 +67,9 @@ public class WorkProjectServiceImpl implements WorkProjectService {
@Autowired @Autowired
private WorkProjectChangeService workProjectChangeService; private WorkProjectChangeService workProjectChangeService;
@Autowired
private WorkCentreService workCentreService;
/** /**
* 功能:根据项目id获取项目 * 功能:根据项目id获取项目
...@@ -115,8 +116,8 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -115,8 +116,8 @@ public class WorkProjectServiceImpl implements WorkProjectService {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
} }
QueryWrapper<WorkProject> wrapper = new QueryWrapper<>(); QueryWrapper<WorkProject> wrapper = new QueryWrapper<>();
wrapper.eq("manager_id", id); wrapper.eq(id != null, "manager_id", id);
wrapper.eq("is_conclusion", isConclusion); wrapper.eq(isConclusion != null, "is_conclusion", isConclusion);
List<WorkProject> workProjects = workProjectMapper.selectList(wrapper); List<WorkProject> workProjects = workProjectMapper.selectList(wrapper);
if (!CollectionUtils.isEmpty(workProjects)) { if (!CollectionUtils.isEmpty(workProjects)) {
return workProjectToDto(workProjects); return workProjectToDto(workProjects);
...@@ -200,74 +201,41 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -200,74 +201,41 @@ public class WorkProjectServiceImpl implements WorkProjectService {
} }
// 判断用户权限 // 判断用户权限
List<Integer> roles = UserRoleLevelUtils.getRole(gmpv.getUserId()); if (!UserRoleLevelUtils.isManagerLevel(gmpv.getUserId(), LevelEnum.PROJECT_MANAGER.getLevelName())) {
if (roles.get(0).equals(ManagerEnum.NOT_MANAGER.getCode())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN); throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
} }
List<Integer> levelIds = UserRoleLevelUtils.getlevelIds(roles); List<UserRoleLevelDto> roleUserLevel = UserRoleLevelUtils.getRoleUserLevel(gmpv.getUserId());
if (CollectionUtils.isEmpty(levelIds)) { if (CollectionUtils.isEmpty(roleUserLevel)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.LEAVE_JOB_USER); throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
}
List<WorkLevel> workLevels = UserRoleLevelUtils.getlevelByIds(levelIds);
if (CollectionUtils.isEmpty(workLevels)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.LEAVE_JOB_USER);
} }
Integer rank = null; int index = 0;
Integer projectLevel = null; for (UserRoleLevelDto userRoleLevelDto : roleUserLevel) {
for (WorkLevel level : workLevels) { if (LevelEnum.PROJECT_MANAGER.getLevelName().equals(userRoleLevelDto.getLevelName())) {
if (LevelEnum.PROJECT_MANAGER.getLevelName().equals(level.getName())) { if (LevelRankEnum.PROJECT_LEVEL.getRank().equals(userRoleLevelDto.getRank())) {
if (null == rank) { index++;
rank = level.getRank();
}
if (LevelRankEnum.PROJECT_LEVEL.getRank().equals(level.getRank())) {
projectLevel = 1;
}
if (null != rank && rank < level.getRank()) {
rank = level.getRank();
} }
} }
} }
if (null == rank) { if (index == 0) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.LEAVE_JOB_USER); user.setId(null);
} }
int page = gmpv.getPage() == null ? 1 : gmpv.getPage(); int page = gmpv.getPage() == null ? 1 : gmpv.getPage();
int pageSize = gmpv.getPageSize() == null ? 10 : gmpv.getPageSize(); int pageSize = gmpv.getPageSize() == null ? 10 : gmpv.getPageSize();
Integer isConclusion = gmpv.getIsConclusion(); Integer isConclusion = gmpv.getIsConclusion();
List<ManagerProjectsDto> managerProjectsDto; List<ManagerProjectsDto> managerProjectsDto;
if (null == projectLevel) {
gmpv.setUserId(null);
}
// 中心级
if (rank.equals(LevelRankEnum.CENTRAL_LEVEL.getRank())) {
List<Integer> deptIds = new ArrayList<>();
Integer centreId = workDeptService.getById(user.getDeptId()).getCentreId();
WorkCentre workCentre = workCentreMapper.selectById(centreId);
HashMap<String, Object> map = new HashMap<>(5);
map.put("centre_id", workCentre.getId());
List<WorkDept> workDeptList = workDeptMapper.getDeptByCondition(map);
workDeptList.forEach(workDept -> deptIds.add(workDept.getId()));
PageHelper.startPage(page, pageSize);
managerProjectsDto = workProjectMapper.getManagerProjectsDto(gmpv.getUserId(), gmpv.getType(), isConclusion, deptIds);
return returnPageInfo(managerProjectsDto);
}
List<Integer> deptIds = new ArrayList<>();
if (null == gmpv.getDeptId()) {
List<WorkDept> workdepts = workDeptService.getDeptOfProjectOfManager(gmpv.getUserId());
workdepts.forEach(workdept->deptIds.add(workdept.getId()));
} else {
deptIds.add(gmpv.getDeptId());
}
PageHelper.startPage(page, pageSize); PageHelper.startPage(page, pageSize);
managerProjectsDto = workProjectMapper.getManagerProjectsDto(user.getId(), gmpv.getType(), isConclusion, deptIds,gmpv.getKey());
return returnPageInfo(managerProjectsDto);
// 部门级
if (rank.equals(LevelRankEnum.DEPARTMENT_LEVEL.getRank())) {
List<Integer> deptIds = new ArrayList<>();
deptIds.add(user.getDeptId());
managerProjectsDto = workProjectMapper.getManagerProjectsDto(gmpv.getUserId(), gmpv.getType(), isConclusion, deptIds);
return returnPageInfo(managerProjectsDto);
}
// 项目级
if (rank.equals(LevelRankEnum.PROJECT_LEVEL.getRank())) {
managerProjectsDto = workProjectMapper.getManagerProjectsDto(gmpv.getUserId(), gmpv.getType(), isConclusion, null);
return returnPageInfo(managerProjectsDto);
}
throw new BaseCustomException(BASE_RESP_CODE_ENUM.LEAVE_JOB_USER);
} }
/** /**
......
...@@ -208,9 +208,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -208,9 +208,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 2.每天工时累加不得超过八小时 // 2.每天工时累加不得超过八小时
timeNotEight(workTimeOrders); timeNotEight(workTimeOrders);
int totalTime = 0; int totalTime = 0;
List<WorkTimeOrder> addList = new ArrayList<>(); List<WorkTimeOrder> addList = new ArrayList<>(8);
List<WorkType> workTypes = workTypeService.getAll(null); List<WorkType> workTypes = workTypeService.getAll(null);
List<Integer> notDeleteOrder = new ArrayList<>(); List<Integer> notDeleteOrder = new ArrayList<>(8);
// 3.验证填报类型项目是否已经结项 // 3.验证填报类型项目是否已经结项
orderIsEnd(workTimeOrders, workTypes); orderIsEnd(workTimeOrders, workTypes);
...@@ -419,7 +419,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -419,7 +419,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 封装可填报的数据 // 封装可填报的数据
private List<AppletsPendApprovalDto> getDto(List<WorkTimeOrder> workTimeOrders) { private List<AppletsPendApprovalDto> getDto(List<WorkTimeOrder> workTimeOrders) {
List<AppletsPendApprovalDto> appletsPendApprovalDtos = new ArrayList<>(); List<AppletsPendApprovalDto> appletsPendApprovalDtos = new ArrayList<>(10);
Date date = workTimeOrders.get(0).getWorkDay(); Date date = workTimeOrders.get(0).getWorkDay();
AppletsPendApprovalDto dto = new AppletsPendApprovalDto(); AppletsPendApprovalDto dto = new AppletsPendApprovalDto();
dto.setWorkDay(date); dto.setWorkDay(date);
......
...@@ -11,6 +11,7 @@ import cn.wisenergy.model.app.*; ...@@ -11,6 +11,7 @@ import cn.wisenergy.model.app.*;
import cn.wisenergy.model.dto.*; import cn.wisenergy.model.dto.*;
import cn.wisenergy.model.enums.LevelEnum; import cn.wisenergy.model.enums.LevelEnum;
import cn.wisenergy.model.enums.ManagerEnum; import cn.wisenergy.model.enums.ManagerEnum;
import cn.wisenergy.model.vo.GetUserListVo;
import cn.wisenergy.service.WorkCentreService; import cn.wisenergy.service.WorkCentreService;
import cn.wisenergy.service.WorkDeptService; import cn.wisenergy.service.WorkDeptService;
import cn.wisenergy.service.WorkSubmitAdoptService; import cn.wisenergy.service.WorkSubmitAdoptService;
...@@ -173,16 +174,16 @@ public class WorkUserServiceImpl implements WorkUserService { ...@@ -173,16 +174,16 @@ public class WorkUserServiceImpl implements WorkUserService {
@Override @Override
public AllRoleAndUserRoleDto getUserRoleDto(Integer userId, Integer page, Integer pageSize, Integer status, String key) { public AllRoleAndUserRoleDto getUserRoleDto(GetUserListVo getUserListVo) {
log.info("WorkUserServiceImpl[]getUserRoleDto[]input.param.userId:{},page:{},pageSize:{},status:{},key:{}" + userId, page, pageSize, status, key); log.info("WorkUserServiceImpl[]getUserRoleDto[]input.param.getUserListVo:{}" + getUserListVo);
if (!UserRoleLevelUtils.isManagerLevel(userId, LevelEnum.ACCOUNTMANAGEMENT.getLevelName())) { if (!UserRoleLevelUtils.isManagerLevel(getUserListVo.getUserId(), LevelEnum.ACCOUNTMANAGEMENT.getLevelName())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN); throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
} }
page = page == null ? 1 : page; int page = getUserListVo.getPage() == null ? 1 : getUserListVo.getPage();
pageSize = pageSize == null ? 10 : pageSize; int pageSize = getUserListVo.getPageSize() == null ? 10 : getUserListVo.getPageSize();
Page<UserRoleDto> startPage = PageHelper.startPage(page, pageSize); Page<UserRoleDto> startPage = PageHelper.startPage(page, pageSize);
List<UserRoleDto> userRoleDtos = workUserMapper.getUserRoleDto(status, key); List<UserRoleDto> userRoleDtos = workUserMapper.getUserRoleDto(getUserListVo.getStatus(), getUserListVo.getKey(),getUserListVo.getDeptId(),getUserListVo.getRoleId());
if (CollectionUtils.isEmpty(userRoleDtos)) { if (CollectionUtils.isEmpty(userRoleDtos)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_DATA_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_DATA_IS_NULL);
} }
...@@ -201,7 +202,6 @@ public class WorkUserServiceImpl implements WorkUserService { ...@@ -201,7 +202,6 @@ public class WorkUserServiceImpl implements WorkUserService {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_DATA_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_DATA_IS_NULL);
} }
AllRoleAndUserRoleDto allRoleAndUserRoleDto = new AllRoleAndUserRoleDto(); AllRoleAndUserRoleDto allRoleAndUserRoleDto = new AllRoleAndUserRoleDto();
allRoleAndUserRoleDto.setPageInfo(pageInfo); allRoleAndUserRoleDto.setPageInfo(pageInfo);
allRoleAndUserRoleDto.setWorkRoles(allWorkRole); allRoleAndUserRoleDto.setWorkRoles(allWorkRole);
...@@ -210,8 +210,8 @@ public class WorkUserServiceImpl implements WorkUserService { ...@@ -210,8 +210,8 @@ public class WorkUserServiceImpl implements WorkUserService {
@Transactional @Transactional
@Override @Override
public Boolean modifyRole(Integer userId, List<Integer> roleIds, Integer status) { public Boolean modifyRole(Integer userId, List<Integer> roleIds, Integer status,Integer submitOrder) {
log.info("WorkUserServiceImpl[]modifyRole[].input.param.userId:{},roleIds:{},status:{}" + userId, roleIds, status); log.info("WorkUserServiceImpl[]modifyRole[].input.param.userId:{},roleIds:{},status:{},submitOrder:{}" + userId, roleIds, status,submitOrder);
PageHelper.clearPage(); PageHelper.clearPage();
if (CollectionUtils.isEmpty(roleIds)) { if (CollectionUtils.isEmpty(roleIds)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.CHOOSEATLEASTONEROLE); throw new BaseCustomException(BASE_RESP_CODE_ENUM.CHOOSEATLEASTONEROLE);
...@@ -282,6 +282,7 @@ public class WorkUserServiceImpl implements WorkUserService { ...@@ -282,6 +282,7 @@ public class WorkUserServiceImpl implements WorkUserService {
workCentreService.updateById(centre); workCentreService.updateById(centre);
} }
} }
workUserRoleMapper.insertBatch(userId, roleIds); workUserRoleMapper.insertBatch(userId, roleIds);
return true; return true;
} }
......
...@@ -8,6 +8,7 @@ import cn.wisenergy.model.app.WorkSubmitAdopt; ...@@ -8,6 +8,7 @@ import cn.wisenergy.model.app.WorkSubmitAdopt;
import cn.wisenergy.model.app.WorkType; import cn.wisenergy.model.app.WorkType;
import cn.wisenergy.model.dto.AllRoleAndUserRoleDto; import cn.wisenergy.model.dto.AllRoleAndUserRoleDto;
import cn.wisenergy.model.dto.HolidayAndAutoDto; import cn.wisenergy.model.dto.HolidayAndAutoDto;
import cn.wisenergy.model.vo.GetUserListVo;
import cn.wisenergy.service.WorkHolidayService; import cn.wisenergy.service.WorkHolidayService;
import cn.wisenergy.service.WorkSubmitAdoptService; import cn.wisenergy.service.WorkSubmitAdoptService;
import cn.wisenergy.service.WorkTypeService; import cn.wisenergy.service.WorkTypeService;
...@@ -50,7 +51,7 @@ public class SystemController extends BaseController { ...@@ -50,7 +51,7 @@ public class SystemController extends BaseController {
@ApiOperation(value = "添加和编辑工作日历", notes = "添加和编辑工作日历", httpMethod = "PUT") @ApiOperation(value = "添加和编辑工作日历", notes = "添加和编辑工作日历", httpMethod = "PUT")
@ApiImplicitParam(name = "workHoliday", value = "节假日实体类",dataType = "WorkHoliday",required = true) @ApiImplicitParam(name = "workHoliday", value = "节假日实体类", dataType = "WorkHoliday", required = true)
@PutMapping("/addAndModifyHoliday") @PutMapping("/addAndModifyHoliday")
public Result<Boolean> addAndModifyHoliday(@RequestBody WorkHoliday workHoliday) { public Result<Boolean> addAndModifyHoliday(@RequestBody WorkHoliday workHoliday) {
log.info("SystemController[]modifyHoliday[]input.param.workHoliday:{}" + workHoliday); log.info("SystemController[]modifyHoliday[]input.param.workHoliday:{}" + workHoliday);
...@@ -59,7 +60,7 @@ public class SystemController extends BaseController { ...@@ -59,7 +60,7 @@ public class SystemController extends BaseController {
} }
@ApiOperation(value = "删除工作日历", notes = "删除工作日历", httpMethod = "DELETE") @ApiOperation(value = "删除工作日历", notes = "删除工作日历", httpMethod = "DELETE")
@ApiImplicitParam(name = "id", value = "节假日id",dataType = "int",required = true) @ApiImplicitParam(name = "id", value = "节假日id", dataType = "int", required = true)
@DeleteMapping("/deleteHoliday") @DeleteMapping("/deleteHoliday")
public Result<Boolean> deleteHoliday(Integer id) { public Result<Boolean> deleteHoliday(Integer id) {
log.info("SystemController[]deleteHoliday[]input.param.id:{}" + id); log.info("SystemController[]deleteHoliday[]input.param.id:{}" + id);
...@@ -77,7 +78,7 @@ public class SystemController extends BaseController { ...@@ -77,7 +78,7 @@ public class SystemController extends BaseController {
} }
@ApiOperation(value = "修改审批时限", notes = "修改审批时限", httpMethod = "PUT") @ApiOperation(value = "修改审批时限", notes = "修改审批时限", httpMethod = "PUT")
@ApiImplicitParam(name = "workSubmitAdopt",value = "审批时限",dataType ="WorkSubmitAdopt", required = true) @ApiImplicitParam(name = "workSubmitAdopt", value = "审批时限", dataType = "WorkSubmitAdopt", required = true)
@PutMapping("/modifyAuto") @PutMapping("/modifyAuto")
public Result<Boolean> modifyAuto(@RequestBody WorkSubmitAdopt workSubmitAdopt) { public Result<Boolean> modifyAuto(@RequestBody WorkSubmitAdopt workSubmitAdopt) {
log.info("SystemController[]modifyAuto[]input.param.workSubmitAdopt:{}" + workSubmitAdopt); log.info("SystemController[]modifyAuto[]input.param.workSubmitAdopt:{}" + workSubmitAdopt);
...@@ -85,43 +86,38 @@ public class SystemController extends BaseController { ...@@ -85,43 +86,38 @@ public class SystemController extends BaseController {
return getResult(aBoolean); return getResult(aBoolean);
} }
@ApiOperation(value = "获取账号列表", notes = "获取账号列表", httpMethod = "GET") @ApiOperation(value = "获取账号列表", notes = "获取账号列表", httpMethod = "POST")
@ApiImplicitParams({ @ApiImplicitParam(name = "getUserListVo", value = "获取账号列表Vo", dataType = "GetUserListVo", required = true)
@ApiImplicitParam(name = "userId",value = "管理员id",dataType = "int",required = true), @PostMapping("/getAllRole")
@ApiImplicitParam(name = "page", value = "当前页", dataType = "int",required = true), public Result<AllRoleAndUserRoleDto> getAllRole(@RequestBody GetUserListVo getUserListVo) {
@ApiImplicitParam(name = "pageSize",value = "记录数",dataType = "int",required = true), log.info("SystemController[]getAllRole[]input.param.getUserListVo" + getUserListVo);
@ApiImplicitParam(name = "status",value = "账号状态",dataType = "int"), AllRoleAndUserRoleDto allRoleAndUserRoleDto = workUserService.getUserRoleDto(getUserListVo);
@ApiImplicitParam(name = "key",value = "模糊搜索",dataType = "string")
})
@GetMapping("/getAllRole")
public Result<AllRoleAndUserRoleDto> getAllRole(Integer userId,Integer page,Integer pageSize,Integer status,String key) {
log.info("SystemController[]getAllRole[]input.param.userId:{},page:{},pageSize:{},status:{},key:{}" + userId, page, pageSize,status,key);
AllRoleAndUserRoleDto allRoleAndUserRoleDto = workUserService.getUserRoleDto(userId,page,pageSize,status,key);
return getResult(allRoleAndUserRoleDto); return getResult(allRoleAndUserRoleDto);
} }
@ApiOperation(value = "设置角色", notes = "设置角色", httpMethod = "PUT") @ApiOperation(value = "设置角色", notes = "设置角色", httpMethod = "PUT")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "userId",value = "用户id",dataType = "int",required = true), @ApiImplicitParam(name = "userId", value = "用户id", dataType = "int", required = true),
@ApiImplicitParam(name = "roleIds", value = "角色ids", dataType = "String", required = true), @ApiImplicitParam(name = "roleIds", value = "角色ids", dataType = "String", required = true),
@ApiImplicitParam(name = "status",value = "用户状态",dataType = "int",required = true) @ApiImplicitParam(name = "status", value = "用户状态", dataType = "int", required = true),
@ApiImplicitParam(name = "submitOrder",value = "小程序是否需要统计当月填报",dataType = "int")
}) })
@PutMapping("/modifyRole") @PutMapping("/modifyRole")
public Result<Boolean> modifyRole(Integer userId,String roleIds,Integer status) { public Result<Boolean> modifyRole(Integer userId, String roleIds, Integer status,Integer submitOrder) {
log.info("SystemController[]modifyRole[]input.param.userId:{},roleIds:{},status:{}" + userId, roleIds,status); log.info("SystemController[]modifyRole[]input.param.userId:{},roleIds:{},status:{},submitOrder:{}" + userId, roleIds, status,submitOrder);
if (null == userId || StringUtils.isBlank(roleIds) || null == status) { if (null == userId || StringUtils.isBlank(roleIds) || null == status) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
} }
String[] split = roleIds.split("\\,"); String[] split = roleIds.split("\\,");
Integer[] newIds = (Integer[]) ConvertUtils.convert(split, Integer.class); Integer[] newIds = (Integer[]) ConvertUtils.convert(split, Integer.class);
List<Integer> lists = new ArrayList<>(Arrays.asList(newIds)); List<Integer> lists = new ArrayList<>(Arrays.asList(newIds));
Boolean aBoolean = workUserService.modifyRole(userId, lists,status); Boolean aBoolean = workUserService.modifyRole(userId, lists, status,submitOrder);
return getResult(aBoolean); return getResult(aBoolean);
} }
@ApiOperation(value = "添加和修改工时类型", notes = "添加和修改工时类型", httpMethod = "PUT") @ApiOperation(value = "添加和修改工时类型", notes = "添加和修改工时类型", httpMethod = "PUT")
@ApiImplicitParam(name = "workType",value = "工时类型",dataType ="WorkType", required = true) @ApiImplicitParam(name = "workType", value = "工时类型", dataType = "WorkType", required = true)
@PutMapping("/addAndModifyWorkType") @PutMapping("/addAndModifyWorkType")
public Result<Boolean> addAndModifyWorkType(@RequestBody WorkType workType) { public Result<Boolean> addAndModifyWorkType(@RequestBody WorkType workType) {
log.info("SystemController[]modifyRole[]input.param.workType:{}" + workType); log.info("SystemController[]modifyRole[]input.param.workType:{}" + workType);
...@@ -131,18 +127,18 @@ public class SystemController extends BaseController { ...@@ -131,18 +127,18 @@ public class SystemController extends BaseController {
@ApiOperation(value = "修改工时类型状态", notes = "修改工时类型状态", httpMethod = "PUT") @ApiOperation(value = "修改工时类型状态", notes = "修改工时类型状态", httpMethod = "PUT")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "id",value = "类型id",dataType ="int", required = true), @ApiImplicitParam(name = "id", value = "类型id", dataType = "int", required = true),
@ApiImplicitParam(name = "status",value = "状态:0无效 1正常",dataType ="int", required = true) @ApiImplicitParam(name = "status", value = "状态:0无效 1正常", dataType = "int", required = true)
}) })
@PutMapping("/modifyStatus") @PutMapping("/modifyStatus")
public Result<Boolean> modifyStatusById(Integer id,Integer status) { public Result<Boolean> modifyStatusById(Integer id, Integer status) {
log.info("SystemController[]modifyStatusById[]input.param.id:{},status:{}" + id,status); log.info("SystemController[]modifyStatusById[]input.param.id:{},status:{}" + id, status);
Boolean aBoolean = workTypeService.modifyStatusById(id,status); Boolean aBoolean = workTypeService.modifyStatusById(id, status);
return getResult(aBoolean); return getResult(aBoolean);
} }
@ApiOperation(value = "重置用户密码", notes = "重置用户密码", httpMethod = "GET") @ApiOperation(value = "重置用户密码", notes = "重置用户密码", httpMethod = "GET")
@ApiImplicitParam(name = "userId",value = "用户id",dataType ="int", required = true) @ApiImplicitParam(name = "userId", value = "用户id", dataType = "int", required = true)
@GetMapping("/reSetUserPassword") @GetMapping("/reSetUserPassword")
public Result<Boolean> reSetUserPassword(Integer userId) { public Result<Boolean> reSetUserPassword(Integer userId) {
log.info("SystemController[]reSetUserPassword[]input.param.userId:{}" + userId); log.info("SystemController[]reSetUserPassword[]input.param.userId:{}" + userId);
......
package cn.wisenergy.web.admin.controller.app; package cn.wisenergy.web.admin.controller.app;
import cn.wisenergy.common.utils.exception.Result; import cn.wisenergy.common.utils.exception.Result;
import cn.wisenergy.model.app.WorkDept;
import cn.wisenergy.model.app.WorkProjectChange; import cn.wisenergy.model.app.WorkProjectChange;
import cn.wisenergy.model.vo.CreateProjectVo; import cn.wisenergy.model.vo.CreateProjectVo;
import cn.wisenergy.model.vo.GetManagerProjectsVo; import cn.wisenergy.model.vo.GetManagerProjectsVo;
import cn.wisenergy.model.vo.ModifyProjectVo; import cn.wisenergy.model.vo.ModifyProjectVo;
import cn.wisenergy.service.WorkDeptService;
import cn.wisenergy.service.WorkProjectChangeService; import cn.wisenergy.service.WorkProjectChangeService;
import cn.wisenergy.service.WorkProjectService; import cn.wisenergy.service.WorkProjectService;
import cn.wisenergy.web.admin.controller.common.BaseController; import cn.wisenergy.web.admin.controller.common.BaseController;
...@@ -33,6 +35,9 @@ public class WorkProjectController extends BaseController { ...@@ -33,6 +35,9 @@ public class WorkProjectController extends BaseController {
@Autowired @Autowired
private WorkProjectService workProjectService; private WorkProjectService workProjectService;
@Autowired
private WorkDeptService workDeptService;
@Autowired @Autowired
private WorkProjectChangeService workProjectChangeService; private WorkProjectChangeService workProjectChangeService;
...@@ -85,5 +90,14 @@ public class WorkProjectController extends BaseController { ...@@ -85,5 +90,14 @@ public class WorkProjectController extends BaseController {
return getResult(aBoolean); return getResult(aBoolean);
} }
@ApiOperation(value = "获取所管理项目的部门", notes = "获取所管理项目的部门")
@ApiImplicitParam(name = "userId", value = "管理员id")
@GetMapping("/getDeptOfProject")
public Result<List<WorkDept>> getDeptOfProject(Integer userId) {
log.info("WorkProjectController[]getDeptOfProject[]input.param.userId" + userId);
List<WorkDept> deptOfProjectOfManager = workDeptService.getDeptOfProjectOfManager(userId);
return getResult(deptOfProjectOfManager);
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment