From fa7e1930e0a2d2c8d426237f7cb03aad8138261c Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期二, 02 四月 2024 18:05:27 +0800
Subject: [PATCH] 提交一把

---
 server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java |    7 -
 company/src/api/business/applyChange.js                                                   |    6 +
 company/src/components/business/OperaWtbApplyShopWindow.vue                               |   12 ++-
 company/src/api/business/insuranceApply.js                                                |    1 
 company/src/components/business/OperaApplyChangeDetailWindow.vue                          |  119 ++++++++++++++++++++++++++++++++-------
 company/src/assets/style/style.scss                                                       |    6 +-
 company/src/views/enterprise/add_subtract.vue                                             |    8 ++
 company/src/views/business/applyChangeShop.vue                                            |    4 +
 8 files changed, 126 insertions(+), 37 deletions(-)

diff --git a/company/src/api/business/applyChange.js b/company/src/api/business/applyChange.js
index de60e43..9c5fa28 100644
--- a/company/src/api/business/applyChange.js
+++ b/company/src/api/business/applyChange.js
@@ -6,7 +6,11 @@
         trim: true
     })
 }
-
+export function getChangeMemberListOnlineSignLink (data) {
+    return request.post('business/applyChange/getChangeMemberListOnlineSignLink', data, {
+        trim: true
+    })
+}
 // 淇敼
 export function updateById (data) {
     return request.post('/business/applyChange/updateById', data)
diff --git a/company/src/api/business/insuranceApply.js b/company/src/api/business/insuranceApply.js
index 998edaa..e0270eb 100644
--- a/company/src/api/business/insuranceApply.js
+++ b/company/src/api/business/insuranceApply.js
@@ -93,6 +93,7 @@
         trim: true
     })
 }
+
 export function getChangeUnitSignLink (data) {
     return request.post('/business/applyChange/getChangeUnitSignLink', data, {
         trim: true
diff --git a/company/src/assets/style/style.scss b/company/src/assets/style/style.scss
index 4edc7ed..ab967af 100644
--- a/company/src/assets/style/style.scss
+++ b/company/src/assets/style/style.scss
@@ -80,7 +80,7 @@
 .apply-status0, .apply-status26,.apply-status20,.apply-status28,
 .apply-status21,.apply-status22,
 .apply-status23,.apply-status2 , .apply-status3, .apply-status10,
-.change-status0,.change-status1,.change-status2,
+.change-status0,.change-status1,.change-status9,
 .settle-status0,.settle-status2,.settle-status3,
 .tax-status0,
 .union-apply-status0,.union-apply-status1,.union-apply-status2,
@@ -90,12 +90,12 @@
 .apply-status1 ,.apply-status24,.apply-status25, .apply-status4, .apply-status6,
 .apply-status7, .apply-status8, .apply-status11,
 .change-status3,.change-status4,.change-status5,.change-status8,
-.settle-status1,
+.settle-status1,.change-status6,
 .tax-status2,.union-apply-status4,
 .du-status2 {
   color: #F95601 !important;
 }
-  .apply-status5,.apply-status27,.change-status7,.settle-status7,
+  .apply-status5,.apply-status27,.change-status7,.settle-status7,.change-status2,
   .tax-status1,.du-status1,.settle-status4 ,.union-apply-status3 {
   color: #00BA92  !important;
 }
diff --git a/company/src/components/business/OperaApplyChangeDetailWindow.vue b/company/src/components/business/OperaApplyChangeDetailWindow.vue
index 74f831a..ed15eb5 100644
--- a/company/src/components/business/OperaApplyChangeDetailWindow.vue
+++ b/company/src/components/business/OperaApplyChangeDetailWindow.vue
@@ -14,6 +14,7 @@
                         <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 === 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>
@@ -23,11 +24,11 @@
                       <template v-if="userInfo.type === 1">
                           <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鍔犲噺淇濊鍗�',apply,model)">瀵煎嚭璇﹀崟</el-button>
                           <el-button v-if="[5, 8].includes(model.status)" type="primary" @click="$refs.reinsurance.open('鍔犲噺淇濈敵璇�', {id: dataId, applyChangId: modelId})">鍐嶆鎶曚繚</el-button>
-                          <el-button type="primary" v-if="model.status == 0" @click="$refs.operaverifyPhoneNumberWindew.open('楠岃瘉鎵嬫満鍙�')">绛剧讲鐢宠鍗�</el-button>
-                          <el-button v-if="[0, 1, 3, 7].includes(model.status)" type="danger" @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 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,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>
+                          <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>
@@ -192,8 +193,32 @@
         <factoryChange ref="factoryChange" @success="successEvent" />
         <!--    鎶曚繚璇︽儏    -->
         <insuranceApplyDetails ref="insuranceApplyDetails" @success="successEvent" />
-        <!--    楠岃瘉鎵嬫満鍙�    -->
-        <operaverifyPhoneNumberWindew ref="operaverifyPhoneNumberWindew" @success="goSign" />
+      <!-- 淇敼鎵嬫満鍙� -->
+      <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>
       <template v-slot:footer>
         <el-button @click="visible=false">杩斿洖</el-button>
       </template>
@@ -209,16 +234,16 @@
 import reinsurance from '@/components/enterprise/reinsurance'
 import factoryChange from '@/components/enterprise/factoryChange'
 import add_subtract_return from '@/components/enterprise/add_subtract_return'
-// import insuranceApplyDetails from '@/components/business/OperaInsuranceApplyWindow'
 import {
   getDetail,
   getChangeDetail,
-  applyChagneDetailPage,
-  getJiajianBaoSignLink
+  applyChagneDetailPage
 } from '@/api/business/insuranceApply'
-import { applyChangeOpt } from '@/api/business/applyChange'
+import { applyChangeOpt ,
+  getChangeMemberListOnlineSignLink} from '@/api/business/applyChange'
+
+import {sendSms} from "@/api/business/smsEmail";
 import OperaInsuranceApply from '@/components/enterprise/OperaInsuranceApplyWindow'
-import operaverifyPhoneNumberWindew from '@/components/business/operaverifyPhoneNumberWindew'
 import { mapState } from 'vuex'
 
 export default {
@@ -232,7 +257,6 @@
       OperaInsuranceApply,
       reinsurance,
       factoryChange,
-      operaverifyPhoneNumberWindew,
       insuranceApplyDetails: () => import ('@/components/business/OperaInsuranceApplyWindow')
   },
   data () {
@@ -241,10 +265,17 @@
       dataId:null,
       modelId:null,
       apply:{},
+      num: 0,
+      timer: null,
+      signTitle: '鎵嬫満鍙烽獙璇�',
       model: {},
+      visiblePhone: false,
       form: {
+          businessId: null,
+          phone: this.$store.state.userInfo.company.phone,
           id: null,
-          editDate: ''
+          editDate: '',
+          code:null
       },
       // 楠岃瘉瑙勫垯
       rules: {
@@ -281,9 +312,62 @@
         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) {
+      if (flag === 0) {
+        this.signTitle = '绛剧讲鏂规纭涔�'
+      } else if (flag === 1) {
+        this.signTitle = '绛剧讲鐢宠鍗�'
+      } else if (flag === 2) {
+        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
+        if(this.form.type===0){
+          getChangeMemberListOnlineSignLink(this.form).then(res => {
+            setTimeout(() => {
+              this.visiblePhone=false
+              window.open(res)
+            }, 500)
+          }).catch(err => {
+            this.$tip.apiFailed(err)
+          })
+        }
+      })
+    },
       resetting() {
             this.search()
       },
@@ -326,15 +410,6 @@
         this.activeName = e.index
         this.resetting()
       },
-    goSign(){
-      getJiajianBaoSignLink({id:this.modelId}).then(res => {
-        setTimeout(() => {
-          window.open(res)
-        }, 500);
-      }).catch(err => {
-       this.$tip.apiFailed(err)
-      })
-    },
     viewApplyFile(){
        if(this.model.applyFile && this.model.applyFile.fileurlFull){
         window.open(this.model.applyFile.fileurlFull)
diff --git a/company/src/components/business/OperaWtbApplyShopWindow.vue b/company/src/components/business/OperaWtbApplyShopWindow.vue
index c8cddd3..5a03b39 100644
--- a/company/src/components/business/OperaWtbApplyShopWindow.vue
+++ b/company/src/components/business/OperaWtbApplyShopWindow.vue
@@ -8,12 +8,12 @@
     >
         <div class="desc">
             <div class="desc_item">
-                <div class="desc_item_label" v-if="userInfo.type === 1 &&(model.statusCollect === 2 || model.statusCollect === 3)">
+                <div class="desc_item_label" v-if="userInfo.type === 1 &&(model.statusCollect ===27)">
                     <div class="desc_item_label_left">
                         <span>淇濋櫓鍒版湡杩樻湁 <b style="color: #F95601;">{{model.loseEfficacyDays ? model.loseEfficacyDays : '-'}}</b> 澶�</span>
-                        <el-button type="primary" v-if="model.statusCollect === 2 || model.statusCollect === 3" @click="$refs.OperaInsuranceApply.open('缁繚', { id: dataId, type: 1 })">涓�閿画淇�</el-button>
-                        <el-button type="primary" v-if="model.statusCollect === 2" @click="$refs.additionSubtractionApplication.open('鍔犲噺淇濈敵璇�', { id: dataId })">鍔犲噺淇濈敵璇�</el-button>
-                        <el-button type="primary" v-if="model.statusCollect === 2" @click="$refs.factoryChange.open('鏇存崲娲鹃仯鍗曚綅鐢宠', { id: dataId })">鏇存崲娲鹃仯鍗曚綅鐢宠</el-button>
+                        <el-button type="primary" v-if="model.status === 27" @click="$refs.OperaInsuranceApply.open('缁繚', { id: dataId, type: 1 })">涓�閿画淇�</el-button>
+                        <el-button type="primary" v-if="model.status === 27" @click="$refs.additionSubtractionApplication.open('鍔犲噺淇濈敵璇�', { id: dataId })">鍔犲噺淇濈敵璇�</el-button>
+                        <el-button type="primary" v-if="model.status === 27" @click="$refs.factoryChange.open('鏇存崲娲鹃仯鍗曚綅鐢宠', { id: dataId })">鏇存崲娲鹃仯鍗曚綅鐢宠</el-button>
                     </div>
                 </div>
                 <div class="desc_item_label">
@@ -489,7 +489,7 @@
 import { findListByDTO as worktypeFindListByDTO } from '@/api/business/worktype'
 import OperaInsuranceApply from '@/components/enterprise/OperaInsuranceApplyWindow'
 import { mapState } from 'vuex'
-import {sendSms, validateCode} from "@/api/business/smsEmail";
+import {sendSms} from "@/api/business/smsEmail";
 
 export default {
   name: 'OperaWtbApplyShopWindow',
@@ -572,6 +572,8 @@
       this.visible = true
       this.title = title
       this.model = {}
+      this.num=0
+      this.timer=null
       this.dataId = null
       this.dataId = target.id
       this.form.businessId = target.id
diff --git a/company/src/views/business/applyChangeShop.vue b/company/src/views/business/applyChangeShop.vue
index dee5508..b61cdf3 100644
--- a/company/src/views/business/applyChangeShop.vue
+++ b/company/src/views/business/applyChangeShop.vue
@@ -12,6 +12,7 @@
           <!--                    3 4 閮芥槸閫�鍥炵敵璇蜂腑-->
           <el-option label="宸查��鍥�" value="5"></el-option>
           <el-option label="宸插叧闂�" value="6"></el-option>
+          <el-option label="寰呭嚭鍗�" value="9"></el-option>
         </el-select>
       </el-form-item>
       <el-form-item label="鎶曚繚浼佷笟" prop="companyId">
@@ -70,6 +71,7 @@
             <span  :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">閫�鍥炵敵璇�</span>
             <span  :class="'change-status'+row.status" v-if="row.status ===5 || row.status === 8">宸查��鍥�</span>
             <span  :class="'change-status'+row.status" v-if="row.status ===6">宸插叧闂�</span>
+            <span  :class="'change-status'+row.status" v-if="row.status ===9">寰呭嚭鍗�</span>
           </template>
         </el-table-column>
         <el-table-column prop="companyName" label="鎶曚繚浼佷笟" min-width="100px"></el-table-column>
@@ -106,7 +108,7 @@
 import TableLayout from '@/layouts/TableLayout'
 import Pagination from '@/components/common/Pagination'
 import OperaApplyChangeDetailWindow from '@/components/business/OperaApplyChangeDetailWindow'
-import {all as solutionAll, all} from '@/api/business/solutions'
+import {all as solutionAll} from '@/api/business/solutions'
 import {pageAll as companyAll} from "@/api/business/company";
 export default {
   name: 'add_subtract',
diff --git a/company/src/views/enterprise/add_subtract.vue b/company/src/views/enterprise/add_subtract.vue
index d93b480..3498a77 100644
--- a/company/src/views/enterprise/add_subtract.vue
+++ b/company/src/views/enterprise/add_subtract.vue
@@ -12,6 +12,7 @@
 <!--                    3 4 閮芥槸閫�鍥炵敵璇蜂腑-->
                     <el-option label="宸查��鍥�" value="5"></el-option>
                     <el-option label="宸插叧闂�" value="6"></el-option>
+                    <el-option label="寰呭嚭鍗�" value="9"></el-option>
                 </el-select>
             </el-form-item>
           <el-form-item label="淇濋櫓鏂规" prop="baseSolutionsId">
@@ -58,12 +59,19 @@
                         <span :class="'change-status'+row.status" v-if="row.status === 1">寰呭鏍�</span>
                         <span :class="'change-status'+row.status" v-if="row.status === 2">宸茬敓鏁�</span>
                         <span :class="'change-status'+row.status" v-if="row.status === 6">宸插叧闂�</span>
+                        <span :class="'change-status'+row.status" v-if="row.status === 9">寰呭嚭鍗�</span>
                         <span :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">鐢宠閫�鍥�</span>
                         <span :class="'change-status'+row.status" v-if="row.status === 5 || row.status === 8">宸查��鍥�</span>
                     </template>
                 </el-table-column>
                 <el-table-column prop="applyCode" label="鍏宠仈淇濆崟鍙�" min-width="100px"></el-table-column>
                 <el-table-column prop="solutionsName" label="淇濋櫓鏂规" min-width="100px"></el-table-column>
+              <el-table-column label="绫诲瀷">
+                <template slot-scope="{row}">
+                  <span style="color: #00BA92" v-if="row.solutionType == 1">濮旀墭鎶曚繚</span>
+                  <span style="color: #F95601;"  v-else>鐩存帴鎶曚繚</span>
+                </template>
+              </el-table-column>
                 <el-table-column prop="addNum" label="鍔犱繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
                 <el-table-column prop="delNum" label="鍑忎繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
                 <el-table-column prop="fee" label="璐圭敤鍙樻洿" min-width="100px"></el-table-column>
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
index 2b869a4..cd8d8b1 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -1749,9 +1749,9 @@
         }
         LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
         Company company = user.getCompany();
-        if(debugModel){
+        /*if(debugModel){
             company = companyMapper.selectById(model.getCompanyId());
-        }
+        }*/
         if(company== null || StringUtils.isBlank( company.getEmail()) || !Constants.equalsInteger(company.getSignStatus(),Constants.THREE)){
             throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝浼佷笟灏氭湭鍏峰鍦ㄧ嚎绛剧珷鏉′欢锛岃鑱旂郴骞冲彴绠$悊鍛樼‘璁");
         }
@@ -1999,9 +1999,6 @@
 
         LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
         Company company = companyMapper.selectById(model.getCompanyId());
-        if(debugModel){
-            company = companyMapper.selectById(model.getCompanyId());
-        }
         if(company== null || StringUtils.isBlank( company.getEmail()) || !Constants.equalsInteger(company.getSignStatus(),Constants.THREE)){
             throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝浼佷笟灏氭湭鍏峰鍦ㄧ嚎绛剧珷鏉′欢锛岃鑱旂郴骞冲彴绠$悊鍛樼‘璁");
         }

--
Gitblit v1.9.3