汉桑项目开发

master
Mlin 2 years ago
commit 826dee8121

@ -0,0 +1,27 @@
package com.api.cs.test.service.impl;
import com.weaverboot.frame.ioc.anno.classAnno.WeaIocReplaceComponent;
import com.weaverboot.frame.ioc.anno.methodAnno.WeaReplaceAfter;
import com.weaverboot.frame.ioc.anno.methodAnno.WeaReplaceBefore;
import com.weaverboot.frame.ioc.handler.replace.weaReplaceParam.impl.WeaAfterReplaceParam;
import com.weaverboot.frame.ioc.handler.replace.weaReplaceParam.impl.WeaBeforeReplaceParam;
import com.weaverboot.tools.logTools.LogTools;
@WeaIocReplaceComponent
public class Test {
// @WeaReplaceBefore(value = "/api/workflow/reqlist/splitPageKey",order = 1,description = "测试拦截前置")
// public void beforeTest(WeaBeforeReplaceParam weaBeforeReplaceParam){
// //一顿操作
// LogTools.info("before:/api/workflow/reqlist/splitPageKey");
// }
// @WeaReplaceAfter(value = "/api/workflow/reqlist/splitPageKey",order = 1,description = "测试拦截后置")
// public String after(WeaAfterReplaceParam weaAfterReplaceParam){
// String data = weaAfterReplaceParam.getData();//这个就是接口执行完的报文
// LogTools.info("after:/api/workflow/reqlist/splitPageKey");
//// LogTools.info(data);
// return data;
// }
}

@ -0,0 +1,18 @@
package com.api.hs.service.impl;
import com.weaverboot.frame.ioc.anno.classAnno.WeaIocReplaceComponent;
import com.weaverboot.frame.ioc.anno.methodAnno.WeaReplaceAfter;
import com.weaverboot.frame.ioc.handler.replace.weaReplaceParam.impl.WeaAfterReplaceParam;
@WeaIocReplaceComponent("saveDeptService") //如不标注名称,则按类的全路径注入
public class SaveDeptServiceImpl {
@WeaReplaceAfter(value = "/api/.....",order = 1)
public String after(WeaAfterReplaceParam weaAfterReplaceParam){
String data = weaAfterReplaceParam.getData();//这个就是接口执行完的报文
// data = "修改后的报文";
return data;
}
}

@ -0,0 +1,113 @@
package weaver.interfaces.hs.action;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.interfaces.workflow.action.Action;
import weaver.soa.workflow.request.Cell;
import weaver.soa.workflow.request.DetailTable;
import weaver.soa.workflow.request.Property;
import weaver.soa.workflow.request.RequestInfo;
import weaver.soa.workflow.request.Row;
import weaver.workflow.request.RequestManager;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
/**
* <Description> <br>
* @author ml <br>
* @version 1.0 <br>
* @createDate 2023/2/9 <br>
* @see weaver.interfaces.hs.action <br>
*/
public class DevWorkflowAction implements Action {
/**
*
*/
public String defaultParam;
@Override
public String execute(RequestInfo requestInfo) {
RequestManager requestManager = requestInfo.getRequestManager();
HttpServletRequest request = requestManager.getRequest();
String requestId = requestInfo.getRequestid();//请求ID
String reqId = Util.null2String(request.getParameter("requestid"));//请求ID
String requestLevel = requestInfo.getRequestlevel();//请求紧急程度
//当前操作类型 submit:提交/reject:退回
String src = requestManager.getSrc();
String workflowId = requestInfo.getWorkflowid();//流程ID
String tableName = requestManager.getBillTableName();//表单名称
int billId = requestManager.getBillid();//表单数据ID
User usr = requestManager.getUser();//获取当前操作用户对象
String requestName = requestManager.getRequestname();//请求标题
String remark = requestManager.getRemark();//当前用户提交时的签字意见
int formId = requestManager.getFormid();//表单ID
int isBill = requestManager.getIsbill();//是否是自定义表单
RecordSet rs = new RecordSet();
String sql = "lastname";
List<String> flowFields_main = Arrays.asList("xm","xb");
List<String> flowFields_define = Arrays.asList("xmyw","rzgs");
String lastname;
String sex;
String certificatenum;
String residentplace;
//取主表数据
Property[] properties = requestInfo.getMainTableInfo().getProperty();// 获取表单主字段信息
for (Property property : properties) {
String name = property.getName();// 主字段名称
String value = Util.null2String(property.getValue());// 主字段对应的值
if (name.equals("xm")) {
lastname = value;
} else if (name.equals("xb")) {
sex = value;
} else if (name.equals("zjhm")) {
certificatenum = value;
} else if (name.equals("xlxdz")) {
residentplace = value;
}
}
// for ()
// Property property = Arrays.stream(properties).filter(pr)
//取明细数据
DetailTable[] detailTable = requestInfo.getDetailTableInfo().getDetailTable();// 获取所有明细表
if (detailTable.length > 0) {
// 指定明细表
for (DetailTable dt : detailTable) {
Row[] s = dt.getRow();// 当前明细表的所有数据,按行存储
// 指定行
for (Row r : s) {
Cell[] c = r.getCell();// 每行数据再按列存储
// 指定列
for (Cell c1 : c) {
String name = c1.getName();// 明细字段名称
String value = c1.getValue();// 明细字段的值
}
}
}
}
//控制流程流转,增加以下两行,流程不会向下流转,表单上显示返回的自定义错误信息
requestManager.setMessagecontent("返回自定义的错误信息");
requestManager.setMessageid("错误信息编号");
// return返回固定返回`SUCCESS`,
// 当return `FAILURE_AND_CONTINUE`时,表单上会提示附加操作失败
return SUCCESS;
}
public String getDefaultParam() {
return defaultParam;
}
public void setDefaultParam(String defaultParam) {
this.defaultParam = defaultParam;
}
}
Loading…
Cancel
Save