From f63e0073e96abe1e52d74749f408e3f542600a09 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期三, 03 四月 2024 13:27:12 +0800
Subject: [PATCH] 提交一把

---
 company/src/components/business/OperaApplyChangeUnitDetailWindow.vue |  326 ++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 208 insertions(+), 118 deletions(-)

diff --git a/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue b/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue
index 13e9d0e..3231746 100644
--- a/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue
+++ b/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue
@@ -14,32 +14,44 @@
                     <span v-if="model.status === 0">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >寰呯缃�</span></span>
                     <span v-if="model.status === 1">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >寰呭鏍�</span></span>
                     <span v-if="model.status === 2">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >宸茬敓鏁�</span></span>
+                    <span v-if="model.status === 7">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >寰呭嚭鍗�</span></span>
+                    <span v-if="model.status === 9">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >鎶曚繚涓�</span></span>
                     <span v-if="model.status === 3 || model.status === 4">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >閫�鍥炵敵璇�</span></span>
                     <span v-if="model.status === 5 || model.status === 8">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >宸查��鍥�</span></span>
-                    <span v-if="model.status === 7 || model.status === 6">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >宸插叧闂�</span></span>
+                    <span v-if=" model.status === 6">淇濆崟鐘舵�侊細<span  :class="'change-status'+model.status" >宸插叧闂�</span></span>
                     <span>鎻愪氦鏃堕棿锛歿{ model.createDate }}</span>
                   </div>
                   <div class="desc_item_label_right">
-                      <template v-if="userInfo.type === 1">
-                          <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅鐢宠璇﹀崟',apply,model)">瀵煎嚭璇﹀崟</el-button>
-<!--                          <el-button v-if="[0, 2, 3, 10].includes(model.status)" type="danger" @click="$refs.applyReturn.open('鐢宠閫�鍥�', {id: dataId})">鐢宠閫�鍥�</el-button>-->
-                          <el-button v-if="[5, 8].includes(model.status)" type="primary" @click="$refs.editFactoryChange.open('鏇存崲娲鹃仯鍗曚綅鐢宠', {id: dataId, applyChangId: modelId})">鍐嶆鎶曚繚</el-button>
-                          <el-button type="primary" v-if="model.status == 0"   @click="goSign">绛剧讲鐢宠鍗�</el-button>
-                          <el-button v-if="[0, 1, 3, 7].includes(model.status)" type="primary" @click="$refs.add_subtract_return.open('鐢宠閫�鍥�', { id: modelId })">鐢宠閫�鍥�</el-button>
-                          <el-button v-if="model.status == 5" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button>
-                          <el-button v-if="model.status == 5 || model.status == 2" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button>
-                          <el-button v-if="[5, 8].includes(model.status)" type="primary" @click="closeOrder">鍏抽棴璁㈠崟</el-button>
-                      </template>
-                        <template v-else>
-                            <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅鐢宠璇﹀崟',apply,model)">瀵煎嚭璇﹀崟</el-button>
-                           <el-button type="primary" v-if="model.status == 0"   @click="goSign">绛剧讲鐢宠鍗�</el-button>
-                            <el-button v-if="[1,2,4].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button>
-                            <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button>
-                            <el-button v-if="model.solutionType == 0 &&[1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('涓婁紶鎵瑰崟',model,3)">涓婁紶鎵瑰崟</el-button>
-                            <el-button  v-if="model.solutionType == 0 &&[3,4].includes(model.status)"  type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button>
-                            <el-button  v-if="model.solutionType == 0 &&[0,1,3,4].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button>
-                            <el-button  v-if="model.solutionType == 0 &&[2].includes(model.status)"  type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('淇敼鎵瑰崟',model,4)">淇敼鎵瑰崟</el-button>
-                        </template>
+                    <template v-if="userInfo.type === 1">
+                      <el-button type="primary" v-if="[5,8,6].includes(model.status)" @click="$refs.reinsurance.open('鏇存崲娲鹃仯鍗曚綅鐢宠', {id: dataId, applyChangId: modelId})">鍐嶆鎶曚繚</el-button>
+                      <el-button type="primary"  @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅璇︽儏',apply,model,0)">瀵煎嚭璇﹀崟</el-button>
+                      <el-button type="primary" v-if="model.status == 0" @click="getSignLink(0)">绛剧讲鐢宠鍗�</el-button>
+                      <el-button v-if="[0, 1, 3, 7].includes(model.status) && model.solutionType == 0" type="danger" @click="$refs.add_subtract_return.open('鐢宠閫�鍥�', { id: modelId })">鐢宠閫�鍥�</el-button>
+                      <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button>
+                      <el-button v-if="model.status == 2" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button>
+                      <el-button v-if="[5,8].includes(model.status)" type="primary" @click="closeOrder">鍏抽棴璁㈠崟</el-button>
+                    </template>
+                    <template v-if="userInfo.type === 2">
+                      <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅璇﹀崟',apply,model,0)">瀵煎嚭璇﹀崟</el-button>
+                      <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button>
+                      <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button>
+                      <el-button v-if=" model.solutionType == 1 && [1].includes(model.status)" type="primary" @click="$refs.ApplyChangeDetails.open('鎶曚繚瀹℃牳',apply,model,1)">鎶曚繚瀹℃牳</el-button>
+                      <el-button v-if=" model.solutionType == 1 && [0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炵敵璇�',model,1)">閫�鍥炵敵璇�</el-button>
+                      <el-button v-if=" model.solutionType == 1 && [7].includes(model.status)" type="danger" @click="closeOrder">鍏抽棴璁㈠崟</el-button>
+                      <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('涓婁紶鎵瑰崟',model,3)">涓婁紶鎵瑰崟</el-button>
+                      <el-button  v-if="model.solutionType == 0 &&[3,4].includes(model.status)"  type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button>
+                      <el-button  v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button>
+                      <el-button  v-if="model.solutionType == 0 &&[2].includes(model.status)"  type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('淇敼鎵瑰崟',model,4)">淇敼鎵瑰崟</el-button>
+                    </template>
+                    <template  v-if="userInfo.type === 0">
+                      <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅璇﹀崟',apply,model,0)">瀵煎嚭璇﹀崟</el-button>
+                      <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button>
+                      <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button>
+                      <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('涓婁紶鎵瑰崟',model,3)">涓婁紶鎵瑰崟</el-button>
+                      <el-button  v-if="model.solutionType == 0 &&[3,4].includes(model.status)"  type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button>
+                      <el-button  v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button>
+                      <el-button  v-if="model.solutionType == 0 &&[2].includes(model.status)"  type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('淇敼鎵瑰崟',model,4)">淇敼鎵瑰崟</el-button>
+                    </template>
                   </div>
                 </div>
                 <div class="desc_item_from">
@@ -170,6 +182,31 @@
                 </div>
             </div>
         </div>
+      <el-dialog
+          :title="signTitle"
+          :visible.sync="visiblePhone"
+          width="500px"
+          :modal="false"
+          :show-close="false"
+          :close-on-click-modal="false"
+          center>
+        <el-form :model="form" ref="form" :rules="rules">
+          <el-form-item label="鎵嬫満鍙�" prop="phone">
+            <el-input v-model="form.phone" placeholder="璇疯緭鍏�" disabled v-trim/>
+          </el-form-item>
+          <el-form-item label="楠岃瘉鐮�" prop="code">
+            <div style="width: 100%; display: flex; align-items: center;">
+              <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim/>
+              <el-button type="primary" style="margin-left: 15px;" @click="send" v-if="num === 0">鍙戦�侀獙璇佺爜</el-button>
+              <el-button type="primary" style="margin-left: 15px;" v-else>{{num}}s</el-button>
+            </div>
+          </el-form-item>
+        </el-form>
+        <span slot="footer" class="dialog-footer">
+                <el-button type="primary" @click="goSignDo()">纭�  瀹�</el-button>
+                <el-button @click="visiblePhone=false">鍙� 娑�</el-button>
+            </span>
+      </el-dialog>
         <ApplyChangeUnitDetails ref="ApplyChangeDetails" @success="successEvent" />
         <OperaApplyChangeUnitCheckWindow ref="OperaApplyChangeCheckWindow" @success="successEvent" />
         <!--    浼佷笟鐢宠閫�鍥�    -->
@@ -177,7 +214,7 @@
         <add_subtract_return ref="add_subtract_return" @success="successEvent" />
         <!--    鏂板鎶曚繚    -->
         <OperaInsuranceApply ref="OperaInsuranceApply" @success="successEvent" />
-        <!--    鍔犲噺淇濈敵璇�    -->
+        <!--    鏇存崲娲鹃仯鍗曚綅鐢宠    -->
         <additionSubtractionApplication ref="additionSubtractionApplication" @success="successEvent" />
         <!--    鏇存崲娲鹃仯鍗曚綅鐢宠    -->
         <factoryChange ref="factoryChange" @success="successEvent" />
@@ -207,147 +244,200 @@
   applyChagneDetailPage,
   getChangeUnitSignLink
 } from '@/api/business/insuranceApply'
-import { applyChangeOpt } from '@/api/business/applyChange'
+import { applyChangeOpt, getChangeMemberListOnlineSignLink } from '@/api/business/applyChange'
 import OperaInsuranceApply from '@/components/enterprise/OperaInsuranceApplyWindow'
 import { mapState } from 'vuex'
+import { sendSms } from '@/api/business/smsEmail'
 
 export default {
   name: 'OperaApplyChangeDetailWindow',
   extends: BaseOpera,
   components: {
-      GlobalWindow,
+    GlobalWindow,
     ApplyChangeUnitDetails,
     OperaApplyChangeUnitCheckWindow,
-      applyReturn,
-      OperaInsuranceApply,
-      additionSubtractionApplication,
-      factoryChange,
-      add_subtract_return,
-      editFactoryChange,
-      insuranceApplyDetails: () => import ('@/components/business/OperaInsuranceApplyWindow')
+    applyReturn,
+    OperaInsuranceApply,
+    additionSubtractionApplication,
+    factoryChange,
+    add_subtract_return,
+    editFactoryChange,
+    insuranceApplyDetails: () => import('@/components/business/OperaInsuranceApplyWindow')
   },
   data () {
     return {
       // 琛ㄥ崟鏁版嵁
-      dataId:null,
-      modelId:null,
-      apply:{},
+      dataId: null,
+      modelId: null,
+      apply: {},
+      num: 0,
+      timer: null,
+      signTitle: '鎵嬫満鍙烽獙璇�',
       model: {},
+      visiblePhone: false,
       form: {
-          id: null,
-          editDate: ''
+        businessId: null,
+        phone: this.$store.state.userInfo.company.phone,
+        id: null,
+        editDate: '',
+        code: null
       },
       // 楠岃瘉瑙勫垯
       rules: {
       },
       formInline: {
-          applyStatus: '',
-          duId: '',
-          workTypeId: '',
-          memberName: '',
-          types: ''
+        applyStatus: '',
+        duId: '',
+        workTypeId: '',
+        memberName: '',
+        types: ''
       },
       reverse: false,
       radio: 0,
       activities: [],
       tableData: [],
-        list: [],
+      list: [],
       activeName: '0',
-        total: 0,
+      total: 0,
       currentPage: 1
     }
   },
   created () {
-      this.config({
-          api: '/business/insuranceApply',
-          'field.id': 'id'
-      })
+    this.config({
+      api: '/business/insuranceApply',
+      'field.id': 'id'
+    })
   },
-    computed: {
-      ...mapState(['userInfo'])
-    },
+  computed: {
+    ...mapState(['userInfo'])
+  },
   methods: {
-     open(title,target){
-        this.visible = true;
-        this.title = title
-        this.dataId = target.applyId
-        this.modelId = target.id
-        this.getDetail()
-        this.getList()
-     },
-      closeOrder() {
-          this.$confirm('纭鍏抽棴姝よ鍗曞悧?', '鎻愮ず', {
-              confirmButtonText: '纭畾',
-              cancelButtonText: '鍙栨秷',
-              type: 'warning'
-          }).then(() => {
-              applyChangeOpt({
-                  optType: 6,
-                  applyId: this.model.id
-              }).then(res => {
-                  this.getDetail()
-              }).catch(e => {
-                  this.$message.error(e)
-              })
-          }).catch(() => {
+    open (title, target) {
+      this.visible = true
+      this.title = title
+      this.dataId = target.applyId
+      this.modelId = target.id
+      this.form.businessId = target.id
+      this.num=0
+      this.timer=null
+      this.getDetail()
+      this.getList()
+    },
+    send () {
+      sendSms({
+        phone: this.form.phone
+      }).then(res => {
+        this.num = 60
+        this.setTime()
+      })
+    },
+    setTime () {
+      this.timer = setInterval(() => {
+        if (this.num === 0) {
+          clearInterval(this.timer)
+          this.timer = null
+          return
+        }
+        this.num = this.num - 1
+      }, 1000)
+    },
+    getSignLink (flag) {
+      this.signTitle = '绛剧讲鐢宠鍗�'
+      this.form.type = flag
+      this.visiblePhone = true
+      this.$nextTick(() => {
+        this.$refs.form.resetFields()
+      })
+    },
+    goSignDo () {
+      this.$refs.form.validate((valid) => {
+        if (!valid) {
+          return
+        }
+        this.isWorking = true
+        getChangeMemberListOnlineSignLink(this.form).then(res => {
+          setTimeout(() => {
+            this.visiblePhone = false
+            window.open(res)
+          }, 500)
+        }).catch(err => {
+          this.$tip.apiFailed(err)
+        })
+      })
+    },
+    closeOrder () {
+      this.$confirm('纭鍏抽棴姝よ鍗曞悧?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        applyChangeOpt({
+          optType: 6,
+          applyId: this.model.id
+        }).then(res => {
+          this.getDetail()
+        }).catch(e => {
+          this.$message.error(e)
+        })
+      }).catch(() => {
 
-          });
-      },
-      resetting() {
-            this.search()
-      },
-      search() {
-          this.currentPage = 1
-          this.getList()
-      },
-      getList() {
-           applyChagneDetailPage({
-               capacity: 10,
-               page: this.currentPage,
-               model: {
-                   applyChangeId: this.modelId,
-                   types:[2]
-               }
-           }).then(res => {
-               this.list = res.records
-               this.total = res.total
-           })
-      },
-      handleClick(e) {
-        this.activeName = e.index
-        this.resetting()
-      },
-    goSign(){
-      getChangeUnitSignLink({id:this.modelId}).then(res => {
+      })
+    },
+    resetting () {
+      this.search()
+    },
+    search () {
+      this.currentPage = 1
+      this.getList()
+    },
+    getList () {
+      applyChagneDetailPage({
+        capacity: 10,
+        page: this.currentPage,
+        model: {
+          applyChangeId: this.modelId,
+          types: [2]
+        }
+      }).then(res => {
+        this.list = res.records
+        this.total = res.total
+      })
+    },
+    handleClick (e) {
+      this.activeName = e.index
+      this.resetting()
+    },
+    goSign () {
+      getChangeUnitSignLink({ id: this.modelId }).then(res => {
         setTimeout(() => {
           window.open(res)
-        }, 500);
+        }, 500)
       }).catch(err => {
-       this.$tip.apiFailed(err)
+        this.$tip.apiFailed(err)
       })
     },
-    viewApplyFile(){
-       if(this.model.applyUnitFile && this.model.applyUnitFile.fileurlFull){
+    viewApplyFile () {
+      if (this.model.applyUnitFile && this.model.applyUnitFile.fileurlFull) {
         window.open(this.model.applyUnitFile.fileurlFull)
-       }
+      }
     },
-    viewPidan(){
-      if(this.model.pidanFile && this.model.pidanFile.fileurlFull){
+    viewPidan () {
+      if (this.model.pidanFile && this.model.pidanFile.fileurlFull) {
         window.open(this.model.pidanFile.fileurlFull)
       }
     },
-    handleSizeChange(val){
-        console.log(val)
+    handleSizeChange (val) {
+      console.log(val)
     },
-    handleCurrentChange(val){
-        console.log(val)
-        this.page = val
-        this.getList()
+    handleCurrentChange (val) {
+      console.log(val)
+      this.page = val
+      this.getList()
     },
-    onSubmit(){
+    onSubmit () {
 
     },
-    getDetail(){
+    getDetail () {
       getDetail(this.dataId).then(res => {
         this.apply = res
         console.log(this.tableData)
@@ -362,8 +452,8 @@
       }).catch(err => {
       })
     },
-    successEvent(){
-       // this.visible=false
+    successEvent () {
+      // this.visible=false
       this.getDetail()
       this.$emit('success')
     }

--
Gitblit v1.9.3