li.shaoyi 4 vuotta sitten
vanhempi
commit
110fe7fd51

+ 53 - 52
src/services/go/ermcp/exposure/interface.ts

@@ -2,51 +2,51 @@
  * 实时敞口信息返回
  */
 export interface ErmcpRealExposureModel {
-    AreaUserID	:number;//所属机构
-    BuyFutureQty	:number;//买入期货数量
-    BuyPlanQty	:number;//采购计划数量
-    BuyPricedQty	:number;//采购合同已定价数量
-    MiddleGoodsCode	:string;//套保品种代码
-    MiddleGoodsHedgeRatio	:number;//套保比例
-    MiddleGoodsID	:number;//套保品种
-    MiddleGoodsName	:string;//套保品种名称
-    NeedHedgeExposoure	:number;//应套保敞口(套保敞口)
-    NeedHedgeRatio	:number;//应套保敞口比例
-    OriBuyFutureQty	:number;//期初买入期货数量
-    OriBuyPlanQty	:number;//期初采购计划数量
-    OriBuyPricedQty	:number;//期初采购合同已定价数量
-    OriSellFutureQty	:number;//期初卖出期货数量
-    OriSellPlanQty	:number;//期初销售计划数量
-    OriSellPricedQty	:number;//期初销售合同已定价数量
-    SellFutureQty	:number;//卖出期货数量
-    SellPlanQty	:number;//销售计划数量
-    SellPricedQty	:number;//销售合同已定价数量
-    TotalExposure	:number;//总敞口
-    TotalFutureQty	:number;//期货总量
-    TotalHedgeRatio	:number;//敞口比例
-    TotalNeedHedgeQty	:number;//应套保总量(现货应套保总量)
-    TotalSpotQty	:number;//现货总量
-    arbitrageqty	:number;//套利量
-    diffArbitrageQty	:number;//套利变动量
-    diffExposoureQty	:number;//变动量(套保敞口)
-    diffFutuQty	:number;//变动量(期货总量)
-    diffHedgeQty	:number;//套保变动量
-    diffQty	:number;//变动量(总敞口)
-    diffSpotHedgeQty	:number;//变动量(现货应套保总量)
-    DiffSpotQty	:number;//变动量(现货总量) = 现货数量 - 期初现货数量
-    ENUMDICNAME	:string;//单位名称
-    hedgeqty	:number;//套保量
-    needarbitrageqty	:number;//应套利量
-    needarbitrageratio	:number;//套利比例
-    needhedgeqty	:number;//应套保量
-    oriTotalFutuQty	:number;//期初期货数量=期初买入期货数量-期初卖出期货数量
-    oriTotalSpotQty	:number;//期初现货数量=(期初销售计划数量-期初销售合同已定价数量)-(期初采购计划数量-期初采购合同已定价数量)
-    oriarbitrageqty	:number;//期初套利量
-    orihedgeqty	:number;//期初套保量
-    orineedhedgeexposoure	:number;//期初套保敞口
-    oritotalexposure	:number;//期初总敞口
-    oritotalfutureqty	:number;//期初期货总量
-    oritotalneedhedgeqty	:number;//期初现货应套保量
+    AreaUserID: number;//所属机构
+    BuyFutureQty: number;//买入期货数量
+    BuyPlanQty: number;//采购计划数量
+    BuyPricedQty: number;//采购合同已定价数量
+    MiddleGoodsCode: string;//套保品种代码
+    MiddleGoodsHedgeRatio: number;//套保比例
+    MiddleGoodsID: number;//套保品种
+    MiddleGoodsName: string;//套保品种名称
+    NeedHedgeExposoure: number;//应套保敞口(套保敞口)
+    NeedHedgeRatio: number;//应套保敞口比例
+    OriBuyFutureQty: number;//期初买入期货数量
+    OriBuyPlanQty: number;//期初采购计划数量
+    OriBuyPricedQty: number;//期初采购合同已定价数量
+    OriSellFutureQty: number;//期初卖出期货数量
+    OriSellPlanQty: number;//期初销售计划数量
+    OriSellPricedQty: number;//期初销售合同已定价数量
+    SellFutureQty: number;//卖出期货数量
+    SellPlanQty: number;//销售计划数量
+    SellPricedQty: number;//销售合同已定价数量
+    TotalExposure: number;//总敞口
+    TotalFutureQty: number;//期货总量
+    TotalHedgeRatio: number;//敞口比例
+    TotalNeedHedgeQty: number;//应套保总量(现货应套保总量)
+    TotalSpotQty: number;//现货总量
+    arbitrageqty: number;//套利量
+    diffArbitrageQty: number;//套利变动量
+    diffExposoureQty: number;//变动量(套保敞口)
+    diffFutuQty: number;//变动量(期货总量)
+    diffHedgeQty: number;//套保变动量
+    diffQty: number;//变动量(总敞口)
+    diffSpotHedgeQty: number;//变动量(现货应套保总量)
+    DiffSpotQty: number;//变动量(现货总量) = 现货数量 - 期初现货数量
+    ENUMDICNAME: string;//单位名称
+    hedgeqty: number;//套保量
+    needarbitrageqty: number;//应套利量
+    needarbitrageratio: number;//套利比例
+    needhedgeqty: number;//应套保量
+    oriTotalFutuQty: number;//期初期货数量=期初买入期货数量-期初卖出期货数量
+    oriTotalSpotQty: number;//期初现货数量=(期初销售计划数量-期初销售合同已定价数量)-(期初采购计划数量-期初采购合同已定价数量)
+    oriarbitrageqty: number;//期初套利量
+    orihedgeqty: number;//期初套保量
+    orineedhedgeexposoure: number;//期初套保敞口
+    oritotalexposure: number;//期初总敞口
+    oritotalfutureqty: number;//期初期货总量
+    oritotalneedhedgeqty: number;//期初现货应套保量
 }
 
 /**
@@ -109,16 +109,17 @@ export interface ErmcpExposurePostion {
  */
 export interface Ermcp3AreaSpot {
     areauserid: number;//所属机构
+    convertratio: number;//套保系数
     decreaseqty: number;//减少数量=-(销售已定价数量+采购计划数量)
-    deliverygoodscode: string;//现货品种代码
-    deliverygoodsid: number;//现货品种id
-    deliverygoodsname: string;//现货品种名称
     enumdicname: string;//单位名称
-    goodsunitid: number;//现货品种单位id
     increaseqty: number;//增加数量=销售计划数量+采购已定价数量
     oritoalspotqty: number;//昨日数量
     totalspotqty: number;//当前数量(现货头寸总量) = (销售计划数量 - 销售已定价数量) - (采购计划数量 - 采购已定价数量)
+    unitid: number;//现货商品单位id
     updatetime: string;//更新时间
+    wrstandardcode: string;//现货商品代码
+    wrstandardid: number;//现货商品ID(SEQ_WRSTANDARD)
+    wrstandardname: string;//现货商品名称
 }
 
 /**
@@ -134,9 +135,6 @@ export interface Ermcp3AreaSpotDetailReq {
 export interface Ermcp3AreaSpotDetail {
     contracttype: number;//合同类型 1-采购 -1-销售
     createtime: string;//创建时间
-    deliverygoodscode: string;//现货品种代码
-    deliverygoodsid: number;//现货品种id
-    deliverygoodsname: string;//现货品种名称
     enumdicname: string;//现货商品单位名称
     logtype: number;//记录类型 1-套保 2-现货合同
     qty: number;//数量
@@ -144,6 +142,9 @@ export interface Ermcp3AreaSpotDetail {
     relatedid: string;//套保计划ID/现货合同ID
     relatedno: string;//编号
     strtime: string;//时间
+    wrstandardcode: string;//现货商品代码
+    wrstandardid: number;//现货商品ID(SEQ_WRSTANDARD)
+    wrstandardname: string;//现货商品名称 
 }
 
 /**

+ 1 - 2
src/views/business/exposure/list/futures/index.vue

@@ -46,6 +46,7 @@ import Description from '@/common/components/description/index.vue';
 import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { getBuyOrSellName, getChannelBuildName } from '@/common/constants/enumsName';
 import { getTableButton } from '@/common/setup/table/button';
+import { columns, columnsDetail } from './setup';
 
 export default defineComponent({
     name: EnumRouterName.exposure_futures,
@@ -67,9 +68,7 @@ export default defineComponent({
         const {
             visible,
             closeDrawer, // 控制 drawer 组件是否显示
-            columns,
             updateColumn, //  表头数据
-            columnsDetail,
             registerColumnDetail,
             detailTableList, // 明细表头数据
             expandedRowKeys,

+ 112 - 0
src/views/business/exposure/list/futures/setup.ts

@@ -0,0 +1,112 @@
+import { ErmcpHedgePosition, ErmcpHedgePositionDetail } from '@/services/go/ermcp/exposure/interface';
+import { ColumnType } from '@/common/methods/table';
+
+/**
+ * 表头对应字段
+ */
+export const columns: ColumnType[] = [
+    {
+        "key": "0th",
+        "title": "期货合约/代码",
+        "align": "center",
+        "width": 120,
+        customRender: ({ record }: { record: ErmcpHedgePosition }) => {
+            return `${record.goodsname}/${record.goodscode}`;
+        }
+    },
+    {
+        "key": "2th",
+        "dataIndex": "totalydqty",
+        "title": "昨日数量",
+        "align": "center",
+        "slots": {
+            "customRender": "totalydqty"
+        },
+        "width": 120
+    },
+    {
+        "key": "3th",
+        "dataIndex": "increaseqty",
+        "title": "增加数量",
+        "align": "center",
+        "slots": {
+            "customRender": "increaseqty"
+        },
+        "width": 120
+    },
+    {
+        "key": "4th",
+        "dataIndex": "decreaseqty",
+        "title": "减少数量 ",
+        "align": "center",
+        "slots": {
+            "customRender": "decreaseqty"
+        },
+        "width": 130
+    },
+    {
+        "key": "5th",
+        "dataIndex": "totalcurqty",
+        "title": "当前数量",
+        "align": "center",
+        "slots": {
+            "customRender": "totalcurqty"
+        },
+        "width": 120
+    }
+];
+
+/**
+ * 明细表头对应字段
+ */
+export const columnsDetail: ColumnType[] = [
+    {
+        "key": "0th",
+        "dataIndex": "tradetime",
+        "title": "时间",
+        "align": "center",
+        "slots": {
+            "customRender": "tradetime"
+        },
+        "width": 200
+    },
+    {
+        "key": "1th",
+        "title": "期货合约/代码",
+        "align": "center",
+        "width": 120,
+        customRender: ({ record }: { record: ErmcpHedgePositionDetail }) => {
+            return `${record.goodsname}/${record.goodscode}`;
+        }
+    },
+    {
+        "key": "2th",
+        "dataIndex": "buyorsell",
+        "title": "方向",
+        "align": "center",
+        "slots": {
+            "customRender": "buyorsell"
+        },
+        "width": 120
+    },
+    {
+        "key": "3th",
+        "dataIndex": "channelbuildtype",
+        "title": "类型",
+        "align": "center",
+        "slots": {
+            "customRender": "channelbuildtype"
+        },
+        "width": 120
+    },
+    {
+        "key": "4th",
+        "dataIndex": "tradeqty",
+        "title": "期货数量(手)",
+        "align": "center",
+        "slots": {
+            "customRender": "tradeqty"
+        },
+        "width": 130
+    }
+];

+ 20 - 6
src/views/business/exposure/list/spot/index.vue

@@ -31,6 +31,7 @@ import { TabList } from '@/common/components/description/interface';
 import { EnumRouterName } from '@/common/constants/enumRouterName';
 import { getLogType } from '@/common/constants/enumsName';
 import { getTableButton } from '@/common/setup/table/button';
+import { columns, columnsDetail } from './setup';
 
 export default defineComponent({
     name: EnumRouterName.exposure_spot,
@@ -52,9 +53,7 @@ export default defineComponent({
         const {
             visible,
             closeDrawer, // 控制 drawer 组件是否显示
-            columns,
             updateColumn, //  表头数据
-            columnsDetail,
             registerColumnDetail,
             detailTableList, // 明细表头数据
             expandedRowKeys,
@@ -76,9 +75,9 @@ export default defineComponent({
                 console.error(`${lable}没有配置对应的code: ${code},`);
                 return;
             }
-            const deliverygoodsid = selectedRow.value?.deliverygoodsid;
-            if (deliverygoodsid) {
-                queryResultLoadingAndInfo(QuerySpotPositionDetail, loading, { deliverygoodsid }).then((res) => {
+            const wrstandardid = selectedRow.value?.wrstandardid;
+            if (wrstandardid) {
+                queryResultLoadingAndInfo(QuerySpotPositionDetail, loading, { wrstandardid }).then((res) => {
                     detailTableList.value = res;
                 });
             }
@@ -90,7 +89,22 @@ export default defineComponent({
                 }
             }
         });
-        return { loading, tableList, visible, closeDrawer, columns, changeTab, updateColumn, columnsDetail, detailTableList, expandedRowKeys, selectedRow, Rowclick, tabList, getLogType };
+        return {
+            loading,
+            tableList,
+            visible,
+            closeDrawer,
+            changeTab,
+            updateColumn,
+            columnsDetail,
+            detailTableList,
+            expandedRowKeys,
+            selectedRow,
+            Rowclick,
+            tabList,
+            getLogType,
+            columns,
+        };
     },
 });
 </script>

+ 113 - 0
src/views/business/exposure/list/spot/setup.ts

@@ -0,0 +1,113 @@
+import { Ermcp3AreaSpot } from '@/services/go/ermcp/exposure/interface';
+import { ColumnType } from '@/common/methods/table';
+
+/**
+ * 表头对应字段
+ */
+export const columns: ColumnType[] = [
+    {
+        "key": "0th",
+        "title": "现货商品/代码",
+        "align": "center",
+        "width": 120,
+        customRender: ({ record }: { record: Ermcp3AreaSpot }) => {
+            return `${record.wrstandardname}/${record.wrstandardcode}`;
+        }
+    },
+    {
+        "key": "2th",
+        "dataIndex": "oritoalspotqty",
+        "title": "昨日数量",
+        "align": "center",
+        "slots": {
+            "customRender": "oritoalspotqty"
+        },
+        "width": 120
+    },
+    {
+        "key": "3th",
+        "dataIndex": "increaseqty",
+        "title": "增加数量",
+        "align": "center",
+        "slots": {
+            "customRender": "increaseqty"
+        },
+        "width": 120
+    },
+    {
+        "key": "4th",
+        "dataIndex": "decreaseqty",
+        "title": "减少数量",
+        "align": "center",
+        "slots": {
+            "customRender": "decreaseqty"
+        },
+        "width": 120
+    },
+    {
+        "key": "5th",
+        "dataIndex": "totalspotqty",
+        "title": "当前数量",
+        "align": "center",
+        "slots": {
+            "customRender": "totalspotqty"
+        },
+        "width": 120
+    }
+];
+
+/**
+ * 明细表头对应字段
+ */
+export const columnsDetail: ColumnType[] = [
+    {
+        "key": "0th",
+        "dataIndex": "createtime",
+        "title": "时间",
+        "align": "center",
+        "slots": {
+            "customRender": "createtime"
+        },
+        "width": 200
+    },
+    {
+        "key": "1th",
+        "dataIndex": "relatedno",
+        "title": "编号 ",
+        "align": "center",
+        "slots": {
+            "customRender": "relatedno"
+        },
+        "width": 200
+    },
+    {
+        "key": "2th",
+        "dataIndex": "logtype",
+        "title": "类型",
+        "align": "center",
+        "slots": {
+            "customRender": "logtype"
+        },
+        "width": 120
+    },
+    {
+        "key": "3th",
+        "dataIndex": "deliverygoodsname",
+        "title": "现货商品",
+        "align": "center",
+        "slots": {
+            "customRender": "deliverygoodsname"
+        },
+        "width": 120
+    },
+    {
+        "key": "4th",
+        "dataIndex": "qty",
+        "title": "现货商品数量",
+        "align": "center",
+        "slots": {
+            "customRender": "qty"
+        },
+        "width": 120
+    }
+];

+ 4 - 4
src/views/iframe/setup.ts

@@ -51,10 +51,10 @@ const iframeCode: { code: string, tabIndex: number }[] = [
         code: 'spot_params_performance', // 风管审核-现货参数审核-已审核
         tabIndex: 2,
     },
-    {
-        code: 'price_report_spot', // 统计报表-定价报表
-        tabIndex: 1,
-    }
+    // {
+    //     code: 'price_report_spot', // 统计报表-定价报表
+    //     tabIndex: 1,
+    // },
 ]
 
 /**