|
|
@@ -0,0 +1,231 @@
|
|
|
+<template>
|
|
|
+ <!-- 新增期货子账户 -->
|
|
|
+ <a-modal class="commonModal add-futures-son"
|
|
|
+ title="新增期货子账户"
|
|
|
+ v-model:visible="visible"
|
|
|
+ @cancel="cancel"
|
|
|
+ centered
|
|
|
+ :maskClosable="false"
|
|
|
+ width="890px">
|
|
|
+ <template #footer>
|
|
|
+ <a-button key="submit"
|
|
|
+ type="primary"
|
|
|
+ :loading="loading"
|
|
|
+ @click="submit">完成</a-button>
|
|
|
+ </template>
|
|
|
+ <a-form class="inlineForm"
|
|
|
+ ref="formRef"
|
|
|
+ :model="formState"
|
|
|
+ :rules="rules">
|
|
|
+ <a-row :gutter="24">
|
|
|
+ <a-col :span="12">
|
|
|
+ <a-form-item label="所属期货账户"
|
|
|
+ name="userinfotype">
|
|
|
+ <span class="white">王小小/824327648</span>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :span="12">
|
|
|
+ <a-form-item label="账户名称"
|
|
|
+ name="">
|
|
|
+ <a-input class="dialogInput"
|
|
|
+ style="width: 200px"
|
|
|
+ placeholder="请输入账户名称" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :span="12">
|
|
|
+ <a-form-item label="期货保证金"
|
|
|
+ name="">
|
|
|
+ <a-input class="dialogInput"
|
|
|
+ style="width: 200px"
|
|
|
+ placeholder="请输入期货保证金" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :span="12">
|
|
|
+ <a-form-item label="期货手续费"
|
|
|
+ name="">
|
|
|
+ <a-select class="inlineFormSelect"
|
|
|
+ style="width: 200px"
|
|
|
+ placeholder="请选择期货手续费">
|
|
|
+ <a-select-option value="权限一">权限一</a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ </a-form>
|
|
|
+ </a-modal>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script lang="ts">
|
|
|
+import { closeModal } from '@/common/setup/modal/index';
|
|
|
+import { initData } from '@/common/methods/index';
|
|
|
+import { defineComponent, ref, reactive, toRaw, UnwrapRef, watchEffect } from 'vue';
|
|
|
+import { AllEnums } from '@/services/go/commonService/interface';
|
|
|
+import { RuleObject, ValidateErrorEntity } from 'ant-design-vue/es/form/interface';
|
|
|
+import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
|
|
|
+import { bizGroupReq, loginAccountOperate } from '@/services/proto/accountinfo';
|
|
|
+import { ErmcpBizGroupReq, ErmcpBizGroupTAAccount } from '@/services/proto/accountinfo/interface';
|
|
|
+import { ErmcpBizGroupSpotGoods } from '@/services/go/ermcp/account/interface';
|
|
|
+
|
|
|
+export default defineComponent({
|
|
|
+ name: 'account_info_futures_btn_add',
|
|
|
+ components: {},
|
|
|
+ setup() {
|
|
|
+ // 控制关闭弹窗
|
|
|
+ const { visible, cancel } = closeModal('account_info_futures_btn_child_add');
|
|
|
+ const loading = ref<boolean>(false);
|
|
|
+ // 证件类型
|
|
|
+ // const cardTypeList = ref<AllEnums[]>(getCardType());
|
|
|
+ // // 表单
|
|
|
+ // const formRef = ref();
|
|
|
+ // const formState: UnwrapRef<FormState> = reactive(initFormState());
|
|
|
+ // const rules = {
|
|
|
+ // userinfotype: [{ required: true, message: '请选择客户类型', trigger: 'change' }],
|
|
|
+ // customername: [{ required: true, message: '请输入企业名称', trigger: 'blur' }],
|
|
|
+ // nickname: [{ required: true, message: '请输入企业简称', trigger: 'blur' }],
|
|
|
+ // cardtype: [{ required: true, message: '请选择证件类型', trigger: 'change' }],
|
|
|
+ // };
|
|
|
+ // // 下单方法
|
|
|
+ // const { loading, applyAction } = handleApply();
|
|
|
+ // function isPersonal(): boolean {
|
|
|
+ // return formState.userinfotype === '1';
|
|
|
+ // }
|
|
|
+
|
|
|
+ function submit() {
|
|
|
+ let reqParam: ErmcpBizGroupReq = {
|
|
|
+ // BizGroupID: number; // uint64 分组ID(修改/删除必填)
|
|
|
+ // BizType: number; // int32 业务类型 - 1:套保 2:套利
|
|
|
+ // Remark: string; // string 新增/修改备注
|
|
|
+ // ApplySrc: number; // int32 新增/修改来源 - 1:管理端 2:终端
|
|
|
+ // ApplyId: number; // uint64 新增/修改人
|
|
|
+ // SpotGoods: ErmcpBizGroupSpotGoods[]; // ErmcpBizGroupSpotGoods 期货账户分组商品
|
|
|
+ // TAAccount: ErmcpBizGroupTAAccount[]; // ErmcpBizGroupTAAccount 期货账户分组账户
|
|
|
+ // OptType: number; // int32 操作类型 - 1:新增 2:修改 3:删除
|
|
|
+ // AreaUserID: number; // uint64 所属机构
|
|
|
+ };
|
|
|
+
|
|
|
+ requestResultLoadingAndInfo(bizGroupReq, reqParam, loading, ['新增账户成功', '新增账户失败:']).then(() => {
|
|
|
+ cancel();
|
|
|
+ // context.emit('refresh');
|
|
|
+ });
|
|
|
+
|
|
|
+ // formRef.value
|
|
|
+ // .validate()
|
|
|
+ // .then(() => {
|
|
|
+ // const param = toRaw(formState);
|
|
|
+ // applyAction(param);
|
|
|
+ // console.log('values', formState);
|
|
|
+ // })
|
|
|
+ // .catch((error: ValidateErrorEntity<FormState>) => {
|
|
|
+ // console.log('error', error);
|
|
|
+ // });
|
|
|
+ }
|
|
|
+ return {
|
|
|
+ // formState,
|
|
|
+ // rules,
|
|
|
+ // formRef,
|
|
|
+ // cardTypeList,
|
|
|
+ // isPersonal,
|
|
|
+ visible,
|
|
|
+ cancel,
|
|
|
+ // submit,
|
|
|
+ // loading,
|
|
|
+ };
|
|
|
+ },
|
|
|
+});
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less">
|
|
|
+.add-business-info {
|
|
|
+}
|
|
|
+.add-traders {
|
|
|
+}
|
|
|
+.add-managers {
|
|
|
+}
|
|
|
+.add-powers {
|
|
|
+ .powerTable {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ border: 3px solid @m-grey11;
|
|
|
+ background-color: @m-black12;
|
|
|
+ font-size: 14px;
|
|
|
+ color: @m-white0;
|
|
|
+ .flex;
|
|
|
+ flex-direction: column;
|
|
|
+ .ant-checkbox-group.commonCheckboxGroup .ant-checkbox-wrapper {
|
|
|
+ width: 90px;
|
|
|
+ span + span {
|
|
|
+ margin-right: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .powerRow {
|
|
|
+ width: 100%;
|
|
|
+ display: inline-flex;
|
|
|
+ border-bottom: 3px solid @m-grey11;
|
|
|
+ div {
|
|
|
+ align-self: center;
|
|
|
+ align-items: center;
|
|
|
+ }
|
|
|
+ .powerLeft {
|
|
|
+ width: 84px;
|
|
|
+ padding: 0 8px;
|
|
|
+ }
|
|
|
+ .powerMiddle {
|
|
|
+ width: 130px;
|
|
|
+ .flex;
|
|
|
+ flex-direction: column;
|
|
|
+ div {
|
|
|
+ width: 100%;
|
|
|
+ height: 40px;
|
|
|
+ line-height: 40px;
|
|
|
+ padding: 0 8px;
|
|
|
+ border: 3px solid @m-grey11;
|
|
|
+ border-top: 0;
|
|
|
+ }
|
|
|
+ div:last-child {
|
|
|
+ border-bottom: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .powerRight {
|
|
|
+ flex: 1;
|
|
|
+ .flex;
|
|
|
+ flex-direction: column;
|
|
|
+ div {
|
|
|
+ width: 100%;
|
|
|
+ height: 40px;
|
|
|
+ line-height: 40px;
|
|
|
+ padding: 0 8px;
|
|
|
+ justify-content: flex-start;
|
|
|
+ border-bottom: 3px solid @m-grey11;
|
|
|
+ }
|
|
|
+ div:last-child {
|
|
|
+ border-bottom: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.add-futures {
|
|
|
+}
|
|
|
+.add-futures-son {
|
|
|
+}
|
|
|
+.add-arbitrage {
|
|
|
+ .ant-checkbox-group.commonCheckboxGroup .ant-checkbox-wrapper {
|
|
|
+ width: 100px;
|
|
|
+ span + span {
|
|
|
+ margin-right: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .ant-checkbox-group.autoWidth {
|
|
|
+ width: 520px;
|
|
|
+ .ant-checkbox-wrapper {
|
|
|
+ width: auto;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .checkboxGroupItem {
|
|
|
+ .ant-row {
|
|
|
+ margin-bottom: 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</style
|
|
|
+>;
|