Handy_Cao 7 kuukautta sitten
vanhempi
commit
ae70107656

+ 11 - 2
src/packages/pc/views/member/institution/broker/components/edit/index.vue

@@ -28,7 +28,8 @@ import { shallowRef, PropType, ref, defineAsyncComponent, onMounted } from 'vue'
 import { ElMessage, FormInstance, FormRules } from 'element-plus'
 import { useComponent } from '@/hooks/component'
 import { i18n } from '@/stores'
-import { roleadd } from '@/services/api/member'
+import { roleadd, initAdd } from '@/services/api/member'
+import { useRequest } from '@/hooks/request'
 import AppSelectMember from '@pc/components/modules/select-member/index.vue'
 import AppSelectMember2 from '@pc/components/modules/select-member2/index.vue'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
@@ -48,7 +49,15 @@ const { global: { t } } = i18n
 const formRef = ref<FormInstance>()
 const show = shallowRef(true)
 const refresh = shallowRef(false)
-const loading = shallowRef(false)
+
+const { data, loading } = useRequest(initAdd, {
+    params: {
+        role: props.record?.roleIds
+    },
+    onError: (err) => {
+        ElMessage.error(err)
+    }
+})
 
 const formData = ref<Partial<Member.RoleAddReq>>({
     roleid: 7

+ 11 - 2
src/packages/pc/views/member/institution/industry/components/edit/index.vue

@@ -29,7 +29,8 @@ import { shallowRef, PropType, onMounted, ref, defineAsyncComponent } from 'vue'
 import { ElMessage, FormInstance, FormRules } from 'element-plus'
 import { i18n } from '@/stores'
 import { useComponent } from '@/hooks/component'
-import { roleadd } from '@/services/api/member'
+import { roleadd, initAdd } from '@/services/api/member'
+import { useRequest } from '@/hooks/request'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
 import AppSelectMember from '@pc/components/modules/select-member/index.vue'
 
@@ -37,7 +38,15 @@ const { global: { t } } = i18n
 const formRef = ref<FormInstance>()
 const show = shallowRef(true)
 const refresh = shallowRef(false)
-const loading = shallowRef(false)
+
+const { data, loading } = useRequest(initAdd, {
+    params: {
+        role: props.record?.roleIds
+    },
+    onError: (err) => {
+        ElMessage.error(err)
+    }
+})
 
 const props = defineProps({
     record: {

+ 12 - 3
src/packages/pc/views/member/institution/marketer/components/edit/index.vue

@@ -31,10 +31,11 @@ import { shallowRef, PropType, ref, defineAsyncComponent, onMounted } from 'vue'
 import { ElMessage, FormInstance, FormRules } from 'element-plus'
 import { useComponent } from '@/hooks/component'
 import { i18n } from '@/stores'
-import { roleadd } from '@/services/api/member'
+import { roleadd, initAdd } from '@/services/api/member'
+import { getCustomerTypeList } from '@/constants/member'
+import { useRequest } from '@/hooks/request'
 import AppSelectMember from '@pc/components/modules/select-member/index.vue'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
-import { getCustomerTypeList } from '@/constants/member'
 
 const props = defineProps({
     record: {
@@ -51,7 +52,15 @@ const { global: { t } } = i18n
 const formRef = ref<FormInstance>()
 const show = shallowRef(true)
 const refresh = shallowRef(false)
-const loading = shallowRef(false)
+
+const { data, loading } = useRequest(initAdd, {
+    params: {
+        role: props.record?.roleIds
+    },
+    onError: (err) => {
+        ElMessage.error(err)
+    }
+})
 
 const formData = ref<Partial<Member.RoleAddReq>>({
     roleid: 8

+ 11 - 2
src/packages/pc/views/member/institution/marketing/components/edit/index.vue

@@ -25,7 +25,8 @@ import { shallowRef, PropType, ref, defineAsyncComponent, onMounted } from 'vue'
 import { ElMessage, FormInstance, FormRules } from 'element-plus'
 import { useComponent } from '@/hooks/component'
 import { i18n } from '@/stores'
-import { roleadd } from '@/services/api/member'
+import { roleadd, initAdd } from '@/services/api/member'
+import { useRequest } from '@/hooks/request'
 import AppSelectMember from '@pc/components/modules/select-member/index.vue'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
 
@@ -44,7 +45,15 @@ const { global: { t } } = i18n
 const formRef = ref<FormInstance>()
 const show = shallowRef(true)
 const refresh = shallowRef(false)
-const loading = shallowRef(false)
+
+const { data, loading } = useRequest(initAdd, {
+    params: {
+        role: props.record?.roleIds
+    },
+    onError: (err) => {
+        ElMessage.error(err)
+    }
+})
 
 const formData = ref<Partial<Member.RoleAddReq>>({
     roleid: 3

+ 11 - 2
src/packages/pc/views/member/institution/operation/components/edit/index.vue

@@ -25,7 +25,8 @@ import { shallowRef, PropType, ref, defineAsyncComponent, onMounted } from 'vue'
 import { ElMessage, FormInstance, FormRules } from 'element-plus'
 import { useComponent } from '@/hooks/component'
 import { i18n } from '@/stores'
-import { roleadd } from '@/services/api/member'
+import { roleadd, initAdd } from '@/services/api/member'
+import { useRequest } from '@/hooks/request'
 import AppSelectMember from '@pc/components/modules/select-member/index.vue'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
 
@@ -44,7 +45,15 @@ const { global: { t } } = i18n
 const formRef = ref<FormInstance>()
 const show = shallowRef(true)
 const refresh = shallowRef(false)
-const loading = shallowRef(false)
+
+const { data, loading } = useRequest(initAdd, {
+    params: {
+        role: props.record?.roleIds
+    },
+    onError: (err) => {
+        ElMessage.error(err)
+    }
+})
 
 const formData = ref<Partial<Member.RoleAddReq>>({
     roleid: 2

+ 11 - 2
src/packages/pc/views/member/institution/self/components/edit/index.vue

@@ -25,7 +25,8 @@ import { shallowRef, PropType, ref, onMounted, defineAsyncComponent } from 'vue'
 import { ElMessage, FormInstance, FormRules } from 'element-plus'
 import { i18n } from '@/stores'
 import { useComponent } from '@/hooks/component'
-import { roleadd } from '@/services/api/member'
+import { initAdd, roleadd } from '@/services/api/member'
+import { useRequest } from '@/hooks/request'
 import AppSelectMember from '@pc/components/modules/select-member/index.vue'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
 
@@ -44,7 +45,15 @@ const { global: { t } } = i18n
 const formRef = ref<FormInstance>()
 const show = shallowRef(true)
 const refresh = shallowRef(false)
-const loading = shallowRef(false)
+
+const { data, loading } = useRequest(initAdd, {
+    params: {
+        role: props.record?.roleIds
+    },
+    onError: (err) => {
+        ElMessage.error(err)
+    }
+})
 
 const formData = ref<Partial<Member.RoleAddReq>>({
     roleid: 6

+ 11 - 3
src/packages/pc/views/member/institution/warehouse/components/edit/index.vue

@@ -25,7 +25,8 @@ import { shallowRef, PropType, defineAsyncComponent, ref, onMounted } from 'vue'
 import { ElMessage, FormInstance, FormRules } from 'element-plus'
 import { i18n } from '@/stores'
 import { useComponent } from '@/hooks/component'
-import { roleadd } from '@/services/api/member'
+import { roleadd, initAdd } from '@/services/api/member'
+import { useRequest } from '@/hooks/request'
 import AppSelectMember from '@pc/components/modules/select-member/index.vue'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
 
@@ -40,12 +41,19 @@ const componentMap = new Map<string, unknown>([
 ])
 const { componentRef, componentId, openComponent, closeComponent } = useComponent()
 
-
 const { global: { t } } = i18n
 const formRef = ref<FormInstance>()
 const show = shallowRef(true)
 const refresh = shallowRef(false)
-const loading = shallowRef(false)
+
+const { data, loading } = useRequest(initAdd, {
+    params: {
+        role: props.record?.roleIds
+    },
+    onError: (err) => {
+        ElMessage.error(err)
+    }
+})
 
 const formData = ref<Partial<Member.RoleAddReq>>({
     roleid: 4

+ 7 - 0
src/services/api/member/index.ts

@@ -398,4 +398,11 @@ export function OrganDetailTradeConfigView(options: CommonFetchOptions<{ request
  */
 export function roleadd(options: CommonFetchOptions<{ request: Member.RoleAddReq; }>) {
     return httpClient.commonRequest('/organDetail/roleadd', 'post', options)
+}
+
+/**
+ * 会员机构管理-->机构管理-->机构角色新增初始化
+ */
+export function initAdd(options: CommonFetchOptions<{ request: Member.InitAddReq; response: Member.InitAddRsp; }>) {
+    return httpClient.commonRequest('/organDetail/initAdd', 'get', options)
 }

+ 160 - 58
src/types/model/member.d.ts

@@ -1911,64 +1911,7 @@ declare namespace Member {
             swapdays: number; // 掉期天数
             transferdepositratio: number; // 转让定金比例(49)持仓定金(52)
         }[];
-        markets: {
-            auctionwrtype: number; // 仓单类型(现货交易) - 1:无仓单 2:有仓单 3;有无仓单均可
-            buyspotrighttype: number;
-            canacceptquote: number; // 确认行权是否接收行情 - 0:不接受 1:接受 [可确认权的挂牌期权市场可配置]
-            cangoodsexercise: number; // [期权]是否可现货行权- 0:否 1:是 是否交收
-            cangoodsexercisetype: number; // 可现货行权期权类型 - 1:认购 2认沽 3:认购认沽 [CanGoodsExercise = 1时可设置]
-            canmanualquotestrike: number; // 是否可手动报行权价- 0:否 1:是 [期权]
-            canmutistage: number; // 是否可多段运行 – 0:不可 1:可 [挂牌期权]
-            canpreexercise: number; // [期权]是否可预申报- 0:否 1:是
-            clearinterval: number; // 待开市间隔(交易市场开盘前多久发市场待开市信号(单位分钟))
-            contracttmp: string; // 合同模板[荷兰式][竞价式][仓单贸易]
-            deliverymode: number; // 交收方式(50模式) 1:配对交收 2:强平日交收
-            exchareaid: number; // 所属交易所,可以没有
-            financemarketid: number; // 融资回购市场ID [仓单贸易]
-            forceclosemode: number; // 定期强平方式 - 1:到期结 2:日结 3:周结 4:月结 [收益权] 枚举-forceCloseMode
-            forceclosevalue: number; // 定期强平参数 [收益权](周结、月结)
-            goodstype: number; // 商品类型 - 1:交易商品 2:仓单商品
-            hasrebate: number; // 是否返利[竞价式] 0:不返,1:返利 – 根据系统参数088显示或隐藏
-            hastradecredit: number; // 是否交易授信[做市收益权] - 0:不授信 1:授信
-            haswr: number; // [竞拍]是否需要仓单 - 0:不需要 1:需要- 作废
-            isdeductmargin: number; // 竞拍违约是否扣除保证金[竞拍-降价式] - 0:不扣 1:扣除
-            isdeliverybuyerpayonline: number; // 交收买方是否线上支付(50模式) - 0:否 1:是
-            isdeliverysellercanapply: number; // 卖方是否可申请交收(50模式 - DeliveryMode = 2时) - 0:否 1:是
-            isrecordsource: number; // 是否记录成交源 - 0:不记录 1:记录 [所有权]
-            isreleasemargin: number; // 成交参与保证金是否释放[竞价式] - 0:不释放 1释放
-            isupdatereckonprice: number; // 输入结算价标识 - 0:系统生成 1:手工输入(自动) 2:手工输入(手动)
-            marginformula: number; // 持仓保证金公式 - 1:双边收 2:净头寸收 3:大小边差异收 4:大边收 5:卖持仓收(仅期权)
-            marginformula2: number; // 持仓保证金公式(仅受托竞价) - 1:双边收 2:净头寸收 3:大小边差异收 4:大边收 5:卖持仓收(仅期权)
-            marketid: number; // 市场ID正常5位,前三位固定:两位表示交易模式, 一位表示交易属性(1:收益权,2:所有权) 其它特殊市场:0-系统 1-交割服务 2-账户服务3-履约服务 4-仓单服务 5-积分服务 6-银行服务
-            marketname: string; // 市场名称
-            marketserviceid: number; // 市场服务ID
-            marketstatus: number; // 生效状态(ValidStatus枚举): 1:待生效 2:正常 3:注销
-            markettype: number; // 市场类型- 1:非交易服务 2:交易服务
-            matchermode: number; // 指定对手模式[仓单贸易模式专用] - 1:任意对手 - 作废
-            openmethod: number; // 开盘模式 - 0 自动 1手动
-            otcuserid: number; // 场外期权做市商[场外期权]
-            outersynctime: string; // 外部同步时间点(h24:mi:ss)[场外期权]
-            paylaterflag: number; // 是否支持后付 - 0:不支持 1;支持 - [挂牌点选 所有权、预售挂牌支持]
-            pendingflag: number; // 待开市时间标识[通道交易-对冲] - 0:当日 1:上日
-            pendingtime: string; // 待开市时间通道交易-对冲
-            performancetempid: number; // 履约计划模板ID - 作废
-            premiumquotemode: number; // 权利金报价方式 - 1:自动 2:手动
-            rebateratio: number; // 返利比率[竞价式]
-            reckonorder: number; // 结算顺序
-            reckonpricealgorithm: number; // 结算价算法: 1:最后多少笔成交价加权平均 2:最后多少秒成交价加权平均 3:全天加权平均 4:最后一口价 5.买一价 6.卖一价 7.买一卖一均价 8.外部结算价
-            reckonpriceparam: number; // 结算价参数
-            reckontime: string; // 结算时间通道交易-对冲
-            riskcontrolmode: number; // 风控方式(52模式) 1:按单风控 2:按账户风控
-            roleprioritytype: number; // 角色优先类型 - 1:无 2:报价商优先 3:非报价商优先 [16:挂牌点选]
-            roletype: number;
-            selllistingauditflag: number; // 卖挂牌是否需要审核(仓单贸易) - 0:不需要 1:需要
-            spotrighttype: number;
-            trademarkettype: number; // 交易市场类型 - 1:合约市场 2:外部市场 3:仓单市场
-            trademode: number; // 交易模式 - 10:做市 13:竞价 15:通道交易 16:挂牌点选 17:仓单贸易 18:期权 19:竞拍-降价式 20:竞拍-竞价式 21:竞拍-大宗式 22:受托竞价
-            tradeproperty: number; // 交易属性 - 1:收益权(可做空) 2:所有权(不可做空) 3:期权 4:现货 5:参考行情 6:通道交易 7:币交易 8:场外期权
-            tradetype: number; // 下单方式[通道交易] - 1:直接转单 2:净头寸下单
-            updatereckonpriceinterval: number; // 输入结算价时长(分钟) [1:手工输入(自动)]
-        }[];
+        markets: Markets[];
         results: {
             enumdicname: string;
             enumitemname: number;
@@ -2141,4 +2084,163 @@ declare namespace Member {
         // 机构用户ID 其他做市关系,都设置为 1
         userid?: number
     }
+
+    interface GoodsInfo {
+        // 期货合约乘数
+        agreeunit: number
+        // 所属机构
+        areauserid: number 
+        // 审核操作员账号
+        auditaccountid: number
+        // 审核时间
+        audittime: string
+        // 注销操作员账号
+        cancelaccountid: number
+        // 注销时间
+        canceltime: string
+        // 强平价格方式 - 1:市价 2:最新价 3:涨跌停(未实现)
+        closepricemode: number
+        // 强平最新价浮动比例 - 方式为2时使用 (<1)买 上浮 (1+x)最新价卖 下浮 (1-x)最新价
+        closepriceparam: number
+        // 创建时间
+        createtime: string
+        // 创建人
+        creatorid: number
+        // 报价货币ID
+        currencyid: number
+        // 斩仓方式 - 1:不斩仓 2:自动斩仓 3:半自动斩仓
+        cutmode: number
+        // 报价小数位
+        decimalplace: number
+        // 实际退市时间(状态:待退市, 预售一口价、预售大宗直接改为退市)
+        delistingdate: string
+        // 退市方式 - 1:退市平仓 2:退市交收 3:不处理(仅期权币币兑换) 4:退市发货(所有权)
+        delistingmode: number
+        // 交割标志 - 0:不可交割 1:可交割
+        deliveryflag: number
+        // 定期强平方式 - 1:无 2:每日 3:每周 4:每月[收益权]
+        forceclosemode: number
+        // 定期强平参数 [收益权]
+        forceclosevalue: number
+        // 期货合约代码(内部)
+        goodscode: string
+        // 合约货币ID
+        goodscurrencyid: number
+        // 期货品种ID
+        goodsgroupid: number
+        // 期货合约ID(自增ID SEQ_GOODS)
+        goodsid: number
+        // 期货合约名称
+        goodsname: string
+        // 合约报价类型: 1-直接报价 2-间接报价
+        goodsquotetype: number
+        // 商品状态- 1:待审核 2:未上市 3:上市 4:已注销 5:审核拒绝 6:退市 7:待退市
+        goodsstatus: number
+        // 商品交易权限类型 - 1:可建可平 2:可建不可平 3:不可建可平 4:不可建不可平
+        goodstradetype: number
+        // 报价单位ID
+        goodunitid: number
+        // 是否有报价商 - 0:无报价商 1:有报价商
+        hasquoter: number
+        // 行情保护时间(秒)
+        hqprotecttime: number
+        // 内部成交方式[通道交易] - 1:净头寸 2:开平 3:平今
+        innerdealmode: number
+        // 是否限制建仓量 - 0:不限制 1:限制
+        isbuylimited: number
+        // 游客是否可见 - 0:不可见 1:可见
+        isvisible: number
+        // 最后交易日期
+        lasttradedate: string
+        // 交易开始日期
+        listingdate: string
+        // 持仓定金方式(49) - 1:比率 2.固定(52)
+        marginalgorithm: number
+        // 所属市场ID
+        marketid: number
+        // 修改人
+        modifierid: number
+        // 变更状态 - 1:未变更 2:变更中 3:待审核 4:已审核
+        modifystatus: number
+        // 修改时间
+        modifytime: string
+        // 转让定金比例(新)(49*)
+        newtransferdepositratio: number
+        // 外部成交方式[通道交易]- 1:净头寸 2:开平 3:平今
+        outerdealmode: number
+        // 期货合约代码(外部)
+        outgoodscode: string
+        // 商品图片(逗号)
+        pictureurl: string
+        // 发售标识(49) - 1:未预售 2:预售完成 3:预售申请中 4:预售中
+        presaleflag: number
+        // 发售价订货价(49)
+        presaleprice: number
+        // 发售方资金账户ID(49)供货商资金账户ID(50)
+        provideraccountid: number
+        // 发售方用户ID(49)供货商(50)
+        provideruserid: number
+        //
+        providerusername: string
+        // 成交量小数位
+        qtydecimalplace: number
+        // 行情档位(1-10)
+        quotegear: number
+        // 行情最小变动单位 [整数,报价小数位一起使用]
+        quoteminunit: number
+        // 行情报价类型: 1:成交价 2:买卖中间价 3:含买价 4:含卖价 做市模式固定为3:含买价
+        quoteshowtype: number
+        // 行情报价间隔时间(秒)(成交价时为0)
+        quoteshowtypeinterval: number
+        // 参考商品代码
+        refgoodscode: string
+        // 参考商品ID
+        refgoodsid: number
+        // 备注
+        remark: string
+        // 掉期天数
+        swapdays: number
+        // 转让定金比例(49)持仓定金(52)
+        transferdepositratio: number
+    }
+
+    interface InitAddReq {
+        role?: string
+    }
+
+    interface InitAddRsp {
+        allrole: number
+        devidetype: string
+        enumDicItems: {
+            // 自增ID
+            autoid: number
+            // 银行服务对应值
+            bankmappedvalue: string
+            // 所属枚举代码
+            enumdiccode: string
+            // 所属枚举ID
+            enumdicid: number
+            // 枚举项名称
+            enumdicname: string
+            // 枚举项值
+            enumitemname: number
+            // 枚举项状态 - 1.启用 2.不启用
+            enumitemstatus: number
+            // 通用值 - [币种通用简写]
+            enumitemvalue: string
+            // 参数1[币种:币种小数位]
+            param1: string
+            // 参数1[币种:币种显示单位]
+            param2: string
+            // 备注
+            remark: string
+        }[]
+        goodsinfo: GoodsInfo[]
+        ishsby: number
+        markets: Markets[]
+        organ: UserAccount
+        organs: SonOrganPageByLevelRsp[]
+        roleid: number
+        rolename: string
+    }
 }