From 60afc1c228318d136a273cd0b389217f87583277 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期六, 11 十月 2025 11:29:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationChangeServiceImpl.java |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationChangeServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationChangeServiceImpl.java
index e73f360..b626667 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationChangeServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationChangeServiceImpl.java
@@ -1,11 +1,12 @@
 package com.ruoyi.system.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
-import cn.hutool.core.collection.CollUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.system.constants.ApprovalApplicationCodePrefix;
 import com.ruoyi.system.dto.asset.OaApprovalApplicationChangeDTO;
 import com.ruoyi.system.emums.ApprovalStatusEnum;
 import com.ruoyi.system.emums.ApprovalTypeEnum;
@@ -57,10 +58,8 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void submitChange(OaApprovalApplicationChangeDTO dto) {
-        if (CollUtil.isEmpty(dto.getAssetMainIds())) {
-            throw new ServiceException("资产ID列表不能为空");
-        }
-        
+        //校验资产状态
+        oaApprovalApplicationAssetItemService.validateAssetStatus(dto.getAssetMainIds());
         // 1. 构建并保存审批主表
         OaApprovalApplications applications = buildOaApprovalApplications(dto);
 
@@ -90,10 +89,14 @@
 
     private OaApprovalApplications buildOaApprovalApplications(OaApprovalApplicationChangeDTO dto) {
         OaApprovalApplications applications = BeanUtil.copyProperties(dto, OaApprovalApplications.class);
-        applications.setApplicationCode(generateApplicationCode("BG"));
+        applications.setApplicationCode(oaApprovalApplicationsService.generateApplicationCode(ApprovalApplicationCodePrefix.ASSET_CHANGE));
         applications.setApprovalId(ApprovalTypeEnum.ASSET_CHANGE.getCode());
         applications.setApplicationDate(LocalDate.now());
         applications.setApprovalStatus(ApprovalStatusEnum.PENDING.getCode());
+        applications.setApplicantUserId(SecurityUtils.getUserId().intValue());
+        applications.setApplicantName(SecurityUtils.getLoginUser().getUser().getNickName());
+        applications.setDeptId(Integer.parseInt(SecurityUtils.getLoginUser().getUser().getDeptId()));
+        applications.setDeptName(SecurityUtils.getLoginUser().getUser().getDeptName());
         return applications;
     }
 

--
Gitblit v1.7.1