|
@@ -1,6 +1,11 @@
|
|
|
package com.dragoninfo.dcuc.authweb.restcontroller.api.authservice.v1.controller;
|
|
|
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
+import com.dragoninfo.dcuc.app.entity.ApplyInfo;
|
|
|
+import com.dragoninfo.dcuc.app.entity.ServiceResource;
|
|
|
import com.dragoninfo.dcuc.app.enumresources.WorkFlowStatusEnum;
|
|
|
+import com.dragoninfo.dcuc.app.facade.IApplyInfoFacade;
|
|
|
+import com.dragoninfo.dcuc.app.facade.IServiceResourceFacade;
|
|
|
import com.dragoninfo.dcuc.auth.auth.dto.ServiceAuthFlowDTO;
|
|
|
import com.dragoninfo.dcuc.auth.auth.dto.WorkFlowResutlAcceptDTO;
|
|
|
import com.dragoninfo.dcuc.auth.auth.facade.IServiceAuthFacade;
|
|
@@ -36,6 +41,12 @@ public class WorkFlowApiController {
|
|
|
@Autowired
|
|
|
private IServiceAuthFacade serviceAuthFacade;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IApplyInfoFacade applyInfoFacade;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IServiceResourceFacade serviceResourceFacade;
|
|
|
+
|
|
|
/**
|
|
|
* 服务授权工作单保存
|
|
|
*/
|
|
@@ -44,14 +55,31 @@ public class WorkFlowApiController {
|
|
|
@PostMapping("service")
|
|
|
@ResponseBody
|
|
|
public ApiResult serviceAuthFlowSave(@RequestBody @Validated ServiceAuthFlowAcceptVo serviceAuthFlowVo) {
|
|
|
+
|
|
|
+ ResourceAuthInfoVo resourceInfo = serviceAuthFlowVo.getResourceInfo();
|
|
|
+ String visitorCode = resourceInfo.getVisitorCode();
|
|
|
+ ApplyInfo applyInfo = applyInfoFacade.getAppByCode(visitorCode);
|
|
|
+ if (applyInfo == null) {
|
|
|
+ return ApiResult.setFailMessage(String.format("应用代码 %s 不存在", visitorCode));
|
|
|
+ }
|
|
|
+
|
|
|
+ String visitResourceCode = resourceInfo.getVisitResourceCode();
|
|
|
+ String[] resourceCodArray = visitResourceCode.split(StrUtil.COMMA);
|
|
|
+ for (String resourceCode : resourceCodArray) {
|
|
|
+ ServiceResource serviceResource = serviceResourceFacade.detailByCode(resourceCode);
|
|
|
+ if (serviceResource == null) {
|
|
|
+ return ApiResult.setFailMessage(String.format("服务代码 %s 不存在", resourceCode));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
ServiceAuthFlowDTO dto = new ServiceAuthFlowDTO();
|
|
|
setAppServiceInfo(dto, serviceAuthFlowVo);
|
|
|
BeanUtils.copyProperties(serviceAuthFlowVo, dto, "serviceCodes", "serviceNames");
|
|
|
ResponseDTO responseDTO = serviceAuthFacade.serviceAuthFlowSave(dto);
|
|
|
String statusCode = responseDTO.getStatusCode();
|
|
|
- if(ResponseStatus.SUCCESS_CODE.equals(statusCode)){
|
|
|
+ if (ResponseStatus.SUCCESS_CODE.equals(statusCode)) {
|
|
|
return ApiResult.setSuccess();
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
return ApiResult.setFailMessage(responseDTO.getMessage());
|
|
|
}
|
|
|
}
|