Quellcode durchsuchen

feat:客户管理-跟单全局设置弹窗

ljc vor 2 Monaten
Ursprung
Commit
d94bc4bc63

+ 1 - 1
components/IbInfo.vue

@@ -177,7 +177,7 @@
             <checkbox-group v-model="ibAgree" @change="onAgreeChange">
               <label class="checkbox">
                 <checkbox value="1" />
-                <text class="crm-cursor" style="text-decoration: underline;" @click="dialogCheckTip = true">{{
+                <text class="crm-cursor" style="text-decoration: underline;">{{
                     t('Home.msg.Agree1') }}</text>
               </label>
             </checkbox-group>

+ 114 - 0
pages/ib/components/documentaryDialog.vue

@@ -0,0 +1,114 @@
+<template>
+  <cwg-popup :title="t('Documentary.AgentBackground.item1')" :visible="visible"  @close="closeDia" @confirm="confirmDia">
+    <view class="dialog-content">
+      <uni-forms :model="formData" labelWidth="200" label-position="top" class="crm-form">
+        <uni-forms-item label="CID">
+          <uni-easyinput disabled :clearable="false" v-model="formData.cId"
+                         :placeholder="t('placeholder.input')" />
+        </uni-forms-item>
+        <uni-forms-item :label="t('Documentary.AgentBackground.item2')">
+          <cwg-combox v-model:value="formData.permissionDisplay" :options="[
+              {
+                text: t('Documentary.AgentBackground.item16'),
+                value: 1,
+              },
+              {
+                text: t('Documentary.AgentBackground.item15'),
+                value: 2,
+              },
+          ]" />
+        </uni-forms-item>
+        <uni-forms-item class="agree">
+          <checkbox-group v-model="formData.agree" @change="onAgreeChange">
+            <label class="checkbox">
+              <checkbox value="1" />
+              <view style="display: inline">
+                <text class="crm-cursor" >{{t('Documentary.AgentBackground.item3') }}</text>
+                <a v-if="['cn', 'zhHant'].indexOf(lang) != -1" style="color: #4497ff" href="pdf/CopyTradeUserAgreementcn.pdf" target="_blank" >{{t('Documentary.AgentBackground.item4')}}</a>
+                <a
+                  style="color: #4497ff"
+                  href="pdf/CopyTradeUserAgreement.pdf"
+                  target="_blank"
+                  v-else
+                >
+                  {{t('Documentary.AgentBackground.item4')}}
+                </a>
+              </view>
+            </label>
+          </checkbox-group>
+        </uni-forms-item>
+        <uni-forms-item class="prompt" :label="t('Drawer.Label.TemplatePrompt')">
+          <view>
+            <text>{{t('Documentary.AgentBackground.item5')}}</text>
+          </view>
+        </uni-forms-item>
+      </uni-forms>
+    </view>
+  </cwg-popup>
+</template>
+
+<script setup lang="ts">
+  import { ref, reactive, computed, onMounted, onUnmounted, watch } from 'vue'
+  import { onLoad } from '@dcloudio/uni-app'
+  import { useI18n } from 'vue-i18n' // uni-app 中已集成,但需配置
+  import { customApi } from '@/service/custom'
+  import { financialApi } from '@/service/financial'
+  import Config from '@/config/index'
+  import PaymentMethodsList from './components/PaymentMethodsList.vue'
+  import { ibApi } from '@/service/ib'
+  import useUserStore from '@/stores/use-user-store'
+  import { lang } from '@/composables/config'
+
+  const props = defineProps({
+    // 是否显示弹窗
+    visible: {
+      type: Boolean,
+      default: false,
+    },
+    // 详情formData
+    detail: { type: Object, default: () => ({}) },
+  })
+  const { Code, Host80 } = Config
+  const { t } = useI18n()
+  const formData = ref({
+    cId: '',
+    permissionDisplay: '',
+    agree: '',
+  })
+  const emit = defineEmits(['close','showQrCode'])
+
+  onMounted(() => {
+    console.log(props.visible)
+  })
+
+  watch(() => props.detail, (val) => {
+    if (val){
+      formData.value = val
+    }
+  })
+  const onAgreeChange = (e) => {
+    console.log(e)
+    formData.value.agree = e.detail.value.length > 0
+  }
+  const closeDia = () => {
+    emit('close')
+  }
+  const confirmDia = () => {
+    console.log(formData.value)
+    // emit('close')
+  }
+</script>
+<style lang="scss" scoped>
+  @import "@/uni.scss";
+
+  .crm-form {
+    :deep(.uni-forms-item) {
+      margin-bottom: px2rpx(16);
+    }
+
+    :deep(.uni-easyinput__content) {
+      border: none !important;
+      background-color: var(--color-zinc-100) !important;
+    }
+  }
+</style>

+ 27 - 3
pages/ib/customer.vue

@@ -16,8 +16,7 @@
               v-if="statistics.unverifiedNum !== undefined"
               class="count-badge"
             >({{ statistics.unverifiedNum }})
-            </view
-            >
+            </view>
           </view>
           <view
             class="crm-cursor tab-item"
@@ -64,6 +63,7 @@
           </cwg-dropdown>
         </template>
       </cwg-tabel>
+      <DocumentaryDialog :visible="docVisible" @close="close" />
     </view>
   </cwg-page-wrapper>
 </template>
@@ -77,9 +77,9 @@
   import { customApi } from '@/service/custom'
   import { lang } from '@/composables/config'
   import { ibApi } from '@/service/ib'
+  import DocumentaryDialog from '@/pages/ib/components/documentaryDialog.vue'
 
   const { Code } = Config
-
   const statistics = ref({
     unverifiedNum: 0,
     unDepositNum: 0,
@@ -93,6 +93,10 @@
     // 1:未实名 2:未入金 3:已入金
     belongsType: null,
   })
+
+  const formInfoRow = ref({})
+  const docVisible = ref(false)
+
   // 表格列配置
   const columns = ref([
     {
@@ -185,20 +189,39 @@
       {
         label: t('Documentary.AgentBackground.item1'),
         type: 'documentary',
+        row,
         show: true,
       },
       {
         label: t('Home.msg.ibTitle'),
         type: 'applyIb',
+        row,
         show: row.ibStatus == 1 && row.belongsType != 1,
       },
       {
         label: t('Ib.Custom.AccountAdjust'),
         type: 'Point',
+        row,
         show: row.belongsType != 1,
       },
     ].filter((item) => item.show)
   }
+  const handleMenuClick = (item) => {
+    if (item.type == 'documentary') {
+      const { cId, id, permissionDisplay } = item.row
+      formInfoRow.value = {
+        cId, id, permissionDisplay,
+      }
+    } else if (item.type == 'applyIb') {
+      uni.navigateTo({
+        url: '/pages/ib/applyIb/index?cId=' + row.cId,
+      })
+    } else if (item.type == 'Point') {
+      uni.navigateTo({
+        url: '/pages/ib/point/index?cId=' + row.cId,
+      })
+    }
+  }
 
   //获取统计数
   const getStatistics = async () => {
@@ -216,6 +239,7 @@
   }
   onMounted(() => {
     getStatistics()
+    // docVisible.value =true
   })
 
 

+ 1 - 1
pages/mine/improveImmediately.vue

@@ -732,12 +732,12 @@
   import icon_refresh from '@/static/icons/crm-refresh.svg'
   import icon_mobile from '@/static/icons/icon_mobile.svg'
   import icon_arrowR from '@/static/icons/icon_arrowR.svg'
+  import { lang } from '@/composables/config'
 
   const router = useRouter()
   const { t } = useI18n()
   const currentStep = ref<number>(3)
   const formRef = ref()
-  const lang = ref('cn')
   const dialogCheck = ref(null)
   const dialogCheck1 = ref(false)
   const text1 = ref('')