Browse Source

Merge branch 'master' of http://47.101.159.18:3000/Muchinfo/THJ_Mobile

li.shaoyi 3 years ago
parent
commit
c085610cc7

+ 145 - 2
src/business/goods/index.ts

@@ -1,6 +1,7 @@
 import { shallowRef } from 'vue'
 import { useDataTable } from '@/hooks/datatable'
-import { queryTHJWrstandard, queryTHJWrstandardDetail } from '@/services/api/goods'
+import { queryTHJWrstandard, queryTHJWrstandardDetail, addUserFavoriteGoods, removeUserFavoriteGoods, queryTHJProduct, queryTHJTradeData, querySpotGoodsPrice } from '@/services/api/goods'
+import { useLoginStore } from '@/stores'
 
 // 采购列表
 export function useWrstandardList() {
@@ -54,4 +55,146 @@ export function useWrstandardDetails(wrstandardid: number) {
         details,
         getWrstandardDetails,
     }
-}
+}
+
+
+// 添加用户商品收藏信息
+export function useAddUserFavoriteGoods(goodsid: number) {
+    const { getUserId } = useLoginStore()
+
+    const getAddUserFavoriteGoods = () => {
+        return addUserFavoriteGoods({
+            data: {
+                userID: getUserId(),
+                goodsID: goodsid
+            },
+            success: (res) => { console.log(res) }
+        })
+    }
+
+    return { getAddUserFavoriteGoods  }
+}
+
+
+// 移除用户商品收藏信息
+export function useRemoveUserFavoriteGoods(goodsid: number) {
+    const { getUserId } = useLoginStore()
+
+    const getRemoveUserFavoriteGoods = () => {
+        return removeUserFavoriteGoods({
+            data: {
+                userID: getUserId(),
+                goodsID: goodsid
+            },
+            success: (res) => { console.log(res) }
+        })
+    }
+
+    return { getRemoveUserFavoriteGoods }
+}
+
+// 获取我的推广-交易数据
+export function useQueryTHJTradeDataList() {
+    const { dataList, total, pageIndex, pageSize, pageCount } = useDataTable<Model.THJTradeDataRsp>()
+    const loading = shallowRef(false)
+    const { getUserId } = useLoginStore()
+
+    const getQueryTHJTradeDataList = (marketid: number) => {
+        loading.value = true
+        return queryTHJTradeData({
+            data: {
+                userid: getUserId(),
+                marketid: marketid,
+                page: pageIndex.value,
+                pagesize: pageSize.value,
+            },
+            success: (res) => {
+                total.value = res.total
+                dataList.value = res.data
+            },
+            complete: () => {
+                loading.value = false
+            }
+        })
+    }
+
+    return {
+        loading,
+        dataList,
+        total,
+        pageIndex,
+        pageSize,
+        pageCount,
+        getQueryTHJTradeDataList,
+    }
+}
+
+// 获取产品介绍列表
+// 关注标志 true-已关注 false-未关注
+export function useQueryTHJProductLists() {
+    const { dataList, total, pageIndex, pageSize, pageCount } = useDataTable<Model.THJProductRsp>()
+    const loading = shallowRef(false)
+    const { getUserId } = useLoginStore()
+
+    const getQueryTHJProductLists = (flag: boolean) => {
+        loading.value = true
+        return queryTHJProduct({
+            data: {
+                userid: getUserId(),
+                favoriteflag: flag,
+                page: pageIndex.value,
+                pagesize: pageSize.value,
+            },
+            success: (res) => {
+                total.value = res.total
+                dataList.value = res.data
+            }, 
+            complete: () => {
+                loading.value = false
+            }
+        })
+    }
+
+    return {
+        loading,
+        dataList,
+        total,
+        pageIndex,
+        pageSize,
+        pageCount,
+        getQueryTHJProductLists,
+    }
+}
+
+// 获取现货行情
+export function useQuerySpotGoodsPriceLists() {
+    const { dataList, total, pageIndex, pageSize, pageCount } = useDataTable<Model.SpotGoodsPriceRsp>()
+    const loading = shallowRef(false)
+
+    const getQuerySpotGoodsPriceLists = () => {
+        loading.value = true
+        return querySpotGoodsPrice({
+            data: {
+                page: pageIndex.value,
+                pagesize: pageSize.value,
+            },
+            success: (res) => {
+                total.value = res.total
+                dataList.value = res.data
+            }, 
+            complete: () => {
+                loading.value = false
+            }
+        })
+    }
+
+    return {
+        loading,
+        dataList,
+        total,
+        pageIndex,
+        pageSize,
+        pageCount,
+        getQuerySpotGoodsPriceLists,
+    }
+}

+ 120 - 0
src/business/order/index.ts

@@ -0,0 +1,120 @@
+import { shallowRef } from 'vue'
+import { useDataTable } from '@/hooks/datatable'
+import { queryWrOrderDetail, queryWrTradeDetail, queryTHJPurchaseTradeDetail } from '@/services/api/order'
+import { useLoginStore } from '@/stores'
+
+// 查询仓单委托单
+export function useQueryWrOrderDetail() {
+    const { dataList, total, pageIndex, pageSize, pageCount } = useDataTable<Model.WrOrderDetailRsp>()
+    const loading = shallowRef(false)
+    const { getUserId } = useLoginStore()
+    
+    const getWrOrderDetail = (haswr: number, marketid?: number, bcancel?: number, wrtradetype?: number, begindate?: string, enddate?: string) => {
+        loading.value = true
+        return queryWrOrderDetail({
+            data: {
+                userid: getUserId(),
+                haswr: haswr,
+                bcancel: bcancel,
+                marketid: marketid,
+                wrtradetype: wrtradetype,
+                begindate: begindate,
+                enddate: enddate,
+                page: pageIndex.value,
+                pagesize: pageSize.value,
+            },
+            success: (res) => {
+                total.value = res.total
+                dataList.value = res.data
+            },
+            complete: () => {
+                loading.value = false
+            }
+        })
+    }
+
+    return {
+        loading,
+        dataList,
+        total,
+        pageIndex,
+        pageSize,
+        pageCount,
+        getWrOrderDetail,
+    }
+}
+
+// 查询仓单成交明细
+export function useQueryWrTradeDetail() {
+    const { dataList, total, pageIndex, pageSize, pageCount } = useDataTable<Model.WrTradeDetailRsp>()
+    const loading = shallowRef(false)
+    const { getUserId } = useLoginStore()
+    
+    const getWrTradeDetail = (haswr: number, marketid?: number, begindate?: string, enddate?: string) => {
+        loading.value = true
+        return queryWrTradeDetail({
+            data: {
+                userid: getUserId(),
+                haswr: haswr,
+                marketid: marketid,
+                begindate: begindate,
+                enddate: enddate,
+                page: pageIndex.value,
+                pagesize: pageSize.value,
+            },
+            success: (res) => {
+                total.value = res.total
+                dataList.value = res.data
+            },
+            complete: () => {
+                loading.value = false
+            }
+        })
+    }
+
+    return {
+        loading,
+        dataList,
+        total,
+        pageIndex,
+        pageSize,
+        pageCount,
+        getWrTradeDetail,
+    }
+}
+
+// 查询我的订单-采购订单
+export function useTHJPurchaseTradeDetail() {
+    const { dataList, total, pageIndex, pageSize, pageCount } = useDataTable<Model.THJPurchaseTradeDetailRsp>()
+    const loading = shallowRef(false)
+    const { getUserId } = useLoginStore()
+    
+    const getTHJPurchaseTradeDetail = (type?: number) => {
+        loading.value = true
+        return queryTHJPurchaseTradeDetail({
+            data: {
+                userid: getUserId(),
+                type: type,
+                page: pageIndex.value,
+                pagesize: pageSize.value,
+            },
+            success: (res) => {
+                total.value = res.total
+                dataList.value = res.data
+            },
+            complete: () => {
+                loading.value = false
+            }
+        })
+    }
+
+    return {
+        loading,
+        dataList,
+        total,
+        pageIndex,
+        pageSize,
+        pageCount,
+        getTHJPurchaseTradeDetail,
+    }
+}

+ 14 - 0
src/packages/mobile/router/index.ts

@@ -124,6 +124,20 @@ const routes: Array<RouteRecordRaw> = [
     ]
   },
   {
+    path: '/product',
+    component: Page,
+    children: [
+      {
+        path: '',
+        name: 'product',
+        component: () => import('../views/product/index.vue'),
+        meta: {
+          ignoreAuth: true,
+        },
+      }
+    ]
+  },
+  {
     path: '/goods',
     component: Page,
     children: [

+ 1 - 1
src/packages/mobile/views/home/components/main/index.vue

@@ -13,7 +13,7 @@
     <PullRefresh class="home-main__container" v-model="refreshing" @refresh="onRefresh">
       <div class="home-main__iconbar">
         <ul>
-          <li>
+          <li @click="routerTo('product')">
             <app-iconfont icon="icon-chanpinjieshao" label-direction="bottom">产品介绍</app-iconfont>
           </li>
           <li>

+ 2 - 2
src/packages/mobile/views/home/components/mine/index.vue

@@ -53,10 +53,10 @@
         <li @click="routerTo('mine-generalize')" style="align-items:flex-start">
           <app-iconfont icon="icon-wodetuiguang" label-direction="bottom">我的推广</app-iconfont>
         </li>
-        <!-- <li>
+        <li>
           <app-iconfont icon="icon-wodedingdan" label-direction="bottom">我的订单</app-iconfont>
         </li>
-        <li>
+        <!-- <li>
           <app-iconfont icon="icon-wodecangdan" label-direction="bottom">我的仓单</app-iconfont>
         </li>
         <li>

+ 37 - 0
src/packages/mobile/views/mine/generalize/index.less

@@ -49,4 +49,41 @@
     &__tabs {
         background-color: #fff;
     }
+
+    &__container {
+        height: 100%;
+        overflow-y: auto;
+
+        .list {
+            display: flex;
+            align-items: center;
+            background-color: #fff;
+
+            &-row {
+                font-size: .32rem;
+                border-bottom: 1px solid #eee;
+                padding: .12rem .32rem;
+            }
+
+            &-column {
+                flex: 1;
+                display: flex;
+                flex-direction: column;
+                text-align: center;
+
+                &:first-child {
+                    text-align: left;
+                }
+
+                &:last-child {
+                    text-align: right;
+                }
+
+                span:last-child {
+                    color: #999;
+                    font-size: .24rem;
+                }
+            }
+        }
+    }
 }

+ 54 - 1
src/packages/mobile/views/mine/generalize/index.vue

@@ -21,13 +21,51 @@
         </div>
         <Tabs class="mine-generalize__tabs">
             <Tab title="交易数据">
-                <Empty />
+                <Empty v-if="dataList.length === 0"/>
             </Tab>
             <Tab title="推广收益">
                 <Empty />
             </Tab>
         </Tabs>
         <app-qrcode v-model:show="showQRCode" :content="userAccount.refernum" />
+      
+        <app-pull-refresh class="tradeData__container" v-model:pageIndex="pageIndex" :page-count="pageCount"
+            :updateList="dataList" @refresh="onRefresh" @updated="onRefreshUpdated">
+            <template #header>
+                <ul class="list list-row" v-if="showHeader">
+                    <li class="list-column">
+                        <span>日期</span>
+                    </li>
+                    <li class="list-column">
+                        <span>市场</span>
+                    </li>
+                    <li class="list-column">
+                        <span>商品</span>
+                    </li>
+                    <li class="list-column">
+                        <span>被推荐人</span>
+                    </li>
+                    <li class="list-column">
+                        <span>吨数</span>
+                    </li>
+                    <li class="list-column">
+                        <span>笔数</span>
+                    </li>
+                </ul>
+            </template>
+            <template #default="{ item }">
+                <ul class="list list-row">
+                    <li class="list-column">
+                        <span>{{ formatDate(item.reckondate, 'YYYY-MM-DD') }}</span>
+                    </li>
+                    <li class="list-column">{{ item.marketid == 64201 ? '采购' : '供求' }}</li>
+                    <li class="list-column">{{ item.wrstandardname }}</li>
+                    <li class="list-column">{{ item.accountname }}</li>
+                    <li class="list-column">{{ item.marketid == 64201 ? item.buytradeqty : item.selltradeqty }}</li>
+                    <li class="list-column">{{ item.selltradelot }}</li>
+                </ul>
+            </template>  
+        </app-pull-refresh>
     </app-view>
 </template>
 
@@ -36,7 +74,13 @@ import { shallowRef } from 'vue'
 import { Tab, Tabs, Empty } from 'vant'
 import { useLoginStore } from '@/stores'
 import { queryUserAccount } from '@/services/api/account'
+import { useQueryTHJTradeDataList } from '@/business/goods'
 import AppQrcode from '@mobile/components/base/qrcode/index.vue'
+import { formatDate } from '@/filters'
+import AppPullRefresh from '@mobile/components/base/pull-refresh/index.vue'
+
+const { dataList, pageIndex, pageCount, getQueryTHJTradeDataList } = useQueryTHJTradeDataList()
+const showHeader = shallowRef(false)
 
 const { getUserId } = useLoginStore()
 const showQRCode = shallowRef(false)
@@ -53,6 +97,15 @@ queryUserAccount({
         userAccount.value = res.data
     }
 })
+
+const onRefresh = (callback: () => void) => {
+    getQueryTHJTradeDataList(64201).finally(() => callback())
+}
+
+const onRefreshUpdated = (data: Model.UserScoreLogRsp[]) => {
+    showHeader.value = data.length > 0
+}
+
 </script>
 
 <style lang="less">

+ 11 - 5
src/packages/mobile/views/news/list/index.vue

@@ -5,17 +5,17 @@
     </template>
     <Tabs v-model:active="active" @click-tab="onClickTab">
       <Tab title="宏观新闻">
-        <Empty v-if="dataList.length === 0" />
+        <Empty v-if="empty" />
       </Tab>
       <Tab title="行业动态">
-        <Empty v-if="dataList.length === 0" />
+        <Empty v-if="empty" />
       </Tab>
       <Tab title="厂家信息">
-        <Empty v-if="dataList.length === 0" />
+        <Empty v-if="empty" />
       </Tab>
     </Tabs>
     <app-pull-refresh class="news-list__container" v-model:pageIndex="pageIndex" :page-count="pageCount"
-      :updateList="dataList" @refresh="onRefresh">
+      :updateList="dataList" @refresh="onRefresh" @updated="onUpdated">
       <template #default="{ item }">
         <Cell class="article-item" title-class="article-item__title" value-class="article-item__time"
           :title="item.title" :value="formatDate(item.creaedate, 'MM/DD')"
@@ -27,7 +27,7 @@
   
 <script lang="ts" setup>
 
-import { ref } from 'vue'
+import { ref, shallowRef } from 'vue'
 import { Cell, Tab, Tabs, Empty } from 'vant'
 import { formatDate } from '@/filters'
 import { useSiteColumnDetail } from '@/business/news'
@@ -35,6 +35,7 @@ import AppPullRefresh from '@mobile/components/base/pull-refresh/index.vue'
 
 /// tab激活项
 const active = ref(0);
+const empty = shallowRef(false)
 
 const { dataList, pageIndex, pageCount, getSiteColumnDetail } = useSiteColumnDetail()
 /// Tab触发
@@ -45,6 +46,11 @@ const onClickTab = (e) => {
 const onRefresh = (callback: () => void) => {
   getSiteColumnDetail(active.value).finally(() => callback())
 }
+
+const onUpdated = (lists: Model.THJProductRsp[]) => {
+  empty.value = lists.length===0
+}
+
 </script>
   
 <style lang="less">

+ 26 - 0
src/packages/mobile/views/product/index.less

@@ -0,0 +1,26 @@
+.product {
+    &__header {
+        .van-search {
+            padding-top: 0;
+        }
+    }
+
+    &__container {
+        .van-cell__title {
+            display    : flex;
+            align-items: center;
+
+            img {
+                width        : 1rem;
+                height       : 1rem;
+                object-fit   : cover;
+                border-radius: .16rem;
+                margin-right : .4rem;
+            }
+
+            span {
+                flex: 1;
+            }
+        }
+    }
+}

+ 67 - 0
src/packages/mobile/views/product/index.vue

@@ -0,0 +1,67 @@
+<template>
+    <app-view class="product">
+      <template #header>
+        <app-navbar class="product__header" title="产品介绍" />
+      </template>
+      <Tabs class="product__tabs" @click-tab="onClickTab">
+          <Tab title="已关注">
+              <Empty v-if="empty"/>
+          </Tab>
+          <Tab title="未关注">
+            <Empty v-if="empty"/>
+          </Tab>
+      </Tabs>
+      <app-pull-refresh class="product__container" v-model:error="error" v-model:pageIndex="pageIndex"
+        :page-count="pageCount" :updateList="dataList" @refresh="onRefresh" @updated="onUpdated">
+        <template #default="{ item }">
+          <Cell>
+            <template #title>
+              <img :src="getImageUrl(item.bannerpicurl)" />
+              <span>{{ item.wrstandardname }}</span>
+              <Button type="primary" round size="small">立即进入</Button>
+            </template>
+          </Cell>
+        </template>
+      </app-pull-refresh>
+    </app-view>
+  </template>
+  
+  <script lang="ts" setup>
+  import { shallowRef, ref } from 'vue'
+  import { Cell, Tabs, Tab, Button, Empty } from 'vant'
+  import { getImageUrl } from '@/filters'
+  import { useQueryTHJProductLists } from '@/business/goods'
+  import AppPullRefresh from '@mobile/components/base/pull-refresh/index.vue'
+  
+  const { dataList, pageIndex, pageCount, getQueryTHJProductLists } = useQueryTHJProductLists()
+  const error = shallowRef(false)
+  const empty = shallowRef(false)
+  /// tab激活项
+  const active = ref(0);
+
+  /// Tab触发
+  const onClickTab = (e) => {
+    active.value = e.name
+    /// 重新查询数据
+    getQueryTHJProductLists(e.name === 0).catch(() => {
+      error.value = true
+    })
+  }
+  
+  /// 下拉刷新
+  const onRefresh = (callback: () => void) => {
+    /// 查询数据
+    getQueryTHJProductLists(active.value === 0).catch(() => {
+      error.value = true
+    }).finally(() => callback())
+  }
+
+  const onUpdated=(lists: Model.THJProductRsp[])=>{
+    empty.value = lists.length===0
+  }
+
+  </script>
+
+<style lang="less">
+@import './index.less';
+</style>

+ 35 - 0
src/services/api/goods/index.ts

@@ -20,4 +20,39 @@ export function queryTHJWrstandard(params: HttpParams<{ req: Model.THJWrstandard
  */
 export function queryTHJWrstandardDetail(params: HttpParams<{ req: Model.THJWrstandardDetailReq, rsp: Model.THJWrstandardDetailRsp }>) {
     return httpRequest('/Ferroalloy/QueryTHJWrstandardDetail', 'get', params);
+}
+
+/**
+ * 移除用户商品收藏信息
+ */
+ export function removeUserFavoriteGoods(params: HttpParams<{ req: Model.UserFavoriteGoodsReq, rsp: Model.UserFavoriteGoodsRsp }>) {
+    return httpRequest('/User/RemoveUserFavoriteGoods', 'post', params);
+}
+
+/**
+ * 添加用户商品收藏信息
+ */
+ export function addUserFavoriteGoods(params: HttpParams<{ req: Model.UserFavoriteGoodsReq, rsp: Model.UserFavoriteGoodsRsp }>) {
+    return httpRequest('/User/AddUserFavoriteGoods', 'post', params);
+}
+
+/**
+ * 获取我的推广-交易数据
+ */
+ export function queryTHJTradeData(params: HttpParams<{ req: Model.THJTradeDataReq, rsp: Model.THJTradeDataRsp[] }>) {
+    return httpRequest('/Ferroalloy/QueryTHJTradeData', 'get', params);
+}
+
+/**
+ * 获取产品介绍列表
+ */
+ export function queryTHJProduct(params: HttpParams<{ req: Model.THJProductReq, rsp: Model.THJProductRsp[] }>) {
+    return httpRequest('/Ferroalloy/QueryTHJProduct', 'get', params);
+}
+
+/**
+ * 获取现货行情
+ */
+ export function querySpotGoodsPrice(params: HttpParams<{ req: Model.SpotGoodsPriceReq, rsp: Model.SpotGoodsPriceRsp[] }>) {
+    return httpRequest('/Ferroalloy/GetSpotGoodsPrice', 'get', params);
 }

+ 23 - 0
src/services/api/order/index.ts

@@ -0,0 +1,23 @@
+import { httpRequest } from '@/services/http'
+import { HttpParams } from '@/services/http/interface'
+
+/**
+ * 查询仓单成交明细
+ */
+ export function queryWrTradeDetail(params: HttpParams<{ req: Model.WrTradeDetailReq, rsp: Model.WrTradeDetailRsp[] }>) {
+    return httpRequest('/WrTrade2/QueryWrTradeDetail', 'get', params);
+}
+
+/**
+ * 查询仓单委托单
+ */
+ export function queryWrOrderDetail(params: HttpParams<{ req: Model.WrOrderDetailReq, rsp: Model.WrOrderDetailRsp[] }>) {
+    return httpRequest('/WrTrade2/QueryWrOrderDetail', 'get', params);
+}
+
+/**
+ * 查询我的订单-采购订单
+ */
+ export function queryTHJPurchaseTradeDetail(params: HttpParams<{ req: Model.THJPurchaseTradeDetailReq, rsp: Model.THJPurchaseTradeDetailRsp[] }>) {
+    return httpRequest('/Ferroalloy/QueryTHJPurchaseTradeDetail', 'get', params);
+}

+ 112 - 0
src/types/model/goods.d.ts

@@ -129,4 +129,116 @@ declare namespace Model {
             tradedate: string; // 交易日(yyyyMMdd)
         }[];
     }
+
+    /// 用户商品收藏信息请求
+    interface UserFavoriteGoodsReq {
+        /// 用户ID
+        userID: number,
+        /// 商品ID
+        goodsID: number
+    }
+
+    /// 用户商品收藏信息响应
+    interface UserFavoriteGoodsRsp {
+        /// 商品ID
+        goodsID: number
+    }
+
+    /** 获取我的推广-交易数据 请求 */
+    interface THJTradeDataReq {
+        /// 用户ID
+        userid: number
+        /// 市场ID 采购-64201 供求-65201
+        marketid: number
+        /// 页码
+        page?: number
+        /// 每页条数
+        pagesize?: number
+    }
+
+    /** 获取我的推广-交易数据响应 */
+    interface THJTradeDataRsp {
+        /// 被推荐人
+        accountname: string
+        /// 购买笔数
+        buytradelot: number
+        /// 购买数量
+        buytradeqty: number
+        /// 市场ID 采购-64201 供求-65201
+        marketid: number
+        /// 日照日期(yyyyMMdd)日照日期(yyyyMMdd)
+        reckondate: string
+        /// 销售笔数
+        selltradelot: number
+        /// 销售数量
+        selltradeqty: number
+        /// 用户ID
+        userid: number
+        /// 现货商品名称
+        wrstandardname: string
+    }
+
+    /** 获取产品介绍列表 请求 */
+    interface THJProductReq {
+        /// 用户ID
+        userid: number
+        /// 关注标志 true-已关注 false-未关注
+        favoriteflag?: boolean
+        /// 页码
+        page?: number
+        /// 每页条数
+        pagesize?: number
+    }
+
+    /** 获取产品介绍列表 响应 */
+    interface THJProductRsp {
+        /// Banner图(逗号分隔)
+        bannerpicurl: string
+        /// 详情图片(逗号分隔)
+        pictureurls: string
+        /// 现货商品代码
+        wrstandardcode: string
+        /// 现货商品ID(自增 SEQ_GOODS 确保不重复)
+        wrstandardid: string
+        /// 现货商品名称
+        wrstandardname: string
+    }
+
+    /** 获取现货行情 请求 */
+    interface SpotGoodsPriceReq {
+        /// 页码
+        page?: number
+        /// 每页条数
+        pagesize?: number
+    }
+
+    /** 获取现货行情 响应 */
+    interface SpotGoodsPriceRsp {
+        /// 报价货币ID
+        currencyid: number
+        /// 现货品种ID
+        deliverygoodsid: number
+        /// 现货品牌ID(通用则为0, 不为0则须先有商品ID)
+        spotgoodsbrandid: number
+        /// 【最新价】当前价格
+        spotgoodsprice: number
+        /// 来源市场名称
+        srcmarketname: string
+        /// 今日定价金额
+        todaypricedtotalamount: number
+        /// 今日定价总量
+        todaypricedtotalqty: number
+        /// 今日指定价
+        todayspotgoodsprice: number
+        /// 【日期】交易日
+        tradedate: string
+        /// 现货商品代码
+        wrstandardcode: string
+        /// 现货商品ID(通用则为0)
+        wrstandardid: number
+        /// 【名称】现货商品名称
+        wrstandardname: string
+        /// 昨价
+        ystspotgoodsprice: number
+    }
 }

+ 336 - 0
src/types/model/order.d.ts

@@ -0,0 +1,336 @@
+
+declare namespace Model {
+    /** 查询仓单委托单 请求 */
+    interface WrOrderDetailReq {
+        /// 页码
+        page?: number
+        /// 每页条数
+        pagesize?: number
+        /// 用户id
+        userid: number
+        /// 仓单贸易市场id
+        marketid?: number
+        /// 0:仓单预售 1:仓单贸易
+        haswr: number
+        /// 是否仅查可撤单据 1:可撤 注:此参数仅对当前记录有效, 且不含47模式市场
+        bcancel?: number
+        /// 仓单贸易类型 - 1:挂牌 2:摘牌 3:提货卖(文化中国) 4:提货买(文化中国)
+        wrtradetype?: number
+        /// 开始交易日(yyyymmdd)
+        begindate?: string
+        /// 结束交易日(yyyymmdd)
+        enddate?: string
+    }
+
+    /** 查询仓单委托单 响应 */
+    interface WrOrderDetailRsp {
+        /// 交易账号(资金账号)
+        accountid: number
+        /// 是否全好友可见 - 0:否 1:是
+        allfriendsflag: number
+        /// 期初均价
+        amount: number
+        /// Banner图
+        bannerpicurl: string
+        /// 开始交易日(yyyymmdd)
+        begindate: string
+        /// 买卖 - 0:买 1:卖(挂牌类型 买为采购 卖为销售)
+        buyorsell: number
+        /// 是否可议价 - 0:不可 1:可
+        canbargain: number
+        /// 撤销数量
+        cancelqty: number
+        /// 是否允许部份摘牌 - 0:不允许(要求整单) 1:允许(可以不整单)
+        canpart: number
+        /// 起摘数量
+        delistminqty: number
+        /// 品种代码
+        deliverygoodscode: string
+        /// 品种ID
+        deliverygoodsid: number
+        /// 品种名称
+        deliverygoodsname: string
+        /// 交收月
+        deliverymonth: string
+        /// 结束交易日(yyyymmdd)
+        enddate: string
+        /// 单位名称
+        enumdicname: string
+        /// 固定价格 - [挂牌]
+        fixedprice: number
+        /// 期初均价
+        freezecharge: number
+        /// 期初均价
+        freezemargin: number
+        /// 期货升贴水
+        futupricemove: number
+        /// 期货合约/升贴水
+        futushow: string
+        /// 期货合约
+        goodscode: string
+        /// 期货商品id
+        goodsid: number
+        /// 商品名称
+        goodsname: string
+        /// 是否有仓单-卖方 - 0:无仓单 1:有仓单
+        haswr: number
+        /// 是否指定对手 - 0:不指定 1:指定 - [挂牌]
+        isspecified: number
+        /// 提单ID(208+Unix秒时间戳(10位)+xxxxxx)
+        ladingbillid: string
+        /// 期初均价
+        marginvalue: number
+        /// 市场ID
+        marketid: number
+        /// 对手方名称(当ISSPECIFIED=1时,有值,指定朋友的名称)
+        matchusername: string
+        /// 现货商品最小变动值
+        minivalue: number
+        /// 选择项比较串【{选择项ID}+{冒号}+选择项值 } ,逗号分隔,头尾加逗号】-- 所有选择项拼接,用于比较
+        optioncompare: string
+        /// 委托数量
+        orderqty: number
+        /// 委托时间(挂牌时间)
+        ordertime: string
+        /// 履约模板id
+        performancetemplateid: number
+        /// 升贴水(浮动价时填写) - [挂牌]
+        pricemove: number
+        /// 交易用户名称(资金账号名称)
+        taname: string
+        /// 缩略图
+        thumurls: string
+        /// 交易日(yyyyMMdd)
+        tradedate: string
+        /// 成交价格 - [摘牌] (浮动价 ((商品1价格商品1价格系数+升贴水) 商品1重量系数 + 商品2价格商品2价格系数+商品2升贴水) 商品2重量系数 …)* 委托单价格系数 + 委托单升贴水)
+        tradeprice: number
+        /// 成交数量
+        tradeqty: number
+        /// 用户ID
+        userid: number
+        /// 挂牌有效期
+        validtime: string
+        /// 有效类型 - 1当日有效 2本周有效 3指定日期有效 4一直有效
+        validtype: number
+        /// 仓库ID
+        warehouseid: number
+        /// 仓库名称
+        warehousename: string
+        /// 仓单要素类型ID(212+Unix秒时间戳(10位)+xxxxxx)
+        wrfactortypeid: string
+        /// 仓单要素类型名称(选择项要素的名称合并显示,逗号分隔)
+        wrfactortypename: string
+        /// 价格方式 - 1:固定价 2-浮动价 - [挂牌]
+        wrpricetype: number
+        /// 现货商品代码
+        wrstandardcode: string
+        /// 现货商品ID
+        wrstandardid: number
+        /// 商品名称
+        wrstandardname: string
+        /// 仓单贸易委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
+        wrtradeorderid: string
+        /// 委托状态 - 1:委托请求 2:待冻结 3:委托成功 4:委托失败 5:配对成功 6:已撤 7:部成 8:已成 9:部成部撤 10:成交失败 11:委托拒绝 12:经过摘牌(先摘后挂专用) 13:冻结成功(通道交易专用) 14:通道已撤 15:通道部成部撤 16:成交失败违约(荷兰式竞拍专用) 17:冻结PD成功 18:冻结PD失败 19:冻结能量成功 20:冻结能量失败 21:预约已报价 22:过期未付 23:优惠券处理中 24:仓单生成失败 25:首付扣款失败 26:履约失败 27:撤单解冻贷款失败
+        wrtradeorderstatus: number
+        /// 仓单贸易类型 - 1:挂牌 2:摘牌 3:提货卖(文化中国) 4:提货买(文化中国)
+        wrtradetype: number
+        /// 商品
+        wrtypename: string
+    }
+
+    /* 查询仓单成交明细 请求*/
+    interface WrTradeDetailReq {
+        /// 页码
+        page?: number
+        /// 每页条数
+        pagesize?: number
+        /// 用户id
+        userid: number
+        /// 仓单贸易市场id
+        marketid?: number
+        /// 0:仓单预售 1:仓单贸易
+        haswr: number
+        /// 开始交易日(yyyymmdd)
+        begindate?: string
+        /// 结束交易日(yyyymmdd)
+        enddate?: string
+    }
+
+    /* 查询仓单成交明细 响应*/
+    interface WrTradeDetailRsp {
+        /// 资金账号
+        accountid: number
+        /// Banner图
+        bannerpicurl: string
+        /// 开始交易日(yyyymmdd)
+        begindate: string
+        /// 买卖 - 0:买 1:卖(挂牌类型 买为采购 卖为销售)
+        buyorsell: number
+        /// 手续费
+        chargevalue: number
+        /// 品种代码
+        deliverygoodscode: string
+        /// 品种ID
+        deliverygoodsid: number
+        /// 品种名称
+        deliverygoodsname: string
+        /// 交收月
+        deliverymonth: string      
+        /// 结束交易日(yyyymmdd)
+        enddate: string       
+        /// 单位名称
+        enumdicname: string
+        /// 是否有仓单-卖方 - 0:无仓单 1:有仓单
+        haswr: number
+        /// 市场ID
+        marketid: number
+        /// 对手账号
+        matchaccountid: number
+        /// 对手方
+        matchusername: string
+        /// 现货商品最小变动值
+        minivalue: number
+        /// 选择项比较串【{选择项ID}+{冒号}+选择项值 } ,逗号分隔,头尾加逗号】-- 所有选择项拼接,用于比较
+        optioncompare: string
+        /// 缩略图
+        thumurls: string
+        /// 交易日(yyyyMMdd)
+        tradedate: string
+        /// 成交价格
+        tradeprice: number
+        /// 成交数量
+        tradeqty: number
+        /// 成交时间
+        tradetime: string
+        /// 用户ID
+        userid: number
+        /// 仓库ID
+        warehouseid: number
+        /// 仓库名称
+        warehousename: string
+        /// 仓单要素类型ID(212+Unix秒时间戳(10位)+xxxxxx)
+        wrfactortypeid: string
+        /// 仓单要素类型名称(选择项要素的名称合并显示,逗号分隔)
+        wrfactortypename: string
+        /// 现货商品代码
+        wrstandardcode: string
+        /// 现货商品ID
+        wrstandardid: number
+        /// 商品名称
+        wrstandardname: string
+        /// 仓单贸易成交单ID(321+Unix秒时间戳(10位)+xxxxxx)
+        wrtradedetailid: string
+        /// 仓单贸易类型 - 1:挂牌 2:摘牌 3:提货卖(文化中国) 4:提货买(文化中国)
+        wrtradetype: number
+        /// 商品
+        wrtypename: string
+    }
+
+    /* 查询我的订单-采购订单 请求*/
+    interface THJPurchaseTradeDetailReq {
+        /// 页码
+        page?: number
+        /// 每页条数
+        pagesize?: number
+        /// 用户id
+        userid: number
+        /// 类型 - 0:未完成 1:已完成
+        type?: number
+    }
+
+    /* 查询我的订单-采购订单 响应*/
+    interface THJPurchaseTradeDetailRsp {
+        /// 买方账号ID
+        buyaccountid: number
+        /// 买方到期手续费
+        buychargevalue: number
+        /// 买方确认备注
+        buyconfirmremark: string
+        /// 买方确认时间
+        buyconfirmtime: string
+        /// 买方摘牌冻结手续费
+        buyfreezecharge: number
+        /// 买方用户ID
+        buyuserid: number
+        /// 联系方式
+        contactinfo: string
+        /// 联系人姓名
+        contactname: string
+        /// 贸易合同地址(买家)
+        contractaddrbuy: string
+        /// 贸易合同地址(卖家)
+        contractaddrsell: string
+        /// 现货品种ID
+        deliverygoodsid: number
+        /// 定金比例
+        depositrate: number
+        /// 目的地地址
+        desaddress: string
+        /// 优惠总金额(优惠金额*TradeQty)
+        discountamount: number
+        /// 处理状态
+        handlestatus: number
+        /// 到期总货款 = 到期价格 * 摘牌数量
+        lastamount: number
+        /// 到期价格
+        lastprice: number
+        /// 到期价格日期 - 暂不使用
+        lastpricedate: string
+        /// 市场ID
+        marketid: number
+        /// 单据状态 - 1:待付尾款 2:支付尾款成功 3:支付尾款失败 4:已违约 5:卖方已确认 6:买方已确认 7:系统自动确认 (枚举:THJOrderStatus)
+        orderstatus: number
+        /// 买方已付定金
+        payeddeposit: number
+        /// 支付尾款成功交易日
+        payedtradedate: string
+        /// 预售申请ID(184+Unix秒时间戳(10位)+xxxxxx)
+        presaleapplyid: number
+        /// 发票信息
+        receiptinfo: string
+        /// 剩余货款 = 到期总货款 - 已付定金 - 优惠金额
+        remainamount: number
+        /// 卖方账号ID
+        sellaccountid: number
+        /// 卖方到期手续费
+        sellchargevalue: number
+        /// 卖方确认附件
+        sellconfirmattach: string
+        /// 卖方确认备注
+        sellconfirmremark: string
+        /// 卖方确认时间
+        sellconfirmtime: string
+        /// 卖方确认交易日
+        sellconfirmtradedate: string
+        /// 卖方用户ID
+        selluserid: number
+        /// 交割方式 - 1:平台仓储 2:自提 3:代办运输 (枚举:THJDeliveryMode)
+        thjdeliverymode: number
+        /// 提货方式
+        thjdeliverymodedisplay: string
+        /// 状态
+        thjorderstatusdisplay: string
+        /// 摘牌总货款
+        tradeamount: number
+        /// 交易日(yyyyMMdd)
+        tradedate: string
+        /// 摘牌价格
+        tradeprice: number
+        /// 摘牌数量
+        tradeqty: number
+        /// 摘牌时间
+        tradetime: string
+        /// 仓库ID
+        warehouseid: number
+        /// 仓库名称
+        warehousename: string
+        /// 仓单要素类型ID
+        wrfactortypeid: number
+        /// 现货商品ID
+        wrstandardid: number
+        /// 现货商品名称
+        wrstandardname: string
+        /// 采购成交单ID(321+Unix秒时间戳(10位)+xxxxxx)
+        wrtradedetailid: number
+    }
+}