获取后续需补人节点列表
web模式调用
//提取某流程图下所有需要补人的节点清单export const onSelectWorkNode = data => {let params = {curInfo: data,};return axios.post(`${gateWayRootUrl}Power.WorkFlows/Work/Send/SelectWorkNode`, qs.stringify(params) ).then(res => {return res;});};
//调用及返回参数:var data = {FormId: 表单的唯一id, M3下来自pb_widget.idKeyWord: 表单对应关键词KeyValue: 当前表单主键Params:{"Title":表单标题,"DocumentCode": 表单编号EpsProjId: 表单对应epsidEpsProjCode: 表单对应epscodeEpsProjName: 表单对应epsName}, //必选参数//流程所需的所有潜在变量,可选VarList:[{"FieldName":"field1",FieldValue:"字段值"},.....]}onSelectWorkNode(data).then(result => {if (!result || result.success == false) return;});
对应界面
无控制台模式调用
因为这个API需要连续对 流程引擎、组织架构引擎发请求,故不可能有控制台场景存在。
控制台因为没有request/response, 也无法发跨服务请求。
保存补充人员至实例中间表
web模式调用
//提取补充的人员,保存并切换到下个tab页export const onSaveUserToInstanNodes = function (data, callback) {let params = new FormData();params.append('jsonInfo', JSON.stringify(data));return axios.post(`${gateWayRootUrl}Power.WorkFlows/Work/Send/SaveUserToInstanNodes`, params ).then(res => {return res;});};
var data ={NodeList:[{"NodeCode":"节点编号",ConfigUserList:[{人员包1},{人员包2}...]]};//调用ajax获取数据onSaveUserToInstanNodes(data).then(result => {if (result && result.success == false) {that.$message.warning(result.message);return;}console.log(result.data.UserArea); //这个包可供后续界面渲染}
对应界面
控制台调用
private Power.WorkFlows.IService.Action.ISendService Service = null; //送审服务/// <summary>/// 保存补充人员/// </summary>private void SaveUserToInstanNodes(){TSession session = new TSession(){HumanId = "当前人humanid",HumanName = "当前人",//......};//json为传入包。存有某个节点需要补那些人信息。TSelectedUserToInstance selectUserToInstance = Newtonsoft.Json.JsonConvert.DeserializeObject<TSelectedUserToInstance>(jsonInfo);Service = Power.Core.Cache.ObjectFactory<ISendService>.Create("可选参数,为空构建默认服务");Service.SetCurSession(session); //也可以依据token获取当前人TSelectUserResult result = Service.SaveUserToInstanNodes((selectUserToInstance); //执行Console.WriteLine(result.SelectMode);// SelectMode==User则可以切换到选人提交界面了。}
