From facea208b2fc7c8c7a0d176df06305b866c6520f Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: Wed, 17 Jun 2026 08:56:00 +0800
Subject: [PATCH] 中科大支线—申购功能
---
src/views/hazardousChemicals/subscribeApplyManage/approval/components/editDialog.vue | 105 +++++++++++++++++-----------------------------------
1 files changed, 35 insertions(+), 70 deletions(-)
diff --git a/src/views/hazardousChemicals/subscribeApplyManage/approval/components/editDialog.vue b/src/views/hazardousChemicals/subscribeApplyManage/approval/components/editDialog.vue
index 83a8e54..dac5306 100644
--- a/src/views/hazardousChemicals/subscribeApplyManage/approval/components/editDialog.vue
+++ b/src/views/hazardousChemicals/subscribeApplyManage/approval/components/editDialog.vue
@@ -9,36 +9,25 @@
:close-on-click-modal="false"
>
<el-form :model="state.form" size="default" ref="busRef" :rules="state.formRules" label-width="150px" >
- <el-form-item required label= "危化品列表" >
+ <el-form-item label= "危化品列表" >
<div style="display: flex;width: 100%;margin-top: 5px">
- <el-table :data="state.form.hazardousTargets" :border="true">
+ <el-table :data="state.form.subscribeHazmats" :border="true">
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column>
<el-table-column label="危化品名称" align="center" >
<template #default="{row,$index}">
- <el-form-item :prop="'hazardousTargets.' + '[' + $index + ']' + '.name'" >
- <span>{{row.name}}</span>
+ <el-form-item :prop="'subscribeHazmats.' + '[' + $index + ']' + '.hazmatName'" >
+ <span>{{row.hazmatName}}</span>
</el-form-item>
</template>
</el-table-column>
<el-table-column label="数量" align="center" >
<template #default="{row,$index}">
- <el-form-item :prop="'hazardousTargets.' + '[' + $index + ']' + '.num'">
- <span>{{row.num}}</span>
+ <el-form-item :prop="'subscribeHazmats.' + '[' + $index + ']' + '.hazmatCount'">
+ <span>{{row.hazmatCount}}</span>
</el-form-item>
</template>
</el-table-column>
- <el-table-column label="操作" align="center" class-name="small-padding fixed-width" v-if="title !== '查看'" >
- <template #default="scope" >
- <el-button link type="danger" @click="handleDelete(scope.row)" >删除</el-button>
- </template>
- </el-table-column>
</el-table>
- <el-button
- v-if="title !== '查看'"
- style="margin-left: 20px"
- type="primary"
- @click="addObject"
- >新增</el-button>
</div>
</el-form-item>
<el-form-item label="申购文件:">
@@ -46,20 +35,20 @@
<el-link type="primary" @click="openFile(state.form.filePath)">{{state.form.fileName}}</el-link>
</div>
</el-form-item>
- <el-form-item label="审批意见:" v-if="title === '审批' && state.form.state == 0" >
+ <el-form-item label="审批意见:" v-if="title === '审批'" prop="status">
<div style="display: flex;flex-direction: column;width: 70%">
- <el-radio-group v-model="state.form.regestState">
- <el-radio :label="0">通过</el-radio>
- <el-radio :label="1">驳回</el-radio>
+ <el-radio-group v-model="state.form.status">
+ <el-radio :label="1">通过</el-radio>
+ <el-radio :label="2">驳回</el-radio>
</el-radio-group>
- <el-input v-if="state.form.regestState == 1" v-model="state.form.regest" type="textarea" :rows="5"></el-input>
+ <el-input v-if="state.form.status == 2" v-model="state.form.opinion" type="textarea" placeholder="请输入审批意见" :rows="5"></el-input>
</div>
</el-form-item>
- <el-form-item label="审批状态:" v-if="title === '查看' && state.form.state != 0">
- <span>{{state.form.state == 1 ? '审批通过' : '审批驳回' }}</span>
+ <el-form-item label="审批状态:" v-if="title === '查看' && state.form.status != 0" >
+ <span>{{state.form.status == 1 ? '审批通过' : '审批驳回' }}</span>
</el-form-item>
- <el-form-item label="审批意见:" v-if="title === '查看' && state.form.state == 2" style="width: 70%">
- <el-input v-model="state.form.regest" type="textarea" :rows="5"></el-input>
+ <el-form-item label="审批意见:" v-if="title === '查看' && state.form.status == 2" style="width: 70%" >
+ <el-input v-model="state.form.opinion" type="textarea" :rows="5"></el-input>
</el-form-item>
</el-form>
<template #footer v-if="title !=='查看'">
@@ -79,6 +68,7 @@
import {getUser} from "@/api/hazardousChemicals/user";
import {getToken} from "@/utils/auth";
import {renderAsync} from "docx-preview";
+import {auditSubscribe} from "@/api/hazardousChemicals/subscribeApply";
const dialogVisible = ref(false);
const title = ref("");
@@ -88,46 +78,40 @@
const state = reactive({
form: {
id: '',
- creditCode: '',
- name: '',
- major: '',
- phone: '',
- code: '',
- hazardousTargets:[],
+ opinion: null,
+ status: undefined,
+ subscribeHazmats:[],
},
formRules:{
- creditCode: [{ required: true, message: '请输入企业信用代码', trigger: 'blur' }],
- major:[{ required: true, message: '请输入负责人', trigger: 'blur' }],
- type: [{ required: true, message: '请选择企业类型', trigger: 'blur' }],
+ status: [{ required: true, message: '请选择审批意见', trigger: 'blur' }],
},
-
- peopleList:[],
- fileList:[],
- uploadUrl: import.meta.env.VITE_APP_BASE_API + '/system/common/uploadFile',
- header: {
- Authorization: getToken()
- },
- fileLimit: 1,
})
const openDialog = async (type, value) => {
- title.value = type === 'approval' ? '审批' : type ==='edit' ? '申购编辑' : '查看' ;
+ title.value = type === 'approval' ? '审批' : type ==='view' ? '查看' : '' ;
state.form = JSON.parse(JSON.stringify(value));
dialogVisible.value = true;
}
const onSubmit = async () => {
const valid = await busRef.value.validate();
+ if(!state.form.status){
+ ElMessage.warning('请选择审批意见!')
+ return
+ }
if(valid){
if(title.value === '审批'){
- const {id, ...data} = JSON.parse(JSON.stringify(state.form))
- data.code = data.code.toUpperCase()
- const res = await addCompany(data)
+ const {subscribeHazmats, ...data} = JSON.parse(JSON.stringify(state.form))
+ if(data.status == 2 && !data.opinion){
+ ElMessage.warning('请输入审批意见!')
+ return
+ }
+ const res = await auditSubscribe(data)
if(res.code === 200){
ElMessage({
type: 'success',
- message: '新增成功'
+ message: '审批成功'
});
}else{
ElMessage.warning(res.message)
@@ -149,29 +133,10 @@
const reset = () => {
state.form = {
id: '',
- creditCode: '',
- name: '',
- major: '',
- phone: '',
- code: ''
+ opinion:null,
+ status:undefined,
+ subscribeHazmats:[],
}
-}
-const addObject = () => {
-
- state.form.hazardousTargets.push({name:'',num:null})
-}
-const handleDelete = (val) => {
- state.form.hazardousTargets = state.form.hazardousTargets.filter(item=> item != val)
-}
-const selectValue = (val) => {
- if(!val){
- state.form.userId = null
- }
- state.peopleList.forEach(item => {
- if(item.name === val){
- state.form.userId = item.id
- }
- })
}
--
Gitblit v1.9.2