Procházet zdrojové kódy

代填支持已离职人员

QuYueTing před 6 měsíci
rodič
revize
86706210e7

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

@@ -1123,7 +1123,9 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
         list.add(unAssignedDept);
 
         List<User> userList = new ArrayList<>();
-        userList = userMapper.selectList(new QueryWrapper<User>().eq("company_id", companyId).eq("is_active", 1));
+        QueryWrapper<User> queryWrapper = new QueryWrapper<User>().eq("company_id", companyId);
+        //代填时,可以选择全部人员范围,包含已离职的
+        userList = userMapper.selectList(queryWrapper);
 
         List<HashMap> userMapList = new ArrayList<>();
         for (User u : userList) {

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

@@ -6002,14 +6002,14 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
                     }
                 }
                 if (cnt > 0 || auditorPids != null) {
-                    if (timeType.getShowFillauditTime() == 1) {
+                    if (exportType == 0 && timeType.getShowFillauditTime() == 1) {
                         reportsFromProjects = reportMapper.getProjectMembReportByDateWithReportLog(startDate, null, user.getId(), endDate, projectId,stateKey,branchDepartment, auditorPids);
                     } else{
                         reportsFromProjects = reportMapper.getProjectMembReportByDate(startDate, null, user.getId(), endDate, projectId,stateKey,branchDepartment, auditorPids);
                     }
                 } else {
                     //普通员工只能看自己的
-                    if (timeType.getShowFillauditTime() == 1) {
+                    if (exportType == 0 && timeType.getShowFillauditTime() == 1) {
                         reportsFromProjects = reportMapper.getAllReportByDateWithReportLog(startDate, null, user.getId(), endDate, projectId,stateKey,branchDepartment);
                     } else {
                         reportsFromProjects = reportMapper.getAllReportByDate(startDate, null, user.getId(), endDate, projectId,stateKey,branchDepartment);
@@ -6032,7 +6032,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             else {
                 //看公司所有人的
                 long t1 = System.currentTimeMillis();
-                if (timeType.getShowFillauditTime() == 1) {
+                if (exportType == 0 && timeType.getShowFillauditTime() == 1) {
                     allReportByDate = reportMapper.getAllReportByDateWithReportLog(startDate, user.getCompanyId(), null, endDate, projectId,stateKey,branchDepartment);
                 } else {
                     allReportByDate = reportMapper.getAllReportByDate(startDate, user.getCompanyId(), null, endDate, projectId,stateKey,branchDepartment);

+ 6 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/TaskServiceImpl.java

@@ -187,7 +187,12 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
                 row.createCell(3).setCellValue(new BigDecimal(String.valueOf(map.get("planHours"))).doubleValue());
                 HSSFCell percentCell = row.createCell(4);
                 if (map.get("planHours") != null) {
-                    int percent = (int)(double) map.get("workHours")*100/new BigDecimal(String.valueOf(map.get("planHours"))).intValue();
+                    int percent = 0;
+                    int planHours = new BigDecimal(String.valueOf(map.get("planHours"))).intValue();
+                    if (planHours > 0) {
+                        percent = (int)(double) map.get("workHours")*100/planHours;
+                    }
+
                     percent = (percent - 100);
                     String sign = "";
                     if (percent > 0) {

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

@@ -75,7 +75,7 @@
         JOIN project AS b ON a.project_id=b.id
         LEFT JOIN project_separate AS ps on b.id=ps.id
         LEFT JOIN user AS c ON a.creator_id=c.id
-        LEFT JOIN user_with_beisen AS uwb ON uwb.job_number=c.job_number
+        LEFT JOIN user_with_beisen AS uwb ON uwb.job_number=c.job_number and uwb.company_id=c.company_id
         left join sub_project as d on d.id = a.sub_project_id
         left join task on task.id = a.task_id
         left join report_extra_degree on report_extra_degree.id = a.degree_id
@@ -132,7 +132,7 @@
         JOIN project AS b ON a.project_id=b.id
         LEFT JOIN project_separate AS ps on b.id=ps.id
         LEFT JOIN user AS c ON a.creator_id=c.id
-        LEFT JOIN user_with_beisen AS uwb ON uwb.job_number=c.job_number
+        LEFT JOIN user_with_beisen AS uwb ON uwb.job_number=c.job_number and uwb.company_id=c.company_id
         left join sub_project as d on d.id = a.sub_project_id
         left join task on task.id = a.task_id
         left join report_extra_degree on report_extra_degree.id = a.degree_id
@@ -1152,7 +1152,7 @@
         case  when p.man_day*8-SUM(r.working_time) &gt;= 0 then '否' else '是' end as isOver ,case when p.man_day*8-SUM(r.working_time) &gt; 0 then (p.man_day*8-SUM(r.working_time)) else '0' end as remaining,
         (select GROUP_CONCAT(CONCAT(u.job_number,'/',uwb.name)) from participation pa
         left join user u on pa.user_id=u.id
-        left join user_with_beisen uwb on u.job_number=uwb.job_number
+        left join user_with_beisen uwb on u.job_number=uwb.job_number and uwb.company_id=u.company_id
         where pa.project_id=p.id ) as participations
         from project p
         left join project_main pm on p.project_main_id=pm.id

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/workReport/daily.vue

@@ -5443,7 +5443,7 @@
             //获取可以选择的代填的人员列表
             getSubstitudeUserDeptList() {
                 if (this.deptMembData.length == 0) {
-                    this.http.post("/department/listMyMembs", {},
+                    this.http.post("/department/listMyMembs", {includeInactiveUser: 1},
                         res => {
                             if (res.code == "ok") {
                                 let noAllData = JSON.parse(JSON.stringify(res.data));

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

@@ -244,7 +244,7 @@
                 </el-table-column>
                 <el-table-column label="工作内容" v-if="user.companyId == 469" width="480">
                     <template slot-scope="scope">
-                        <span v-for="(item, index) in scope.row.data" style="margin-right:10px;"><b>{{item.project}}</b>{{ ':'+item.content }}</span>
+                        <span v-for="(item, index) in scope.row.data" style="margin-right:10px;" ><template v-if="index==0 || (index>0 && (scope.row.data[index-1].content != item.content))"><b>{{item.project}}</b>{{ ':'+item.content }}</template></span>
                     </template>
                 </el-table-column>
                 <el-table-column prop="state" :label="$t('state.states')" sortable width="200">