Commit 8218da17 authored by 李志平's avatar 李志平

demo

parent 01c79af6
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDEGvSRtg1e80qIznrkXRxS+vtH6iE2DuELz9AoA4FBZepMOxlXbwZaOYqoAkryEWV+ROj7fecLtc2JbILf3CL8Pids7whwZcM0Zpds9PNlis9q8jcuAQfICsiTO03DKG7/G8c8O3bjn6lW/7BdTjtp2jISE/HoSE2g7vLqWzv3T/1YUwd9rqu32Qdu15tEqJHcCu2DYZjBseccRHxMX8KQNdoSMKjRrdoF1DU2r3edyOj09UG2btwjZoxgH1qPQMCmRZnuCUxbTMmaZNyzDi9CE7K+0IMItacTo9G4+egNWi84NrvRSqSReK2uTOx0Z50Xs7EgPt1tM0RGuLBGkIgBAgMBAAECggEAdwh1k0yR6SR8BXZvmdX6r1Ow2wH+jrWRXH4Tt3YJKw0Vnpfw1eWKUZHD3B8oJq7wkCh70sulRrJfxB6dggw5ICsJ+1FMKg1a45+yImy8oNIU/LFxVPdDJeWFwfipRuBwH2FZGfJuQ9RSEYC6KKin36SV5+s7VucsV5cy05X1XDObPmJXicyIVeGCV2e3Pt3MyK3AQuVKxL5MtJEqHn91TjJRX4NTEPNqIF2T2GfsOAj1wQ3eHyC77vUyNTGtePNFOoy+1yd7gH30pzTfyqG8JrTPRPqaWNi4STHkrlMsGehmvTbDzw/UeQphbjm3omEp07xvDOldTKvLBqqHPxjU0QKBgQD+U/+Jgnp5IY34feDevdi7+kud3DGO4JSgdEPUYvec260YjXnodM/QILeXuxfH5Q8F9eh11KqLI8HjYdZ7u7vLz7iyx8iJiWVEzlPBpXHYKd+IOvBfbdft1cWSgRVDwcDiMXucQQNIFUjkMNmhBdW9QjhBkuJl1auhmGM5b+4xYwKBgQDFZPm+nhIGWPcCu98WrsgkGDM+wy862jwHIiJixaRBULX1/mPLosP35yxKWbfVaFPcfxdN5W31njQ9OUJkYeQpFO9uyE6Xx7ohA+qNHgYlW+Xfi02E9pBJH/FCBdOjAFPEyp1cBNAuRft22w1fLNIZJ5VQWEDvZ+aftHNJURywSwKBgAUsRjVQzxbppM6aGNnO+LqSE7mpQeTLEprU4pBOVwT8vt+R+RnOTm/ISpOufYRWV2DiqJDE+5cK6iWq1sb7gY1as0IHqD+L6OBmZfO5XsBr0Z0evcbjIBI5V+Rr9bfEGB1Brmb2N4/exvXFPJf222sXDrfeufYiS3Rk+hev/CNLAoGALKGSHllbNfgzkXitDlHiita174DuUt45KFu9bpvFcccv/TjRk59vs8OfLghvGl+GZpqNyF0RqbFlmlox+sRvdCJ5qJC9xG+yU/iwtcuOFDBdH1g95Mxi/0WrpQPwQDC4wAwX3FBySaQlIVCSC2z07B8ZEZuCwx649G82ieM/G1UCgYAugR4Z/1uafgXScjYShSMbP3HohmWKbCo1Ws9wtv2MNlmGtE2AhJq5ZLNccsM9sztPzgXQjSeVlyfPethqQeVdV+iCNaj4/VaL2QAyiCfEbc3dRkm5840Ob4rQtizicSIUvKuBaU9fgmtDvzgvgE0eaMh1OppSdAZ0qEut2xXErA==
\ No newline at end of file
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxBr0kbYNXvNKiM565F0cUvr7R+ohNg7hC8/QKAOBQWXqTDsZV28GWjmKqAJK8hFlfkTo+33nC7XNiWyC39wi/D4nbO8IcGXDNGaXbPTzZYrPavI3LgEHyArIkztNwyhu/xvHPDt245+pVv+wXU47adoyEhPx6EhNoO7y6ls790/9WFMHfa6rt9kHbtebRKiR3Artg2GYwbHnHER8TF/CkDXaEjCo0a3aBdQ1Nq93ncjo9PVBtm7cI2aMYB9aj0DApkWZ7glMW0zJmmTcsw4vQhOyvtCDCLWnE6PRuPnoDVovODa70UqkkXitrkzsdGedF7OxID7dbTNERriwRpCIAQIDAQAB
\ No newline at end of file
......@@ -123,6 +123,28 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>rsa</groupId>
<artifactId>RSA</artifactId>
<version>0.0.1</version>
<systemPath>${project.basedir}/lib/RSA-0.0.1-SNAPSHOT.jar</systemPath>
<scope>system</scope>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
......
package com.dianmi.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/open/oa")
public class OpenOAController {
}
package com.dianmi.dto;
import java.io.Serializable;
import lombok.Data;
@Data
public class QueryWorkflowDetailDto implements Serializable{
/**
*
*/
private static final long serialVersionUID = -5655371382778469618L;
private Integer requestid; //流程请求ID
private Integer userid; //当前用户
private Integer fromrequestid; //流程信息
}
package com.dianmi.dto;
import java.io.Serializable;
import lombok.Data;
@Data
public class QueryWorkflowTypeDto implements Serializable {
/**
*
*/
private static final long serialVersionUID = 6383851310085491249L;
private Integer pageNo;
private Integer pageSize;
private Integer recordCount;
private Integer userid;
private String conditions;
}
package com.dianmi.service;
import java.util.List;
import java.util.Map;
import com.dianmi.dto.QueryWorkflowDetailDto;
import com.dianmi.dto.QueryWorkflowTypeDto;
import com.dianmi.ws.WorkflowBaseInfo;
import com.dianmi.ws.WorkflowRequestInfo;
public interface IOpenOAService {
/**
* 查询可创建流程类型
* @param dto
* @return
*/
public List<WorkflowBaseInfo> getCreateWorkflowTypeList(QueryWorkflowTypeDto dto);
/**
* 查询流程详情
* @param dto
* @return
*/
public WorkflowRequestInfo getWorkflowRequest(QueryWorkflowDetailDto dto);
public void redirectOA(Map<String, String> paraMap);
}
package com.dianmi.service.impl;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import com.dianmi.dto.QueryWorkflowDetailDto;
import com.dianmi.dto.QueryWorkflowTypeDto;
import com.dianmi.service.IOpenOAService;
import com.dianmi.ws.ArrayOfString;
import com.dianmi.ws.ArrayOfWorkflowBaseInfo;
import com.dianmi.ws.WorkflowBaseInfo;
import com.dianmi.ws.WorkflowRequestInfo;
import com.dianmi.ws.WorkflowService;
import com.dianmi.ws.WorkflowServicePortType;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Service
public class OpenOAServiceImpl implements IOpenOAService,InitializingBean {
@Value("${oa.baseUrl}")
private String baseUrl;
@Value("${oa.appId}")
private String appId;
private String oaWsdlUrl;
private WorkflowServicePortType workflowServicePortType;
private RestTemplate restTemplate;
@Override
public List<WorkflowBaseInfo> getCreateWorkflowTypeList(QueryWorkflowTypeDto dto) {
String conditions = dto.getConditions();
String[] str = null;
if (StringUtils.isNotEmpty(conditions)) {
str = conditions.split(",");
}
ArrayOfString aos = new ArrayOfString();
if (ArrayUtils.isNotEmpty(str)) {
aos.getString().addAll(new ArrayList<String>(Arrays.asList(str)));
}
ArrayOfWorkflowBaseInfo bas = workflowServicePortType.getCreateWorkflowTypeList(dto.getPageNo(),
dto.getPageSize(),
dto.getRecordCount(), dto.getUserid(), aos);
return bas.getWorkflowBaseInfo();
}
@Override
public WorkflowRequestInfo getWorkflowRequest(QueryWorkflowDetailDto dto) {
return workflowServicePortType.getWorkflowRequest(dto.getRequestid(), dto.getUserid(), dto.getFromrequestid());
}
@Override
public void afterPropertiesSet() {
try {
oaWsdlUrl = baseUrl+"/services/WorkflowService?wsdl";
WorkflowService workflowService = new WorkflowService(new URL(oaWsdlUrl));
workflowServicePortType = workflowService.getWorkflowServiceHttpPort();
restTemplate = new RestTemplate();
} catch (MalformedURLException e) {
log.error("请求oa流程接口异常:{}",e.getMessage(),e);
}
}
@Override
public void redirectOA(Map<String, String> paraMap) {
}
}
......@@ -39,13 +39,13 @@ import javax.xml.bind.annotation.XmlType;
public class WorkflowBaseInfo {
@XmlElement(nillable = true)
protected String workflowId; //工作流ID
protected String workflowId;
@XmlElement(nillable = true)
protected String workflowName; //工作流标题
protected String workflowName;
@XmlElement(nillable = true)
protected String workflowTypeId; //工作流类型ID
protected String workflowTypeId;
@XmlElement(nillable = true)
protected String workflowTypeName; //工作流类型名称
protected String workflowTypeName;
/**
* 获取workflowId属性的值。
......
......@@ -105,7 +105,7 @@ public class WorkflowRequestInfo {
@XmlElement(nillable = true)
protected String currentNodeId;
@XmlElement(nillable = true)
protected String currentNodeName;//当前节点名称
protected String currentNodeName;
@XmlElement(nillable = true)
protected String forwardButtonName;
@XmlElement(nillable = true)
......@@ -115,7 +115,7 @@ public class WorkflowRequestInfo {
@XmlElement(nillable = true)
protected String lastOperatorName;
@XmlElement(nillable = true)
protected String messageType;//短信提醒
protected String messageType;
protected Boolean mustInputRemark;
protected Boolean needAffirmance;
@XmlElement(nillable = true)
......@@ -125,11 +125,11 @@ public class WorkflowRequestInfo {
@XmlElement(nillable = true)
protected String remark;
@XmlElement(nillable = true)
protected String requestId; //请求ID
protected String requestId;
@XmlElement(nillable = true)
protected String requestLevel;
@XmlElement(nillable = true)
protected String requestName; //请求标题
protected String requestName;
@XmlElement(nillable = true)
protected String secLevel;
@XmlElement(nillable = true)
......@@ -141,15 +141,15 @@ public class WorkflowRequestInfo {
@XmlElement(nillable = true)
protected String subnobackButtonName;
@XmlElement(nillable = true)
protected WorkflowBaseInfo workflowBaseInfo; //流程类型
protected WorkflowBaseInfo workflowBaseInfo;
@XmlElement(nillable = true)
protected ArrayOfWorkflowDetailTableInfo workflowDetailTableInfos; //明细表类
protected ArrayOfWorkflowDetailTableInfo workflowDetailTableInfos;
@XmlElement(nillable = true)
protected ArrayOfString workflowHtmlShow;
@XmlElement(nillable = true)
protected ArrayOfString workflowHtmlTemplete;
@XmlElement(nillable = true)
protected WorkflowMainTableInfo workflowMainTableInfo; //主表类
protected WorkflowMainTableInfo workflowMainTableInfo;
@XmlElement(nillable = true)
protected ArrayOfArrayOfString workflowPhrases;
@XmlElement(nillable = true)
......
......@@ -10,7 +10,7 @@ import javax.xml.ws.Service;
/**
* This class was generated by Apache CXF 3.3.9
* 2021-03-18T14:16:04.152+08:00
* 2021-03-23T14:30:20.449+08:00
* Generated source version: 3.3.9
*
*/
......
......@@ -10,7 +10,7 @@ import javax.xml.ws.ResponseWrapper;
/**
* This class was generated by Apache CXF 3.3.9
* 2021-03-18T14:16:04.114+08:00
* 2021-03-23T14:30:20.409+08:00
* Generated source version: 3.3.9
*
*/
......
This diff is collapsed.
package com.dianmi;
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
import com.dianmi.util.HttpManager;
import com.dianmi.util.IdentityVerifyUtil;
/**
* 流程退回实例
* description :
* author :JHY
* date : 2020/6/4
* version : 1.0
*/
public class RequestRejectDemo {
public static void main(String[] args) {
rejectRequest("3466560", "2979");
}
/**
* 流程退回
*/
public static void rejectRequest(String requestid, String userid) {
IdentityVerifyUtil identityVerifyUtil = IdentityVerifyUtil.getInstance();
String spk = identityVerifyUtil.getSPK();
String secret = identityVerifyUtil.getSECRET();
String token = identityVerifyUtil.getToken();
if (spk == null || secret == null || token == null) {
return;
}
Map<String, String> heads = IdentityVerifyUtil.getHttpHeads(token, userid, spk);
String url = IdentityVerifyUtil.HOST + "/api/workflow/paService/rejectRequest";
HttpManager http = new HttpManager();
Map<String, String> params = new HashMap<>();
params.put("requestId", requestid);
params.put("remark", "restful接口退回流程测试");
//默认是按出口退回
//自由退回参数设置
Map<String, String> otherParams = new HashMap<>();
otherParams.put("RejectToType", "0");
otherParams.put("RejectToNodeid", "3974");
params.put("otherParams", JSONObject.toJSONString(otherParams));
try {
String res = http.postDataSSL(url, params, heads);
System.out.println(res);
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.dianmi;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
import com.dianmi.entity.WorkflowDetailTableInfoEntity;
import com.dianmi.entity.WorkflowRequestTableField;
import com.dianmi.entity.WorkflowRequestTableRecord;
import com.dianmi.util.HttpManager;
import com.dianmi.util.IdentityVerifyUtil;
/**
* 流程提交实例
* description :
* author :JHY
* date : 2020/6/4
* version : 1.0
*/
public class RequestSubmitDemo {
public static void main(String[] args) {
RequestSubmitDemo submitDemo = new RequestSubmitDemo();
submitDemo.submitRequest("3467562", "2982");
}
public void submitRequest(String requestid, String userid) {
IdentityVerifyUtil identityVerifyUtil = IdentityVerifyUtil.getInstance();
String spk = identityVerifyUtil.getSPK();
String secret = identityVerifyUtil.getSECRET();
String token = identityVerifyUtil.getToken();
if (spk == null || secret == null || token == null) {
return;
}
Map<String, String> heads = IdentityVerifyUtil.getHttpHeads(token, userid, spk);
String url = IdentityVerifyUtil.HOST + "/api/workflow/paService/submitRequest";
HttpManager http = new HttpManager();
Map<String, String> params = new HashMap<>();
params.put("requestId", requestid);
params.put("detailData", getFormDetailData());
params.put("remark", "restful接口提交流程测试");
try {
String result = http.postDataSSL(url, params, heads);
System.out.println(result);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 流程提交明细数据处理
* 涉及到明细 数据删除、修改、新增
*
* @return
*/
private String getFormDetailData() {
List<WorkflowDetailTableInfoEntity> details = new ArrayList<>();
//明细信息
WorkflowDetailTableInfoEntity detail1 = new WorkflowDetailTableInfoEntity();
detail1.setTableDBName("formtable_main_1356_dt1");
//删除明细行ID
detail1.setDeleteKeys("344");
//明细数据
List<WorkflowRequestTableRecord> detailRows = new ArrayList<>();
WorkflowRequestTableRecord row1 = new WorkflowRequestTableRecord();
//明细行数据
List<WorkflowRequestTableField> row1Datas = new ArrayList<>();
//行字段数据
WorkflowRequestTableField row1field1 = new WorkflowRequestTableField();
row1field1.setFieldName("dhwb");
row1field1.setFieldValue("test02");
row1Datas.add(row1field1);
WorkflowRequestTableField row1field2 = new WorkflowRequestTableField();
row1field2.setFieldName("drl");
row1field2.setFieldValue("2978,2980,2981");
row1Datas.add(row1field2);
row1.setRecordOrder(0);
row1.setWorkflowRequestTableFields(row1Datas);
//明细行2
WorkflowRequestTableRecord row2 = new WorkflowRequestTableRecord();
List<WorkflowRequestTableField> row2Datas = new ArrayList<>();
//行字段数据
WorkflowRequestTableField row2field1 = new WorkflowRequestTableField();
row2field1.setFieldName("dhwb");
row2field1.setFieldValue("test01-update-338");
row2Datas.add(row2field1);
//行字段数据
WorkflowRequestTableField row2field2 = new WorkflowRequestTableField();
row2field2.setFieldName("drl");
row2field2.setFieldValue("2982,2983");
row2Datas.add(row2field2);
row2.setRecordOrder(338);
row2.setWorkflowRequestTableFields(row2Datas);
//明细行3
WorkflowRequestTableRecord row3 = new WorkflowRequestTableRecord();
List<WorkflowRequestTableField> row3Datas = new ArrayList<>();
//行字段数据
WorkflowRequestTableField row3field1 = new WorkflowRequestTableField();
row3field1.setFieldName("dhwb");
row3field1.setFieldValue("test01-update");
row3Datas.add(row3field1);
row3.setRecordOrder(348);
row3.setWorkflowRequestTableFields(row3Datas);
//明细行4
WorkflowRequestTableRecord row4 = new WorkflowRequestTableRecord();
List<WorkflowRequestTableField> row4Datas = new ArrayList<>();
//行字段数据
WorkflowRequestTableField row4field1 = new WorkflowRequestTableField();
row4field1.setFieldName("dhwb");
row4field1.setFieldValue("test01-update-339");
row4Datas.add(row4field1);
//行字段数据
WorkflowRequestTableField row4field2 = new WorkflowRequestTableField();
row4field2.setFieldName("xlk");
row4field2.setFieldValue("2");
row4Datas.add(row4field2);
row4.setRecordOrder(349);
row4.setWorkflowRequestTableFields(row4Datas);
detailRows.add(row2);
detailRows.add(row4);
detailRows.add(row3);
detailRows.add(row1);
detail1.setWorkflowRequestTableRecords(detailRows);
details.add(detail1);
return JSONObject.toJSONString(details);
}
}
package com.dianmi;
import java.net.MalformedURLException;
import java.net.URL;
import org.apache.commons.lang.builder.ToStringBuilder;
import com.alibaba.fastjson.JSONObject;
import com.dianmi.ws.ArrayOfString;
import com.dianmi.ws.WorkflowRequestInfo;
import com.dianmi.ws.WorkflowService;
public class WsTest {
public static void main(String[] args) {
try {
WorkflowService workflowService = new WorkflowService(new URL("http://120.132.8.136/services/WorkflowService?wsdl"));
//WorkflowRequestInfo wo = workflowService.getWorkflowServiceHttpPort().
// getWorkflowRequest(62067, 1, 0);
//System.out.println(JSONObject.toJSONString(wo));
ArrayOfString aos = new ArrayOfString();
//aos.getString().add("workflowId=45");
System.out.println(JSONObject.toJSONString(workflowService.getWorkflowServiceHttpPort()
.getCreateWorkflowList(1, 20, 100, 1, 23, aos)));
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.dianmi.entity;
import java.io.Serializable;
import java.util.List;
/**
* description :
* author :JHY
* date : 2020/5/13
* version : 1.0
*/
public class WorkflowDetailTableInfoEntity implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1328729781044551608L;
/**
* 明细表标题
*/
private String tableTitle;
/**
* 数据库明细表名
*/
private String tableDBName;
/**
* 明细表字段名称
*/
private String[] tableFieldName;
/**
* 删除数据ID
*/
private String deleteKeys;
/**
* 明细表列表
*/
private List<WorkflowRequestTableRecord> workflowRequestTableRecords;
public String getTableTitle() {
return tableTitle;
}
public void setTableTitle(String tableTitle) {
this.tableTitle = tableTitle;
}
public String getTableDBName() {
return tableDBName;
}
public void setTableDBName(String tableDBName) {
this.tableDBName = tableDBName;
}
public String[] getTableFieldName() {
return tableFieldName;
}
public void setTableFieldName(String[] tableFieldName) {
this.tableFieldName = tableFieldName;
}
public List<WorkflowRequestTableRecord> getWorkflowRequestTableRecords() {
return workflowRequestTableRecords;
}
public void setWorkflowRequestTableRecords(List<WorkflowRequestTableRecord> workflowRequestTableRecords) {
this.workflowRequestTableRecords = workflowRequestTableRecords;
}
public String getDeleteKeys() {
return deleteKeys;
}
public void setDeleteKeys(String deleteKeys) {
this.deleteKeys = deleteKeys;
}
}
package com.dianmi.entity;
import java.io.Serializable;
/**
* 工作流字段信息
*/
public class WorkflowRequestTableField implements Serializable {
/**
*
*/
private static final long serialVersionUID = -2865596549306206630L;
/**
* 字段ID
*/
private String fieldId;
/**
* 字段名称
*/
private String fieldName;
/**
* 字段值
*/
private String fieldValue;
/**
* 界面字段表现形式
*/
private String fieldHtmlType;
/**
* 界面字段类型
*/
private String fieldType;
/**
* 数据库字段类型
*/
private String fieldDBType;
/**
* 表单中提交的字段名
*/
private String fieldFormName;
/**
* 显示顺序
*/
private int fieldOrder;
/**
* 是否显示
*/
private boolean isView;
/**
* 是否可编辑
*/
private boolean isEdit;
/**
* 是否必填
*/
private boolean isMand;
/**
* 显示字段名称
*/
private String fieldShowName;
/**
* 浏览框字段URL
*/
private String browserurl;
/**
* 下拉框字段信息
*/
private String[] selectnames;
private String[] selectvalues;
/**
* 显示字段值
*/
private String fieldShowValue;
/**
* 字段html显示
*/
private String filedHtmlShow;
public String getFieldName() {
return fieldName;
}
public void setFieldName(String fieldName) {
this.fieldName = fieldName;
}
public String getFieldValue() {
return fieldValue;
}
public void setFieldValue(String fieldValue) {
this.fieldValue = fieldValue;
}
public String getFieldHtmlType() {
return fieldHtmlType;
}
public void setFieldHtmlType(String fieldHtmlType) {
this.fieldHtmlType = fieldHtmlType;
}
public String getFieldType() {
return fieldType;
}
public void setFieldType(String fieldType) {
this.fieldType = fieldType;
}
public String getFieldDBType() {
return fieldDBType;
}
public void setFieldDBType(String fieldDBType) {
this.fieldDBType = fieldDBType;
}
public String getFieldFormName() {
return fieldFormName;
}
public void setFieldFormName(String fieldFormName) {
this.fieldFormName = fieldFormName;
}
public int getFieldOrder() {
return fieldOrder;
}
public void setFieldOrder(int fieldOrder) {
this.fieldOrder = fieldOrder;
}
public boolean isView() {
return isView;
}
public void setView(boolean isView) {
this.isView = isView;
}
public boolean isEdit() {
return isEdit;
}
public void setEdit(boolean isEdit) {
this.isEdit = isEdit;
}
public boolean isMand() {
return isMand;
}
public void setMand(boolean isMand) {
this.isMand = isMand;
}
public String getFieldShowName() {
return fieldShowName;
}
public void setFieldShowName(String fieldShowName) {
this.fieldShowName = fieldShowName;
}
public String getFieldShowValue() {
return fieldShowValue;
}
public void setFieldShowValue(String fieldShowValue) {
this.fieldShowValue = fieldShowValue;
}
public String getBrowserurl() {
return browserurl;
}
public void setBrowserurl(String browserurl) {
this.browserurl = browserurl;
}
public String[] getSelectnames() {
return selectnames;
}
public void setSelectnames(String[] selectnames) {
this.selectnames = selectnames;
}
public String[] getSelectvalues() {
return selectvalues;
}
public void setSelectvalues(String[] selectvalues) {
this.selectvalues = selectvalues;
}
public String getFiledHtmlShow() {
return filedHtmlShow;
}
public void setFiledHtmlShow(String filedHtmlShow) {
this.filedHtmlShow = filedHtmlShow;
}
public String getFieldId() {
return fieldId;
}
public void setFieldId(String fieldId) {
this.fieldId = fieldId;
}
}
package com.dianmi.entity;
import java.io.Serializable;
import java.util.List;
public class WorkflowRequestTableRecord implements Serializable {
/**
*
*/
private static final long serialVersionUID = -202638298244870735L;
//修改时明细行ID,新增时赋0
private int recordOrder;
private List<WorkflowRequestTableField> workflowRequestTableFields;
public int getRecordOrder() {
return recordOrder;
}
public void setRecordOrder(int recordOrder) {
this.recordOrder = recordOrder;
}
public List<WorkflowRequestTableField> getWorkflowRequestTableFields() {
return workflowRequestTableFields;
}
public void setWorkflowRequestTableFields(List<WorkflowRequestTableField> workflowRequestTableFields) {
this.workflowRequestTableFields = workflowRequestTableFields;
}
}
This diff is collapsed.
package com.dianmi.util;
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import weaver.rsa.security.RSA;
/**
* description :
* author :JHY
* date : 2020/6/3
* version : 1.0
*/
public class IdentityVerifyUtil {
public static final String APPID = "EEAA5436-7577-4BE0-8C6C-89E9D88805EA";
public static final String HOST = "http://192.168.1.228:8090";
//系统公钥信息
private String SPK = null;
//秘钥信息
private String SECRET = null;
private static IdentityVerifyUtil instance;
public static synchronized IdentityVerifyUtil getInstance() {
if (instance == null) {
instance = new IdentityVerifyUtil();
instance.regist();
}
return instance;
}
private IdentityVerifyUtil() {
}
private void regist() {
//httpclient的使用请自己封装,可参考ECOLOGY中HttpManager类
HttpManager http = new HttpManager();
//请求头信息封装集合
Map<String, String> heads = new HashMap<String, String>();
//获取当前异构系统RSA加密的公钥
String cpk = RSA.getRSA_PUB();
//当前异构系统用于向ECOLOGY注册时使用的账号密码通过DES加密后密文进行传输
//kb1906及以上版本 已废弃账号密码校验
//封装参数到请求头
heads.put("appid", APPID);
heads.put("cpk", cpk);
//调用ECOLOGY系统接口进行注册
try {
String data = http.postDataSSL(HOST + "/api/ec/dev/auth/regist", new HashMap<>(), heads);
//返回的数据格式为json,具体格式参数格式请参考文末API介绍。
//注意此时如果注册成功会返回秘钥信息,请根据业务需要进行保存。
if (data != null) {
JSONObject result = JSON.parseObject(data);
if ("true".equals(result.getString("status"))) {
this.SPK = result.getString("spk");
this.SECRET = result.getString("secrit");
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public String getToken() {
//httpclient的使用请自己封装,可参考ECOLOGY中HttpManager类
HttpManager http = new HttpManager();
//请求头信息封装集合
Map<String, String> heads = new HashMap<String, String>();
RSA rsa = new RSA();
//对秘钥进行加密传输,防止篡改数据
String secret = rsa.encrypt(null, SECRET, null, "utf-8", SPK, false);
//封装参数到请求头
heads.put("appid", APPID);
heads.put("secret", secret);
//调用ECOLOGY系统接口进行申请
try {
String data = http.postDataSSL(HOST + "/api/ec/dev/auth/applytoken", new HashMap<>(), heads);
if (data != null) {
JSONObject res = JSON.parseObject(data);
if ("true".equals(res.getString("status"))) {
return res.getString("token");
}
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 获取请求头信息
* @param token
* @param userid
* @param spk
* @return
*/
public static Map<String, String> getHttpHeads(String token,String userid,String spk){
Map<String, String> heads = new HashMap<>();
heads.put("token", token);
heads.put("appid", IdentityVerifyUtil.APPID);
RSA rsa = new RSA();
String secretUserid = rsa.encrypt(null, userid, null, "utf-8", spk, false);
heads.put("userid", secretUserid);
return heads;
}
public String getSPK() {
return SPK;
}
public String getSECRET() {
return SECRET;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment