205 Commits 29063f2405 ... f18c905180

Autore SHA1 Messaggio Data
  wangchao f18c905180 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangchao 3a4017be26 考勤日报与考勤详情显示格式修改 4 anni fa
  wangchao 6a9e5a5391 修改进出记录bug 4 anni fa
  konghl b853fa9490 修改考勤类型必填的问题 4 anni fa
  konghl 902b99be6a 修改问题 4 anni fa
  konghl eed12970cd 新增AI报警kafka消费 4 anni fa
  wangdong6 83a580112c 修改AI处理结果 4 anni fa
  wangdong6 296d4992b4 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangdong6 526e01161f 增加考勤打卡服务 4 anni fa
  wangdong6 2274a0b5a3 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangdong6 366cc07942 修改AI识别功能 4 anni fa
  wangdong6 f437841399 修改AI识别功能 4 anni fa
  wangchao 1a8e2463b5 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 6fb2eb5da1 AI报警接口增加处理人返回值与报警类型name返回值 4 anni fa
  wangchao 173425e9aa Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao cc86f342c0 进出记录返回参数查询修改 4 anni fa
  wangchao 392d7269c4 进出记录、详情 查询修改 4 anni fa
  wangchao 9720d09362 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 19896d67fd 进出记录、详情 查询 4 anni fa
  wangchao 3c8ced1379 进出记录、详情 查询 4 anni fa
  konghl 0f7ad3266b 新增批量获取文件的路径 4 anni fa
  wangchao b57d80b691 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 83af37e1b4 考勤管理 4 anni fa
  wangchao c1a17c529b Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 9025dc6284 修改日报bug 4 anni fa
  wangchao 0bf75d3a8d Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao cf7b6cdfa4 AI接口提交 4 anni fa
  wangchao cf93c13cfe Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao c539efc81a 导出excel 4 anni fa
  chenxr3 c5de3eedce 月考勤数据查询接口修改bug 4 anni fa
  konghl d1691caa94 工单申请修改用户和部门 4 anni fa
  wangchao 1690e0e21b 修改考勤查询日报bug 4 anni fa
  wangdong6 0584159bd1 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangdong6 f02a5c9889 修改考勤规则查询接口 4 anni fa
  wangdong6 013e377cef 修改考勤规则查询接口 4 anni fa
  konghl 2ac7393605 重构人员轨迹查询 4 anni fa
  konghl 190e8a2ec0 新增工单申请及审批接口 4 anni fa
  wangdong6 a0a75ce1c6 修改考勤规则保存接口 4 anni fa
  wangchao 208cc9c6ed Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao eb0f593fc9 查询报表修改参数 4 anni fa
  wangchao 78caba4d27 考勤详情修改 4 anni fa
  wangchao 69f40fa73d Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 6ff5fe626a 考勤报告接收前台参数方式修改 4 anni fa
  wangdong6 5151d2fea9 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangdong6 9a5dcf3200 封装考勤规则管理接口 4 anni fa
  zhaolx5 84e32ed3ca 解决打包失败的问题 4 anni fa
  zhaolx5 ac019a0444 Merge remote-tracking branch 'origin/master' 4 anni fa
  zhaolx5 d80c144412 变更ipu-cache的版本号 4 anni fa
  konghl 5c299da82a 问题修改 4 anni fa
  chenxr3 c65072f9be 定位提交 4 anni fa
  konghl 9d8fd7b88a 增加设备和围栏的判断字段 4 anni fa
  wangchao 9773787bd2 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 0c3414ba5f 配置文件增加注释 4 anni fa
  wangchao 62a630e635 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 59071e3124 增加空格 4 anni fa
  konghl 4b9cfc964f 新增mock工程 4 anni fa
  konghl 8ff2333bdb 修改配置文件,用于上传服务器 4 anni fa
  konghl 35e8568374 修改项目名称,用于上传服务器 4 anni fa
  konghl 296cdba193 重构后台系统,仅用于上传服务器 4 anni fa
  konghl 0122efbabc 重构后台系统,仅用于上传服务器 4 anni fa
  konghl 9a39799cc0 部署服务器,修改配置文件 4 anni fa
  konghl ddf35fd300 暂时不启用非实体对象的判断 4 anni fa
  chenxr3 7939fc8ace 首页修改提交 4 anni fa
  konghl db678770b9 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc.git 4 anni fa
  konghl bebb2b89fe 人员定位问题修改 4 anni fa
  konghl 04ada0e6f8 实时救援问题修改 4 anni fa
  wangkang3 33bb67ddb7 提交 4 anni fa
  chenxr3 b15b5e27ad 首页修改提交 4 anni fa
  konghl 8b281e8053 修改pom,排除登录验证 4 anni fa
  konghl cb0c0e8182 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc.git 4 anni fa
  konghl 53804e97f6 修改镜屏推送信息 4 anni fa
  konghl 6809ddead2 重构实时报警和历史报警 4 anni fa
  konghl 2363abc631 修改镜屏topic 4 anni fa
  konghl 6c328c4398 轨迹查询重构 4 anni fa
  konghl b0ee3a41b4 历史轨迹回放重构,增加定时任务判断设备离线 4 anni fa
  chenxr3 622b446cee 首页修改提交 4 anni fa
  chenxr3 4756df9027 修改提交 4 anni fa
  konghl 67e75e92ff 删除枚举等,重构人员定位 4 anni fa
  chenxr3 563af28335 修改提交 4 anni fa
  konghl 08a6631852 修改设备类型 4 anni fa
  konghl c183618ccb Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc.git 4 anni fa
  konghl 2387b3f8e5 修改设备 4 anni fa
  konghl 7712978aac 修改地图标记类型和设备类型 4 anni fa
  konghl 97a96a8da4 中台服务的版本从2.1升级为2.1.5 4 anni fa
  chenxr3 626a7699ce 修改提交 4 anni fa
  konghl cbbdfa675d 修改北向接口缓存方式 4 anni fa
  konghl 387e92633d Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc into master 4 anni fa
  konghl 9ec6ffcd72 统一设备管理返回格式 4 anni fa
  konghl 46d45bf56c Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc into master 4 anni fa
  konghl b61fa21c4f 修改kafka配置文件 4 anni fa
  konghl 24f03b82fc 统一设备管理的返回格式 4 anni fa
  konghl 8c1bd0a40d Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc.git 4 anni fa
  konghl d6c9ee7ac9 统一用户管理返回值 4 anni fa
  konghl 2667543ebe 修改人员信息返回值 4 anni fa
  konghl 33f605d78d Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc into master 4 anni fa
  konghl 8c6e6b34db 统一地图标记和终端管理的返回格式 4 anni fa
  konghl 6f5679bb9b 修改pom 4 anni fa
  konghl f8ec732c5e 配置kafka 4 anni fa
  wangchao 91cb23750d Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 7a19aa2489 加入uspa拦截器token验证 4 anni fa
  wangchao 605bfe142d Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 0307a3595b 用户管理删除和新增 4 anni fa
  wangchao 42c9ce12f2 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 2f12fb16fb 终端绑定 4 anni fa
  wangchao a4780fea36 后台项目初始化 4 anni fa
  wangchao 1d225203e0 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 7b5bd7fc8f 解绑查询关联关系 4 anni fa
  wangchao 5b7ada9d09 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 3abd9ac159 测试 4 anni fa
  wangchao 5c2edbe8f2 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 701921f2c7 设备管理分页查询的修改 4 anni fa
  wangchao d1e6198a6c 设备管理报错修改 4 anni fa
  wangchao cd2a9a0807 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 42136256e1 设备管理模块后台修改 4 anni fa
  konghl e5ac90e3cc 修改git忽略文件配置 4 anni fa
  konghl 173629f8c7 修改用户管理 4 anni fa
  konghl 8b50ef3257 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc.git 4 anni fa
  konghl 15425d68aa 用户管理功能修改 4 anni fa
  wangchao f4c0dc51b9 后台项目安防一体化系统初始化 4 anni fa
  konghl e9eb1c63df 修改工程,无错误 4 anni fa
  zhaolx5 12e2261ca9 初始化工程 4 anni fa
  wangchao 21a1d106ba Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao d53bf64414 修改项目结构 4 anni fa
  wangchao 10d36573b9 修改项目结构 4 anni fa
  wangkang3 657320fadd 提交 4 anni fa
  wangchao 993f22008d Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 1e6aae2459 修改设备添加数据库时间 4 anni fa
  konghl aa3a0f690d 实际报警初始化查询 4 anni fa
  konghl 3640ccd134 拆分properties配置文件 4 anni fa
  konghl 9afed3d1cd 修改镜屏名称、新增查询历史报警救援等 4 anni fa
  konghl 52a85f945f 修改日期工具类 4 anni fa
  wanyao ee205bc24c 回退 4 anni fa
  wanyao 16d1d23fee 主机启动慢的原因测试1 4 anni fa
  wangkang3 d34871ad0c Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangkang3 57e2b527f0 修改镜屏uuid 4 anni fa
  wangkang3 a4f2b748b2 提交 4 anni fa
  wangkang3 07f3e9bb23 修改提交 4 anni fa
  konghl 499e7a7d94 合并海图参数 4 anni fa
  konghl fe61027787 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc.git 4 anni fa
  konghl 70691e3608 增加海图配置参数、重构数据推送、新增轨迹回放接口 4 anni fa
  konghl 510c6be0e7 修改人员定位功能数据订阅的解析 4 anni fa
  chenxr3 186e9e66f4 轨迹分析页面 4 anni fa
  wangchao 71ba3d6e50 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao eb6f6af53e 修改时间工具类与轨迹分析 4 anni fa
  wangchao dc4c59924a Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 1c6dc5d9cd 轨迹分析信息查询 4 anni fa
  chenxr3 69f534d648 地图标记绘制多边形颜色优化 4 anni fa
  konghl ea8cc62767 修改配置文件 4 anni fa
  wangchao ffb3b16b49 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 4f36bbe4f2 考勤方法的修改 4 anni fa
  wangchao 4ea204d4e4 考勤查询功能详情信息 4 anni fa
  wangchao 76ba12e88b Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 8088a9af4d 考勤查询功能 4 anni fa
  konghl 0824340e9c 修改人员定位功能 4 anni fa
  wangchao ceb2e684c3 测试批量插入 4 anni fa
  wangchao a19b9e2346 合并代码 4 anni fa
  wangchao d0cdba1219 Merge remote-tracking branch 'origin/master' 4 anni fa
  wangchao 14d32a62c0 删除终端时删除终端绑定关系 4 anni fa
  wangchao 1d834a772a 删除终端时删除终端绑定关系 4 anni fa
  chenxr3 8e19767361 设备类型标识格式更改 4 anni fa
  konghl b8a06cf6e6 添加人员的枚举值 4 anni fa
  konghl ec04cf2f49 删除.project文件 4 anni fa
  konghl 2e3c3b67ca 修改枚举位置 4 anni fa
  konghl 004b6f9498 新增定位推送,修改枚举类的位置 4 anni fa
  wangkang3 76ef98bf1e 代码提交 4 anni fa
  wangchao 63feb0d24b 终端管理页面加ui替换 4 anni fa
  wangchao e0572c53e1 关联终端,解绑终端修改,考勤管理架子编写 4 anni fa
  wangchao 9ff2237cbf 关联终端,解绑终端修改 4 anni fa
  wangchao 7acc72f757 关联终端,解绑终端修改 4 anni fa
  wangchao 332e05b5f4 关联终端,解绑终端修改 4 anni fa
  wangchao b7fe4ca37c 后台daoimpl的修改 4 anni fa
  konghl a3c4950238 修改字段 4 anni fa
  konghl 48cb0bbdfa 增加返回参数 4 anni fa
  konghl 429b4dbfa9 修改北向接口 4 anni fa
  konghl 2e0b6dcd44 增加业务常量 4 anni fa
  konghl 12d7573f2e 新增功能:地图标记增删改查 4 anni fa
  wangkang3 8f7b30e3be 地图标记模块接口接入 4 anni fa
  chenxr3 1013865ef3 设备管理页面 4 anni fa
  wangchao 97dca84162 修改设备验证 4 anni fa
  wangchao 0c9930d3e3 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangchao 8bd1ff2323 终端关联,终端解绑等接口 4 anni fa
  wangchao d01adabd91 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangchao d40c613702 修改gis接口等 4 anni fa
  wangchao 35550a3e47 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangchao bd86ba7a47 设备增删改查以及关联与解绑终端 4 anni fa
  wangchao a8c7c1cf4d 项目配置修改以及剔除uspa 4 anni fa
  wangchao c251472c3d gis获取token接口 4 anni fa
  wangchao fba9354c6a Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangchao 5ff38a7f9b 解决跨域问题 4 anni fa
  wangchao 74f666ab34 添加注释,增加轨迹文件等 4 anni fa
  wangchao 5f13388aac 修改地图管理文件 4 anni fa
  wangchao 41aea6126c Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangchao 24f1743496 按评审要求修改文件 4 anni fa
  wangchao 666c0f81c2 Merge branch 'master' of http://10.1.235.20:3000/asiainfo/ebc 4 anni fa
  wangchao 779c6e3826 修改日志文件 4 anni fa
  wangchao 0e5599165c 修改日志文件 4 anni fa
  wangchao c217a49b3a 更新项目 4 anni fa
  wangchao 408a2042a9 后台项目初始化 4 anni fa
  wangkang3 7bbf8eb6a8 页面初始化提交 4 anni fa
  liuchang 000ebd90c9 更新文件 4 anni fa
  liuchang 46a262ab4b 删除 4 anni fa
  liuchang d1d76df146 更新提交 4 anni fa
  wanyao 1d2d95bc39 删除 4 anni fa
  wanyao f74da4a0dd 删除 4 anni fa
  wanyao b667fddfbc 初始化 4 anni fa

+ 215 - 12
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/AttendanceReportServiceImpl.java

@ -14,10 +14,7 @@ import org.springframework.stereotype.Service;
14 14
import java.text.ParseException;
15 15
import java.text.SimpleDateFormat;
16 16
17
import java.util.Date;
18
import java.util.HashMap;
19
import java.util.List;
20
import java.util.Map;
17
import java.util.*;
21 18
22 19
/**
23 20
 * @Auther: 王超
@ -129,7 +126,110 @@ public class AttendanceReportServiceImpl implements AttendanceReportService {
129 126
                    }
130 127
                });
131 128
132
                String[] attendanceStatusArray = new String[2];
129
                //存放考勤状态
130
                ArrayList<Object> attendanceStatusList = new ArrayList<>();
131
                //判断是否是外勤
132
                if (dailyAttendance.get("goToWorkExceptionStatus")!=null&& "FIE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
133
                    attendanceStatusList.add("上午外勤");
134
                }
135
                if (dailyAttendance.get("goOffWorkExceptionStatus")!=null&&"FIE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
136
                    attendanceStatusList.add("下午外勤");
137
                }
138
                //判断是否是加班
139
                if (dailyAttendance.get("goToWorkExceptionStatus")!=null&& "OVE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
140
                    attendanceStatusList.add("上午加班");
141
                }
142
                if (dailyAttendance.get("goOffWorkExceptionStatus")!=null&&"OVE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
143
                    attendanceStatusList.add("下午加班");
144
                }
145
146
                //如果都正常有外勤显示外勤,没外勤显示正常,不属于异常考勤
147
                if("正常".equals(dailyAttendance.get("goToWorkStatus"))&&"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
148
                    if(!(null!=attendanceStatusList&&attendanceStatusList.size()>0)){
149
                        attendanceStatusList.add("正常");
150
                    }
151
                    dailyAttendance.put("isAbnormal",false);
152
                }
153
                //如果上午正常,下午非正常 则显示下午的
154
                if("正常".equals(dailyAttendance.get("goToWorkStatus"))&&!"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
155
                    if("迟到".equals(dailyAttendance.get("goOffWorkStatus"))){
156
                        attendanceStatusList.add("迟到"+dailyAttendance.get("goOffWorkTime") +"分");
157
                    }
158
                    if("早退".equals(dailyAttendance.get("goOffWorkStatus"))){
159
                        attendanceStatusList.add("早退"+dailyAttendance.get("goOffWorkTime") +"分");
160
                    }
161
                    if("旷工".equals(dailyAttendance.get("goOffWorkStatus"))){
162
                        attendanceStatusList.add("旷工"+dailyAttendance.get("goToWorkTime") +"天");
163
                    }
164
                    if("倒休".equals(dailyAttendance.get("goOffWorkStatus"))||"事假".equals(dailyAttendance.get("goOffWorkStatus"))||"年假".equals(dailyAttendance.get("goOffWorkStatus"))||"放假".equals(dailyAttendance.get("goOffWorkStatus"))||"病假".equals(dailyAttendance.get("goOffWorkStatus"))){
165
                        attendanceStatusList.add(dailyAttendance.get("goOffWorkStatus"));
166
                        dailyAttendance.put("isAbnormal",false);
167
                    }else{
168
                        dailyAttendance.put("isAbnormal",true);
169
                    }
170
                }
171
                //如果上午非正常,下午正常 则显示上午的
172
                if(!"正常".equals(dailyAttendance.get("goToWorkStatus"))&&"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
173
                    if("迟到".equals(dailyAttendance.get("goToWorkStatus"))){
174
                        attendanceStatusList.add("迟到"+dailyAttendance.get("goToWorkTime") +"分");
175
                    }
176
                    if("早退".equals(dailyAttendance.get("goToWorkStatus"))){
177
                        attendanceStatusList.add("早退"+dailyAttendance.get("goToWorkTime") +"分");
178
                    }
179
                    if("旷工".equals(dailyAttendance.get("goToWorkStatus"))){
180
                        attendanceStatusList.add("旷工"+dailyAttendance.get("goToWorkTime") +"天");
181
                    }
182
                    if("倒休".equals(dailyAttendance.get("goToWorkStatus"))||"事假".equals(dailyAttendance.get("goToWorkStatus"))||"年假".equals(dailyAttendance.get("goToWorkStatus"))||"放假".equals(dailyAttendance.get("goToWorkStatus"))||"病假".equals(dailyAttendance.get("goToWorkStatus"))){
183
                        attendanceStatusList.add(dailyAttendance.get("goToWorkStatus"));
184
                        dailyAttendance.put("isAbnormal",false);
185
                    }else{
186
                        dailyAttendance.put("isAbnormal",true);
187
                    }
188
                }
189
                //如果上午非正常,下午非正常
190
                if(!"正常".equals(dailyAttendance.get("goToWorkStatus"))&&!"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
191
                    //如果上下午状态相等且是放假 倒休 事假 年假 病假 放假 显示一种状态 非异常考勤
192
                    if(dailyAttendance.get("goToWorkStatus").equals(dailyAttendance.get("goOffWorkStatus"))&&("倒休".equals(dailyAttendance.get("goToWorkStatus"))||"事假".equals(dailyAttendance.get("goToWorkStatus"))||"年假".equals(dailyAttendance.get("goToWorkStatus"))||"放假".equals(dailyAttendance.get("goToWorkStatus"))||"病假".equals(dailyAttendance.get("goToWorkStatus")))){
193
                        attendanceStatusList.add(dailyAttendance.get("goToWorkStatus"));
194
                        dailyAttendance.put("isAbnormal",false);
195
                    }
196
                    //如果上下午状态相等且是旷工 显示一种状态 异常考勤
197
                    else if(dailyAttendance.get("goToWorkStatus").equals(dailyAttendance.get("goOffWorkStatus"))&&"旷工".equals(dailyAttendance.get("goToWorkStatus"))){
198
                        attendanceStatusList.add("旷工1天");
199
                        dailyAttendance.put("isAbnormal",true);
200
                    }else{
201
                        //显示俩种状态
202
                        String[] attendanceStatusArray = new String[2];
203
                        attendanceStatusArray[0]= (String) dailyAttendance.get("goToWorkStatus");
204
                        attendanceStatusArray[1]= (String) dailyAttendance.get("goOffWorkStatus");
205
                        dailyAttendance.put("isAbnormal",false);
206
207
                        if("迟到".equals(dailyAttendance.get("goToWorkStatus"))){
208
                            attendanceStatusArray[0]="迟到"+dailyAttendance.get("goToWorkTime") +"分";
209
                            dailyAttendance.put("isAbnormal",true);
210
                        }
211
                        if("早退".equals(dailyAttendance.get("goOffWorkStatus"))){
212
                            attendanceStatusArray[1]="早退"+dailyAttendance.get("goOffWorkTime") +"分";
213
                            dailyAttendance.put("isAbnormal",true);
214
                        }
215
                        if("旷工".equals(dailyAttendance.get("goToWorkStatus"))){
216
                            attendanceStatusArray[0]="旷工"+dailyAttendance.get("goToWorkTime") +"天";
217
                            dailyAttendance.put("isAbnormal",true);
218
                        }
219
                        if("旷工".equals(dailyAttendance.get("goOffWorkStatus"))){
220
                            attendanceStatusArray[0]="旷工"+dailyAttendance.get("goOffWorkTime") +"天";
221
                            dailyAttendance.put("isAbnormal",true);
222
                        }
223
                        if("未打卡".equals(dailyAttendance.get("goToWorkStatus"))||"未打卡".equals(dailyAttendance.get("goOffWorkStatus"))){
224
                            dailyAttendance.put("isAbnormal",true);
225
                        }
226
                        attendanceStatusList.add(attendanceStatusArray[0]);
227
                        attendanceStatusList.add(attendanceStatusArray[1]);
228
                    }
229
                    dailyAttendance.put("descr",attendanceStatusList);
230
                }
231
232
              /*  String[] attendanceStatusArray = new String[2];
133 233
                dailyAttendance.put("date",dailyAttendance.get("workDay"));
134 234
                dailyAttendance.put("isAbnormal",true);
135 235
                if("正常".equals(dailyAttendance.get("goToWorkStatus"))&&"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
@ -166,9 +266,9 @@ public class AttendanceReportServiceImpl implements AttendanceReportService {
166 266
                        attendanceStatusArray[0]= (String) dailyAttendance.get("goToWorkStatus");
167 267
                    }
168 268
                    dailyAttendance.put("descr",attendanceStatusArray);
169
                }
269
                }*/
170 270
            });
171
            List<Map<String, Object>> dataList = attendanceReportResponse.getData();
271
          /*  List<Map<String, Object>> dataList = attendanceReportResponse.getData();
172 272
            dataList.forEach((data)->{
173 273
                String[] attendanceStatus = (String[]) data.get("descr");
174 274
                if(null!=attendanceStatus&&attendanceStatus.length>0){
@ -178,7 +278,7 @@ public class AttendanceReportServiceImpl implements AttendanceReportService {
178 278
                        data.put("descr",attendanceStatusArray);
179 279
                    }
180 280
                }
181
            });
281
            });*/
182 282
183 283
            HashMap<String, Object> attendanceReportMap = new HashMap<>();
184 284
            attendanceReportMap.put("userId",params.get("id"));
@ -225,8 +325,111 @@ public class AttendanceReportServiceImpl implements AttendanceReportService {
225 325
                        dailyAttendance.put("goOffWorkStatus", clockingStatus.getValue());
226 326
                    }
227 327
                });
328
                //存放考勤状态
329
                ArrayList<Object> attendanceStatusList = new ArrayList<>();
330
                //判断是否是外勤
331
                if (dailyAttendance.get("goToWorkExceptionStatus")!=null&& "FIE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
332
                    attendanceStatusList.add("上午外勤");
333
                }
334
                if (dailyAttendance.get("goOffWorkExceptionStatus")!=null&&"FIE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
335
                    attendanceStatusList.add("下午外勤");
336
                }
337
                //判断是否是加班
338
                if (dailyAttendance.get("goToWorkExceptionStatus")!=null&& "OVE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
339
                    attendanceStatusList.add("上午加班");
340
                }
341
                if (dailyAttendance.get("goOffWorkExceptionStatus")!=null&&"OVE".equals(dailyAttendance.get("goToWorkExceptionStatus") )) {
342
                    attendanceStatusList.add("下午加班");
343
                }
344
345
                //如果都正常有外勤显示外勤,没外勤显示正常,不属于异常考勤
346
                if("正常".equals(dailyAttendance.get("goToWorkStatus"))&&"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
347
                    if(!(null!=attendanceStatusList&&attendanceStatusList.size()>0)){
348
                        attendanceStatusList.add("正常");
349
                    }
350
                    dailyAttendance.put("isAbnormal",false);
351
                }
352
                //如果上午正常,下午非正常 则显示下午的
353
                if("正常".equals(dailyAttendance.get("goToWorkStatus"))&&!"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
354
                    if("迟到".equals(dailyAttendance.get("goOffWorkStatus"))){
355
                        attendanceStatusList.add("迟到"+dailyAttendance.get("goOffWorkTime") +"分");
356
                    }
357
                    if("早退".equals(dailyAttendance.get("goOffWorkStatus"))){
358
                        attendanceStatusList.add("早退"+dailyAttendance.get("goOffWorkTime") +"分");
359
                    }
360
                    if("旷工".equals(dailyAttendance.get("goOffWorkStatus"))){
361
                        attendanceStatusList.add("旷工"+dailyAttendance.get("goToWorkTime") +"天");
362
                    }
363
                    if("倒休".equals(dailyAttendance.get("goOffWorkStatus"))||"事假".equals(dailyAttendance.get("goOffWorkStatus"))||"年假".equals(dailyAttendance.get("goOffWorkStatus"))||"放假".equals(dailyAttendance.get("goOffWorkStatus"))||"病假".equals(dailyAttendance.get("goOffWorkStatus"))){
364
                        attendanceStatusList.add(dailyAttendance.get("goOffWorkStatus"));
365
                        dailyAttendance.put("isAbnormal",false);
366
                    }else{
367
                        dailyAttendance.put("isAbnormal",true);
368
                    }
369
                }
370
                //如果上午非正常,下午正常 则显示上午的
371
                if(!"正常".equals(dailyAttendance.get("goToWorkStatus"))&&"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
372
                    if("迟到".equals(dailyAttendance.get("goToWorkStatus"))){
373
                        attendanceStatusList.add("迟到"+dailyAttendance.get("goToWorkTime") +"分");
374
                    }
375
                    if("早退".equals(dailyAttendance.get("goToWorkStatus"))){
376
                        attendanceStatusList.add("早退"+dailyAttendance.get("goToWorkTime") +"分");
377
                    }
378
                    if("旷工".equals(dailyAttendance.get("goToWorkStatus"))){
379
                        attendanceStatusList.add("旷工"+dailyAttendance.get("goToWorkTime") +"天");
380
                    }
381
                    if("倒休".equals(dailyAttendance.get("goToWorkStatus"))||"事假".equals(dailyAttendance.get("goToWorkStatus"))||"年假".equals(dailyAttendance.get("goToWorkStatus"))||"放假".equals(dailyAttendance.get("goToWorkStatus"))||"病假".equals(dailyAttendance.get("goToWorkStatus"))){
382
                        attendanceStatusList.add(dailyAttendance.get("goToWorkStatus"));
383
                        dailyAttendance.put("isAbnormal",false);
384
                    }else{
385
                        dailyAttendance.put("isAbnormal",true);
386
                    }
387
                }
388
                //如果上午非正常,下午非正常
389
                if(!"正常".equals(dailyAttendance.get("goToWorkStatus"))&&!"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
390
                    //如果上下午状态相等且是放假 倒休 事假 年假 病假 放假 显示一种状态 非异常考勤
391
                    if(dailyAttendance.get("goToWorkStatus").equals(dailyAttendance.get("goOffWorkStatus"))&&("倒休".equals(dailyAttendance.get("goToWorkStatus"))||"事假".equals(dailyAttendance.get("goToWorkStatus"))||"年假".equals(dailyAttendance.get("goToWorkStatus"))||"放假".equals(dailyAttendance.get("goToWorkStatus"))||"病假".equals(dailyAttendance.get("goToWorkStatus")))){
392
                        attendanceStatusList.add(dailyAttendance.get("goToWorkStatus"));
393
                        dailyAttendance.put("isAbnormal",false);
394
                    }
395
                    //如果上下午状态相等且是旷工 显示一种状态 异常考勤
396
                    else if(dailyAttendance.get("goToWorkStatus").equals(dailyAttendance.get("goOffWorkStatus"))&&"旷工".equals(dailyAttendance.get("goToWorkStatus"))){
397
                        attendanceStatusList.add("旷工1天");
398
                        dailyAttendance.put("isAbnormal",true);
399
                    }else{
400
                        //显示俩种状态
401
                        String[] attendanceStatusArray = new String[2];
402
                        attendanceStatusArray[0]= (String) dailyAttendance.get("goToWorkStatus");
403
                        attendanceStatusArray[1]= (String) dailyAttendance.get("goOffWorkStatus");
404
                        dailyAttendance.put("isAbnormal",false);
405
406
                        if("迟到".equals(dailyAttendance.get("goToWorkStatus"))){
407
                            attendanceStatusArray[0]="迟到"+dailyAttendance.get("goToWorkTime") +"分";
408
                            dailyAttendance.put("isAbnormal",true);
409
                        }
410
                        if("早退".equals(dailyAttendance.get("goOffWorkStatus"))){
411
                            attendanceStatusArray[1]="早退"+dailyAttendance.get("goOffWorkTime") +"分";
412
                            dailyAttendance.put("isAbnormal",true);
413
                        }
414
                        if("旷工".equals(dailyAttendance.get("goToWorkStatus"))){
415
                            attendanceStatusArray[0]="旷工"+dailyAttendance.get("goToWorkTime") +"天";
416
                            dailyAttendance.put("isAbnormal",true);
417
                        }
418
                        if("旷工".equals(dailyAttendance.get("goOffWorkStatus"))){
419
                            attendanceStatusArray[0]="旷工"+dailyAttendance.get("goOffWorkTime") +"天";
420
                            dailyAttendance.put("isAbnormal",true);
421
                        }
422
                        if("未打卡".equals(dailyAttendance.get("goToWorkStatus"))||"未打卡".equals(dailyAttendance.get("goOffWorkStatus"))){
423
                            dailyAttendance.put("isAbnormal",true);
424
                        }
425
                        attendanceStatusList.add(attendanceStatusArray[0]);
426
                        attendanceStatusList.add(attendanceStatusArray[1]);
427
                    }
428
                    dailyAttendance.put("descr",attendanceStatusList);
429
                }
228 430
229
                String[] attendanceStatusArray = new String[2];
431
432
               /* String[] attendanceStatusArray = new String[2];
230 433
231 434
                if("正常".equals(dailyAttendance.get("goToWorkStatus"))&&"正常".equals(dailyAttendance.get("goOffWorkStatus"))){
232 435
                    //上下班都正常
@ -263,12 +466,12 @@ public class AttendanceReportServiceImpl implements AttendanceReportService {
263 466
                        attendanceStatusArray[0]= (String) dailyAttendance.get("goToWorkStatus");
264 467
                    }
265 468
                    dailyAttendance.put("descr",attendanceStatusArray);
266
                }
469
                }*/
267 470
            });
268 471
        } catch (ParseException e) {
269 472
            e.printStackTrace();
270 473
        }
271
        List<Map<String, Object>> dataList = attendanceReport.getData().getData();
474
       /* List<Map<String, Object>> dataList = attendanceReport.getData().getData();
272 475
        dataList.forEach((data)->{
273 476
            String[] attendanceStatus = (String[]) data.get("attendanceStatus");
274 477
            if(null!=attendanceStatus&&attendanceStatus.length>0){
@ -278,7 +481,7 @@ public class AttendanceReportServiceImpl implements AttendanceReportService {
278 481
                    data.put("attendanceStatus",attendanceStatusArray);
279 482
                }
280 483
            }
281
        });
484
        });*/
282 485
        return attendanceReport;
283 486
    }
284 487
}