fix : 二级页面上加基础信息

This commit is contained in:
2024-06-10 23:28:34 +08:00
parent 050c5cf57a
commit 1009cb7345
11 changed files with 195 additions and 53 deletions

View File

@@ -2,7 +2,7 @@
<div v-loading="loading">
<el-form :model="formData" label-width="auto">
<el-row>
<el-col :span="12">
<el-col :span="12" v-if="type==='singleDetail'">
<el-form-item label="征集名称">
<span>{{ formData.requirementName }}</span>
</el-form-item>
@@ -17,7 +17,7 @@
<span>{{ formData.companyIds }}</span>
</el-form-item>
</el-col>
<el-col :span="type==='singleDetail'?12:24">
<el-col :span="12">
<el-form-item label="截止时间">
<span>{{ formData.deadline }}</span>
</el-form-item>

View File

@@ -99,13 +99,6 @@ const schema = computed(() => {
span: 12
}
},
{
label: '征集类型',
prop: 'collectType',
colProps: {
span: 12
}
},
{
label: '所属公司',
prop: 'affiliatedCompany',
@@ -114,8 +107,8 @@ const schema = computed(() => {
}
},
{
label: '截止时间',
prop: 'deadline',
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}

View File

@@ -1,4 +1,6 @@
<template>
<baseTitle title="基础信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e"></fvForm>
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
<el-tab-pane v-for="item in paneList" :label="item.label" :name="item.name">
<search-files-by-tag @search="search" @upload="upload" :type="item.name==='40'?'40':''"
@@ -10,6 +12,8 @@
<script setup lang="jsx">
import {searchFileList} from "@/api/project-manage/attachment.js";
import {ElNotification} from "element-plus";
import {computed, ref} from "vue";
import {getBaseInfoApi} from "@/components/steps/api";
const route = useRoute()
const router = useRouter()
@@ -20,6 +24,25 @@ const uploadState = ref(true)
const fileList = ref([])
const projectId = ref(route.query.id)
const requirementId = ref(route.query.requirementId)
const schema = computed(() => {
return [
{
label: '征集名称',
prop: 'requirementName',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
}
]
})
const baseForm = ref()
const paneList=ref([
{
label:'需求征集',
@@ -42,7 +65,15 @@ const paneList=ref([
name:'50'
}
])
const getBaseInfo = async () => {
try {
const {code, data} = await getBaseInfoApi(route.query.id)
baseForm.value.setValues(data)
} catch {
}
}
getBaseInfo()
const handleClick = (tab) => {
activeName.value=tab.props.name
loading.value=true

View File

@@ -1,4 +1,6 @@
<template>
<baseTitle title="基础信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e"></fvForm>
<baseTitle title="上传附件"></baseTitle>
<el-card style="width: 100%;margin: 15px 0">
<file-upload @getFile="getFile" />
@@ -18,6 +20,8 @@
import {ElNotification} from "element-plus";
import {useTagsView} from '@/stores/tagsview.js'
import {uploadFileList} from "@/api/project-manage/attachment";
import {computed, ref} from "vue";
import {getBaseInfoApi} from "@/components/steps/api";
const tagsViewStore = useTagsView()
const route = useRoute()
@@ -26,6 +30,25 @@ const fileList = ref([])
const formData = ref({
tagName:''
})
const schema = computed(() => {
return [
{
label: '征集名称',
prop: 'requirementName',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
}
]
})
const baseForm = ref()
const tableConfig = reactive({
columns: [
{
@@ -70,6 +93,15 @@ const name = ref(router.currentRoute.value.name)
const rules = reactive({
tagName: [{required: true, message: '请输入标签名称', trigger: 'blur'}],
})
const getBaseInfo = async () => {
try {
const {code, data} = await getBaseInfoApi(route.query.id)
baseForm.value.setValues(data)
} catch {
}
}
getBaseInfo()
const compositeParam = (item) => {
let tag=''
switch (route.query.name) {

View File

@@ -1,4 +1,6 @@
<template>
<baseTitle title="基础信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e"></fvForm>
<fvSearchForm :searchConfig="searchConfig" @search="search"></fvSearchForm>
<fvTable ref="tableIns" :tableConfig="tableConfig" @headBtnClick="headBtnClick">
<template #empty>
@@ -10,9 +12,30 @@
<script setup lang="jsx">
import fvSelect from '@/fvcomponents/fvSelect/index.vue'
import {toThousands} from '@/utils/changePrice.js'
import {computed, ref} from "vue";
import {getBaseInfoApi} from "@/components/steps/api";
const router = useRouter()
const route = useRoute()
const schema = computed(() => {
return [
{
label: '征集名称',
prop: 'requirementName',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
}
]
})
const baseForm = ref()
const searchConfig = reactive([
{
label: '项目名称',
@@ -141,6 +164,15 @@ const tableConfig = reactive({
]
})
const tableIns=ref()
const getBaseInfo = async () => {
try {
const {code, data} = await getBaseInfoApi(route.query.id)
baseForm.value.setValues(data)
} catch {
}
}
getBaseInfo()
const headBtnClick = (key) => {
switch (key) {
case 'add':

View File

@@ -50,13 +50,6 @@ const schema = computed(() => {
span: 12
}
},
{
label: '征集类型',
prop: 'collectType',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
@@ -64,13 +57,6 @@ const schema = computed(() => {
span: 12
}
},
{
label: '所属公司',
prop: 'affiliatedCompany',
colProps: {
span: 12
}
}
]
})
const baseForm = ref()

View File

@@ -1,5 +1,7 @@
<template>
<div class="apply-block">
<baseTitle title="基础信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e"></fvForm>
<el-form :model="formData" label-width="auto">
<el-form-item label="抄送人员">
<Ttsup :modelValue="chooseUserInfo()" @click="chooseUser"/>
@@ -29,6 +31,8 @@ import {getPhaseProcess, submitPhaseChange, getPhaseForm, resubmitPhaseForm} fro
import {ElNotification} from "element-plus";
import {useProcessStore} from '@/stores/processStore.js';
import {useTagsView} from '@/stores/tagsview.js'
import {computed, ref} from "vue";
import {getBaseInfoApi} from "@/components/steps/api";
const tagsViewStore = useTagsView()
const router = useRouter()
@@ -46,6 +50,34 @@ const processInstanceData = ref()
const processDiagramViewer = ref(true)
const userList = ref([])
const processStore = useProcessStore()
const schema = computed(() => {
return [
{
label: '征集名称',
prop: 'requirementName',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
}
]
})
const baseForm = ref()
const getBaseInfo = async () => {
try {
const {code, data} = await getBaseInfoApi(route.query.projectId)
baseForm.value.setValues(data)
} catch {
}
}
getBaseInfo()
const compositeParam = (item) => {
let tag = ''
if (name.value === 'Phase/change') {

View File

@@ -1,4 +1,6 @@
<template>
<baseTitle title="基础信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e"></fvForm>
<baseTitle title="阶段变更详情"></baseTitle>
<div style="color: #606266;font-size: 14px">抄送人{{copyName}}</div>
<ApprovalDetail :formData="summaryData.formData" :data="summaryData" type="phase"
@@ -10,6 +12,8 @@
import {ElNotification} from "element-plus";
import {useProcessStore} from '@/stores/processStore.js';
import {getPhaseDetail} from "@/api/project-manage";
import {computed, ref} from "vue";
import {getBaseInfoApi} from "@/components/steps/api";
const route = useRoute()
const summaryData = ref({})
@@ -19,6 +23,34 @@ const loading = ref(false)
const auditOpinion = ref('')
const copyName = ref('')
const fileListShow = ref('READ')
const schema = computed(() => {
return [
{
label: '征集名称',
prop: 'requirementName',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
}
]
})
const baseForm = ref()
const getBaseInfo = async () => {
try {
const {code, data} = await getBaseInfoApi(route.query.projectId)
baseForm.value.setValues(data)
} catch {
}
}
getBaseInfo()
const getInfo = async () => {
fileListShow.value = 'READ'
const projectId = route.query.projectId

View File

@@ -25,26 +25,12 @@ const schema = computed(() => {
span: 12
}
},
{
label: '征集类型',
prop: 'collectType',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
},
{
label: '所属公司',
prop: 'affiliatedCompany',
colProps: {
span: 12
}
}
]
})

View File

@@ -1,4 +1,6 @@
<template>
<baseTitle title="基础信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e"></fvForm>
<baseTitle title="标签名称"></baseTitle>
<el-form :model="formData" ref="tagForm" label-width="auto" :rules="rules">
<el-form-item label="标签名称" prop="tagName">
@@ -34,12 +36,33 @@ import {getTags} from "@/api/project-manage";
import {ElNotification} from "element-plus";
import {useTagsView} from '@/stores/tagsview.js'
import {uploadFileList} from "@/api/project-manage/attachment";
import {computed, ref} from "vue";
import {getBaseInfoApi} from "@/components/steps/api";
const tagsViewStore = useTagsView()
const route = useRoute()
const router = useRouter()
const fileList = ref([])
const showInput = ref(false)
const schema = computed(() => {
return [
{
label: '征集名称',
prop: 'requirementName',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
}
]
})
const baseForm = ref()
const tagsOption = ref([])
const formData = ref({
tagName: ''
@@ -88,6 +111,15 @@ const name = ref(router.currentRoute.value.name)
const rules = reactive({
tagName: [{required: true, message: '请输入标签名称', trigger: ['blur', 'change']}],
})
const getBaseInfo = async () => {
try {
const {code, data} = await getBaseInfoApi(route.query.id)
baseForm.value.setValues(data)
} catch {
}
}
getBaseInfo()
const changeInput = () => {
showInput.value = !showInput.value;
formData.value.tagName = '';

View File

@@ -102,26 +102,12 @@ const schema = computed(() => {
span: 12
}
},
{
label: '征集类型',
prop: 'collectType',
colProps: {
span: 12
}
},
{
label: '项目名称',
prop: 'projectName',
colProps: {
span: 12
}
},
{
label: '所属公司',
prop: 'affiliatedCompany',
colProps: {
span: 12
}
}
]
})