Merge pull request 'dj' (#159) from dj into master

Reviewed-on: http://git.feashow.cn/clay/mosr-web/pulls/159
This commit is contained in:
2024-05-13 14:30:31 +00:00
3 changed files with 67 additions and 46 deletions

View File

@@ -148,11 +148,11 @@ const tableConfig = reactive({
}) })
const handleView = (row) => { const handleView = (row) => {
console.log('row', row) console.log('row', row)
if(row.targetState=='00'&&row.taskId){ if(row.targetState=='00'&&row.targetId){
router.push({ router.push({
path: '/projectdemand/demanddetail', path: '/projectdemand/demanddetail',
query: { query: {
id: row.taskId id: row.targetId
} }
}) })
} }

View File

@@ -1,7 +1,7 @@
<template> <template>
<div v-loading="loading" class="add-block"> <div v-loading="loading" class="add-block">
<baseTitle title="需求征集信息录入"></baseTitle> <baseTitle title="需求征集信息录入"></baseTitle>
<el-form :model="formData" inline class="query-form" ref="demandForm"> <el-form :model="formData" inline class="query-form" ref="demandForm" :rules="rules">
<div class="left-info"> <div class="left-info">
<el-form-item label="名称" prop="requirementName"> <el-form-item label="名称" prop="requirementName">
<el-input v-model="formData.requirementName" placeholder="请输入名称" clearable></el-input> <el-input v-model="formData.requirementName" placeholder="请输入名称" clearable></el-input>
@@ -20,7 +20,7 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="截止时间" prop="time"> <el-form-item label="截止时间" prop="deadline">
<el-config-provider> <el-config-provider>
<el-date-picker <el-date-picker
v-model="formData.deadline" v-model="formData.deadline"
@@ -38,7 +38,7 @@
<file-upload @getFile="getFile"/> <file-upload @getFile="getFile"/>
<el-table :data="formData.fileList" style="width: 100%"> <el-table :data="formData.fileList" style="width: 100%">
<el-table-column label="序号" type="index" align="center" width="80"/> <el-table-column label="序号" type="index" align="center" width="80"/>
<el-table-column prop="fileName" label="文件名" align="center"/> <el-table-column prop="originalFileName" label="文件名" align="center"/>
<el-table-column prop="tag" label="标签" align="center"/> <el-table-column prop="tag" label="标签" align="center"/>
<el-table-column prop="size" label="文件大小" align="center"> <el-table-column prop="size" label="文件大小" align="center">
<template #default="scope"> <template #default="scope">
@@ -64,7 +64,7 @@
<!-- </div>--> <!-- </div>-->
</div> </div>
<div class="oper-page-btn"> <div class="oper-page-btn">
<el-button color="#DED0B2" @click="handleSubmit">提交</el-button> <el-button color="#DED0B2" @click="handleSubmit(demandForm)">提交</el-button>
<el-button color="#DED0B2" @click="handleResubmit">重新提交</el-button> <el-button color="#DED0B2" @click="handleResubmit">重新提交</el-button>
<el-button @click="handleBack">返回</el-button> <el-button @click="handleBack">返回</el-button>
</div> </div>
@@ -80,10 +80,13 @@ import ProcessDiagramViewer from '@/views/workflow/common/ProcessDiagramViewer.v
import {ElMessage, ElMessageBox} from "element-plus"; import {ElMessage, ElMessageBox} from "element-plus";
import {useRoute, useRouter} from 'vue-router' import {useRoute, useRouter} from 'vue-router'
import {getSubCompOpt} from '@/api/user/user.js' import {getSubCompOpt} from '@/api/user/user.js'
import {useTagsView} from '@/stores/tagsview.js'
const tagsViewStore = useTagsView()
const authStore = useAuthStore() const authStore = useAuthStore()
const router = useRouter() const router = useRouter()
const route = useRoute() const route = useRoute()
const demandForm = ref()
const dateValue = ref() const dateValue = ref()
const formData = ref({ const formData = ref({
requirementName: '', requirementName: '',
@@ -92,41 +95,30 @@ const formData = ref({
deadline: '', deadline: '',
collectExplain: '' collectExplain: ''
}) })
const showTable = ref(false)
const processDiagramViewer = ref(false) const processDiagramViewer = ref(false)
const typeOption = ref([ const typeOption = ref([
{ {
label: "需求征集", label: "需求征集",
value: '需求征集' value: '需求征集'
} }
]) ])
const companyOption = ref([ const companyOption = ref([])
{
label: "测试公司1",
value: 22
},
{
label: "测试公司2",
value: 23
},
{
label: "测试公司3",
value: 24
}
])
const form = ref(null) const form = ref(null)
const fileList = ref(null) const fileList = ref(null)
const menuTree = ref(null)
const loading = ref(false) const loading = ref(false)
const processStore = useProcessStore() const processStore = useProcessStore()
const processInstanceData = ref() const processInstanceData = ref()
const rules = reactive({
requirementName: [{required: true, message: '请输入名称', trigger: 'blur'}],
companyIds: [{required: true, message: '请选择所属公司', trigger: 'blur'}],
collectType: [{required: true, message: '请选择征集类型', trigger: 'blur'}],
deadline: [{required: true, message: '请选择截止时间', trigger: 'blur'}],
})
const compositeParam=(item)=>{ const compositeParam=(item)=>{
return { return {
fileId: item.id, fileId: item.id,
size: item.size, size: item.size,
fileName: item.fileName, originalFileName: item.originalFilename,
fileType: item.fileType, fileType: item.fileType,
url: item.url, url: item.url,
processNodeTag: null, processNodeTag: null,
@@ -135,6 +127,7 @@ const compositeParam=(item)=>{
} }
} }
const getFile = (val) => { const getFile = (val) => {
console.log('上传文件',val)
let fileObj = {} let fileObj = {}
let newFileArray = [] let newFileArray = []
if (route.query.isAdd === undefined) { if (route.query.isAdd === undefined) {
@@ -172,27 +165,45 @@ const init = async () => {
}) })
} }
const handleSubmit = async () => { const handleSubmit = async (instance) => {
let params = { console.log('fileList.value',fileList.value)
if (!instance) return
instance.validate(async (valid) => {
if (!valid) return
let params = {
...formData.value,
requirementId: 0,
files: fileList.value,
deploymentId: processInstanceData.value.deploymentId
}
let res = await addRequirement(params)
if (res.code === 1000) {
ElMessage.success(res.msg)
await router.push({
path: '/projectdemand/demandcollection'
})
tagsViewStore.delVisitedViews(router.currentRoute.value.path)
} else {
ElMessage.error(res.msg)
}
})
}
const handleResubmit = () => {
resubmit({
...formData.value, ...formData.value,
requirementId: 0,
files: fileList.value, files: fileList.value,
deploymentId: processInstanceData.value.deploymentId deploymentId: processInstanceData.value.deploymentId
} }).then(res => {
let res if (res.code === 1000) {
if (route.query.isAdd === undefined) { ElMessage.success(res.msg)
res = await resubmit(params) formData.value = res.data.formData
} else { router.push({
res = await addRequirement(params) path: '/projectdemand/demandcollection'
} })
if (res.code === 1000) { } else {
ElMessage.success(res.msg) ElMessage.error(res.msg)
await router.push({ }
path: '/projectdemand/demandcollection' })
})
} else {
ElMessage.error(res.msg)
}
} }
const getDetailInfo = async () => { const getDetailInfo = async () => {
getFormInfo(route.query.id).then(res => { getFormInfo(route.query.id).then(res => {
@@ -210,7 +221,7 @@ const handleBack = () => {
history.back() history.back()
} }
const beforeRemove = (row) => { const beforeRemove = (row) => {
ElMessageBox.confirm(`确认删除名称为${row.filename}的表格吗?`, '系统提示', { ElMessageBox.confirm(`确认删除名称为${row.originalFileName}的表格吗?`, '系统提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'

View File

@@ -38,7 +38,7 @@
<el-form-item> <el-form-item>
<el-table :data="formData.fileList" style="width: 100%"> <el-table :data="formData.fileList" style="width: 100%">
<el-table-column label="序号" type="index" align="center" width="80"/> <el-table-column label="序号" type="index" align="center" width="80"/>
<el-table-column prop="fileName" label="文件名" align="center"/> <el-table-column prop="originalFileName" label="文件名" align="center"/>
<el-table-column prop="tag" label="标签" align="center"/> <el-table-column prop="tag" label="标签" align="center"/>
<el-table-column prop="size" label="文件大小" align="center"> <el-table-column prop="size" label="文件大小" align="center">
<template #default="scope"> <template #default="scope">
@@ -92,7 +92,9 @@ import ProcessDiagramViewer from '@/views/workflow/common/ProcessDiagramViewer.v
import {useProcessStore} from '@/stores/processStore.js'; import {useProcessStore} from '@/stores/processStore.js';
import {getInfo, agreeTask, rejectTask} from "@/api/project-demand/index.js"; import {getInfo, agreeTask, rejectTask} from "@/api/project-demand/index.js";
import {getSubCompOpt} from '@/api/user/user.js' import {getSubCompOpt} from '@/api/user/user.js'
import {ElMessage} from "element-plus";
import {useRouter} from "vue-router";
const router = useRouter()
const route = useRoute() const route = useRoute()
const form = ref(); const form = ref();
const processStore = useProcessStore() const processStore = useProcessStore()
@@ -120,6 +122,14 @@ const handleReject = () => {
} }
rejectTask(approve).then(res => { rejectTask(approve).then(res => {
console.log(res) console.log(res)
if (res.code === 1000) {
ElMessage.success(res.msg)
router.push({
path: '/projectdemand/demandcollection'
})
}else {
ElMessage.error(res.msg)
}
}) })
} }
const getCompanyOption = async () => { const getCompanyOption = async () => {