瀏覽代碼

项目导出任务分组 针对威派格修改

Min 1 年之前
父節點
當前提交
4850ded820

+ 2 - 2
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() {
-        return projectService.exportGroupData(request);
+    public HttpRespMsg exportGroupData(Integer mainProjectId) {
+        return projectService.exportGroupData(mainProjectId,request);
     }
 
     @RequestMapping("/getMyUsers")

+ 1 - 1
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 companyId);
+    List<HashMap<String, Object>> getExportGroupData(Integer mainProjectId,Integer companyId);
 
     List<Map<String, Object>> getOvertimeDetail(String userId, Integer companyId, String startDate, String endDate, Integer projectId,List<Integer> branchDepartment,List<Integer> deptIds);
 

+ 1 - 1
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(HttpServletRequest request);
+    HttpRespMsg exportGroupData(Integer mainProjectId,HttpServletRequest request);
 
     HttpRespMsg getCustomDataSum(String startDate, String endDate, String userId, HttpServletRequest request);
 

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

@@ -5776,13 +5776,13 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
     }
 
     @Override
-    public HttpRespMsg exportGroupData(HttpServletRequest request) {
+    public HttpRespMsg exportGroupData(Integer mainProjectId,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(user.getCompanyId());
+        List<HashMap<String, Object>> list = projectMapper.getExportGroupData(mainProjectId,user.getCompanyId());
         List<List<String>> allList = new ArrayList<>();
         List<String> headList = new ArrayList<String>();
 //        headList.add("项目编号");

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

@@ -908,7 +908,13 @@
         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>
         where project.company_id = #{companyId}
+        <if test="mainProjectId!=null">
+            and project.project_main_id=#{mainProjectId}
+        </if>
         GROUP BY task_group.id
         ORDER BY project_id
     </select>

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

@@ -1710,6 +1710,7 @@ export default {
           url += "/exportGroupWithProjectTimeCost"
           sl.startDate = this.rangeDatas[0]
           sl.endDate = this.rangeDatas[1]
+          sl.projectMainId=this.projectMainId
         }else if(this.ins == 13){
           fName = this.$t('projectcostbaselinetable') + '.xlsx'
           url += "/exportProjectBaseCost"

+ 20 - 2
fhKeeper/formulahousekeeper/timesheet/src/views/project/list.vue

@@ -63,7 +63,8 @@
                                 <el-link type="primary" :underline="false" @click="exportProjectData" :download="$t('exportProject') + '.xlsx'">{{ $t('exportProject') }}</el-link>
                             </el-dropdown-item>
                             <el-dropdown-item v-if="user.company.packageProject == 1 && permissions.projectExport">
-                                <el-link type="primary" :underline="false" @click="exportProjectGroup" :download="$t('exportingTaskGroups') +'.xlsx'">{{ $t('exportingTaskGroups') }}</el-link>
+                                <el-link type="primary" :underline="false" v-if="user.companyId==936" @click="groupTaskDialog=true" :download="$t('exportingTaskGroups') +'.xlsx'">{{ $t('exportingTaskGroups') }}</el-link>
+                                <el-link type="primary" :underline="false" v-else @click="exportProjectGroup" :download="$t('exportingTaskGroups') +'.xlsx'">{{ $t('exportingTaskGroups') }}</el-link>
                             </el-dropdown-item>
                             <el-dropdown-item v-if="user.company.packageProject == 1 && permissions.projectCostOfItems">
                                 <el-link type="primary" :underline="false" @click="showBaseCostItemDialog">{{ $t('baselinecostitem') }}</el-link>
@@ -1053,6 +1054,21 @@
             </div>
         </el-dialog>
 
+        <!-- 导出任务分组 -->
+        <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-select>
+                </el-form-item>
+            </el-form>
+            <div slot="footer" class="dialog-footer">
+                <el-button type="primary" @click="groupTaskDialog = false" >{{ $t('Shutdown') }}</el-button>
+                <el-button type="primary" @click="exportProjectGroup" >{{ '导出' }}</el-button>
+            </div>
+        </el-dialog>
+
         <!-- 新增/编辑项目级别 -->
         <el-dialog :title="$t('modifyingtheprojectLevel')" v-if="addProjectLevelDialog" :visible.sync="addProjectLevelDialog" :close-on-click-modal="false" customClass="customWidth" width="500px">
             <el-form ref="form2" :model="addLevelForm" :rules="rules" label-width="120px">
@@ -1472,6 +1488,7 @@ a {
                 },
                 
                 wxFilterText: '',
+                mainProjectId:'',
                 filterName:null,
                 chooseParticipVisible: false,
                 projectBaseCostData:[],
@@ -1504,6 +1521,7 @@ a {
                 addSubProject: false,
                 addFormVisible: false,
                 addLoading: false,
+                groupTaskDialog:false,
                 addUp: 0, // 合计
                 title: "",
                 addForm: {
@@ -2618,7 +2636,7 @@ a {
             },
             exportProjectGroup() {
                 //导出项目分组
-                this.http.post('/project/exportGroupData',{},
+                this.http.post('/project/exportGroupData',{mainProjectId:this.mainProjectId},
                 res => {
                     if (res.code == "ok") {
                         var filePath = res.data;