Browse Source

2024年8月第一周BUG修改完毕

qin_v3
超级管理员 1 year ago
parent
commit
4c355ec912
  1. 2
      src/api/date/type.ts
  2. 12
      src/components/DesignForm/app/index.vue
  3. 4
      src/components/DesignForm/assembly/index.ts
  4. 32
      src/components/DesignForm/formControlPropertiNew.vue
  5. 2
      src/components/DesignForm/public/form/formItem.vue
  6. 10
      src/components/DesignForm/tableListPage/formPageCont.vue
  7. 29
      src/components/DesignForm/tableListPage/index.vue
  8. 104
      src/components/workflow/drwer/approverDrawer.vue
  9. 4
      src/components/workflow/nodeWrap.vue
  10. 2
      src/components/workflow/selectBoxs.vue
  11. 2
      src/store/workflow/index.js
  12. 2
      src/utils/workflow/index.ts
  13. 2
      src/views/sysworkflow/flow/flowDrawingBoard.vue
  14. 2
      src/views/sysworkflow/flow/flowcanvas.vue
  15. 10
      src/views/sysworkflow/lowcodepage/appCardPage.vue
  16. 3
      src/views/sysworkflow/lowcodepage/appFormList.vue
  17. 10
      src/views/sysworkflow/lowcodepage/appListPage.vue
  18. 5
      src/views/sysworkflow/lowcodepage/appPage/appMenus.vue
  19. 2
      src/views/sysworkflow/lowcodepage/appPage/appPageForm/appFlow/appFlowSee.vue
  20. 5
      src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageFlow.vue
  21. 45
      src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageForm.vue
  22. 47
      src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageList.vue
  23. 7
      src/views/sysworkflow/lowcodepage/index.vue
  24. 132
      src/views/sysworkflow/lowcodepage/pageList.vue
  25. 2
      src/views/sysworkflow/lowcodepage/workFlow.vue
  26. 8
      src/widget/systemunit/deptOrgPage.vue
  27. 6
      src/widget/systemunit/ownerPage.vue

2
src/api/date/type.ts

@ -277,7 +277,7 @@ export interface appNodeConfig{
sendBackNode: string; sendBackNode: string;
settype: number; settype: number;
type: number; type: number;
orgList: string; orgList: number[];
} }
//app工作流附件 //app工作流附件
export interface appMatrix{ export interface appMatrix{

12
src/components/DesignForm/app/index.vue

@ -261,7 +261,7 @@ const selectionChange = (row: any) => {
@ 功能: 获取表格头内容 @ 功能: 获取表格头内容
*/ */
const columnsFilter = computed(() => { const columnsFilter = computed(() => {
// console.log("props.data",props.data)
if (!state.columnsCheck?.length) { if (!state.columnsCheck?.length) {
// console.log("props.data",props.data) // console.log("props.data",props.data)
return props.data.columns return props.data.columns
@ -271,7 +271,8 @@ const columnsFilter = computed(() => {
return state.columnsCheck.includes(item.prop || item.type) return state.columnsCheck.includes(item.prop || item.type)
}) })
} }
}) console.log("获取表格头内容",props.data.columns)
})
/** /**
@ 作者: 秦东 @ 作者: 秦东
@ 时间: 2024-04-01 14:14:36 @ 时间: 2024-04-01 14:14:36
@ -628,6 +629,8 @@ const judjeRadio = (val: any, options: any[]) => {
@ 功能: 判断开关类型 @ 功能: 判断开关类型
*/ */
const judjeSwitch = (val:any,yesVal:any) => { const judjeSwitch = (val:any,yesVal:any) => {
// console.log("-1-->",val)
// console.log("-2-->",yesVal)
if(val == yesVal) return true; if(val == yesVal) return true;
return false; return false;
} }
@ -1138,6 +1141,10 @@ const transformOption = (val: string | number, type?: string) => {
{{ scope.column.label }} {{ scope.column.label }}
<tooltip :content="item.help" /> <tooltip :content="item.help" />
</template> </template>
<template v-if="item.fieldClass=='deptOrg'" #default="scope">
<!-- {{scope.row[scope.column.property]}}{{item}} -->
{{ scope.row[scope.column.property] }}
</template>
<template v-if="item.fieldClass=='radio'" #default="scope"> <template v-if="item.fieldClass=='radio'" #default="scope">
<!-- {{scope.row[scope.column.property]}}{{item}} --> <!-- {{scope.row[scope.column.property]}}{{item}} -->
{{ judjeRadio(scope.row[scope.column.property],item.options) }} {{ judjeRadio(scope.row[scope.column.property],item.options) }}
@ -1157,7 +1164,6 @@ const transformOption = (val: string | number, type?: string) => {
</div> </div>
</template> </template>
<template v-if="item.fieldClass=='switch'" #default="scope"> <template v-if="item.fieldClass=='switch'" #default="scope">
<el-tag <el-tag
v-if="judjeSwitch(scope.row[scope.column.property],item.activeValue)" v-if="judjeSwitch(scope.row[scope.column.property],item.activeValue)"
type="success" type="success"

4
src/components/DesignForm/assembly/index.ts

@ -304,7 +304,9 @@ export default [
offValue: "", offValue: "",
showFields: [] showFields: []
}, },
] ],
activeValue:"1",
inactiveValue:"2"
}, },
config: {}, config: {},
styles: { styles: {

32
src/components/DesignForm/formControlPropertiNew.vue

@ -439,22 +439,22 @@ const attrList = computed(() => {
path: 'config.append', path: 'config.append',
vShow: ['input', 'password'] vShow: ['input', 'password']
}, },
{ // {
label: '状态打开时的值', // label: '',
value: control.activeValue, // value: control.activeValue,
placeholder: '状态打开时的值', // placeholder: '',
path: 'control.activeValue', // path: 'control.activeValue',
vShow: ['switch'], // vShow: ['switch'],
isNum: true // isNum: true
}, // },
{ // {
label: '状态关闭时的值', // label: '',
value: control.inactiveValue, // value: control.inactiveValue,
placeholder: '状态关闭时的值', // placeholder: '',
path: 'control.inactiveValue', // path: 'control.inactiveValue',
vShow: ['switch'], // vShow: ['switch'],
isNum: true // isNum: true
}, // },
// { // {
// label: '', // label: '',
// value: config.transform, // value: config.transform,

2
src/components/DesignForm/public/form/formItem.vue

@ -824,7 +824,7 @@ const selectValue = (val:any,list:any) => {
@ 功能: 选择用户 @ 功能: 选择用户
*/ */
const pickUserVal = (val:any) => { const pickUserVal = (val:any) => {
console.log("选择用户-2->",val) // console.log("-2->",val)
if(Array.isArray(val)){ if(Array.isArray(val)){
return val return val
}else{ }else{

10
src/components/DesignForm/tableListPage/formPageCont.vue

@ -352,7 +352,6 @@ const jsuanKuandu = () => {
</template> </template>
<div v-if="mastItem.types=='lowcodeImage'"> <div v-if="mastItem.types=='lowcodeImage'">
<el-image style="width: 100px; height: 100px" :src="mastItem.value" fit="cover" /> <el-image style="width: 100px; height: 100px" :src="mastItem.value" fit="cover" />
</div> </div>
@ -369,6 +368,15 @@ const jsuanKuandu = () => {
<div v-else-if="mastItem.types=='colorPicker'"> <div v-else-if="mastItem.types=='colorPicker'">
<div :style="'width: 30px; height: 30px; background-color: '+mastItem.value" ></div> <div :style="'width: 30px; height: 30px; background-color: '+mastItem.value" ></div>
</div> </div>
<div v-else-if="mastItem.types=='switch'">
<el-switch
v-model="mastItem.value"
class="ml-2"
:active-value="1"
:inactive-value="2"
disabled
/>
</div>
<div v-else-if="mastItem.types=='rate'"> <div v-else-if="mastItem.types=='rate'">
<el-rate v-model="mastItem.value" disabled /> <el-rate v-model="mastItem.value" disabled />
</div> </div>

29
src/components/DesignForm/tableListPage/index.vue

@ -254,7 +254,7 @@ const selectionChange = (row: any) => {
@ 功能: 获取表格头内容 @ 功能: 获取表格头内容
*/ */
const columnsFilter = computed(() => { const columnsFilter = computed(() => {
console.log("获取表格头内容",props.data.columns)
if (!state.columnsCheck?.length) { if (!state.columnsCheck?.length) {
return props.data.columns return props.data.columns
} else { } else {
@ -262,6 +262,7 @@ const columnsFilter = computed(() => {
return state.columnsCheck.includes(item.prop || item.type) return state.columnsCheck.includes(item.prop || item.type)
}) })
} }
}) })
/** /**
@ 作者: 秦东 @ 作者: 秦东
@ -1126,6 +1127,30 @@ const transformOption = (val: string | number, type?: string) => {
{{ scope.column.label }} {{ scope.column.label }}
<tooltip :content="item.help" /> <tooltip :content="item.help" />
</template> </template>
<template v-if="item.fieldClass=='select'" #default="scope">
{{ scope.row[scope.column.property] }}
</template>
<template v-if="item.fieldClass==''" #default="scope">
<!-- {{scope.row[scope.column.property]}}{{item}} -->
<el-tag v-if="scope.row[scope.column.property]==1" type="success">启用</el-tag>
<el-tag v-if="scope.row[scope.column.property]==2" type="danger">已禁用</el-tag>
<el-tag v-if="scope.row[scope.column.property]==3" type="info">已删除</el-tag>
</template>
<template v-if="item.fieldClass=='deptOrg'" #default="scope">
<!-- {{scope.row[scope.column.property]}}{{item}} -->
{{ scope.row[scope.column.property] }}
</template>
<template v-if="item.fieldClass=='owner'" #default="scope">
<!-- {{scope.row[scope.column.property]}}{{item}}拥有者 -->
{{ scope.row[scope.column.property] }}
</template>
<template v-if="item.fieldClass=='lowcodeImage'" #default="scope">
<el-image style="width: 30px; height: 30px" :src="scope.row[scope.column.property]" :fit="fit" />
</template>
<template v-if="item.fieldClass=='expand-user'" #default="scope">
{{ scope.row[scope.column.property] }} <!--选择用户-->
</template>
<template v-if="item.fieldClass=='radio'" #default="scope"> <template v-if="item.fieldClass=='radio'" #default="scope">
<!-- {{scope.row[scope.column.property]}}{{item}} --> <!-- {{scope.row[scope.column.property]}}{{item}} -->
{{ judjeRadio(scope.row[scope.column.property],item.options) }} {{ judjeRadio(scope.row[scope.column.property],item.options) }}
@ -1133,7 +1158,7 @@ const transformOption = (val: string | number, type?: string) => {
<template v-if="item.fieldClass=='upload'" #default="scope" > <template v-if="item.fieldClass=='upload'" #default="scope" >
<div class="demo-image__error"> <div class="demo-image__error">
<el-image <el-image
style="width: 50px; height: 50px" style="width: 30px; height: 30px"
:src="scope.row[scope.column.property]" :src="scope.row[scope.column.property]"
> >
<template #error> <template #error>

104
src/components/workflow/drwer/approverDrawer.vue

@ -115,7 +115,7 @@ const matrixIsShow = ref(false)
watch(approverConfig1, (val:any)=>{ watch(approverConfig1, (val:any)=>{
val.value.attribute = val.value.attribute*1 val.value.attribute = val.value.attribute*1
// console.log("directormaxlevel",val.value) console.log("directormaxlevel",val.value,val.type)
matrixIsShow.value = false matrixIsShow.value = false
approverConfig.value = val.value approverConfig.value = val.value
if(val.type == 3){ if(val.type == 3){
@ -131,7 +131,19 @@ watch(approverConfig1, (val:any)=>{
}else{ }else{
nodeTitle.value = "审批人设置" nodeTitle.value = "审批人设置"
} }
// if(val.settype == 10){
// let sendOrg = {
// id: 313,
// idstr: "313",
// level: 4,
// all: 1
// }
// govthree(sendOrg)
// .then(({data})=>{
// console.log("",data)
// orgList.value = data
// })
// }
} }
isExecutor.value = false isExecutor.value = false
// approverConfig.attribute = approverConfig.attribute*1 // approverConfig.attribute = approverConfig.attribute*1
@ -397,7 +409,7 @@ const oneEditSet = (val: any) => {
// //
watch(()=>approverConfig.value.settype,(val:any)=>{ watch(()=>approverConfig.value.settype,(val:any)=>{
console.log("监听审批人设置选项",approverConfig.value) // console.log("",approverConfig.value)
switch (val) { switch (val) {
case 10: case 10:
let sendOrg = { let sendOrg = {
@ -408,8 +420,11 @@ watch(()=>approverConfig.value.settype,(val:any)=>{
} }
govthree(sendOrg) govthree(sendOrg)
.then(({data})=>{ .then(({data})=>{
console.log("监听审批人设置选项",data) // console.log("",data)
orgList.value = data orgList.value = data
nextTick(()=>{
setOrgTree(approverConfig.value.orgList)
})
}) })
break; break;
@ -424,9 +439,73 @@ watch(()=>approverConfig.value.settype,(val:any)=>{
@ 时间: 2024-08-08 15:54:07 @ 时间: 2024-08-08 15:54:07
@ 功能: 选中的哪个行政组织 @ 功能: 选中的哪个行政组织
*/ */
const handleNodeClickOrg = (val:any) => { const handleNodeClickOrg = (data: any,threePickAry: any) => {
console.log(val) console.log("选中的哪个行政组织----data------->",data)
console.log("选中的哪个行政组织----checked------->",threePickAry)
console.log("选中的哪个行政组织----halfCheckedKeys------->",threePickAry.halfCheckedKeys)
console.log("选中的哪个行政组织----checkedKeys------->",threePickAry.checkedKeys)
if(threePickAry.halfCheckedKeys && Array.isArray(threePickAry.halfCheckedKeys) && threePickAry.halfCheckedKeys.length > 0){
if(threePickAry.checkedKeys && Array.isArray(threePickAry.checkedKeys) && threePickAry.checkedKeys.length > 0){
approverConfig.value.orgList=threePickAry.checkedKeys
console.log("选中的哪个行政组织----1------->",approverConfig.value.orgList)
}else{
approverConfig.value.orgList=[]
console.log("选中的哪个行政组织----2------->",approverConfig.value.orgList)
}
}else{
if(threePickAry.checkedKeys && Array.isArray(threePickAry.checkedKeys) && threePickAry.checkedKeys.length > 0){
if(data.level <=3){
threePickAry.checkedKeys = threePickAry.checkedKeys.filter(item => item !== data.id);
}
approverConfig.value.orgList=threePickAry.checkedKeys
console.log("选中的哪个行政组织----3------->",approverConfig.value.orgList)
}else{
approverConfig.value.orgList=[]
console.log("选中的哪个行政组织----4------->",approverConfig.value.orgList)
}
}
// if(approverConfig.value.orgList && Array.isArray(approverConfig.value.orgList)){
// if(threePickAry.halfCheckedKeys && Array.isArray(threePickAry.halfCheckedKeys) && threePickAry.halfCheckedKeys.length > 0){
// }else{
// if(threePickAry.checkedKeys && Array.isArray(threePickAry.checkedKeys) && threePickAry.checkedKeys.length > 0){
// threePickAry.checkedKeys = threePickAry.checkedKeys.filter(item => item !== data.id);
// approverConfig.value.orgList=threePickAry.checkedKeys
// }
// }
// if(checked){
// if(!approverConfig.value.orgList.includes(data.id)){
// approverConfig.value.orgList.push(data.id)
// }
// }else{
// console.log("----1------->",Array.isArray(approverConfig.value.orgList),approverConfig.value.orgList.length > 0)
// if(Array.isArray(approverConfig.value.orgList) && approverConfig.value.orgList.length > 0){
// approverConfig.value.orgList = approverConfig.value.orgList.filter(item => item !== data.id);
// }
// }
// }else{
// if(threePickAry.halfCheckedKeys && Array.isArray(threePickAry.halfCheckedKeys) && threePickAry.halfCheckedKeys.length > 0){
// approverConfig.value.orgList=threePickAry.checkedKeys
// }else{
// if(threePickAry.checkedKeys && Array.isArray(threePickAry.checkedKeys) && threePickAry.checkedKeys.length > 0){
// threePickAry.checkedKeys = threePickAry.checkedKeys.filter(item => item !== data.id);
// approverConfig.value.orgList=threePickAry.checkedKeys
// }
// }
// }
console.log("选中的哪个行政组织----approverConfig.value.orgList------->",approverConfig.value.orgList)
} }
// watch(()=>approverConfig.value.orgList,(val:any)=>{
// setOrgTree(val)
// },{
// deep:true
// })
/** /**
@ 作者: 秦东 @ 作者: 秦东
@ 时间: 2024-08-08 16:07:49 @ 时间: 2024-08-08 16:07:49
@ -434,7 +513,12 @@ const handleNodeClickOrg = (val:any) => {
*/ */
const setOrgTree = (val:any) => { const setOrgTree = (val:any) => {
console.log("设置选项",val) console.log("设置选项",val)
flowOrgTree.value!.setCheckedKeys([val], true) if(Array.isArray(val)){
flowOrgTree.value!.setCheckedKeys(val, true)
}else{
flowOrgTree.value!.setCheckedKeys([val], true)
}
} }
</script> </script>
<template> <template>
@ -589,12 +673,12 @@ const setOrgTree = (val:any) => {
:props="orgProps" :props="orgProps"
:height="300" :height="300"
node-key="id" node-key="id"
:check-strictly="true" show-checkbox
:check-strictly="false"
:highlight-current="true" :highlight-current="true"
:expand-on-click-node="false" :expand-on-click-node="false"
:check-on-click-node="true" :check-on-click-node="true"
:default-checked-keys="defaultCheckedKeys" @check="handleNodeClickOrg"
@node-click="handleNodeClickOrg"
/> />
</div> </div>
<MatrixPage <MatrixPage

4
src/components/workflow/nodeWrap.vue

@ -44,12 +44,12 @@ let defaultText = computed(() => {
return placeholderList[props.nodeConfig.type]; return placeholderList[props.nodeConfig.type];
}); });
let showText = computed(() => { let showText = computed(() => {
// console.log("props.nodeConfig.type===>",props.nodeConfig); // console.log("props.nodeConfig.type===>",props.nodeConfig,props.nodeConfig.type);
if (props.nodeConfig.type == 0) if (props.nodeConfig.type == 0)
return $func.arrToStr(props.flowPermission) || "所有人"; return $func.arrToStr(props.flowPermission) || "所有人";
if (props.nodeConfig.type == 1) return $func.setApproverStr(props.nodeConfig); if (props.nodeConfig.type == 1) return $func.setApproverStr(props.nodeConfig);
if (props.nodeConfig.type == 3) return $func.setApproverStr(props.nodeConfig); if (props.nodeConfig.type == 3) return $func.setApproverStr(props.nodeConfig);
// console.log("props.nodeConfig.type",props.nodeConfig.type); // console.log("props.nodeConfig.type",props.nodeConfig);
return $func.copyerStr(props.nodeConfig); return $func.copyerStr(props.nodeConfig);
}); });
let isInputList = ref([]); let isInputList = ref([]);

2
src/components/workflow/selectBoxs.vue

@ -48,7 +48,7 @@ defineProps({
<span></span><img v-if="item.icon != ''" :src="item.icon"> <span></span><img v-if="item.icon != ''" :src="item.icon">
<img v-if="item.icon == '' && item.iconToBase64 != ''" :src="item.iconToBase64"> <img v-if="item.icon == '' && item.iconToBase64 != ''" :src="item.iconToBase64">
<img v-if="item.icon == '' && item.iconToBase64 == ''" src="@/assets/images/icon_people.png"> <img v-if="item.icon == '' && item.iconToBase64 == ''" src="@/assets/images/icon_people.png">
{{item.employeeName}} {{item.employeeName}}(No.{{item.number}} AD:{{item.departmentname}})
</a> </a>
</div> </div>
</li> </li>

2
src/store/workflow/index.js

@ -1,5 +1,5 @@
/** /**
* 缓存工作流节点内容 * 缓存工作流节点内容
*/ */
import { defineStore } from 'pinia'; import { defineStore } from 'pinia';
export const useStore = defineStore('store', { export const useStore = defineStore('store', {

2
src/utils/workflow/index.ts

@ -137,7 +137,7 @@ All.prototype = {
} }
} }
}else if (nodeConfig.settype == 9){ }else if (nodeConfig.settype == 10){
return "指定部门负责人" return "指定部门负责人"
} }
}, },

2
src/views/sysworkflow/flow/flowDrawingBoard.vue

@ -450,7 +450,7 @@ const clickOpenOrClose = () => {
<nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" /> <nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" />
<div class="end-node"> <div class="end-node">
<div class="end-node-circle"></div> <div class="end-node-circle"></div>
<div class="end-node-text">流程结束</div> <div class="end-node-text">4</div>
</div> </div>
</div> </div>
</section> </section>

2
src/views/sysworkflow/flow/flowcanvas.vue

@ -114,7 +114,7 @@ const zoomSize = (type:number) => {
<nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" /> <nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" />
<div class="end-node"> <div class="end-node">
<div class="end-node-circle"></div> <div class="end-node-circle"></div>
<div class="end-node-text">流程结束</div> <div class="end-node-text">流程结束1</div>
</div> </div>
</div> </div>
</section> </section>

10
src/views/sysworkflow/lowcodepage/appCardPage.vue

@ -353,6 +353,16 @@ const refreshPage = (pageType:string) =>{
addFormIsShow.value = false; addFormIsShow.value = false;
getFormAppList(props.searchQuery); getFormAppList(props.searchQuery);
} }
/**
@ 作者: 秦东
@ 时间: 2024-08-09 11:28:39
@ 功能: 翻页
*/
const handleCurrentChange = (val:any) =>{
// console.log("",val)
props.searchQuery.page = val
getFormAppList(props.searchQuery);
}
</script> </script>
<template> <template>
<div> <div>

3
src/views/sysworkflow/lowcodepage/appFormList.vue

@ -340,7 +340,8 @@ const editAppCont = (val:string) => {
@ 时间: 2024-04-24 10:44:42 @ 时间: 2024-04-24 10:44:42
@ 功能: 翻页 @ 功能: 翻页
*/ */
const fanyePage = (val: number) =>{ const fanyePage = (val: any) =>{
console.log("翻页",val)
pageApp.value = val pageApp.value = val
getFormAppList() getFormAppList()
} }

10
src/views/sysworkflow/lowcodepage/appListPage.vue

@ -345,6 +345,16 @@ const setOften = (val:any) => {
defineExpose({ defineExpose({
getFormAppList getFormAppList
}) })
/**
@ 作者: 秦东
@ 时间: 2024-08-09 11:28:39
@ 功能: 翻页
*/
const handleCurrentChange = (val:any) =>{
// console.log("",val)
props.searchQuery.page = val
getFormAppList(props.searchQuery);
}
</script> </script>
<template> <template>
<div class="listBody"> <div class="listBody">

5
src/views/sysworkflow/lowcodepage/appPage/appMenus.vue

@ -319,9 +319,10 @@ const openAppPage = (val:any) =>{
<div class="appMenuTitle"> <div class="appMenuTitle">
<el-space wrap> <el-space wrap>
<svg-icon prefix="icon" :icon-class="data.svg" @click="setAppMenusSvg(data)" /> <svg-icon prefix="icon" :icon-class="data.svg" @click="setAppMenusSvg(data)" />
<el-tooltip :content="node.label" placement="top" effect="dark"> <!-- <el-tooltip :content="node.label" placement="top" effect="dark">
<el-text class="w-120px mb-2" truncated @click="openAppPage(data)">{{node.label}}</el-text> <el-text class="w-120px mb-2" truncated @click="openAppPage(data)">{{node.label}}</el-text>
</el-tooltip> </el-tooltip> -->
<el-text class="w-120px mb-2" truncated @click="openAppPage(data)">{{node.label}}</el-text>
</el-space> </el-space>
<el-dropdown> <el-dropdown>
<svg-icon class="svgBox" prefix="icon" icon-class="set" /> <svg-icon class="svgBox" prefix="icon" icon-class="set" />

2
src/views/sysworkflow/lowcodepage/appPage/appPageForm/appFlow/appFlowSee.vue

@ -43,7 +43,7 @@ const zoomSize = (type:number) => {
<nodeWrap v-model:nodeConfig="props.appFlowInfo.nodeConfig" v-model:flowPermission="props.appFlowInfo.flowPermission" /> <nodeWrap v-model:nodeConfig="props.appFlowInfo.nodeConfig" v-model:flowPermission="props.appFlowInfo.flowPermission" />
<div class="end-node"> <div class="end-node">
<div class="end-node-circle"></div> <div class="end-node-circle"></div>
<div class="end-node-text">流程结束</div> <div class="end-node-text">流程结束3</div>
</div> </div>
</div> </div>
</section> </section>

5
src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageFlow.vue

@ -167,6 +167,7 @@ const getFlowVerList = ()=>{
} }
} }
// console.log("---4-->",isRead.value);
// console.log("---1-->",activeTabs.value); // console.log("---1-->",activeTabs.value);
// console.log("---2-->",enableFlow.value); // console.log("---2-->",enableFlow.value);
// console.log("---3-->",enableVersion.value); // console.log("---3-->",enableVersion.value);
@ -226,7 +227,7 @@ const clearCanvas = (isOk?:any) =>{
*/ */
const initWorkFlowData = async() => { const initWorkFlowData = async() => {
let { data } = await initializeWorkFlow({name:state.value.formData.form.formName}) let { data } = await initializeWorkFlow({name:state.value.formData.form.formName})
// console.log("data-=------>",data) console.log("data-=------>",data)
processConfig.value = data; processConfig.value = data;
let { let {
nodeConfig:nodes, nodeConfig:nodes,
@ -579,7 +580,7 @@ const closwFormFlow = () => {
<nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" /> <nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" />
<div class="end-node"> <div class="end-node">
<div class="end-node-circle"></div> <div class="end-node-circle"></div>
<div class="end-node-text">流程结束</div> <div class="end-node-text">流程结束5</div>
</div> </div>
</div> </div>
</section> </section>

45
src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageForm.vue

@ -369,7 +369,7 @@ const saveAppFormData = () => {
createAppForm(sendData) createAppForm(sendData)
.then((data:any) => { .then((data:any) => {
state.value.loading = false state.value.loading = false
console.log("写入自建应用App表单--->",data) // console.log("App--->",data)
// appPageKey.value = data.data.customerFormCont.id // appPageKey.value = data.data.customerFormCont.id
// appPageKey.set(data.data.customerFormCont.id.toString()) // appPageKey.set(data.data.customerFormCont.id.toString())
versionId.value = data.data.formVersion.id.toString() versionId.value = data.data.formVersion.id.toString()
@ -543,7 +543,48 @@ function optionsValue3Get3(data: any,fieldName: string){
} }
} }
//
const dialogConfirm = (editVal: string) => {
// jsonstate.formData
try {
if (typeof drawer.callback === 'function') {
// callback
const newObj =
drawer.codeType === 'json'? string2json(editVal): stringToObj(editVal)
drawer.callback(newObj)
} else {
switch (drawer.type) {
case 'css':
//
if (!state.value.formData.config) {
state.value.formData.config = {}
}
state.value.formData.config.style = editVal
break
case 'dict':
state.value.formDict = string2json(editVal)
break
case 'beforeRequest':
case 'beforeSubmit':
case 'afterResponse':
case 'afterSubmit':
case 'closeSubmit':
case 'change':
if (!state.value.formData.events) {
state.value.formData.events = {}
}
state.value.formData.events[drawer.type] = stringToObj(editVal)
break
default:
state.value.formData = stringToObj(editVal)
}
}
dialogCancel()
} catch (res) {
// console.log(res.message)
//ElMessage.error(res.message)
}
}
</script> </script>
<template> <template>
<el-aside class="asideBox leftBox"> <el-aside class="asideBox leftBox">

47
src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageList.vue

@ -271,7 +271,7 @@ const jieForm = () => {
if(props.appPageKey != ""){ if(props.appPageKey != ""){
gainFormTableField({id:props.appPageKey.toString()}) gainFormTableField({id:props.appPageKey.toString()})
.then((data)=>{ .then((data)=>{
console.log('解析表单--->',data) // console.log('--->',data)
formTableField.masterTable=data.data.masterTable formTableField.masterTable=data.data.masterTable
formTableField.sunTable=data.data.sunTable formTableField.sunTable=data.data.sunTable
}) })
@ -408,7 +408,7 @@ const getListInfo = () => {
zhuDaunIsTrue.value = false zhuDaunIsTrue.value = false
console.log("========>",state.tableData) // console.log("========>",state.tableData)
if(state.searchData && state.searchData.length>0) { if(state.searchData && state.searchData.length>0) {
if(formTableField.masterTable && formTableField.masterTable.length > 0){ if(formTableField.masterTable && formTableField.masterTable.length > 0){
state.searchData.forEach((itemCol:any)=>{ state.searchData.forEach((itemCol:any)=>{
@ -600,6 +600,7 @@ const tableListFieldClick = (val:any[]) => {
} }
} }
} }
console.log("state.tableData.columns",state.tableData.columns)
} }
/** /**
@ 作者: 秦东 @ 作者: 秦东
@ -782,6 +783,48 @@ const tabsView = (val:any) => {
*/ */
const showCollapse = () => { const showCollapse = () => {
}
//
const dialogConfirm = (editVal: string) => {
// jsonstate.formData
try {
if (typeof drawer.callback === 'function') {
// callback
const newObj =
drawer.codeType === 'json'? string2json(editVal): stringToObj(editVal)
drawer.callback(newObj)
} else {
switch (drawer.type) {
case 'css':
//
if (!state.value.formData.config) {
state.value.formData.config = {}
}
state.value.formData.config.style = editVal
break
case 'dict':
state.value.formDict = string2json(editVal)
break
case 'beforeRequest':
case 'beforeSubmit':
case 'afterResponse':
case 'afterSubmit':
case 'closeSubmit':
case 'change':
if (!state.value.formData.events) {
state.value.formData.events = {}
}
state.value.formData.events[drawer.type] = stringToObj(editVal)
break
default:
state.value.formData = stringToObj(editVal)
}
}
dialogCancel()
} catch (res) {
// console.log(res.message)
//ElMessage.error(res.message)
}
} }
</script> </script>
<template> <template>

7
src/views/sysworkflow/lowcodepage/index.vue

@ -80,7 +80,10 @@ const gainFormGroup = () => {
}) })
} }
} }
nextTick(()=>{
searchSub()
})
}) })
} }
@ -161,6 +164,7 @@ const handleCommand = (command: string,groupId: string) => {
}) })
}else{ }else{
groupKey.value = ""
addFormGroupIsShow.value = true addFormGroupIsShow.value = true
drawerGroupWith.value = 400 drawerGroupWith.value = 400
} }
@ -187,6 +191,7 @@ const refreshPage = (pageType:string) =>{
addFormGroupIsShow.value = false; addFormGroupIsShow.value = false;
} }
gainFormGroup() gainFormGroup()
} }
/** /**

132
src/views/sysworkflow/lowcodepage/pageList.vue

@ -413,60 +413,61 @@ const tableListFieldClick = (val:any[]) => {
// console.log("-->",val) // console.log("-->",val)
// zhuDaunIsTrue.value = true // zhuDaunIsTrue.value = true
if(zhuDaunIsTrue.value == true){ if(zhuDaunIsTrue.value == true){
if(val.length > 0){ if(val.length > 0){
if(state.tableData.columns.length > 0){ // if(state.tableData.columns.length > 0){ //
val.forEach((item:tableButton)=>{ val.forEach((item:tableButton)=>{
let isTrue = true; let isTrue = true;
state.tableData.columns.forEach((itemTab:tableButton)=>{ state.tableData.columns.forEach((itemTab:tableButton)=>{
if(item.id == itemTab.id){ if(item.id == itemTab.id){
// console.log("-111->",val) // console.log("-111->",val)
isTrue = false; isTrue = false;
}
});
if(isTrue){
state.tableData.columns.push(item)
} }
}); })
if(isTrue){ }else{ //,
val.forEach((item:any)=>{
state.tableData.columns.push(item) state.tableData.columns.push(item)
} })
})
}else{ //,
val.forEach((item:any)=>{
state.tableData.columns.push(item)
})
}
//
let delField = []
formTableField.masterTable.forEach((item:tableButton)=>{
let isTrue = true;
val.forEach((itemVal:tableButton)=>{
if(item.id == itemVal.id){
isTrue = false
}
})
if(isTrue){
delField.push(item.id)
} }
}); //
if(delField.length > 0){ let delField = []
state.tableData.columns.forEach((itemTab:tableButton,index:number)=>{ formTableField.masterTable.forEach((item:tableButton)=>{
delField.forEach((item:string)=>{ let isTrue = true;
if(item == itemTab.id){ val.forEach((itemVal:tableButton)=>{
state.tableData.columns.splice(index,1) // if(item.id == itemVal.id){
isTrue = false
} }
}) })
if(isTrue){
delField.push(item.id)
}
}); });
} if(delField.length > 0){
}else{
if(state.tableData.columns.length > 0){
formTableField.masterTable.forEach((item:tableButton)=>{
state.tableData.columns.forEach((itemTab:tableButton,index:number)=>{ state.tableData.columns.forEach((itemTab:tableButton,index:number)=>{
if(item.id == itemTab.id){ delField.forEach((item:string)=>{
state.tableData.columns.splice(index,1) // if(item == itemTab.id){
} state.tableData.columns.splice(index,1) //
}
})
}); });
}); }
}else{
if(state.tableData.columns.length > 0){
formTableField.masterTable.forEach((item:tableButton)=>{
state.tableData.columns.forEach((itemTab:tableButton,index:number)=>{
if(item.id == itemTab.id){
state.tableData.columns.splice(index,1) //
}
});
});
}
} }
} }
} console.log("state.tableData.columns",state.tableData.columns)
} }
const container = ref() const container = ref()
@ -874,7 +875,48 @@ const getListInfo = () => {
} }
const showCollapse = () => {} const showCollapse = () => {}
//
const dialogConfirm = (editVal: string) => {
// jsonstate.formData
try {
if (typeof drawer.callback === 'function') {
// callback
const newObj =
drawer.codeType === 'json'? string2json(editVal): stringToObj(editVal)
drawer.callback(newObj)
} else {
switch (drawer.type) {
case 'css':
//
if (!state.value.formData.config) {
state.value.formData.config = {}
}
state.value.formData.config.style = editVal
break
case 'dict':
state.value.formDict = string2json(editVal)
break
case 'beforeRequest':
case 'beforeSubmit':
case 'afterResponse':
case 'afterSubmit':
case 'closeSubmit':
case 'change':
if (!state.value.formData.events) {
state.value.formData.events = {}
}
state.value.formData.events[drawer.type] = stringToObj(editVal)
break
default:
state.value.formData = stringToObj(editVal)
}
}
dialogCancel()
} catch (res) {
// console.log(res.message)
//ElMessage.error(res.message)
}
}
</script> </script>
<template> <template>
<div class="design-containers design-table" v-loading="pageLoading"> <div class="design-containers design-table" v-loading="pageLoading">

2
src/views/sysworkflow/lowcodepage/workFlow.vue

@ -527,7 +527,7 @@ onMounted(()=>{
<nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" /> <nodeWrap v-model:nodeConfig="nodeConfig" v-model:flowPermission="flowPermission" />
<div class="end-node"> <div class="end-node">
<div class="end-node-circle"></div> <div class="end-node-circle"></div>
<div class="end-node-text">流程结束</div> <div class="end-node-text">流程结束2</div>
</div> </div>
</div> </div>
</section> </section>

8
src/widget/systemunit/deptOrgPage.vue

@ -215,7 +215,7 @@ onMounted(()=>{
<template #label v-else> <template #label v-else>
<span :style="getFormItemLableStyle(configStyle)" >{{ getLabel(data.item) }}</span> <span :style="getFormItemLableStyle(configStyle)" >{{ getLabel(data.item) }}</span>
</template> </template>
<div>
<el-tree-select <el-tree-select
v-loading="orgLoading" v-loading="orgLoading"
element-loading-text="Loading..." element-loading-text="Loading..."
@ -227,10 +227,10 @@ onMounted(()=>{
node-key="id" node-key="id"
clearable clearable
check-strictly check-strictly
:disabled="type == 4"
style="width: 240px" disabled
/> />
</div>
</el-form-item> </el-form-item>
</template> </template>
<style lang='scss' scoped> <style lang='scss' scoped>

6
src/widget/systemunit/ownerPage.vue

@ -217,7 +217,7 @@ const orgTreeProps ={
<template #label v-else> <template #label v-else>
<span :style="getFormItemLableStyle(configStyle)" >{{ getLabel(data.item) }}</span> <span :style="getFormItemLableStyle(configStyle)" >{{ getLabel(data.item) }}</span>
</template> </template>
<div>
<el-tree-select <el-tree-select
v-loading="peopleLoading" v-loading="peopleLoading"
element-loading-text="Loading..." element-loading-text="Loading..."
@ -229,9 +229,9 @@ const orgTreeProps ={
node-key="id" node-key="id"
clearable clearable
:disabled="type == 4" :disabled="type == 4"
style="width: 240px"
/> />
</div>
</el-form-item> </el-form-item>
</template> </template>
<style lang='scss' scoped> <style lang='scss' scoped>

Loading…
Cancel
Save