|
@@ -3,7 +3,9 @@
|
|
|
<div class="content-warp flex-column-page-wrap">
|
|
|
<!-- 公用搜索组件 -->
|
|
|
<LeSearchForm ref="searchForm" v-model:searchData="searchData" :forms="forms" :loading="tableOpts.options.loading"> </LeSearchForm>
|
|
|
-
|
|
|
+ <div style="margin: 20px; font-size: 1.2em;color: red">
|
|
|
+ 演示关联业务审批逻辑,对应 业务流程KEY为 purchaseOrder
|
|
|
+ </div>
|
|
|
<!-- LeTable 组件使用 -->
|
|
|
<LeTable
|
|
|
ref="tableRef"
|
|
@@ -27,14 +29,15 @@
|
|
|
</template>
|
|
|
|
|
|
<template #statusSlot="scope">
|
|
|
- <status-indicator v-if="scope.row.status === 1" pulse type="success"></status-indicator>
|
|
|
- <status-indicator v-else pulse type="danger"></status-indicator>
|
|
|
+ <el-tag v-if="scope.row.status === 1" type="danger">已拒绝</el-tag>
|
|
|
+ <el-tag v-else-if="scope.row.status === 2" type="success">已通过</el-tag>
|
|
|
+ <el-tag v-else type="info">待审批</el-tag>
|
|
|
</template>
|
|
|
|
|
|
<template #actionSlot="scope">
|
|
|
- <el-tooltip content="编辑" placement="bottom" effect="light">
|
|
|
+ <el-tooltip content="提交审批" placement="bottom" effect="light">
|
|
|
<el-icon class="ibt0" @click="table_edit(scope.row)">
|
|
|
- <Edit />
|
|
|
+ <Promotion />
|
|
|
</el-icon>
|
|
|
</el-tooltip>
|
|
|
<el-divider direction="vertical"></el-divider>
|
|
@@ -53,7 +56,7 @@
|
|
|
v-if="visible"
|
|
|
ref="dialogUserRef"
|
|
|
v-model="visible"
|
|
|
- :title="`${isCreate ? '新增' : '编辑'}岗位`"
|
|
|
+ title="新增采购订单"
|
|
|
width="600px"
|
|
|
:form-data="activeData"
|
|
|
:form-options="formOptions"
|
|
@@ -62,45 +65,27 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<script lang="tsx" setup>
|
|
|
-import post from '@/api/system/post'
|
|
|
+import purchaseOrder from '@/api/test/purchaseOrder'
|
|
|
import { computed, nextTick, ref, watch } from 'vue'
|
|
|
import { ElMessage, ElMessageBox, ElTree } from 'element-plus'
|
|
|
import { useTablePage } from '@/hooks/useTablePage'
|
|
|
import { Plus, Delete } from '@element-plus/icons-vue'
|
|
|
-import StatusIndicator from '@/components/StatusIndicator'
|
|
|
|
|
|
const visible = ref(false) // 弹窗显示隐藏
|
|
|
-const isCreate = ref(true)
|
|
|
const activeData = ref({})
|
|
|
const formsDialog = [
|
|
|
{
|
|
|
- prop: 'name',
|
|
|
- label: '岗位名称',
|
|
|
- itemType: 'input',
|
|
|
- rules: [{ required: true, message: '请输入岗位名称', trigger: 'blur' }]
|
|
|
- },
|
|
|
- {
|
|
|
- prop: 'code',
|
|
|
- label: '岗位编码',
|
|
|
+ prop: 'title',
|
|
|
+ label: '标题',
|
|
|
itemType: 'input',
|
|
|
- rules: [{ required: true, message: '请输入岗位编码', trigger: 'blur' }]
|
|
|
- },
|
|
|
- {
|
|
|
- prop: 'sort',
|
|
|
- label: '排序',
|
|
|
- itemType: 'inputNumber'
|
|
|
- },
|
|
|
- {
|
|
|
- prop: 'status',
|
|
|
- label: '状态',
|
|
|
- itemType: 'switch',
|
|
|
- activeText: '正常',
|
|
|
- inactiveText: '禁用'
|
|
|
+ rules: [{ required: true, message: '请输入采购订单标题', trigger: 'blur' }]
|
|
|
},
|
|
|
{
|
|
|
- prop: 'remark',
|
|
|
- label: '备注',
|
|
|
- itemType: 'input'
|
|
|
+ prop: 'content',
|
|
|
+ label: '内容',
|
|
|
+ rows: "2",
|
|
|
+ type: 'textarea',
|
|
|
+ rules: [{ required: true, message: '请输入采购订单内容', trigger: 'blur' }]
|
|
|
}
|
|
|
]
|
|
|
// 新增的表单 和 编辑的表单
|
|
@@ -134,7 +119,7 @@ const queryList = async () => {
|
|
|
const { options, searchParams } = tableOpts
|
|
|
options.loading = true
|
|
|
try {
|
|
|
- const { records: list, total } = await post.postPageApi(searchParams)
|
|
|
+ const { records: list, total } = await purchaseOrder.postPageApi(searchParams)
|
|
|
tableOpts.total = total
|
|
|
tableOpts.list = list
|
|
|
} catch {
|
|
@@ -150,12 +135,14 @@ const queryList = async () => {
|
|
|
// table 参数
|
|
|
const columns = [
|
|
|
{
|
|
|
- prop: 'name',
|
|
|
- label: '岗位名称',
|
|
|
- minWidth: 80,
|
|
|
- slots: {
|
|
|
- default: 'filterAvatarSlot'
|
|
|
- }
|
|
|
+ prop: 'title',
|
|
|
+ label: '标题',
|
|
|
+ minWidth: 80
|
|
|
+ },
|
|
|
+ {
|
|
|
+ prop: 'content',
|
|
|
+ label: '内容',
|
|
|
+ minWidth: 100
|
|
|
},
|
|
|
{
|
|
|
prop: 'status',
|
|
@@ -166,30 +153,10 @@ const columns = [
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
- prop: 'code',
|
|
|
- label: '编码',
|
|
|
+ prop: 'flwComment',
|
|
|
+ label: '审批内容',
|
|
|
minWidth: 100
|
|
|
},
|
|
|
- {
|
|
|
- prop: 'remark',
|
|
|
- label: '备注',
|
|
|
- minWidth: 100
|
|
|
- },
|
|
|
- {
|
|
|
- prop: 'sort',
|
|
|
- label: '排序',
|
|
|
- minWidth: 80
|
|
|
- },
|
|
|
- {
|
|
|
- prop: 'updateBy',
|
|
|
- label: '修改人',
|
|
|
- minWidth: 100
|
|
|
- },
|
|
|
- {
|
|
|
- prop: 'updateTime',
|
|
|
- label: '修改时间',
|
|
|
- minWidth: 126
|
|
|
- },
|
|
|
{
|
|
|
prop: 'createBy',
|
|
|
label: '创建人',
|
|
@@ -232,7 +199,7 @@ const { searchData, tableOpts, checkedColumns, activeColumns, curSelectionRows,
|
|
|
// 删除
|
|
|
const deleteItem = async ids => {
|
|
|
// try {
|
|
|
- await post.postDeleteApi(ids)
|
|
|
+ await purchaseOrder.postDeleteApi(ids)
|
|
|
ElMessage.error(`删除成功~`)
|
|
|
updateParams()
|
|
|
// } catch (e) {
|
|
@@ -259,20 +226,14 @@ const batch_del = () => {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-const table_edit = async row => {
|
|
|
- isCreate.value = false
|
|
|
- activeData.value = { ...row, status: row.status ? true : false }
|
|
|
- visible.value = true
|
|
|
-}
|
|
|
-
|
|
|
// 弹窗事件
|
|
|
const submitHandler = async params => {
|
|
|
formOptions.value.formConfig.submitLoading = true
|
|
|
try {
|
|
|
params.status = params.status ? 1 : 0
|
|
|
- params.id = activeData.value.id ? activeData.value.id : null
|
|
|
- await post.postAddOrEditSaveApi(params)
|
|
|
- ElMessage.success(`${isCreate.value ? '新增' : '修改'}成功~`)
|
|
|
+ params.id = null
|
|
|
+ await purchaseOrder.postAddOrEditSaveApi(params)
|
|
|
+ ElMessage.success(`新增成功~`)
|
|
|
visible.value = false
|
|
|
updateParams()
|
|
|
formOptions.value.formConfig.submitLoading = false
|
|
@@ -283,7 +244,6 @@ const submitHandler = async params => {
|
|
|
}
|
|
|
|
|
|
const addHandler = () => {
|
|
|
- isCreate.value = true
|
|
|
activeData.value = {}
|
|
|
visible.value = true
|
|
|
}
|