编写流程第二部

This commit is contained in:
wcq 2023-09-11 17:06:29 +08:00
parent 21fb0c6ac8
commit b34a28f069
2 changed files with 83 additions and 16 deletions

View File

@ -185,6 +185,10 @@ export interface paths {
/** 节点备注编辑接口 */ /** 节点备注编辑接口 */
post: operations["func_wd_smebiz_rate_rate_serve_update_node_remark_post"]; post: operations["func_wd_smebiz_rate_rate_serve_update_node_remark_post"];
}; };
"/wd-smebiz/rate/rate_serve/pass_examine": {
/** 审核通过接口 */
post: operations["func_wd_smebiz_rate_rate_serve_pass_examine_post"];
};
"/wd-smebiz/rate/rate_post_data_check_node/update_rate_sheet_data": { "/wd-smebiz/rate/rate_post_data_check_node/update_rate_sheet_data": {
/** 更新企业填报数据 */ /** 更新企业填报数据 */
post: operations["func_wd_smebiz_rate_rate_post_data_check_node_update_rate_sheet_data_post"]; post: operations["func_wd_smebiz_rate_rate_post_data_check_node_update_rate_sheet_data_post"];
@ -415,11 +419,6 @@ export interface components {
/** Data */ /** Data */
data: Record<string, never>; data: Record<string, never>;
}; };
/** ApiDataUpdateRes */
ApiDataUpdateRes: {
/** Data */
data: Record<string, never>;
};
/** AuthRuleAddReq */ /** AuthRuleAddReq */
AuthRuleAddReq: { AuthRuleAddReq: {
/** Name */ /** Name */
@ -1188,6 +1187,13 @@ export interface components {
* @enum {string} * @enum {string}
*/ */
NodeState: "incomplete" | "finish"; NodeState: "incomplete" | "finish";
/** PassExamineReq */
PassExamineReq: {
/** Serve Id */
serve_id: string;
/** Remark */
remark?: string | null;
};
/** PassNodeReq */ /** PassNodeReq */
PassNodeReq: { PassNodeReq: {
/** Serve Id */ /** Serve Id */
@ -3690,6 +3696,28 @@ export interface operations {
}; };
}; };
}; };
/** 审核通过接口 */
func_wd_smebiz_rate_rate_serve_pass_examine_post: {
requestBody: {
content: {
"application/json": components["schemas"]["PassExamineReq"];
};
};
responses: {
/** @description Successful Response */
200: {
content: {
"application/json": unknown;
};
};
/** @description Validation Error */
422: {
content: {
"application/json": components["schemas"]["HTTPValidationError"];
};
};
};
};
/** 更新企业填报数据 */ /** 更新企业填报数据 */
func_wd_smebiz_rate_rate_post_data_check_node_update_rate_sheet_data_post: { func_wd_smebiz_rate_rate_post_data_check_node_update_rate_sheet_data_post: {
requestBody: { requestBody: {
@ -3767,7 +3795,7 @@ export interface operations {
/** @description Successful Response */ /** @description Successful Response */
200: { 200: {
content: { content: {
"application/json": components["schemas"]["ApiDataUpdateRes"]; "application/json": unknown;
}; };
}; };
/** @description Validation Error */ /** @description Validation Error */

View File

@ -93,11 +93,14 @@
width="220" width="220"
confirm-button-text="确定" confirm-button-text="确定"
cancel-button-text="取消" cancel-button-text="取消"
icon-color="#626AEF"
title="导入三方接口数据?" title="导入三方接口数据?"
@confirm="loadApiData"
> >
<template #reference> <template #reference>
<el-button type="primary" link class="!text-[1rem] ml-1" style="vertical-align:baseline" <el-button :disabled="methodAllowed('rate_data_preparation_node')" type="primary" link
@click="loadApiData">导入 class="!text-[1rem] ml-1" style="vertical-align:baseline"
>导入
</el-button> </el-button>
</template> </template>
</el-popconfirm> </el-popconfirm>
@ -125,9 +128,12 @@
cancel-button-text="取消" cancel-button-text="取消"
icon-color="#626AEF" icon-color="#626AEF"
title="确认通过?" title="确认通过?"
@confirm="nodePass('rate_data_preparation_node')"
> >
<template #reference> <template #reference>
<el-button type="primary" size="small">通过</el-button> <el-button :disabled="methodAllowed('rate_data_preparation_node')" type="primary" size="small">
通过
</el-button>
</template> </template>
</el-popconfirm> </el-popconfirm>
</td> </td>
@ -138,7 +144,10 @@
<div class="node-item"> <div class="node-item">
<div class="node-title"> <div class="node-title">
<span>3.费用到账检查</span> <span>3.费用到账检查</span>
<el-text type="warning" class="node-state-text">{{ '未完成' }}</el-text> <el-text :type="NodeStateLevelDic[rateServe.rate_data_preparation_node?.status]"
class="node-state-text">
{{ NodeStateNameDic[rateServe.rate_data_preparation_node?.status] }}
</el-text>
</div> </div>
<div class="node-content"> <div class="node-content">
<table class="w-full fill-sheet-node-table" style="table-layout: fixed;"> <table class="w-full fill-sheet-node-table" style="table-layout: fixed;">
@ -171,7 +180,9 @@
title="确认通过?" title="确认通过?"
> >
<template #reference> <template #reference>
<el-button type="primary" size="small">通过</el-button> <el-button type="primary" size="small" :disabled="methodAllowed('rate_data_preparation_node')">
通过
</el-button>
</template> </template>
</el-popconfirm> </el-popconfirm>
</td> </td>
@ -182,7 +193,7 @@
</div> </div>
<div class="flex"> <div class="flex">
<div class="ml-auto mx-4 my-2"> <div class="ml-auto mx-4 my-2">
<el-button size="small" type="warning" @click="cancelWork">驳回申请</el-button> <el-button size="small" type="warning" @click="cancelWork">驳回申请</el-button>
<el-button size="small" type="danger" @click="deleteWork">删除申请</el-button> <el-button size="small" type="danger" @click="deleteWork">删除申请</el-button>
<el-button size="small" type="primary" @click="finishWork">完成审核</el-button> <el-button size="small" type="primary" @click="finishWork">完成审核</el-button>
</div> </div>
@ -255,6 +266,7 @@
<el-dialog title="三方数据审核" class="api-data-dialog-page" v-model="apiDataExamineVisible" center> <el-dialog title="三方数据审核" class="api-data-dialog-page" v-model="apiDataExamineVisible" center>
<form-table-plus :schema="apiDataInfo.schema" v-model="apiDataInfo.data" <form-table-plus :schema="apiDataInfo.schema" v-model="apiDataInfo.data"
@save="updateApiData"
:disable="methodAllowed('rate_data_preparation_node')"> :disable="methodAllowed('rate_data_preparation_node')">
</form-table-plus> </form-table-plus>
</el-dialog> </el-dialog>
@ -331,12 +343,23 @@ const confirmDeleteWork = () => {
} }
const finishWork = () => { const finishWork = () => {
finishWorkVisible.value = true finishWorkVisible.value = true
} }
const confirmFinishWork = () => { const confirmFinishWork = () => {
finishWorkVisible.value = false spost('/wd-smebiz/rate/rate_serve/pass_examine', {
ElMessage.success("已通过审核") serve_id: prop.rateServe.serve_id,
remark: finishRemark.value
}).then(res => {
const {data, error} = res
if (error) {
ElMessage.warning(error.detail.toString())
} else {
ElMessage.success('通过审核成功')
finishWorkVisible.value = false
}
})
} }
const showRemarkEdit = (nodeName: string) => { const showRemarkEdit = (nodeName: string) => {
@ -430,6 +453,7 @@ const nodePass = (nodeName: string) => {
const loadApiData = () => { const loadApiData = () => {
ElMessage.success('正在导入中,请稍等')
spost('/wd-smebiz/rate/rate_data_preparation_node/api_data/load', {serve_id: prop.rateServe.serve_id}).then(res => { spost('/wd-smebiz/rate/rate_data_preparation_node/api_data/load', {serve_id: prop.rateServe.serve_id}).then(res => {
const {data, error} = res const {data, error} = res
if (error) { if (error) {
@ -439,7 +463,19 @@ const loadApiData = () => {
} }
}) })
} }
const updateApiData = () => {
spost('/wd-smebiz/rate/rate_data_preparation_node/api_data/update', {
serve_id: prop.rateServe.serve_id,
data: apiDataInfo.value.data
}).then(res => {
const {data, error} = res
if (error) {
ElMessage.warning(error.detail.toString())
} else {
ElMessage.success("保存成功")
}
})
}
const showApiDataEdit = () => { const showApiDataEdit = () => {
spost('/wd-smebiz/rate/rate_data_preparation_node/api_data/get', {serve_id: prop.rateServe.serve_id}).then(res => { spost('/wd-smebiz/rate/rate_data_preparation_node/api_data/get', {serve_id: prop.rateServe.serve_id}).then(res => {
const {data, error} = res const {data, error} = res
@ -454,6 +490,8 @@ const showApiDataEdit = () => {
} }
}) })
} }
</script> </script>
<style lang="scss"> <style lang="scss">
.rate-workflow { .rate-workflow {
@ -478,7 +516,7 @@ const showApiDataEdit = () => {
} }
} }
.api-data-dialog-page{ .api-data-dialog-page {
display: flex; display: flex;
flex-flow: column; flex-flow: column;
align-items: center; align-items: center;
@ -488,6 +526,7 @@ const showApiDataEdit = () => {
//width: 100%; //width: 100%;
height: 100%; height: 100%;
overflow: hidden; overflow: hidden;
> .el-dialog__body { > .el-dialog__body {
height: 93%; height: 93%;
padding-top: 0; padding-top: 0;