新增车间计算记录与数据看板

This commit is contained in:
2025-05-15 21:35:16 +08:00
parent a63afc6bfb
commit a0bc26ef3a
31 changed files with 1127 additions and 78 deletions

View File

@@ -0,0 +1,102 @@
package com.ruoyi.oa.controller;
import java.util.List;
import java.util.Arrays;
import java.util.concurrent.TimeUnit;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.core.validate.QueryGroup;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.oa.domain.vo.OaAttendanceRecordVo;
import com.ruoyi.oa.domain.bo.OaAttendanceRecordBo;
import com.ruoyi.oa.service.IOaAttendanceRecordService;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 计算记录
*
* @author ruoyi
* @date 2025-05-15
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/oa/attendanceRecord")
public class OaAttendanceRecordController extends BaseController {
private final IOaAttendanceRecordService iOaAttendanceRecordService;
/**
* 查询计算记录列表
*/
@GetMapping("/list")
public TableDataInfo<OaAttendanceRecordVo> list(OaAttendanceRecordBo bo, PageQuery pageQuery) {
return iOaAttendanceRecordService.queryPageList(bo, pageQuery);
}
@GetMapping("/gen-list/{date}")
public R<List<String>> list(@PathVariable String date) {
return R.ok(iOaAttendanceRecordService.listGenDate(date));
}
/**
* 导出计算记录列表
*/
@PostMapping("/export")
public void export(OaAttendanceRecordBo bo, HttpServletResponse response) {
List<OaAttendanceRecordVo> list = iOaAttendanceRecordService.queryList(bo);
ExcelUtil.exportExcel(list, "计算记录", OaAttendanceRecordVo.class, response);
}
/**
* 获取计算记录详细信息
*
* @param recordId 主键
*/
@GetMapping("/{recordId}")
public R<OaAttendanceRecordVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long recordId) {
return R.ok(iOaAttendanceRecordService.queryById(recordId));
}
/**
* 新增计算记录
*/
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody OaAttendanceRecordBo bo) {
return toAjax(iOaAttendanceRecordService.insertByBo(bo));
}
/**
* 修改计算记录
*/
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody OaAttendanceRecordBo bo) {
return toAjax(iOaAttendanceRecordService.updateByBo(bo));
}
/**
* 删除计算记录
*
* @param recordIds 主键串
*/
@DeleteMapping("/{recordIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] recordIds) {
return toAjax(iOaAttendanceRecordService.deleteWithValidByIds(Arrays.asList(recordIds), true));
}
}

View File

@@ -42,7 +42,6 @@ public class OaReportDetailController extends BaseController {
/**
* 查询设计项目汇报详情列表
*/
@SaCheckPermission("system:reportDetail:list")
@GetMapping("/list")
public TableDataInfo<OaReportDetailVo> list(OaReportDetailBo bo, PageQuery pageQuery) {
return iOaReportDetailService.queryPageList(bo, pageQuery);
@@ -51,7 +50,6 @@ public class OaReportDetailController extends BaseController {
/**
* 导出设计项目汇报详情列表
*/
@SaCheckPermission("system:reportDetail:export")
@Log(title = "设计项目汇报详情", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(OaReportDetailBo bo, HttpServletResponse response) {
@@ -64,7 +62,6 @@ public class OaReportDetailController extends BaseController {
*
* @param id 主键
*/
@SaCheckPermission("system:reportDetail:query")
@GetMapping("/{id}")
public R<OaReportDetailVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
@@ -74,7 +71,6 @@ public class OaReportDetailController extends BaseController {
/**
* 新增设计项目汇报详情
*/
@SaCheckPermission("system:reportDetail:add")
@Log(title = "设计项目汇报详情", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
@@ -85,7 +81,6 @@ public class OaReportDetailController extends BaseController {
/**
* 修改设计项目汇报详情
*/
@SaCheckPermission("system:reportDetail:edit")
@Log(title = "设计项目汇报详情", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
@@ -98,8 +93,6 @@ public class OaReportDetailController extends BaseController {
*
* @param ids 主键串
*/
@SaCheckPermission("system:reportDetail:remove")
@Log(title = "设计项目汇报详情", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {

View File

@@ -42,7 +42,6 @@ public class OaReportSummaryController extends BaseController {
/**
* 查询设计项目汇报概述列表
*/
@SaCheckPermission("system:reportSummary:list")
@GetMapping("/list")
public TableDataInfo<OaReportSummaryVo> list(OaReportSummaryBo bo, PageQuery pageQuery) {
return iOaReportSummaryService.queryPageList(bo, pageQuery);
@@ -51,7 +50,6 @@ public class OaReportSummaryController extends BaseController {
/**
* 导出设计项目汇报概述列表
*/
@SaCheckPermission("system:reportSummary:export")
@Log(title = "设计项目汇报概述", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(OaReportSummaryBo bo, HttpServletResponse response) {
@@ -64,7 +62,6 @@ public class OaReportSummaryController extends BaseController {
*
* @param id 主键
*/
@SaCheckPermission("system:reportSummary:query")
@GetMapping("/{id}")
public R<OaReportSummaryVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
@@ -74,7 +71,6 @@ public class OaReportSummaryController extends BaseController {
/**
* 新增设计项目汇报概述
*/
@SaCheckPermission("system:reportSummary:add")
@Log(title = "设计项目汇报概述", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
@@ -85,7 +81,6 @@ public class OaReportSummaryController extends BaseController {
/**
* 修改设计项目汇报概述
*/
@SaCheckPermission("system:reportSummary:edit")
@Log(title = "设计项目汇报概述", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
@@ -98,7 +93,6 @@ public class OaReportSummaryController extends BaseController {
*
* @param ids 主键串
*/
@SaCheckPermission("system:reportSummary:remove")
@Log(title = "设计项目汇报概述", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")

View File

@@ -8,6 +8,7 @@ import java.util.Arrays;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.oa.domain.LaborCostData;
import com.ruoyi.oa.domain.vo.AttendanceMonthlyCount;
import com.ruoyi.oa.domain.vo.SysUserVo;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
@@ -163,4 +164,21 @@ public class SysOaAttendanceController extends BaseController {
public R<Void> insertBatch(@Validated(AddGroup.class) @RequestBody SysOaAttendanceBo bo) {
return toAjax( iSysOaAttendanceService.insertBatch(bo));
}
@GetMapping("/data/{refDate}")
public R<List<AttendanceMonthlyCount>> selectLastSixMonthsByMonth(@PathVariable String refDate) {
return R.ok(iSysOaAttendanceService.selectLastSixMonthsByMonth(refDate));
}
@GetMapping("/data/pie/{refDate}")
public R<AttendanceMonthlyCount> selectAttendanceMonthlyCountByMonth(@PathVariable String refDate) {
return R.ok(iSysOaAttendanceService.selectAttendanceMonthlyCountByMonth(refDate));
}
@GetMapping("/data/card/{refDate}")
public R<List<AttendanceMonthlyCount>> selectMonthlyCounts(@PathVariable String refDate) {
return R.ok(iSysOaAttendanceService.selectMonthlyCounts(refDate));
}
}