Przeglądaj źródła

fix:劳动合同上传文件更改

刘恒 1 rok temu
rodzic
commit
75df704f04

+ 105 - 7
src/components/PeopleImage/index.vue

@@ -167,15 +167,17 @@
             action=""
             v-if="!isDisabled"
             name="LD_00"
-            :show-file-list="false"
+            :show-file-list="true"
             :http-request="httpRequest"
+            accept=".pdf,.docx"
           >
-            <img v-if="dataForm.LD_00" :src="dataForm.LD_00" class="avatar" />
-            <div v-else class="upload-icon">
+            <!-- <img v-if="dataForm.LD_00" :src="dataForm.LD_00" class="avatar" /> -->
+            <div class="upload-icon">
               <img src="@/assets/image/people/camera.svg" alt="" />
               <div class="el-upload__text">上传资料</div>
             </div>
-            <span class="slot" v-show="dataForm.LD_00">
+
+            <!-- <span class="slot" v-show="dataForm.LD_00">
               <i
                 class="preview"
                 @click.stop="handlePictureCardPreview(dataForm.LD_00)"
@@ -195,15 +197,26 @@
                 />
                 <span class="title">点击重新上传</span>
               </div>
-            </span>
+            </span> -->
           </el-upload>
-          <div
+          <div style="margin-top: 10px">
+            <el-button
+              @click.native="view(dataForm.LD_00)"
+              type="primary"
+              icon="el-icon-view"
+              size="small"
+              label="预览"
+            >
+              预览
+            </el-button>
+          </div>
+          <!-- <div
             class="avatar-uploader"
             v-else
             @click.stop="handlePictureCardPreview(dataForm.LD_00)"
           >
             <img v-if="dataForm.LD_00" :src="dataForm.LD_00" class="avatar" />
-          </div>
+          </div> -->
         </el-form-item>
       </div>
       <div id="ypb">
@@ -521,9 +534,50 @@
       :z-index="9999"
       :url-list="[ProViewImg]"
     />
+
+    <el-dialog
+      title="附件"
+      :visible.sync="fileDialog"
+      width="53%"
+      append-to-body
+    >
+      <div class="block" style="height: 700px; overflow-y: auto">
+        <div style="display: flex; justify-content: center">
+          <el-button
+            type="primary"
+            icon="el-icon-download"
+            size="small"
+            @click="downLoadFile(dataForm.LD_00)"
+          >
+            下载</el-button
+          >
+        </div>
+
+        <vue-office-docx
+          v-show="
+            this.dataForm.LD_00 != null
+              ? this.dataForm.LD_00.includes('.docx')
+              : false
+          "
+          :src="officeFile"
+          :height="'700px'"
+        />
+        <vue-office-pdf
+          v-show="
+            this.dataForm.LD_00 != null
+              ? this.dataForm.LD_00.includes('.pdf')
+              : false
+          "
+          :src="officeFile"
+          :height="'700px'"
+        />
+      </div>
+    </el-dialog>
   </div>
 </template>
 <script>
+import VueOfficeDocx from "@vue-office/docx";
+import VueOfficePdf from "@vue-office/pdf";
 export default {
   name: "PeopleImage",
   props: {
@@ -563,6 +617,8 @@ export default {
   components: {
     "el-image-viewer": () =>
       import("element-ui/packages/image/src/image-viewer"),
+    VueOfficeDocx,
+    VueOfficePdf,
   },
   data() {
     return {
@@ -574,6 +630,8 @@ export default {
       pic6Control: false,
       pic7Control: false,
       showViewer: false,
+      officeFile: "",
+      fileDialog: false,
     };
   },
   watch: {
@@ -588,6 +646,46 @@ export default {
   },
   created() {},
   methods: {
+    //下载附件
+    downLoadFile(row) {
+      // let name = row;
+      let name = row.includes(".pdf") ? "附件.pdf" : "附件.docx";
+      console.log(name);
+      fetch(`${row}`)
+        .then((response) => response.blob())
+        .then((blob) => {
+          this.saveAs(blob, name);
+        })
+        .catch((error) => {});
+    },
+    saveAs(blob, filename) {
+      var link = document.createElement("a");
+      link.href = window.URL.createObjectURL(blob);
+      link.target = "_ blank";
+      link.download = filename;
+      link.click();
+    },
+    //预览劳动合同
+    view(item) {
+      console.log(this.imagesIdList);
+
+      this.fileDialog = true;
+      this.officeFile = this.dataForm.LD_00;
+
+      // const byteString = atob(base64.split(",")[1]);
+      // const mimeString = base64.split(",")[0].split(":")[1].split(";")[0];
+      // const ab = new ArrayBuffer(byteString.length);
+      // const ia = new Uint8Array(ab);
+
+      // for (let i = 0; i < byteString.length; i++) {
+      //   ia[i] = byteString.charCodeAt(i);
+      // }
+
+      // const blob = new Blob([ab], { type: mimeString });
+
+      // this.officeFile = URL.createObjectURL(blob);
+      // console.log(this.officeFile);
+    },
     toItem(item) {
       document
         .getElementById(item._props.name)

+ 77 - 28
src/views/FinancialManagement/ContractManagement/ContractManagement.vue

@@ -146,11 +146,19 @@
       }"
       highlight-current-row
     >
-      <el-table-column type="index" width="50" label="序号"> </el-table-column>
+      <el-table-column align="center" type="index" width="50" label="序号">
+      </el-table-column>
 
-      <el-table-column prop="contractCode" label="合同编码"> </el-table-column>
-      <el-table-column prop="contractName" label="合同名称"> </el-table-column>
-      <el-table-column prop="contractType" label="合同类型" width="230">
+      <el-table-column align="center" prop="contractCode" label="合同编码">
+      </el-table-column>
+      <el-table-column align="center" prop="contractName" label="合同名称">
+      </el-table-column>
+      <el-table-column
+        align="center"
+        prop="contractType"
+        label="合同类型"
+        width="230"
+      >
         <template slot-scope="scope">
           <div>
             {{
@@ -166,7 +174,7 @@
           </div>
         </template>
       </el-table-column>
-      <el-table-column prop="contractName" label="合同状态">
+      <el-table-column align="center" prop="contractName" label="合同状态">
         <template slot-scope="scope">
           {{
             scope.row.contractStatus == "1"
@@ -178,11 +186,26 @@
         </template>
       </el-table-column>
 
-      <el-table-column prop="externalCompaniesName" label="甲方" width="230">
+      <el-table-column
+        align="center"
+        prop="externalCompaniesName"
+        label="甲方"
+        width="230"
+      >
       </el-table-column>
-      <el-table-column prop="internalCompanyName" label="乙方" width="230">
+      <el-table-column
+        align="center"
+        prop="internalCompanyName"
+        label="乙方"
+        width="230"
+      >
       </el-table-column>
-      <el-table-column prop="supplierName" label="供应商名称" width="230">
+      <el-table-column
+        align="center"
+        prop="supplierName"
+        label="供应商名称"
+        width="230"
+      >
         <template slot-scope="scope">
           <div v-for="(item, index) in scope.row.namesimpleList" :key="index">
             {{ index < 3 ? item : "" }}
@@ -204,7 +227,12 @@
           </el-tooltip>
         </template>
       </el-table-column>
-      <el-table-column prop="isOpenContract" label="是否为开口合同" width="160">
+      <el-table-column
+        align="center"
+        prop="isOpenContract"
+        label="是否为开口合同"
+        width="160"
+      >
         <template slot-scope="scope">
           <el-tag
             :type="scope.row.isOpenContract == '0' ? 'success' : 'danger'"
@@ -214,11 +242,21 @@
           </el-tag>
         </template>
       </el-table-column>
-      <el-table-column prop="effectiveDate" label="生效日期" width="180">
+      <el-table-column
+        align="center"
+        prop="effectiveDate"
+        label="生效日期"
+        width="180"
+      >
       </el-table-column>
-      <el-table-column prop="expiringDate" label="失效日期" width="180">
+      <el-table-column
+        align="center"
+        prop="expiringDate"
+        label="失效日期"
+        width="180"
+      >
       </el-table-column>
-      <el-table-column prop="shouldPostponed" label="是否顺延">
+      <el-table-column align="center" prop="shouldPostponed" label="是否顺延">
         <template slot-scope="scope">
           <el-tag
             :type="scope.row.shouldPostponed == '0' ? 'success' : 'danger'"
@@ -228,7 +266,12 @@
           </el-tag>
         </template>
       </el-table-column>
-      <el-table-column prop="shouldPostponedDate" label="顺延时间" width="180">
+      <el-table-column
+        align="center"
+        prop="shouldPostponedDate"
+        label="顺延时间"
+        width="180"
+      >
         <template slot-scope="scope">
           {{ scope.row.dateTime }}
           {{
@@ -244,12 +287,19 @@
       </el-table-column>
 
       <el-table-column
+        align="center"
         prop="shouldPostponedEffectiveDate"
         label="顺延后失效日期"
         width="180"
       >
       </el-table-column>
-      <el-table-column prop="operation" label="操作" width="260" fixed="right">
+      <el-table-column
+        align="center"
+        prop="operation"
+        label="操作"
+        width="260"
+        fixed="right"
+      >
         <template slot-scope="scope">
           <kt-button
             size="small"
@@ -665,11 +715,6 @@
               ></kt-button>
             </div>
 
-            <!-- <vue-doc-preview
-              v-show="item.url != null ? item.url.includes('.doc') : false"
-              :value="base + item.url"
-              :type="'office'"
-            /> -->
             <vue-office-docx
               v-show="item.url != null ? item.url.includes('.docx') : false"
               :src="base + item.url"
@@ -683,7 +728,7 @@
       </div>
     </el-dialog>
 
-    <el-dialog title="合同列表" :visible.sync="tableDialog" width="50%">
+    <el-dialog title="合同列表" :visible.sync="tableDialog" width="60%">
       <el-table
         ref="multipleTable"
         :data="statusTable"
@@ -711,6 +756,11 @@
         </el-table-column>
         <el-table-column prop="expiringDate" label="失效日期">
         </el-table-column>
+        <el-table-column
+          prop="shouldPostponedEffectiveDate"
+          label="顺延后失效日期"
+        >
+        </el-table-column>
       </el-table>
       <span slot="footer" class="dialog-footer">
         <el-button @click="tableDialog = false">取 消</el-button>
@@ -952,7 +1002,7 @@
                   <div style="width: 100%; display: flex; align-items: center">
                     <el-radio
                       :disabled="item.shouldPostponed != 0"
-                      v-model="date"
+                      v-model="item.dateType"
                       label="year"
                       >年</el-radio
                     >
@@ -960,7 +1010,7 @@
                       :disabled="date != 'year'"
                       size="small"
                       style="width: 180px"
-                      v-model="year"
+                      :value="item.dateType == 'year' ? item.dateTime : ''"
                       @input="(value) => (year = value.replace(/[^\d]/g, ''))"
                       placeholder="请输入年"
                       @change="timeChange('year')"
@@ -969,7 +1019,7 @@
                   <div style="width: 100%; display: flex; align-items: center">
                     <el-radio
                       :disabled="item.shouldPostponed != 0"
-                      v-model="date"
+                      v-model="item.dateType"
                       label="month"
                       >月</el-radio
                     >
@@ -977,7 +1027,7 @@
                       :disabled="date != 'month'"
                       size="small"
                       style="width: 180px"
-                      v-model="month"
+                      :value="item.dateType == 'month' ? item.dateTime : ''"
                       @input="(value) => (month = value.replace(/[^\d]/g, ''))"
                       placeholder="请输入月"
                       @change="timeChange('month')"
@@ -986,7 +1036,7 @@
                   <div style="width: 100%; display: flex; align-items: center">
                     <el-radio
                       :disabled="item.shouldPostponed != 0"
-                      v-model="date"
+                      v-model="item.dateType"
                       label="day"
                       >天</el-radio
                     >
@@ -994,7 +1044,7 @@
                       :disabled="date != 'day'"
                       size="small"
                       style="width: 180px"
-                      v-model="days"
+                      :value="item.dateType == 'day' ? item.dateTime : ''"
                       @input="(value) => (days = value.replace(/[^\d]/g, ''))"
                       placeholder="请输入天"
                       @change="timeChange('days')"
@@ -1023,7 +1073,7 @@
                     :file-list="item.contractFileEntityList"
                     :http-request="httpRequest"
                     :on-remove="handleRemove"
-                    accept=".pdf,.doc,.docx"
+                    accept=".pdf,.docx"
                   >
                     <el-button size="small" type="primary">点击上传</el-button>
                     <!-- <div slot="tip" class="el-upload__tip">
@@ -1070,7 +1120,6 @@ export default {
     VueOfficeDocx,
     VueOfficePdf,
     KtButton,
-    KtButton,
     VueDocPreview,
   },
   data() {

+ 1 - 1
src/views/FinancialManagement/ExpenseManagement/ExpenseComponent.vue

@@ -137,7 +137,7 @@
             <el-form-item label="账户简称" prop="ssd">
               <el-input
                 v-model="formData.simpleName"
-                placeholder="请输入账户简称"
+                placeholder="请输入账户简称(仅支持中文)"
                 @input="handleInput"
               ></el-input>
             </el-form-item>

+ 244 - 200
src/views/PeopleManage/Agent/AgentManage.vue

@@ -43,26 +43,41 @@
             @handleSearchList="handleSearchList"
             :pagination="pageData"
           >
-          <template slot="sex" slot-scope="scope">
-            <el-tag
-              v-if="scope.row.sex"
-              :type="scope.row.sex == '女' ? 'danger' :
-              scope.row.sex == '男' ? '' : 'warning'"
-              effect="plain">
-              {{ scope.row.sex }}
-            </el-tag>
-          </template>
-          <template slot="status" slot-scope="scope">
-            <el-tag
-            :type="scope.row.status == '在职' ? 'success' :
-               scope.row.status == '离司' ? 'info' :
-               scope.row.status == '入司待审核' ? 'warning' :
-               scope.row.status == '修改待审核' ? 'warning' :
-               scope.row.status == '离司待审核' ? 'warning' : 'danger'"
-              effect="plain">
-              {{ scope.row.status }}
-            </el-tag>
-          </template>
+            <template slot="sex" slot-scope="scope">
+              <el-tag
+                v-if="scope.row.sex"
+                :type="
+                  scope.row.sex == '女'
+                    ? 'danger'
+                    : scope.row.sex == '男'
+                    ? ''
+                    : 'warning'
+                "
+                effect="plain"
+              >
+                {{ scope.row.sex }}
+              </el-tag>
+            </template>
+            <template slot="status" slot-scope="scope">
+              <el-tag
+                :type="
+                  scope.row.status == '在职'
+                    ? 'success'
+                    : scope.row.status == '离司'
+                    ? 'info'
+                    : scope.row.status == '入司待审核'
+                    ? 'warning'
+                    : scope.row.status == '修改待审核'
+                    ? 'warning'
+                    : scope.row.status == '离司待审核'
+                    ? 'warning'
+                    : 'danger'
+                "
+                effect="plain"
+              >
+                {{ scope.row.status }}
+              </el-tag>
+            </template>
           </templateTable>
         </SplitArea>
         <!-- 右侧列表页面End -->
@@ -153,21 +168,29 @@
             <el-row>
               <el-col :span="8">
                 <el-form-item label="工号" prop="id">
-                  <el-input v-model="formData.id" disabled
-              style="width: 100%"
-              ></el-input>
+                  <el-input
+                    v-model="formData.id"
+                    disabled
+                    style="width: 100%"
+                  ></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="8">
                 <el-form-item label="姓名" prop="name">
-                  <el-input v-model="formData.name" placeholder="请输入本人姓名" style="width: 100%"
-              ></el-input>
+                  <el-input
+                    v-model="formData.name"
+                    placeholder="请输入本人姓名"
+                    style="width: 100%"
+                  ></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="8">
                 <el-form-item label="手机号" prop="mobile">
-                  <el-input v-model="formData.mobile" placeholder="请输入本人手机号" style="width: 100%"
-              ></el-input>
+                  <el-input
+                    v-model="formData.mobile"
+                    placeholder="请输入本人手机号"
+                    style="width: 100%"
+                  ></el-input>
                 </el-form-item>
               </el-col>
             </el-row>
@@ -243,13 +266,18 @@
               </el-col>
               <el-col :span="8">
                 <el-form-item label="管理人工号" prop="leaderName">
-                  <el-input v-model="formData.leaderId" disabled
-              style="width: 100%"
-              ></el-input>
+                  <el-input
+                    v-model="formData.leaderId"
+                    disabled
+                    style="width: 100%"
+                  ></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="8">
-                <el-form-item label="代理人资格证号" prop="agentQualificationCode">
+                <el-form-item
+                  label="代理人资格证号"
+                  prop="agentQualificationCode"
+                >
                   <el-input
                     style="width: 100%"
                     v-model="formDataDetail.agentQualificationCode"
@@ -279,9 +307,11 @@
               </el-col>
               <el-col :span="8">
                 <el-form-item label="推荐人工号" prop="referrerName">
-                  <el-input v-model="formData.referrerId" disabled
-              style="width: 100%"
-              ></el-input>
+                  <el-input
+                    v-model="formData.referrerId"
+                    disabled
+                    style="width: 100%"
+                  ></el-input>
                 </el-form-item>
               </el-col>
             </el-row>
@@ -290,10 +320,7 @@
             <el-button
               size="small"
               type="primary"
-              style="
-                border: 1px solid #D42426;
-                color: #D42426;
-              "
+              style="border: 1px solid #d42426; color: #d42426"
               class="closeBtn"
               @click="closeDialog"
               >取消</el-button
@@ -316,10 +343,7 @@
             <el-button
               size="small"
               type="primary"
-              style="
-                border: 1px solid #D42426;
-                color: #D42426;
-              "
+              style="border: 1px solid #d42426; color: #d42426"
               class="closeBtn"
               @click="closeDialog"
               >取消</el-button
@@ -351,10 +375,7 @@
             <el-button
               size="small"
               type="primary"
-              style="
-                border: 1px solid #D42426;
-                color: #D42426;
-              "
+              style="border: 1px solid #d42426; color: #d42426"
               class="closeBtn"
               @click="closeDialog"
               >取消</el-button
@@ -401,14 +422,26 @@
               <i v-else class="el-icon-plus avatar-uploader-icon"></i> -->
               <img v-if="logoutImg" :src="logoutImg" class="avatar" />
               <div v-else class="upload-icon">
-                <img src="@/assets/image/people/camera.svg" alt="">
+                <img src="@/assets/image/people/camera.svg" alt="" />
                 <div class="el-upload__text">上传资料</div>
               </div>
               <span class="slot" v-show="logoutImg">
-                <i class="preview" @click.stop="handlePictureCardPreview(logoutImg)"></i>
-                <img class="close"  src="@/assets/image/people/close.png" alt="" @click.stop="handlePictureCardDelete('LZ_01')">
-                <div  class="bottomHandle">
-                  <img class="reset" src="@/assets/image/people/reset.png" alt="">
+                <i
+                  class="preview"
+                  @click.stop="handlePictureCardPreview(logoutImg)"
+                ></i>
+                <img
+                  class="close"
+                  src="@/assets/image/people/close.png"
+                  alt=""
+                  @click.stop="handlePictureCardDelete('LZ_01')"
+                />
+                <div class="bottomHandle">
+                  <img
+                    class="reset"
+                    src="@/assets/image/people/reset.png"
+                    alt=""
+                  />
                   <span class="title">点击重新上传</span>
                 </div>
               </span>
@@ -421,8 +454,13 @@
         <el-button @click="closeDialogOut">取消</el-button>
       </div>
     </el-dialog>
-    <personnelHistory ref="personnelHistory" ></personnelHistory>
-    <el-image-viewer v-if="showViewer" :on-close="closeViewer" :z-index="9999" :url-list="[ProViewImg]" />
+    <personnelHistory ref="personnelHistory"></personnelHistory>
+    <el-image-viewer
+      v-if="showViewer"
+      :on-close="closeViewer"
+      :z-index="9999"
+      :url-list="[ProViewImg]"
+    />
   </div>
 </template>
 
@@ -446,7 +484,8 @@ export default {
     peopleImage,
     userDetail,
     personnelHistory,
-    "el-image-viewer": () => import("element-ui/packages/image/src/image-viewer")
+    "el-image-viewer": () =>
+      import("element-ui/packages/image/src/image-viewer"),
   },
   mixins: [mixin],
   data() {
@@ -547,16 +586,16 @@ export default {
             type: "text",
           },
           {
-          prop: "approveBy",
-          label: "审核人",
-          type: "text",
-          minWidth: 100,
-        },
+            prop: "approveBy",
+            label: "审核人",
+            type: "text",
+            minWidth: 100,
+          },
           {
             name: "status",
             label: "状态",
             type: "slot",
-            width: 120
+            width: 120,
           },
         ],
         loading: true,
@@ -570,7 +609,8 @@ export default {
             perm: "sys:agent:edit",
             icon: "fa fa-edit",
             hide: (row) => {
-              return row.status == "在职";
+              //return row.status == "在职";
+              return true;
             },
             click: (row, index) => {
               return this.handleTableEdit(row);
@@ -660,7 +700,7 @@ export default {
       user_statusoptions: [],
       pdeptId: null,
       showViewer: false,
-      ProViewImg: null
+      ProViewImg: null,
     };
   },
   created() {
@@ -676,26 +716,28 @@ export default {
   methods: {
     // 离司恢复
     handleRest(data) {
-      this.$confirm('是否恢复', '提示', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          type: 'warning'
-        }).then((res) => {
-          if (res == 'confirm') {
+      this.$confirm("是否恢复", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then((res) => {
+          if (res == "confirm") {
             this.$api.user.separationReinstatement(data.userId).then((res) => {
               if (res.code == 200) {
                 this.$message({
-                  type: 'success',
-                  message: res.msg
+                  type: "success",
+                  message: res.msg,
                 });
-                this.findPage()
+                this.findPage();
               }
-            })
+            });
           }
-        }).catch(() => {
+        })
+        .catch(() => {
           this.$message({
-            type: 'info',
-            message: '已取消'
+            type: "info",
+            message: "已取消",
           });
         });
     },
@@ -854,11 +896,11 @@ export default {
       this.pdeptId = this.currentTreeNode.parentId;
       this.pageData.pageNum = 1;
       this.$api.user
-      .selectfindByreferrerId({ deptId: this.deptId })
-      .then((res) => {
-        this.recommenderOptions = res.data;
-        // console.log(res.data, this.recommenderOptions)
-      });
+        .selectfindByreferrerId({ deptId: this.deptId })
+        .then((res) => {
+          this.recommenderOptions = res.data;
+          // console.log(res.data, this.recommenderOptions)
+        });
       this.findPage();
       this.searchLeaderFun();
       // this.formData.deptId = [];
@@ -966,7 +1008,9 @@ export default {
           });
         }
         res.data.sysUser.status += "";
-        res.data.sysUser.identityTimeArr = res.data.sysUser.identityTime ? res.data.sysUser.identityTime.split(',') : []
+        res.data.sysUser.identityTimeArr = res.data.sysUser.identityTime
+          ? res.data.sysUser.identityTime.split(",")
+          : [];
         this.formData = res.data.sysUser;
         if (this.formData.status == 0) {
           this.$set(this.formDataRules, "logoutTime", [
@@ -1026,7 +1070,7 @@ export default {
         status: "2",
         referrerId: "",
         deptId: this.deptId,
-        pdeptId: this.pdeptId
+        pdeptId: this.pdeptId,
       };
       this.formDataDetail = {};
       this.activeName = "1";
@@ -1045,14 +1089,14 @@ export default {
       // 清空数据
       this.deptInfo = {};
       this.dialogVisible = false;
-      this.activeName = '1'
+      this.activeName = "1";
     },
     valids(data) {
-      this.detailValid = data
+      this.detailValid = data;
     },
     // 提交
     submitForm() {
-      this.$refs.formDataDetails.submit()
+      this.$refs.formDataDetails.submit();
       setTimeout(() => {
         this.$refs.formData.validate((valid) => {
           if (valid && this.detailValid) {
@@ -1131,10 +1175,9 @@ export default {
               }
             });
           } else {
-            this.$message.error('请填写全部信息')
+            this.$message.error("请填写全部信息");
           }
         });
-
       }, 500);
     },
     // 下一步
@@ -1146,18 +1189,18 @@ export default {
       });
     },
     //查看人员修改记录
-    async checkHistory(row){
+    async checkHistory(row) {
       let userId = row.userId;
       this.$refs.personnelHistory.getHistory(userId);
     },
-    handlePictureCardDelete(){
+    handlePictureCardDelete() {
       this.logoutImg = null;
     },
     //预览图片
     handlePictureCardPreview(img) {
-      if(!img){
-        this.$message.error('暂无照片')
-        return
+      if (!img) {
+        this.$message.error("暂无照片");
+        return;
       }
       this.ProViewImg = img;
       this.showViewer = true;
@@ -1259,59 +1302,59 @@ export default {
   }
   .el-button--primary,
   .el-button--primary:focus {
-    background-color: #D42426;
-    border-color: #D42426;
+    background-color: #d42426;
+    border-color: #d42426;
   }
 }
 .select-prop {
   .el-select-dropdown__item.selected,
   .el-date-table td.available:hover {
-    color: #D42426;
+    color: #d42426;
   }
   .el-date-table td.current:not(.disabled) span {
-    background-color: #D42426;
+    background-color: #d42426;
   }
 }
 </style>
 
 <style lang="scss" scoped>
 /deep/ .el-tag--plain {
-  background: rgba(93,125,255,0.1);
+  background: rgba(93, 125, 255, 0.1);
   border-radius: 4px;
-  border: 1px solid #5D7DFF;
+  border: 1px solid #5d7dff;
 }
 /deep/ .el-tag--plain.el-tag--danger {
-  background: rgba(240,85,82,0.1);
+  background: rgba(240, 85, 82, 0.1);
   border-radius: 4px 4px 4px 4px;
-  border: 1px solid #F05552;
+  border: 1px solid #f05552;
 }
 /deep/ .el-tag--plain.el-tag--info {
-  background: rgba(158,158,158,0.1);
+  background: rgba(158, 158, 158, 0.1);
   border-radius: 4px 4px 4px 4px;
-  border: 1px solid #9E9E9E;
+  border: 1px solid #9e9e9e;
 }
 
 /deep/ .el-tag--plain.el-tag--success {
-  background: rgba(81,189,44,0.1);
+  background: rgba(81, 189, 44, 0.1);
   border-radius: 4px 4px 4px 4px;
-  border: 1px solid #51BD2C;
+  border: 1px solid #51bd2c;
 }
 
 /deep/ .el-tag--plain.el-tag--warning {
-  background: rgba(242,153,47,0.1);
+  background: rgba(242, 153, 47, 0.1);
   border-radius: 4px 4px 4px 4px;
-  border: 1px solid #F2992F;
+  border: 1px solid #f2992f;
 }
 </style>
 
 <style lang="scss" scoped>
 .people-style {
   // max-height: 500px;
-  .footerHandle{
+  .footerHandle {
     // border-radius: 6px;
     border-top: 1px solid #f2f2f2;
     margin-top: 0 !important;
-    .el-button{
+    .el-button {
       width: 90px;
       height: 36px;
       font-size: 16px;
@@ -1319,119 +1362,119 @@ export default {
       font-weight: 310;
     }
   }
-  .peopleImage{
+  .peopleImage {
     padding: 0 !important;
     margin: 0 0 0 6px !important;
   }
-  .closeBtn{
+  .closeBtn {
     background: #fff !important;
   }
-  .el-col{
+  .el-col {
     width: calc(33.3333% - 20px);
     margin-right: 20px;
   }
-  .personnelInformation{
+  .personnelInformation {
     padding: 0 !important;
     margin: 0 0 0 20px !important;
     max-height: 470px;
-    .el-form-item{
+    .el-form-item {
       width: 100%;
       margin-bottom: 20px;
       margin-right: 0px;
-      >>>.el-form-item__label{
+      >>> .el-form-item__label {
         font-size: 14px;
         line-height: 16px;
         color: #262626;
         padding-bottom: 10px;
       }
-      >>>.el-input__inner{
-      padding-left: 10px !important;
-      font-size: 14px;
-      font-weight: 500;
-      color: #333;
-      font-family: PingFang SC, PingFang SC;
-      border: 1px solid #eee;
-      &::placeholder{
-        color: #999999;
-        font-weight: 300;
+      >>> .el-input__inner {
+        padding-left: 10px !important;
+        font-size: 14px;
+        font-weight: 500;
+        color: #333;
+        font-family: PingFang SC, PingFang SC;
+        border: 1px solid #eee;
+        &::placeholder {
+          color: #999999;
+          font-weight: 300;
+        }
       }
-    }
-    >>>.el-textarea__inner{
-      padding: 10px;
-      border: 1px solid #eeeeee;
-      font-weight: 500;
-      font-size: 14px;
-      color: #333;
-      font-family: PingFang SC, PingFang SC;
-      &::placeholder{
-        color: #999999;
-        font-weight: 300;
+      >>> .el-textarea__inner {
+        padding: 10px;
+        border: 1px solid #eeeeee;
+        font-weight: 500;
+        font-size: 14px;
+        color: #333;
+        font-family: PingFang SC, PingFang SC;
+        &::placeholder {
+          color: #999999;
+          font-weight: 300;
+        }
       }
-    }
-    >>>.el-input.is-disabled{
-      .el-input__inner{
-        background: #fff;
+      >>> .el-input.is-disabled {
+        .el-input__inner {
+          background: #fff;
+        }
+      }
+      >>> .el-form-item__error {
+        padding-top: 0;
+        margin-top: 8px;
+        font-size: 12px;
+        color: #d42426;
+        position: relative;
       }
-    }
-    >>>.el-form-item__error{
-      padding-top: 0;
-      margin-top: 8px;
-      font-size: 12px;
-      color: #D42426;
-      position: relative;
-    }
     }
   }
-  /deep/ .el-date-editor{
+  /deep/ .el-date-editor {
     position: relative;
-      .el-input__prefix{
-        // color: #D42426;
-        // position: absolute;
-        // right: 5px;
-        // left: auto;
-        // display: none;
-        background-image: url('~@/assets/image/people/rili.svg'); /* 替换为你的新图标路径 */
-        background-size: cover; /* 覆盖整个元素 */
-        background-repeat: no-repeat; /* 不重复背景图片 */
-        height: 15px; /* 根据实际情况调整高度 */
-        width: 17px; /* 根据实际情况调整宽度 */
-        position: absolute;
-        right: 10px;
-        top: 9px;
-        left: auto;
-        .el-icon-date::before{
-          content: '';
-        }
-      }
-      .el-input__suffix{
-        position: absolute;
-        right: 25px;
+    .el-input__prefix {
+      // color: #D42426;
+      // position: absolute;
+      // right: 5px;
+      // left: auto;
+      // display: none;
+      background-image: url("~@/assets/image/people/rili.svg"); /* 替换为你的新图标路径 */
+      background-size: cover; /* 覆盖整个元素 */
+      background-repeat: no-repeat; /* 不重复背景图片 */
+      height: 15px; /* 根据实际情况调整高度 */
+      width: 17px; /* 根据实际情况调整宽度 */
+      position: absolute;
+      right: 10px;
+      top: 9px;
+      left: auto;
+      .el-icon-date::before {
+        content: "";
       }
+    }
+    .el-input__suffix {
+      position: absolute;
+      right: 25px;
+    }
   }
   /deep/ .el-dialog {
     border-radius: 6px;
-    .el-dialog__header{
+    .el-dialog__header {
       height: 50px;
       line-height: 50px;
       padding: 0;
       text-align: center;
       border-top-left-radius: 6px;
       border-top-right-radius: 6px;
-      .el-dialog__title{
+      .el-dialog__title {
         color: #333;
         font-weight: 500;
       }
     }
-    .el-dialog__body{
+    .el-dialog__body {
       background: #fff;
       border-radius: 6px;
     }
   }
-  /deep/ .el-tabs{
-    .el-tabs__header{
+  /deep/ .el-tabs {
+    .el-tabs__header {
       padding: 20px 0;
       margin-bottom: 0;
-      .el-tabs__nav{
+      .el-tabs__nav {
         background: #f7f7f7;
         padding: 0 4px;
         height: 44px;
@@ -1439,7 +1482,7 @@ export default {
         align-items: center;
         justify-content: center;
       }
-      .el-tabs__item{
+      .el-tabs__item {
         width: 120px;
         height: 36px;
         line-height: 36px;
@@ -1449,41 +1492,41 @@ export default {
         color: #333;
         font-weight: 310;
       }
-      .el-tabs__item.is-active{
-        background: #D42426;
+      .el-tabs__item.is-active {
+        background: #d42426;
         color: #fff;
         border-radius: 2px;
       }
-      .el-tabs__active-bar{
+      .el-tabs__active-bar {
         display: none;
       }
-      .el-tabs__nav{
+      .el-tabs__nav {
         left: 50%;
         transform: translateX(-50%) !important;
       }
     }
-    .el-tabs__content{
+    .el-tabs__content {
       border-radius: 6px;
     }
   }
 }
-.dialogOut{
-  .el-form{
+.dialogOut {
+  .el-form {
     padding-top: 10px !important;
   }
-  .el-form-item{
+  .el-form-item {
     display: flex;
     align-items: center;
-    >>>.el-form-item__label{
+    >>> .el-form-item__label {
       padding-bottom: 0 !important;
     }
-    >>>.el-date-editor{
-      .el-input__prefix{
+    >>> .el-date-editor {
+      .el-input__prefix {
         top: 12px !important;
       }
     }
   }
-  .footerHandle{
+  .footerHandle {
     padding: 8px 20px;
   }
   .upload-icon {
@@ -1503,12 +1546,13 @@ export default {
     margin-top: 7px;
     color: #999;
   }
-  .el-upload--picture-card:hover, .el-upload:focus{
+  .el-upload--picture-card:hover,
+  .el-upload:focus {
     color: #333;
   }
   .upload-icon:hover {
     /* border: 1px dashed #2D4D89; */
-    border-color: #D42426;
+    border-color: #d42426;
     /* color: #D42426; */
     transition: all ease 1s;
   }
@@ -1542,7 +1586,7 @@ export default {
     align-items: center;
   }
 
-  .close{
+  .close {
     width: 12px;
     height: 12px;
     position: absolute;
@@ -1550,30 +1594,30 @@ export default {
     right: 0;
     cursor: pointer;
   }
-  .preview{
+  .preview {
     width: 208px;
     height: calc(130px - 24px);
   }
-  .bottomHandle{
+  .bottomHandle {
     width: 208px;
     height: 24px;
     line-height: 20px;
-    background: url('~@/assets/image/people/bottomFrame.png') no-repeat;
+    background: url("~@/assets/image/people/bottomFrame.png") no-repeat;
     position: absolute;
     bottom: 0;
     left: -1px;
     cursor: pointer;
   }
-  .reset{
+  .reset {
     width: 10px;
-    height: 10px
+    height: 10px;
   }
-  .bottomHandle>.title{
+  .bottomHandle > .title {
     font-size: 12px;
     color: #fff;
     padding: 0;
   }
-  .slot>i {
+  .slot > i {
     /* margin: 10px; */
     /* color: #fff; */
     /* font-size: 25px; */
@@ -1583,7 +1627,7 @@ export default {
   .slot:hover {
     opacity: 1;
   }
-  .title{
+  .title {
     font-size: 16px;
     color: #333;
     padding-bottom: 10px;