3 changed files with 217 additions and 0 deletions
@ -0,0 +1,167 @@ |
|||
<!-- |
|||
@ 作者: 秦东 |
|||
@ 时间: 2025-02-18 09:22:13 |
|||
@ 备注: 设置调班锚点 |
|||
--> |
|||
<script lang="ts" setup> |
|||
import { gaveAllApp, ginTeamRule, setupRulerForm } from "@/api/hr/people/index"; |
|||
|
|||
const props = defineProps({ |
|||
open: { |
|||
type: Boolean, |
|||
default: false, |
|||
}, |
|||
}); |
|||
const emits = defineEmits(["update:open"]); |
|||
const formContent = reactive({ |
|||
appKey: "", |
|||
tableKey: "", |
|||
}); |
|||
const sendData = reactive({ |
|||
source_id: "", |
|||
appid: 0, |
|||
dataBaseName: "", |
|||
ip: "", |
|||
port: 0, |
|||
password: "", |
|||
data_source: "", |
|||
sqlType: "", |
|||
table_key: "", |
|||
table_name: "", |
|||
userName: "", |
|||
}); |
|||
const appList = ref<any>([]); |
|||
const tableList = ref<any>([]); |
|||
/** |
|||
* 弹窗显示控制 |
|||
*/ |
|||
const isShow = computed({ |
|||
get: () => { |
|||
if (props.open) { |
|||
} |
|||
return props.open; |
|||
}, |
|||
set: (val) => { |
|||
emits("update:open", val); |
|||
}, |
|||
}); |
|||
/** |
|||
@ 作者: 秦东 |
|||
@ 时间: 2025-02-18 09:29:28 |
|||
@ 功能: 关闭表单 |
|||
*/ |
|||
const closeDialog = () => { |
|||
emits("update:open", false); |
|||
}; |
|||
|
|||
/** |
|||
@ 作者: 秦东 |
|||
@ 时间: 2025-02-18 10:44:01 |
|||
@ 功能: 获取app列表应用 |
|||
*/ |
|||
const gaveAllAppList = () => { |
|||
gaveAllApp() |
|||
.then(({ data }) => { |
|||
console.log(" 获取app列表应用", data); |
|||
appList.value = data; |
|||
}) |
|||
.finally(() => { |
|||
ginTeamRule().then(({ data }) => { |
|||
console.log(" 获取app列表应用=====>", data); |
|||
if (data.appid != 0) { |
|||
formContent.appKey = data.appid.toString(); |
|||
} |
|||
formContent.tableKey = data.tableKey; |
|||
}); |
|||
}); |
|||
}; |
|||
|
|||
watch( |
|||
() => formContent.appKey, |
|||
(val: any) => { |
|||
if (appList && appList.value.length > 0) { |
|||
appList.value.forEach((iten: any) => { |
|||
if (iten.app_id == val) { |
|||
tableList.value = iten.list; |
|||
} |
|||
}); |
|||
} |
|||
}, |
|||
{ |
|||
deep: true, |
|||
} |
|||
); |
|||
/** |
|||
@ 作者: 秦东 |
|||
@ 时间: 2025-02-18 11:29:53 |
|||
@ 功能: 提交调班配置表 |
|||
*/ |
|||
const onSubmitPick = () => { |
|||
if (appList && appList.value.length > 0) { |
|||
appList.value.forEach((iten: any) => { |
|||
if (iten.app_id == formContent.appKey) { |
|||
sendData.appid = iten.app_id; |
|||
} |
|||
}); |
|||
} |
|||
if (tableList.value && appList.value.length > 0) { |
|||
tableList.value.forEach((iten: any) => { |
|||
if (iten.table_key == formContent.tableKey) { |
|||
sendData.dataBaseName = iten.dataBaseName; |
|||
sendData.ip = iten.ip; |
|||
sendData.port = iten.port; |
|||
sendData.password = iten.password; |
|||
sendData.data_source = iten.data_source; |
|||
sendData.sqlType = iten.sqlType; |
|||
sendData.table_key = iten.table_key; |
|||
sendData.table_name = iten.table_name; |
|||
sendData.userName = iten.userName; |
|||
sendData.source_id = iten.source_id; |
|||
} |
|||
}); |
|||
} |
|||
console.log("提交调班配置表", sendData); |
|||
setupRulerForm(sendData).then((data: any) => { |
|||
console.log("提交调班配置表===========234===========>", data); |
|||
}); |
|||
}; |
|||
|
|||
onMounted(() => { |
|||
gaveAllAppList(); |
|||
}); |
|||
</script> |
|||
<template> |
|||
<el-dialog |
|||
v-model="isShow" |
|||
width="400" |
|||
title="设置调班表单" |
|||
append-to-body |
|||
:before-close="closeDialog" |
|||
> |
|||
<el-form :model="formContent" label-width="auto"> |
|||
<el-form-item label="关联App"> |
|||
<el-select v-model="formContent.appKey" placeholder="请选择关联App"> |
|||
<el-option |
|||
v-for="item in appList" |
|||
:label="item.app_name" |
|||
:value="item.app_id" |
|||
/> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item label="关联流程表单"> |
|||
<el-select v-model="formContent.tableKey" placeholder="请选择关联App"> |
|||
<el-option |
|||
v-for="item in tableList" |
|||
:label="item.table_name" |
|||
:value="item.table_key" |
|||
/> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="primary" @click="onSubmitPick">确定</el-button> |
|||
<el-button @click="closeDialog">取消</el-button> |
|||
</el-form-item> |
|||
</el-form> |
|||
</el-dialog> |
|||
</template> |
|||
<style lang="scss" scoped></style> |
|||
Loading…
Reference in new issue