!75 czh-20260710-支持统计完成事项状态以及逾期个数
Merge pull request !75 from 陈志浩/feature/bpm_status-20260710
This commit is contained in:
+29
@@ -22,6 +22,8 @@ import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.jeecg.common.util.oConvertUtils;
|
||||
import org.jeecg.modules.demo.bgpartymatter.dto.BgPartymatterBpmSaveDTO;
|
||||
@@ -97,6 +99,33 @@ public class BgPartymatterController extends JeecgController<BgPartymatter, IBgP
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
@Operation(summary = "党委会/所务会-状态统计")
|
||||
@GetMapping(value = "/statusStats")
|
||||
public Result<Map<String, Integer>> statusStats(BgPartymatter bgPartymatter, HttpServletRequest req) {
|
||||
QueryWrapper<BgPartymatter> queryWrapper = QueryGenerator.initQueryWrapper(bgPartymatter, req.getParameterMap());
|
||||
List<BgPartymatter> list = bgPartymatterService.list(queryWrapper);
|
||||
int notStarted = 0, inProgress = 0, overdue = 0, completed = 0;
|
||||
java.time.LocalDate today = java.time.LocalDate.now();
|
||||
for (BgPartymatter item : list) {
|
||||
String status = item.getBpmStatus();
|
||||
if ("1".equals(status)) {
|
||||
notStarted++;
|
||||
} else if ("2".equals(status)) {
|
||||
inProgress++;
|
||||
if (item.getDeadline() != null && item.getDeadline().toInstant().atZone(java.time.ZoneId.systemDefault()).toLocalDate().isBefore(today)) {
|
||||
overdue++;
|
||||
}
|
||||
} else if ("3".equals(status)) {
|
||||
completed++;
|
||||
}
|
||||
}
|
||||
Map<String, Integer> result = new java.util.LinkedHashMap<>();
|
||||
result.put("notStarted", notStarted);
|
||||
result.put("inProgress", inProgress);
|
||||
result.put("overdue", overdue);
|
||||
result.put("completed", completed);
|
||||
return Result.OK(result);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<BgPartymatter> queryById(@RequestParam(name = "id", required = true) String id) {
|
||||
|
||||
+31
@@ -4,6 +4,7 @@ import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
import java.util.HashMap;
|
||||
|
||||
@@ -90,6 +91,36 @@ public class BgTakepulseController extends JeecgController<BgTakepulse, IBgTakep
|
||||
IPage<BgTakepulse> pageList = bgTakepulseService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
@Operation(summary = "我为四所把把脉-状态统计")
|
||||
@GetMapping(value = "/statusStats")
|
||||
public Result<Map<String, Integer>> statusStats(BgTakepulse bgTakepulse, HttpServletRequest req) {
|
||||
Map<String, QueryRuleEnum> customeRuleMap = new HashMap<>();
|
||||
customeRuleMap.put("year", QueryRuleEnum.LIKE_WITH_OR);
|
||||
customeRuleMap.put("taskType", QueryRuleEnum.LIKE_WITH_OR);
|
||||
QueryWrapper<BgTakepulse> queryWrapper = QueryGenerator.initQueryWrapper(bgTakepulse, req.getParameterMap(), customeRuleMap);
|
||||
List<BgTakepulse> list = bgTakepulseService.list(queryWrapper);
|
||||
int notStarted = 0, inProgress = 0, overdue = 0, completed = 0;
|
||||
java.time.LocalDate today = java.time.LocalDate.now();
|
||||
for (BgTakepulse item : list) {
|
||||
String status = item.getBpmStatus();
|
||||
if ("1".equals(status)) {
|
||||
notStarted++;
|
||||
} else if ("2".equals(status)) {
|
||||
inProgress++;
|
||||
if (item.getDeadline() != null && item.getDeadline().toInstant().atZone(java.time.ZoneId.systemDefault()).toLocalDate().isBefore(today)) {
|
||||
overdue++;
|
||||
}
|
||||
} else if ("3".equals(status)) {
|
||||
completed++;
|
||||
}
|
||||
}
|
||||
Map<String, Integer> result = new LinkedHashMap<>();
|
||||
result.put("notStarted", notStarted);
|
||||
result.put("inProgress", inProgress);
|
||||
result.put("overdue", overdue);
|
||||
result.put("completed", completed);
|
||||
return Result.OK(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
|
||||
Reference in New Issue
Block a user