浏览代码

依斯呗 分组耗用图问题修改
FTE报表现在部门筛选

Min 9 月之前
父节点
当前提交
fc9021aef8

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ProjectController.java

@@ -1263,8 +1263,8 @@ public class ProjectController {
 
     //FTE报表
     @RequestMapping("/getFTEData")
-    public HttpRespMsg getFTEData(@RequestParam Integer pageIndex, @RequestParam Integer pageSize,String monthStart,String monthEnd,String area,String userId,String sortProp, Integer sortOrder,HttpServletRequest request){
-        return projectService.getFTEData(pageIndex,pageSize,monthStart,monthEnd,area,userId,sortProp,sortOrder,request);
+    public HttpRespMsg getFTEData(@RequestParam Integer pageIndex, @RequestParam Integer pageSize,String monthStart,String monthEnd,String area,String userId,String sortProp, Integer sortOrder,Integer departmentId,HttpServletRequest request){
+        return projectService.getFTEData(pageIndex,pageSize,monthStart,monthEnd,area,userId,sortProp,sortOrder,departmentId,request);
     }
 
     //导出FTE报表

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ProjectMapper.java

@@ -161,7 +161,7 @@ public interface ProjectMapper extends BaseMapper<Project> {
 
     List<Project> selectNearProject(String userId);
 
-    List<Map<String, Object>> getFTEData(Integer companyId, String startDate, String endDate, Integer start, Integer size, String area,String userId,String sortProp, Integer sortOrder, List<Integer> branchDepartment, List<Integer> deptIds);
+    List<Map<String, Object>> getFTEData(Integer companyId, String startDate, String endDate, Integer start, Integer size, String area,String userId,String sortProp, Integer sortOrder, List<Integer> branchDepartment, List<Integer> deptIds,Integer departmentId);
 
     List<Map<String, Object>> getTimeCostByToken(Integer companyId, String startDate, String endDate);
 
@@ -174,7 +174,7 @@ public interface ProjectMapper extends BaseMapper<Project> {
 
     Long userProjectProcessCount(Integer deptId, String userId, Integer projectId, Integer companyId,@Param("list") List<Integer> deptIds,@Param("listSecond") List<Integer> regularDeptIds);
 
-    List<Map<String, Object>> groupExpendProcessList(String userId, Integer companyId,String startDate,String endDate,@Param("list") List<Integer> deptIds,@Param("listSecond") List<Integer> regularDeptIds);
+    List<Map<String, Object>> groupExpendProcessList(String userId, Integer companyId,String startDate,String endDate,@Param("list") List<Integer> deptIds,@Param("listSecond") List<Integer> regularDeptIds,@Param("listFour") List<Integer> projectIds);
 
     List<Map<String, Object>> projectExpendProcessList(String startDate,String endDate,Integer projectId, Integer categoryId, String userId, Integer companyId, @Param("list") List<Integer> deptIds, Integer start, Integer size);
 

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ProjectService.java

@@ -245,7 +245,7 @@ public interface ProjectService extends IService<Project> {
 
     HttpRespMsg nearProject(HttpServletRequest request);
 
-    HttpRespMsg getFTEData(Integer pageIndex, Integer pageSize,String monthStart,String monthEnd, String area,String userId,String sortProp, Integer sortOrder, HttpServletRequest request);
+    HttpRespMsg getFTEData(Integer pageIndex, Integer pageSize,String monthStart,String monthEnd, String area,String userId,String sortProp, Integer sortOrder,Integer departmentId,HttpServletRequest request);
 
     HttpRespMsg exportFTEData(String monthStart,String monthEnd, String area, HttpServletRequest request);
 

+ 9 - 8
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -11874,7 +11874,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
 
     //获取FTE报表数据
     @Override
-    public HttpRespMsg getFTEData(Integer pageIndex, Integer pageSize,String monthStart,String monthEnd, String area,String userId,String sortProp, Integer sortOrder, HttpServletRequest request) {
+    public HttpRespMsg getFTEData(Integer pageIndex, Integer pageSize,String monthStart,String monthEnd, String area,String userId,String sortProp, Integer sortOrder,Integer departmentId, HttpServletRequest request) {
         HttpRespMsg httpRespMsg =new HttpRespMsg();
         User targetUser = userMapper.selectById(request.getHeader("token"));
         List<SysRichFunction> functionAllList = sysFunctionMapper.getRoleFunctions(targetUser.getRoleId(), "全部部门FTE报表");
@@ -11912,10 +11912,10 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         if(pageIndex!=null&&pageSize!=null){
             Integer size=pageSize;
             Integer start=(pageIndex-1)*size;
-            resultList=projectMapper.getFTEData(targetUser.getCompanyId(),startDate,endDate,start,size,area,userId,sortProp,sortOrder,null,deptIds);
-            total=projectMapper.getFTEData(targetUser.getCompanyId(),startDate,endDate,null,null,area,userId,sortProp,sortOrder,null,deptIds).size();
+            resultList=projectMapper.getFTEData(targetUser.getCompanyId(),startDate,endDate,start,size,area,userId,sortProp,sortOrder,null,deptIds,departmentId);
+            total=projectMapper.getFTEData(targetUser.getCompanyId(),startDate,endDate,null,null,area,userId,sortProp,sortOrder,null,deptIds,departmentId).size();
         }else{
-            resultList=projectMapper.getFTEData(targetUser.getCompanyId(),startDate,endDate,null,null,area,userId,sortProp,sortOrder,null,deptIds);
+            resultList=projectMapper.getFTEData(targetUser.getCompanyId(),startDate,endDate,null,null,area,userId,sortProp,sortOrder,null,deptIds,departmentId);
         }
         //固定月工时数 163.125
         double regularMonthTime=163.125;
@@ -11952,7 +11952,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         if (userCustoms.size() != 0){
             customName = userCustoms.get(0).getName();
         }
-        HttpRespMsg fteData = getFTEData(null, null, monthStart,monthEnd, area,null,null,null, request);
+        HttpRespMsg fteData = getFTEData(null, null, monthStart,monthEnd, area,null,null,null,null,request);
         LocalDate timeStart = LocalDate.parse(monthStart, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
         LocalDate timeEnd = LocalDate.parse(monthEnd, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
         timeStart=timeStart.with(TemporalAdjusters.firstDayOfMonth());
@@ -13381,6 +13381,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         List<Project> projectList = projectIPage.getRecords();
         //是否具有查看全部数据的权限
         //针对依斯呗 指定部门
+        List<Integer> projectIdList = projectList.stream().map(Project::getId).distinct().collect(Collectors.toList());
         List<Integer> regularDeptIds=new ArrayList<>();
         if(user.getCompanyId()==3092){
             List<String> nameString=new ArrayList<>();
@@ -13398,7 +13399,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         if(!viewAll){
             if(!incharger){
                 //只能查看本人的数据
-                resultList=projectMapper.groupExpendProcessList(user.getId(),companyId,startDate,endDate,null,null);
+                resultList=projectMapper.groupExpendProcessList(user.getId(),companyId,startDate,endDate,null,null,projectIdList);
             }else {
                 List<Department> departmentList = departmentMapper.selectList(new LambdaQueryWrapper<Department>().select(Department::getDepartmentId).eq(Department::getManagerId, user.getId()));
                 List<DepartmentOtherManager> departmentOtherManagerList = departmentOtherManagerMapper.selectList(new QueryWrapper<DepartmentOtherManager>().eq("other_manager_id", user.getId()));
@@ -13412,10 +13413,10 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                     List<Integer> branchDepartment = getBranchDepartment(integer, allDeptList);
                     deptIds.addAll(branchDepartment);
                 }
-                resultList=projectMapper.groupExpendProcessList(null,companyId,startDate,endDate,deptIds,regularDeptIds);
+                resultList=projectMapper.groupExpendProcessList(null,companyId,startDate,endDate,deptIds,regularDeptIds,projectIdList);
             }
         }else {
-            resultList=projectMapper.groupExpendProcessList(null,companyId,startDate,endDate,null,regularDeptIds);
+            resultList=projectMapper.groupExpendProcessList(null,companyId,startDate,endDate,null,regularDeptIds,projectIdList);
         }
         List<Department> departmentList = departmentMapper.selectList(new LambdaQueryWrapper<Department>().eq(Department::getCompanyId, companyId));
         List<Map<String,Object>> itemList=new ArrayList<>();

+ 10 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ProjectMapper.xml

@@ -1770,6 +1770,9 @@
                 #{item}
             </foreach>
         </if>
+        <if test="departmentId!=null">
+            and u.department_id=#{departmentId}
+        </if>
         <if test="sortProp!=null and sortProp!=''">
             <choose>
                 <when test="sortOrder==0">
@@ -1922,6 +1925,12 @@
         </if>
         AND project_id IS NOT NULL AND company_id=#{companyId} GROUP BY group_id,dept_id) r ON r.group_id=tg.`id` and r.dept_id=u.department_id
         WHERE p.company_id=#{companyId}
+        <if test="listFour!=null and listFour.size()>0">
+            AND tg.project_id in
+            <foreach collection="listFour" separator="," open="(" close=")" item="item">
+                #{item}
+            </foreach>
+        </if>
         AND tg.name IN ('生产部电气','生产部车间','工程部现场安装施工','工程部配合调试','研发部工艺设计','研发部结构设计','研发部BIM设计','研发部电气设计','研发部工艺调试验收','研发部电气调试验收')
         <if test="userId!=null and userId!=''">
             and t.executor_id=#{userId}
@@ -1946,7 +1955,7 @@
         <if test="startDate!=null and startDate!='' and endDate!=null and endDate!=''">
             AND create_date BETWEEN #{startDate} AND #{endDate}
         </if>
-        AND project_id IS NOT NULL AND company_id=#{companyId} GROUP BY group_id,dept_id) r ON r.group_id=tg.`id`
+        AND project_id IS NOT NULL AND company_id=#{companyId} GROUP BY group_id) r ON r.group_id=tg.`id`
         WHERE u.company_id=#{companyId}
         <if test="listThird!=null and listThird.size()>0">
             AND tg.project_id in

+ 4 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/corpreport/list.vue

@@ -1742,7 +1742,7 @@ export default {
         months: [14, 15], // 月份筛选条件 (等于)
         monthRange: [19], // 月份区间筛选条件 (等于)
         staff: [6, 8, 9, 19, 11, 14, 18, 23, 25, 26,28], // 人员筛选条件 (等于)
-        departments: [14, 15, 23,21,26,28], // 部门筛选条件 (等于)
+        departments: [14, 15, 23,21,26,28,19], // 部门筛选条件 (等于)
         timePeriod: [5, 6, 8, 9, 10, 11, 12, 16, 17, 18, 20, 21, 22, 24, 25, 26,28], // 时间段筛选条件 (等于)
       },
       efficentList:[],
@@ -2835,6 +2835,9 @@ export default {
         pageIndex: this.page,
         pageSize: this.size
       }
+      if(this.departmentIdArray.length != 0){
+        parameter.departmentId = this.departmentIdArray[this.departmentIdArray.length - 1]
+      }
       if(this.sortOrder){
           if(this.sortProp == 'userName'){
               parameter.sortProp = "id"