|
@@ -1556,26 +1556,74 @@ public class ReportController {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ //针对填写日报
|
|
|
|
+ if (!createDate[0].contains("@")) {
|
|
|
|
+ if (company.getId() == 3918) {
|
|
|
|
+ List<UserCorpwxTime> cardTimeList = userCorpwxTimeMapper.selectList(new QueryWrapper<UserCorpwxTime>().eq("corpwx_userid", user.getCorpwxUserid()).eq("create_date", createDate[0]));
|
|
|
|
+ //凡己科技,提交时仅针对请假的时候做限制
|
|
|
|
+ for (Report r : reportList) {
|
|
|
|
+ Optional<UserCorpwxTime> first = cardTimeList.stream().filter(card -> card.getCreateDate().isEqual(r.getCreateDate())).findFirst();
|
|
|
|
+ if (first.isPresent()) {
|
|
|
|
+ if (first.get().getAskLeaveTime() >= comTimeType.getAllday()) {
|
|
|
|
+ HttpRespMsg msg = new HttpRespMsg();
|
|
|
|
+ msg.setError(dtf.format(r.getCreateDate())+"全天请假,不可填报");
|
|
|
|
+ return msg;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
if (createDate[0].contains("@") && targetUserList == null) {
|
|
if (createDate[0].contains("@") && targetUserList == null) {
|
|
//个人批量填报,判断是否需要考勤校验
|
|
//个人批量填报,判断是否需要考勤校验
|
|
if (comTimeType.getSyncCorpwxTime() == 1) {
|
|
if (comTimeType.getSyncCorpwxTime() == 1) {
|
|
String[] dateArr = createDate[0].split("@");
|
|
String[] dateArr = createDate[0].split("@");
|
|
List<UserCorpwxTime> cardTimeList = userCorpwxTimeMapper.selectList(new QueryWrapper<UserCorpwxTime>().eq("corpwx_userid", user.getCorpwxUserid()).between("create_date", dateArr[0], dateArr[1]));
|
|
List<UserCorpwxTime> cardTimeList = userCorpwxTimeMapper.selectList(new QueryWrapper<UserCorpwxTime>().eq("corpwx_userid", user.getCorpwxUserid()).between("create_date", dateArr[0], dateArr[1]));
|
|
- //提交日报时,考勤记录不能为空或时长为0
|
|
|
|
- if (comTimeType.getNotAllowedNoAttendance() == 1 && draft == 0) {
|
|
|
|
|
|
+ if (company.getId() == 3918) {
|
|
|
|
+ //凡己科技,提交时仅针对请假的时候做限制
|
|
|
|
+ for (Report r : reportList) {
|
|
|
|
+ Optional<UserCorpwxTime> first = cardTimeList.stream().filter(card -> card.getCreateDate().isEqual(r.getCreateDate())).findFirst();
|
|
|
|
+ if (first.isPresent()) {
|
|
|
|
+ if (first.get().getAskLeaveTime() >= comTimeType.getAllday()) {
|
|
|
|
+ HttpRespMsg msg = new HttpRespMsg();
|
|
|
|
+ msg.setError(dtf.format(r.getCreateDate())+"全天请假,不可填报");
|
|
|
|
+ return msg;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ //提交日报时,考勤记录不能为空或时长为0
|
|
|
|
+ if (comTimeType.getNotAllowedNoAttendance() == 1 && draft == 0) {
|
|
|
|
+ String str = "";
|
|
|
|
+ for (Report r : reportList) {
|
|
|
|
+ Optional<UserCorpwxTime> first = cardTimeList.stream().filter(card -> card.getCreateDate().isEqual(r.getCreateDate())).findFirst();
|
|
|
|
+ if (first.isPresent()) {
|
|
|
|
+ if (first.get().getWorkHours() == 0) {
|
|
|
|
+ str += dtf.format(r.getCreateDate()) + ",";
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ str += dtf.format(r.getCreateDate()) + ",";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //有无考勤的日期
|
|
|
|
+ if (str.length() > 0) {
|
|
|
|
+ str = str.substring(0, str.length()-1);
|
|
|
|
+ HttpRespMsg msg = new HttpRespMsg();
|
|
|
|
+ msg.setError(MessageUtils.message("report.lackCardTime", str));
|
|
|
|
+ return msg;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
String str = "";
|
|
String str = "";
|
|
for (Report r : reportList) {
|
|
for (Report r : reportList) {
|
|
Optional<UserCorpwxTime> first = cardTimeList.stream().filter(card -> card.getCreateDate().isEqual(r.getCreateDate())).findFirst();
|
|
Optional<UserCorpwxTime> first = cardTimeList.stream().filter(card -> card.getCreateDate().isEqual(r.getCreateDate())).findFirst();
|
|
if (first.isPresent()) {
|
|
if (first.isPresent()) {
|
|
- if (first.get().getWorkHours() == 0) {
|
|
|
|
|
|
+ double cardTime = first.get().getWorkHours();
|
|
|
|
+ if (r.getWorkingTime() > cardTime) {
|
|
str += dtf.format(r.getCreateDate()) + ",";
|
|
str += dtf.format(r.getCreateDate()) + ",";
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
- str += dtf.format(r.getCreateDate()) + ",";
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- //有无考勤的日期
|
|
|
|
if (str.length() > 0) {
|
|
if (str.length() > 0) {
|
|
str = str.substring(0, str.length()-1);
|
|
str = str.substring(0, str.length()-1);
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
@@ -1583,22 +1631,6 @@ public class ReportController {
|
|
return msg;
|
|
return msg;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- String str = "";
|
|
|
|
- for (Report r : reportList) {
|
|
|
|
- Optional<UserCorpwxTime> first = cardTimeList.stream().filter(card -> card.getCreateDate().isEqual(r.getCreateDate())).findFirst();
|
|
|
|
- if (first.isPresent()) {
|
|
|
|
- double cardTime = first.get().getWorkHours();
|
|
|
|
- if (r.getWorkingTime() > cardTime) {
|
|
|
|
- str += dtf.format(r.getCreateDate()) + ",";
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- if (str.length() > 0) {
|
|
|
|
- str = str.substring(0, str.length()-1);
|
|
|
|
- HttpRespMsg msg = new HttpRespMsg();
|
|
|
|
- msg.setError(MessageUtils.message("report.lackCardTime", str));
|
|
|
|
- return msg;
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
//更新填报时间
|
|
//更新填报时间
|