From 9db1a719dae6731ce38de145c38fdbd7d49f6af0 Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期二, 18 二月 2025 13:30:21 +0800
Subject: [PATCH] 添加全局时间处理和oa流程接口
---
ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableRecord.java | 69 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestInfo.java | 254 +++++
ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequest.java | 154 +++
inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java | 163 +++
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableRecord.java | 62 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpPost.java | 50 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestSoap.java | 99 ++
ruoyi-common/src/main/java/com/ruoyi/common/oa/package-info.java | 2
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableField.java | 368 +++++++
ruoyi-framework/src/main/java/com/ruoyi/framework/config/LocalDateTimeSerializerConfig.java | 36
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProperty.java | 31
ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequestResponse.java | 62 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProcess.java | 67 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflow.java | 143 +++
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpGet.java | 50 +
ruoyi-common/src/main/java/com/ruoyi/common/utils/ApplicationContextHolder.java | 52 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAResult.java | 29
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowTable.java | 90 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/ObjectFactory.java | 149 +++
ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflowResponse.java | 114 ++
ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableField.java | 69 +
/dev/null | 51 -
ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflowResponse.java | 114 ++
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequest.java | 161 +++
ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowTable.java | 69 +
ruoyi-common/src/main/java/com/ruoyi/common/oa/OAService.java | 152 +++
ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflow.java | 143 +++
27 files changed, 2,752 insertions(+), 51 deletions(-)
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java
new file mode 100644
index 0000000..8ea68ab
--- /dev/null
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java
@@ -0,0 +1,163 @@
+package com.ruoyi.inspect.controller;
+
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.Result;
+import com.ruoyi.framework.exception.ErrorException;
+import com.ruoyi.inspect.dto.ReportPageDto;
+import com.ruoyi.inspect.service.InsReportService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Scanner;
+
+@RestController
+@RequestMapping("/insReport")
+@Api(tags = "妫�楠屾姤鍛�")
+public class InsReportController {
+
+ @Resource
+ private InsReportService insReportService;
+
+ @Value("${wordUrl}")
+ private String wordUrl;
+
+ @ApiOperation(value = "鏌ヨ妫�楠屾姤鍛婃暟鎹�")
+ @GetMapping("/pageInsReport")
+ public Result pageInsReport(Page page, ReportPageDto reportPageDto){
+ return Result.success(insReportService.pageInsReport(page, reportPageDto));
+ }
+
+ @ApiOperation(value = "鎶ュ憡涓婁紶")
+ @PostMapping("/inReport")
+ public Result inReport(MultipartFile file, Integer id) {
+ String urlString;
+ String pathName;
+ try {
+ String path = wordUrl;
+ File realpath = new File(path);
+ if (!realpath.exists()) {
+ realpath.mkdirs();
+ }
+ pathName = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMddHHmmss")) + "_" + file.getOriginalFilename();
+ urlString = realpath + "/" + pathName;
+ file.transferTo(new File(urlString));
+ return Result.success(insReportService.inReport("/word/" + pathName, id));
+ } catch (Exception e) {
+ throw new ErrorException("鏂囦欢涓婁紶澶辫触");
+ }
+ }
+
+ @ApiOperation(value = "鎶ュ憡杩樺師")
+ @PostMapping("/upReportUrl")
+ public Result upReportUrl(@RequestBody Map<String, Object> param) {
+ Integer id = (Integer) param.get("id");
+ return Result.success(insReportService.upReportUrl(id));
+ }
+
+ @ApiOperation(value = "鎶ュ憡鍦ㄧ嚎缂栧埗")
+ @GetMapping("/upReportFile")
+ public Result upReportFile() {
+ return Result.success();
+ }
+
+ @ApiOperation(value = "鎻愪氦")
+ @PostMapping("/writeReport")
+ public Result writeReport(@RequestBody Map<String, Object> param) {
+ Integer id = (Integer) param.get("id");
+ Integer userId = (Integer) param.get("userId");
+ return Result.success(insReportService.writeReport(id, userId, null));
+ }
+
+ /**
+ * @param userId 闇�瑕佺殑鎵瑰噯浜�
+ * @return
+ */
+
+ @ApiOperation(value = "瀹℃牳")
+ @PostMapping("/examineReport")
+ public Result examineReport(@RequestBody Map<String, Object> param) {
+ Integer id = (Integer) param.get("id");
+ Integer isExamine = (Integer) param.get("isExamine");
+ String examineTell = (String) param.get("examineTell");
+ Integer userId = (Integer) param.get("userId");
+ return Result.success(insReportService.examineReport(id, isExamine, examineTell, userId));
+ }
+
+ @ApiOperation(value = "鎵瑰噯")
+ @PostMapping("/ratifyReport")
+ public Result ratifyReport(@RequestBody Map<String, Object> param) {
+ Integer id = (Integer) param.get("id");
+ Integer isRatify = (Integer) param.get("isRatify");
+ String ratifyTell = (String) param.get("ratifyTell");
+ return Result.success(insReportService.ratifyReport(id, isRatify, ratifyTell));
+ }
+
+ @RequestMapping("/onlyOffice/save")
+ public void saveFile(@RequestParam String fileName, HttpServletRequest request, HttpServletResponse response) {
+ PrintWriter writer = null;
+ try {
+ writer = response.getWriter();
+ // 鑾峰彇浼犺緭鐨刯son鏁版嵁
+ Scanner scanner = new Scanner(request.getInputStream()).useDelimiter("\\A");
+ String body = scanner.hasNext() ? scanner.next() : "";
+ JSONObject jsonObject = JSONObject.parseObject(body);
+
+ if (jsonObject.containsKey("url")) {
+ String jsonArray = jsonObject.get("lastsave").toString(); // 鏇存柊鏃堕棿
+ String fileUrl = jsonObject.get("url").toString(); // 鏇存柊鏂囦欢url
+ HttpUtil.downloadFile(fileUrl, FileUtil.file(wordUrl + "/" + fileName));
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ writer.write("{\"error\":-1}");
+ return;
+ }
+ /*
+ * status = 1锛屾垜浠粰onlyOffice鐨勬湇鍔¤繑鍥瀧"error":"0"}鐨勪俊鎭��
+ * 杩欐牱onlyOffice浼氳涓哄洖璋冩帴鍙f槸娌¢棶棰樼殑锛岃繖鏍峰氨鍙互鍦ㄧ嚎缂栬緫鏂囨。浜嗭紝鍚﹀垯鐨勮瘽浼氬脊鍑虹獥鍙h鏄�
+ */
+ if (Objects.nonNull(writer)) {
+ writer.write("{\"error\":0}");
+ }
+ }
+
+ @ApiOperation(value = "鎶ュ憡鎵归噺涓嬭浇")
+ @GetMapping("/downAll")
+ public Result downAll(String ids) {
+ return Result.success(insReportService.downAll(ids));
+ }
+
+ @ApiOperation(value = "鎶ュ憡鎵归噺涓婁紶")
+ @PostMapping("/upAll")
+ public Result upAll(MultipartFile file) throws IOException {
+ return Result.success(insReportService.upAll(file));
+ }
+
+ /**
+ * 閫�鍥炲埌妫�楠屼换鍔�
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "閫�鍥炲埌妫�楠屼换鍔�")
+ @PostMapping("/sendBackTask")
+ public Result sendBackTask(@RequestBody Map<String, Object> param){
+ Integer id = (Integer) param.get("id");
+ return Result.success(insReportService.sendBackTask(id));
+ }
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflow.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflow.java
new file mode 100644
index 0000000..aad7df1
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflow.java
@@ -0,0 +1,143 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>anonymous complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="appKey" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="wri" type="{http://tempuri.org/}OA_WorkflowRequestInfo" minOccurs="0"/>
+ * <element name="errorCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="errorMsg" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "appKey",
+ "wri",
+ "errorCode",
+ "errorMsg"
+})
+@XmlRootElement(name = "AddWorkflow")
+public class AddWorkflow {
+
+ protected String appKey;
+ protected OAWorkflowRequestInfo wri;
+ protected String errorCode;
+ protected String errorMsg;
+
+ /**
+ * 鑾峰彇appKey灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getAppKey() {
+ return appKey;
+ }
+
+ /**
+ * 璁剧疆appKey灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setAppKey(String value) {
+ this.appKey = value;
+ }
+
+ /**
+ * 鑾峰彇wri灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link OAWorkflowRequestInfo }
+ *
+ */
+ public OAWorkflowRequestInfo getWri() {
+ return wri;
+ }
+
+ /**
+ * 璁剧疆wri灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link OAWorkflowRequestInfo }
+ *
+ */
+ public void setWri(OAWorkflowRequestInfo value) {
+ this.wri = value;
+ }
+
+ /**
+ * 鑾峰彇errorCode灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorCode() {
+ return errorCode;
+ }
+
+ /**
+ * 璁剧疆errorCode灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorCode(String value) {
+ this.errorCode = value;
+ }
+
+ /**
+ * 鑾峰彇errorMsg灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorMsg() {
+ return errorMsg;
+ }
+
+ /**
+ * 璁剧疆errorMsg灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorMsg(String value) {
+ this.errorMsg = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflowResponse.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflowResponse.java
new file mode 100644
index 0000000..64a0bc5
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/AddWorkflowResponse.java
@@ -0,0 +1,114 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.*;
+
+
+/**
+ * <p>anonymous complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="AddWorkflowResult" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="errorCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="errorMsg" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "addWorkflowResult",
+ "errorCode",
+ "errorMsg"
+})
+@XmlRootElement(name = "AddWorkflowResponse")
+public class AddWorkflowResponse {
+
+ @XmlElement(name = "AddWorkflowResult")
+ protected String addWorkflowResult;
+ protected String errorCode;
+ protected String errorMsg;
+
+ /**
+ * 鑾峰彇addWorkflowResult灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getAddWorkflowResult() {
+ return addWorkflowResult;
+ }
+
+ /**
+ * 璁剧疆addWorkflowResult灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setAddWorkflowResult(String value) {
+ this.addWorkflowResult = value;
+ }
+
+ /**
+ * 鑾峰彇errorCode灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorCode() {
+ return errorCode;
+ }
+
+ /**
+ * 璁剧疆errorCode灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorCode(String value) {
+ this.errorCode = value;
+ }
+
+ /**
+ * 鑾峰彇errorMsg灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorMsg() {
+ return errorMsg;
+ }
+
+ /**
+ * 璁剧疆errorMsg灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorMsg(String value) {
+ this.errorMsg = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableField.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableField.java
new file mode 100644
index 0000000..85b40a7
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableField.java
@@ -0,0 +1,69 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * <p>ArrayOfOA_WorkflowRequestTableField complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType name="ArrayOfOA_WorkflowRequestTableField">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="OA_WorkflowRequestTableField" type="{http://tempuri.org/}OA_WorkflowRequestTableField" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ArrayOfOA_WorkflowRequestTableField", propOrder = {
+ "oaWorkflowRequestTableField"
+})
+public class ArrayOfOAWorkflowRequestTableField {
+
+ @XmlElement(name = "OA_WorkflowRequestTableField", nillable = true)
+ protected List<OAWorkflowRequestTableField> oaWorkflowRequestTableField;
+
+ /**
+ * Gets the value of the oaWorkflowRequestTableField property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the oaWorkflowRequestTableField property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getOAWorkflowRequestTableField().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link OAWorkflowRequestTableField }
+ *
+ *
+ */
+ public List<OAWorkflowRequestTableField> getOAWorkflowRequestTableField() {
+ if (oaWorkflowRequestTableField == null) {
+ oaWorkflowRequestTableField = new ArrayList<OAWorkflowRequestTableField>();
+ }
+ return this.oaWorkflowRequestTableField;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableRecord.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableRecord.java
new file mode 100644
index 0000000..b59406d
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowRequestTableRecord.java
@@ -0,0 +1,69 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * <p>ArrayOfOA_WorkflowRequestTableRecord complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType name="ArrayOfOA_WorkflowRequestTableRecord">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="OA_WorkflowRequestTableRecord" type="{http://tempuri.org/}OA_WorkflowRequestTableRecord" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ArrayOfOA_WorkflowRequestTableRecord", propOrder = {
+ "oaWorkflowRequestTableRecord"
+})
+public class ArrayOfOAWorkflowRequestTableRecord {
+
+ @XmlElement(name = "OA_WorkflowRequestTableRecord", nillable = true)
+ protected List<OAWorkflowRequestTableRecord> oaWorkflowRequestTableRecord;
+
+ /**
+ * Gets the value of the oaWorkflowRequestTableRecord property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the oaWorkflowRequestTableRecord property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getOAWorkflowRequestTableRecord().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link OAWorkflowRequestTableRecord }
+ *
+ *
+ */
+ public List<OAWorkflowRequestTableRecord> getOAWorkflowRequestTableRecord() {
+ if (oaWorkflowRequestTableRecord == null) {
+ oaWorkflowRequestTableRecord = new ArrayList<OAWorkflowRequestTableRecord>();
+ }
+ return this.oaWorkflowRequestTableRecord;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowTable.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowTable.java
new file mode 100644
index 0000000..30b8f88
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ArrayOfOAWorkflowTable.java
@@ -0,0 +1,69 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * <p>ArrayOfOA_WorkflowTable complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType name="ArrayOfOA_WorkflowTable">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="OA_WorkflowTable" type="{http://tempuri.org/}OA_WorkflowTable" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "ArrayOfOA_WorkflowTable", propOrder = {
+ "oaWorkflowTable"
+})
+public class ArrayOfOAWorkflowTable {
+
+ @XmlElement(name = "OA_WorkflowTable", nillable = true)
+ protected List<OAWorkflowTable> oaWorkflowTable;
+
+ /**
+ * Gets the value of the oaWorkflowTable property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the oaWorkflowTable property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getOAWorkflowTable().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link OAWorkflowTable }
+ *
+ *
+ */
+ public List<OAWorkflowTable> getOAWorkflowTable() {
+ if (oaWorkflowTable == null) {
+ oaWorkflowTable = new ArrayList<OAWorkflowTable>();
+ }
+ return this.oaWorkflowTable;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequest.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequest.java
new file mode 100644
index 0000000..a9d7a36
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequest.java
@@ -0,0 +1,154 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>anonymous complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="requestid" type="{http://www.w3.org/2001/XMLSchema}int"/>
+ * <element name="forwardoperator" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="remark" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="userId" type="{http://www.w3.org/2001/XMLSchema}int"/>
+ * <element name="clientip" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "requestid",
+ "forwardoperator",
+ "remark",
+ "userId",
+ "clientip"
+})
+@XmlRootElement(name = "forwardWorkflowRequest")
+public class ForwardWorkflowRequest {
+
+ protected int requestid;
+ protected String forwardoperator;
+ protected String remark;
+ protected int userId;
+ protected String clientip;
+
+ /**
+ * 鑾峰彇requestid灞炴�х殑鍊笺��
+ *
+ */
+ public int getRequestid() {
+ return requestid;
+ }
+
+ /**
+ * 璁剧疆requestid灞炴�х殑鍊笺��
+ *
+ */
+ public void setRequestid(int value) {
+ this.requestid = value;
+ }
+
+ /**
+ * 鑾峰彇forwardoperator灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getForwardoperator() {
+ return forwardoperator;
+ }
+
+ /**
+ * 璁剧疆forwardoperator灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setForwardoperator(String value) {
+ this.forwardoperator = value;
+ }
+
+ /**
+ * 鑾峰彇remark灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getRemark() {
+ return remark;
+ }
+
+ /**
+ * 璁剧疆remark灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setRemark(String value) {
+ this.remark = value;
+ }
+
+ /**
+ * 鑾峰彇userId灞炴�х殑鍊笺��
+ *
+ */
+ public int getUserId() {
+ return userId;
+ }
+
+ /**
+ * 璁剧疆userId灞炴�х殑鍊笺��
+ *
+ */
+ public void setUserId(int value) {
+ this.userId = value;
+ }
+
+ /**
+ * 鑾峰彇clientip灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getClientip() {
+ return clientip;
+ }
+
+ /**
+ * 璁剧疆clientip灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setClientip(String value) {
+ this.clientip = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequestResponse.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequestResponse.java
new file mode 100644
index 0000000..fd5eae8
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ForwardWorkflowRequestResponse.java
@@ -0,0 +1,62 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>anonymous complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="forwardWorkflowRequestResult" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "forwardWorkflowRequestResult"
+})
+@XmlRootElement(name = "forwardWorkflowRequestResponse")
+public class ForwardWorkflowRequestResponse {
+
+ protected String forwardWorkflowRequestResult;
+
+ /**
+ * 鑾峰彇forwardWorkflowRequestResult灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getForwardWorkflowRequestResult() {
+ return forwardWorkflowRequestResult;
+ }
+
+ /**
+ * 璁剧疆forwardWorkflowRequestResult灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setForwardWorkflowRequestResult(String value) {
+ this.forwardWorkflowRequestResult = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProcess.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProcess.java
new file mode 100644
index 0000000..c54d0a4
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProcess.java
@@ -0,0 +1,67 @@
+package com.ruoyi.common.oa;
+
+import java.util.List;
+import java.util.Map;
+
+public class OAProcess {
+
+ public static String oaReturnMsg(int code, String msg) {
+ return "<miap><miap-header><errorcode>" + code + "</errorcode><errormsg>" + msg + "</errormsg></miap-header" + "><miap-Body></miap-Body></miap>";
+ }
+
+ /**
+ * @param mainFields锛氫富琛ㄥ瓧娈垫暟鎹�
+ * @param detailFields:瀛愯〃瀛楁鏁版嵁
+ * @param requestName:鍒涘缓鐨勬祦绋嬬殑鍚嶇О
+ * @param workflowId:OA娴佺▼ID
+ * @param createrId:OA璐﹀彿
+ * @return OAResult
+ * @throws Exception
+ */
+ public static OAResult start(Map<String, String> mainFields, List<Map<String, String>> detailFields, String requestName, String workflowId, String createrId) throws Exception {
+ OAService oaService = new OAService();
+ //鍒涘缓娴佺▼涓讳綋
+ OAWorkflowRequestInfo wri = new OAWorkflowRequestInfo();
+ wri.setWorkflowId(workflowId);
+ wri.setCreaterId(createrId);
+ wri.setRequestLevel("0");
+ wri.setRequestName(requestName);
+
+ OAWorkflowTable wmi = oaService.createOAMainWorkflowTable(mainFields);
+ // 灏嗕富琛ㄤ俊鎭~鍏呭埌娴佺▼淇℃伅閲�
+ wri.setWorkflowMainTable(wmi);
+
+ ArrayOfOAWorkflowTable owdts = oaService.createOADetailWorkflowTable(detailFields);
+ // 灏嗘槑缁嗚〃淇℃伅濉厖鍒版祦绋嬩俊鎭噷
+ wri.setWorkflowDetailTables(owdts);
+
+ // 鍙戣捣OA娴佺▼
+ OAResult oaResult = oaService.sendWorkFlow(wri);
+ // 杈撳嚭OA娴佺▼鎵ц缁撴灉
+ System.out.println(oaResult);
+ return oaResult;
+ }
+
+
+ public static OAResult start(Map<String, String> mainFields, String requestName, String workflowId, String createrId) throws Exception {
+ OAService oaService = new OAService();
+ //鍒涘缓娴佺▼涓讳綋
+ OAWorkflowRequestInfo wri = new OAWorkflowRequestInfo();
+ wri.setWorkflowId(workflowId);
+ wri.setCreaterId(createrId);
+ wri.setRequestLevel("0");
+ wri.setRequestName(requestName);
+// wri.setIsnextflow("1");
+ wri.setIsnextflow("0");
+ //鍒涘缓涓昏〃
+ OAWorkflowTable wmi = oaService.createOAMainWorkflowTable(mainFields);
+ // 灏嗕富琛ㄤ俊鎭~鍏呭埌娴佺▼淇℃伅閲�
+ wri.setWorkflowMainTable(wmi);
+
+ // 鍙戣捣OA娴佺▼
+ OAResult oaResult = oaService.sendWorkFlow(wri);
+ // 杈撳嚭OA娴佺▼鎵ц缁撴灉
+ System.out.println(oaResult);
+ return oaResult;
+ }
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProperty.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProperty.java
new file mode 100644
index 0000000..1880e93
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAProperty.java
@@ -0,0 +1,31 @@
+package com.ruoyi.common.oa;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * @author ZTT
+ */
+@Configuration
+@ConfigurationProperties(prefix = "oa")
+@Data
+public class OAProperty {
+
+ /**
+ * oa鍦板潃
+ */
+ private String oaHost;
+
+// /**
+// * 鏂囦欢鏌ョ湅ip鍦板潃
+// */
+// private String prodIp;
+
+ /**
+ * 瑁呭鐢电紗锛氫笉鍚堟牸瀹℃壒oa鐨刬d
+ */
+ private String unqualifiedProcessId;
+
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAResult.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAResult.java
new file mode 100644
index 0000000..7febd9b
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAResult.java
@@ -0,0 +1,29 @@
+package com.ruoyi.common.oa;
+
+import lombok.Data;
+
+/**
+ * @author ZTT
+ */
+@Data
+public class OAResult {
+ private static final String SUCCESS_CODE = "0";
+
+ /**
+ * 閿欒浠g爜
+ */
+ private String errorCode;
+ /**
+ * 閿欒淇℃伅
+ */
+ private String errorMsg;
+ /**
+ * 娴佺▼缂栧彿
+ */
+ private String addWorkflowResult;
+
+
+ public boolean success() {
+ return SUCCESS_CODE.equals(errorCode);
+ }
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAService.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAService.java
new file mode 100644
index 0000000..c80683f
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAService.java
@@ -0,0 +1,152 @@
+package com.ruoyi.common.oa;
+
+import javax.xml.ws.Holder;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author ZTT
+ */
+public class OAService {
+ /**
+ * 鍒涘缓OA娴佺▼涓昏〃
+ *
+ * @param fields
+ * @return
+ */
+ public OAWorkflowTable createOAMainWorkflowTable(Map<String, String> fields) {
+ //------------------涓昏〃鍒楄祴鍊�---------------------------
+ List<OAWorkflowRequestTableField> oaWorkflowRequestTableField = new ArrayList<OAWorkflowRequestTableField>();
+
+ for (Map.Entry<String, String> field : fields.entrySet()) {
+ oaWorkflowRequestTableField.add(createOAWorkflowRequestTableField(field.getKey(), field.getValue().toString()));
+ }
+
+ System.out.println("@#######################");
+ for (OAWorkflowRequestTableField workflowRequestTableField : oaWorkflowRequestTableField) {
+
+ System.out.println(workflowRequestTableField.fieldName +","+ workflowRequestTableField.fieldValue +"--"+ workflowRequestTableField.fieldType);
+ }
+ //鍒涘缓涓昏〃鍒�
+ ArrayOfOAWorkflowRequestTableField wrti = new ArrayOfOAWorkflowRequestTableField();
+ wrti.oaWorkflowRequestTableField = oaWorkflowRequestTableField;
+ // 灏嗕富琛ㄥ垪濉厖鍒颁富琛ㄨ閲�
+ OAWorkflowRequestTableRecord oaWorkflowRequestTableRecord = new OAWorkflowRequestTableRecord();
+ oaWorkflowRequestTableRecord.setWorkflowRequestTableFields(wrti);
+
+ //鍒涘缓涓昏〃琛�
+ ArrayOfOAWorkflowRequestTableRecord wrtri = new ArrayOfOAWorkflowRequestTableRecord();
+ wrtri.getOAWorkflowRequestTableRecord().add(oaWorkflowRequestTableRecord);
+
+ //鍒涘缓涓昏〃
+ OAWorkflowTable wmi = new OAWorkflowTable();
+ //灏嗕富琛ㄨ濉厖鍒颁富琛ㄩ噷
+ wmi.setWorkflowRequestTableRecords(wrtri);
+
+ return wmi;
+ }
+
+ /**
+ * 鍒涘缓OA鏄庣粏琛ㄦ祦绋�
+ *
+ * @param fields
+ * @return
+ */
+ public ArrayOfOAWorkflowTable createOADetailWorkflowTable(List<Map<String, String>> fields) {
+ //------------------鏄庣粏琛ㄨ祴鍊�---------------------------
+ //鍒涘缓1寮犳槑缁嗚〃
+ ArrayOfOAWorkflowTable owdts = new ArrayOfOAWorkflowTable();
+ //灏嗘槑缁嗗垪濉厖鍒版槑缁嗚涓�
+ //鏄庣粏灞炴��
+ ArrayOfOAWorkflowRequestTableRecord owrtr = new ArrayOfOAWorkflowRequestTableRecord();
+ for (int i = 0; i < fields.size(); i++) {
+ List<OAWorkflowRequestTableField> owrtf_ = new ArrayList<OAWorkflowRequestTableField>();
+
+ for (Map.Entry<String, String> field : fields.get(i).entrySet()) {
+ owrtf_.add(createOAWorkflowRequestTableField(field.getKey(), field.getValue()));
+ }
+ ArrayOfOAWorkflowRequestTableField owrti = new ArrayOfOAWorkflowRequestTableField();
+ owrti.oaWorkflowRequestTableField = owrtf_;
+ OAWorkflowRequestTableRecord owrtis = new OAWorkflowRequestTableRecord();
+ owrtis.setWorkflowRequestTableFields(owrti);
+ owrtr.getOAWorkflowRequestTableRecord().add(owrtis);
+ }
+
+
+ // 灏嗘槑缁嗚濉厖鍒版槑缁嗚〃閲�
+ OAWorkflowTable owrtrs = new OAWorkflowTable();
+ owrtrs.setWorkflowRequestTableRecords(owrtr);
+ owdts.getOAWorkflowTable().add(owrtrs);
+
+ return owdts;
+ }
+
+ /**
+ * 鍒涘缓OA娴佺▼琛ㄦ牸灞炴��
+ *
+ * @param fieldName
+ * @param fieldValue
+ * @param view
+ * @param edit
+ * @return
+ */
+ public OAWorkflowRequestTableField createOAWorkflowRequestTableField(String fieldName, String fieldValue, String view, String edit) {
+ // 鍒涘缓灞炴��
+ OAWorkflowRequestTableField oaWorkflowRequestTableField = new OAWorkflowRequestTableField();
+
+ // 瀵瑰睘鎬ц繘琛岃缃�
+ oaWorkflowRequestTableField.setFieldName(fieldName);
+ oaWorkflowRequestTableField.setFieldValue(fieldValue);
+ oaWorkflowRequestTableField.setView(view);
+ oaWorkflowRequestTableField.setEdit(edit);
+
+ return oaWorkflowRequestTableField;
+ }
+
+ /**
+ * 鍒涘缓OA娴佺▼琛ㄦ牸灞炴��
+ *
+ * @param fieldName
+ * @param fieldValue
+ * @return
+ */
+ public OAWorkflowRequestTableField createOAWorkflowRequestTableField(String fieldName, String fieldValue) {
+ // 鍒涘缓灞炴��
+ OAWorkflowRequestTableField oaWorkflowRequestTableField = new OAWorkflowRequestTableField();
+
+ // 瀵瑰睘鎬ц繘琛岃缃�
+ oaWorkflowRequestTableField.setFieldName(fieldName);
+ oaWorkflowRequestTableField.setFieldValue(fieldValue);
+ oaWorkflowRequestTableField.setView("true");
+ oaWorkflowRequestTableField.setEdit("true");
+ if (fieldName.equals("sqr") || fieldName.equals("fkr")) {
+ oaWorkflowRequestTableField.setFieldType(1);
+ }
+ return oaWorkflowRequestTableField;
+ }
+
+ /**
+ * 鍙戦�丱A娴佺▼
+ *
+ * @param wri
+ * @return
+ */
+ public OAResult sendWorkFlow(OAWorkflowRequestInfo wri) {
+ Holder<String> errorCode = new Holder<String>();
+ Holder<String> errorMsg = new Holder<String>();
+ Holder<String> addWorkflowResult = new Holder<String>();
+
+ OAWorkFlowRequest owfr = new OAWorkFlowRequest();
+ // 璋冪敤OA娴佺▼鏂板鏂规硶锛屽彂璧稯A娴佺▼
+ owfr.getOAWorkFlowRequestSoap().addWorkflow("5DEDD10D2E434A139A05953BDB66CC68", wri, errorCode, errorMsg, addWorkflowResult);
+
+ // 娴佺▼鍙戦�佺粨鏋�
+ OAResult oaResult = new OAResult();
+ oaResult.setErrorCode(errorCode.value);
+ oaResult.setErrorMsg(errorMsg.value);
+ oaResult.setAddWorkflowResult(addWorkflowResult.value);
+
+ return oaResult;
+ }
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequest.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequest.java
new file mode 100644
index 0000000..4970814
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequest.java
@@ -0,0 +1,161 @@
+
+package com.ruoyi.common.oa;
+
+
+
+import com.ruoyi.common.utils.ApplicationContextHolder;
+
+import javax.xml.namespace.QName;
+import javax.xml.ws.*;
+import java.net.MalformedURLException;
+import java.net.URL;
+
+
+/**
+ * This class was generated by the JAX-WS RI.
+ * JAX-WS RI 2.2.9-b130926.1035
+ * Generated source version: 2.2
+ *
+ */
+@WebServiceClient(name = "OA_WorkFlowRequest", targetNamespace = "http://tempuri.org/")
+public class OAWorkFlowRequest
+ extends Service
+{
+
+ private final static URL OAWORKFLOWREQUEST_WSDL_LOCATION;
+ private final static WebServiceException OAWORKFLOWREQUEST_EXCEPTION;
+ private final static QName OAWORKFLOWREQUEST_QNAME = new QName("http://tempuri.org/", "OA_WorkFlowRequest");
+
+ static {
+ URL url = null;
+ WebServiceException e = null;
+ try {
+ OAProperty oaProperties = ApplicationContextHolder.getBean(OAProperty.class);
+ url = new URL(oaProperties.getOaHost());
+ } catch (MalformedURLException ex) {
+ e = new WebServiceException(ex);
+ }
+ OAWORKFLOWREQUEST_WSDL_LOCATION = url;
+ OAWORKFLOWREQUEST_EXCEPTION = e;
+ }
+
+ public OAWorkFlowRequest() {
+ super(__getWsdlLocation(), OAWORKFLOWREQUEST_QNAME);
+ }
+
+ public OAWorkFlowRequest(WebServiceFeature... features) {
+ super(__getWsdlLocation(), OAWORKFLOWREQUEST_QNAME, features);
+ }
+
+ public OAWorkFlowRequest(URL wsdlLocation) {
+ super(wsdlLocation, OAWORKFLOWREQUEST_QNAME);
+ }
+
+ public OAWorkFlowRequest(URL wsdlLocation, WebServiceFeature... features) {
+ super(wsdlLocation, OAWORKFLOWREQUEST_QNAME, features);
+ }
+
+ public OAWorkFlowRequest(URL wsdlLocation, QName serviceName) {
+ super(wsdlLocation, serviceName);
+ }
+
+ public OAWorkFlowRequest(URL wsdlLocation, QName serviceName, WebServiceFeature... features) {
+ super(wsdlLocation, serviceName, features);
+ }
+
+ /**
+ *
+ * @return
+ * returns OAWorkFlowRequestSoap
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestSoap")
+ public OAWorkFlowRequestSoap getOAWorkFlowRequestSoap() {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestSoap"), OAWorkFlowRequestSoap.class);
+ }
+
+ /**
+ *
+ * @param features
+ * A list of {@link WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values.
+ * @return
+ * returns OAWorkFlowRequestSoap
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestSoap")
+ public OAWorkFlowRequestSoap getOAWorkFlowRequestSoap(WebServiceFeature... features) {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestSoap"), OAWorkFlowRequestSoap.class, features);
+ }
+
+ /**
+ *
+ * @return
+ * returns OAWorkFlowRequestSoap
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestSoap12")
+ public OAWorkFlowRequestSoap getOAWorkFlowRequestSoap12() {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestSoap12"), OAWorkFlowRequestSoap.class);
+ }
+
+ /**
+ *
+ * @param features
+ * A list of {@link WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values.
+ * @return
+ * returns OAWorkFlowRequestSoap
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestSoap12")
+ public OAWorkFlowRequestSoap getOAWorkFlowRequestSoap12(WebServiceFeature... features) {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestSoap12"), OAWorkFlowRequestSoap.class, features);
+ }
+
+ /**
+ *
+ * @return
+ * returns OAWorkFlowRequestHttpGet
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestHttpGet")
+ public OAWorkFlowRequestHttpGet getOAWorkFlowRequestHttpGet() {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestHttpGet"), OAWorkFlowRequestHttpGet.class);
+ }
+
+ /**
+ *
+ * @param features
+ * A list of {@link WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values.
+ * @return
+ * returns OAWorkFlowRequestHttpGet
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestHttpGet")
+ public OAWorkFlowRequestHttpGet getOAWorkFlowRequestHttpGet(WebServiceFeature... features) {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestHttpGet"), OAWorkFlowRequestHttpGet.class, features);
+ }
+
+ /**
+ *
+ * @return
+ * returns OAWorkFlowRequestHttpPost
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestHttpPost")
+ public OAWorkFlowRequestHttpPost getOAWorkFlowRequestHttpPost() {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestHttpPost"), OAWorkFlowRequestHttpPost.class);
+ }
+
+ /**
+ *
+ * @param features
+ * A list of {@link WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values.
+ * @return
+ * returns OAWorkFlowRequestHttpPost
+ */
+ @WebEndpoint(name = "OA_WorkFlowRequestHttpPost")
+ public OAWorkFlowRequestHttpPost getOAWorkFlowRequestHttpPost(WebServiceFeature... features) {
+ return super.getPort(new QName("http://tempuri.org/", "OA_WorkFlowRequestHttpPost"), OAWorkFlowRequestHttpPost.class, features);
+ }
+
+ private static URL __getWsdlLocation() {
+ if (OAWORKFLOWREQUEST_EXCEPTION!= null) {
+ throw OAWORKFLOWREQUEST_EXCEPTION;
+ }
+ return OAWORKFLOWREQUEST_WSDL_LOCATION;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpGet.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpGet.java
new file mode 100644
index 0000000..55c98ce
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpGet.java
@@ -0,0 +1,50 @@
+
+package com.ruoyi.common.oa;
+
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebResult;
+import javax.jws.WebService;
+import javax.jws.soap.SOAPBinding;
+import javax.xml.bind.annotation.XmlSeeAlso;
+
+
+/**
+ * This class was generated by the JAX-WS RI.
+ * JAX-WS RI 2.2.9-b130926.1035
+ * Generated source version: 2.2
+ *
+ */
+@WebService(name = "OA_WorkFlowRequestHttpGet", targetNamespace = "http://tempuri.org/")
+@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
+@XmlSeeAlso({
+ ObjectFactory.class
+})
+public interface OAWorkFlowRequestHttpGet {
+
+
+ /**
+ *
+ * @param requestid
+ * @param clientip
+ * @param remark
+ * @param forwardoperator
+ * @param userId
+ * @return
+ * returns java.lang.String
+ */
+ @WebMethod
+ @WebResult(name = "string", targetNamespace = "http://tempuri.org/", partName = "Body")
+ public String forwardWorkflowRequest(
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "requestid")
+ String requestid,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "forwardoperator")
+ String forwardoperator,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "remark")
+ String remark,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "userId")
+ String userId,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "clientip")
+ String clientip);
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpPost.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpPost.java
new file mode 100644
index 0000000..bd5a4e2
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestHttpPost.java
@@ -0,0 +1,50 @@
+
+package com.ruoyi.common.oa;
+
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebResult;
+import javax.jws.WebService;
+import javax.jws.soap.SOAPBinding;
+import javax.xml.bind.annotation.XmlSeeAlso;
+
+
+/**
+ * This class was generated by the JAX-WS RI.
+ * JAX-WS RI 2.2.9-b130926.1035
+ * Generated source version: 2.2
+ *
+ */
+@WebService(name = "OA_WorkFlowRequestHttpPost", targetNamespace = "http://tempuri.org/")
+@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
+@XmlSeeAlso({
+ ObjectFactory.class
+})
+public interface OAWorkFlowRequestHttpPost {
+
+
+ /**
+ *
+ * @param requestid
+ * @param clientip
+ * @param remark
+ * @param forwardoperator
+ * @param userId
+ * @return
+ * returns java.lang.String
+ */
+ @WebMethod
+ @WebResult(name = "string", targetNamespace = "http://tempuri.org/", partName = "Body")
+ public String forwardWorkflowRequest(
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "requestid")
+ String requestid,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "forwardoperator")
+ String forwardoperator,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "remark")
+ String remark,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "userId")
+ String userId,
+ @WebParam(name = "string", targetNamespace = "http://www.w3.org/2001/XMLSchema", partName = "clientip")
+ String clientip);
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestSoap.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestSoap.java
new file mode 100644
index 0000000..5122cdc
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkFlowRequestSoap.java
@@ -0,0 +1,99 @@
+
+package com.ruoyi.common.oa;
+
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebResult;
+import javax.jws.WebService;
+import javax.xml.bind.annotation.XmlSeeAlso;
+import javax.xml.ws.Holder;
+import javax.xml.ws.RequestWrapper;
+import javax.xml.ws.ResponseWrapper;
+
+
+/**
+ * This class was generated by the JAX-WS RI.
+ * JAX-WS RI 2.2.9-b130926.1035
+ * Generated source version: 2.2
+ *
+ */
+@WebService(name = "OA_WorkFlowRequestSoap", targetNamespace = "http://tempuri.org/")
+@XmlSeeAlso({
+ ObjectFactory.class
+})
+public interface OAWorkFlowRequestSoap {
+
+
+ /**
+ *
+ * @param requestid
+ * @param clientip
+ * @param remark
+ * @param forwardoperator
+ * @param userId
+ * @return
+ * returns java.lang.String
+ */
+ @WebMethod(action = "http://tempuri.org/forwardWorkflowRequest")
+ @WebResult(name = "forwardWorkflowRequestResult", targetNamespace = "http://tempuri.org/")
+ @RequestWrapper(localName = "forwardWorkflowRequest", targetNamespace = "http://tempuri.org/", className = "com.chinaztt.mes.common.oa.ForwardWorkflowRequest")
+ @ResponseWrapper(localName = "forwardWorkflowRequestResponse", targetNamespace = "http://tempuri.org/", className = "com.chinaztt.mes.common.oa.ForwardWorkflowRequestResponse")
+ public String forwardWorkflowRequest(
+ @WebParam(name = "requestid", targetNamespace = "http://tempuri.org/")
+ int requestid,
+ @WebParam(name = "forwardoperator", targetNamespace = "http://tempuri.org/")
+ String forwardoperator,
+ @WebParam(name = "remark", targetNamespace = "http://tempuri.org/")
+ String remark,
+ @WebParam(name = "userId", targetNamespace = "http://tempuri.org/")
+ int userId,
+ @WebParam(name = "clientip", targetNamespace = "http://tempuri.org/")
+ String clientip);
+
+ /**
+ *
+ * @param addWorkflowResult
+ * @param errorCode
+ * @param appKey
+ * @param wri
+ * @param errorMsg
+ */
+ @WebMethod(operationName = "AddWorkflow", action = "http://tempuri.org/AddWorkflow")
+ @RequestWrapper(localName = "AddWorkflow", targetNamespace = "http://tempuri.org/", className = "com.chinaztt.mes.common.oa.AddWorkflow")
+ @ResponseWrapper(localName = "AddWorkflowResponse", targetNamespace = "http://tempuri.org/", className = "com.chinaztt.mes.common.oa.AddWorkflowResponse")
+ public void addWorkflow(
+ @WebParam(name = "appKey", targetNamespace = "http://tempuri.org/")
+ String appKey,
+ @WebParam(name = "wri", targetNamespace = "http://tempuri.org/")
+ OAWorkflowRequestInfo wri,
+ @WebParam(name = "errorCode", targetNamespace = "http://tempuri.org/", mode = WebParam.Mode.INOUT)
+ Holder<String> errorCode,
+ @WebParam(name = "errorMsg", targetNamespace = "http://tempuri.org/", mode = WebParam.Mode.INOUT)
+ Holder<String> errorMsg,
+ @WebParam(name = "AddWorkflowResult", targetNamespace = "http://tempuri.org/", mode = WebParam.Mode.OUT)
+ Holder<String> addWorkflowResult);
+
+ /**
+ *
+ * @param errorCode
+ * @param appKey
+ * @param updateAndSubmitWorkflowResult
+ * @param wri
+ * @param errorMsg
+ */
+ @WebMethod(operationName = "UpdateAndSubmitWorkflow", action = "http://tempuri.org/UpdateAndSubmitWorkflow")
+ @RequestWrapper(localName = "UpdateAndSubmitWorkflow", targetNamespace = "http://tempuri.org/", className = "com.chinaztt.mes.common.oa.UpdateAndSubmitWorkflow")
+ @ResponseWrapper(localName = "UpdateAndSubmitWorkflowResponse", targetNamespace = "http://tempuri.org/", className = "com.chinaztt.mes.common.oa.UpdateAndSubmitWorkflowResponse")
+ public void updateAndSubmitWorkflow(
+ @WebParam(name = "appKey", targetNamespace = "http://tempuri.org/")
+ String appKey,
+ @WebParam(name = "wri", targetNamespace = "http://tempuri.org/")
+ OAWorkflowRequestInfo wri,
+ @WebParam(name = "errorCode", targetNamespace = "http://tempuri.org/", mode = WebParam.Mode.INOUT)
+ Holder<String> errorCode,
+ @WebParam(name = "errorMsg", targetNamespace = "http://tempuri.org/", mode = WebParam.Mode.INOUT)
+ Holder<String> errorMsg,
+ @WebParam(name = "UpdateAndSubmitWorkflowResult", targetNamespace = "http://tempuri.org/", mode = WebParam.Mode.OUT)
+ Holder<String> updateAndSubmitWorkflowResult);
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestInfo.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestInfo.java
new file mode 100644
index 0000000..f7c585e
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestInfo.java
@@ -0,0 +1,254 @@
+
+package com.ruoyi.common.oa;
+
+import lombok.Data;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>OA_WorkflowRequestInfo complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType name="OA_WorkflowRequestInfo">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="WorkflowId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="RequestId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="MainId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="CreaterId" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="RequestLevel" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="RequestName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="Remark" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="WorkflowMainTable" type="{http://tempuri.org/}OA_WorkflowTable" minOccurs="0"/>
+ * <element name="WorkflowDetailTables" type="{http://tempuri.org/}ArrayOfOA_WorkflowTable" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "OA_WorkflowRequestInfo", propOrder = {
+ "workflowId",
+ "requestId",
+ "mainId",
+ "createrId",
+ "requestLevel",
+ "requestName",
+ "remark",
+ "isnextflow",
+ "workflowMainTable",
+ "workflowDetailTables"
+})
+@Data
+public class OAWorkflowRequestInfo {
+
+ @XmlElement(name = "WorkflowId")
+ protected String workflowId;
+ @XmlElement(name = "RequestId")
+ protected String requestId;
+ @XmlElement(name = "MainId")
+ protected String mainId;
+ @XmlElement(name = "CreaterId")
+ protected String createrId;
+ @XmlElement(name = "RequestLevel")
+ protected String requestLevel;
+ @XmlElement(name = "RequestName")
+ protected String requestName;
+ @XmlElement(name = "Remark")
+ protected String remark;
+ @XmlElement(name = "isnextflow")
+ protected String isnextflow;
+ @XmlElement(name = "WorkflowMainTable")
+ protected OAWorkflowTable workflowMainTable;
+ @XmlElement(name = "WorkflowDetailTables")
+ protected ArrayOfOAWorkflowTable workflowDetailTables;
+
+ /**
+ * 鑾峰彇workflowId灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link String }
+ */
+ public String getWorkflowId() {
+ return workflowId;
+ }
+
+ /**
+ * 璁剧疆workflowId灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link String }
+ */
+ public void setWorkflowId(String value) {
+ this.workflowId = value;
+ }
+
+ /**
+ * 鑾峰彇requestId灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link String }
+ */
+ public String getRequestId() {
+ return requestId;
+ }
+
+ /**
+ * 璁剧疆requestId灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link String }
+ */
+ public void setRequestId(String value) {
+ this.requestId = value;
+ }
+
+ /**
+ * 鑾峰彇mainId灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link String }
+ */
+ public String getMainId() {
+ return mainId;
+ }
+
+ /**
+ * 璁剧疆mainId灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link String }
+ */
+ public void setMainId(String value) {
+ this.mainId = value;
+ }
+
+ /**
+ * 鑾峰彇createrId灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link String }
+ */
+ public String getCreaterId() {
+ return createrId;
+ }
+
+ /**
+ * 璁剧疆createrId灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link String }
+ */
+ public void setCreaterId(String value) {
+ this.createrId = value;
+ }
+
+ /**
+ * 鑾峰彇requestLevel灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link String }
+ */
+ public String getRequestLevel() {
+ return requestLevel;
+ }
+
+ /**
+ * 璁剧疆requestLevel灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link String }
+ */
+ public void setRequestLevel(String value) {
+ this.requestLevel = value;
+ }
+
+ /**
+ * 鑾峰彇requestName灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link String }
+ */
+ public String getRequestName() {
+ return requestName;
+ }
+
+ /**
+ * 璁剧疆requestName灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link String }
+ */
+ public void setRequestName(String value) {
+ this.requestName = value;
+ }
+
+ /**
+ * 鑾峰彇remark灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link String }
+ */
+ public String getRemark() {
+ return remark;
+ }
+
+ /**
+ * 璁剧疆remark灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link String }
+ */
+ public void setRemark(String value) {
+ this.remark = value;
+ }
+
+ /**
+ * 鑾峰彇workflowMainTable灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link OAWorkflowTable }
+ */
+ public OAWorkflowTable getWorkflowMainTable() {
+ return workflowMainTable;
+ }
+
+ /**
+ * 璁剧疆workflowMainTable灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link OAWorkflowTable }
+ */
+ public void setWorkflowMainTable(OAWorkflowTable value) {
+ this.workflowMainTable = value;
+ }
+
+ /**
+ * 鑾峰彇workflowDetailTables灞炴�х殑鍊笺��
+ *
+ * @return possible object is
+ * {@link ArrayOfOAWorkflowTable }
+ */
+ public ArrayOfOAWorkflowTable getWorkflowDetailTables() {
+ return workflowDetailTables;
+ }
+
+ /**
+ * 璁剧疆workflowDetailTables灞炴�х殑鍊笺��
+ *
+ * @param value allowed object is
+ * {@link ArrayOfOAWorkflowTable }
+ */
+ public void setWorkflowDetailTables(ArrayOfOAWorkflowTable value) {
+ this.workflowDetailTables = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableField.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableField.java
new file mode 100644
index 0000000..6571bed
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableField.java
@@ -0,0 +1,368 @@
+
+package com.ruoyi.common.oa;
+
+import lombok.Data;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+import java.util.Objects;
+
+
+/**
+ * <p>OA_WorkflowRequestTableField complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType name="OA_WorkflowRequestTableField">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="FieldName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="FieldValue" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="View" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="Edit" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="FieldType" type="{http://www.w3.org/2001/XMLSchema}int"/>
+ * <element name="SysName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="ValueType1" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="ValueType2" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="ValueType3" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="ValueKey" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="ValueTableName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "OA_WorkflowRequestTableField", propOrder = {
+ "fieldName",
+ "fieldValue",
+ "view",
+ "edit",
+ "fieldType",
+ "sysName",
+ "valueType1",
+ "valueType2",
+ "valueType3",
+ "valueKey",
+ "valueTableName"
+})
+@Data
+public class OAWorkflowRequestTableField {
+
+ @XmlElement(name = "FieldName")
+ protected String fieldName;
+ @XmlElement(name = "FieldValue")
+ protected String fieldValue;
+ @XmlElement(name = "View")
+ protected String view;
+ @XmlElement(name = "Edit")
+ protected String edit;
+ @XmlElement(name = "FieldType")
+ protected int fieldType;
+ @XmlElement(name = "SysName")
+ protected String sysName;
+ @XmlElement(name = "ValueType1")
+ protected String valueType1;
+ @XmlElement(name = "ValueType2")
+ protected String valueType2;
+ @XmlElement(name = "ValueType3")
+ protected String valueType3;
+ @XmlElement(name = "ValueKey")
+ protected String valueKey;
+ @XmlElement(name = "ValueTableName")
+ protected String valueTableName;
+
+ /**
+ * 鑾峰彇fieldName灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getFieldName() {
+ return fieldName;
+ }
+
+ /**
+ * 璁剧疆fieldName灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setFieldName(String value) {
+ this.fieldName = value;
+ }
+
+ /**
+ * 鑾峰彇fieldValue灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getFieldValue() {
+ return fieldValue;
+ }
+
+ /**
+ * 璁剧疆fieldValue灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setFieldValue(String value) {
+ this.fieldValue = value;
+ }
+
+ /**
+ * 鑾峰彇view灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getView() {
+ return view;
+ }
+
+ /**
+ * 璁剧疆view灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setView(String value) {
+ this.view = value;
+ }
+
+ /**
+ * 鑾峰彇edit灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getEdit() {
+ return edit;
+ }
+
+ /**
+ * 璁剧疆edit灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setEdit(String value) {
+ this.edit = value;
+ }
+
+ /**
+ * 鑾峰彇fieldType灞炴�х殑鍊笺��
+ *
+ */
+ public int getFieldType() {
+ return fieldType;
+ }
+
+ /**
+ * 璁剧疆fieldType灞炴�х殑鍊笺��
+ *
+ */
+ public void setFieldType(int value) {
+ this.fieldType = value;
+ }
+
+ /**
+ * 鑾峰彇sysName灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getSysName() {
+ return sysName;
+ }
+
+ /**
+ * 璁剧疆sysName灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setSysName(String value) {
+ this.sysName = value;
+ }
+
+ /**
+ * 鑾峰彇valueType1灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValueType1() {
+ return valueType1;
+ }
+
+ /**
+ * 璁剧疆valueType1灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValueType1(String value) {
+ this.valueType1 = value;
+ }
+
+ /**
+ * 鑾峰彇valueType2灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValueType2() {
+ return valueType2;
+ }
+
+ /**
+ * 璁剧疆valueType2灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValueType2(String value) {
+ this.valueType2 = value;
+ }
+
+ /**
+ * 鑾峰彇valueType3灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValueType3() {
+ return valueType3;
+ }
+
+ /**
+ * 璁剧疆valueType3灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValueType3(String value) {
+ this.valueType3 = value;
+ }
+
+ /**
+ * 鑾峰彇valueKey灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValueKey() {
+ return valueKey;
+ }
+
+ /**
+ * 璁剧疆valueKey灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValueKey(String value) {
+ this.valueKey = value;
+ }
+
+ /**
+ * 鑾峰彇valueTableName灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValueTableName() {
+ return valueTableName;
+ }
+
+ /**
+ * 璁剧疆valueTableName灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValueTableName(String value) {
+ this.valueTableName = value;
+ }
+
+ @Override
+ public String toString() {
+ return "OAWorkflowRequestTableField{" +
+ "fieldName='" + fieldName + '\'' +
+ ", fieldValue='" + fieldValue + '\'' +
+ ", view='" + view + '\'' +
+ ", edit='" + edit + '\'' +
+ ", fieldType=" + fieldType +
+ ", sysName='" + sysName + '\'' +
+ ", valueType1='" + valueType1 + '\'' +
+ ", valueType2='" + valueType2 + '\'' +
+ ", valueType3='" + valueType3 + '\'' +
+ ", valueKey='" + valueKey + '\'' +
+ ", valueTableName='" + valueTableName + '\'' +
+ '}';
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ OAWorkflowRequestTableField that = (OAWorkflowRequestTableField) o;
+ return fieldType == that.fieldType && Objects.equals(fieldName, that.fieldName) && Objects.equals(fieldValue, that.fieldValue) && Objects.equals(view, that.view) && Objects.equals(edit, that.edit) && Objects.equals(sysName, that.sysName) && Objects.equals(valueType1, that.valueType1) && Objects.equals(valueType2, that.valueType2) && Objects.equals(valueType3, that.valueType3) && Objects.equals(valueKey, that.valueKey) && Objects.equals(valueTableName, that.valueTableName);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(fieldName, fieldValue, view, edit, fieldType, sysName, valueType1, valueType2, valueType3, valueKey, valueTableName);
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableRecord.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableRecord.java
new file mode 100644
index 0000000..3c28fd8
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowRequestTableRecord.java
@@ -0,0 +1,62 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>OA_WorkflowRequestTableRecord complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType name="OA_WorkflowRequestTableRecord">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="WorkflowRequestTableFields" type="{http://tempuri.org/}ArrayOfOA_WorkflowRequestTableField" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "OA_WorkflowRequestTableRecord", propOrder = {
+ "workflowRequestTableFields"
+})
+public class OAWorkflowRequestTableRecord {
+
+ @XmlElement(name = "WorkflowRequestTableFields")
+ protected ArrayOfOAWorkflowRequestTableField workflowRequestTableFields;
+
+ /**
+ * 鑾峰彇workflowRequestTableFields灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link ArrayOfOAWorkflowRequestTableField }
+ *
+ */
+ public ArrayOfOAWorkflowRequestTableField getWorkflowRequestTableFields() {
+ return workflowRequestTableFields;
+ }
+
+ /**
+ * 璁剧疆workflowRequestTableFields灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link ArrayOfOAWorkflowRequestTableField }
+ *
+ */
+ public void setWorkflowRequestTableFields(ArrayOfOAWorkflowRequestTableField value) {
+ this.workflowRequestTableFields = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowTable.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowTable.java
new file mode 100644
index 0000000..11b4add
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/OAWorkflowTable.java
@@ -0,0 +1,90 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>OA_WorkflowTable complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType name="OA_WorkflowTable">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="TableName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="WorkflowRequestTableRecords" type="{http://tempuri.org/}ArrayOfOA_WorkflowRequestTableRecord" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "OA_WorkflowTable", propOrder = {
+ "tableName",
+ "workflowRequestTableRecords"
+})
+public class OAWorkflowTable {
+
+ @XmlElement(name = "TableName")
+ protected String tableName;
+ @XmlElement(name = "WorkflowRequestTableRecords")
+ protected ArrayOfOAWorkflowRequestTableRecord workflowRequestTableRecords;
+
+ /**
+ * 鑾峰彇tableName灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getTableName() {
+ return tableName;
+ }
+
+ /**
+ * 璁剧疆tableName灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setTableName(String value) {
+ this.tableName = value;
+ }
+
+ /**
+ * 鑾峰彇workflowRequestTableRecords灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link ArrayOfOAWorkflowRequestTableRecord }
+ *
+ */
+ public ArrayOfOAWorkflowRequestTableRecord getWorkflowRequestTableRecords() {
+ return workflowRequestTableRecords;
+ }
+
+ /**
+ * 璁剧疆workflowRequestTableRecords灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link ArrayOfOAWorkflowRequestTableRecord }
+ *
+ */
+ public void setWorkflowRequestTableRecords(ArrayOfOAWorkflowRequestTableRecord value) {
+ this.workflowRequestTableRecords = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/ObjectFactory.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ObjectFactory.java
new file mode 100644
index 0000000..d19d18a
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/ObjectFactory.java
@@ -0,0 +1,149 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlRegistry;
+import javax.xml.namespace.QName;
+
+
+/**
+ * This object contains factory methods for each
+ * Java content interface and Java element interface
+ * generated in the com.chinaztt.mes.common.oa package.
+ * <p>An ObjectFactory allows you to programatically
+ * construct new instances of the Java representation
+ * for XML content. The Java representation of XML
+ * content can consist of schema derived interfaces
+ * and classes representing the binding of schema
+ * type definitions, element declarations and model
+ * groups. Factory methods for each of these are
+ * provided in this class.
+ *
+ */
+@XmlRegistry
+public class ObjectFactory {
+
+ private final static QName _String_QNAME = new QName("http://tempuri.org/", "string");
+
+ /**
+ * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: com.chinaztt.mes.common.oa
+ *
+ */
+ public ObjectFactory() {
+ }
+
+ /**
+ * Create an instance of {@link AddWorkflowResponse }
+ *
+ */
+ public AddWorkflowResponse createAddWorkflowResponse() {
+ return new AddWorkflowResponse();
+ }
+
+ /**
+ * Create an instance of {@link AddWorkflow }
+ *
+ */
+ public AddWorkflow createAddWorkflow() {
+ return new AddWorkflow();
+ }
+
+ /**
+ * Create an instance of {@link OAWorkflowRequestInfo }
+ *
+ */
+ public OAWorkflowRequestInfo createOAWorkflowRequestInfo() {
+ return new OAWorkflowRequestInfo();
+ }
+
+ /**
+ * Create an instance of {@link UpdateAndSubmitWorkflow }
+ *
+ */
+ public UpdateAndSubmitWorkflow createUpdateAndSubmitWorkflow() {
+ return new UpdateAndSubmitWorkflow();
+ }
+
+ /**
+ * Create an instance of {@link UpdateAndSubmitWorkflowResponse }
+ *
+ */
+ public UpdateAndSubmitWorkflowResponse createUpdateAndSubmitWorkflowResponse() {
+ return new UpdateAndSubmitWorkflowResponse();
+ }
+
+ /**
+ * Create an instance of {@link ForwardWorkflowRequestResponse }
+ *
+ */
+ public ForwardWorkflowRequestResponse createForwardWorkflowRequestResponse() {
+ return new ForwardWorkflowRequestResponse();
+ }
+
+ /**
+ * Create an instance of {@link ForwardWorkflowRequest }
+ *
+ */
+ public ForwardWorkflowRequest createForwardWorkflowRequest() {
+ return new ForwardWorkflowRequest();
+ }
+
+ /**
+ * Create an instance of {@link OAWorkflowTable }
+ *
+ */
+ public OAWorkflowTable createOAWorkflowTable() {
+ return new OAWorkflowTable();
+ }
+
+ /**
+ * Create an instance of {@link OAWorkflowRequestTableRecord }
+ *
+ */
+ public OAWorkflowRequestTableRecord createOAWorkflowRequestTableRecord() {
+ return new OAWorkflowRequestTableRecord();
+ }
+
+ /**
+ * Create an instance of {@link ArrayOfOAWorkflowTable }
+ *
+ */
+ public ArrayOfOAWorkflowTable createArrayOfOAWorkflowTable() {
+ return new ArrayOfOAWorkflowTable();
+ }
+
+ /**
+ * Create an instance of {@link ArrayOfOAWorkflowRequestTableRecord }
+ *
+ */
+ public ArrayOfOAWorkflowRequestTableRecord createArrayOfOAWorkflowRequestTableRecord() {
+ return new ArrayOfOAWorkflowRequestTableRecord();
+ }
+
+ /**
+ * Create an instance of {@link OAWorkflowRequestTableField }
+ *
+ */
+ public OAWorkflowRequestTableField createOAWorkflowRequestTableField() {
+ return new OAWorkflowRequestTableField();
+ }
+
+ /**
+ * Create an instance of {@link ArrayOfOAWorkflowRequestTableField }
+ *
+ */
+ public ArrayOfOAWorkflowRequestTableField createArrayOfOAWorkflowRequestTableField() {
+ return new ArrayOfOAWorkflowRequestTableField();
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "http://tempuri.org/", name = "string")
+ public JAXBElement<String> createString(String value) {
+ return new JAXBElement<String>(_String_QNAME, String.class, null, value);
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflow.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflow.java
new file mode 100644
index 0000000..7f82b54
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflow.java
@@ -0,0 +1,143 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>anonymous complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="appKey" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="wri" type="{http://tempuri.org/}OA_WorkflowRequestInfo" minOccurs="0"/>
+ * <element name="errorCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="errorMsg" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "appKey",
+ "wri",
+ "errorCode",
+ "errorMsg"
+})
+@XmlRootElement(name = "UpdateAndSubmitWorkflow")
+public class UpdateAndSubmitWorkflow {
+
+ protected String appKey;
+ protected OAWorkflowRequestInfo wri;
+ protected String errorCode;
+ protected String errorMsg;
+
+ /**
+ * 鑾峰彇appKey灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getAppKey() {
+ return appKey;
+ }
+
+ /**
+ * 璁剧疆appKey灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setAppKey(String value) {
+ this.appKey = value;
+ }
+
+ /**
+ * 鑾峰彇wri灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link OAWorkflowRequestInfo }
+ *
+ */
+ public OAWorkflowRequestInfo getWri() {
+ return wri;
+ }
+
+ /**
+ * 璁剧疆wri灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link OAWorkflowRequestInfo }
+ *
+ */
+ public void setWri(OAWorkflowRequestInfo value) {
+ this.wri = value;
+ }
+
+ /**
+ * 鑾峰彇errorCode灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorCode() {
+ return errorCode;
+ }
+
+ /**
+ * 璁剧疆errorCode灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorCode(String value) {
+ this.errorCode = value;
+ }
+
+ /**
+ * 鑾峰彇errorMsg灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorMsg() {
+ return errorMsg;
+ }
+
+ /**
+ * 璁剧疆errorMsg灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorMsg(String value) {
+ this.errorMsg = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflowResponse.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflowResponse.java
new file mode 100644
index 0000000..37153bc
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/UpdateAndSubmitWorkflowResponse.java
@@ -0,0 +1,114 @@
+
+package com.ruoyi.common.oa;
+
+import javax.xml.bind.annotation.*;
+
+
+/**
+ * <p>anonymous complex type鐨� Java 绫汇��
+ *
+ * <p>浠ヤ笅妯″紡鐗囨鎸囧畾鍖呭惈鍦ㄦ绫讳腑鐨勯鏈熷唴瀹广��
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="UpdateAndSubmitWorkflowResult" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="errorCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="errorMsg" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "updateAndSubmitWorkflowResult",
+ "errorCode",
+ "errorMsg"
+})
+@XmlRootElement(name = "UpdateAndSubmitWorkflowResponse")
+public class UpdateAndSubmitWorkflowResponse {
+
+ @XmlElement(name = "UpdateAndSubmitWorkflowResult")
+ protected String updateAndSubmitWorkflowResult;
+ protected String errorCode;
+ protected String errorMsg;
+
+ /**
+ * 鑾峰彇updateAndSubmitWorkflowResult灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getUpdateAndSubmitWorkflowResult() {
+ return updateAndSubmitWorkflowResult;
+ }
+
+ /**
+ * 璁剧疆updateAndSubmitWorkflowResult灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setUpdateAndSubmitWorkflowResult(String value) {
+ this.updateAndSubmitWorkflowResult = value;
+ }
+
+ /**
+ * 鑾峰彇errorCode灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorCode() {
+ return errorCode;
+ }
+
+ /**
+ * 璁剧疆errorCode灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorCode(String value) {
+ this.errorCode = value;
+ }
+
+ /**
+ * 鑾峰彇errorMsg灞炴�х殑鍊笺��
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getErrorMsg() {
+ return errorMsg;
+ }
+
+ /**
+ * 璁剧疆errorMsg灞炴�х殑鍊笺��
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setErrorMsg(String value) {
+ this.errorMsg = value;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/oa/package-info.java b/ruoyi-common/src/main/java/com/ruoyi/common/oa/package-info.java
new file mode 100644
index 0000000..cd30acf
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/oa/package-info.java
@@ -0,0 +1,2 @@
+@javax.xml.bind.annotation.XmlSchema(namespace = "http://tempuri.org/", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
+package com.ruoyi.common.oa;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ApplicationContextHolder.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ApplicationContextHolder.java
new file mode 100644
index 0000000..a610a15
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ApplicationContextHolder.java
@@ -0,0 +1,52 @@
+package com.ruoyi.common.utils;
+
+import org.springframework.beans.BeansException;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Author: zhangxy
+ * @Date: 2021-05-24 16:29
+ */
+@Component
+public class ApplicationContextHolder implements ApplicationContextAware {
+ private static ApplicationContext applicationContext;
+
+ @Override
+ public void setApplicationContext(ApplicationContext ctx) throws BeansException {
+ applicationContext = ctx;
+ }
+
+ /**
+ * Get application context from everywhere
+ *
+ * @return
+ */
+ public static ApplicationContext getApplicationContext() {
+ return applicationContext;
+ }
+
+ /**
+ * Get bean by class
+ *
+ * @param clazz
+ * @param <T>
+ * @return
+ */
+ public static <T> T getBean(Class<T> clazz) {
+ return applicationContext.getBean(clazz);
+ }
+
+ /**
+ * Get bean by class name
+ *
+ * @param name
+ * @param <T>
+ * @return
+ */
+ @SuppressWarnings("unchecked")
+ public static <T> T getBean(String name) {
+ return (T) applicationContext.getBean(name);
+ }
+}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/FormatterConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/FormatterConfig.java
deleted file mode 100644
index 5360870..0000000
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/FormatterConfig.java
+++ /dev/null
@@ -1,51 +0,0 @@
-//package com.ruoyi.framework.config;
-//
-//import com.fasterxml.jackson.databind.DeserializationFeature;
-//import com.fasterxml.jackson.databind.ObjectMapper;
-//import com.fasterxml.jackson.databind.SerializationFeature;
-//import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
-//import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-//import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-//import org.springframework.beans.factory.annotation.Value;
-//import org.springframework.context.annotation.Configuration;
-//import org.springframework.http.converter.HttpMessageConverter;
-//import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
-//import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
-//import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
-//
-//import java.text.SimpleDateFormat;
-//import java.time.LocalDateTime;
-//import java.time.format.DateTimeFormatter;
-//import java.util.List;
-//
-//@Configuration
-//public class FormatterConfig extends WebMvcConfigurationSupport {
-//
-//
-// @Value("${spring.jackson.date-format}")
-// private String pattern;
-//
-// // 鍏ㄥ眬鏍煎紡鍖栧鐞�
-// @Override
-// protected void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
-// Jackson2ObjectMapperBuilder json = Jackson2ObjectMapperBuilder.json();
-// MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
-//
-// //localDateTime鏍煎紡鍖�
-// JavaTimeModule module = new JavaTimeModule();
-// LocalDateTimeDeserializer dateTimeDeserializer = new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(pattern));
-// LocalDateTimeSerializer dateTimeSerializer = new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(pattern));
-// module.addDeserializer(LocalDateTime.class, dateTimeDeserializer);
-// module.addSerializer(LocalDateTime.class, dateTimeSerializer);
-// ObjectMapper objectMapper = json.modules(module)
-// .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS).build();
-//
-// //date鏃堕棿鏍煎紡鍖�
-// objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
-// objectMapper.setDateFormat(new SimpleDateFormat(pattern.split(" ")[0]));
-//
-// // 璁剧疆鏍煎紡鍖栧唴瀹�
-// converter.setObjectMapper(objectMapper);
-// converters.add(0, converter);
-// }
-//}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/LocalDateTimeSerializerConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/LocalDateTimeSerializerConfig.java
new file mode 100644
index 0000000..f6c966a
--- /dev/null
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/LocalDateTimeSerializerConfig.java
@@ -0,0 +1,36 @@
+package com.ruoyi.framework.config;
+
+import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
+import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@Configuration
+public class LocalDateTimeSerializerConfig {
+ @Value("${spring.jackson.date-format}")
+ private String pattern;
+
+ @Bean
+ public LocalDateTimeSerializer localDateTimeSerializer() {
+ return new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(pattern));
+ }
+
+ @Bean
+ public LocalDateTimeDeserializer localDateTimeDeserializer() {
+ return new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(pattern));
+ }
+
+ @Bean
+ public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
+ return builder -> {
+ builder.serializerByType(LocalDateTime.class, localDateTimeSerializer());
+ builder.deserializerByType(LocalDateTime.class, localDateTimeDeserializer());
+ builder.simpleDateFormat(pattern);
+ };
+ }
+}
--
Gitblit v1.9.3