Browse Source

研发项目进度总览项目状态字典调整;项目状态为已结题时立项页面禁止操作所有表单

ljb 7 months ago
parent
commit
6e1d74d45a

+ 6 - 6
src/option/projectManage/projectList.js

@@ -76,16 +76,16 @@ export default {
       align: 'center',
       search: true,
       showOverflowTooltip: true,
-      dicUrl: '/api/kd-system/dict/dictionary?code=project_state',
+      dicUrl: '/api/kd-system/dict/dictionary?code=project_state_all',
       props: {
         label: 'dictValue',
         value: 'dictKey',
       },
-      dicFormatter: res => {
-        let list = res.data;
-        list.unshift({ dictKey: 0, dictValue: '草稿' });
-        return list;
-      }
+      // dicFormatter: res => {
+      //   let list = res.data;
+      //   list.unshift({ dictKey: 0, dictValue: '草稿' });
+      //   return list;
+      // }
     },
     {
       label: '项目报告进度',

+ 13 - 4
src/views/project-manage/components/apply-form.vue

@@ -107,6 +107,7 @@
                 placeholder="请选择"
                 :dic="studyTypeList"
                 style="width: 100%"
+                :disabled="projectIsSucc"
               ></avue-select>
               <span v-else style="display: inline-block; padding: 12px;">{{ formData.yjlx }}</span>
             </td>
@@ -122,6 +123,7 @@
                 placeholder="请选择"
                 :dic="projectSourceList"
                 style="width: 100%"
+                :disabled="projectIsSucc"
               ></avue-select>
               <span v-else style="display: inline-block; padding: 12px;">{{ formData.xmly }}</span>
             </td>
@@ -135,6 +137,7 @@
                 placeholder="请选择"
                 :dic="implementFormatList"
                 style="width: 100%"
+                :disabled="projectIsSucc"
               ></avue-select>
               <span v-else style="display: inline-block; padding: 12px;">{{ formData.xmkzxs }}</span>
             </td>
@@ -151,6 +154,7 @@
                 placeholder="请选择"
                 :dic="expectedOutComeFormList"
                 style="width: 100%"
+                :disabled="projectIsSucc"
               ></avue-select>
               <template v-else>
                 <div style="padding: 12px;">
@@ -169,6 +173,7 @@
                 placeholder="请选择"
                 :dic="economicObjectivesList"
                 style="width: 100%"
+                :disabled="projectIsSucc"
               ></avue-select>
               <template v-else>
                 <div style="padding: 12px;">
@@ -239,7 +244,7 @@
       </div>
       <p v-if="!isPrintPage" class="tip">注:可一次上传多个相关文件(文档、表格、图片等)。 支持格式:DOC, PDF, Excel, PNG, JPG, PPT 等。 请确保文件内容清晰有效。</p>
 
-      <div class="btn-wrap printHide" style="text-align: center;">
+      <div v-if="!projectIsSucc" class="btn-wrap printHide" style="text-align: center;">
         <template v-if="operateType == 'add' || projectId && formData.status == 0">
           <el-button type="primary" style="width: 160px;" @click="handleSaveBtn(0)">暂存</el-button>
           <el-button type="primary" style="width: 160px;" @click="handleSaveBtn(1)">确定立项</el-button>
@@ -347,6 +352,10 @@ export default {
     isDisabled() {
       return this.operateType == 'edit' && this.formData.status != 0;
     },
+    // 项目是否已结题
+    projectIsSucc() {
+      return this.formData.status == 2;
+    },
     // 获取项目预算总额
     getXmysze() {
       let total = new Decimal(0);
@@ -368,7 +377,7 @@ export default {
             type: "upload",
             multiple: true,
             span: 24,
-            // disabled: this.isDisabled,
+            disabled: this.projectIsSucc,
             dataType: "object",
             propsHttp: {
               url: "link",
@@ -398,7 +407,7 @@ export default {
               res: "data",
             },
             action: '/api/kd-resource/oss/endpoint/put-file',
-            // disabled: this.isDisabled,
+            disabled: this.projectIsSucc,
             uploadPreview: (file, column, done) => {
               downloadFileByUrl(file.url, file.name);
               return;
@@ -415,7 +424,7 @@ export default {
             multiple: true,
             span: 24,
             action: '/api/kd-resource/oss/endpoint/put-file',
-            // disabled: this.isDisabled,
+            disabled: this.projectIsSucc,
             uploadPreview: (file, column, done) => {
               downloadFileByUrl(file.url, file.name);
               return;