| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- package jnpf.base.util;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
- import jakarta.servlet.http.HttpServletRequest;
- import jnpf.base.ActionResult;
- import jnpf.base.ActionResultCode;
- import jnpf.base.entity.VisualdevEntity;
- import jnpf.config.ConfigValueUtil;
- import jnpf.constant.MsgCode;
- import jnpf.exception.WorkFlowException;
- import jnpf.util.JsonUtil;
- import jnpf.util.ServletUtil;
- import jnpf.util.UserProvider;
- import jnpf.util.wxutil.HttpUtil;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import java.util.HashMap;
- import java.util.Map;
- /**
- * 流程表单 http请求处理表单
- *
- * @author JNPF开发平台组
- * @version V3.4.5
- * @copyright 引迈信息技术有限公司(https://www.jnpfsoft.com)
- * @date 2022/10/21
- */
- @Component
- public class FlowFormHttpReqUtils {
- private static ConfigValueUtil configValueUtil;
- @Autowired
- public void setConfigValueUtil(ConfigValueUtil configValueUtil) {
- FlowFormHttpReqUtils.configValueUtil = configValueUtil;
- }
- public Map<String, Object> info(VisualdevEntity visualdevEntity, String id, String token) {
- String requestURL = this.getReqURL(visualdevEntity, id);
- JSONObject jsonObject = HttpUtil.httpRequest(requestURL, "GET", null, token);
- ActionResult actionResult = JSON.toJavaObject(jsonObject, ActionResult.class);
- if (actionResult == null) {
- return new HashMap<>();
- }
- Object data = actionResult.getData();
- return data != null ? JsonUtil.entityToMap(data) : new HashMap<>();
- }
- public boolean isUpdate(VisualdevEntity visualdevEntity, String id, String token) {
- String requestURL = this.getReqURL(visualdevEntity, id);
- JSONObject jsonObject = HttpUtil.httpRequest(requestURL, "GET", null, token);
- ActionResult actionResult = JSON.toJavaObject(jsonObject, ActionResult.class);
- return actionResult != null && actionResult.getData() != null;
- }
- public void create(VisualdevEntity visualdevEntity, String id, String token, Map<String, Object> map) throws WorkFlowException {
- String requestURL = this.getReqURL(visualdevEntity, id);
- map.remove("id");
- JSONObject jsonObject = HttpUtil.httpRequest(requestURL, "POST", JsonUtil.getObjectToString(map), token);
- ActionResult actionResult = JSON.toJavaObject(jsonObject, ActionResult.class);
- boolean b = actionResult != null && ActionResultCode.Success.getCode().equals(actionResult.getCode());
- if (!b) {
- String msg = actionResult != null ? actionResult.getMsg() : MsgCode.FM001.get();
- throw new WorkFlowException(msg);
- }
- }
- public void update(VisualdevEntity visualdevEntity, String id, String token, Map<String, Object> map) throws WorkFlowException {
- String requestURL = this.getReqURL(visualdevEntity, id);
- JSONObject jsonObject = HttpUtil.httpRequest(requestURL, "PUT", JsonUtil.getObjectToString(map), token);
- ActionResult actionResult = JSON.toJavaObject(jsonObject, ActionResult.class);
- boolean b = actionResult != null && ActionResultCode.Success.getCode().equals(actionResult.getCode());
- if (!b) {
- String msg = actionResult != null ? actionResult.getMsg() : MsgCode.FM001.get();
- throw new WorkFlowException(msg);
- }
- }
- public void saveOrUpdate(VisualdevEntity visualdevEntity, String id, String token, Map<String, Object> map) throws WorkFlowException {
- boolean update = this.isUpdate(visualdevEntity, id, token);
- if (update) {
- this.update(visualdevEntity, id, token, map);
- } else {
- this.create(visualdevEntity, id, token, map);
- }
- }
- private String getReqURL(VisualdevEntity visualdevEntity, String id) {
- HttpServletRequest request = ServletUtil.getRequest();
- //请求来源
- String requestURL = visualdevEntity.getInterfaceUrl();
- boolean isHttp = requestURL.toLowerCase().startsWith("http");
- if (!isHttp) {
- //补全(内部)
- requestURL = configValueUtil.getApiDomain() + requestURL;
- }
- return requestURL + "/" + id;
- }
- /**
- * 删除数据
- *
- * @param visualdevEntity
- * @param id
- * @param token
- * @throws WorkFlowException
- */
- public void delete(VisualdevEntity visualdevEntity, String id, String token) throws WorkFlowException {
- String requestURL = this.getReqURL(visualdevEntity, id) + "?forceDel=true";
- JSONObject jsonObject = HttpUtil.httpRequest(requestURL, "DELETE", null, token);
- ActionResult actionResult = JSON.toJavaObject(jsonObject, ActionResult.class);
- boolean b = actionResult != null && ActionResultCode.Success.getCode().equals(actionResult.getCode());
- if (!b) {
- String msg = actionResult != null ? actionResult.getMsg() : MsgCode.FM001.get();
- throw new WorkFlowException(msg);
- }
- }
- /**
- * 流程状态修改
- *
- * @param visualdevEntity
- * @param flowTaskId
- * @param flowState
- */
- public void saveState(VisualdevEntity visualdevEntity, String flowTaskId, Integer flowState) {
- //请求来源
- String requestURL = visualdevEntity.getInterfaceUrl();
- boolean isHttp = requestURL.toLowerCase().startsWith("http");
- if (!isHttp) {
- //补全(内部)
- requestURL = configValueUtil.getApiDomain() + requestURL;
- }
- requestURL += "/saveState?flowTaskId=" + flowTaskId + "&flowState=" + flowState;
- JSONObject jsonObject = HttpUtil.httpRequest(requestURL, "POST", null, UserProvider.getToken());
- }
- }
|