Handy_Cao 2 年 前
コミット
3538b8d577

+ 17 - 2
src/packages/mobile/views/bank/sign/Index.vue

@@ -19,9 +19,10 @@
         <template #footer>
             <div class="g-form__footer inset" v-if="bankInfo">
                 <Button type="warning" round block @click="formSubmit"
-                    v-if="bankInfo.signstatus === SignStatus.Signed">解约</Button>
+                    v-if="bankInfo.signstatus === SignStatus.Signed  && cusBank.canrelease === 1">解约</Button>
                 <Button type="danger" round block @click="showComponent(true)"
-                    v-if="[SignStatus.Unsigned, SignStatus.Refuse, SignStatus.Signed].includes(bankInfo.signstatus)">修改</Button>
+                    v-if="[SignStatus.Unsigned, SignStatus.Refuse, SignStatus.Signed].includes(bankInfo.signstatus) && 
+                                 cusBank.canmodifysigninfo === 1">修改</Button>
             </div>
         </template>
         <component ref="componentRef" v-bind="{ isedit }" :is="componentMap.get(componentId)" @closed="closeComponent" v-if="componentId" />
@@ -36,17 +37,31 @@ import { useComponent } from '@/hooks/component'
 import { getSignStatusName, SignStatus } from '@/constants/bank'
 import { useDoCancelBankSign } from '@/business/bank'
 import { useNavigation } from '@mobile/router/navigation'
+import { useRequest } from '@/hooks/request'
+import { queryCusBankSignBank } from '@/services/api/bank'
+import { shallowRef } from 'vue'
 
 const componentMap = new Map<string, unknown>([
     ['edit', defineAsyncComponent(() => import('./components/edit/Index.vue'))],
 ])
 
+const cusBank = shallowRef<Model.CusBankSignBankRsp>({})
 const { componentRef, componentId, openComponent, closeComponent } = useComponent(() => formRefresh())
 const { cancelSubmit, formRefresh, bankInfo } = useDoCancelBankSign()
 const { router } = useNavigation()
 /// 是否修改
 const isedit = ref(false)
 
+/// 查询托管银行信息
+useRequest(queryCusBankSignBank, {
+    onSuccess: (res) => {
+        /// 签约状态
+        if (res.data.length != 0) {
+            cusBank.value = res.data[0]
+        }
+    }
+})
+
 const formSubmit = () => {
     dialog({
         message: '确认解约?',

+ 16 - 4
src/packages/pc/views/account/sign/index.vue

@@ -22,9 +22,10 @@
         <!-- 展开行 -->
         <template #expand="{ row }">
             <div class="buttonbar">
-                <el-button v-if="row.signstatus === SignStatus.Signed" type="danger" size="small"
+                <el-button v-if="row.signstatus === SignStatus.Signed && cusBank.canrelease === 1" type="danger" size="small"
                     @click="openComponent('cancel')">解约</el-button>
-                <el-button v-if="[SignStatus.Unsigned, SignStatus.Refuse, SignStatus.Signed].includes(row.signstatus)"
+                <el-button v-if="[SignStatus.Unsigned, SignStatus.Refuse, SignStatus.Signed].includes(row.signstatus) && 
+                                 cusBank.canmodifysigninfo === 1"
                     type="primary" size="small" @click="openComponent('sign')">修改</el-button>
             </div>
         </template>
@@ -34,11 +35,11 @@
 </template>
 
 <script lang="ts" setup>
-import { shallowRef, defineAsyncComponent, onMounted } from 'vue'
+import { ref, shallowRef, defineAsyncComponent, onMounted } from 'vue'
 import { useComponent } from '@/hooks/component'
 import { useComposeTable } from '@pc/components/base/table'
 import { useRequest } from '@/hooks/request'
-import { queryBankAccountSign } from '@/services/api/bank'
+import { queryBankAccountSign, queryCusBankSignBank } from '@/services/api/bank'
 import { getSignStatusName, SignStatus } from '@/constants/bank'
 import { getCertificateTypeCodeName } from '@/constants/account'
 import { queryUserAccount } from '@/services/api/account'
@@ -54,6 +55,7 @@ const componentMap = new Map<string, unknown>([
 
 const authStatus = shallowRef(AuthStatus.Certified) // 实名认证状态
 const signStatus = shallowRef(SignStatus.Unsigned)
+const cusBank = ref<Model.CusBankSignBankRsp>({})
 
 const { rowKey, expandKeys, rowClick, selectedRow } = useComposeTable<Model.BankAccountSignRsp>({ rowKey: 'applyexchticket' })
 const { loading, dataList, run } = useRequest(queryBankAccountSign, {
@@ -65,6 +67,16 @@ const { loading, dataList, run } = useRequest(queryBankAccountSign, {
     }
 })
 
+/// 查询托管银行信息
+useRequest(queryCusBankSignBank, {
+    onSuccess: (res) => {
+        /// 签约状态
+        if (res.data.length != 0) {
+            cusBank.value = res.data[0]
+        }
+    }
+})
+
 const { componentRef, componentId, openComponent, closeComponent } = useComponent(() => {
     run()
 })