当前位置: 首页 > news >正文

如何做网站不被坑奇缦科技珠海网站建设优化

如何做网站不被坑,奇缦科技珠海网站建设优化,建站宝盒开通,台州网站制作维护到目前为止,虽然基础的formdesigner部分已经完成,但流程用formdesigner提交与审批过程中的显示还有问题。 1、后端部分 其中FormConf修改如下: package com.ruoyi.flowable.core;import lombok.Data;import java.util.List; import java.uti…

        到目前为止,虽然基础的formdesigner部分已经完成,但流程用formdesigner提交与审批过程中的显示还有问题。

         1、后端部分

         其中FormConf修改如下:

package com.ruoyi.flowable.core;import lombok.Data;import java.util.List;
import java.util.Map;/*** 表单属性类** @author KonBAI* @createTime 2022/8/6 18:54*/
@Data
public class FormConf {/*** 标题*/private String title;/*** 表单列表*/private List<Map<String, Object>> list;/*** 表单配置名*/private Map<String, Object> config;/*** 表单列表实际值*/private Map<String, Object> formValues;}

   获取流程历史信息修改如下:

/*** 获取历史流程表单信息*/private List<FormConf> processFormList(BpmnModel bpmnModel, HistoricProcessInstance historicProcIns) {List<FormConf> procFormList = new ArrayList<>();List<HistoricActivityInstance> activityInstanceList = historyService.createHistoricActivityInstanceQuery().processInstanceId(historicProcIns.getId()).finished().activityTypes(CollUtil.newHashSet(BpmnXMLConstants.ELEMENT_EVENT_START, BpmnXMLConstants.ELEMENT_TASK_USER)).orderByHistoricActivityInstanceStartTime().asc().list();List<String> processFormKeys = new ArrayList<>();for (HistoricActivityInstance activityInstance : activityInstanceList) {// 获取当前节点流程元素信息FlowElement flowElement = ModelUtils.getFlowElementById(bpmnModel, activityInstance.getActivityId());// 获取当前节点表单KeyString formKey = ModelUtils.getFormKey(flowElement);if (formKey == null) {continue;}boolean localScope = Convert.toBool(ModelUtils.getElementAttributeValue(flowElement, ProcessConstants.PROCESS_FORM_LOCAL_SCOPE), false);Map<String, Object> variables;if (localScope) {// 查询任务节点参数,并转换成Mapvariables = historyService.createHistoricVariableInstanceQuery().processInstanceId(historicProcIns.getId()).taskId(activityInstance.getTaskId()).list().stream().collect(Collectors.toMap(HistoricVariableInstance::getVariableName, HistoricVariableInstance::getValue));} else {if (processFormKeys.contains(formKey)) {continue;}variables = historicProcIns.getProcessVariables();processFormKeys.add(formKey);}  Map<String, Object> formvariables = new HashedMap<String, Object>();//遍历Mapif(variables.containsKey("variables")) {formvariables = (Map<String, Object>)((Map<String, Object>) variables.get("variables")).get("formValue");}// 非节点表单此处查询结果可能有多条,只获取第一条信息List<WfDeployFormVo> formInfoList = deployFormMapper.selectVoList(new LambdaQueryWrapper<WfDeployForm>().eq(WfDeployForm::getDeployId, historicProcIns.getDeploymentId()).eq(WfDeployForm::getFormKey, formKey).eq(localScope, WfDeployForm::getNodeKey, flowElement.getId()));//@update by Brath:避免空集合导致的NULL空指针WfDeployFormVo formInfo = formInfoList.stream().findFirst().orElse(null);if (ObjectUtil.isNotNull(formInfo)) {// 旧数据 formInfo.getFormName() 为 nullString formName = Optional.ofNullable(formInfo.getFormName()).orElse(StringUtils.EMPTY);String title = localScope ? formName.concat("(" + flowElement.getName() + ")") : formName;FormConf formConf = JsonUtils.parseObject(formInfo.getContent(), FormConf.class);if (null != formConf) {//ProcessFormUtils.fillFormData(formConf, variables);formConf.setTitle(title);formConf.setFormValues(formvariables);procFormList.add(formConf);}}}return procFormList;}

2、前端部分

 表单信息修改如下:

<el-tab-pane label="表单信息" name="form"><div v-if="formOpen"><!--<el-card class="box-card" shadow="never" v-for="(formInfo, index) in processFormList" :key="index"><div slot="header" class="clearfix"><span>{{ formInfo.title }}</span></div><el-col :span="20" :offset="2"><parser :form-conf="formInfo"/></el-col></el-card>--><el-card class="box-card" shadow="never" v-for="(formInfo, index) in formViewData" :key="index"><!--<div slot="header" class="clearfix"><span>{{ formInfo.title }}</span></div>--><!--流程处理表单模块--><el-col :span="20" :offset="2"><!-- <parser :form-conf="formInfo"/> --><form-viewer ref="formViewer" v-model="formVal[index]" :buildData="formInfo" /></el-col></el-card></div></el-tab-pane >

流程详细信息修改如下:

getProcessDetails(procInsId, taskId) {const params = {procInsId: procInsId, taskId: taskId}detailProcess(params).then(res => {console.log("detailProcess res=",res);const data = res.data;this.xmlData = data.bpmnXml;this.processFormList = data.processFormList;this.processFormList.forEach((item, index) => {this.formVal[index] = JSON.stringify(item.formValues);this.formViewData[index] = JSON.stringify(item);});this.taskFormOpen = data.existTaskForm;if (this.taskFormOpen) {this.taskFormData = data.taskFormData;}this.historyProcNodeList = data.historyProcNodeList;this.finishedInfo = data.flowViewer;this.formOpen = true})},

3、效果图如下:

http://www.yayakq.cn/news/284921/

相关文章:

  • 做宣传册从哪个网站找素材wordpress 电影下载站
  • 网站流量转化wordpress png 压缩
  • 计算机应用专业(网站开发)马鞍山网站建设
  • 为什么要建设公司网站如何在ftp做网站
  • rails 开发的网站开发php做简单网站教程
  • 深圳公司网站设计哪家好上海网站如何制作
  • 网站建设是什么部门高端织梦html5网站模板 dedecms网络公司模板
  • 建材网站做环保类型思路自动优化网站建设
  • 十大软件app排行榜下载南宁网站建设公司seo优化
  • 广告艺术设计主要学什么宁波seo公司
  • 福州执业建设中心网站河北网站建设方案详细
  • 杭州网站建设手机版福田官网
  • 国外购物网站推荐广东建泰建设有限公司网站
  • 金湖做网站wordpress文章目录修改
  • 网站名称 规则一级a做爰网站中国
  • 程序员接活的平台网站网站建设教育板块
  • 福建省建住房建设部网站做网站还需要兼容ie8吗
  • 做的网站每年都要收费吗南京模板建站
  • 网站开发公司经营范围网站建设1影响力公司
  • 大气企业网站织梦模板页面设计培训学校
  • 怎样做网站 app教程深圳创意设计网站
  • 威海住房和城乡建设局官方网站前端开发语言
  • 哪些网站国内打不开seo营销服务
  • 溧阳人才网 网站开发wordpress 数据 清理
  • seo网站优化论文免费建站的
  • id中怎么链接wordpress求职seo
  • 网站更新中如何申请网站域名
  • 襄阳网站建设首选公司哪家好购买云服务器
  • 网站新站南京企业自助建站系统
  • 网站建设后台实训体会网站建设公司新闻