Quellcode durchsuchen

智慧党建管理系统:
1、后台管理系统-组织关系变更前端研发完成60%
2、后台管理系统-情况说明管理前端研发完成70%
3、后台管理系统-党员发展管理前端研发完成60%
4、后台管理系统-正式党员管理前端研发完成90%
5、【High】党员信息新增录入信息功能前端研发完成100%
6、【High】党员信息完善更新功能前端研发完成100%
7、党员信息展示功能前端研发完成30%

Rockery vor 3 Jahren
Ursprung
Commit
b793bd41bc

+ 7 - 0
src/components/PartyMemberDetails/JsonData/EleObjArr.js

@@ -235,6 +235,13 @@ module.exports = [
             stepItemColLable: '结业证书:',
             stepItemColProp: 'courseCompletionFile',
             stepItemColPdfFileName: '党建管理-详情-7-结业证书'
+          },
+          {
+            stepItemColSpan: 24,
+            stepItemColType: 'THOUGHTREPORTRECORD',
+            stepItemColLable: '思想汇报',
+            stepItemColProp: 'thoughtReportRecord',
+            stepItemColPdfFileName: '党建管理-详情-7-思想汇报-'
           }
         ]
       }

+ 127 - 51
src/components/PartyMemberDetails/index.vue

@@ -3,7 +3,7 @@
  * @Author: Rockery
  * @Date: 2022-01-04 10:37:17
  * @LastEditors: Rockery
- * @LastEditTime: 2022-01-19 17:02:07
+ * @LastEditTime: 2022-01-19 18:14:20
  * @FilePath: \party_construct_web\src\components\PartyMemberDetails\index.vue
  * @Copyright: Copyright (c) 2016~2021 Rockery(1113269755@qq.com)
 -->
@@ -73,35 +73,44 @@
 
                   <div class="basic-info-fourth">
                     <!-- 本人简历(包括学历) -->
-                    <div class="basic-info-fourth-label">本人简历(包括学历)</div>
-                    <div
-                      class="basic-info-fourth-info"
-                      @click="handleViewPageCheckClick(viewFullPartyInfoObj.resume, 'pdf文件')"
-                    >查看</div>
-                    <div
-                      class="basic-info-fourth-info"
-                      @click="handleViewPageDownloadClick(viewFullPartyInfoObj.resume, 'pdf文件')"
-                    >下载</div>
+                    <div class="basic-info-fourth-label">本人简历(包括学历):</div>
+                    <template v-if="viewFullPartyInfoObj.resume">
+                      <div
+                        class="basic-info-fourth-info"
+                        @click="handleViewPageCheckClick(viewFullPartyInfoObj.resume, 'pdf文件')"
+                      >查看</div>
+                      <div
+                        class="basic-info-fourth-info"
+                        @click="handleViewPageDownloadClick(viewFullPartyInfoObj.resume, 'pdf文件')"
+                      >下载</div>
+                    </template>
+                    <template v-else>
+                      <div class="basic-info-fourth-label">—</div>
+                    </template>
 
                     <!-- 其他情况 -->
-                    <div class="basic-info-fourth-label ml20">其他情况</div>
-                    <div
-                      class="basic-info-fourth-info"
-                      @click="handleViewPageCheckClick(viewFullPartyInfoObj.other, 'pdf文件')"
-                    >查看</div>
-                    <div
-                      class="basic-info-fourth-info"
-                      @click="handleViewPageDownloadClick(viewFullPartyInfoObj.other, 'pdf文件')"
-                    >下载</div>
+                    <div class="basic-info-fourth-label ml20">其他情况:</div>
+                    <template v-if="viewFullPartyInfoObj.other">
+                      <div
+                        class="basic-info-fourth-info"
+                        @click="handleViewPageCheckClick(viewFullPartyInfoObj.other, 'pdf文件')"
+                      >查看</div>
+                      <div
+                        class="basic-info-fourth-info"
+                        @click="handleViewPageDownloadClick(viewFullPartyInfoObj.other, 'pdf文件')"
+                      >下载</div>
+                    </template>
+                    <template v-else>
+                      <div class="basic-info-fourth-label">—</div>
+                    </template>
 
                     <!-- 情况说明 -->
-                    <div
-                      class="basic-info-fourth-label ml20"
-                    >{{ viewFullPartyInfoObj.name }}同志曾经进行过情况说明</div>
-                    <div
-                      class="basic-info-fourth-info"
-                      @click="handleViewPageCheckClick('', 'pdf文件')"
-                    >查看</div>
+                    <template v-if="viewFullPartyInfoObj.hasConditionLog > 0">
+                      <div
+                        class="basic-info-fourth-label ml20"
+                      >{{ viewFullPartyInfoObj.name }}同志曾经进行过情况说明</div>
+                      <div class="basic-info-fourth-info" @click="handleViewDescInfoClick">查看</div>
+                    </template>
                   </div>
 
                   <div class="basic-info-fifth">备注:</div>
@@ -152,12 +161,12 @@
                     <template v-else>
                       <el-col :span="12">
                         <div class="head-stage-current">
-                          <span>当前所处阶段:{{ atStageNodeDataObj[viewFullPartyInfoObj.atPoint] || '—' }}</span>
+                          <span>当前所处阶段:{{ atStageNodeDataObj[viewFullPartyInfoObj.maxType] || '—' }}</span>
                         </div>
                       </el-col>
                       <el-col :span="12">
                         <div class="head-stage-future">
-                          <span>待更新节点:{{ nodeDataObj[viewFullPartyInfoObj.flowStatus] || '—' }}</span>
+                          <span>待更新节点:{{ nodeDataObj[viewFullPartyInfoObj.flowStatus + 1] || '—' }}</span>
                         </div>
                       </el-col>
                     </template>
@@ -237,7 +246,7 @@
                                               >
                                                 <div
                                                   class="step-item-right-container_content"
-                                                >{{ stepItemRightItem.stepItemColLable }}{{ parseTime(viewFullPartyInfoObj[stepItemRightItem.stepItemColProp], '{y}年{m}月{d}日') }}</div>
+                                                >{{ stepItemRightItem.stepItemColLable }}{{ parseTime(viewFullPartyInfoObj[stepItemRightItem.stepItemColProp], '{y}年{m}月{d}日') || '待更新' }}</div>
                                               </template>
                                               <template
                                                 v-else-if="stepItemRightItem.stepItemColPropType === 'RADIORESULT'"
@@ -249,7 +258,7 @@
                                               <template v-else>
                                                 <div
                                                   class="step-item-right-container_content"
-                                                >{{ stepItemRightItem.stepItemColLable }}{{ viewFullPartyInfoObj[stepItemRightItem.stepItemColProp] }}</div>
+                                                >{{ stepItemRightItem.stepItemColLable }}{{ viewFullPartyInfoObj[stepItemRightItem.stepItemColProp] || '待更新' }}</div>
                                               </template>
                                             </template>
 
@@ -257,19 +266,84 @@
                                             <template
                                               v-else-if="stepItemRightItem.stepItemColType === 'VIEWPDFFILE'"
                                             >
-                                              <div class="step-item-right-container_viewpdffile">
-                                                <div
-                                                  class="viewpdffile-label"
-                                                >{{ stepItemRightItem.stepItemColLable }}</div>
-                                                <div
-                                                  class="viewpdffile-view"
-                                                  @click="handleViewPageCheckClick(viewFullPartyInfoObj[stepItemRightItem.stepItemColProp], stepItemRightItem.stepItemColPdfFileName)"
-                                                >查看</div>
-                                                <div
-                                                  class="viewpdffile-download"
-                                                  @click="handleViewPageDownloadClick(viewFullPartyInfoObj[stepItemRightItem.stepItemColProp], stepItemRightItem.stepItemColPdfFileName)"
-                                                >下载</div>
-                                              </div>
+                                              <template
+                                                v-if="viewFullPartyInfoObj[stepItemRightItem.stepItemColProp]"
+                                              >
+                                                <div class="step-item-right-container_viewpdffile">
+                                                  <div
+                                                    class="viewpdffile-label"
+                                                  >{{ stepItemRightItem.stepItemColLable }}</div>
+                                                  <div
+                                                    class="viewpdffile-view"
+                                                    @click="handleViewPageCheckClick(viewFullPartyInfoObj[stepItemRightItem.stepItemColProp], stepItemRightItem.stepItemColPdfFileName)"
+                                                  >查看</div>
+                                                  <div
+                                                    class="viewpdffile-download"
+                                                    @click="handleViewPageDownloadClick(viewFullPartyInfoObj[stepItemRightItem.stepItemColProp], stepItemRightItem.stepItemColPdfFileName)"
+                                                  >下载</div>
+                                                </div>
+                                              </template>
+                                              <template>
+                                                <div class="step-item-right-container_viewpdffile">
+                                                  <div
+                                                    class="viewpdffile-label"
+                                                  >{{ stepItemRightItem.stepItemColLable }}</div>
+                                                  <div class="step-item-right-container_content">待更新</div>
+                                                </div>
+                                              </template>
+                                            </template>
+
+                                            <!-- 思想汇报模式 -->
+                                            <template
+                                              v-else-if="stepItemRightItem.stepItemColType === 'THOUGHTREPORTRECORD'"
+                                            >
+                                              <el-row>
+                                                <el-col
+                                                  v-for="(thoughtRecordItem, thoughtRecordIndex) in viewFullPartyInfoObj[stepItemRightItem.stepItemColProp]"
+                                                  :key="stepItemRightItem.stepItemColProp + '-' + (thoughtRecordIndex + 1)"
+                                                  :span="24"
+                                                  style="margin-top: 16px; margin-bottom: 46px;"
+                                                >
+                                                  <el-row :gutter="20">
+                                                    <el-col :span="12">
+                                                      <div
+                                                        class="step-item-right-container_content"
+                                                      >{{ '思想汇报递交时间' + (thoughtRecordIndex + 1) + ':' }}{{ parseTime(thoughtRecordItem.submitTime, '{y}年{m}月{d}日') || '待更新' }}</div>
+                                                    </el-col>
+                                                    <el-col :span="12">
+                                                      <template v-if="thoughtRecordItem.filePath">
+                                                        <div
+                                                          class="step-item-right-container_viewpdffile"
+                                                        >
+                                                          <div
+                                                            class="viewpdffile-label"
+                                                          >{{ '思想汇报' + (thoughtRecordIndex + 1) + ':' }}</div>
+                                                          <div
+                                                            class="viewpdffile-view"
+                                                            @click="handleViewPageCheckClick(thoughtRecordItem.filePath, stepItemRightItem.stepItemColPdfFileName + (thoughtRecordIndex + 1))"
+                                                          >查看</div>
+                                                          <div
+                                                            class="viewpdffile-download"
+                                                            @click="handleViewPageDownloadClick(thoughtRecordItem.filePath, stepItemRightItem.stepItemColPdfFileName + (thoughtRecordIndex + 1))"
+                                                          >下载</div>
+                                                        </div>
+                                                      </template>
+                                                      <template>
+                                                        <div
+                                                          class="step-item-right-container_viewpdffile"
+                                                        >
+                                                          <div
+                                                            class="viewpdffile-label"
+                                                          >{{ stepItemRightItem.stepItemColLable }}</div>
+                                                          <div
+                                                            class="step-item-right-container_content"
+                                                          >待更新</div>
+                                                        </div>
+                                                      </template>
+                                                    </el-col>
+                                                  </el-row>
+                                                </el-col>
+                                              </el-row>
                                             </template>
 
                                             <!-- 不存在模式 -->
@@ -415,9 +489,9 @@ export default {
         let tempFormModel = {};
 
         // 分离数据
-        const { partyMember, flowPointPo } = viewResp.data || {};
+        const { partyMember, flowPointPo, ...otherViewResp } = viewResp.data || {};
         const { place, address, ...otherPartyMember } = partyMember || {};
-        const { thoughtReportRecord, publicTime, readyDeadline, readyDeadline1, publicTime1, ...otherFlowPointPo } = flowPointPo || {};
+        const { publicTime, readyDeadline, readyDeadline1, publicTime1, ...otherFlowPointPo } = flowPointPo || {};
 
         // 籍贯数据
         if (place) {
@@ -433,12 +507,6 @@ export default {
           }
         }
 
-        // 第7步 思想汇报数据
-        tempFormModel.thoughtReportRecordList = [];
-        if (thoughtReportRecord && thoughtReportRecord?.length > 0) {
-          tempFormModel.thoughtReportRecordList = [...thoughtReportRecord];
-        }
-
         // 第10步 公示时间数据
         if (publicTime) {
           let publicTimeArr = publicTime.split('~') || [];
@@ -465,6 +533,7 @@ export default {
 
         tempFormModel = {
           ...tempFormModel,
+          ...otherViewResp,
           ...otherPartyMember,
           ...otherFlowPointPo
         };
@@ -509,6 +578,13 @@ export default {
     handleViewPageDownloadClick(pdfFilePath, pdfFileName = 'pdf-file') {
       if (!pdfFilePath) return;
       regularDownloadPdfFile(`${window.origin}${process.env.VUE_APP_FILE_VIEW_API}${pdfFilePath}`, pdfFileName);
+    },
+    /**
+     * 情况说明查看按钮事件
+     */
+    handleViewDescInfoClick() {
+      if (this.viewFullPartyInfoObj.hasConditionLog === 0) return;
+      this.$router.push(`/partybuildingmgr/situationdesc`);
     }
   }
 }

+ 1 - 1
src/components/PartyMemberDetails/scss/PartyMemberDetails.scss

@@ -119,7 +119,7 @@
             color: #0090f7;
             line-height: 20px;
             cursor: pointer;
-            
+
             &:hover {
               text-decoration: underline;
             }