|
@@ -50,6 +50,8 @@ import com.dragonsoft.duceap.core.search.filter.Condition;
|
|
|
import com.google.common.base.Joiner;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.http.Header;
|
|
|
+import org.apache.http.client.methods.HttpPost;
|
|
|
+import org.apache.http.client.methods.HttpPut;
|
|
|
import org.apache.http.message.BasicHeader;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -137,7 +139,7 @@ public class AuthApplyBusiness implements IAuthApplyBusiness {
|
|
|
String url = authConfig.getApprovalCenterUrl();
|
|
|
String api = ApprovalApiConstance.APPROVAL_CREATE_API;
|
|
|
url = Joiner.on("").join(url, api);
|
|
|
- ResponseDTO status = funApplyPushToApproval(url, authApplyDTO, list);
|
|
|
+ ResponseDTO status = funApplyPushToApproval(url, HttpPost.METHOD_NAME, authApplyDTO, list);
|
|
|
//推送不成功删除工单
|
|
|
if(!ResponseStatus.SUCCESS_CODE.equals(status.getStatusCode())){
|
|
|
workFlowService.delById(workFlow.getId());
|
|
@@ -688,7 +690,7 @@ public class AuthApplyBusiness implements IAuthApplyBusiness {
|
|
|
String api = ApprovalApiConstance.APPROVAL_UPDATE_API;
|
|
|
url = Joiner.on("").join(url, api);
|
|
|
|
|
|
- ResponseDTO responseDTO = funApplyPushToApproval(url, appFunAuthApplyDTO, updateList);
|
|
|
+ ResponseDTO responseDTO = funApplyPushToApproval(url, HttpPut.METHOD_NAME, appFunAuthApplyDTO, updateList);
|
|
|
if(ResponseStatus.SUCCESS_CODE.equals(responseDTO.getStatusCode())){
|
|
|
//更新工单
|
|
|
workFlowService.update(workFlow);
|
|
@@ -701,9 +703,9 @@ public class AuthApplyBusiness implements IAuthApplyBusiness {
|
|
|
|
|
|
}
|
|
|
|
|
|
- private ResponseDTO funApplyPushToApproval(String url, AppFunAuthApplyDTO authApplyDTO, List<AppFunAuthResourceDTO> contentList) {
|
|
|
+ private ResponseDTO funApplyPushToApproval(String url, String methodName, AppFunAuthApplyDTO authApplyDTO, List<AppFunAuthResourceDTO> contentList) {
|
|
|
ApprovalWorkFlowDTO approvalWorkFlowDTO = prepareFunApplyApprovalWorkFlow(authApplyDTO, contentList);
|
|
|
- return dealPush(url, approvalWorkFlowDTO);
|
|
|
+ return dealPush(url, methodName, approvalWorkFlowDTO);
|
|
|
}
|
|
|
|
|
|
private ApprovalWorkFlowDTO prepareFunApplyApprovalWorkFlow(AppFunAuthApplyDTO authApplyDTO, List<AppFunAuthResourceDTO> contentList) {
|
|
@@ -790,11 +792,11 @@ public class AuthApplyBusiness implements IAuthApplyBusiness {
|
|
|
}
|
|
|
|
|
|
|
|
|
- private ResponseDTO dealPush(String url, ApprovalWorkFlowDTO approvalWorkFlowDTO) {
|
|
|
+ private ResponseDTO dealPush(String url, String methodName, ApprovalWorkFlowDTO approvalWorkFlowDTO) {
|
|
|
ResponseDTO status;
|
|
|
try {
|
|
|
log.info("-------pushToApprovalCenter START---------------");
|
|
|
- status = pushToApproval(url, approvalWorkFlowDTO);
|
|
|
+ status = pushToApproval(url, methodName, approvalWorkFlowDTO);
|
|
|
log.info("-------pushToApprovalCenter END---------------");
|
|
|
if(!ResponseStatus.SUCCESS_CODE.equals(status.getStatusCode())) {
|
|
|
status = new ResponseDTO(ResponseStatus.FAIL_CODE,"approve service faild :"+status.getMessage(), null);
|
|
@@ -807,13 +809,19 @@ public class AuthApplyBusiness implements IAuthApplyBusiness {
|
|
|
}
|
|
|
|
|
|
|
|
|
- private ResponseDTO pushToApproval(String url, ApprovalWorkFlowDTO approvalWorkFlowDTO) {
|
|
|
+ private ResponseDTO pushToApproval(String url, String methodName, ApprovalWorkFlowDTO approvalWorkFlowDTO) {
|
|
|
List<Header> headers = getApprovalHeaders();
|
|
|
log.info("approval center push url:{}, flowType:{}",
|
|
|
url,
|
|
|
approvalWorkFlowDTO.getFlowType());
|
|
|
- String postBody = JSON.toJSONString(approvalWorkFlowDTO);
|
|
|
- String response = HttpUtil.postJSON(url, postBody, headers, null);
|
|
|
+ String body = JSON.toJSONString(approvalWorkFlowDTO);
|
|
|
+ String response = "";
|
|
|
+ if(HttpPost.METHOD_NAME.equals(methodName)) {
|
|
|
+ response = HttpUtil.postJSON(url, body, headers, null);
|
|
|
+ }
|
|
|
+ if(HttpPut.METHOD_NAME.equals(methodName)) {
|
|
|
+ response = HttpUtil.putJson(url, body, headers, null);
|
|
|
+ }
|
|
|
if(StringUtils.isBlank(response)) {
|
|
|
return new ResponseDTO(ResponseStatus.FAIL_CODE,"push to approve service failed", null);
|
|
|
}
|