Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -697,7 +697,7 @@ public class DemandServiceImpl extends BaseService implements IDemandService {
|
||||
for (TaskNode taskNode : taskNodeList) {
|
||||
createDir(taskNode.getUuid(), parentUuid, taskNode.getNodeName());
|
||||
// 发送消息通知
|
||||
sendMessage(MessageTemplateEnum.TASK_ISSUE, taskNode.getNodeName());
|
||||
sendMessage(MessageTemplateEnum.TASK_ISSUE, taskNode.getNodeName(), taskNode.getUuid());
|
||||
}
|
||||
for (TaskNode taskNode : taskNodeList) {
|
||||
// 更新文件权限
|
||||
@@ -783,12 +783,15 @@ public class DemandServiceImpl extends BaseService implements IDemandService {
|
||||
return response;
|
||||
}
|
||||
|
||||
private void sendMessage(MessageTemplateEnum templateEnum, String taskName) {
|
||||
private void sendMessage(MessageTemplateEnum templateEnum, String taskName, String uuid) {
|
||||
SendMsgReq req = new SendMsgReq();
|
||||
req.setTitle(templateEnum.getTitle());
|
||||
req.setContent(templateEnum.getContent(taskName));
|
||||
req.setTenantId(ThreadLocalContext.getTenantId().toString());
|
||||
req.setUserId(ThreadLocalContext.getUserId().toString());
|
||||
JSONObject params = new JSONObject();
|
||||
params.put("taskId", uuid);
|
||||
req.setParams(JSONObject.toJSONString(params));
|
||||
messageFeignClient.sendMessage(req);
|
||||
}
|
||||
|
||||
|
||||
@@ -44,8 +44,8 @@ public class SystemLogController implements ISysLogFeignClient {
|
||||
* @param sysLog 系统日志
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/page")
|
||||
public SdmResponse<PageDataResp<List<SysLogDTO>>> getLogPage(@ParameterObject SysLogDTO sysLog) {
|
||||
@PostMapping("/page")
|
||||
public SdmResponse<PageDataResp<List<SysLogDTO>>> getLogPage(@RequestBody SysLogDTO sysLog) {
|
||||
return logService.getLogByPage(sysLog);
|
||||
}
|
||||
|
||||
@@ -54,8 +54,8 @@ public class SystemLogController implements ISysLogFeignClient {
|
||||
* @param sysLog
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getUserLoginStatistics")
|
||||
public SdmResponse<List<LoginStateResp>> getUserLoginStatistics(@ParameterObject SysLogDTO sysLog) {
|
||||
@PostMapping("/getUserLoginStatistics")
|
||||
public SdmResponse<List<LoginStateResp>> getUserLoginStatistics(@RequestBody SysLogDTO sysLog) {
|
||||
return logService.getUserLoginStatistics(sysLog);
|
||||
}
|
||||
|
||||
|
||||
@@ -31,9 +31,14 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.mysql.cj.util.TimeUtil.DATE_FORMATTER;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -62,6 +67,9 @@ public class ISysLogServiceImpl extends ServiceImpl<SysLogMapper, SysLog> implem
|
||||
}
|
||||
PageHelper.startPage(sysLog.getCurrent(), sysLog.getSize());
|
||||
List<SysLog> sysLogList = this.list(wrapper);
|
||||
PageInfo<SysLog> page = new PageInfo<>(sysLogList);
|
||||
long total = page.getTotal();
|
||||
|
||||
List<SysLogDTO> sysLogDTOList = sysLogList.stream().map(i -> {
|
||||
SysLogDTO sysLogDTO = new SysLogDTO();
|
||||
BeanUtils.copyProperties(i, sysLogDTO);
|
||||
@@ -70,14 +78,40 @@ public class ISysLogServiceImpl extends ServiceImpl<SysLogMapper, SysLog> implem
|
||||
}).toList();
|
||||
setCreatorNames(sysLogDTOList);
|
||||
|
||||
PageInfo<SysLogDTO> page = new PageInfo<>(sysLogDTOList);
|
||||
return PageUtils.getJsonObjectSdmResponse(sysLogDTOList, page);
|
||||
PageInfo<SysLogDTO> page1 = new PageInfo<>(sysLogDTOList);
|
||||
page1.setTotal(total);
|
||||
return PageUtils.getJsonObjectSdmResponse(sysLogDTOList, page1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SdmResponse<List<LoginStateResp>> getUserLoginStatistics(SysLogDTO sysLog) {
|
||||
List<LoginStateResp> respList = baseMapper.countDailyLoginUsers(sysLog.getCreateTimeArr()[0], sysLog.getCreateTimeArr()[1]);
|
||||
return SdmResponse.success(respList);
|
||||
String startDate = sysLog.getCreateTimeArr()[0];
|
||||
String endDate = sysLog.getCreateTimeArr()[1];
|
||||
List<LoginStateResp> respList = baseMapper.countDailyLoginUsers(startDate + " 00:00:00", endDate + " 23:59:59");
|
||||
// 将结果转换为Map,方便查找
|
||||
Map<String, Integer> resultMap = respList.stream()
|
||||
.collect(Collectors.toMap(
|
||||
LoginStateResp::getDate,
|
||||
LoginStateResp::getLoginUserCount
|
||||
));
|
||||
|
||||
// 解析日期范围
|
||||
LocalDate start = LocalDate.parse(startDate, DATE_FORMATTER);
|
||||
LocalDate end = LocalDate.parse(endDate, DATE_FORMATTER);
|
||||
// 生成完整日期列表
|
||||
List<LoginStateResp> fullResults = new ArrayList<>();
|
||||
LocalDate currentDate = start;
|
||||
|
||||
while (!currentDate.isAfter(end)) {
|
||||
LoginStateResp resp = new LoginStateResp();
|
||||
String dateStr = currentDate.format(DATE_FORMATTER);
|
||||
resp.setDate(dateStr);
|
||||
// 如果有数据则用数据,没有则为0
|
||||
resp.setLoginUserCount(resultMap.getOrDefault(dateStr, 0));
|
||||
fullResults.add(resp);
|
||||
currentDate = currentDate.plusDays(1);
|
||||
}
|
||||
return SdmResponse.success(fullResults);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user