From f9c24cdd04de07001f078ea093b724e647ac35b2 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期五, 13 二月 2026 11:10:42 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New' into dev_New
---
src/main/java/com/ruoyi/compensationperformance/controller/CompensationPerformanceController.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 51 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/ruoyi/compensationperformance/controller/CompensationPerformanceController.java b/src/main/java/com/ruoyi/compensationperformance/controller/CompensationPerformanceController.java
index 1844b3e..f6eee0f 100644
--- a/src/main/java/com/ruoyi/compensationperformance/controller/CompensationPerformanceController.java
+++ b/src/main/java/com/ruoyi/compensationperformance/controller/CompensationPerformanceController.java
@@ -1,21 +1,32 @@
package com.ruoyi.compensationperformance.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.compensationperformance.pojo.CompensationPerformance;
import com.ruoyi.compensationperformance.service.CompensationPerformanceService;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.system.domain.SysUser;
+import com.ruoyi.project.system.mapper.SysUserMapper;
+import com.ruoyi.purchase.dto.PaymentRegistrationDto;
+import com.ruoyi.staff.mapper.StaffOnJobMapper;
+import com.ruoyi.staff.pojo.StaffOnJob;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
/**
* @author :yys
@@ -29,11 +40,14 @@
@Autowired
private CompensationPerformanceService compensationPerformanceService;
+ @Autowired
+ private StaffOnJobMapper staffOnJobMapper;
+
@GetMapping("/listPage")
@Log(title = "钖叕缁╂晥-鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER)
@ApiOperation("钖叕缁╂晥-鍒嗛〉鏌ヨ")
- public AjaxResult listPage(Page page, CompensationPerformance compensationPerformance){
- IPage<CompensationPerformance> listPage = compensationPerformanceService.listPage(page, compensationPerformance);
+ public AjaxResult listPage(Page page, String staffName, String payDateStr) {
+ IPage<CompensationPerformance> listPage = compensationPerformanceService.listPage(page, staffName, payDateStr);
return AjaxResult.success(listPage);
}
@@ -41,7 +55,7 @@
@Log(title = "钖叕缁╂晥-娣诲姞", businessType = BusinessType.INSERT)
@ApiOperation("钖叕缁╂晥-娣诲姞")
@Transactional(rollbackFor = Exception.class)
- public AjaxResult add(@RequestBody CompensationPerformance compensationPerformance){
+ public AjaxResult add(@RequestBody CompensationPerformance compensationPerformance) {
boolean save = compensationPerformanceService.save(compensationPerformance);
return save ? AjaxResult.success("娣诲姞鎴愬姛") : AjaxResult.error("娣诲姞澶辫触");
}
@@ -50,7 +64,7 @@
@Log(title = "钖叕缁╂晥-淇敼", businessType = BusinessType.UPDATE)
@ApiOperation("钖叕缁╂晥-淇敼")
@Transactional(rollbackFor = Exception.class)
- public AjaxResult update(@RequestBody CompensationPerformance compensationPerformance){
+ public AjaxResult update(@RequestBody CompensationPerformance compensationPerformance) {
boolean update = compensationPerformanceService.updateById(compensationPerformance);
return update ? AjaxResult.success("淇敼鎴愬姛") : AjaxResult.error("淇敼澶辫触");
}
@@ -59,11 +73,42 @@
@Log(title = "钖叕缁╂晥-鍒犻櫎", businessType = BusinessType.DELETE)
@ApiOperation("钖叕缁╂晥-鍒犻櫎")
@Transactional(rollbackFor = Exception.class)
- public AjaxResult delete(@RequestBody List<Long> ids){
- if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("璇蜂紶鍏ヨ鍒犻櫎鐨処D");
+ public AjaxResult delete(@RequestBody List<Long> ids) {
+ if (CollectionUtils.isEmpty(ids)) return AjaxResult.error("璇蜂紶鍏ヨ鍒犻櫎鐨処D");
boolean delete = compensationPerformanceService.removeBatchByIds(ids);
return delete ? AjaxResult.success("鍒犻櫎鎴愬姛") : AjaxResult.error("鍒犻櫎澶辫触");
}
+ @Log(title = "瀵煎嚭钖祫绠$悊鍒楄〃", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response) {
+ List<CompensationPerformance> list = compensationPerformanceService.exportList();
+ ExcelUtil<CompensationPerformance> util = new ExcelUtil<>(CompensationPerformance.class);
+ util.exportExcel(response, list, "瀵煎嚭钖祫绠$悊鍒楄〃");
+ }
+
+ @Log(title = "涓嬭浇钖祫绠$悊鍒楄〃妯℃澘", businessType = BusinessType.EXPORT)
+ @PostMapping("/exportTemplate")
+ public void exportTemplate(HttpServletResponse response) {
+ List<CompensationPerformance> list = new ArrayList<>();
+ ExcelUtil<CompensationPerformance> util = new ExcelUtil<>(CompensationPerformance.class);
+ util.exportExcel(response, list, "涓嬭浇钖祫绠$悊鍒楄〃妯℃澘");
+ }
+
+ @Log(title = "瀵煎叆钖祫绠$悊鍒楄〃", businessType = BusinessType.IMPORT)
+ @PostMapping("/importData")
+ public AjaxResult importData(MultipartFile file) throws Exception {
+ ExcelUtil<CompensationPerformance> util = new ExcelUtil<>(CompensationPerformance.class);
+ List<CompensationPerformance> list = util.importExcel(file.getInputStream());
+ list.forEach(item -> {
+ StaffOnJob staffOnJob = staffOnJobMapper.selectStaffByNickName(item.getStaffName());
+ if (staffOnJob != null) {
+ item.setStaffId(staffOnJob.getId());
+ }
+ });
+ boolean b = compensationPerformanceService.saveBatch(list);
+ return AjaxResult.success(b);
+ }
+
}
--
Gitblit v1.9.3