浏览代码

工时成本统计导出报表增加项目分类 工时报告->导出日报增加项目分类一列

yurk 3 年之前
父节点
当前提交
4043c70d01

+ 10 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/CustomerInfoController.java

@@ -19,6 +19,7 @@ import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -48,6 +49,15 @@ public class CustomerInfoController {
         HttpRespMsg msg = new HttpRespMsg();
         String token = request.getHeader("TOKEN");
         User user = userMapper.selectById(token);
+        List<CustomerInfo> customerInfoMapperAll = customerInfoMapper.getAll(user.getCompanyId());
+        List<String> nameList=new ArrayList<>();
+        customerInfoMapperAll.forEach(cu->{
+            nameList.add(cu.getCustomerName());
+        });
+        if(nameList.contains(info.getCustomerName())){
+            msg.setError("客户名称重复");
+            return msg;
+        }
         if (info.getId() == null) {
             info.setCompanyId(user.getCompanyId());
             customerInfoMapper.insert(info);

+ 9 - 11
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportExtraDegreeController.java

@@ -2,33 +2,22 @@ package com.management.platform.controller;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.management.platform.entity.CustomerInfo;
 import com.management.platform.entity.Project;
 import com.management.platform.entity.ReportExtraDegree;
 import com.management.platform.entity.User;
-import com.management.platform.mapper.CustomerInfoMapper;
 import com.management.platform.mapper.ProjectMapper;
 import com.management.platform.mapper.ReportExtraDegreeMapper;
 import com.management.platform.mapper.UserMapper;
 import com.management.platform.service.ProjectService;
-import com.management.platform.service.ReportExtraDegreeService;
-import com.management.platform.service.ReportService;
 import com.management.platform.util.HttpRespMsg;
 import org.apache.poi.util.StringUtil;
-import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 import java.util.stream.Collectors;
 
 /**
@@ -64,6 +53,15 @@ public class ReportExtraDegreeController {
         HttpRespMsg msg = new HttpRespMsg();
         String token = request.getHeader("TOKEN");
         User user = userMapper.selectById(token);
+        List<ReportExtraDegree> reportExtraDegreeMapperAll = reportExtraDegreeMapper.getAll(user.getCompanyId());
+        List<String> nameList=new ArrayList<>();
+        reportExtraDegreeMapperAll.forEach(re->{
+            nameList.add(re.getName());
+        });
+        if(nameList.contains(info.getName())){
+            msg.setError("客户名称重复");
+            return msg;
+        }
         if (info.getId() == null) {
             info.setCompanyId(user.getCompanyId());
             reportExtraDegreeMapper.insert(info);

+ 6 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/TaskGroupController.java

@@ -6,11 +6,13 @@ import com.management.platform.entity.*;
 import com.management.platform.mapper.GroupParticipatorMapper;
 import com.management.platform.mapper.ProjectMapper;
 import com.management.platform.mapper.UserMapper;
-import com.management.platform.service.*;
+import com.management.platform.service.GroupTmpstagesService;
+import com.management.platform.service.StagesService;
+import com.management.platform.service.TaskGroupService;
+import com.management.platform.service.TaskService;
 import com.management.platform.util.HttpRespMsg;
 import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.RequestMapping;
-
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
@@ -185,8 +187,8 @@ public class TaskGroupController {
 
 
     @RequestMapping("/createFromTemplate")
-    public HttpRespMsg createFromTemplate(GroupTemplate template, Integer projectId) {
-        return taskGroupService.createFromTemplate(template, projectId);
+    public HttpRespMsg createFromTemplate(String templateJson, Integer projectId) {
+        return taskGroupService.createFromTemplate(templateJson, projectId);
     }
 
 

+ 2 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/TaskGroupService.java

@@ -1,8 +1,7 @@
 package com.management.platform.service;
 
-import com.management.platform.entity.GroupTemplate;
-import com.management.platform.entity.TaskGroup;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.management.platform.entity.TaskGroup;
 import com.management.platform.util.HttpRespMsg;
 
 /**
@@ -17,5 +16,5 @@ public interface TaskGroupService extends IService<TaskGroup> {
 
     void saveGroupIncharger(TaskGroup taskGroup);
 
-    HttpRespMsg createFromTemplate(GroupTemplate template, Integer projectId);
+    HttpRespMsg createFromTemplate(String templateJson, Integer projectId);
 }

+ 1 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -181,6 +181,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
             if (category != null) {
                 queryWrapper.eq("category", category);
             }
+            queryWrapper.orderByDesc("is_public");
             IPage<Project> projectIPage = projectMapper.selectPage(new Page<>(pageIndex, pageSize),
                     queryWrapper);
             List<Project> projectList = projectIPage.getRecords();

+ 43 - 36
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/TaskGroupServiceImpl.java

@@ -1,5 +1,6 @@
 package com.management.platform.service.impl;
 
+import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.management.platform.entity.*;
 import com.management.platform.mapper.*;
@@ -56,48 +57,54 @@ public class TaskGroupServiceImpl extends ServiceImpl<TaskGroupMapper, TaskGroup
 
     @Override
     @Transactional
-    public HttpRespMsg createFromTemplate(GroupTemplate template, Integer projectId) {
+    public HttpRespMsg createFromTemplate(String templateJson, Integer projectId) {
         String token = request.getHeader("TOKEN");
         User user = userMapper.selectById(token);
-        TaskGroup taskGroup = new TaskGroup();
-        taskGroup.setName(template.getName());
-        taskGroup.setProjectId(projectId);
-        save(taskGroup);
+        List<GroupTemplate> groupTemplates = JSONArray.parseArray(templateJson, GroupTemplate.class);
+        List<TaskGroup> list=new ArrayList<>();
+        for(GroupTemplate template:groupTemplates){
+            TaskGroup taskGroup = new TaskGroup();
+            taskGroup.setName(template.getName());
+            taskGroup.setProjectId(projectId);
+            save(taskGroup);
+            list.add(taskGroup);
 
-        //从模板创建任务列表
-        List<GroupTmpstages> stages = groupTmpstagesMapper.selectList(new QueryWrapper<GroupTmpstages>().eq("template_id", template.getId()));
-        List<Stages> batchList = new ArrayList<>();
-        stages.forEach(s->{
-            Stages item = new Stages();
-            item.setGroupId(taskGroup.getId());
-            item.setStagesName(s.getStagesName());
-            item.setSequence(s.getSequence());
-            item.setProjectId(projectId);
-            batchList.add(item);
-        });
-        stagesService.saveBatch(batchList);
-        //阶段的任务,里程碑,风险
-        List<GtemplateTask> gtemplateTaskList = gtemplateTaskMapper.selectList(
-                new QueryWrapper<GtemplateTask>().eq("gtemplate_id", template.getId())
-                        .orderByAsc("seq"));
-        if (gtemplateTaskList.size() > 0) {
-            List<Task> taskList = new ArrayList<>();
-            gtemplateTaskList.forEach(gt->{
-                Task task = gt.toTask();
-                task.setProjectId(projectId);
-                task.setGroupId(taskGroup.getId());
-                String sName = stages.stream().filter(s->s.getId().equals(gt.getTstagesId())).findFirst().get().getStagesName();
-                Integer realStageId = batchList.stream().filter(bat->bat.getStagesName().equals(sName)).findFirst().get().getId();
-                task.setStagesId(realStageId);
-                task.setCreaterId(user.getId());
-                task.setCreaterName(user.getName());
-                task.setCreatorColor(user.getColor());
-                taskList.add(task);
+            //从模板创建任务列表
+            List<GroupTmpstages> stages = groupTmpstagesMapper.selectList(new QueryWrapper<GroupTmpstages>().eq("template_id", template.getId()));
+            List<Stages> batchList = new ArrayList<>();
+            stages.forEach(s->{
+                Stages item = new Stages();
+                item.setGroupId(taskGroup.getId());
+                item.setStagesName(s.getStagesName());
+                item.setSequence(s.getSequence());
+                item.setProjectId(projectId);
+                batchList.add(item);
             });
-            taskService.saveBatch(taskList);
+            stagesService.saveBatch(batchList);
+            //阶段的任务,里程碑,风险
+            List<GtemplateTask> gtemplateTaskList = gtemplateTaskMapper.selectList(
+                    new QueryWrapper<GtemplateTask>().eq("gtemplate_id", template.getId())
+                            .orderByAsc("seq"));
+            if (gtemplateTaskList.size() > 0) {
+                List<Task> taskList = new ArrayList<>();
+                gtemplateTaskList.forEach(gt->{
+                    Task task = gt.toTask();
+                    task.setProjectId(projectId);
+                    task.setGroupId(taskGroup.getId());
+                    String sName = stages.stream().filter(s->s.getId().equals(gt.getTstagesId())).findFirst().get().getStagesName();
+                    Integer realStageId = batchList.stream().filter(bat->bat.getStagesName().equals(sName)).findFirst().get().getId();
+                    task.setStagesId(realStageId);
+                    task.setCreaterId(user.getId());
+                    task.setCreaterName(user.getName());
+                    task.setCreatorColor(user.getColor());
+                    taskList.add(task);
+                });
+                taskService.saveBatch(taskList);
+            }
         }
+
         HttpRespMsg msg = new HttpRespMsg();
-        msg.data = taskGroup;
+        msg.data = list;
         return msg;
     }
 }