更多ruoyi-nbcio功能请看演示系统
gitee源代码地址
前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio
演示地址:RuoYi-Nbcio后台管理系统 http://122.227.135.243:9666/
更多nbcio-boot功能请看演示系统
gitee源代码地址
后端代码: https://gitee.com/nbacheng/nbcio-boot
前端代码:https://gitee.com/nbacheng/nbcio-vue.git
在线演示(包括H5) : http://122.227.135.243:9888
1、后端的处理
因为这个收回审批的提交跟原先的VForm表单提交不一样了,如下界面,这个是可以表单信息里进行修改了,修改后要能提交保存起来,因为原先肯定没有考虑这些
因为原先提交的时候保存起来,在变量里面,所以用下面的formConf.setFormData(variables);就可以了,但这个variables需求前端进行重新设置修改后的值。
- FormConf formConf = new FormConf();
- Map
formModel = JsonUtils.parseObject(formInfo.getContent(), Map.class); - if (null != formModel && !formModel.isEmpty()) {
- formConf.setTitle(title);
- formConf.setDisabled(true);
- formConf.setFormBtns(false);
- formConf.setFormModel(formModel);
- formConf.setFormData(variables);
- procFormList.add(formConf);
- }
2、前端的处理
判断是否是退回到第一个节点
- taskFormVisible.value = data.existTaskForm;
- if (taskFormVisible.value) {
- taskFormData.value = data.taskFormData;
- }
- if(data.startUserNode) {
- startUserForm.value.isStartUserNode = true;
- }
- formVisible.value = true;
- nextTick(() => {
- processFormList.value.forEach((item: any, index: any) => {
- if (item.disabled && !startUserForm.value.isStartUserNode) {
- vFormRenderRef.value[index].disableForm();
- }
- })
- })
是的话,不要disable了,可以进行编辑,
同时通过任务修改如下:
- /** 通过任务 */
- const handleComplete = () => {
- const isExistTaskForm = taskFormRef !== undefined;
- // 校验表单
- taskFormRef.value?.validate(async (valid: boolean) => {
- if (valid) {
- if (isExistTaskForm) {
- const data = await vFormRenderRef.value[0]?.getFormData();
- const Widgetlist = await vFormRenderRef.value[0]?.getFieldWidgets();
- //替换文件上传成功后的文件名称与url,以便后面回显用
- let fileUpload = Widgetlist?.filter(item => item.type === "file-upload");
- fileUpload?.forEach((fileitem) => {
- data[`${fileitem.name}`]?.forEach((dataitem,index) => {
- data[`${fileitem.name}`][index].name = data[`${fileitem.name}`][index].response.data?.newFileName;
- data[`${fileitem.name}`][index].url = data[`${fileitem.name}`][index].response.data?.url;
- })
-
- })
- //替换图片上传成功后的文件名称与url,以便后面回显用
- let picUpload = Widgetlist?.filter(item => item.type === "picture-upload");
- picUpload?.forEach((picitem) => {
- data[`${picitem.name}`]?.forEach((dataitem,index) => {
- data[`${picitem.name}`][index].name = data[`${picitem.name}`][index].response.data?.newFileName;
- data[`${picitem.name}`][index].url = data[`${picitem.name}`][index].response.data?.url;
- })
-
- })
- const variables = data;
- taskFormData.formValue = data;
- variables.variables = taskFormData;
- taskForm.variables = variables;
- }
- console.log("handleComplete taskForm",taskForm)
- const res = await complete(taskForm)
- proxy?.$modal.msgSuccess(res.msg);
- goBack();
- }
- });
- }
3、效果图如下: