fix: 优化过鱼设施审批操作
This commit is contained in:
parent
2d654c9694
commit
3156eda07f
@ -106,6 +106,13 @@ public class FishDraftDataController {
|
||||
return result ? ResponseResult.success("删除成功") : ResponseResult.error("删除失败");
|
||||
}
|
||||
|
||||
@PostMapping("/batchRemoveDraft")
|
||||
@Operation(summary = "批量删除草稿(软删除)")
|
||||
public ResponseResult batchRemoveDraft(@RequestBody List<String> ids) {
|
||||
boolean result = fishDraftDataService.batchRemoveDraft(ids);
|
||||
return result ? ResponseResult.success("删除成功") : ResponseResult.error("删除失败");
|
||||
}
|
||||
|
||||
@PostMapping("/submitDraft")
|
||||
@Operation(summary = "提交草稿")
|
||||
public ResponseResult submitDraft(@RequestParam String id,
|
||||
@ -116,12 +123,29 @@ public class FishDraftDataController {
|
||||
|
||||
@PostMapping("/submitDrafts")
|
||||
@Operation(summary = "批量提交草稿")
|
||||
public ResponseResult submitDrafts(@RequestBody List<String> ids,
|
||||
@RequestParam String operatorId) {
|
||||
boolean result = fishDraftDataService.submitDrafts(ids, operatorId);
|
||||
public ResponseResult submitDrafts(@RequestBody List<String> ids) {
|
||||
boolean result = fishDraftDataService.submitDrafts(ids);
|
||||
return result ? ResponseResult.success("提交成功") : ResponseResult.error("提交失败");
|
||||
}
|
||||
|
||||
@PostMapping("/batchApprove")
|
||||
@Operation(summary = "批量审批通过")
|
||||
public ResponseResult batchApprove(@RequestBody List<String> ids,
|
||||
@RequestParam(required = false) String approveComment) {
|
||||
boolean result = fishDraftDataService.batchApprove(ids, approveComment);
|
||||
return result ? ResponseResult.success("审批通过") : ResponseResult.error("审批失败");
|
||||
}
|
||||
|
||||
@PostMapping("/reject")
|
||||
@Operation(summary = "审批驳回")
|
||||
public ResponseResult batchReject(@RequestParam String id,
|
||||
@RequestParam String rejectReason) {
|
||||
boolean result = fishDraftDataService.batchReject(id, rejectReason);
|
||||
return result ? ResponseResult.success("驳回成功") : ResponseResult.error("驳回失败");
|
||||
}
|
||||
|
||||
|
||||
|
||||
@PostMapping("/lockDraft")
|
||||
@Operation(summary = "锁定草稿")
|
||||
public ResponseResult lockDraft(@RequestParam String id) {
|
||||
|
||||
@ -36,6 +36,11 @@ public class FishDraftDataVO implements Serializable {
|
||||
*/
|
||||
private String ftp;
|
||||
|
||||
/**
|
||||
* 鱼类名称
|
||||
*/
|
||||
private String ftpName;
|
||||
|
||||
/**
|
||||
* 鱼类全长
|
||||
*/
|
||||
|
||||
@ -63,7 +63,17 @@ public interface IFishDraftDataService extends IService<FishDraftData> {
|
||||
/**
|
||||
* 批量提交草稿
|
||||
*/
|
||||
boolean submitDrafts(List<String> ids, String operatorId);
|
||||
boolean submitDrafts(List<String> ids);
|
||||
|
||||
/**
|
||||
* 批量审批通过
|
||||
*/
|
||||
boolean batchApprove(List<String> ids, String approveComment);
|
||||
|
||||
/**
|
||||
* 批量审批驳回
|
||||
*/
|
||||
boolean batchReject(String id, String rejectReason);
|
||||
|
||||
/**
|
||||
* 锁定草稿
|
||||
@ -74,4 +84,6 @@ public interface IFishDraftDataService extends IService<FishDraftData> {
|
||||
* 解锁草稿
|
||||
*/
|
||||
boolean unlockDraft(String id);
|
||||
|
||||
boolean batchRemoveDraft(List<String> ids);
|
||||
}
|
||||
@ -1,6 +1,8 @@
|
||||
package com.yfd.platform.data.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.yfd.platform.common.DataSourceLoadOptionsBase;
|
||||
@ -13,6 +15,7 @@ import com.yfd.platform.data.service.IApprovalMainService;
|
||||
import com.yfd.platform.data.service.IFishDraftDataService;
|
||||
import com.yfd.platform.utils.KendoUtil;
|
||||
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
||||
import com.yfd.platform.utils.SecurityUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@ -97,8 +100,6 @@ public class FishDraftDataServiceImpl extends ServiceImpl<FishDraftDataMapper, F
|
||||
fishDraftData.setStatus("DRAFT");
|
||||
fishDraftData.setDeletedFlag(0);
|
||||
fishDraftData.setLockFlag(0);
|
||||
fishDraftData.setCreatedAt(new Date());
|
||||
fishDraftData.setUpdatedAt(new Date());
|
||||
return this.save(fishDraftData);
|
||||
}
|
||||
|
||||
@ -110,7 +111,6 @@ public class FishDraftDataServiceImpl extends ServiceImpl<FishDraftDataMapper, F
|
||||
return false;
|
||||
}
|
||||
fishDraftData.setStatus("DRAFT");
|
||||
fishDraftData.setUpdatedAt(new Date());
|
||||
return this.updateById(fishDraftData);
|
||||
}
|
||||
|
||||
@ -123,11 +123,23 @@ public class FishDraftDataServiceImpl extends ServiceImpl<FishDraftDataMapper, F
|
||||
}
|
||||
fishDraftData.setDeletedFlag(1);
|
||||
fishDraftData.setDeletedBy(operatorId);
|
||||
fishDraftData.setDeletedAt(new Date());
|
||||
fishDraftData.setUpdatedAt(new Date());
|
||||
return this.updateById(fishDraftData);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean batchRemoveDraft(List<String> ids) {
|
||||
long count = this.count(new LambdaQueryWrapper<FishDraftData>().in(FishDraftData::getId, ids).eq(FishDraftData::getLockFlag, 1));
|
||||
if(count > 0){
|
||||
return false;
|
||||
}
|
||||
LambdaUpdateWrapper<FishDraftData> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.in(FishDraftData::getId, ids);
|
||||
updateWrapper.set(FishDraftData::getDeletedFlag, 1);
|
||||
String userId = SecurityUtils.getUserId();
|
||||
updateWrapper.set(FishDraftData::getDeletedBy,userId );
|
||||
return this.update(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean submitDraft(String id, String operatorId) {
|
||||
@ -137,25 +149,63 @@ public class FishDraftDataServiceImpl extends ServiceImpl<FishDraftDataMapper, F
|
||||
}
|
||||
fishDraftData.setStatus("SUBMITTED");
|
||||
fishDraftData.setSubmitTime(new Date());
|
||||
fishDraftData.setUpdatedAt(new Date());
|
||||
return this.updateById(fishDraftData);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean submitDrafts(List<String> ids, String operatorId) {
|
||||
public boolean submitDrafts(List<String> ids) {
|
||||
for (String id : ids) {
|
||||
FishDraftData fishDraftData = this.getById(id);
|
||||
if (fishDraftData != null && fishDraftData.getLockFlag() == 0) {
|
||||
fishDraftData.setStatus("SUBMITTED");
|
||||
fishDraftData.setSubmitTime(new Date());
|
||||
fishDraftData.setUpdatedAt(new Date());
|
||||
this.updateById(fishDraftData);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean batchApprove(List<String> ids, String approveComment) {
|
||||
if (ids == null || ids.isEmpty()) {
|
||||
return false;
|
||||
}
|
||||
Date now = new Date();
|
||||
for (String id : ids) {
|
||||
FishDraftData fishDraftData = this.getById(id);
|
||||
if (fishDraftData != null && "SUBMITTED".equals(fishDraftData.getStatus())) {
|
||||
fishDraftData.setStatus("APPROVED");
|
||||
fishDraftData.setApproveTime(now);
|
||||
fishDraftData.setUpdatedBy(SecurityUtils.getUserId());
|
||||
this.updateById(fishDraftData);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean batchReject(String id, String rejectReason) {
|
||||
if (StrUtil.isBlank( id)) {
|
||||
return false;
|
||||
}
|
||||
if (StrUtil.isBlank(rejectReason)) {
|
||||
throw new IllegalArgumentException("驳回原因不能为空");
|
||||
}
|
||||
Date now = new Date();
|
||||
FishDraftData fishDraftData = this.getById(id);
|
||||
if (fishDraftData != null && "SUBMITTED".equals(fishDraftData.getStatus())) {
|
||||
fishDraftData.setStatus("REJECTED");
|
||||
fishDraftData.setApproveTime(now);
|
||||
fishDraftData.setUpdatedBy(SecurityUtils.getUserId());
|
||||
this.updateById(fishDraftData);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean lockDraft(String id) {
|
||||
@ -164,7 +214,6 @@ public class FishDraftDataServiceImpl extends ServiceImpl<FishDraftDataMapper, F
|
||||
return false;
|
||||
}
|
||||
fishDraftData.setLockFlag(1);
|
||||
fishDraftData.setUpdatedAt(new Date());
|
||||
return this.updateById(fishDraftData);
|
||||
}
|
||||
|
||||
@ -176,7 +225,8 @@ public class FishDraftDataServiceImpl extends ServiceImpl<FishDraftDataMapper, F
|
||||
return false;
|
||||
}
|
||||
fishDraftData.setLockFlag(0);
|
||||
fishDraftData.setUpdatedAt(new Date());
|
||||
return this.updateById(fishDraftData);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -39,6 +39,8 @@
|
||||
<result column="STCD" property="stcd"/>
|
||||
<result column="TM" property="tm"/>
|
||||
<result column="FTP" property="ftp"/>
|
||||
<result column="FTP" property="ftp"/>
|
||||
<result column="FTPNAME" property="ftpName"/>
|
||||
<result column="FSZ" property="fsz"/>
|
||||
<result column="FCNT" property="fcnt"/>
|
||||
<result column="FWET" property="fwet"/>
|
||||
@ -81,6 +83,7 @@
|
||||
D.STCD,
|
||||
D.TM,
|
||||
D.FTP,
|
||||
FB.NAME FTPNAME,
|
||||
D.FSZ,
|
||||
D.FCNT,
|
||||
D.FWET,
|
||||
@ -123,6 +126,7 @@
|
||||
<include refid="joinColumns"/>
|
||||
FROM FISH_DRAFT_DATA D
|
||||
LEFT JOIN SD_FPSS_B_H F ON D.STCD = F.STCD
|
||||
LEFT JOIN SD_FISHDICTORY_B FB ON FB.ID = D.FTP
|
||||
LEFT JOIN SD_ENGINFO_B_H E ON F.RSTCD = E.STCD
|
||||
LEFT JOIN SD_HYDROBASE H ON E.BASE_ID = H.BASEID
|
||||
WHERE D.DELETED_FLAG = 0
|
||||
|
||||
Loading…
Reference in New Issue
Block a user