优化
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
package com.ruoyi.web.controller.bgt;
|
||||
|
||||
import com.ruoyi.bgt.domain.BgtMessage;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruit;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruitApply;
|
||||
import com.ruoyi.bgt.domain.dto.BgtMessageDetailDTO;
|
||||
import com.ruoyi.bgt.domain.dto.BgtMessageMyListDTO;
|
||||
@ -10,12 +11,15 @@ import com.ruoyi.bgt.domain.vo.BgtMessageDetailVO;
|
||||
import com.ruoyi.bgt.domain.vo.BgtMessageVO;
|
||||
import com.ruoyi.bgt.service.IBgtMessageService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitService;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.RecruitApplyStatus;
|
||||
import com.ruoyi.wgz.bo.req.WgzAppPersonalBasicInformationReq;
|
||||
import com.ruoyi.wgz.bo.res.WgzAppPersonalBasicInformationRes;
|
||||
import com.ruoyi.wgz.service.IWgzAttendanceService;
|
||||
import com.ruoyi.wgz.service.IWgzPayCalculationService;
|
||||
import com.ruoyi.wgz.service.IWgzUserService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
@ -23,6 +27,8 @@ import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 消息Controller
|
||||
*
|
||||
@ -41,6 +47,12 @@ public class AppBgtMessageController extends BaseController {
|
||||
|
||||
private final IWgzUserService wgzUserService;
|
||||
|
||||
private final IWgzAttendanceService iWgzAttendanceService;
|
||||
|
||||
private final IWgzPayCalculationService iWgzPayCalculationService;
|
||||
|
||||
private final IBgtProjectRecruitService iBgtProjectRecruitService;
|
||||
|
||||
@ApiOperation("未读消息统计")
|
||||
@GetMapping("/countUnread")
|
||||
public AjaxResult<BgtMessageCountVO> count() {
|
||||
@ -85,10 +97,18 @@ public class AppBgtMessageController extends BaseController {
|
||||
WgzAppPersonalBasicInformationRes res = wgzUserService.userPersonalBasicInformation(req);
|
||||
BgtProjectRecruitApply apply = iBgtProjectRecruitApplyService.getById(recruitApplyId);
|
||||
res.setIsChoose(!apply.getStatus().equals(RecruitApplyStatus.SIGN_UP.getCode()));
|
||||
res.setWorkStatus(apply.getStatus());
|
||||
if(RecruitApplyStatus.getWorkStatus().contains(apply.getStatus())){
|
||||
BgtProjectRecruit recruit = iBgtProjectRecruitService.getById(apply.getRecruitId());
|
||||
//获取个人总工资
|
||||
BigDecimal allPay = iWgzAttendanceService.getAllPay(userId, recruitApplyId, recruit.getRecruitAmount());
|
||||
//获取个人已结算工资
|
||||
BigDecimal alreadyPay = iWgzPayCalculationService.getAlreadyPay(userId, recruitApplyId);
|
||||
res.setIsPay(allPay.equals(alreadyPay));
|
||||
}
|
||||
return AjaxResult.success(res);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation("未审批消息详情列表")
|
||||
@GetMapping("/unAuditList")
|
||||
public TableDataInfo<BgtMessageDetailVO> unAuditList(BgtMessageUnAuditDetailDTO dto) {
|
||||
|
@ -3,12 +3,13 @@ package com.ruoyi.web.controller.common;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.ruoyi.bgt.domain.BgtProjectRecruit;
|
||||
import com.ruoyi.bgt.service.IBgtProjectRecruitService;
|
||||
import com.ruoyi.bgt.service.IBgtUserService;
|
||||
import com.ruoyi.common.constant.Constants;
|
||||
import com.ruoyi.common.core.domain.entity.BgtUser;
|
||||
import com.ruoyi.common.domain.Annex;
|
||||
import com.ruoyi.common.domain.AnnexRecord;
|
||||
import com.ruoyi.common.service.IAnnexRecordService;
|
||||
import com.ruoyi.common.service.IAnnexService;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.wgz.domain.WgzUser;
|
||||
import com.ruoyi.wgz.service.IWgzUserService;
|
||||
import io.swagger.annotations.Api;
|
||||
@ -48,6 +49,7 @@ public class UploadZipController {
|
||||
private final IBgtProjectRecruitService recruitService;
|
||||
private final IAnnexService annexService;
|
||||
private final IAnnexRecordService annexRecordService;
|
||||
private final IBgtUserService bgtUserService;
|
||||
|
||||
private static final String TEMP_DIR = "ruoyi/uploadPath/temporaryZip";
|
||||
private static final String SAVE_DIR = "ruoyi/uploadPath/recruit";
|
||||
@ -55,7 +57,7 @@ public class UploadZipController {
|
||||
|
||||
@ApiOperation("上传压缩文件")
|
||||
@PostMapping("/upload-zip")
|
||||
public ResponseEntity<String> uploadZipFile(@RequestParam("file") MultipartFile file, @RequestParam("recruitId") Long recruitId) {
|
||||
public ResponseEntity<String> uploadZipFile(@RequestParam("file") MultipartFile file, @RequestParam("recruitId") Long recruitId, @RequestParam("userId") Long userId) {
|
||||
if (file.isEmpty()) {
|
||||
return ResponseEntity.badRequest().body("上传的文件为空");
|
||||
}
|
||||
@ -64,6 +66,12 @@ public class UploadZipController {
|
||||
return ResponseEntity.badRequest().body("招工信息不存在");
|
||||
}
|
||||
|
||||
BgtUser bgtUser = bgtUserService.selectUserByUserId(userId);
|
||||
if (bgtUser == null){
|
||||
return ResponseEntity.badRequest().body("当前用户不存在!");
|
||||
}
|
||||
|
||||
String username = bgtUser.getUsername();
|
||||
|
||||
try {
|
||||
// 保存上传的压缩文件
|
||||
@ -84,10 +92,10 @@ public class UploadZipController {
|
||||
processExtractedFolder(extractDir, recruitId);
|
||||
|
||||
// 将解压后的文件移动到 SAVE_DIR
|
||||
moveFilesToSaveDir(extractDir, recruitId);
|
||||
moveFilesToSaveDir(extractDir, recruitId, username);
|
||||
|
||||
// 异步执行 RECORD_DIR 操作和删除临时文件操作
|
||||
asyncProcessRecordAndDeleteTemp(extractDir, zipFile, recruitId,SecurityUtils.getUsername(),SecurityUtils.getAppUserId());
|
||||
asyncProcessRecordAndDeleteTemp(extractDir, zipFile, recruitId,username,userId);
|
||||
|
||||
return ResponseEntity.ok("文件上传并处理成功");
|
||||
} catch (IOException e) {
|
||||
@ -218,7 +226,7 @@ public class UploadZipController {
|
||||
}
|
||||
}
|
||||
|
||||
private void moveFilesToSaveDir(File sourceDir, Long recruitId) throws IOException {
|
||||
private void moveFilesToSaveDir(File sourceDir, Long recruitId,String username) throws IOException {
|
||||
// 移动到 SAVE_DIR
|
||||
File saveDestDir = new File(SAVE_DIR);
|
||||
ensureDirectoryExists(saveDestDir);
|
||||
@ -239,7 +247,7 @@ public class UploadZipController {
|
||||
// 删除和解压出来的二级目录同名字的目录
|
||||
deleteFolder(secondLevelDestDir);
|
||||
}
|
||||
moveFilesRecursively(firstLevelFile, firstLevelDestDir, annexList, recruitId);
|
||||
moveFilesRecursively(firstLevelFile, firstLevelDestDir, annexList, recruitId,username);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -248,14 +256,14 @@ public class UploadZipController {
|
||||
}
|
||||
}
|
||||
|
||||
private void moveFilesRecursively(File source, File destination, List<Annex> annexList, Long recruitId) throws IOException {
|
||||
private void moveFilesRecursively(File source, File destination, List<Annex> annexList, Long recruitId,String username) throws IOException {
|
||||
if (source.isDirectory()) {
|
||||
File newDir = new File(destination, source.getName());
|
||||
ensureDirectoryExists(newDir);
|
||||
File[] files = source.listFiles();
|
||||
if (files != null) {
|
||||
for (File file : files) {
|
||||
moveFilesRecursively(file, newDir, annexList, recruitId);
|
||||
moveFilesRecursively(file, newDir, annexList, recruitId,username);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@ -295,8 +303,8 @@ public class UploadZipController {
|
||||
annex.setUserType(Constants.WGZ);
|
||||
annex.setUserId(wgzUser.getUserId());
|
||||
annex.setRecruitId(recruitId);
|
||||
annex.setCreateBy(SecurityUtils.getUsername());
|
||||
annex.setUpdateBy(SecurityUtils.getUsername());
|
||||
annex.setCreateBy(username);
|
||||
annex.setUpdateBy(username);
|
||||
annexList.add(annex);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user