From 8537a164dbd4c8696c3269141a8f18922d4ed15f Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 21 十月 2025 09:02:11 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationsController.java | 67 ++++++++++++++++++++++-----------
1 files changed, 44 insertions(+), 23 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationsController.java
index 29b8690..d6ffde2 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationsController.java
@@ -21,7 +21,7 @@
import com.ruoyi.system.dto.AddReimbursementDTO;
import com.ruoyi.system.emums.ApprovalStatusEnum;
import com.ruoyi.system.emums.ApprovalTypeEnum;
-import com.ruoyi.system.model.OaApprovalApplicationAdvertisement;
+import com.ruoyi.system.model.OaApprovalApplicationAd;
import com.ruoyi.system.model.OaApprovalApplicationAttendance;
import com.ruoyi.system.model.OaApprovalApplicationContact;
import com.ruoyi.system.model.OaApprovalApplicationContract;
@@ -32,7 +32,7 @@
import com.ruoyi.system.model.OaApprovalApplications;
import com.ruoyi.system.model.OaApprovalFlowNode;
import com.ruoyi.system.service.ISysUserService;
-import com.ruoyi.system.service.OaApprovalApplicationAdvertisementService;
+import com.ruoyi.system.service.OaApprovalApplicationAdService;
import com.ruoyi.system.service.OaApprovalApplicationAttendanceService;
import com.ruoyi.system.service.OaApprovalApplicationContactService;
import com.ruoyi.system.service.OaApprovalApplicationContractService;
@@ -48,12 +48,8 @@
import com.ruoyi.system.utils.UUIDUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
@@ -84,7 +80,7 @@
@Resource
private OaApprovalApplicationsService approvalApplicationsService;
@Resource
- private OaApprovalApplicationAdvertisementService approvalApplicationAdvertisementService;
+ private OaApprovalApplicationAdService approvalApplicationAdvertisementService;
@Resource
private OaApprovalApplicationContactService approvalApplicationContactService;
@Resource
@@ -108,6 +104,7 @@
@Resource
private OaApprovalTodoService oaApprovalTodoService;
@Log(title = "审批-发起请假", businessType = BusinessType.INSERT)
+ @Transactional
@ApiOperation(value = "发起请假")
@PostMapping(value = "/addLeave")
public R addLeave(@RequestBody AddLeaveDTO dto) {
@@ -176,6 +173,7 @@
@Log(title = "审批-发起外出申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起外出申请")
@PostMapping(value = "/addOut")
+ @Transactional
public R addOut(@RequestBody AddOutDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String code = "Out-"+sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
@@ -240,6 +238,7 @@
}
@Log(title = "审批-发起出差申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起出差申请")
+ @Transactional
@PostMapping(value = "/addBusinessTrip")
public R addBusinessTrip(@RequestBody AddBusinessTripDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
@@ -304,6 +303,7 @@
}
@Log(title = "审批-发起销假申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起销假申请")
+ @Transactional
@PostMapping(value = "/addLeaveDestroy")
public R addLeaveDestroy(@RequestBody AddLeaveDestroyDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
@@ -344,8 +344,8 @@
// 根据请假时间 查询请假申请记录
OaApprovalApplicationAttendance approvalApplicationAttendance = approvalApplicationAttendanceService.lambdaQuery()
.in(OaApprovalApplicationAttendance::getApprovalApplicationId,approvalIds)
- .ge(OaApprovalApplicationAttendance::getStartTime, dto.getStartTime())
- .le(OaApprovalApplicationAttendance::getEndTime, dto.getEndTime())
+ .le(OaApprovalApplicationAttendance::getStartTime, dto.getStartTime())
+ .ge(OaApprovalApplicationAttendance::getEndTime, dto.getEndTime())
.eq(OaApprovalApplicationAttendance::getIsLeave, 1)
.orderByDesc(OaApprovalApplicationAttendance::getId)
.last("limit 1").one();
@@ -365,9 +365,24 @@
Integer.valueOf(sysUser.getDeptId()));
return R.ok();
}
-
+ @ApiOperation(value = "查询当前用户审批通过且未销假的请假单")
+ @GetMapping(value = "/listLeaveApplications")
+ public R<List<OaApprovalApplicationAttendance>> listLeaveApplications() {
+ List<Integer> applicationsIds = approvalApplicationsService.lambdaQuery()
+ .eq(OaApprovalApplications::getApprovalId, ApprovalTypeEnum.LEAVE.getCode())
+ .eq(OaApprovalApplications::getApplicantUserId, tokenService.getLoginUser().getUserId())
+ .eq(OaApprovalApplications::getApprovalStatus, 2)
+ .list().stream().map(OaApprovalApplications::getId).collect(Collectors.toList());
+ if (applicationsIds.isEmpty()){
+ return R.ok(new ArrayList<>());
+ }
+ List<OaApprovalApplicationAttendance> list = approvalApplicationAttendanceService.lambdaQuery()
+ .in(OaApprovalApplicationAttendance::getApprovalApplicationId, applicationsIds).list();
+ return R.ok(list);
+ }
@Log(title = "审批-发起报销申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起报销申请")
+ @Transactional
@PostMapping(value = "/addReimbursement")
public R addReimbursement(@RequestBody AddReimbursementDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
@@ -397,9 +412,10 @@
approvalApplicationReimbursementService.save(oaApprovalApplicationReimbursement);
BigDecimal total = new BigDecimal(0);
List<OaApprovalApplicationReimbursementItem> oaApprovalApplicationReimbursementItems = new ArrayList<>();
- for (OaApprovalApplicationReimbursementItem oaApprovalApplicationReimbursementItem : oaApprovalApplicationReimbursementItems) {
- oaApprovalApplicationReimbursementItem.setApprovalApplicationId(oaApprovalApplicationReimbursement.getId());
+ for (OaApprovalApplicationReimbursementItem oaApprovalApplicationReimbursementItem : dto.getItems()) {
+ oaApprovalApplicationReimbursementItem.setApprovalApplicationId(oaApprovalApplications.getId());
total = total.add(oaApprovalApplicationReimbursementItem.getAmount());
+ oaApprovalApplicationReimbursementItems.add(oaApprovalApplicationReimbursementItem);
}
oaApprovalApplicationReimbursement.setReimbursementAmount(total);
approvalApplicationReimbursementService.updateById(oaApprovalApplicationReimbursement);
@@ -411,6 +427,7 @@
}
@Log(title = "审批-发起款项申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起款项申请")
+ @Transactional
@PostMapping(value = "/addMoney")
public R addMoney(@RequestBody AddMoneyDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
@@ -446,6 +463,7 @@
@Log(title = "审批-发起合同文件申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起合同文件申请")
@PostMapping(value = "/addContract")
+ @Transactional
public R addContract(@RequestBody AddContractDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String code = "Contract-"+sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
@@ -482,6 +500,7 @@
}
@Log(title = "审批-发起进度款支付申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起进度款支付申请")
+ @Transactional
@PostMapping(value = "/addPayment")
public R addPayment(@RequestBody AddPaymentDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
@@ -520,6 +539,7 @@
}
@Log(title = "审批-发起内部联系单申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起内部联系单申请")
+ @Transactional
@PostMapping(value = "/addContact")
public R addContact(@RequestBody AddContactDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
@@ -555,6 +575,7 @@
}
@Log(title = "审批-发起广告制作申请", businessType = BusinessType.INSERT)
@ApiOperation(value = "发起广告制作申请")
+ @Transactional
@PostMapping(value = "/addAdvertisement")
public R addAdvertisement(@RequestBody AddAdvertisementDTO dto) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
@@ -580,15 +601,15 @@
.one();
oaApprovalApplications.setCurrentFlowNodeId(approvalFlowNode.getId());
approvalApplicationsService.save(oaApprovalApplications);
- OaApprovalApplicationAdvertisement oaApprovalApplicationAdvertisement = new OaApprovalApplicationAdvertisement();
- oaApprovalApplicationAdvertisement.setApprovalApplicationId(oaApprovalApplications.getId());
- oaApprovalApplicationAdvertisement.setTitle(dto.getTitle());
- oaApprovalApplicationAdvertisement.setContent(dto.getContent());
- oaApprovalApplicationAdvertisement.setNumber(dto.getNumber());
- oaApprovalApplicationAdvertisement.setTotalAmount(dto.getTotalAmount());
- oaApprovalApplicationAdvertisement.setSpec(dto.getSpec());
- oaApprovalApplicationAdvertisement.setStatus(false);
- approvalApplicationAdvertisementService.save(oaApprovalApplicationAdvertisement);
+ OaApprovalApplicationAd oaApprovalApplicationAd = new OaApprovalApplicationAd();
+ oaApprovalApplicationAd.setApprovalApplicationId(oaApprovalApplications.getId());
+ oaApprovalApplicationAd.setTitle(dto.getTitle());
+ oaApprovalApplicationAd.setContent(dto.getContent());
+ oaApprovalApplicationAd.setNumber(dto.getNumber());
+ oaApprovalApplicationAd.setTotalAmount(dto.getTotalAmount());
+ oaApprovalApplicationAd.setSpec(dto.getSpec());
+ oaApprovalApplicationAd.setStatus(0);
+ approvalApplicationAdvertisementService.save(oaApprovalApplicationAd);
// 根据节点类型 生成代办
oaApprovalTodoService.createApprovalTodos(oaApprovalApplications.getId(), code, approvalFlowNode,
Integer.valueOf(sysUser.getDeptId()));
--
Gitblit v1.7.1