diff --git a/src/assets/styles/index.scss b/src/assets/styles/index.scss index da3e9b3..93b3576 100644 --- a/src/assets/styles/index.scss +++ b/src/assets/styles/index.scss @@ -551,12 +551,13 @@ html, body, #app, .el-container, .el-aside, .el-main { } .approval-record { + //padding-top: 10px; padding-bottom: 30px; position: relative; .approval-title { display: flex; align-items: center; - justify-content: space-between; + //justify-content: space-between; .diagram { display: flex; @@ -564,6 +565,7 @@ html, body, #app, .el-container, .el-aside, .el-main { float: right; .base-title { + margin-left: 10px; margin-right: 10px; } diff --git a/src/components/AttachmentUpload.vue b/src/components/AttachmentUpload.vue index 7827482..9742001 100644 --- a/src/components/AttachmentUpload.vue +++ b/src/components/AttachmentUpload.vue @@ -1,8 +1,8 @@ + + + + + + + + + + @@ -50,12 +57,20 @@ const props = defineProps({ }, showTable: { type: Boolean, - default: true + default: false + }, + showSingleTable: { + type: Boolean, + default: false }, preview: { type: Boolean, default: false }, + singleList: { + type: Array, + default: [] + }, otherFileList: { type: Array, default: [] @@ -63,6 +78,10 @@ const props = defineProps({ formData: { type: Object, default: {} + }, + labelPosition: { + type: String, + default: '' } }) const emit = defineEmits(["getAttachment", "getOtherFile"]) @@ -128,6 +147,69 @@ const tableConfig = reactive({ } ] }) +const singleTableConfig = reactive({ + columns: [ + { + prop: 'index', + type: 'index', + label: '序号', + align: 'center', + width: '80', + }, + { + prop: 'originalFileName', + label: '文件名', + align: 'center', + }, + { + prop: 'tag', + label: '标签', + align: 'center' + }, + { + prop: 'size', + label: '文件大小', + align: 'center', + currentRender: ({row, index}) => (parseInt(row.size / 1024) + 'KB') + }, + { + prop: 'oper', + label: '操作', + align: 'center', + showOverflowTooltip: false, + currentRender: ({row, index}) => { + let btn = [] + btn.push({label: '下载', func: () => handleDownload(row), type: 'primary'}) + // if (row.newFile) { + // btn.push({label: '删除', func: () => handleDelete(row), type: 'primary'}) + // } + return ( +
+ { + btn.map(item => ( + item.func()} + link + > + {item.label} + + )) + } + { + row.newFile || props.preview || !props.preview ? + handleSingleDelete(row)}/> + : '' + } +
+ ) + } + } + ] +}) +const fileUploadRef=ref() const rules = reactive({ attachment: [{required: true, message: '请上传附件', trigger: ['blur', 'change']}], }) @@ -135,9 +217,17 @@ const applyForm = ref() const singleFile = ref(props.formData.singleFile) const isSingleFile = ref(false) const allFileList = ref([]) +const deleteFileVal = ref({}) +const singleFileList = ref([]) +if (props.formData.fileList !== null && props.formData.fileList?.length > 0) { + allFileList.value = props.formData.fileList +} watch(() => props.showTable, (newVal) => { props.showTable = newVal }, {deep: true}) +watch(() => props.showSingleTable, (newVal) => { + props.showSingleTable = newVal +}, {deep: true}) watch(() => props.formData.fileList, (newVal) => { // console.log('newVal-fileList', newVal) if (props.preview) { @@ -149,7 +239,7 @@ watch(() => props.formData.fileList, (newVal) => { watch(() => props.otherFileList, (newVal) => { // console.log('newotherFileList', newVal, props.formData) if (props.preview) { - if (props.formData.fileList === null || props.formData.fileList.length === 0) { + if (props.formData.fileList === null || props.formData.fileList?.length === 0) { allFileList.value = newVal } else { newVal?.forEach(item => { @@ -160,6 +250,10 @@ watch(() => props.otherFileList, (newVal) => { allFileList.value = newVal } }, {deep: true}) +watch(() => props.singleList, (newVal) => { + // console.log('singleFile', newVal) + singleFileList.value = newVal +}, {deep: true}) watch(() => props.formData.singleFile, (newVal) => { // console.log('singleFile', newVal) singleFile.value = newVal @@ -167,7 +261,7 @@ watch(() => props.formData.singleFile, (newVal) => { watch(() => isSingleFile.value, (newVal) => { isSingleFile.value = newVal }, {deep: true}) -const handleDelete = (row) => { +const handleDelete = (row, type) => { deleteFile(row.fileId).then(res => { ElNotification({ title: '提示', @@ -175,12 +269,24 @@ const handleDelete = (row) => { type: res.code === 1000 ? 'success' : 'error' }) if (res.code === 1000) { - allFileList.value.splice(allFileList.value.findIndex((item) => item.id === row.fileId), 1); + if (type === 'single') { + singleFileList.value.splice(singleFileList.value.findIndex((item) => item.id === row.fileId), 1); + isSingleFile.value = false + } else { + allFileList.value.splice(allFileList.value.findIndex((item) => item.id === row.fileId), 1); + } } }); } +const handleSingleDelete = (row) => { + console.log('row',row) + // fileUploadRef.value.handleRemove(deleteFileVal.value.id) + handleDelete(row, 'single') +} const getAttachment = (val) => { + console.log('getAttachment', val) isSingleFile.value = true + // deleteFileVal.value=val emit('getAttachment', val) } const getOtherFile = (val) => { diff --git a/src/components/DetailComponent/ApprovalDetail.vue b/src/components/DetailComponent/ApprovalDetail.vue index 322fb4b..0c507bd 100644 --- a/src/components/DetailComponent/ApprovalDetail.vue +++ b/src/components/DetailComponent/ApprovalDetail.vue @@ -24,7 +24,7 @@
流程图
diff --git a/src/components/DetailComponent/CollectionDetail.vue b/src/components/DetailComponent/CollectionDetail.vue index 6c3db8a..b902362 100644 --- a/src/components/DetailComponent/CollectionDetail.vue +++ b/src/components/DetailComponent/CollectionDetail.vue @@ -1,6 +1,6 @@ - + @@ -114,11 +114,11 @@
-
+
流程图
@@ -163,7 +163,7 @@ const rules = reactive({ shareName: [{required: true, message: '请输入分摊名称', trigger: ['blur', 'change']}], apportionmentMonth: [{required: true, message: '请选择月份', trigger: ['blur', 'change']}], projectId: [{required: true, message: '请选择项目名称', trigger: ['blur', 'change']}], - // researchPersonnel: [{required: true, message: '请选择研发人员', trigger: ['blur', 'change']}], + // researchPersonnelId: [{required: true, message: '请选择研发人员', trigger: ['blur', 'change']}], wagesPayable: [{required: true, message: '请输入应发工资', trigger: ['blur', 'change']}], performance: [{required: true, message: '请输入绩效', trigger: ['blur', 'change']}], reserveFund: [{required: true, message: '请输入公积金', trigger: ['blur', 'change']}], @@ -187,7 +187,7 @@ const formData = ref({ { projectId: '', projectName: '', - researchPersonnel: '', + researchPersonnelId: '', wagesPayable: null, performance: null, reserveFund: null, @@ -216,8 +216,8 @@ const selected = (select) => { } formData.value.tableData.forEach((item, index) => { if (index === currentIndex.value) { - item.researchPersonnel = select[0].id - item.researchPersonnelName = select[0].name + item.researchPersonnelId = select[0].id + item.researchPersonnel = select[0].name } }) } @@ -242,8 +242,8 @@ const handleAdd = () => { let row = { projectId: '', projectName: '', + researchPersonnelId: '', researchPersonnel: '', - researchPersonnelName: '', wagesPayable: null, performance: null, reserveFund: null, @@ -259,8 +259,8 @@ const handleCopy = (row) => { let copyObj = { projectId: row.projectId, projectName: '', + researchPersonnelId: row.researchPersonnelId, researchPersonnel: row.researchPersonnel, - researchPersonnelName: row.researchPersonnelName, wagesPayable: row.wagesPayable, performance: row.performance, reserveFund: row.reserveFund, @@ -284,15 +284,15 @@ const handleSubmit = (instance) => { type: 'error' }) } - let researchPersonnel = '' + let researchPersonnelId = '' formData.value.tableData.forEach(item => { item.projectName = getProjectName(item.projectId) - researchPersonnel = item.researchPersonnel + researchPersonnelId = item.researchPersonnelId if (item.performance == 0) { item.performance = null } }) - if (!researchPersonnel) { + if (!researchPersonnelId) { ElNotification({ title: '提示', message: '请选择研发人员', @@ -333,18 +333,18 @@ const handleResubmit = (instance) => { } let newUsrAllocationsObj = {} let newUsrAllocationsObjArray = [] - let researchPersonnel = '' + let researchPersonnelId = '' formData.value.tableData.forEach(item => { item.allocationId = formData.value.allocationId item.projectName = getProjectName(item.projectId) - researchPersonnel = item.researchPersonnel + researchPersonnelId = item.researchPersonnelId if (item.performance == 0) { item.performance = null } newUsrAllocationsObj = { projectId: item.projectId, projectName: item.projectName, - researchPersonnel: item.researchPersonnel, + researchPersonnelId: item.researchPersonnelId, wagesPayable: item.wagesPayable, performance: item.performance, reserveFund: item.reserveFund, @@ -355,7 +355,7 @@ const handleResubmit = (instance) => { } newUsrAllocationsObjArray.push(newUsrAllocationsObj) }) - if (!researchPersonnel) { + if (!researchPersonnelId) { ElNotification({ title: '提示', message: '请选择研发人员', @@ -409,7 +409,7 @@ const getDetailList = async () => { const {code, data, msg} = await getAllocationDetailList(params) if (code === 1000) { data.rows.forEach(item => { - item.researchPersonnel = Number(item.researchPersonnel) + item.researchPersonnelId = Number(item.researchPersonnelId) }) formData.value.tableData = data.rows nextTick(() => { diff --git a/src/views/expense-management/share/detail.vue b/src/views/expense-management/share/detail.vue index 38d6ca5..730668a 100644 --- a/src/views/expense-management/share/detail.vue +++ b/src/views/expense-management/share/detail.vue @@ -39,7 +39,7 @@
流程图
diff --git a/src/views/expense-management/share/moblieDetail/index.vue b/src/views/expense-management/share/moblieDetail/index.vue index 48e79b6..9ec4e0b 100644 --- a/src/views/expense-management/share/moblieDetail/index.vue +++ b/src/views/expense-management/share/moblieDetail/index.vue @@ -40,7 +40,7 @@
流程图
diff --git a/src/views/project-demand/requirement/add.vue b/src/views/project-demand/requirement/add.vue index 37b7c18..828a747 100644 --- a/src/views/project-demand/requirement/add.vue +++ b/src/views/project-demand/requirement/add.vue @@ -1,16 +1,16 @@
-
+
流程图
@@ -146,22 +145,20 @@ const dateValue = ref() const formData = ref({ requirementName: '', companyIds: [], - collectType: '', + collectType: '科技创新与信息化系统建设', deadline: '', collectExplain: '', fileList: [], isSpecialFund: false }) -const showTinymce = ref(true) const routerName = ref(router.currentRoute.value.name) const processDiagramViewer = ref(false) const companyOption = ref([]) const specialFundOption = ref([]) const form = ref(null) -const expendClass = ref() const fileList = ref([]) const loading = ref(false) -const showTable = ref(true) +const showTable = ref(false) const processStore = useProcessStore() const processInstanceData = ref() const formPermMap = ref(new Map()); @@ -370,7 +367,13 @@ const submitParam = (item) => { const handleSubmit = async (instance) => { if (!instance) return instance.validate(async (valid) => { - if (!valid) return + if (!valid) { + return ElNotification({ + title: '提示', + message: '请完善数据,再提交!', + type: 'error' + }) + } const {msg, code} = await addRequirement(submitParam(formData.value)) ElNotification({ title: '提示', @@ -424,12 +427,12 @@ const getDetailInfo = async () => { if (res.code === 1000) { selectedCompanyList.value = getCompanyOptionItem(res.data.companyIds) formData.value = res.data - showTinymce.value = false - showTable.value = false - nextTick(() => { - showTinymce.value = true - showTable.value = true - }) + if(res.data.fileList.length!==0){ + showTable.value = false + nextTick(() => { + showTable.value = true + }) + } } else { ElNotification({ title: '提示', @@ -452,6 +455,7 @@ const handleDelete = (row) => { }) if (res.code === 1000) { formData.value.fileList.splice(formData.value.fileList.findIndex((item) => item.id === row.fileId), 1); + showTable.value = formData.value.fileList.length !== 0; } }); } diff --git a/src/views/project-demand/requirement/moblieDetail/CollectionDetailMoblie.vue b/src/views/project-demand/requirement/moblieDetail/CollectionDetailMoblie.vue index 74c0730..163e199 100644 --- a/src/views/project-demand/requirement/moblieDetail/CollectionDetailMoblie.vue +++ b/src/views/project-demand/requirement/moblieDetail/CollectionDetailMoblie.vue @@ -68,7 +68,7 @@
流程图
diff --git a/src/views/project-demand/summary/add.vue b/src/views/project-demand/summary/add.vue index 8d88b2b..1546f67 100644 --- a/src/views/project-demand/summary/add.vue +++ b/src/views/project-demand/summary/add.vue @@ -1,40 +1,15 @@
-
+
流程图
diff --git a/src/views/workflow/common/OperationRender.vue b/src/views/workflow/common/OperationRender.vue index b4fc42e..4d2f616 100644 --- a/src/views/workflow/common/OperationRender.vue +++ b/src/views/workflow/common/OperationRender.vue @@ -312,7 +312,7 @@ init() } > div:nth-child(2) { - display: flex; + //display: flex; margin-top: -5px; } }