package jnpf.dmsController.filecenter;
|
import cn.dev33.satoken.same.SaSameUtil;
|
import cn.dev33.satoken.stp.StpUtil;
|
import jnpf.base.ActionResult;
|
import jnpf.base.UserInfo;
|
import jnpf.dmsEntity.storage.DmsRevisionEditRequest;
|
import jnpf.dmsService.DmsRevisionEditService;
|
import jnpf.util.UserProvider;
|
import jnpf.util.NoDataSourceBind;
|
import jnpf.database.util.TenantDataSourceUtil;
|
import jnpf.exception.DataException;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.web.bind.annotation.*;
|
import java.util.*;
|
@RestController
|
@RequiredArgsConstructor
|
public class DmsRevisionEditController {
|
private final DmsRevisionEditService service;
|
@PostMapping("/revision-edit/prepare")
|
public ActionResult<List<Map<String,Object>>> prepare(@RequestBody DmsRevisionEditRequest request) {
|
StpUtil.checkLogin(); StpUtil.checkPermission(request.getModelId());
|
UserInfo user=UserProvider.getUser();
|
String tenant=user.getTenantId()==null || user.getTenantId().isBlank()?"0":user.getTenantId();
|
return ActionResult.success(service.prepare(request,tenant,user.getUserId()));
|
}
|
@PostMapping("/Internal/dms/revision-edit/verify")
|
@NoDataSourceBind
|
public ActionResult<Map<String,Object>> verify(@RequestBody DmsRevisionEditRequest request) {
|
SaSameUtil.checkCurrentRequestToken();
|
if (request.getTenantId() == null || request.getTenantId().isBlank()
|
|| request.getOwnerId() == null || request.getOwnerId().isBlank())
|
throw new DataException("缺少修订编辑归属");
|
try {
|
TenantDataSourceUtil.switchTenant(request.getTenantId());
|
return ActionResult.success(service.verify(request));
|
} finally {
|
TenantDataSourceUtil.clearLocalTenantInfo();
|
}
|
}
|
}
|