Browse Source

更新党员发展

Rockery 3 năm trước cách đây
mục cha
commit
eb6b8a2822

+ 336 - 82
src/components/UpdatePartyDevelop/index.vue

@@ -3,7 +3,7 @@
  * @Author: Rockery
  * @Date: 2021-12-15 17:54:05
  * @LastEditors: Rockery
- * @LastEditTime: 2022-01-05 17:11:37
+ * @LastEditTime: 2022-01-06 17:24:45
  * @FilePath: \party_construct_web\src\components\UpdatePartyDevelop\index.vue
  * @Copyright: Copyright (c) 2016~2021 Rockery(1113269755@qq.com)
 -->
@@ -311,7 +311,7 @@
                                           >
                                             <el-date-picker
                                               v-model="formObj.formModel.submitAddPartyPageTime"
-                                              :disabled="currentOperateType === 'EDIT' ||getEleIsDisabled(['name'])"
+                                              :disabled="(currentOperateType === 'EDIT') || getEleIsDisabled(['name'])"
                                               type="date"
                                               clearable
                                               format="yyyy年MM月dd日"
@@ -329,24 +329,24 @@
                                             prop="addPartyPageFile"
                                             label-width="96px"
                                           >
-                                            <roc-pdf-file-upload
-                                              v-if="currentOperateType !== 'EDIT'"
-                                              key="ROCPDFFILEUPLOADAPPLICATIONKEY"
-                                              v-model="formObj.formModel.addPartyPageFile"
-                                              :is-disabled="getEleIsDisabled(['name'])"
-                                              upload-file-title="入党申请书"
-                                            ></roc-pdf-file-upload>
                                             <div
-                                              v-else
+                                              v-if="currentOperateType === 'EDIT'"
                                               class="updatepartydevelop-viewuploadpdffile"
                                             >
                                               <div
-                                                @click="handleViewPageCheckClick(formObj.formModel.addPartyPageFile)"
+                                                @click="handleViewPageCheckClick(formObj.formModel.addPartyPageFile, '党建管理-录入数据-申请入党-入党申请书')"
                                               >查看</div>
                                               <div
-                                                @click="handleViewPageDownloadClick(formObj.formModel.addPartyPageFile)"
+                                                @click="handleViewPageDownloadClick(formObj.formModel.addPartyPageFile, '党建管理-录入数据-申请入党-入党申请书')"
                                               >下载</div>
                                             </div>
+                                            <roc-pdf-file-upload
+                                              v-else
+                                              key="ROCPDFFILEUPLOADAPPLICATIONKEY"
+                                              v-model="formObj.formModel.addPartyPageFile"
+                                              :is-disabled="getEleIsDisabled(['name'])"
+                                              upload-file-title="入党申请书"
+                                            ></roc-pdf-file-upload>
                                           </el-form-item>
                                         </el-col>
                                       </el-row>
@@ -359,7 +359,7 @@
                           <el-col :span="24">
                             <div
                               class="roc-tabpane-step-tail"
-                              :style="getNodeTabpaneStepTailStyle(innerWidth, [ formObj.formModel.addPartyPageFile ], {defaultHeight: 64, noDefaultHeight: 122,defaultMarginTop: 64, noDefaultMarginTop: 122})"
+                              :style="getNodeTabpaneStepTailStyle(innerWidth, [ formObj.formModel.addPartyPageFile ], {defaultHeight: (currentOperateType === 'EDIT') ? 54 : 64, noDefaultHeight: (currentOperateType === 'EDIT') ? 112 : 122,defaultMarginTop: (currentOperateType === 'EDIT') ? 54 : 64, noDefaultMarginTop: (currentOperateType === 'EDIT') ? 112 : 122}, '','', 'addPartyPageFile')"
                             ></div>
                           </el-col>
 
@@ -373,6 +373,7 @@
                                     <div class="step-item-right-title">党组织派人与入党申请人谈话的记录</div>
                                     <div class="step-item-right-form">
                                       <el-row :gutter="20">
+                                        <!-- 组织派人谈话时间 -->
                                         <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
                                           <el-form-item
                                             label="组织派人谈话时间:"
@@ -391,6 +392,8 @@
                                             ></el-date-picker>
                                           </el-form-item>
                                         </el-col>
+
+                                        <!-- 谈话记录 -->
                                         <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
                                           <el-form-item
                                             label="谈话记录:"
@@ -429,6 +432,7 @@
                                     <div class="step-item-right-title">身份证或户口本复印件</div>
                                     <div class="step-item-right-form">
                                       <el-row :gutter="20">
+                                        <!-- 身份证或户口本 -->
                                         <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
                                           <el-form-item
                                             label="身份证或户口本:"
@@ -489,6 +493,7 @@
                                     <div class="step-item-right-title">党员(群团组织)推荐入党积极分子登记表</div>
                                     <div class="step-item-right-form">
                                       <el-row :gutter="20">
+                                        <!-- 推荐人 -->
                                         <el-col :span="24">
                                           <el-row :gutter="20">
                                             <el-col :span="12">
@@ -508,6 +513,8 @@
                                             </el-col>
                                           </el-row>
                                         </el-col>
+
+                                        <!-- 推荐入党积极分子时间 -->
                                         <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
                                           <el-form-item
                                             label="推荐入党积极分子时间:"
@@ -527,6 +534,8 @@
                                             ></el-date-picker>
                                           </el-form-item>
                                         </el-col>
+
+                                        <!-- 推荐入党积极分子登记表 -->
                                         <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
                                           <el-form-item
                                             label="推荐入党积极分子登记表:"
@@ -1502,7 +1511,7 @@
                                           </el-form-item>
                                         </el-col>
 
-                                        <!-- 预审请示 -->
+                                        <!-- 上报预审请示材料 -->
                                         <el-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
                                           <el-form-item
                                             label="预审请示:"
@@ -2765,6 +2774,14 @@
         >保 存</el-button>
       </el-popover>
     </div>
+
+    <!-- PDF 文件预览对话框 -->
+    <roc-vue-pdf-dialog
+      v-if="pdfDialogVisible"
+      :visible.sync="pdfDialogVisible"
+      :dialog-title="viewPdfFileObj.fileName"
+      :pdfUrl="viewPdfFileObj.filePath"
+    ></roc-vue-pdf-dialog>
   </div>
 </template>
 
@@ -2777,14 +2794,17 @@ Vue.use(VueAreaLinkage);
 import {
   addFullPartyMemberBasicInfo,
   addFullPartyMemberProgressInfo,
+  updateFullPartyMemberBasicInfo,
   viewDetailFullPartyMember
 } from "@/api/PartyBuildingMgr/FullPartyMember";
+import { regularDownloadPdfFile } from "@/utils/rockeryutil";
 
 export default {
   name: "Updatepartydevelop",
   components: {
     'roc-pdf-file-upload': () => import('@/components/RocPdfFileUpload'),
-    'roc-img-file-upload': () => import('@/components/RocImgFileUpload')
+    'roc-img-file-upload': () => import('@/components/RocImgFileUpload'),
+    'roc-vue-pdf-dialog': () => import('@/components/RocVuePdfDialog')
   },
   props: {
     operateType: {
@@ -2838,7 +2858,9 @@ export default {
         pcaa: pcaa
       },
       tabsModel: 'APPLY',
-      innerWidth: window.innerWidth
+      innerWidth: window.innerWidth,
+      viewPdfFileObj: {},
+      pdfDialogVisible: false
     };
   },
   watch: {
@@ -2911,13 +2933,15 @@ export default {
     async initData() {
       await this.getMainOptions();
       if (this.currentOperateType === 'EDIT') {
-        // this.getViewDetailDataByEdit();
+        this.getViewDetailDataByEdit();
       }
     },
     getViewDetailDataByEdit() {
-      this.formObj.formModel = {};
-      viewDetailFullPartyMember({ memberId: this.currentId }).then((viewResp) => {
-
+      this.formObj.formModel = {
+        thoughtReportRecordList: []
+      };
+      this.currentMemberId = this.currentId;
+      viewDetailFullPartyMember({ memberId: this.currentMemberId }).then((viewResp) => {
         // 初始化数据
         let tempFormModel = {};
 
@@ -2946,7 +2970,7 @@ export default {
         }
 
         // 第7步 思想汇报数据
-        if (thoughtReportRecord === null || thoughtReportRecord?.length === 0) {
+        if (!thoughtReportRecord || thoughtReportRecord?.length === 0) {
           tempFormModel.thoughtReportRecordList = [
             {
               submitTime: null,
@@ -2986,7 +3010,13 @@ export default {
           ...otherPartyMember,
           ...otherFlowPointPo
         };
+
+        // 移除tempFormModel对象的属性没有值的元素
+        Object.keys(tempFormModel).forEach(item => {
+          ((tempFormModel[item] !== 0) && (!tempFormModel[item] || JSON.stringify(tempFormModel[item]) === '{}' || JSON.stringify(tempFormModel[item]) === '[]')) && (delete tempFormModel[item]);
+        });
         console.log('tempFormModel===', tempFormModel);
+
         this.viewFullPartyInfoObj = { ...tempFormModel };
         this.formObj.formModel = { ...tempFormModel };
       });
@@ -3089,6 +3119,7 @@ export default {
           // 初始化数据
           let [basicInfoReq, progressInfoReq] = [{}, {}];
           const {
+            id,
             name,
             sex,
             nation,
@@ -3142,70 +3173,148 @@ export default {
 
           console.log('basicInfoReq===', basicInfoReq);
 
-          // 保存基本信息
-          addFullPartyMemberBasicInfo(basicInfoReq).then((basicResp) => {
-            if (basicResp.code === 200) {
-              progressInfoReq.memberId = basicResp.data ?? undefined;
-              if (progressInfoReq.memberId === undefined && progressInfoReq.memberId === null) {
-                this.msgSuccess("基本信息保存成功!");
-                return;
-              }
+          // 移除basicInfoReq对象的属性没有值的元素
+          Object.keys(basicInfoReq).forEach(item => {
+            ((basicInfoReq[item] !== 0) && (!basicInfoReq[item] || JSON.stringify(basicInfoReq[item]) === '{}' || JSON.stringify(basicInfoReq[item]) === '[]')) && (delete basicInfoReq[item]);
+          });
 
-              // 数据保存以后的主键信息
-              this.currentMemberId = progressInfoReq.memberId;
-              this.currentOperateType = 'EDIT';
+          if (this.currentOperateType === 'EDIT') { // 编辑操作模式
+            basicInfoReq.id = this.currentMemberId;
 
-              // 第7步 思想汇报数据
-              let thoughtReportRecord = [];
-              for (let i = 0; i < thoughtReportRecordList?.length; i++) {
-                if (thoughtReportRecordList[i].submitTime && thoughtReportRecordList[i].filePath) {
-                  thoughtReportRecord.push(thoughtReportRecordList[i]);
+            // 保存基本信息
+            updateFullPartyMemberBasicInfo(basicInfoReq).then((basicResp) => {
+              if (basicResp.code === 200) {
+                progressInfoReq.memberId = this.currentMemberId;
+
+                // 第7步 思想汇报数据
+                let thoughtReportRecord = [];
+                for (let i = 0; i < thoughtReportRecordList?.length; i++) {
+                  if (thoughtReportRecordList[i].submitTime && thoughtReportRecordList[i].filePath) {
+                    thoughtReportRecord.push(thoughtReportRecordList[i]);
+                  }
                 }
-              }
-              (thoughtReportRecord?.length > 0) && (progressInfoReq.thoughtReportRecord = thoughtReportRecord);
+                (thoughtReportRecord?.length > 0) && (progressInfoReq.thoughtReportRecord = thoughtReportRecord);
+
+                // 第10步 公示时间数据
+                (publicTimeRange?.length === 2) && (progressInfoReq.publicTime = publicTimeRange.join('~'));
 
-              // 第10步 公示时间数据
-              (publicTimeRange?.length === 2) && (progressInfoReq.publicTime = publicTimeRange.join('~'));
+                // 第16步 预备期数据
+                (readyDeadlineRange?.length === 2) && (progressInfoReq.readyDeadline = readyDeadlineRange.join('~'));
 
-              // 第16步 预备期数据
-              (readyDeadlineRange?.length === 2) && (progressInfoReq.readyDeadline = readyDeadlineRange.join('~'));
+                // 第21步 预备期数据
+                (readyDeadline1Range?.length === 2) && (progressInfoReq.readyDeadline1 = readyDeadline1Range.join('~'));
 
-              // 第21步 预备期数据
-              (readyDeadline1Range?.length === 2) && (progressInfoReq.readyDeadline1 = readyDeadline1Range.join('~'));
+                // 第25步 公示时间数据
+                (publicTime1Range?.length === 2) && (progressInfoReq.publicTime1 = publicTime1Range.join('~'));
 
-              // 第25步 公示时间数据
-              (publicTime1Range?.length === 2) && (progressInfoReq.publicTime1 = publicTime1Range.join('~'));
+                // 判断当前流程属于第几步
+                progressInfoReq.step = this.getProgressNum(name, reqData, progressInfoReq);
 
-              // 判断当前流程属于第几步
-              progressInfoReq.step = this.getProgressNum(name, reqData, progressInfoReq);
+                if (progressInfoReq.step === 0) { // 不存在流程步骤信息
+                  this.msgSuccess("保存成功!");
 
-              if (progressInfoReq.step === 0) { // 不存在流程步骤信息
-                this.msgSuccess("保存成功!");
+                  // 获取详情信息
+                  this.getViewDetailFullPartyMember(this.currentMemberId);
+                } else if (progressInfoReq.step === -1) {
+                  this.msgError('不存在的流程步骤!');
+                } else { // 其他流程步骤
 
-                // 获取详情信息
-                this.getViewDetailFullPartyMember(this.currentMemberId);
-              } else if (progressInfoReq.step === -1) {
-                this.msgError('不存在的流程步骤!');
-              } else { // 其他流程步骤
+                  // 流程对象参数
+                  progressInfoReq = {
+                    ...progressInfoReq,
+                    ...this.getProgressInfoReqData({ ...reqData })
+                  };
 
-                // 流程对象参数
-                progressInfoReq = {
-                  ...progressInfoReq,
-                  ...reqData
-                };
+                  console.log('progressInfoReq===', progressInfoReq);
 
-                // 保存流程步骤信息
-                addFullPartyMemberProgressInfo(progressInfoReq).then((progressResp) => {
-                  if (progressResp.code === 200) {
-                    this.msgSuccess("保存成功!");
+                  // 移除progressInfoReq对象的属性没有值的元素
+                  Object.keys(progressInfoReq).forEach(item => {
+                    ((progressInfoReq[item] !== 0) && (!progressInfoReq[item] || JSON.stringify(progressInfoReq[item]) === '{}' || JSON.stringify(progressInfoReq[item]) === '[]')) && (delete progressInfoReq[item]);
+                  });
 
-                    // 获取详情信息
-                    this.getViewDetailFullPartyMember(this.currentMemberId);
+                  // 保存流程步骤信息
+                  addFullPartyMemberProgressInfo(progressInfoReq).then((progressResp) => {
+                    if (progressResp.code === 200) {
+                      this.msgSuccess("保存成功!");
+
+                      // 获取详情信息
+                      this.getViewDetailFullPartyMember(this.currentMemberId);
+                    }
+                  });
+                }
+              }
+            });
+          } else { // 非编辑操作模式
+            // 保存基本信息
+            addFullPartyMemberBasicInfo(basicInfoReq).then((basicResp) => {
+              if (basicResp.code === 200) {
+                progressInfoReq.memberId = basicResp.data ?? undefined;
+                if (progressInfoReq.memberId === undefined && progressInfoReq.memberId === null) {
+                  this.msgSuccess("基本信息保存成功!");
+                  return;
+                }
+
+                // 数据保存以后的主键信息
+                this.currentMemberId = progressInfoReq.memberId;
+                this.currentOperateType = 'EDIT';
+
+                // 第7步 思想汇报数据
+                let thoughtReportRecord = [];
+                for (let i = 0; i < thoughtReportRecordList?.length; i++) {
+                  if (thoughtReportRecordList[i].submitTime && thoughtReportRecordList[i].filePath) {
+                    thoughtReportRecord.push(thoughtReportRecordList[i]);
                   }
-                });
+                }
+                (thoughtReportRecord?.length > 0) && (progressInfoReq.thoughtReportRecord = thoughtReportRecord);
+
+                // 第10步 公示时间数据
+                (publicTimeRange?.length === 2) && (progressInfoReq.publicTime = publicTimeRange.join('~'));
+
+                // 第16步 预备期数据
+                (readyDeadlineRange?.length === 2) && (progressInfoReq.readyDeadline = readyDeadlineRange.join('~'));
+
+                // 第21步 预备期数据
+                (readyDeadline1Range?.length === 2) && (progressInfoReq.readyDeadline1 = readyDeadline1Range.join('~'));
+
+                // 第25步 公示时间数据
+                (publicTime1Range?.length === 2) && (progressInfoReq.publicTime1 = publicTime1Range.join('~'));
+
+                // 判断当前流程属于第几步
+                progressInfoReq.step = this.getProgressNum(name, reqData, progressInfoReq);
+
+                if (progressInfoReq.step === 0) { // 不存在流程步骤信息
+                  this.msgSuccess("保存成功!");
+
+                  // 获取详情信息
+                  this.getViewDetailFullPartyMember(this.currentMemberId);
+                } else if (progressInfoReq.step === -1) {
+                  this.msgError('不存在的流程步骤!');
+                } else { // 其他流程步骤
+
+                  // 流程对象参数
+                  progressInfoReq = {
+                    ...progressInfoReq,
+                    ...reqData
+                  };
+
+                  // 移除progressInfoReq对象的属性没有值的元素
+                  Object.keys(progressInfoReq).forEach(item => {
+                    ((progressInfoReq[item] !== 0) && (!progressInfoReq[item] || JSON.stringify(progressInfoReq[item]) === '{}' || JSON.stringify(progressInfoReq[item]) === '[]')) && (delete progressInfoReq[item]);
+                  });
+
+                  // 保存流程步骤信息
+                  addFullPartyMemberProgressInfo(progressInfoReq).then((progressResp) => {
+                    if (progressResp.code === 200) {
+                      this.msgSuccess("保存成功!");
+
+                      // 获取详情信息
+                      this.getViewDetailFullPartyMember(this.currentMemberId);
+                    }
+                  });
+                }
               }
-            }
-          });
+            });
+          }
           // }).catch(() => { });
         } else {
           this.msgError('存在数据配置错误,请修改后再保存!');
@@ -3224,13 +3333,32 @@ export default {
         this.formObj = {
           ...this.formObj,
           formModel: {
-            checkList: [],
-            selected: []
+            thoughtReportRecordList: []
           }
         };
         this.$emit("page-close", 'LIST');
       }).catch(() => { });
     },
+    /**
+     * 编辑模式PDF文件查看按钮事件
+     */
+    handleViewPageCheckClick(pdfFilePath, pdfFileName = 'pdf-file') {
+      if (!pdfFilePath) return;
+      const filePath = `${window.origin}${process.env.VUE_APP_FILE_VIEW_API}${pdfFilePath}`;
+      const fileName = `${pdfFileName}-PDF文件预览`;
+      this.viewPdfFileObj = {
+        filePath,
+        fileName
+      };
+      this.pdfDialogVisible = true;
+    },
+    /**
+     * 编辑模式PDF文件下载按钮事件
+     */
+    handleViewPageDownloadClick(pdfFilePath, pdfFileName = 'pdf-file') {
+      if (!pdfFilePath) return;
+      regularDownloadPdfFile(`${window.origin}${process.env.VUE_APP_FILE_VIEW_API}${pdfFilePath}`, pdfFileName);
+    },
     /**
      * 获取详情信息
      */
@@ -3243,14 +3371,22 @@ export default {
      * 获取节点纵向线的高度
      * @innerWidth [String] 页面当前可视宽度
      * @stepitemObj [Array] 当前节点文件上传字段
-     * @defaultValueObj [Object] {defaultHeight, noDefaultHeight,defaultMarginTop, noDefaultMarginTop}
+     * @defaultValueObj [Object] 默认值对象 {defaultHeight, noDefaultHeight,defaultMarginTop, noDefaultMarginTop}
+     * @baseNum [Strng, Number] 当前步骤标志或基础基数
+     * @list [Array] 动态表单列表数据
+     * @checkFieldStr [String] 编辑模式需要校验的字段信息,多个字段用英文逗号隔开
      */
-    getNodeTabpaneStepTailStyle(innerWidth, stepitemObj, defaultValueObj, baseNum, list = []) {
-      let notEnableBase = 60;
-      let enableBase = 115;
-      let incrementBase = 0;
-      // 处理数据
-      let [enableFlag, notEnableFlag] = [0, 0];
+    getNodeTabpaneStepTailStyle(innerWidth, stepitemObj, defaultValueObj, baseNum, list = [], checkFieldStr) {
+      // 初始化变量数据
+      let [
+        enableBase, // 上传控件完成上传的基数
+        notEnableBase, // 上传控件等待上传的基数
+        incrementBase, // 增量基数
+        enableFlag,  // 传控件完成上传的个数
+        notEnableFlag // 传控件等待上传的个数
+      ] = [115, 60, 0, 0, 0];
+
+      // 过滤上传控件存在值或不存在值的字段个数
       for (let field of stepitemObj) {
         if (!field) {
           continue;
@@ -3265,17 +3401,15 @@ export default {
         incrementBase += baseNum;
       }
 
+      // 校验:在第7步,思想汇报内容动态变动
       if (baseNum === '7' && list.length > 0) {
-        let [listEnableFlag, listNotEnableFlag] = [0, 0];
         for (let baseItem of list) {
           if (!baseItem.filePath) {
             continue;
           } else if (baseItem.filePath === 'ROCPDFUPLOADSELECT') {
             notEnableFlag += 1;
-            listNotEnableFlag += 1;
           } else {
             enableFlag += 1;
-            listEnableFlag += 1;
           }
         }
 
@@ -3286,10 +3420,29 @@ export default {
         }
       }
 
+      // 校验:在第19步,上传控件存在值和不存在值校验
       if (baseNum === '19' && (enableFlag + notEnableFlag) === 2) {
         incrementBase += 2;
       }
 
+      let [hasValueNum, noHasValueNum] = [0, 0];
+
+      // 校验:当为编辑模式,后端存在字段数据
+      if ((this.currentOperateType === 'EDIT') && checkFieldStr) {
+        const checkFieldStrArr = checkFieldStr.split(',');
+        for (let checkFieldItem of checkFieldStrArr) {
+          if (this.viewFullPartyInfoObj[checkFieldItem]) {
+            hasValueNum += 1;
+            continue;
+          }
+
+          noHasValueNum += 1;
+        }
+
+        enableFlag -= hasValueNum;
+        notEnableFlag -= noHasValueNum;
+      }
+
       // 默认
       if (innerWidth > 1200) {
         return {
@@ -3464,6 +3617,107 @@ export default {
       } else {
         return -1;
       }
+    },
+    /**
+     * 获取流程入参对象数据
+     */
+    getProgressInfoReqData(reqData) {
+      // 初始化返回结果对象
+      let resultObj = {};
+      let fieldObjArr = [
+        'submitAddPartyPageTime', // 1 递交入党申请书时间
+        'addPartyPageFile', // 1 入党申请书
+        'partyArrangeTalkTime', // 2 组织派人谈话时间
+        'talkPageFile', // 2 谈话记录
+        'cardOrRegisterBookFile', // 3 身份证或户口本
+        'referrer', // 4 推荐人
+        'referreTime', // 4 推荐入党积极分子时间
+        'referrePageFile', // 4 推荐入党积极分子登记表
+        'meetingResult', // 5 会议结果
+        'branchPartyMeetingTime', // 5 支委会会议时间
+        'branchPartyMeetingFile', // 5 确定为入党积极分子的支委会会议记录
+        'submitRecordRequestTime', // 5 递交备案请示时间
+        'submitRecordRequestFile', // 5 确定为入党积极分子的备案请示
+        'replyResult', // 5 批复结果
+        'replyTime', // 5 获得批复的时间
+        'replyFile', // 5 确定为入党积极分子的批复
+        'confirmActiveMemberTime', // 6 确定为积极分子的时间
+        'cultivateEducationRecordFile', // 6 培养教育考察登记表
+        'courseCompletionTime', // 7 结业时间
+        'certificateOfCompletion', // 7 结业证书
+        'listenToTime', // 8 听取意见时间
+        'listenToFile', // 8 听取意见记录
+        'branchPartyMeetingResult1', // 9 支委会会议结果
+        'branchPartyMeetingTime1', // 9 支委会会议时间
+        'branchPartyMeetingFile1', // 9 支委会会议记录
+        'publicMaterialsFile', // 10 公示材料
+        'recordsRequestTime', // 10 备案请示时间
+        'recordsRequestFile', // 10 备案请示材料
+        'recordsReplyResult', // 10 备案批复结果
+        'recordsReplyTime', // 10 备案批复时间
+        'recordsReplyFile', // 10 备案批复材料
+        'syntheticalPoliticalTime', // 11 综合性政审时间
+        'syntheticalPoliticalReportFile', // 11 综合性政审报告
+        'politicalChecker', // 11 政审人
+        'politicalCheckFile', // 11 政审相关材料
+        'courseCompletionTime1', // 12 结业时间
+        'courseCompletionFile1', // 12 结业证书
+        'checkResult', // 13 审查结果
+        'checkMeetingTime', // 13 审查会议时间
+        'checkMeetingFile', // 13 审查会议记录
+        'reportRequestTime', // 13 上报预审请示时间
+        'reportRequestFile', // 13 上报预审请示材料
+        'readyCheckReplyResult', // 14 预审批复结果
+        'basicReadyCheckMeetingTime', // 14 基层党委预审会议时间
+        'basicReadyCheckMeetingFile', // 14 基层党委预审会议记录
+        'consultationTime', // 15 征求意见时间
+        'consultationConditionFile', // 15 征求意见情况的材料
+        'submitVolunteerBookTime', // 16 递交志愿书时间
+        'submitVolunteerBookFile', // 16 《中国共产党入党志愿书》文件
+        'branchPartyAcceptReadyMemberTime', // 16 支委会接收预备党员的时间
+        'aboutReadyMemberCheckIdeaTime', // 16 关于预备党员基层党委审批意见的时间
+        'branchPartyConfirmTime', // 16 支委会转正的时间
+        'confirmBasicPartyCheckIdeaTime', // 16 转正基层党委审批意见的时间
+        'isPostponeConfirmMember', // 16 是否延期转为正式党员
+        'postponeConfirmMemberParthCheckIdeaTime', // 16 延期转正基层党委审批意见的时间
+        'branchPartyBigMeetingTime', // 17 支部大会的会议时间
+        'branchPartyBigMeetingRecordFile', // 17 支部大会的会议记录
+        'checkRequestTime', // 18 审批请示时间
+        'checkRequestFile', // 18 审批请示材料
+        'replyResult1', // 19 批复结果
+        'basicPartyCheckMeetingTime', // 19 基层党委审批会议时间
+        'basicPartyCheckMeetingRecordFile', // 19 基层党委审批会议记录、会议纪要
+        'replyTime1', // 19 批复时间
+        'replyMaterialsFile1', // 19 批复材料
+        'replyResult2', // 20 批复结果
+        'readyMemberTeachRecordFile', // 21 《预备党员培养考察教育登记表》文件
+        'submitConfirmBookTime', // 22 转正申请书递交时间
+        'submitConfirmBookFile', // 22 转正申请书文件
+        'consultationTime1', // 24 征求意见时间
+        'consultationTalkRecordFile', // 24 征求意见的谈话记录
+        'branchPartyBigMeetingTime1', // 25 支部大会的会议时间
+        'branchPartyBigMeetingRecordFile1', // 25 支部大会的会议记录
+        'publicMaterialsFile1', // 25 公示材料
+        'checkRequestTime1', // 26 审批请示递交时间
+        'checkRequestMaterialsFile1', // 26 审批请示材料
+        'replyResult3', // 27 批复结果
+        'basicPartyCheckMeetingTime1', // 27 基层党委审批会议时间
+        'basicPartyCheckMeetingRecordFile1', // 27 基层党委审批会议记录、会议纪要
+        'replyTime2', // 27 批复时间
+        'replyMaterialsFile', // 27 批复材料
+      ];
+
+      for (let fieldStr of fieldObjArr) {
+        !this.getIsEmpty(reqData[fieldStr]) && (resultObj[fieldStr] = reqData[fieldStr]);
+      }
+
+      return resultObj;
+    },
+    /**
+     * 判断指定变量的值是否为null,空字符串,undefined, {}, []
+     */
+    getIsEmpty(param) {
+      return (param !== 0) && (!param || JSON.stringify(param) === '{}' || JSON.stringify(param) === '[]');
     }
   }
 }

+ 19 - 8
src/views/PartyBuildingMgr/PartyMemberDevelop/PartyMemberDevelopIndex.vue

@@ -3,7 +3,7 @@
  * @Author: Rockery
  * @Date: 2021-12-10 10:37:47
  * @LastEditors: Rockery
- * @LastEditTime: 2022-01-05 10:50:06
+ * @LastEditTime: 2022-01-06 17:17:56
  * @FilePath: \party_construct_web\src\views\PartyBuildingMgr\PartyMemberDevelop\PartyMemberDevelopIndex.vue
  * @Copyright: Copyright (c) 2016~2021 Rockery(1113269755@qq.com)
 -->
@@ -115,11 +115,13 @@
                 style="width: 100%;"
               >
                 <el-table-column label="姓名" prop="name" :show-overflow-tooltip="true" />
-                <el-table-column label="当前待更新节点" prop="flowStatus" :show-overflow-tooltip="true">
-                  <template slot-scope="scope">
-                    <span>{{ nodeDataObj[scope.row.flowStatus] || '-' }}</span>
-                  </template>
-                </el-table-column>
+                <template v-if="tabsModel !== '7'">
+                  <el-table-column label="当前待更新节点" prop="flowStatus" :show-overflow-tooltip="true">
+                    <template slot-scope="scope">
+                      <span>{{ nodeDataObj[scope.row.flowStatus] || '—' }}</span>
+                    </template>
+                  </el-table-column>
+                </template>
                 <el-table-column
                   label="递交入党申请时间"
                   align="center"
@@ -127,10 +129,14 @@
                   :show-overflow-tooltip="true"
                 >
                   <template slot-scope="scope">
-                    <span>{{ parseTime(scope.row.applyAddPartyTime, '{y}-{m}-{d}') || '-' }}</span>
+                    <span>{{ parseTime(scope.row.applyAddPartyTime, '{y}年{m}月{d}日') || '—' }}</span>
+                  </template>
+                </el-table-column>
+                <el-table-column label="备注" prop="remark" :show-overflow-tooltip="true">
+                  <template slot-scope="scope">
+                    <span>{{ scope.row.remark || '—' }}</span>
                   </template>
                 </el-table-column>
-                <el-table-column label="备注" prop="remark" :show-overflow-tooltip="true" />
                 <el-table-column
                   label="操作"
                   align="center"
@@ -195,6 +201,7 @@
           </div>
         </div>
         <update-party-develop
+          :id="currentRow.id"
           :operate-type.sync="operateType"
           @page-submit="handleAddPageSubmitClick"
           @page-close="handleAddPageCloseClick"
@@ -268,6 +275,7 @@ export default {
         }
       ],
       operateType: 'ADD',
+      currentRow: {},
       minTypeOptionObj: { ...MinTypeOptionObj },
       nodeDataObj: { ...NodeDataObj }
     };
@@ -317,6 +325,7 @@ export default {
     /** 新增按钮事件 */
     handleAddClick() {
       this.pageType = 'ADD';
+      this.operateType = 'ADD';
     },
     /** 预备党员转入按钮事件 */
     handleTransferInClick() {
@@ -328,8 +337,10 @@ export default {
     },
     /** 更新按钮事件 */
     handleUpdateClick(row) {
+      if (!row.id) return;
       this.pageType = 'ADD';
       this.operateType = 'EDIT';
+      this.currentRow = row;
     },
     /** 详情按钮事件 */
     handleViewClick(row) {