马宇豪
2024-12-10 17527437977dc2e2c39c739796e8afd881df35a1
src/views/safetyReview/projectManage/components/projectArchive.vue
@@ -9,16 +9,16 @@
            value-format="YYYY-MM-DD HH:mm:ss"
        />
      </el-form-item>
      <el-form-item prop="desc" label="总结描述:">
        <el-input
            type="textarea"
            :rows="8"
            v-model.trim="state.dataForm.desc"
            size="large"
            placeholder="请输入总结描述"
        >
        </el-input>
      </el-form-item>
<!--      <el-form-item prop="desc" label="总结描述:">-->
<!--        <el-input-->
<!--            type="textarea"-->
<!--            :rows="8"-->
<!--            v-model.trim="state.dataForm.desc"-->
<!--            size="large"-->
<!--            placeholder="请输入总结描述"-->
<!--        >-->
<!--        </el-input>-->
<!--      </el-form-item>-->
      <el-form-item label="附件上传:">
        <el-upload
            :disabled="projectType==='view'"
@@ -35,7 +35,7 @@
            :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles)">
          <el-button type="primary">上传附件PDF</el-button>
          <template #tip>
            <div class="el-upload__tip">上传文件尺寸小于5M,最多可上传1份</div>
            <div class="el-upload__tip">上传文件尺寸小于15M,最多可上传1份</div>
          </template>
        </el-upload>
      </el-form-item>
@@ -49,6 +49,7 @@
import {ElMessage, ElMessageBox} from "element-plus";
import axios from "axios";
import {archiveProject, checkProject, getFileInfo, getProjectInfo} from "@/api/projectManage";
import Cookies from "js-cookie";
const emit = defineEmits(["getNextStatus"]);
const prop = defineProps(['projectId'])
@@ -60,7 +61,7 @@
    desc:'',
  },
  rules: {
    desc: [{ required: true, message: "总结描述不能为空", trigger: "blur" }],
    // desc: [{ required: true, message: "总结描述不能为空", trigger: "blur" }],
    projectEndTime:[{ required: true, message: "结束日期不能为空", trigger: "blur" }]
  },
  uploadUrl: import.meta.env.VITE_APP_BASE_API + '/common/upload',
@@ -68,13 +69,17 @@
    Authorization: getToken()
  },
  fileList: [],
  projectId: null
  projectId: null,
  isAdmin: false
});
const userInfo = ref()
onMounted(async () => {
  if(prop.projectId){
    state.projectId = prop.projectId
  }
  userInfo.value = JSON.parse(Cookies.get('userInfo'))
  state.isAdmin = userInfo.value.admin
})
const formRef = ref()
@@ -84,6 +89,10 @@
  let valid = null
  if(type === 'confirm'){
    valid = await formRef.value.validate();
    if (state.isAdmin) {
      ElMessage.warning("当前用户暂无权限");
      return;
    }
  }
  if(type === 'confirm'){
    if(valid){
@@ -148,6 +157,7 @@
    state.fileList = state.fileList.map(item => {
      return {
        name: item.name,
        originalFileName: item.name,
        filePath: item.response.url,
        fileName:item.response.fileName,
        projectId: state.projectId,
@@ -171,10 +181,10 @@
}
const picSize = async (rawFile) => {
  if(rawFile.size / 1024 / 1024 > 5){
  if(rawFile.size / 1024 / 1024 > 15){
    ElMessage({
      type: 'warning',
      message: '文件大小不能超过5M'
      message: '文件大小不能超过15M'
    });
    return false
  }