瀏覽代碼

威派格 自主项目类别 修改

Min 1 年之前
父節點
當前提交
f14f203a30

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

@@ -613,8 +613,8 @@ public class ProjectController {
     }
 
     @RequestMapping("/exportGroupData")
-    public HttpRespMsg exportGroupData(Integer mainProjectId) {
-        return projectService.exportGroupData(mainProjectId,request);
+    public HttpRespMsg exportGroupData(Integer projectCategorySubId) {
+        return projectService.exportGroupData(projectCategorySubId,request);
     }
 
     @RequestMapping("/getMyUsers")
@@ -1106,12 +1106,12 @@ public class ProjectController {
         return projectService.getTimeCostByGroup(startDate,endDate,pageIndex,pageSize,groupId,projectId,request);
     }
     @RequestMapping("/getTimeCostByGroupProject")
-    public HttpRespMsg getTimeCostByGroupProject(String startDate,String endDate,Integer pageIndex,Integer pageSize,Integer groupId,Integer projectId,Integer projectMainId){
-        return projectService.getTimeCostByGroupProject(startDate,endDate,pageIndex,pageSize,groupId,projectId,projectMainId,request);
+    public HttpRespMsg getTimeCostByGroupProject(String startDate,String endDate,Integer pageIndex,Integer pageSize,Integer groupId,Integer projectId,Integer projectCategorySubId){
+        return projectService.getTimeCostByGroupProject(startDate,endDate,pageIndex,pageSize,groupId,projectId,projectCategorySubId,request);
     }
     @RequestMapping("exportGroupWithProjectTimeCost")
-    public HttpRespMsg exportGroupWithProjectTimeCost(String startDate,String endDate,Integer pageIndex,Integer pageSize,Integer groupId,Integer projectId,Integer projectMainId){
-        return projectService.exportGroupWithProjectTimeCost(startDate,endDate,pageIndex,pageSize,groupId,projectId,projectMainId,request);
+    public HttpRespMsg exportGroupWithProjectTimeCost(String startDate,String endDate,Integer pageIndex,Integer pageSize,Integer groupId,Integer projectId,Integer projectCategorySubId){
+        return projectService.exportGroupWithProjectTimeCost(startDate,endDate,pageIndex,pageSize,groupId,projectId,projectCategorySubId,request);
     }
     @RequestMapping("/getProjectBaseCost")
     public HttpRespMsg getProjectBaseCost(Integer projectId,HttpServletRequest request,Integer pageIndex,Integer pageSize){

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

@@ -85,7 +85,7 @@ public interface ProjectMapper extends BaseMapper<Project> {
     List<HashMap<String, Object>> getExportData(Integer companyId, String userId);
 
     //获取按照项目分组导出的项目数据
-    List<HashMap<String, Object>> getExportGroupData(Integer mainProjectId,Integer companyId);
+    List<HashMap<String, Object>> getExportGroupData(String projectCategorySub,Integer companyId);
 
     List<Map<String, Object>> getOvertimeDetail(String userId, Integer companyId, String startDate, String endDate, Integer projectId,List<Integer> branchDepartment,List<Integer> deptIds);
 
@@ -125,9 +125,9 @@ public interface ProjectMapper extends BaseMapper<Project> {
 
     long selectCountWithGroup(Integer companyId, String startDate, String endDate, Integer startIndex, Integer endIndex, Integer projectId, List<Integer> inchagerIds, Integer groupId);
 
-    List<Map<String, Object>> selectWithGroupProject(Integer companyId, String startDate, String endDate,  Integer startIndex, Integer endIndex, Integer projectId,Integer projectMainId, List<Integer> inchagerIds, Integer groupId);
+    List<Map<String, Object>> selectWithGroupProject(Integer companyId, String startDate, String endDate,  Integer startIndex, Integer endIndex, Integer projectId,String projectCategorySub, List<Integer> inchagerIds, Integer groupId);
 
-    long selectCountWithGroupProject(Integer companyId, String startDate, String endDate, Integer startIndex, Integer endIndex, Integer projectId,Integer projectMainId,List<Integer> inchagerIds, Integer groupId);
+    long selectCountWithGroupProject(Integer companyId, String startDate, String endDate, Integer startIndex, Integer endIndex, Integer projectId,String projectCategorySub,List<Integer> inchagerIds, Integer groupId);
 
     List<Map<String, Object>> getCostByUserCustom(String startDate, String endDate, Integer companyId, List<Integer> deptIds, Integer customId, String subCustomName,String fieldName);
 

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

@@ -125,7 +125,7 @@ public interface ProjectService extends IService<Project> {
                            Integer projectId, //可以直接传projectId来进行匹配
                            Integer status, Integer category,Integer projectMainId,Integer deptId,String inchagerId,String participation,HttpServletRequest request);
 
-    HttpRespMsg exportGroupData(Integer mainProjectId,HttpServletRequest request);
+    HttpRespMsg exportGroupData(Integer projectCategorySubId,HttpServletRequest request);
 
     HttpRespMsg getCustomDataSum(String startDate, String endDate, String userId, HttpServletRequest request);
 
@@ -187,9 +187,9 @@ public interface ProjectService extends IService<Project> {
 
     HttpRespMsg getTimeCostByGroup(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,HttpServletRequest request);
 
-    HttpRespMsg getTimeCostByGroupProject(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectMainId, HttpServletRequest request);
+    HttpRespMsg getTimeCostByGroupProject(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectCategorySubId, HttpServletRequest request);
 
-    HttpRespMsg exportGroupWithProjectTimeCost(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectMainId, HttpServletRequest request);
+    HttpRespMsg exportGroupWithProjectTimeCost(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectCategorySubId, HttpServletRequest request);
 
     HttpRespMsg getProjectBaseCost(Integer projectId, HttpServletRequest request, Integer pageIndex, Integer pageSize);
 

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

@@ -5776,13 +5776,26 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
     }
 
     @Override
-    public HttpRespMsg exportGroupData(Integer mainProjectId,HttpServletRequest request) {
+    public HttpRespMsg exportGroupData(Integer projectCategorySubId,HttpServletRequest request) {
         String token = request.getHeader("TOKEN");
         User user = userMapper.selectById(token);
         WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id", user.getCompanyId()));
         //获取全部用户
         List<User> userList = userMapper.selectList(new QueryWrapper<User>().select("id, name, corpwx_userid").eq("company_id", user.getCompanyId()));
-        List<HashMap<String, Object>> list = projectMapper.getExportGroupData(mainProjectId,user.getCompanyId());
+        String  projectCategorySub=null;
+        if(projectCategorySubId!=null){
+            switch (projectCategorySubId){
+                case 1:projectCategorySub="纯软件项目";
+                    break;
+                case 2:projectCategorySub="纯硬件项目";
+                    break;
+                case 3:projectCategorySub="集成项目";
+                    break;
+                case 4:projectCategorySub="服务项目";
+                    break;
+            }
+        }
+        List<HashMap<String, Object>> list = projectMapper.getExportGroupData(projectCategorySub,user.getCompanyId());
         List<List<String>> allList = new ArrayList<>();
         List<String> headList = new ArrayList<String>();
 //        headList.add("项目编号");
@@ -7966,7 +7979,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
     }
 
     @Override
-    public HttpRespMsg  getTimeCostByGroupProject(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectMainId, HttpServletRequest request) {
+    public HttpRespMsg  getTimeCostByGroupProject(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectCategorySubId, HttpServletRequest request) {
         String token = request.getHeader("TOKEN");
         User user = userMapper.selectById(token);
         Integer companyId = user.getCompanyId();
@@ -7988,16 +8001,29 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                 inchagerIds.add(-1);
             }
         }
+        String  projectCategorySub=null;
+        if(projectCategorySubId!=null){
+            switch (projectCategorySubId){
+                case 1:projectCategorySub="纯软件项目";
+                    break;
+                case 2:projectCategorySub="纯硬件项目";
+                    break;
+                case 3:projectCategorySub="集成项目";
+                    break;
+                case 4:projectCategorySub="服务项目";
+                    break;
+            }
+        }
         List<Map<String,Object>> record;
         long total;
         if(pageIndex!=null&&pageSize!=null){
             Integer startIndex = (pageIndex-1)*pageSize;
             Integer endIndex = pageSize*pageIndex;
-            record = projectMapper.selectWithGroupProject(companyId,startDate,endDate, startIndex, endIndex, projectId,projectMainId,inchagerIds,groupId);
+            record = projectMapper.selectWithGroupProject(companyId,startDate,endDate, startIndex, endIndex, projectId,projectCategorySub,inchagerIds,groupId);
         }else {
-            record=projectMapper.selectWithGroupProject(companyId,startDate,endDate, null, null, projectId,projectMainId,inchagerIds,groupId);
+            record=projectMapper.selectWithGroupProject(companyId,startDate,endDate, null, null, projectId,projectCategorySub,inchagerIds,groupId);
         }
-        total =projectMapper.selectCountWithGroupProject(companyId,startDate,endDate, null, null, projectId,projectMainId,inchagerIds,groupId);
+        total =projectMapper.selectCountWithGroupProject(companyId,startDate,endDate, null, null, projectId,projectCategorySub,inchagerIds,groupId);
         HashMap<String, Object> map = new HashMap<>();
         map.put("records", record);
         map.put("total", total);
@@ -8006,10 +8032,10 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
     }
 
     @Override
-    public HttpRespMsg exportGroupWithProjectTimeCost(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectMainId, HttpServletRequest request) {
+    public HttpRespMsg exportGroupWithProjectTimeCost(String startDate, String endDate, Integer pageIndex, Integer pageSize, Integer groupId, Integer projectId,Integer projectCategorySubId, HttpServletRequest request) {
         HttpRespMsg httpRespMsg=new HttpRespMsg();
         HttpRespMsg timeCostByGroup = getTimeCostByGroup(startDate, endDate, null, null, groupId, projectId, request);
-        HttpRespMsg timeCostByGroupProject = getTimeCostByGroupProject(startDate, endDate, null, null, groupId, projectId,projectMainId, request);
+        HttpRespMsg timeCostByGroupProject = getTimeCostByGroupProject(startDate, endDate, null, null, groupId, projectId,projectCategorySubId, request);
         HashMap<String,Object> timeCostByGroupData = (HashMap<String, Object>) timeCostByGroup.data;
         HashMap<String,Object>  timeCostByGroupProjectData =  (HashMap<String, Object>) timeCostByGroupProject.data;
         List<Map<String,Object>> timeCostByGroupList= (List<Map<String, Object>>) timeCostByGroupData.get("records");

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

@@ -908,12 +908,12 @@
         FROM task_group
                  LEFT JOIN group_participator ON task_group.id = group_participator.group_id
                  LEFT JOIN project ON task_group.project_id = project.id
-                 <if test="mainProjectId!=null">
-                     left join project_main pm on pm.id=project.project_main_id
+                 <if test="projectCategorySub!=null and projectCategorySub!=''">
+                     left join project_separate ps on ps.id=project.id
                  </if>
         where project.company_id = #{companyId}
-        <if test="mainProjectId!=null">
-            and project.project_main_id=#{mainProjectId}
+        <if test="projectCategorySub!=null and projectCategorySub!=''">
+            and ps.project_category_sub=#{projectCategorySub}
         </if>
         GROUP BY task_group.id
         ORDER BY project_id
@@ -1247,8 +1247,8 @@
         from report a
         left join task_group b on a.group_id=b.id
         left join project c on a.project_id=c.id
-        <if test="projectMainId!=null">
-            left join project_main pm on pm.id=c.project_main_id
+        <if test="projectCategorySub!=null and projectCategorySub!=''">
+            left join project_separate ps on ps.id=c.id
         </if>
         where c.company_id=#{companyId} and a.state=1
         <if test="startDate!=null and endDate!=null">
@@ -1257,8 +1257,8 @@
         <if test="projectId!=null">
             and c.id=#{projectId}
         </if>
-        <if test="projectMainId!=null">
-            and pm.id=#{projectMainId}
+        <if test="projectCategorySub!=null and projectCategorySub!=''">
+            and ps.project_category_sub=#{projectCategorySub}
         </if>
         <if test="inchagerIds!=null and inchagerIds.size()>0">
             and c.id in
@@ -1282,8 +1282,8 @@
         from report a
         left join task_group b on a.group_id=b.id
         left join project c on a.project_id=c.id
-        <if test="projectMainId!=null">
-            left join project_main pm on pm.id=c.project_main_id
+        <if test="projectCategorySub!=null and projectCategorySub!=''">
+            left join project_separate ps on ps.id=c.id
         </if>
         where c.company_id=#{companyId} and a.state=1
         <if test="startDate!=null and endDate!=null">
@@ -1292,8 +1292,8 @@
         <if test="projectId!=null">
             and c.id=#{projectId}
         </if>
-        <if test="projectMainId!=null">
-            and pm.id=#{projectMainId}
+        <if test="projectCategorySub!=null and projectCategorySub!=''">
+            and ps.project_category_sub=#{projectCategorySub}
         </if>
         <if test="inchagerIds!=null and inchagerIds.size()>0">
             and c.id in

+ 26 - 9
fhKeeper/formulahousekeeper/timesheet/src/views/corpreport/list.vue

@@ -94,11 +94,8 @@
             <span style="float: right;font-size: 13px;margin-left: 20px">{{ item.projectName }}</span>
           </el-option>
         </el-select>
-        <el-select v-if="ins==12 && user.companyId==936" v-model="projectMainId" :placeholder="'请选择主项目'" clearable filterable size="small" @change="selcts()" style="margin-left:10px">
-          <el-option v-for="(item) in mainProjectList" :key="item.id" :label="item.name + (item.code ? item.code : '')" :value="item.id">
-            <span style="float: left;color: #8492a6;">{{ item.code }}</span>
-            <span style="float: right;font-size: 13px;margin-left: 20px">{{ item.name }}</span>
-          </el-option>
+        <el-select v-if="ins==12 && user.companyId==936" v-model="projectCategorySubId" :placeholder="'请选择自主项目类别'" clearable filterable size="small" @change="selcts()" style="margin-left:10px">
+          <el-option v-for="(item) in projectCategorySubList" :key="item.value" :label="item.label" :value="item.value"></el-option>
         </el-select>
         <!-- 月份选择 -->
         <el-date-picker v-if="ins == 14 || ins == 15 || ins == 19" value-format="yyyy-MM" v-model="monthPersonnel" type="month" :placeholder="$t('Selectmonth')" :clearable="false" @change="selcts()" size="small"></el-date-picker>
@@ -1253,6 +1250,27 @@ export default {
       baobiaoList: [],
 
       mainProjectList:[],//主项目列表
+
+      projectCategorySubList:[
+          {
+              value: 1,
+              label: '纯软件项目'
+          },
+          {
+              value: 2,
+              label: '纯硬件项目'
+          },
+          {
+              value: 3,
+              label: '集成项目'
+          },
+          {
+              value: 4,
+              label: '服务项目'
+          }
+      ],
+      projectCategorySubId:''
+
     };
   },
   computed: {},
@@ -1596,7 +1614,6 @@ export default {
                   this.groupWorktimeList.right = []
                     this.getGroupWorktimeList()
                     this.getGroupWorktimeAll()
-                    this.getMainProjectList()
                 }else if(this.ins == 13){
                   this.getOutputValueList()
                 } else if(this.ins == 14) {
@@ -1710,7 +1727,7 @@ export default {
           url += "/exportGroupWithProjectTimeCost"
           sl.startDate = this.rangeDatas[0]
           sl.endDate = this.rangeDatas[1]
-          sl.projectMainId=this.projectMainId
+          sl.projectCategorySubId=this.projectCategorySubId
         }else if(this.ins == 13){
           fName = this.$t('projectcostbaselinetable') + '.xlsx'
           url += "/exportProjectBaseCost"
@@ -2493,8 +2510,8 @@ export default {
       if(this.proJuctId){
         parameter.projectId = this.proJuctId
       }
-      if(this.projectMainId){
-        parameter.projectMainId = this.projectMainId
+      if(this.projectCategorySubId){
+        parameter.projectCategorySubId = this.projectCategorySubId
       }
       this.listLoading = true
       this.http.post('/project/getTimeCostByGroupProject',parameter,

+ 24 - 5
fhKeeper/formulahousekeeper/timesheet/src/views/project/list.vue

@@ -1057,9 +1057,9 @@
         <!-- 导出任务分组 -->
         <el-dialog :title="'导出任务分组'" show-header="false" v-if="groupTaskDialog" :visible.sync="groupTaskDialog" :close-on-click-modal="false" customClass="customWidth" width="600px">
             <el-form>
-                <el-form-item :label="'主项目类别'">
-                    <el-select v-model="mainProjectId" :placeholder="$t('defaultText.pleaseChoose')" clearable >
-                        <el-option v-for="item in mainProjectList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                <el-form-item :label="'主项目类别'">
+                    <el-select v-model="projectCategorySubId" :placeholder="$t('defaultText.pleaseChoose')" clearable >
+                        <el-option v-for="item in projectCategorySubList" :key="item.value" :label="item.label" :value="item.value"></el-option>
                     </el-select>
                 </el-form-item>
             </el-form>
@@ -1631,7 +1631,26 @@ a {
                 dataListBf: [],
                 imgUrlLists: '',
                 imgUrlListFlg: false,
-                estimatedWorkTime:''
+                estimatedWorkTime:'',
+                projectCategorySubList:[
+                    {
+                        value: 1,
+                        label: '纯软件项目'
+                    },
+                    {
+                        value: 2,
+                        label: '纯硬件项目'
+                    },
+                    {
+                        value: 3,
+                        label: '集成项目'
+                    },
+                    {
+                        value: 4,
+                        label: '服务项目'
+                    }
+                ],
+                projectCategorySubId:''
             };
         },
         // 过滤器
@@ -2636,7 +2655,7 @@ a {
             },
             exportProjectGroup() {
                 //导出项目分组
-                this.http.post('/project/exportGroupData',{mainProjectId:this.mainProjectId},
+                this.http.post('/project/exportGroupData',{projectCategorySubId:this.projectCategorySubId},
                 res => {
                     if (res.code == "ok") {
                         var filePath = res.data;