修改表单修改
This commit is contained in:
parent
96a89d85d8
commit
dccb2410b6
@ -28,24 +28,25 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="开始时间" prop="startTime" :disabled="!isEditable('startTime')">
|
<el-form-item label="开始时间" prop="startTime" >
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="formData.startTime"
|
v-model="formData.startTime"
|
||||||
type="datetime"
|
type="datetime"
|
||||||
value-format="x"
|
value-format="x"
|
||||||
placeholder="选择开始时间"
|
placeholder="选择开始时间"
|
||||||
disabled
|
:disabled="!isEditable('startTime')"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="结束时间" prop="endTime" :disabled="!isEditable('endTime')">
|
<el-form-item label="结束时间" prop="endTime" >
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="formData.endTime"
|
v-model="formData.endTime"
|
||||||
type="datetime"
|
type="datetime"
|
||||||
value-format="x"
|
value-format="x"
|
||||||
placeholder="选择结束时间"
|
placeholder="选择结束时间"
|
||||||
disabled
|
:disabled="!isEditable('startTime')"
|
||||||
|
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -160,29 +161,21 @@ const isEditable = (field) => {
|
|||||||
}
|
}
|
||||||
/** 提交表单 */
|
/** 提交表单 */
|
||||||
const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
|
const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
|
||||||
const submitForm = async () => {
|
const updatetForm = async () => {
|
||||||
// 校验表单
|
// 校验表单
|
||||||
alert("update.....")
|
|
||||||
await formRef.value.validate()
|
await formRef.value.validate()
|
||||||
// 提交请求
|
// 提交请求
|
||||||
formLoading.value = true
|
formLoading.value = true
|
||||||
try {
|
try {
|
||||||
const data = formData.value as unknown as QjglVO
|
const data = formData.value as unknown as QjglVO
|
||||||
if (formType.value === 'create') {
|
await QjglApi.updateQjgl(data)
|
||||||
await QjglApi.createQjgl(data)
|
|
||||||
message.success(t('common.createSuccess'))
|
|
||||||
} else {
|
|
||||||
await QjglApi.updateQjgl(data)
|
|
||||||
message.success(t('common.updateSuccess'))
|
|
||||||
}
|
|
||||||
dialogVisible.value = false
|
|
||||||
// 发送操作成功的事件
|
// 发送操作成功的事件
|
||||||
emit('success')
|
//emit('success')
|
||||||
} finally {
|
} finally {
|
||||||
formLoading.value = false
|
formLoading.value = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
defineExpose({updatetForm})
|
||||||
/** 重置表单 */
|
/** 重置表单 */
|
||||||
const resetForm = () => {
|
const resetForm = () => {
|
||||||
formData.value = {
|
formData.value = {
|
||||||
@ -202,6 +195,41 @@ const resetForm = () => {
|
|||||||
}
|
}
|
||||||
formRef.value?.resetFields()
|
formRef.value?.resetFields()
|
||||||
}
|
}
|
||||||
|
const itemControl = async () => {
|
||||||
|
// console.log(userId,"userId")
|
||||||
|
// console.log(queryId,"queryId")
|
||||||
|
let flag = false
|
||||||
|
let itemType = ""
|
||||||
|
let itemContent = ""
|
||||||
|
if (queryId.length > 33 ) { //流程中打开表单
|
||||||
|
const taskids = await TaskApi.getTaskIdsForProcessInstance( queryId ) //通过流程实例id得到待办任务列表
|
||||||
|
const token = getAccessToken()
|
||||||
|
for (const taskid of taskids) {
|
||||||
|
// 在 for...of 中可以使用 await
|
||||||
|
const assignee = await TaskApi.getTaskAssignee(taskid); //通过待办任务id得到审批人
|
||||||
|
//console.log(assignee, "assignee");
|
||||||
|
if ( assignee == userId ) {
|
||||||
|
flag = true
|
||||||
|
itemType = await TaskApi.getTaskConfigFromBpmn( taskid ,"itemType")
|
||||||
|
//console.log(itemType,"itemType")
|
||||||
|
if ( itemType == "1") {
|
||||||
|
itemContent = await TaskApi.getTaskConfigFromBpmn( taskid ,"itemContent")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ( flag ) { //当然用户是审批人
|
||||||
|
if ( itemType == "1") { //表单字段0:禁用,1:允许
|
||||||
|
//editableFields.value.push("userName")
|
||||||
|
const parsedObject = JSON.parse(itemContent);
|
||||||
|
Object.entries(parsedObject).forEach(([key, value]) => {
|
||||||
|
editableFields.value.push( key )
|
||||||
|
//console.log(key);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
const id = props.id || queryId
|
const id = props.id || queryId
|
||||||
console.log("id",id)
|
console.log("id",id)
|
||||||
@ -209,32 +237,7 @@ onMounted(async () => {
|
|||||||
formLoading.value = true
|
formLoading.value = true
|
||||||
try {
|
try {
|
||||||
formData.value = await QjglApi.getQjgl(id)
|
formData.value = await QjglApi.getQjgl(id)
|
||||||
console.log(userId,"userId")
|
await itemControl()
|
||||||
console.log(queryId,"queryId")
|
|
||||||
let flag = false
|
|
||||||
let itemType = ""
|
|
||||||
if (queryId.length > 33 ) { //流程中打开表单
|
|
||||||
const taskids = await TaskApi.getTaskIdsForProcessInstance( queryId ) //通过流程实例id得到待办任务列表
|
|
||||||
const token = getAccessToken()
|
|
||||||
for (const taskid of taskids) {
|
|
||||||
// 在 for...of 中可以使用 await
|
|
||||||
const assignee = await TaskApi.getTaskAssignee(taskid); //通过待办任务id得到审批人
|
|
||||||
console.log(assignee, "assignee");
|
|
||||||
if ( assignee == userId ) {
|
|
||||||
flag = true
|
|
||||||
itemType = await TaskApi.getTaskConfigFromBpmn( taskid ,"itemType")
|
|
||||||
console.log(itemType,"itemType")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ( flag ) { //当然用户是审批人
|
|
||||||
if ( itemType == "1") { //表单字段0:禁用,1:允许
|
|
||||||
editableFields.value.push("title")
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// TaskApi.getTaskAssignee()
|
// TaskApi.getTaskAssignee()
|
||||||
} finally {
|
} finally {
|
||||||
formLoading.value = false
|
formLoading.value = false
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<!-- 情况二:业务表单 -->
|
<!-- 情况二:业务表单 -->
|
||||||
<div v-if="processInstance?.processDefinition?.formType === 20">
|
<div v-if="processInstance?.processDefinition?.formType === 20">
|
||||||
<BusinessFormComponent :id="processInstance.businessKey" />
|
<BusinessFormComponent ref="businessForm" :id="processInstance.businessKey" />
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
@ -253,7 +253,7 @@ watch(
|
|||||||
deep: true
|
deep: true
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
const businessForm = ref()
|
||||||
/** 处理审批通过和不通过的操作 */
|
/** 处理审批通过和不通过的操作 */
|
||||||
const handleAudit = async (task, pass) => {
|
const handleAudit = async (task, pass) => {
|
||||||
// 1.1 获得对应表单
|
// 1.1 获得对应表单
|
||||||
@ -265,13 +265,7 @@ const handleAudit = async (task, pass) => {
|
|||||||
if (!elForm) return
|
if (!elForm) return
|
||||||
const valid = await elForm.validate()
|
const valid = await elForm.validate()
|
||||||
if (!valid) return
|
if (!valid) return
|
||||||
console.log( BusinessFormComponent.value,"BusinessFormComponent.value" )
|
|
||||||
console.log(BusinessFormComponent.value.submit,"BusinessFormComponent.value.submit")
|
|
||||||
if (BusinessFormComponent.value && BusinessFormComponent.value.submit) {
|
|
||||||
console.log("submit.....")
|
|
||||||
BusinessFormComponent.value.submit() // 调用表单的提交方法
|
|
||||||
}
|
|
||||||
return
|
|
||||||
// 2.1 提交审批
|
// 2.1 提交审批
|
||||||
const data = {
|
const data = {
|
||||||
id: task.id,
|
id: task.id,
|
||||||
@ -287,6 +281,10 @@ const handleAudit = async (task, pass) => {
|
|||||||
data.variables = approveForms.value[index].value
|
data.variables = approveForms.value[index].value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (businessForm.value && businessForm.value.updatetForm) {
|
||||||
|
businessForm.value.updatetForm() // 调用异步组件的提交方法
|
||||||
|
}
|
||||||
|
|
||||||
await TaskApi.approveTask(data)
|
await TaskApi.approveTask(data)
|
||||||
message.success('审批通过成功')
|
message.success('审批通过成功')
|
||||||
} else {
|
} else {
|
||||||
@ -294,7 +292,7 @@ const handleAudit = async (task, pass) => {
|
|||||||
message.success('审批不通过成功')
|
message.success('审批不通过成功')
|
||||||
}
|
}
|
||||||
// 2.2 加载最新数据
|
// 2.2 加载最新数据
|
||||||
getDetail()
|
//getDetail()
|
||||||
delView(unref(currentRoute))
|
delView(unref(currentRoute))
|
||||||
back()
|
back()
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user