Prechádzať zdrojové kódy

任务执行人的工时为空的bug解决,更新模板,手机端的消息跳转到费用报销

seyason 2 rokov pred
rodič
commit
485e34b9cc

+ 7 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/FinanceController.java

@@ -97,12 +97,19 @@ public class FinanceController {
         }
     }
 
+    //导出分摊数据
     @RequestMapping("/exportData")
     public HttpRespMsg exportData(@RequestParam(required = false, defaultValue = "0") Integer groupByCategory,
                                   @RequestParam String date, Boolean assignNoProUser,HttpServletRequest request) {
         return financeService.exportData(groupByCategory, date, assignNoProUser, request);
     }
 
+    /**
+     * 导出薪资数据
+     * @param date
+     * @param request
+     * @return
+     */
     @RequestMapping("/exportFinance")
     public HttpRespMsg exportFinance(@RequestParam String date, HttpServletRequest request) {
         return financeService.exportFinance(date, request);

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

@@ -124,12 +124,12 @@ public class TaskController {
             String colors = executorList.stream().filter(f->!StringUtils.isEmpty(f.getExecutorId())).map(TaskExecutor::getExecutorColor).collect(Collectors.joining(","));
             task.setExecutorColor(StringUtils.isEmpty(colors)?null:colors);
             //总时长
-            task.setPlanHours(executorList.stream().mapToInt(TaskExecutor::getPlanHours).sum());
+            task.setPlanHours(executorList.stream().filter(f->f.getPlanHours() != null).mapToInt(TaskExecutor::getPlanHours).sum());
             //检查执行人是否在当前分组的参与人当中
             List<GroupParticipator> groupParticipatorList = groupParticipatorMapper.selectList(new QueryWrapper<GroupParticipator>().eq("group_id", task.getGroupId()));
             List<Participation> participationList = participationMapper.selectList(new QueryWrapper<Participation>().eq("project_id", task.getProjectId()));
             for (TaskExecutor executor : executorList) {
-                if(executor.getExecutorId()!=null){
+                if(!StringUtils.isEmpty(executor.getExecutorId())){
                     boolean b = groupParticipatorList.stream().anyMatch(gp -> gp.getUserId() != null && gp.getUserId().equals(executor.getExecutorId()));
                     if(!b){
                         GroupParticipator g=new GroupParticipator();

+ 25 - 5
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/FinanceServiceImpl.java

@@ -851,7 +851,7 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
                     List<String> rowData = new ArrayList<String>();
                     rowData.add(p.projectCode);
                     rowData.add(p.project);
-                    rowData.add("");
+                    rowData.add("项目合计");
                     userCustoms.forEach(userCustom -> {rowData.add("");});
                     rowData.add(p.workingTime+"");
                     rowData.add(p.salary.toPlainString());
@@ -879,8 +879,8 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
                         if (membMap.get("project").equals(p.project)) {
                             //匹配到项目了
                             List<String> membRowData = new ArrayList<String>();
-                            membRowData.add("");
-                            membRowData.add("");
+                            membRowData.add(p.projectCode);
+                            membRowData.add(p.project);
                             Double workingTime = (Double) membMap.get("workingTime");
                             String creatorId = (String) membMap.get("creatorId");
                             User us = userList.stream().filter(u->u.getId().equals(creatorId)).findFirst().get();
@@ -956,8 +956,8 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
                     if (assignNoProUser != null && assignNoProUser) {
                         for (Finance npu : noProjectUser) {
                             List<String> membRowData = new ArrayList<String>();
-                            membRowData.add("");
-                            membRowData.add("");
+                            membRowData.add(p.projectCode);
+                            membRowData.add(p.project);
                             Double workingTime = new Double(0);
                             Finance userFinance = npu;
                             Optional<Map> op = noPUserDataList.stream().filter(map->((Integer)map.get("projectId")).equals(p.projectId) && ((String)map.get("creatorId")).equals(npu.getUserId())).findFirst();
@@ -986,6 +986,26 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
                                     }else {
                                         membRowData.add(npu.getName());
                                     }
+                                    //自定义字段的显示
+                                    for (int i = 0; i < userCustoms.size(); i++) {
+                                        switch (i){
+                                            case 0:
+                                                membRowData.add(us.getPlate1()==null?"":us.getPlate1());
+                                                break;
+                                            case 1:
+                                                membRowData.add(us.getPlate2()==null?"":us.getPlate2());
+                                                break;
+                                            case 2:
+                                                membRowData.add(us.getPlate3()==null?"":us.getPlate3());
+                                                break;
+                                            case 3:
+                                                membRowData.add(us.getPlate4()==null?"":us.getPlate4());
+                                                break;
+                                            case 4:
+                                                membRowData.add(us.getPlate5()==null?"":us.getPlate5());
+                                                break;
+                                        }
+                                    }
                                     membRowData.add(workingTime+"");
                                     membRowData.add(salary.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
                                     membRowData.add(bonus.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());

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

@@ -2596,9 +2596,9 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
                                             } else {
                                                 //还有下个节点
                                                 Integer auditDeptid = upR.getAuditDeptid();
-                                                for (int m=0;m<settings.size(); m++) {
-                                                    if (auditDeptid.equals(settings.get(m).getAuditDeptId()) && m < settings.size() -1) {
-                                                        AuditWorkflowTimeSetting nextNode = settings.get(m + 1);
+                                                for (int m=0;m<deptSettings.size(); m++) {
+                                                    if (auditDeptid.equals(deptSettings.get(m).getAuditDeptId()) && m < deptSettings.size() -1) {
+                                                        AuditWorkflowTimeSetting nextNode = deptSettings.get(m + 1);
                                                         upR.setIsDeptAudit(nextNode.getIsDeptAudit());
                                                         if (upR.getIsDeptAudit() == 1) {
                                                             upR.setAuditDeptid(nextNode.getAuditDeptId());

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

@@ -286,7 +286,7 @@
 
     <!--根据任务id,全部报告信息-->
     <select id="getReportByTask" resultType="java.util.Map">
-        SELECT a.id,my.id as userId,  my.name as userName, a.project_id as projectId,b.project_name AS project, a.working_time AS time, a.content, a.state, a.time_type as timeType, a.cost, a.report_time_type as reportTimeType, a.start_time as startTime,
+        SELECT a.id,date_format(a.create_date, '%Y-%m-%d') as createDate,  my.id as userId, my.name as userName, a.project_id as projectId,b.project_name AS project, a.working_time AS time, a.content, a.state, a.time_type as timeType, a.cost, a.report_time_type as reportTimeType, a.start_time as startTime,
         a.end_time as endTime, b.incharger_id as inchargerId,b.project_code as projectCode,
         a.creator_id as creatorId, d.name as subProjectName,a.task_id as taskId, task.name as taskName, a.is_overtime as isOvertime,a.progress as progress,
         a.department_audit_state as departmentAuditState, a.stage, a.pic_str as picStr, multi_worktime as multiWorktime

BIN
fhKeeper/formulahousekeeper/management-platform/src/main/resources/upload/员工工时导入模板.xlsx


BIN
fhKeeper/formulahousekeeper/management-platform/src/main/resources/upload/费用报销导入模板.xlsx


+ 3 - 0
fhKeeper/formulahousekeeper/timesheet_h5/src/views/msg/index.vue

@@ -83,6 +83,9 @@
                             if (item.type == 1 || (item.msg != null && item.msg.indexOf('任务') > 0)) {
                                 //跳到待办任务上
                                 this.$router.push('/task'); 
+                            } else if (item.type == 3) {
+                                //跳到费用报销上
+                                this.$router.push('/expense'); 
                             } 
                         } 
                     }).catch(err=> {this.$toast.clear();});