Browse Source

更新党员发展

Rockery 3 years ago
parent
commit
49e4b5aa48

+ 100 - 5
src/components/UpdatePartyDevelop/index.vue

@@ -3,7 +3,7 @@
  * @Author: Rockery
  * @Date: 2021-12-15 17:54:05
  * @LastEditors: Rockery
- * @LastEditTime: 2022-01-05 11:53:55
+ * @LastEditTime: 2022-01-05 17:11:37
  * @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="getEleIsDisabled(['name'])"
+                                              :disabled="currentOperateType === 'EDIT' ||getEleIsDisabled(['name'])"
                                               type="date"
                                               clearable
                                               format="yyyy年MM月dd日"
@@ -330,11 +330,23 @@
                                             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
+                                              class="updatepartydevelop-viewuploadpdffile"
+                                            >
+                                              <div
+                                                @click="handleViewPageCheckClick(formObj.formModel.addPartyPageFile)"
+                                              >查看</div>
+                                              <div
+                                                @click="handleViewPageDownloadClick(formObj.formModel.addPartyPageFile)"
+                                              >下载</div>
+                                            </div>
                                           </el-form-item>
                                         </el-col>
                                       </el-row>
@@ -2836,7 +2848,7 @@ export default {
     },
     // 第1步 入党申请书
     'formObj.formModel.addPartyPageFile'(newValue, oldValue) {
-      if(newValue){
+      if (newValue) {
         this.$refs['updatePartyDevelopFormRef'].clearValidate('addPartyPageFile');
       } else {
         this.$refs["updatePartyDevelopFormRef"].validate('addPartyPageFile');
@@ -2874,6 +2886,9 @@ export default {
       set(val) {
         this.$emit('update:operateType', val);
       }
+    },
+    currentId() {
+      return this.id;
     }
   },
   created() {
@@ -2895,6 +2910,86 @@ export default {
     */
     async initData() {
       await this.getMainOptions();
+      if (this.currentOperateType === 'EDIT') {
+        // this.getViewDetailDataByEdit();
+      }
+    },
+    getViewDetailDataByEdit() {
+      this.formObj.formModel = {};
+      viewDetailFullPartyMember({ memberId: this.currentId }).then((viewResp) => {
+
+        // 初始化数据
+        let tempFormModel = {};
+
+        // 分离数据
+        const { partyMember, flowPointPo } = viewResp.data || {};
+        const { place, address, ...otherPartyMember } = partyMember || {};
+        const { thoughtReportRecord, publicTime, readyDeadline, readyDeadline1, publicTime1, ...otherFlowPointPo } = flowPointPo || {};
+
+        // 籍贯数据
+        if (place) {
+          let placeArr = place.split(',') || [];
+          (placeArr.length === 2) && (tempFormModel.placeList = [placeArr[0], placeArr[1]]);
+        }
+
+        // 现居地数据
+        if (address) {
+          let addressArr = address.split(',') || [];
+          if (addressArr.length >= 3) {
+            tempFormModel.addressList = [
+              addressArr[0],
+              addressArr[1],
+              addressArr[2]
+            ];
+            tempFormModel.detailedAddress = addressArr[3];
+          }
+        }
+
+        // 第7步 思想汇报数据
+        if (thoughtReportRecord === null || thoughtReportRecord?.length === 0) {
+          tempFormModel.thoughtReportRecordList = [
+            {
+              submitTime: null,
+              filePath: null
+            }
+          ];
+        } else {
+          tempFormModel.thoughtReportRecordList = thoughtReportRecord;
+        }
+
+        // 第10步 公示时间数据
+        if (publicTime) {
+          let publicTimeArr = publicTime.split('~') || [];
+          (publicTimeArr.length === 2) && (tempFormModel.publicTimeRange = [publicTimeArr[0], publicTimeArr[1]]);
+        }
+
+        // 第16步 预备期数据
+        if (readyDeadline) {
+          let readyDeadlineArr = readyDeadline.split('~') || [];
+          (readyDeadlineArr.length === 2) && (tempFormModel.readyDeadlineRange = [readyDeadlineArr[0], readyDeadlineArr[1]]);
+        }
+
+        // 第21步 预备期数据
+        if (readyDeadline1) {
+          let readyDeadline1Arr = readyDeadline1.split('~') || [];
+          (readyDeadline1Arr.length === 2) && (tempFormModel.readyDeadline1Range = [readyDeadline1Arr[0], readyDeadline1Arr[1]]);
+        }
+
+        // 第25步 公示时间数据
+        if (publicTime1) {
+          let publicTime1Arr = publicTime1.split('~') || [];
+          (publicTime1Arr.length === 2) && (tempFormModel.publicTime1Range = [publicTime1Arr[0], publicTime1Arr[1]]);
+        }
+
+        tempFormModel = {
+          ...tempFormModel,
+          ...otherPartyMember,
+          ...otherFlowPointPo
+        };
+        console.log('tempFormModel===', tempFormModel);
+        this.viewFullPartyInfoObj = { ...tempFormModel };
+        this.formObj.formModel = { ...tempFormModel };
+      });
     },
     /**
      * 获取主要选项列表
@@ -3024,7 +3119,7 @@ export default {
 
           // 现居地数据
           (addressList?.length > 0) && (basicInfoReq.address = addressList.join(','));
-          detailedAddress && (basicInfoReq.address += detailedAddress);
+          detailedAddress && (basicInfoReq.address += `,${detailedAddress}`);
 
           // 基本信息入参对象
           basicInfoReq = {
@@ -3150,7 +3245,7 @@ export default {
      * @stepitemObj [Array] 当前节点文件上传字段
      * @defaultValueObj [Object] {defaultHeight, noDefaultHeight,defaultMarginTop, noDefaultMarginTop}
      */
-    getNodeTabpaneStepTailStyle(innerWidth, stepitemObj, defaultValueObj, baseNum, list) {
+    getNodeTabpaneStepTailStyle(innerWidth, stepitemObj, defaultValueObj, baseNum, list = []) {
       let notEnableBase = 60;
       let enableBase = 115;
       let incrementBase = 0;

+ 34 - 4
src/components/UpdatePartyDevelop/scss/UpdatePartyDevelop.scss

@@ -85,8 +85,8 @@
           background-color: #de0010;
         }
 
-        .el-tabs__item{
-          &:hover{
+        .el-tabs__item {
+          &:hover {
             color: #de0010;
           }
 
@@ -238,8 +238,8 @@
                 font-weight: 400;
                 color: #c3c3c3;
                 cursor: pointer;
-                
-                &:hover{
+
+                &:hover {
                   border: 1px solid #de0010;
                   color: #de0010;
                 }
@@ -282,6 +282,36 @@
       }
     }
   }
+
+  &-viewuploadpdffile {
+    display: flex;
+    align-items: center;
+    justify-content: right;
+    width: 100%;
+    height: 36px;
+    line-height: 36px;
+
+    div {
+      display: flex;
+      align-items: center;
+      justify-content: center;
+      height: 36px;
+      font-weight: 400;
+      font-style: normal;
+      font-size: 18px;
+      color: rgba(24, 144, 255, 0.996);
+      line-height: 36px;
+      cursor: pointer;
+
+      &:last-child {
+        margin-left: 30px;
+      }
+
+      &:hover {
+        text-decoration: underline;
+      }
+    }
+  }
 }
 
 ::v-deep {