Handy_Cao 3 rokov pred
rodič
commit
13a22c18ee
63 zmenil súbory, kde vykonal 1669 pridanie a 1087 odobranie
  1. 0 3
      GuangZuan/miniprogram/app.json
  2. 23 0
      GuangZuan/miniprogram/config/proto/mtp.proto
  3. 14 0
      GuangZuan/miniprogram/constants/enum/index.ts
  4. BIN
      GuangZuan/miniprogram/images/mine-bsfw.png
  5. BIN
      GuangZuan/miniprogram/images/mine-cjjc.png
  6. BIN
      GuangZuan/miniprogram/images/mine-fpxx.png
  7. BIN
      GuangZuan/miniprogram/images/mine-gywm.png
  8. BIN
      GuangZuan/miniprogram/images/mine-mmxg.png
  9. BIN
      GuangZuan/miniprogram/images/mine-qyzh.png
  10. BIN
      GuangZuan/miniprogram/images/mine-shdz.png
  11. BIN
      GuangZuan/miniprogram/images/mine-wddd.png
  12. BIN
      GuangZuan/miniprogram/images/mine-wdkc.png
  13. BIN
      GuangZuan/miniprogram/images/mine-wdly.png
  14. BIN
      GuangZuan/miniprogram/images/trade-listingbuy.png
  15. BIN
      GuangZuan/miniprogram/images/trade-listingsell.png
  16. BIN
      GuangZuan/miniprogram/images/trade-search.png
  17. 0 1
      GuangZuan/miniprogram/mHome/pages/goodsdetail/index.ts
  18. 1 0
      GuangZuan/miniprogram/mHome/pages/jewelry/list/index.less
  19. 77 84
      GuangZuan/miniprogram/mHome/pages/search/index.ts
  20. 18 7
      GuangZuan/miniprogram/mMine/pages/bank/index.ts
  21. 1 1
      GuangZuan/miniprogram/mMine/pages/myinventorys/list/index.ts
  22. 7 7
      GuangZuan/miniprogram/mMine/pages/myorders/list/index.wxml
  23. 0 4
      GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.json
  24. 0 77
      GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.less
  25. 0 72
      GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.ts
  26. 0 0
      GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.wxml
  27. 0 5
      GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.json
  28. 0 0
      GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.less
  29. 0 65
      GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.ts
  30. 0 0
      GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.wxml
  31. 2 1
      GuangZuan/miniprogram/mTrade/pages/delistingsell/index.json
  32. 126 0
      GuangZuan/miniprogram/mTrade/pages/delistingsell/index.less
  33. 169 2
      GuangZuan/miniprogram/mTrade/pages/delistingsell/index.ts
  34. 51 0
      GuangZuan/miniprogram/mTrade/pages/delistingsell/index.wxml
  35. 0 4
      GuangZuan/miniprogram/mTrade/pages/diadetail/index.json
  36. 0 29
      GuangZuan/miniprogram/mTrade/pages/diadetail/index.less
  37. 0 66
      GuangZuan/miniprogram/mTrade/pages/diadetail/index.ts
  38. 0 0
      GuangZuan/miniprogram/mTrade/pages/diadetail/index.wxml
  39. 5 1
      GuangZuan/miniprogram/mTrade/pages/listingbuy/index.json
  40. 86 89
      GuangZuan/miniprogram/mTrade/pages/listingbuy/index.less
  41. 257 166
      GuangZuan/miniprogram/mTrade/pages/listingbuy/index.ts
  42. 69 68
      GuangZuan/miniprogram/mTrade/pages/listingbuy/index.wxml
  43. 4 1
      GuangZuan/miniprogram/mTrade/pages/listingsell/index.json
  44. 132 55
      GuangZuan/miniprogram/mTrade/pages/listingsell/index.less
  45. 199 33
      GuangZuan/miniprogram/mTrade/pages/listingsell/index.ts
  46. 46 28
      GuangZuan/miniprogram/mTrade/pages/listingsell/index.wxml
  47. 2 1
      GuangZuan/miniprogram/mTrade/pages/orderdetail/index.json
  48. 46 28
      GuangZuan/miniprogram/mTrade/pages/orderdetail/index.less
  49. 57 2
      GuangZuan/miniprogram/mTrade/pages/orderdetail/index.ts
  50. 54 38
      GuangZuan/miniprogram/mTrade/pages/orderdetail/index.wxml
  51. 8 0
      GuangZuan/miniprogram/pages/circle/index.less
  52. 6 0
      GuangZuan/miniprogram/pages/home/index.less
  53. 2 3
      GuangZuan/miniprogram/pages/home/index.wxml
  54. 16 19
      GuangZuan/miniprogram/pages/mine/index.less
  55. 10 10
      GuangZuan/miniprogram/pages/mine/index.ts
  56. 14 12
      GuangZuan/miniprogram/pages/mine/index.wxml
  57. 5 1
      GuangZuan/miniprogram/pages/trade/index.less
  58. 77 84
      GuangZuan/miniprogram/pages/trade/index.ts
  59. 11 11
      GuangZuan/miniprogram/pages/trade/index.wxml
  60. 5 0
      GuangZuan/miniprogram/services/api/orders/index.ts
  61. 7 7
      GuangZuan/project.private.config.json
  62. 1 1
      GuangZuan/typings/types/model/common.d.ts
  63. 61 1
      GuangZuan/typings/types/model/order.d.ts

+ 0 - 3
GuangZuan/miniprogram/app.json

@@ -86,9 +86,6 @@
       "name": "mTrade",
       "pages": [
         "pages/listingbuy/index",
-        "pages/diadetail/index",
-        "pages/buyinquiry/index",
-        "pages/delistingbuy/index",
         "pages/delistingsell/index",
         "pages/listingsell/index",
         "pages/orderdetail/index"

+ 23 - 0
GuangZuan/miniprogram/config/proto/mtp.proto

@@ -2387,6 +2387,29 @@ message ZSBuyOrderListingRsp {
   optional string OrderTime = 7; // 接收委托交易的时间
   optional string ClientSerialNo = 8; // 客户端流水号
 }
+// 钻石买挂牌属性
+message GZBuyOrderDetailExInfo {
+  optional uint64 UserID = 1; // 用户ID
+  optional uint64 AccountID = 2; // 资金账户ID
+  optional uint32 ZSCategory = 3; // 钻石分类
+  repeated uint32 ZSCurrencyType = 4; // 货币类型
+  repeated uint32 ZSShapeType = 5; // 形状
+  repeated uint32 ZSColorType = 6; // 颜色
+  repeated uint32 ZSClarityType = 7; // 净度
+  repeated uint32 ZSCutType = 8; // 切工
+  repeated uint32 ZSSymmetryType = 9; // 对称度
+  repeated uint32 ZSPolishType = 10; // 抛光度
+  repeated uint32 ZSFluorescenceType = 11; // 荧光
+  repeated double Size = 12; // 尺寸
+  repeated uint32 ZSCrystalType = 13; // 晶型
+  optional string Origin = 14; // 原产地
+  repeated uint32 ZSStyleType = 15; // 款式
+  repeated uint32 ZSCZColor1Type = 16; // 彩钻颜色1
+  repeated uint32 ZSCZColor2Type = 17; // 彩钻颜色2
+  repeated uint32 ZSCZColor3Type = 18; // 彩钻颜色3
+  optional string Remark = 19; // 备注
+  repeated uint64 WarehouseIDs = 20; // 仓库ID
+}
 // 钻石卖挂牌接口请求
 message ZSSellOrderListingReq {
 	optional MessageHead Header = 1;

+ 14 - 0
GuangZuan/miniprogram/constants/enum/index.ts

@@ -250,4 +250,18 @@ export enum ZSCZColor3Type {
   Brown = 8,         // 棕色
   Gray = 9,          // 灰色
   Black = 9,         // 黑色
+}
+
+/// 有效类型
+export enum EValidType {
+  /// 当日有效
+  VALIDTYPE_DR = 1,
+  /// 本周有效
+  VALIDTYPE_BZ = 2,
+  /// 指定日期有效
+  VALIDTYPE_ZDRQ = 3,
+  /// 一直有效
+  VALIDTYPE_YZ = 4,
+  /// 指定时间有效
+  VALIDTYPE_GTT = 5,
 }

BIN
GuangZuan/miniprogram/images/mine-bsfw.png


BIN
GuangZuan/miniprogram/images/mine-cjjc.png


BIN
GuangZuan/miniprogram/images/mine-fpxx.png


BIN
GuangZuan/miniprogram/images/mine-gywm.png


BIN
GuangZuan/miniprogram/images/mine-mmxg.png


BIN
GuangZuan/miniprogram/images/mine-qyzh.png


BIN
GuangZuan/miniprogram/images/mine-shdz.png


BIN
GuangZuan/miniprogram/images/mine-wddd.png


BIN
GuangZuan/miniprogram/images/mine-wdkc.png


BIN
GuangZuan/miniprogram/images/mine-wdly.png


BIN
GuangZuan/miniprogram/images/trade-listingbuy.png


BIN
GuangZuan/miniprogram/images/trade-listingsell.png


BIN
GuangZuan/miniprogram/images/trade-search.png


+ 0 - 1
GuangZuan/miniprogram/mHome/pages/goodsdetail/index.ts

@@ -1,4 +1,3 @@
-import Long from "long"
 import { FunCode } from "../../../constants/enum/funcode"
 import { EOrderSrc } from "../../../constants/enum/index"
 import { sendMsgToMQ } from "../../../services/api/common/index"

+ 1 - 0
GuangZuan/miniprogram/mHome/pages/jewelry/list/index.less

@@ -26,6 +26,7 @@ Page {
     border-radius: 10px;
     margin-top: 5px;
     box-shadow: 10px 10px 10px #ddd;
+    margin-bottom: 10px;
 
     .goods-icon {
       width: 100%;

+ 77 - 84
GuangZuan/miniprogram/mHome/pages/search/index.ts

@@ -1,3 +1,5 @@
+import { getEnumList } from "../../../services/utils"
+
 // pages/search/index.ts
 Page({
 
@@ -11,111 +13,36 @@ Page({
     tabs: [{id: 2, name: '单颗裸钻'}, {id: 5, name: '单颗彩钻'}],
     /// tab索引
     active: 0,
-
     /// 形状
-    shapes: [{id: 1, name: '圆明亮形', isCheck: true}, 
-             {id: 2, name: '公主方形', isCheck: false}, 
-             {id: 3, name: '心形', isCheck: false}, 
-             {id: 4, name: '马眼形', isCheck: false}, 
-             {id: 5, name: '三角形', isCheck: false}, 
-             {id: 6, name: '垫形', isCheck: false}, 
-             {id: 7, name: '祖母绿形', isCheck: false}, 
-             {id: 8, name: '梨形', isCheck: false}, 
-             {id: 9, name: '椭圆形', isCheck: false}, 
-             {id: 10, name: '长方形', isCheck: false}, 
-             {id: 11, name: '雷迪恩形', isCheck: false}, 
-             {id: 12, name: '阿斯切形', isCheck: false}, 
-             {id: 13, name: '其他', isCheck: false}],
+    shapes: [{ id: 1, name: '圆明亮形', isCheck: true }],
     /// 选中形状         
     shape: ['1'],
     /// 颜色
-    colors: [{id: 1, name: 'D', isCheck: true}, 
-             {id: 2, name: 'E', isCheck: false}, 
-             {id: 3, name: 'F', isCheck: false}, 
-             {id: 4, name: 'G', isCheck: false}, 
-             {id: 5, name: 'H', isCheck: false}, 
-             {id: 6, name: 'I', isCheck: false}, 
-             {id: 7, name: 'J', isCheck: false}, 
-             {id: 8, name: 'K', isCheck: false}, 
-             {id: 9, name: 'L', isCheck: false}, 
-             {id: 10, name: 'M', isCheck: false}, 
-             {id: 11, name: 'N', isCheck: false}, 
-             {id: 12, name: 'O', isCheck: false}, 
-             {id: 13, name: 'P', isCheck: false}, 
-             {id: 14, name: 'Q', isCheck: false}, 
-             {id: 15, name: 'R', isCheck: false}, 
-             {id: 16, name: 'S', isCheck: false}, 
-             {id: 17, name: 'T', isCheck: false}, 
-             {id: 18, name: 'U', isCheck: false}, 
-             {id: 19, name: 'W', isCheck: false}, 
-             {id: 20, name: 'V', isCheck: false}, 
-             {id: 21, name: 'X', isCheck: false}, 
-             {id: 22, name: 'Y', isCheck: false}, 
-             {id: 23, name: 'Z', isCheck: false}, 
-             {id: 24, name: '彩色', isCheck: false}],
+    colors: [{id: 1, name: 'D', isCheck: true}],
     /// 选中形状
     color: [1],
     /// 净度
-    neatness: [{id: 1, name: 'FL', isCheck: true}, 
-              {id: 2, name: 'IF', isCheck: false}, 
-              {id: 3, name: 'VVS1', isCheck: false}, 
-              {id: 4, name: 'VVS2', isCheck: false}, 
-              {id: 5, name: 'VS1', isCheck: false}, 
-              {id: 6, name: 'VS2', isCheck: false}, 
-              {id: 7, name: 'SI1', isCheck: false}, 
-              {id: 8, name: 'SI2', isCheck: false}, 
-              {id: 9, name: 'SI3', isCheck: false}, 
-              {id: 10, name: 'I1', isCheck: false}, 
-              {id: 11, name: 'I2', isCheck: false}, 
-              {id: 12, name: 'I3', isCheck: false}],
+    neatness: [{ id: 1, name: 'FL', isCheck: true }],
     /// 选中净度
     neatnes: 1,
     /// 切工 
-    qiegongs: [{id: 1, name: 'EX', isCheck: true}, 
-               {id: 2, name: 'VG', isCheck: false}, 
-               {id: 3, name: 'G', isCheck: false}, 
-               {id: 4, name: 'F', isCheck: false}, 
-               {id: 5, name: 'P', isCheck: false}],
+    qiegongs: [{ id: 1, name: 'EX', isCheck: true }],
     /// 选中切工
     qiegong: 1,
-
     /// 对称
-    duichengs: [{id: 1, name: 'EX', isCheck: true}, 
-                {id: 2, name: 'VG', isCheck: false}, 
-                {id: 3, name: 'G', isCheck: false}, 
-                {id: 4, name: 'F', isCheck: false}, 
-                {id: 5, name: 'P', isCheck: false}],
+    duichengs: [{ id: 1, name: 'EX', isCheck: true }],
     duicheng: 1,
-
     /// 抛光
-    paoguangs: [{id: 1, name: 'EX', isCheck: true}, 
-                {id: 2, name: 'VG', isCheck: false}, 
-                {id: 3, name: 'G', isCheck: false}, 
-                {id: 4, name: 'F', isCheck: false}, 
-                {id: 5, name: 'P', isCheck: false}],
+    paoguangs: [{ id: 1, name: 'EX', isCheck: true }],
     paoguang: 1,
-
     /// 莹光
-    yingguangs: [{id: 1, name: '无', isCheck: true}, 
-                 {id: 2, name: '微弱', isCheck: false}, 
-                 {id: 3, name: '中等', isCheck: false}, 
-                 {id: 4, name: '强', isCheck: false}, 
-                 {id: 5, name: '极强', isCheck: false}],
+    yingguangs: [{ id: 1, name: '无', isCheck: true }],
     /// 选中莹光
     yingguang: 1,
-
     /// 证书
-    certificates: [{id: 1, name: 'GIA', isCheck: true}, 
-                   {id: 2, name: 'NGTC', isCheck: false}, 
-                   {id: 3, name: 'HRD', isCheck: false}, 
-                   {id: 4, name: 'IGI', isCheck: false}, 
-                   {id: 5, name: 'EGL', isCheck: false},
-                   {id: 6, name: 'AGS', isCheck: false}, 
-                   {id: 7, name: 'NGIC', isCheck: false}, 
-                   {id: 8, name: 'Others', isCheck: false}],
+    certificates: [{ id: 1, name: 'GIA', isCheck: true }],
     /// 选中证书
     certificate: 1,
-
     /// 币种
     currencys: [{id: 1, name: '人民币(¥)', isCheck: true}, 
                 {id: 2, name: '美元($)', isCheck: false}],
@@ -308,7 +235,73 @@ Page({
    * 生命周期函数--监听页面初次渲染完成
    */
   onReady() {
-
+    /// 显示默认数据
+    this.setData({
+      /// 形状
+      shapes: getEnumList('ZSShapeType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      /// 颜色
+      colors: getEnumList('ZSColorType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      /// 净度
+      neatness: getEnumList('ZSClarityType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      /// 切工
+      qiegongs: getEnumList('ZSCutType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      /// 对称
+      duichengs: getEnumList('ZSSymmetryType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      /// 抛光
+      paoguangs: getEnumList('ZSPolishType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      /// 荧光
+      yingguangs: getEnumList('ZSFluorescenceType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      /// 证书
+      certificates: getEnumList('ZSCertType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+    })
   },
 
   /**

+ 18 - 7
GuangZuan/miniprogram/mMine/pages/bank/index.ts

@@ -120,7 +120,16 @@ Page({
           /// hideLoading
           hideLoading(()=>{
             /// 数据赋值
-            this.setData({ bankAccountSign: res.data[0] })
+            this.setData({ 
+              bankAccountSign: res.data[0],
+              bankName: res.data[0].bankname,
+              bankNo: res.data[0].cardno,
+              accountName: res.data[0].bankaccountname,
+              branchBankName: res.data[0].branchbankname,
+              bankInfo: this.data.bankInfos.filter(obj => {
+                return obj.bankid === res.data[0].bankid
+              })[0],
+            })
           })
         },
         fail: (emsg) => {
@@ -156,6 +165,8 @@ Page({
     showLoading(()=>{
       /// 用户信息
       const userinfo = loginQuery().userInfo
+      /// 银行卡号
+      const bankid = this.data.bankAccountSign ? this.data.bankAccountSign.bankid : this.data.bankInfo.bankid
       /// 参数信息
       const param = { 
         /// 扩展信息(JSON串,参考配置要求进行填充)
@@ -171,7 +182,7 @@ Page({
         /// 授权代理人证件类型
         AgentCertType: 0,
         /// 变更类型[1-增加;2-修改;4-绑卡;
-        OperateType: 1,
+        OperateType: this.data.bankAccountSign ? 2 : 1,
         /// 银行卡类型
         BankCardType: 0,
         /// 银行账户类型
@@ -185,11 +196,11 @@ Page({
         /// 开户支行名称
         OpenBankName: this.data.branchBankName,
         /// 银行卡行号
-        OpenBankAccId: this.data.bankInfo.bankid,
+        OpenBankAccId: bankid,
         /// 托管银行编号
         CusBankID: this.data.cusBankInfo.cusbankid,
         /// 开户行名称
-        ExBankName: this.data.bankInfo.bankname,
+        ExBankName: this.data.bankName,
         /// 账户
         AccountCode: accountid().toString(),
         /// 外部操作流水号
@@ -213,7 +224,7 @@ Page({
         success: (res) => {
           /// 请求失败
           if (res.code != 0) {
-            hideLoading(()=>{}, '签约请求请求失败,原因:'+res.msg, 'error')
+            hideLoading(()=>{}, '操作请求失败,原因:'+res.msg, 'error')
             return
           }
           /// 请求成功
@@ -223,10 +234,10 @@ Page({
           }, '签约请求成功', 'success')
         }, 
         fail: (emsg) => {
-          hideLoading(()=>{}, '签约请求请求失败,原因:'+emsg, 'error')
+          hideLoading(()=>{}, '操作请求失败,原因:'+emsg, 'error')
         }
       })
-    }, '签约请求中.....')
+    }, '操作请求中.....')
   },
 
   /**

+ 1 - 1
GuangZuan/miniprogram/mMine/pages/myinventorys/list/index.ts

@@ -93,7 +93,7 @@ Page({
       /// 查询我的库存
       queryMyWRPosition({
         data: {
-          zscategorys: zscategory,
+          zscategorys: zscategory.toString(),
           wruserid: userid()
         },
         success: (res) => {

+ 7 - 7
GuangZuan/miniprogram/mMine/pages/myorders/list/index.wxml

@@ -8,12 +8,12 @@
   <!-- tabs -->
   <view class="tab-view">
     <van-tabs swipeable bind:change="onTabChange" color="#2270D9" title-active-color="#2270D9" title-inactive-color="#8F8AA6">
-      <van-tab wx:for="{{tabs}}" active="{{active}}" wx:for-item="itm" wx:key="id" id="{{itm.id}}" title="{{itm.name}}"/>
+      <van-tab wx:for="{{ tabs }}" active="{{ active }}" wx:for-item="itm" wx:key="id" id="{{ itm.id }}" title="{{ itm.name }}"/>
     </van-tabs>  
   </view>
 
   <!-- 我的摘牌 -->
-  <view class="dtab-view" wx:if="{{active == 2}}">
+  <view class="dtab-view" wx:if="{{ active == 2 }}">
     <van-tabs swipeable bind:change="onDTabChange" color="#2270D9" title-active-color="#2270D9" title-inactive-color="#8F8AA6">
       <van-tab wx:for="{{dtabs}}" active="{{active}}" wx:for-item="itm" wx:key="id" id="{{itm.id}}" title="{{itm.name}}"/>
     </van-tabs> 
@@ -37,16 +37,16 @@
 <!-- 内容滚动视图 --> 
 <scroll-view class="content-view">
   <!-- 数据 --> 
-  <van-swipe-cell wx:for="{{values}}" wx:for-item="itm" wx:for-index="idx" wx:key="idx" right-width="{{ width }}">
+  <van-swipe-cell wx:for="{{ values }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx" right-width="{{ width }}">
     <view class="item-view">
       <view class="item-view-up">
-        <text wx:for="{{itm.up}}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{data}}</text>
+        <text wx:for="{{ itm.up }}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{ data }}</text>
       </view>
       <view class="item-view-mid">
-        <text wx:for="{{itm.mid}}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{data}}</text>
+        <text wx:for="{{ itm.mid }}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{ data }}</text>
       </view>
-      <view class="item-view-dwn" wx:if="{{itm.dwn.length != 0}}">
-        <text wx:for="{{itm.dwn}}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{data}}</text>
+      <view class="item-view-dwn" wx:if="{{ itm.dwn.length != 0 }}">
+        <text wx:for="{{ itm.dwn }}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{ data }}</text>
       </view>
     </view>
     <view slot="right" class="van-swipe-cell__right">

+ 0 - 4
GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.json

@@ -1,4 +0,0 @@
-{
-  "usingComponents": {},
-  "navigationBarTitleText": "购买询价"
-}

+ 0 - 77
GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.less

@@ -1,77 +0,0 @@
-.container {
-  display: flex;
-  flex-direction: column;
-
-  .delisting-info, .inquiry-info {
-    display: grid;
-    margin: 10px;
-    align-content: center;
-    border: 1px solid #f0f0f0;
-    border-radius: 10px;
-
-    view:nth-child(1) {
-      text {
-        font-size: 18px;
-      }
-    }
-
-    .delisting-info-item, .inquiry-info-item {
-      display: flex;
-      flex-direction: row;
-      align-content: center;
-      align-items: center;
-      justify-content: start;
-      height: 45px;
-      border-bottom: 1px solid #f0f0f0;
-      width: 100%;
-      margin: 0px 10px 0px 10px;
-
-      text:nth-child(1) {
-        width: 100px;
-      }
-
-      input {
-        font-size: 14px;
-        color: #333;
-      }
-
-      text:nth-child(3) {
-        width: 60px;
-        padding-left: 10px;
-        font-size: 12px;
-        color: #666;
-      }
-
-      text {
-        font-size: 14px;
-        color: #333333;
-        text-align: left;
-      }
-    }
-
-    .remark {
-      height: 100px;
-
-      textarea {
-        font-size: 13px;
-        color: #444;
-        height: 60px;
-        border: 1px solid #eee;
-        padding: 10px 10px 10px 10px;
-        border-radius: 10px;
-        width: 65%;
-      }
-    }
-  }
-
-  .button-view {
-    display: flex;
-    justify-content: space-between;
-    margin: 10px 10px 10px 10px;
-
-    van-button {
-      width: 48%;
-      height: 40px;
-    }
-  }
-}

+ 0 - 72
GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.ts

@@ -1,72 +0,0 @@
-// mTrade/pages/buyinquiry/index.ts
-Page({
-
-  /**
-   * 页面的初始数据
-   */
-  data: {
-    /// 底部安全区域
-    safeBottom: getApp().globalData.safeBottom,
-  },
-
-  /// 按钮点击响应事件
-  buttonOnClick() {
-    wx.navigateBack()
-  },
-
-  /**
-   * 生命周期函数--监听页面加载
-   */
-  onLoad() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面初次渲染完成
-   */
-  onReady() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面显示
-   */
-  onShow() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面隐藏
-   */
-  onHide() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面卸载
-   */
-  onUnload() {
-
-  },
-
-  /**
-   * 页面相关事件处理函数--监听用户下拉动作
-   */
-  onPullDownRefresh() {
-
-  },
-
-  /**
-   * 页面上拉触底事件的处理函数
-   */
-  onReachBottom() {
-
-  },
-
-  /**
-   * 用户点击右上角分享
-   */
-  onShareAppMessage() {
-
-  }
-})

+ 0 - 0
GuangZuan/miniprogram/mTrade/pages/buyinquiry/index.wxml


+ 0 - 5
GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.json

@@ -1,5 +0,0 @@
-{
-  "usingComponents": {},
-  "navigationBarTitleText": "摘牌申请(买)",
-  "navigationStyle": "custom"
-}

+ 0 - 0
GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.less


+ 0 - 65
GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.ts

@@ -1,65 +0,0 @@
-Page({
-
-  /**
-   * 页面的初始数据
-   */
-  data: {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面加载
-   */
-  onLoad() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面初次渲染完成
-   */
-  onReady() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面显示
-   */
-  onShow() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面隐藏
-   */
-  onHide() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面卸载
-   */
-  onUnload() {
-
-  },
-
-  /**
-   * 页面相关事件处理函数--监听用户下拉动作
-   */
-  onPullDownRefresh() {
-
-  },
-
-  /**
-   * 页面上拉触底事件的处理函数
-   */
-  onReachBottom() {
-
-  },
-
-  /**
-   * 用户点击右上角分享
-   */
-  onShareAppMessage() {
-
-  }
-})

+ 0 - 0
GuangZuan/miniprogram/mTrade/pages/delistingbuy/index.wxml


+ 2 - 1
GuangZuan/miniprogram/mTrade/pages/delistingsell/index.json

@@ -1,4 +1,5 @@
 {
   "usingComponents": {},
-  "navigationBarTitleText": "摘牌申请(卖)"
+  "navigationBarTitleText": "摘牌申请(买)",
+  "navigationStyle": "custom"
 }

+ 126 - 0
GuangZuan/miniprogram/mTrade/pages/delistingsell/index.less

@@ -0,0 +1,126 @@
+.container {
+  display: flex;
+  flex-direction: column;
+
+  .wrPostionList {
+    .mydiamon {
+      padding: 5px 10px;
+      font-size: 16px;
+      color: #333;
+      text-align: center;
+    }
+
+    .title-view {
+      margin: 10px;
+      background-color: #f0f0f0;
+      border-radius: 10px;
+      display: flex;
+      align-items: center;
+      align-content: center;
+      flex-direction: column;
+      padding: 5px 10px;
+    
+      .title-view-up, .title-view-mid, .title-view-dwn {
+        display: flex;
+        flex-direction: row;
+        justify-content: space-between;
+        align-items: center;
+        width: 100%;
+        align-content: center;
+        height: 25px;
+    
+        text {
+          color: #666;
+          font-size: 13px;
+          text-align: center;
+        }
+  
+        :first-child {
+          text-align: left;
+        }
+  
+        :last-child {
+          text-align: right;
+        }
+      }
+    
+      .title-view-up {
+        border-bottom: 1px solid #ddd;
+        padding-bottom: 5px;
+      }
+  
+      .title-view-mid {
+        padding: 5px 0px;
+      }
+    }
+  
+    .item-view {
+      margin: 10px;
+      border-radius: 10px;
+      display: flex;
+      align-items: center;
+      align-content: center;
+      flex-direction: column;
+      padding: 5px 10px;
+      border: 1px solid #ddd;
+    
+      .item-view-up, .item-view-dwn {
+        display: flex;
+        flex-direction: row;
+        justify-content: space-between;
+        align-items: center;
+        height: 50%;
+        width: 100%;
+        align-content: center;
+        height: 25px;
+    
+        text {
+          color: #333;
+          font-size: 13px;
+          /*超出隐藏*/
+          overflow: hidden;
+            /*溢出不换行*/
+          white-space: nowrap;
+          /*溢出显示用省略号*/
+          text-overflow: ellipsis;
+          text-align: center;
+        }
+    
+        :first-child {
+          text-align: left;
+        }
+    
+        :last-child {
+          text-align: right;
+        }
+      }
+    
+      .item-view-up {
+        border-bottom: 1px solid #ddd;
+        padding-bottom: 5px;
+    
+        text {
+          width: 25%;
+        }
+      }
+    }  
+
+    /* 选中时添加这个 样式 */
+    .active {
+      background: #E6F1FF;
+    }
+  }
+
+  .button-view {
+    display: flex;
+    justify-content: space-between;
+    margin: 10px;
+    justify-content: center;
+    justify-items: center;
+
+    van-button {
+      height: 40px;
+      width: 80%;
+    }
+  }
+}

+ 169 - 2
GuangZuan/miniprogram/mTrade/pages/delistingsell/index.ts

@@ -1,17 +1,184 @@
+import { FunCode } from "../../../constants/enum/funcode";
+import { sendMsgToMQ } from "../../../services/api/common/index";
+import { queryMyWRPosition } from "../../../services/api/orders/index";
+import { accountid, clientType, isEncrypted, marketid, protoHeader, timetample, userid } from "../../../services/utils";
+import { hideLoading, showLoading, showModel } from "../../../utils/message/index";
+import { isnullstr } from "../../../utils/util";
+
 Page({
 
   /**
    * 页面的初始数据
    */
   data: {
+    /// 单据信息
+    order: <GuangZuan.BuyOrder>({}),
+    /// 我的库存
+    objs: <GuangZuan.MyWRPosition[]>[],
+    /// 选中的仓单
+    wrPositon: <GuangZuan.MyWRPosition>({}),
+    /// 备注信息
+    remark: '',
+    /// 申请价格
+    applyPrice: 0.0,
+    /// 列头
+    titles: [['重量', '形状', '尺寸', '编号'], 
+             ['颜色 | 净度 | 切工 | 对称 | 抛光 | 荧光 | 证书', '价格']],
+    // 显示的值
+    values: [{ up: [''], dwn: [''], isChecked: false }],
+    /// 数据是否为空
+    isEmpty: false,
+    /// 单据显示
+    orderValue: { up: [''], dwn: ['']},
+  },
+
+  /**
+   * 返回上层视图
+   */
+  backToParent() {
+    /// 返回上层视图
+    wx.navigateBack()
+  },
 
+    /**
+   * 每行选中触发事件
+   */
+  onSelectItem(e: any) {
+    var objs = this.data.values
+    objs.forEach(obj => {
+      obj.isChecked = false
+    })
+    objs[e.currentTarget.id].isChecked = true
+    /// 数据赋值
+    this.setData({ 
+      values: objs,
+      wrPositon: this.data.objs[e.currentTarget.id]
+    })
+  },
+
+  /// 摘买
+  doDelistingBuy() {
+    /// showModel
+    showModel(() => {
+      /// showLoading
+      showLoading(() => {
+        /// 参数信息
+        const params = {
+          Header: protoHeader(FunCode.ZSSellOrderDestingApplyReq),
+          UserID: userid(),
+          AccountID: accountid(),
+          BuyWRTradeOrderID: '',
+          WRStandardID: '',
+          WRFactorTypeID: 0,
+          ApplyQty: 0,
+          ApplyPrice: this.data.applyPrice,
+          LadingBillID: '',
+          SubNum: 0,
+          ApplyRemark: this.data.remark,
+          ClientType: clientType(),
+          ClientSerialNo: timetample(),
+          MarketID: marketid()
+        }
+        
+        /// 发送请求
+        sendMsgToMQ({
+          data: {
+            data: JSON.stringify(params),
+            funCodeRsp: FunCode.ZSSellOrderDestingApplyRsp,
+            funCodeReq: FunCode.ZSSellOrderDestingApplyReq,
+            isEncrypted: isEncrypted()
+          },
+          success: (res) => {
+            /// 请求失败
+            if (res.code != 0) {
+              hideLoading(()=>{}, '摘牌请失败,原因:'+res.msg, 'error')
+              return
+            }
+            /// 求购发布请求成功
+            hideLoading(() => {
+              wx.navigateBack()
+            }, '摘牌请成功', 'success')
+          },
+          fail: (emsg) => {
+            hideLoading(()=>{}, '摘牌请求失败,原因:'+emsg, 'error')
+          }
+        })
+      }, '摘牌请求中.....')
+    }, '提示', '确认要摘牌吗?')
+  },
+
+  /// 查询我的库存
+  queryMyWRPosition() {
+    /// showLoading
+    showLoading(() => {
+      /// 发送查询请求
+      queryMyWRPosition({
+        data: {
+          wruserid: userid(),
+          zscategorys: this.data.order.zscategory.toString(),
+          marketflag: 1
+        },
+        success: (res) => {
+          /// hideLoading
+          hideLoading(() => {
+            this.setData({ 
+              objs: res.data,
+              isEmpty: res.data.length === 0,
+              /// 显示的值
+              values: res.data.map(obj => {
+                return {up: [obj.weight+'ct', 
+                            isnullstr(obj.zsshapetypedisplay), 
+                            isnullstr(obj.size1), 
+                            isnullstr(obj.goodsno)], 
+                        dwn: [isnullstr(obj.zsczcolor1typedisplay)+' | '+
+                              isnullstr(obj.zsclaritytype1display)+' | '+
+                              isnullstr(obj.zscuttype1display)+' | '+
+                              isnullstr(obj.zssymmetrytype1display)+' | '+
+                              isnullstr(obj.zspolishtype1display)+' | '+
+                              isnullstr(obj.zsfluorescencetype1display)+' | '+
+                              isnullstr(obj.zscerttypedisplay),
+                            obj.zscurrencytypedisplayunit+obj.price.toFixed(2)], 
+                        isChecked: false}
+              })
+            })
+          })
+        },
+        fail: (emsg) => {
+          hideLoading(() => {}, '库存请求失败,原因:'+emsg, 'error')
+        }
+      })
+    })
   },
 
   /**
    * 生命周期函数--监听页面加载
    */
-  onLoad() {
-
+  onLoad(options: any) {
+    /// 数据显示
+    try {
+      const item = JSON.parse(options.item)
+      if (item) {
+        this.setData({ 
+          order: item,
+          orderValue: {
+            up: [isnullstr(item.zsshapetypedisplay), 
+                 isnullstr(item.zssize), 
+                 isnullstr(item.zscategorydisplay)],
+            dwn: [isnullstr(item.zscolortypedisplay)+' | '+
+                  isnullstr(item.zsclaritytypedisplay)+' | '+
+                  isnullstr(item.zscuttypedisplay)+' | '+
+                  isnullstr(item.zssymmetrytypedisplay)+' | '+
+                  isnullstr(item.zspolishtypedisplay)+' | '+
+                  isnullstr(item.zsfluorescencetypedisplay)+' | '+
+                  isnullstr(item.zscerttypedisplay)]
+          }
+        })
+      }
+      /// 查询我的库存
+      this.queryMyWRPosition()
+    } catch (error) {
+      console.log(error)
+    }
   },
 
   /**

+ 51 - 0
GuangZuan/miniprogram/mTrade/pages/delistingsell/index.wxml

@@ -1 +1,52 @@
+<view class="container">
+  <!-- 导航栏 -->
+  <van-nav-bar custom-style="background-color: #fff">
+    <van-icon slot="left" name="arrow-left" size="25px" color="#333" bind:click="backToParent"/>
+    <text slot="title" style="color: #333;">求购信息</text>
+  </van-nav-bar>
 
+  <view class="wrPostionList">
+    <!-- 数据 --> 
+    <van-swipe-cell>
+      <view class="item-view">
+        <view class="item-view-up">
+          <text wx:for="{{ orderValue.up }}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{ data }}</text>
+        </view>
+        <view class="item-view-dwn">
+          <text wx:for="{{ orderValue.dwn }}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{ data }}</text>
+        </view>
+      </view>
+    </van-swipe-cell>
+
+    <text class="mydiamon">我的钻石</text>
+    <!-- 列头 --> 
+    <view class="title-view">
+      <view class="title-view-up">
+        <text wx:for="{{titles[0]}}" wx:for-item="itm" wx:for-index="idx" wx:key="idx">{{itm}}</text>
+      </view>
+      <view class="title-view-dwn">
+        <text wx:for="{{titles[1]}}" wx:for-item="itm" wx:for-index="idx" wx:key="idx">{{itm}}</text>
+      </view>
+    </view>
+
+    <!-- 数据 --> 
+    <van-swipe-cell wx:for="{{ values }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx" bind:click="onSelectItem" id="{{ idx }}">
+      <view class="item-view {{ values[idx].isChecked ? 'active' : '' }}">
+        <view class="item-view-up">
+          <text wx:for="{{itm.up}}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{data}}</text>
+        </view>
+        <view class="item-view-dwn">
+          <text wx:for="{{itm.dwn}}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{data}}</text>
+        </view>
+      </view>
+    </van-swipe-cell>
+  </view>
+
+  <!-- 提交按钮视图 -->
+  <view class="button-view">
+    <van-button id="close" block round color="#7232dd" bind:click="doDelistingBuy">确认摘牌</van-button>
+  </view>
+</view>
+
+<!-- empty -->
+<van-empty wx:if="{{ isEmpty }}" class="custom-image" description="无数据"/>

+ 0 - 4
GuangZuan/miniprogram/mTrade/pages/diadetail/index.json

@@ -1,4 +0,0 @@
-{
-  "usingComponents": {},
-  "navigationBarTitleText": "钻石详情"
-}

+ 0 - 29
GuangZuan/miniprogram/mTrade/pages/diadetail/index.less

@@ -1,29 +0,0 @@
-.button_view {
-  display: flex;
-  flex-direction: row;
-  justify-content: space-between;
-  align-items: center;
-}
-
-.button_view {
-  display: flex;
-  flex-direction: row;
-  justify-content: space-around;
-  align-items: center;
-  margin-top: 20px;
-}
-
-.button_view button {
-  width: 45%;
-  font-size: 28rpx;
-  color: #fff;
-  padding: 10rpx;
-}
-
-.button_view button:nth-child(1) {
-  background-color: red;
-}
-
-.button_view button:nth-child(2) {
-  background-color: green;
-}

+ 0 - 66
GuangZuan/miniprogram/mTrade/pages/diadetail/index.ts

@@ -1,66 +0,0 @@
-Page({
-
-  /**
-   * 页面的初始数据
-   */
-  data: {
-    /// 底部安全区域
-    safeBottom: getApp().globalData.safeBottom,
-  },
-
-  /**
-   * 生命周期函数--监听页面加载
-   */
-  onLoad() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面初次渲染完成
-   */
-  onReady() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面显示
-   */
-  onShow() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面隐藏
-   */
-  onHide() {
-
-  },
-
-  /**
-   * 生命周期函数--监听页面卸载
-   */
-  onUnload() {
-
-  },
-
-  /**
-   * 页面相关事件处理函数--监听用户下拉动作
-   */
-  onPullDownRefresh() {
-
-  },
-
-  /**
-   * 页面上拉触底事件的处理函数
-   */
-  onReachBottom() {
-
-  },
-
-  /**
-   * 用户点击右上角分享
-   */
-  onShareAppMessage() {
-
-  }
-})

+ 0 - 0
GuangZuan/miniprogram/mTrade/pages/diadetail/index.wxml


+ 5 - 1
GuangZuan/miniprogram/mTrade/pages/listingbuy/index.json

@@ -2,7 +2,11 @@
   "usingComponents": {
     "num-range": "/components/num-range/num-range",
     "van-radio": "@vant/weapp/radio/index",
-    "van-radio-group": "@vant/weapp/radio-group/index"
+    "van-radio-group": "@vant/weapp/radio-group/index",
+    "van-dropdown-menu": "@vant/weapp/dropdown-menu/index",
+    "van-dropdown-item": "@vant/weapp/dropdown-item/index",
+    "van-picker": "@vant/weapp/picker/index",
+    "van-popup": "@vant/weapp/popup/index"
   },
   "navigationBarTitleText": "我要求购",
   "enablePullDownRefresh": false,

+ 86 - 89
GuangZuan/miniprogram/mTrade/pages/listingbuy/index.less

@@ -2,106 +2,103 @@
   display: flex;
   flex-direction: column;
   width: 100%;
-}
-
-.cell-view {
-  display: flex;
-  border-bottom: 1px solid #f0f0f0;
-  align-items: center;
-  margin: 0px 10px;
-
-  text {
-    width: 90px;
-    text-align: left;
-    color: #333;
-    font-size: 26rpx;
-  }
 
-  .content {
+  .cell-view {
     display: flex;
-    flex-direction: row;
-    flex-wrap: wrap;
-    width: 100%;
-    align-content: center;
-
-    button {
-      margin: 5px;
-      height: 33px;
+    border-bottom: 1px solid #f0f0f0;
+    align-items: center;
+    margin: 5px;
+  
+    .title {
+      width: 90px;
+      text-align: left;
       color: #333;
-      width: 21.8%;
-      border-radius: 5px;
+      font-size: 26rpx;
+      padding-left: 5px;
     }
+  
+    .content {
+      display: flex;
+      flex-direction: row;
+      flex-wrap: wrap;
+      width: 100%;
+      align-content: center;
+      padding: 5px 0px;
 
-    /* 选中时添加这个 样式 */
-    .active {
-      background: #dae9fd;
-    }
-    
-     /* 三角形 */
-    .active::before {
-      content: '';
-      display: inline-block;
-      position: absolute;
-      right: 0;
-      bottom: 0;
-      width: 0;
-      height: 0;
-      border-bottom: 15px solid rebeccapurple;
-      border-left: 14px solid transparent; 
+      .van-dropdown-menu {
+        width: 300px;
+        margin: 5px 0px;
+      }
+  
+      .item {
+        margin: 5px;
+        height: 33px;
+        color: #333;
+        width: 21.8%;
+        border-radius: 5px;
+        font-size: 12px;
+      }
+  
+      /* 选中时添加这个 样式 */
+      .active {
+        background: #dae9fd;
+      }
+      
+       /* 三角形 */
+      .active::before {
+        content: '';
+        display: inline-block;
+        position: absolute;
+        right: 0;
+        bottom: 0;
+        width: 0;
+        height: 0;
+        border-bottom: 15px solid rebeccapurple;
+        border-left: 14px solid transparent; 
+      }
     }
-  }
 
-  button {
-    color: #000;
-    font-size: 24rpx;
-  }
-}
-
-.size view {
-  flex-wrap: nowrap;
-  text-align: center;
-}
+    .prestyle {
+      display: flex;
+      flex-direction: row;
+      align-items: center;
+      align-content: center;
+      justify-content: center;
 
-.shape, .color {
-  height: 140px;
-}
-
-.neatness, .jingxing {
-  height: 100px;
-}
+      .plantmp {
+        color: #333;
+        font-size: 14px;
+        width: 80%;
+        height: 30px;
+      }
+    }
 
-.qiegong, .duicheng, .polishing, .yingguang, .prestyle, .currency, .size, .product {
-  height: 60px;
-}
+    .size-num {
+      margin: 5px 10px 10px 0px;
+    }
 
-.prestyle {
-  button {
-    border: 1rpx solid #f0f0f0;
+    .currency {
+      height: 40px;
+    }
   }
-}
-
-.submit-view {
-  display: flex;
-  flex-direction: row;
-  justify-content: space-between;
-  margin-top: 20px;
-
-  button {
-    width: 80%;
-    color: white;
-    border-radius: 10px;
+  
+  .button-view {
+    display: flex;
+    flex-direction: row;
+    justify-content: center;
+    margin-top: 20px;
+  
+    van-button {
+      width: 80%;
+    }
   }
-
-  button:nth-child(1) {
-    background-color: red;
+  
+  num-range {
+    width: 100%;
+    height: 100%;
+    display: flex;
+    flex-direction: row;
+    align-items: center;
+    align-content: center;
   }
 }
-
-num-range {
-  width: 100%;
-  height: 100%;
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  align-content: center;
-}

+ 257 - 166
GuangZuan/miniprogram/mTrade/pages/listingbuy/index.ts

@@ -1,3 +1,10 @@
+import { EOrderSrc } from "../../../constants/enum/index";
+import { FunCode } from "../../../constants/enum/funcode";
+import { sendMsgToMQ } from "../../../services/api/common/index";
+import { accountid, clientType, getEnumList, isEncrypted, marketid, protoHeader, timetample, userid } from "../../../services/utils";
+import { hideLoading, showLoading, showModel, showToast } from "../../../utils/message/index";
+import { queryPermancePlanTmp } from "../../../services/api/orders/index";
+
 Page({
 
   /**
@@ -7,104 +14,79 @@ Page({
     /// 底部安全区域
     safeBottom: getApp().globalData.safeBottom,
     /// tabs
-    tabs: [{id: 2, name: '单颗裸钻'}, {id: 5, name: '单颗彩钻'}],
+    tabs: [{ id: 2, name: '单颗裸钻' }, { id: 5, name: '单颗彩钻' }],
     /// tab索引
     active: 0,
-    /// 款式
-    styles: [{id: 1, name: '戒指', isCheck: true}, 
-             {id: 2, name: '吊坠', isCheck: false}, 
-             {id: 3, name: '耳环', isCheck: false}, 
-             {id: 4, name: '手镯', isCheck: false}, 
-             {id: 5, name: '其他', isCheck: false}],
-    /// 选中形状         
-    style: '戒指',
+    /// 币种信息
+    currencys: [{ value: 1, text: '人民币' }],
+    /// 币种类型
+    currency: 1,
     /// 形状
-    shapes: [{id: 1, name: '圆形', isCheck: true}, 
-             {id: 2, name: '公主方', isCheck: false}, 
-             {id: 3, name: '祖母绿', isCheck: false}, 
-             {id: 4, name: '垫形', isCheck: false}, 
-             {id: 5, name: '阿斯切', isCheck: false}, 
-             {id: 6, name: '心形', isCheck: false}, 
-             {id: 7, name: '梨形', isCheck: false}, 
-             {id: 8, name: '雷迪恩', isCheck: false}, 
-             {id: 9, name: '椭圆', isCheck: false}, 
-             {id: 10, name: '马眼', isCheck: false}],
+    shapes: [{ id: 1, name: '圆形', isCheck: true }],
     /// 选中形状         
-    shape: '圆形',
+    shape: 0,
     /// 颜色
-    colors: [{id: 1, name: 'D', isCheck: true}, 
-             {id: 2, name: 'E', isCheck: false}, 
-             {id: 3, name: 'F', isCheck: false}, 
-             {id: 4, name: 'G', isCheck: false}, 
-             {id: 5, name: 'H', isCheck: false}, 
-             {id: 6, name: 'I', isCheck: false}, 
-             {id: 7, name: 'J', isCheck: false}, 
-             {id: 8, name: 'K', isCheck: false}, 
-             {id: 9, name: 'L', isCheck: false}],
-    /// 选中颜色
-    color: '',
+    colors: [{ value: 1, text: 'D' }],
+    /// 选中颜色1
+    color1: 1,
+    /// 选中颜色2
+    color2: 1,
     /// 切工 
-    qiegongs: [{id: 1, name: 'EX', isCheck: true}, 
-              {id: 2, name: 'VG', isCheck: false}, 
-              {id: 3, name: 'G', isCheck: false}],
-    /// 选中切工
-    qiegong: '',
-    /// 晶体 
-    jingxings: [{id: 1, name: 'Makeable', isCheck: true}, 
-                {id: 2, name: 'Sawable', isCheck: false}, 
-                {id: 3, name: 'Heart', isCheck: false},
-                {id: 4, name: 'Melee', isCheck: false}, 
-                {id: 5, name: 'Trilliant', isCheck: false}, 
-                {id: 6, name: 'Mixed', isCheck: false},
-                {id: 7, name: 'Others', isCheck: false}],
-    /// 选中晶体
-    jingxing: '',
+    qiegongs: [{ value: 1, text: 'EX' }],
+    /// 选中切工1
+    qiegong1: 1,
+    /// 选中切工2
+    qiegong2: 1,
     /// 对称
-    duichengs: [{id: 1, name: 'EX', isCheck: true}, 
-              {id: 2, name: 'VG', isCheck: false}, 
-              {id: 3, name: 'G', isCheck: false}],
-    /// 选中对称
-    duicheng: '',
-    ///  抛光
-    paoguangs: [{id: 1, name: 'EX', isCheck: true}, 
-                {id: 2, name: 'VG', isCheck: false}, 
-                {id: 3, name: 'G', isCheck: false}],
-    /// 选中抛光
-    paoguang: '',
+    duichengs: [{ value: 1, text: 'EX' }],
+    /// 选中对称1
+    duicheng1: 1,
+    /// 选中对称2
+    duicheng2: 2,
+    /// 抛光
+    paoguangs: [{ value: 1, text: 'EX' }],
+    /// 选中抛光1
+    paoguang1: 1,
+    /// 选中抛光2
+    paoguang2: 2,
     /// 莹光
-    yingguangs: [{id: 1, name: 'N', isCheck: true}, 
-                 {id: 2, name: 'VSL/F', isCheck: false}, 
-                 {id: 3, name: 'M', isCheck: false}, 
-                 {id: 4, name: 'S', isCheck: false}],
-    /// 选中莹光
-    yingguang: '',
+    yingguangs: [{ value: 1, text: 'N' }],
+    /// 选中莹光1
+    yingguang1: 1,
+    /// 选中莹光2
+    yingguang2: 2,
     /// 净度
-    neatness: [{id: 1, name: 'FL/IF', isCheck: true}, 
-              {id: 2, name: 'VVS1', isCheck: false}, 
-              {id: 3, name: 'VVS2', isCheck: false}, 
-              {id: 4, name: 'VS1', isCheck: false}, 
-              {id: 5, name: 'VS2', isCheck: false}, 
-              {id: 6, name: 'Sl1', isCheck: false}, 
-              {id: 7, name: 'Sl2', isCheck: false}, 
-              {id: 8, name: 'l1', isCheck: false}],
-    /// 选中净度
-    neatnes: '',
+    neatness: [{ value: 1, text: 'FL/IF' }],
+    /// 选中净度1
+    neatnes1: 1,
+    /// 选中净度2
+    neatnes2: 1,
+    /// 履约模板信息
+    tmps: <GuangZuan.PermancePlanTmp[]>[],
+    /// 选中履约模板
+    tmp: <GuangZuan.PermancePlanTmp>({}),
+    /// 是否显示
+    show: false,
+    /// 显示信息
+    actions: [''],
+    /// 最小尺寸
+    minSize: 0.0,
+    /// 最大尺寸
+    maxSize: 0.0
   },
 
   /**
    * tab触发事件
    */
   onTabChange(e: any) {
-    this.setData({
-      active: e.detail.index
-    })
+    /// 激活项
+    this.setData({ active: e.detail.index })
   },
 
   /// 单选框
   onChange(e: any) {
     switch (e.target.id) {
-      default:
-        break;
+      default: break;
     }
   },
 
@@ -121,7 +103,6 @@ Page({
     const ids = (<string> e.target.id).split(' ')
     let id = (<string> e.target.id).split(' ')[0]
     const index = <number> <unknown>ids[1]
-
     switch (id) {
       case 'shape':   /// 形状
         this.setData({ shapes: this.data.shapes.map(item => {
@@ -132,104 +113,214 @@ Page({
           }
           return item
         }) })
-        break;
-      case 'color':   /// 颜色
-        this.setData({ colors: this.data.colors.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
-      case 'jingxing':   /// 晶型
-        this.setData({ jingxings: this.data.jingxings.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
-      case 'style':   /// 款式
-        this.setData({ styles: this.data.styles.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
-      case 'neatness':   /// 净度
-        this.setData({ neatness: this.data.neatness.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
-      case 'qiegong':   /// 切工
-        this.setData({ qiegongs: this.data.qiegongs.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
-      case 'duicheng':   /// 对称
-        this.setData({ duichengs: this.data.duichengs.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
-      case 'polishing':   /// 抛光
-        this.setData({ paoguangs: this.data.paoguangs.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
-      case 'yingguang':   /// 荧光
-        this.setData({ yingguangs: this.data.yingguangs.map(item => {
-          if (item.id == index) {
-            item.isCheck = true
-          } else {
-            item.isCheck = false
-          }
-          return item
-        }) })
-        break;
+        break;  
       default:
         break;
     }
   },
 
-  /**
-   * 按钮点击响应事件
-   */
-  toSubmit() {
-    
+  /// 显示履约模板
+  showPlanTmps() {
+    this.setData({ show: true })
+  },
+
+  /// 关闭
+  onClose() {
+    this.setData({ show: false })
+  },
+
+  onSelect(e: any) {
+    /// 默认显示项
+    const { index } = e.detail;
+    this.setData({ tmp: this.data.tmps[index], show: false })
+  },
+
+  onRadioChange(e: any) {
+    console.log(e)
+  },
+
+  /// 重量范围值更改
+  syncNumRange(e: any) {
+    this.setData({
+      minSize: e.detail.value[0],
+      maxSize: e.detail.value[1],
+    })
+  },
+
+  /// 获取履约模板信息
+  queryPermancePlanTmp() {
+    /// showLoading
+    showLoading(() => {
+      queryPermancePlanTmp({
+        data: {
+          marketid: marketid()
+        },
+        success: (res) => {
+          /// 获取数据
+          this.setData({ 
+            tmps: res.data,
+            tmp: res.data[0],
+            actions: res.data.map(obj => { return obj.templatename })
+           })
+        },
+        complete: () => {
+          /// hideLoading
+          hideLoading()
+        }
+      })
+    })
+  },
+
+  /// 发布求购
+  doListingBuy() {
+    /// showModel
+    showModel(() => {
+    /// showLoading
+    showLoading(() => {
+      /// 钻石属性
+      const exinfo = {
+        UserID: userid(),
+        AccountID: accountid(),
+        ZSCategory: this.data.tabs[this.data.active].id,
+        ZSCurrencyType: [this.data.currency],
+        ZSShapeType: [this.data.shape],
+        ZSColorType: [this.data.color1, this.data.color2],
+        ZSClarityType: [this.data.neatnes1, this.data.neatnes2],
+        ZSCutType: [this.data.qiegong1, this.data.qiegong2],
+        ZSSymmetryType: [this.data.duicheng1, this.data.duicheng2],
+        ZSPolishType: [this.data.paoguang1, this.data.paoguang2],
+        ZSFluorescenceType: [this.data.yingguang1, this.data.yingguang2],
+        Size: [this.data.minSize, this.data.maxSize],
+        ZSCZColor1Type: [this.data.color1, this.data.color2],
+      }
+      /// 请求参数
+      const params = {
+        Header: protoHeader(FunCode.ZSBuyOrderListingReq),
+        UserID: userid(),
+        AccountID: accountid(),
+        GZ_BuyOrderDetailExInfo: exinfo,
+        PerformanceTemplateID: this.data.tmp.autoid,
+        MarketID: marketid(),
+        OrderSrc: EOrderSrc.ORDERSRC_CLIENT,
+        ClientType: clientType(),
+        ClientSerialNo: timetample().toString()
+      }
+      /// 发送请求
+      sendMsgToMQ({
+        data: {
+          data: JSON.stringify(params),
+          funCodeReq: FunCode.ZSBuyOrderListingReq,
+          funCodeRsp: FunCode.ZSBuyOrderListingRsp,
+          isEncrypted: isEncrypted()
+        },
+        success: (res) => {
+          /// 请求失败
+          if (res.code != 0) {
+            hideLoading(()=>{}, '求购请求失败,原因:'+res.msg, 'error')
+            return
+          }
+          /// 求购发布请求成功
+          hideLoading(() => {
+            wx.navigateBack()
+          }, '求购发布请求成功', 'success')
+        },
+        fail: (emsg) => {
+          hideLoading(()=>{}, '求购请求失败,原因:'+emsg, 'error')
+        }
+      })
+    }, '求购请求中....')
+    }, '提示', '确认要发布求购吗?')
+  },
+
+  /// 合规性校验
+  check(): boolean {
+    /// 请选择形状
+    if (this.data.shape === 0) {
+      showToast('请选择形状')
+      return false
+    }
+    return true
   },
 
   /**
    * 生命周期函数--监听页面加载
    */
   onLoad() {
-
+    this.setData({
+      /// 形状
+      shapes: getEnumList('ZSShapeType').map(obj => {
+        return {
+          id: obj.enumitemname,
+          name: obj.enumdicname,
+          isCheck: false
+        }
+      }),
+      shape: getEnumList('ZSShapeType')[0].enumitemname,
+      /// 颜色
+      colors: getEnumList('ZSColorType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }),
+      color1: getEnumList('ZSColorType')[0].enumitemname,
+      color2: getEnumList('ZSColorType')[0].enumitemname,
+      /// 净度
+      neatness: getEnumList('ZSClarityType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }),
+      neatnes1: getEnumList('ZSClarityType')[0].enumitemname,
+      neatnes2: getEnumList('ZSClarityType')[0].enumitemname,
+      /// 切工
+      qiegongs: getEnumList('ZSCutType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }),
+      qiegong1: getEnumList('ZSCutType')[0].enumitemname,
+      qiegong2: getEnumList('ZSCutType')[0].enumitemname,
+      /// 对称
+      duichengs: getEnumList('ZSSymmetryType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }), 
+      duicheng1: getEnumList('ZSSymmetryType')[0].enumitemname,
+      duicheng2: getEnumList('ZSSymmetryType')[0].enumitemname,
+      /// 抛光
+      paoguangs: getEnumList('ZSPolishType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }), 
+      paoguang1: getEnumList('ZSPolishType')[0].enumitemname,
+      paoguang2: getEnumList('ZSPolishType')[0].enumitemname,
+      /// 荧光
+      yingguangs: getEnumList('ZSFluorescenceType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }), 
+      yingguang1: getEnumList('ZSFluorescenceType')[0].enumitemname,
+      yingguang2: getEnumList('ZSFluorescenceType')[0].enumitemname,
+      /// 币种信息
+      currencys: getEnumList('ZSCurrencyType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }), 
+      currency: getEnumList('ZSCurrencyType')[0].enumitemname,
+    })
+    /// 获取履约模板信息
+    this.queryPermancePlanTmp()
   },
 
   /**

+ 69 - 68
GuangZuan/miniprogram/mTrade/pages/listingbuy/index.wxml

@@ -1,126 +1,127 @@
-<view class="container" style="position: absolute; z-index: 999; top: 0px;">
+<!-- 内容 -->
+<view class="container" style="padding-bottom: {{ safeBottom }}px;">
   <!-- 导航栏 -->
-    <van-nav-bar custom-style="background-color: #E92020">
-      <van-icon slot="left" name="arrow-left" size="25px" color="white" bind:click="backToParent"/>
-      <text slot="title" style="color: white;">我要求购</text>
-    </van-nav-bar>
-  </view>
+  <van-nav-bar custom-style="background-color: #fff">
+    <van-icon slot="left" name="arrow-left" size="25px" color="#333" bind:click="backToParent"/>
+    <text slot="title" style="color: #333;">我要求购</text>
+  </van-nav-bar>
+
   <!-- tabs -->
   <view class="tab-view">
     <van-tabs swipeable bind:change="onTabChange" color="#2270D9" title-active-color="#2270D9" title-inactive-color="#8F8AA6">
-      <van-tab wx:for="{{tabs}}" wx:for-item="itm" wx:key="id" id="{{itm.id}}" title="{{itm.name}}"/>
+      <van-tab wx:for="{{ tabs }}" wx:for-item="itm" wx:key="id" id="{{ itm.id }}" title="{{ itm.name }}"/>
     </van-tabs>  
-</view>
+  </view>
 
-<view class="scroll-view" style="position: relative; padding-bottom: {{safeBottom}}px;"> 
-  <!-- 货币 -->
-  <view class="cell-view currency"> 
-    <text>货币</text>
-    <view class="currency-radio">
-      <van-radio-group value="{{ currency }}" direction="horizontal" bind:change="onChange">
-        <van-radio name="RMB">人民币</van-radio>
-        <van-radio name="DOLLAR">美元</van-radio>
-      </van-radio-group>
+  <!-- 形状 -->
+  <view class="cell-view shape" wx:if="{{active !== 2}}"> 
+    <text class="title">形状</text>
+    <view class="content shape">
+      <button class="item {{itm.isCheck ? 'active' : ''}}" wx:for="{{ shapes }}" wx:for-item="itm" wx:for-index="idx" id="shape {{ itm.id }}" wx:key="id" bindtap="onButtonPressed">{{ itm.name }}</button>
     </view>
   </view>
 
   <!-- 履约方式 -->
   <view class="cell-view prestyle"> 
-    <text>履约方式</text>
+    <text class="title">履约方式</text>
     <view class="content prestyle">
-      <button style="width: 95%;">---全部---</button>
+      <view class="plantmp" id="plantmp" bindtap="showPlanTmps">{{ tmp.templatename }}</view>
     </view>
   </view>
 
-  <!-- 尺寸 -->
-  <view class="cell-view size"> 
-    <text>尺寸</text>
-    <num-range unit="mm"></num-range>
-  </view>
-
-  <!-- 款式 -->
-  <view class="cell-view style" wx:if="{{active === 3 || active === 4}}"> 
-    <text>款式</text>
-    <view class="content style">
-      <button wx:for="{{styles}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="style {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
-    </view>
-  </view>
-
-  <!-- 形状 -->
-  <view class="cell-view shape" wx:if="{{active !== 2}}"> 
-    <text>形状</text>
-    <view class="content shape">
-      <button wx:for="{{shapes}}" wx:for-item="itm" wx:for-index="idx" class="{{itm.isCheck ? 'active' : ''}}" id="shape {{itm.id}}" wx:key="id" bindtap="onButtonPressed">{{itm.name}}</button>
+  <!-- 货币 -->
+  <view class="cell-view currency"> 
+    <text class="title">货币</text>
+    <view class="content currency">
+      <van-radio-group model:value="{{ currency }}" direction="horizontal">
+        <van-radio wx:for="{{ currencys }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx" name="{{ itm.value }}">{{ itm.text }}</van-radio>
+      </van-radio-group>
     </view>
   </view>
 
-  <!-- 晶型 -->
-  <view class="cell-view jingxing" wx:if="{{active === 2}}"> 
-    <text>晶型</text>
-    <view class="content jingxing">
-      <button wx:for="{{jingxings}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="jingxing {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
+  <!-- 尺寸 -->
+  <view class="cell-view size"> 
+    <text class="title">尺寸</text>
+    <view class="content size">
+      <num-range class="size-num" min="{{ minSize }}" max="{{ maxSize }}" unit="mm" bind:sync="syncNumRange"></num-range>
     </view>
   </view>
 
-  <!-- 颜色 -->
-  <view class="cell-view color"> 
-    <text>颜色</text>
+   <!-- 颜色 -->
+   <view class="cell-view color"> 
+    <text class="title">颜色</text>
     <view class="content color">
-      <button wx:for="{{colors}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="color {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
+      <van-dropdown-menu custom-class="menu color">
+        <van-dropdown-item model:value="{{ color1 }}" options="{{ colors }}" />
+        <van-dropdown-item model:value="{{ color2 }}" options="{{ colors }}" />
+      </van-dropdown-menu>
     </view>
   </view>
 
   <!-- 净度 -->
   <view class="cell-view neatness"> 
-    <text>净度</text>
+    <text class="title">净度</text>
     <view class="content neatness">
-      <button wx:for="{{neatness}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="neatness {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
+      <van-dropdown-menu custom-class="menu neatness">
+        <van-dropdown-item model:value="{{ neatnes1 }}" options="{{ neatness }}" />
+        <van-dropdown-item model:value="{{ neatnes2 }}" options="{{ neatness }}" />
+      </van-dropdown-menu>
     </view>
   </view>
 
   <!-- 切工 -->
-  <view class="cell-view qiegong" wx:if="{{(active != 2)}}"> 
-    <text>切工</text>
+  <view class="cell-view qiegong"> 
+    <text class="title">切工</text>
     <view class="content qiegong">
-      <button wx:for="{{qiegongs}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="qiegong {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
+      <van-dropdown-menu custom-class="menu qiegongs" direction="up">
+        <van-dropdown-item model:value="{{ qiegong1 }}" options="{{ qiegongs }}" />
+        <van-dropdown-item model:value="{{ qiegong2 }}" options="{{ qiegongs }}" />
+      </van-dropdown-menu>
     </view>
   </view>
 
   <!-- 对称 -->
-  <view class="cell-view duicheng" wx:if="{{active !== 2}}"> 
-    <text>对称</text>
+  <view class="cell-view duicheng"> 
+    <text class="title">对称</text>
     <view class="content duicheng">
-      <button wx:for="{{duichengs}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="duicheng {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
+      <van-dropdown-menu custom-class="menu duichengs" direction="up">
+        <van-dropdown-item model:value="{{ duicheng1 }}" options="{{ duichengs }}" />
+        <van-dropdown-item model:value="{{ duicheng2 }}" options="{{ duichengs }}" />
+      </van-dropdown-menu>
     </view>
   </view>
 
   <!-- 抛光 -->
   <view class="cell-view polishing" wx:if="{{active !== 2}}"> 
-    <text>抛光</text>
+    <text class="title">抛光</text>
     <view class="content polishing">
-      <button wx:for="{{paoguangs}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="polishing {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
+      <van-dropdown-menu custom-class="menu paoguangs" direction="up">
+        <van-dropdown-item model:value="{{ paoguang1 }}" options="{{ paoguangs }}" />
+        <van-dropdown-item model:value="{{ paoguang2 }}" options="{{ paoguangs }}" />
+      </van-dropdown-menu>
     </view>
   </view>
 
   <!-- 荧光 -->
   <view class="cell-view yingguang"> 
-    <text>荧光</text>
+    <text class="title">荧光</text>
     <view class="content yingguang">
-      <button wx:for="{{yingguangs}}" wx:for-item="itm" wx:for-index="idx" wx:key="id" class="{{itm.isCheck ? 'active' : ''}}" id="yingguang {{itm.id}}" bindtap="onButtonPressed">{{itm.name}}</button>
+      <van-dropdown-menu custom-class="menu yingguangs" direction="up">
+        <van-dropdown-item model:value="{{ yingguang1 }}" options="{{ yingguangs }}" />
+        <van-dropdown-item model:value="{{ yingguang2 }}" options="{{ yingguangs }}" />
+      </van-dropdown-menu>
     </view>
   </view>
 
-  <!-- 原产地 -->
-  <view class="cell-view product" wx:if="{{active === 2}}"> 
-    <text>原产地</text>
-    <van-field placeholder="请输入原产地"></van-field>
-  </view>
-
   <!-- 提交按钮视图 -->
-  <view class="submit-view" style="position: relative; padding-bottom: {{safeBottom}}px;">
-    <button bindtap="toSubmit">发布求购</button>
+  <view class="button-view">
+    <van-button id="close" block round color="#7232dd" bind:click="doListingBuy">发布求购</van-button>
   </view>
 </view>
 
 <!-- toast -->
-<van-toast id="van-toast"/>
+<van-toast id="van-toast"/>
+<!-- 履约模板 -->
+<van-popup show="{{ show }}" position="bottom" custom-style="height: 30%"  bind:click-overlay="onClose">
+  <van-picker show-toolbar bind:confirm="onSelect" bind:cancel="onClose" columns="{{ actions }}" title="请选择履约模板" />
+</van-popup>

+ 4 - 1
GuangZuan/miniprogram/mTrade/pages/listingsell/index.json

@@ -1,5 +1,8 @@
 {
-  "usingComponents": {},
+  "usingComponents": {
+    "van-picker": "@vant/weapp/picker/index",
+    "van-popup": "@vant/weapp/popup/index"
+  },
   "navigationBarTitleText": "我要出售",
   "navigationStyle": "custom"
 }

+ 132 - 55
GuangZuan/miniprogram/mTrade/pages/listingsell/index.less

@@ -1,73 +1,150 @@
-.title-view {
-  background-color: #f0f0f0;
-  padding: 10px 0px;
+.container {
   display: flex;
-  justify-content: space-around;
-  align-items: center;
-  border-bottom: 1px solid #f0f0f0;
+  flex-direction: column;
 
-  .title-view-text {
-    font-size: 12px;
-    color: #666;
-    text-align: center;
-    border-right: 1px solid #f0f0f0;
-  }
-}
+  .tmp_view {
 
-.list-item {
-  display: flex;
-  justify-content: space-between;
-  margin: 5px 10px 15px 10px;
-  flex-direction: row;
-  align-content: center;
-  align-items: center;
-  height: 110px;
-  border-bottom: 1px solid #ddd;
+    &__step {
+      display: flex;
+      flex-direction: row;
+      justify-content: start;
+      align-items: center;
+      align-content: center;
 
-  .list-item-left, .list-item-right {
+      &__item {
+        display: flex;
+        flex-direction: column;
+        align-items: center;
+        align-content: center;
+        margin: 10px 0px;
+        padding: 0px 10px;
+
+        text {
+          font-size: 13px;
+          padding: 2.5px;
+        }
+      }
+    }
+  }
+
+  .title-view {
+    margin: 10px;
+    background-color: #f0f0f0;
+    border-radius: 10px;
     display: flex;
-    flex-direction: column;
     align-items: center;
     align-content: center;
-  }
+    flex-direction: column;
+    padding: 5px 10px;
+  
+    .title-view-up, .title-view-dwn {
+      display: flex;
+      flex-direction: row;
+      justify-content: space-between;
+      align-items: center;
+      width: 100%;
+      align-content: center;
+      height: 25px;
+  
+      text {
+        color: #666;
+        font-size: 13px;
+        text-align: center;
+      }
 
-  .list-item-left {
-    width: 60%;
-  }
+      :first-child {
+        text-align: left;
+      }
+
+      :last-child {
+        text-align: right;
+      }
+    }
+  
+    .title-view-up {
+      border-bottom: 1px solid #ddd;
+      padding-bottom: 5px;
+    }
 
-  .list-item-right {
-    border-left: 1px solid #ddd;
-    padding-left: 15px;
-    width: 100%;
+    .title-view-mid {
+      padding: 5px 0px;
+    }
   }
 
-  .list-item-left, .list-item-right {
-    text {
-      margin: 2.5px;
+  .item-view {
+    margin: 10px;
+    border-radius: 10px;
+    display: flex;
+    align-items: center;
+    align-content: center;
+    flex-direction: column;
+    padding: 5px 10px;
+    border: 1px solid #ddd;
+  
+    .item-view-up, .item-view-mid, .item-view-dwn {
+      display: flex;
+      flex-direction: row;
+      justify-content: space-between;
+      align-items: center;
+      height: 50%;
       width: 100%;
-      text-align: left;
-      font-size: 14px;
-      color: #333;
+      align-content: center;
+      height: 25px;
+  
+      text {
+        color: #333;
+        font-size: 13px;
+        /*超出隐藏*/
+        overflow: hidden;
+         /*溢出不换行*/
+        white-space: nowrap;
+        /*溢出显示用省略号*/
+        text-overflow: ellipsis;
+        text-align: center;
+      }
+  
+      :first-child {
+        text-align: left;
+      }
+  
+      :last-child {
+        text-align: right;
+      }
+    }
+  
+    .item-view-up {
+      border-bottom: 1px solid #ddd;
+      padding-bottom: 5px;
+  
+      text {
+        width: 25%;
+      }
+    }
+  
+    .item-view-mid {
+      padding: 5px 0px;
+  
+      :last-child {
+        width: 30%;
+      }
     }
   }
-}
 
-.submit-view {
-  display: flex;
-  flex-direction: row;
-  justify-content: space-between;
-  margin-top: 20px;
-
-  button {
-    width: 45%;
-    color: white;
+  /* 选中时添加这个 样式 */
+  .active {
+    background: #E6F1FF;
   }
 
-  button:nth-child(1) {
-    background-color: red;
-  }
-  
-  button:nth-child(2) {
-    background-color: purple;
+  .button-view {
+    display: flex;
+    justify-content: space-between;
+    margin: 10px;
+    justify-content: center;
+    justify-items: center;
+
+    van-button {
+      height: 40px;
+      width: 80%;
+    }
   }
-}
+}

+ 199 - 33
GuangZuan/miniprogram/mTrade/pages/listingsell/index.ts

@@ -1,15 +1,44 @@
+import { EOrderSrc, EValidType } from "../../../constants/enum/index";
+import { FunCode } from "../../../constants/enum/funcode";
+import { sendMsgToMQ } from "../../../services/api/common/index";
+import { accountid, clientType, isEncrypted, marketid, protoHeader, timetample, userid } from "../../../services/utils";
+import { hideLoading, showLoading, showModel } from "../../../utils/message/index";
+import { isnullstr } from "../../../utils/util";
+import { queryMySellOrder, queryPermancePlanTmp } from "../../../services/api/orders/index";
+
 Page({
 
   /**
    * 页面的初始数据
    */
   data: {
+    /// 底部安全区域
+    safeBottom: getApp().globalData.safeBottom,
     /// tabs
     tabs: [{id: 2, name: '单颗裸钻'}, {id: 5, name: '单颗彩钻'}],
     /// tab索引
     active: 0,
+    /// 出售挂牌
+    sellorders: <GuangZuan.MySellOrder[]>[],
+    /// 选中的单据
+    sellorder: <GuangZuan.MySellOrder>({}),
     /// 列头
-    titles: ['形状', '颜色', '进度', '总价', '总重量', '单颗均重', '克拉单价', '库存重量', '冻结重量'],
+    titles: [['重量', '形状', '尺寸', '编号'], 
+             ['颜色 | 净度 | 切工 | 对称 | 抛光 | 荧光 | 证书', '价格']],
+    /// 显示的值
+    values: [{ up: [''], dwn: [''], isChecked: false }],
+    /// 是否空数据
+    isEmpty: false,
+    /// 当前页
+    page: 1,
+    /// 履约模板信息
+    tmps: <GuangZuan.PermancePlanTmp[]>[],
+    /// 选中履约模板
+    tmp: <GuangZuan.PermancePlanTmp>({}),
+    /// 是否显示
+    show: false,
+    /// 显示信息
+    actions: [''],
   },
 
   /**
@@ -20,49 +49,186 @@ Page({
     wx.navigateBack()
   },
 
+  /// 显示履约模板
+  showPlanTmps() {
+    this.setData({ show: true })
+  },
+
+  /// 关闭
+  onClose() {
+    this.setData({ show: false })
+  },
+
+  onSelect(e: any) {
+    /// 默认显示项
+    const { index } = e.detail;
+    this.setData({ tmp: this.data.tmps[index], show: false })
+  },
+
+  /**
+   * 每行选中触发事件
+   */
+  onSelectItem(e: any) {
+    var objs = this.data.values
+    objs.forEach(obj => {
+      obj.isChecked = false
+    })
+    objs[e.currentTarget.id].isChecked = true
+    /// 数据赋值
+    this.setData({ 
+      values: objs,
+      sellorder: this.data.sellorders[e.currentTarget.id]
+    })
+  },
+
   /**
    * tab触发事件
    */
   onTabChange(e: any) {
-    switch (e.detail.index) {
-      case 0:  /// 成批裸钻
-        this.setData({
-          /// 列头  
-          titles: ['形状', '颜色', '进度', '总价', '总重量', '单颗均重', '克拉单价', '库存重量', '冻结重量'],
-          active: e.detail.index
-        })
-        break;
-      case 1 || 4:  /// 单颗裸钻 彩色钻石
-        this.setData({
-          /// 列头  
-          titles: ['形状', '颜色', '净度', '颜色', '价格', '克拉重量', '克拉单价'],
-          active: e.detail.index
-        })
-        break;
-      case 2:  /// 成批毛坯
-        this.setData({
-          /// 列头  
-          titles: ['晶型', '颜色', '净度', '总价', '总重量', '单颗均重', '克拉单价', '库存重量', '冻结重量'],
-          active: e.detail.index
-        })
-        break;
-      case 3:  /// 首饰
-        this.setData({
-          /// 列头  
-          titles: ['款式', '主石形状', '价格', '主石重量', '克拉单价', '颜色', '净度', '切工', '对称度'],
-          active: e.detail.index
+    /// 设置激活项
+    this.setData({ active: e.detail.index })
+  },
+
+  /// 获取履约模板信息
+  queryPermancePlanTmp() {
+    /// showLoading
+    showLoading(() => {
+      queryPermancePlanTmp({
+        data: {
+          marketid: marketid()
+        },
+        success: (res) => {
+          /// 获取数据
+          this.setData({ 
+            tmps: res.data,
+            tmp: res.data[0],
+            actions: res.data.map(obj => { return obj.templatename })
+           })
+        },
+        complete: () => {
+          /// hideLoading
+          hideLoading()
+        }
+      })
+    })
+  },
+
+  /// 查询出售挂牌
+  queryMySellOrder() {
+    /// loding
+    showLoading(()=>{
+      /// 数据查询请求
+      queryMySellOrder({
+        data: {
+          userid: userid(),
+          page: this.data.page,
+          pagesize: 20,
+        },
+        success: (res) => {
+          /// 请求失败
+          if (res.code != 200) {
+            /// 加载失败
+            hideLoading(()=>{}, '请求失败,原因:'+res.msg, 'error')
+            return
+          }
+          hideLoading(()=>{
+            /// 设置数据
+            this.setData({
+              /// 设置列头
+              sellorders: res.data,
+              isEmpty: res.data.length === 0,
+              active: 0,
+              /// 显示的值
+              values: res.data.map(obj => {
+                return { up: [obj.totalqty+'ct', 
+                            isnullstr(obj.zsshapetypedisplay), 
+                            '--',
+                            isnullstr(obj.size1),
+                            obj.goodsno], 
+                          dwn: [isnullstr(obj.zsczcolor1typedisplay)+' | '+
+                              isnullstr(obj.zsclaritytype1display)+' | '+
+                              isnullstr(obj.zscuttype1display)+' | '+
+                              isnullstr(obj.zssymmetrytype1display)+' | '+
+                              isnullstr(obj.zspolishtype1display)+' | '+
+                              isnullstr(obj.zsfluorescencetype1display)+' | '+
+                              isnullstr(obj.zscerttypedisplay),
+                            obj.zscurrencytypedisplayunit+obj.price.toFixed(2)], 
+                          isChecked: false}
+              })
+            })
+          })
+        },
+        fail: (emsg) => {
+          /// 加载失败
+          hideLoading(()=>{}, '请求失败,原因:'+emsg, 'error')
+        },
+        complete: () => { 
+          /// 停止下拉刷新
+          wx.stopPullDownRefresh()
+        }
+      })
+    })
+  },
+
+  /// 摘卖
+  doListingSell() {
+    /// showModel
+    showModel(() => {
+      /// showLoading
+      showLoading(() => {
+        const { wrstandardid, wrfactortypeid, selledqty } = this.data.sellorder
+        const { autoid } = this.data.tmp
+        /// 请求参数
+        const params = {
+          Header: protoHeader(FunCode.ZSSellOrderListingReq),
+          UserID: userid(),
+          AccountID: accountid(),
+          WRStandardID: wrstandardid,
+          WRFactorTypeID: wrfactortypeid,
+          OrderQty: selledqty,
+          PerformanceTemplateID: autoid,
+          TimevalidType: EValidType.VALIDTYPE_YZ,
+          OrderSrc: EOrderSrc.ORDERSRC_CLIENT,
+          ClientSerialNo: timetample().toString(),
+          ClientType: clientType(),
+          MarketID: marketid(),
+        }
+
+        /// 发送请求
+        sendMsgToMQ({
+          data: {
+            data: JSON.stringify(params),
+            funCodeReq: FunCode.ZSSellOrderListingReq,
+            funCodeRsp: FunCode.ZSSellOrderListingRsp,
+            isEncrypted: isEncrypted()
+          },
+          success: (res) => {
+            /// 请求失败
+            if (res.code != 0) {
+              hideLoading(()=>{}, '出售请求失败,原因:'+res.msg, 'error')
+              return
+            }
+            /// 求购发布请求成功
+            hideLoading(() => {
+              wx.navigateBack()
+            }, '出售发布请求成功', 'success')
+          },
+          fail: (emsg) => {
+            hideLoading(()=>{}, '出售请求失败,原因:'+emsg, 'error')
+          }
         })
-        break;
-      default:
-        break;
-    }
+      }, '出售请求中....')
+    }, '提示', '确认要发布出售吗?')
   },
 
   /**
    * 生命周期函数--监听页面加载
    */
   onLoad() {
-
+    /// 查询我的出售
+    this.queryMySellOrder()
+    /// 获取履约模板信息
+    this.queryPermancePlanTmp()
   },
 
   /**

+ 46 - 28
GuangZuan/miniprogram/mTrade/pages/listingsell/index.wxml

@@ -1,42 +1,60 @@
-
-<view class="container">
+<view class="container" style="padding-bottom: {{ safeBottom }}px;">
   <!-- 导航栏 -->
   <van-nav-bar custom-style="background-color: #fff">
     <van-icon slot="left" name="arrow-left" size="25px" color="#333" bind:click="backToParent"/>
     <text slot="title" style="color: #333;">我要出售</text>
   </van-nav-bar>
-</view>
-<!-- tabs -->
-<view class="tab-view">
-  <van-tabs swipeable bind:change="onTabChange" color="#2270D9" title-active-color="#2270D9" title-inactive-color="#8F8AA6">
-    <van-tab wx:for="{{tabs}}" wx:for-item="itm" wx:key="id" id="{{itm.id}}" title="{{itm.name}}"/>
-  </van-tabs>  
-</view>
 
-<scroll-view class="scroll-view">
-  <!-- 列头 -->
-  <view class="title-view" style="width: 100%;">
-    <text class="title-view-text" wx:for="{{titles}}" wx:for-index="idx" wx:for-item="itm" wx:key="idx" id="idx">{{itm}}</text>
+  <view class="tmp_view">
+    <van-cell-group>
+      <van-field label="履约模板:" value="{{ tmp.templatename }}" readonly is-link bind:click-input="showPlanTmps"></van-field>
+    </van-cell-group>
+    <view class="tmp_view__step">
+      <view class="tmp_view__step__item" wx:for="{{ tmp.LstStep }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx"> 
+        <text>{{ itm.stepinfo }}</text>
+        <text>{{ itm.stepdate }}</text>
+      </view>
+    </view>
+  </view>
+
+  <!-- tabs -->
+  <view class="tab-view">
+    <van-tabs swipeable bind:change="onTabChange" color="#2270D9" title-active-color="#2270D9" title-inactive-color="#8F8AA6">
+      <van-tab wx:for="{{tabs}}" wx:for-item="itm" wx:key="id" id="{{itm.id}}" title="{{itm.name}}"/>
+    </van-tabs>  
   </view>
 
-  <!-- 列表项 --> 
-  <view class="list-item">
-    <view class="list-item-left">
-      <text>公主方形(Princess)</text>
-      <text>¥21,002.00</text>
-      <text>¥21,002.00</text>
+  <!-- 列头 --> 
+  <view class="title-view">
+    <view class="title-view-up">
+      <text wx:for="{{ titles[0] }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx">{{ itm }}</text>
     </view>
-    <view class="list-item-right">
-      <text>E-J | FL-VS1 | SZ001 | 10.00 | 10.00</text>
-      <text>平均单颗重量:0.50</text>
-      <text>冻结重量       :0.00</text>
-      <text>商品编号: a0031D001</text>
+    <view class="title-view-dwn">
+      <text wx:for="{{ titles[1] }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx">{{ itm }}</text>
     </view>
   </view>
 
+  <!-- 数据 --> 
+  <van-swipe-cell wx:for="{{ values }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx" bind:click="onSelectItem" id="{{ idx }}">
+    <view class="item-view {{ values[idx].isChecked ? 'active' : '' }}">
+      <view class="item-view-up">
+        <text wx:for="{{ itm.up }}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{ data }}</text>
+      </view>
+      <view class="item-view-dwn">
+        <text wx:for="{{ itm.dwn }}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{ data }}</text>
+      </view>
+    </view>
+  </van-swipe-cell>
+
   <!-- 提交按钮视图 -->
-  <view class="submit-view" style="position: relative; padding-bottom: {{safeBottom}}px;">
-    <button bindtap="toSubmit">卖出</button>
-    <button bindtap="toSubmit">取消</button>
+  <view class="button-view">
+    <van-button id="close" block round color="#7232dd" bind:click="doListingSell">确认出售</van-button>
   </view>
-</scroll-view>
+</view>
+
+<!-- empty -->
+<van-empty wx:if="{{ isEmpty }}" class="custom-image" description="无数据"/>
+<!-- 履约模板 -->
+<van-popup show="{{ show }}" position="bottom" custom-style="height: 30%"  bind:click-overlay="onClose">
+  <van-picker show-toolbar bind:confirm="onSelect" bind:cancel="onClose" columns="{{ actions }}" title="请选择履约模板" />
+</van-popup>

+ 2 - 1
GuangZuan/miniprogram/mTrade/pages/orderdetail/index.json

@@ -1,4 +1,5 @@
 {
   "usingComponents": {},
-  "navigationBarTitleText": "挂牌信息"
+  "navigationBarTitleText": "求购信息",
+  "navigationStyle": "custom"
 }

+ 46 - 28
GuangZuan/miniprogram/mTrade/pages/orderdetail/index.less

@@ -2,50 +2,68 @@
   display: flex;
   flex-direction: column;
 
-  .listing-info {
-    display: grid;
-    margin: 10px;
+  .attribute-info {
+    border-top: 10px solid #f0f0f0;
+  }
+
+  .attribute-info, .seller-info  {
+    width: 100%;
+    display: flex;
+    flex-direction: column;
     align-content: center;
-    border: 1px solid #f0f0f0;
-    border-radius: 10px;
+    align-items: center;
+    margin-bottom: 10px;
 
-    view:nth-child(1) {
-      text {
-        font-size: 18px;
-      }
+    .title {
+      padding: 10px 5px;
+      width: 100%;
+      color: #333;
+      font-size: 20px;
     }
 
-    .listing-info-item {
+    .attribute-info__item, .content__item{
+      width: 100%;
+      padding-left: 15px;
+      height: 50px;
+      border-bottom: 1px solid #f0f0f0;
       display: flex;
       flex-direction: row;
-      align-content: center;
-      align-items: center;
       justify-content: start;
-      height: 45px;
-      border-bottom: 1px solid #f0f0f0;
-      width: 100%;
-      margin: 0px 10px 0px 10px;
+      align-items: center;
+      align-content: center;
 
-      text:nth-child(1) {
-        width: 100px;
+      .title {
+        font-size: 14px;
+        width: 80px;
+        color: #666;
       }
 
-      input {
+      .value {
         font-size: 14px;
         color: #333;
       }
+    }
 
-      text:nth-child(3) {
-        width: 60px;
-        padding-left: 10px;
-        font-size: 12px;
+    .content {
+      width: 95%;
+      background-color: #f0f0f0;
+      border-radius: 10px;
+      padding: 10px 0px;
+      
+      &__item {
+        height: 30px;
+        padding-left: 5px;
+      }
+
+      .title {
+        font-size: 14px;
+        width: 70px;
         color: #666;
       }
 
-      text {
+      .value {
         font-size: 14px;
-        color: #333333;
-        text-align: left;
+        color: #333;
       }
     }
   }
@@ -53,13 +71,13 @@
   .button-view {
     display: flex;
     justify-content: space-between;
-    margin: 10px 10px 10px 10px;
+    margin: 10px;
     justify-content: center;
     justify-items: center;
 
     van-button {
       height: 40px;
-      width: 50%;
+      width: 80%;
     }
   }
 }

+ 57 - 2
GuangZuan/miniprogram/mTrade/pages/orderdetail/index.ts

@@ -1,17 +1,72 @@
+import { queryPermancePlanTmp } from "../../../services/api/orders"
+import { marketid } from "../../../services/utils"
+import { hideLoading, showLoading } from "../../../utils/message"
+
 Page({
 
   /**
    * 页面的初始数据
    */
   data: {
+    /// 单据信息
+    order: <GuangZuan.BuyOrder>({}),
+    /// 选中履约模板
+    tmp: <GuangZuan.PermancePlanTmp>({}),
+  },
 
+  /**
+   * 返回上层视图
+   */
+  backToParent() {
+    /// 返回上层视图
+    wx.navigateBack()
+  },
+
+  /// 进行摘卖
+  goToDelistingSell() {
+    /// 摘卖
+    wx.navigateTo({
+      url: '/mTrade/pages/delistingsell/index?item='+JSON.stringify(this.data.order)
+    })
+  },
+
+  /// 获取履约模板信息
+  queryPermancePlanTmp() {
+    /// showLoading
+    showLoading(() => {
+      queryPermancePlanTmp({
+        data: {
+          marketid: marketid(),
+        },
+        success: (res) => {
+          /// 获取数据
+          this.setData({ 
+            tmps: res.data,
+            tmp: res.data[0],
+            actions: res.data.map(obj => { return obj.templatename })
+           })
+        },
+        complete: () => {
+          /// hideLoading
+          hideLoading()
+        }
+      })
+    })
   },
 
   /**
    * 生命周期函数--监听页面加载
    */
-  onLoad() {
-
+  onLoad(options: any) {
+    /// 数据显示
+    try {
+      const item = JSON.parse(options.item)
+      if (item) {
+        this.setData({ order: item })
+      }
+    } catch (error) {
+      console.log(error)
+    }
   },
 
   /**

+ 54 - 38
GuangZuan/miniprogram/mTrade/pages/orderdetail/index.wxml

@@ -1,53 +1,69 @@
 <view class="container">
-  <!-- 挂牌信息 -->
-  <view class="listing-info">
-    <view class="listing-info-item">
-      <text>挂牌信息</text>
-    </view>
-    <view class="listing-info-item">
-      <text>分类:</text> 
-      <text>成批裸钻</text> 
-    </view>
-    <view class="listing-info-item">
-      <text>委托单信息:</text> 
-      <text>3201657258206970002</text> 
-    </view>
-    <view class="listing-info-item">
-      <text>卖方:</text> 
-      <text>机构1000</text> 
+  <!-- 导航栏 -->
+  <van-nav-bar custom-style="background-color: #fff">
+    <van-icon slot="left" name="arrow-left" size="25px" color="#333" bind:click="backToParent"/>
+    <text slot="title" style="color: #333;">求购信息</text>
+  </van-nav-bar>
+
+  <!-- 卖家信息 -->
+  <view class="seller-info">
+    <text class="title">【 {{ order.zscategorydisplay }} 】</text>
+    <view class="content">
+      <view class="content__item">
+        <text class="title">买方:</text>
+        <text class="value">{{ order.buyusername}}</text>
+      </view>
+      <view class="content__item">
+        <text class="title">币种:</text>
+        <text class="value">{{ order.zscurrencytypedisplay }}</text>
+      </view>
+      <view class="content__item">
+        <text class="title">履约规则:</text>
+        <view class="tmp_view__step">
+          <view class="tmp_view__step__item" wx:for="{{ tmp.LstStep }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx"> 
+            <text>{{ itm.stepinfo }}</text>
+            <text>{{ itm.stepdate }}</text>
+          </view>
+        </view>
+      </view>
     </view>
-    <view class="listing-info-item">
-      <text>商品编号:</text> 
-      <text>CPLZ00000001</text> 
+  </view>
+
+  <!-- 钻石属性 -->
+  <view class="attribute-info">
+    <text class="title">【钻石属性】</text>
+    <view class="attribute-info__item">
+      <text class="title">形状:</text>
+      <text class="value">{{ order.zstabledisplay }}</text>
     </view>
-    <view class="listing-info-item">
-      <text>资金帐号:</text> 
-      <text>25000000001</text> 
+    <view class="attribute-info__item">
+      <text class="title">颜色:</text>
+      <text class="value">{{ order.zscolortypedisplay }}</text>
     </view>
-    <view class="listing-info-item">
-      <text>委托价格:</text> 
-      <text>¥8,123.00</text> 
+    <view class="attribute-info__item">
+      <text class="title">净度:</text>
+      <text class="value">{{ order.zsclaritytypedisplay }}</text>
     </view>
-    <view class="listing-info-item">
-      <text>委托时间:</text> 
-      <text>2000-07-15 11:20:20</text> 
+    <view class="attribute-info__item">
+      <text class="title">切工:</text>
+      <text class="value">{{ order.zscuttypedisplay }}</text>
     </view>
-    <view class="listing-info-item">
-      <text>委托重量:</text> 
-      <text>223.23CT</text> 
+    <view class="attribute-info__item">
+      <text class="title">抛光:</text>
+      <text class="value">{{ order.zspolishtypedisplay }}</text>
     </view>
-    <view class="listing-info-item">
-      <text>有效日期:</text> 
-      <text>2022-08-15</text> 
+    <view class="attribute-info__item">
+      <text class="title">荧光:</text>
+      <text class="value">{{ order.zsfluorescencetypedisplay }}</text>
     </view>
-    <view class="listing-info-item">
-      <text>成交重量:</text> 
-      <text>100.00CT</text> 
+    <view class="attribute-info__item">
+      <text class="title">尺寸:</text>
+      <text class="value">{{ order.zssize }}</text>
     </view>
   </view>
 
   <!-- 询价信息 -->
   <view class="button-view">
-    <van-button id="close" block round color="#7232dd" bind:click="buttonOnClick">关闭</van-button>
+    <van-button id="close" block round color="#7232dd" bind:click="goToDelistingSell">摘牌申请</van-button>
   </view>
 </view>

+ 8 - 0
GuangZuan/miniprogram/pages/circle/index.less

@@ -97,6 +97,14 @@
       width: 25%;
     }
   }
+
+  .item-view-mid {
+    padding: 5px 0px;
+
+    :last-child {
+      width: 30%;
+    }
+  }
 }
 
 /* 选中时添加这个 样式 */

+ 6 - 0
GuangZuan/miniprogram/pages/home/index.less

@@ -125,6 +125,12 @@
   width: 50px;
 }
 
+.certsearch, .calculator {
+  background-size: 100% 100%; 
+  width: 50px; 
+  height: 50px;
+}
+
 .certsearch {
   right: 5px; 
   bottom: 18%;

+ 2 - 3
GuangZuan/miniprogram/pages/home/index.wxml

@@ -49,11 +49,10 @@
   </view>
 </scroll-view>
 
-
 <!-- 证书查询  -->
-<view class="certsearch" style="background-image: url('../../images/home-zscx.png'); background-size: 100% 100%; width: 50px; height: 50px;" bindtap="goToCerserach"></view>
+<view class="certsearch" style="background-image: url('../../images/home-zscx.png');" bindtap="goToCerserach"></view>
 <!-- 计算器  -->
-<view class="calculator" style="background-image: url('../../images/home-jsq.png'); background-size: 100% 100%; width: 50px; height: 50px;" bindtap="goToCalculator" ></view>
+<view class="calculator" style="background-image: url('../../images/home-jsq.png');" bindtap="goToCalculator" ></view>
 <!-- toast --> 
 <van-toast id="van-toast" />
 <!-- 无数据 --> 

+ 16 - 19
GuangZuan/miniprogram/pages/mine/index.less

@@ -9,7 +9,7 @@
     display: flex;
     flex-direction: column;
     align-items: center;
-    height: 160px;
+    padding: 20px 0px;
 
     .taaccount-info {
       display: flex;
@@ -43,15 +43,11 @@
     .user-info {
       display: flex;
       flex-direction: row;
-      width: 95%;
+      width: 92%;
       justify-content: space-between;
       align-items: center;
       align-content: center;
-      margin-top: 10px;
-
-      van-image {
-        margin-left: 15px;
-      }
+      padding-bottom: 10px;
     
       .userinfo {
         display: grid;
@@ -63,7 +59,7 @@
           justify-content: space-between;
           
           text:nth-child(1) {
-            width: 60%;
+            width: 80%;
           }
         }
     
@@ -76,23 +72,24 @@
         }
       }
     }
-  }
 
-  .button-view {
-    display: flex;
-    justify-content: space-around;
-    margin: 10px;
-    
-    .into-gold, .out-gold {
-      width: 180px;
-      box-shadow: 5px 5px 5px 5px #eee;
+    .button-view {
+      display: flex;
+      justify-content: space-around;
+      margin: 10px;
+      width: 100%;
+      
+      .into-gold, .out-gold {
+        width: 180px;
+        box-shadow: 5px 5px 5px 5px #eee;
+      }
     }
   }
   
   .cell-title {
     color: #333;
-    font-size: 14px;
-    padding-left: 10px;
+    font-size: 15px;
+    padding: 5px 10px;
   }
 
   .loginOut-view {

+ 10 - 10
GuangZuan/miniprogram/pages/mine/index.ts

@@ -9,18 +9,18 @@ Page({
    */
   data: {
     // 功能菜单项
-    menulists: [{id: 1, title: '我的库存', img: 'medal', path: '/mMine/pages/myinventorys/list/index'}, 
-                {id: 2, title: "我的订单", img: 'invitation',  path: '/mMine/pages/myorders/list/index'}, 
-                {id: 3, title: '我的履约', img: 'underway',    path: '/mMine/pages/myperformance/list/index'}, 
-                {id: 4, title: '我的出境', img: 'hot',         path: '/mHome/pages/inspection/list/index'}, 
-                {id: 5, title: '我的保税', img: 'fire-o',      path: '/mHome/pages/bond/list/index'}],
+    menulists: [{id: 1, title: '我的库存', img: 'mine-wdkc', path: '/mMine/pages/myinventorys/list/index'}, 
+                {id: 2, title: "我的订单", img: 'mine-wddd',  path: '/mMine/pages/myorders/list/index'}, 
+                {id: 3, title: '我的履约', img: 'mine-wdly',    path: '/mMine/pages/myperformance/list/index'}, 
+                {id: 4, title: '我的出境', img: 'mine-cjjc',         path: '/mHome/pages/inspection/list/index'}, 
+                {id: 5, title: '我的保税', img: 'mine-bsfw',      path: '/mHome/pages/bond/list/index'}],
 
     // 列表菜单项
-    tablelists: [{id: 1, title: '签约账户', iconfont: 'sign',   path: '/mMine/pages/bank/index'}, 
-                 {id: 2, title: '收货地址', iconfont: 'location-o',    path: '/mMine/pages/address/list/index'}, 
-                 {id: 3, title: '发票信息', iconfont: 'todo-list-o',    path: '/mMine/pages/invoice/list/index'}, 
-                 {id: 4, title: '账户安全', iconfont: 'wap-nav',    path: '/mMine/pages/modifypwd/index'}, 
-                 {id: 5, title: '关于我们', iconfont: 'info',    path: '/mMine/pages/about/about/index'}],
+    tablelists: [{id: 1, title: '签约账户', iconfont: 'mine-qyzh',   path: '/mMine/pages/bank/index'}, 
+                 {id: 2, title: '收货地址', iconfont: 'mine-shdz',    path: '/mMine/pages/address/list/index'}, 
+                 {id: 3, title: '发票信息', iconfont: 'mine-fpxx',    path: '/mMine/pages/invoice/list/index'}, 
+                 {id: 4, title: '账户安全', iconfont: 'mine-mmxg',    path: '/mMine/pages/modifypwd/index'}, 
+                 {id: 5, title: '关于我们', iconfont: 'mine-gywm',    path: '/mMine/pages/about/about/index'}],
     /// 微信头像 
     avatarUrl: "",
     /// 微信昵称

+ 14 - 12
GuangZuan/miniprogram/pages/mine/index.wxml

@@ -33,30 +33,32 @@
         <text>{{ isOpenEye ? ta.currentbalance : '******' }}</text>
       </view>
     </view>
-  </view>
-
-  <!-- 出金 入金 -->
-  <view class="button-view">
-    <van-button custom-class="into-gold" round id="into-gold" color="#F7A657" bind:click="onButtonPressed">充值</van-button>
-    <van-button custom-class="out-gold" round id="out-gold" color="#226FD9" bind:click="onButtonPressed">提现</van-button>
+    <!-- 出金 入金 -->
+    <view class="button-view">
+      <van-button custom-class="into-gold" round id="into-gold" color="#F7A657" bind:click="onButtonPressed">充值</van-button>
+      <van-button custom-class="out-gold" round id="out-gold" color="#226FD9" bind:click="onButtonPressed">提现</van-button>
+    </view>
   </view>
 
   <!-- 功能菜单项 -->
-  <van-grid column-num="5" wx:if="{{menulists.count != 0}}">
-    <van-grid-item wx:for="{{menulists}}" wx:key="id" wx:for-index="idx" wx:for-item="itm" id="{{itm.id}}" icon="{{itm.img}}" icon-color="red" dot link-type="navigateTo" url="{{itm.path}}">
-      <text slot="text" style="font-size: 13px;">{{itm.title}}</text>
+  <van-grid column-num="5" wx:if="{{ menulists.count != 0 }}">
+    <van-grid-item wx:for="{{ menulists }}" wx:key="id" wx:for-index="idx" wx:for-item="itm" id="{{ itm.id }}" link-type="navigateTo" url="{{ itm.path }}">
+      <image slot="icon" style="width: 25px; height: 25px;" src="../../images/{{ itm.img }}.png"></image>
+      <text slot="text" style="font-size: 14px;">{{ itm.title }}</text>
     </van-grid-item>
   </van-grid>
 
   <!-- 列表菜单项 -->
   <van-cell-group>
-    <van-cell clickable title-class="cell-title" size="large" center is-link border wx:for="{{tablelists}}" clickable wx:key="id" wx:for-index="idx" wx:for-item="itm" id="{{itm.id}}" title="{{itm.title}}" link-type="navigateTo" url="{{itm.path}}">
-      <van-icon slot="icon" size="25" name="{{ itm.iconfont }}"></van-icon>
+    <van-cell clickable title-class="cell-title" size="large" center is-link border wx:for="{{ tablelists }}" clickable wx:key="id" wx:for-index="idx" wx:for-item="itm" id="{{itm.id}}" title="{{itm.title}}" link-type="navigateTo" url="{{itm.path}}">
+      <image slot="icon" style="width: 25px; height: 25px;" src="../../images/{{ itm.iconfont }}.png"></image>
     </van-cell>
   </van-cell-group>
 
   <!-- 登出按钮  -->
-  <view class="loginOut-view"><van-button custom-class="loginOut" round bindtap="onLoginOut">退出登录</van-button></view>
+  <view class="loginOut-view">
+    <van-button custom-class="loginOut" round bindtap="onLoginOut">退出登录</van-button>
+  </view>
 </view>
 
 <!-- 对话弹框  -->

+ 5 - 1
GuangZuan/miniprogram/pages/trade/index.less

@@ -12,7 +12,11 @@
     margin-right: 12px;
 
     van-tabs {
-      width: 320px;
+      width: 300px;
+    }
+
+    image {
+      margin-left: 10px;
     }
   }
 

+ 77 - 84
GuangZuan/miniprogram/pages/trade/index.ts

@@ -1,5 +1,5 @@
 import { queryBuyOrder, queryDiamond } from "../../services/api/orders/index"
-import { clientType, isEncrypted, marketid, protoHeader, userid, timetample } from "../../services/utils";
+import { clientType, isEncrypted, marketid, protoHeader, userid, timetample, getEnumList } from "../../services/utils";
 import { FunCode } from "../../constants/enum/funcode";
 import { sendMsgToMQ } from "../../services/api/common/index";
 import { isnullstr } from "../../utils/util";
@@ -28,51 +28,20 @@ Page({
                 { text: '单颗彩钻', value: 5 }],
     category: 2,
     /// 钻石形状
-    shapes: [{ text: '圆明亮形', value: '1' }, 
-             { text: '公主方形', value: '2' },
-             { text: '心形', value: '3' }, 
-             { text: '马眼形', value: '4' },
-             { text: '三角形', value: '5' }, 
-             { text: '垫形', value: '6' },
-             { text: '祖母绿形', value: '7' }, 
-             { text: '梨形', value: '8' },
-             { text: '椭圆形', value: '9' }, 
-             { text: '长方形', value: '10' },
-             { text: '雷迪恩形', value: '11' }, 
-             { text: '阿斯切形', value: '12' }, 
-             { text: '其他', value: '13' }],
-    shape: ['1'],
+    shapes: [{ value: 1, text: '圆明亮形' }],
+    shape: 1,
     /// 净度
-    claritys: [{ text: 'FL', value: 1 }, 
-               { text: 'IF', value: 2 },
-               { text: 'VVS1', value: 3 }, 
-               { text: 'VVS2', value: 4 },
-               { text: 'VS1', value: 5 }, 
-               { text: 'VS2', value: 6 },
-               { text: 'SI1', value: 7 }, 
-               { text: 'SI2', value: 8 },
-               { text: 'SI3', value: 9 }, 
-               { text: 'I1', value: 10 },
-               { text: 'I2', value: 11 }, 
-               { text: 'I3', value: 12 }],
+    claritys: [{ text: 'FL', value: 1 }],
     clarity: 1,
     /// 切工
-    cuts: [{ text: 'EX', value: 1 }, 
-           { text: 'VG', value: 2 },
-           { text: 'G', value: 3 },  
-           { text: 'F', value: 4 },
-           { text: 'P', value: 5 }],
+    cuts: [{ text: 'EX', value: 1 }],
     cut: 1,
     /// 荧光
-    fluorescences: [{ text: '无', value: 1 }, 
-                   { text: '微弱', value: 2 },
-                   { text: '中等', value: 3 },  
-                   { text: '强', value: 4 },
-                   { text: '极强', value: 5 }],
+    fluorescences: [{ text: '无', value: 1 }],
     fluorescence: 1,
-    ///大厅数据
+    ///出售大厅数据
     sellOrders: <GuangZuan.SellOrder[]>[],
-    /// 大厅数据
+    /// 求购大厅数据
     askOrders: <GuangZuan.BuyOrder[]>[],
     /// 显示的值
     values: [{ up: [''], dwn: [''] }],
@@ -110,19 +79,13 @@ Page({
   onDropdownChange(e: any) {
     switch (e.target.id) {
       case "categorys":  /// 钻石分类
-        this.setData({
-          category: e.detail
-        })
+        this.setData({ category: e.detail })
         break;
       case "shapes":     /// 形状
-        this.setData({
-          shape: [e.detail.toString()]
-        })
+        this.setData({ shape: e.detail })
         break;
       case "claritys":   /// 钻石净度
-        this.setData({
-          clarity: e.detail
-        })
+        this.setData({ clarity: e.detail })
         break;
       case "cuts":       /// 切工
         this.setData({ cut: e.detail })
@@ -148,15 +111,14 @@ Page({
       case 'favorite':    /// 添加收藏
         this.onAddFavorite(index)
         break
-      case 'goods-info':  /// 商品详情
-        wx.navigateTo({ url: '/mHome/pages/goodsdetail/index?goodsno='+ this.data.sellOrders[index].goodsno})
-        break;
-      case 'search':
-        wx.navigateTo({ url: '/mHome/pages/search/index' })
+      case 'detail':      /// 商品详情
+        wx.navigateTo({ 
+          url: this.data.active === 0 ? '/mHome/pages/goodsdetail/index?goodsno='+this.data.sellOrders[index].goodsno : ('/mTrade/pages/orderdetail/index?item='+JSON.stringify(this.data.askOrders[index]))
+        })
         break;
-      case 'delisting': /// 摘牌
+      case 'delisting':     /// 摘牌
         wx.navigateTo({
-          url: '/mTrade/pages/delistingbuy/index?item='+JSON.stringify(this.data.sellOrders[index])
+          url: '/mTrade/pages/delistingsell/index?item='+JSON.stringify(this.data.askOrders[index])
         })
         break;
       case 'listing-buy':  /// 我要求购
@@ -165,13 +127,7 @@ Page({
       case 'listing-sell': /// 我要出售
         wx.navigateTo({ url: '/mTrade/pages/listingsell/index' })
         break; 
-      case 'buy-inquiry': /// 我要询价
-        wx.navigateTo({ url: '/mTrade/pages/buyinquiry/index' })
-        break;
-      case 'order-detail': /// 挂牌详情 
-        wx.navigateTo({ url: '/mTrade/pages/orderdetail/index' })
-        break;
-      case 'ask-buy': /// 求购信息
+      case 'ask-buy':      /// 求购信息
         wx.navigateTo({ url: '/mTrade/pages/orderdetail/index' })
         break;
       default:
@@ -181,7 +137,7 @@ Page({
 
   onIconClick(e: any) {
     switch (e.currentTarget.id) {
-      case 'listing-buy':  /// 挂买
+      case 'listing-buy':   /// 挂买
         wx.navigateTo({
           url: '/mTrade/pages/listingbuy/index'
         })
@@ -191,7 +147,7 @@ Page({
           url: '/mTrade/pages/listingsell/index'
         })
         break;
-      case 'search':  /// 搜索
+      case 'search':        /// 搜索
         wx.navigateTo({
           url: '/mHome/pages/search/index'
         })
@@ -251,7 +207,7 @@ Page({
       /// 钻石分类
       zscategory: this.data.category,
       /// 形状
-      zsshapetype: this.data.shape,
+      zsshapetype: [this.data.shape.toString()],
       /// 净度
       zsclaritytype: [this.data.clarity],
       /// 切工
@@ -268,17 +224,17 @@ Page({
         /// 颜色
         zscolortype: info ? info.zscolortype : [null],
         /// 货币类型
-        zscurrencytype: info ? [info.zscurrencytype.toString()] : [null],
+        zscurrencytype: info ? [info.zscurrencytype.toString()] : [''],
         /// 证书类型
-        zscerttype: info ? [info.zscerttype.toString()] : [null],
+        zscerttype: info ? [info.zscerttype.toString()] : [''],
         /// 抛光
-        zspolishtype: info ? [info.zspolishtype] : [null],
+        zspolishtype: info ? [info.zspolishtype] : [],
         /// 对称
-        zssymmetrytype: info ? [info.zssymmetrytype] : [null],
+        zssymmetrytype: info ? [info.zssymmetrytype] : [],
         /// 总重量(克拉重量)-从
-        weight1: info ? info.weight1 : null,
+        weight1: info ? info.weight1 : 0.0,
         /// 总重量(克拉重量)-至
-        weight2: info ? info.weight2 : null
+        weight2: info ? info.weight2 : 0
       },
       /// 加载成功
       success: (res) => {
@@ -337,7 +293,7 @@ Page({
           hideLoading(()=>{
             /// 数据赋值
             this.setData({ 
-              buyOrders: res.data,
+              askOrders: res.data,
               isEmpty: res.data.length === 0,
               /// 显示的值
               values: res.data.map(obj => {
@@ -369,22 +325,59 @@ Page({
   /**
    * 生命周期函数--监听页面加载
    */
-  onLoad() {},
+  onLoad() {
+    /// 显示默认数据
+    this.setData({
+      /// 形状
+      shapes: getEnumList('ZSShapeType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }),
+      /// 净度
+      claritys: getEnumList('ZSClarityType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }),
+      /// 切工
+      cuts: getEnumList('ZSCutType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }),
+      /// 荧光
+      fluorescences: getEnumList('ZSFluorescenceType').map(obj => {
+        return {
+          value: obj.enumitemname,
+          text: obj.enumdicname
+        }
+      }),
+    })
+  },
 
   onShow() {
     /// 获取参数
-    const storge = JSON.parse(wx.getStorageSync('TradeParams'))
+    const storge = wx.getStorageSync('TradeParams')
     if (storge) {
-      /// 数据缓存
-      this.setData({ 
-        storge: storge,
-        category: storge.category,
-        cut: storge.zscuttype,
-        shape: storge.zsshapetype,
-        clarity: storge.zsclaritytype,
-        fluorescence: storge.zsfluorescencetype
-      })
-    } 
+      try {
+        const info = JSON.parse(storge)
+        if (storge) {
+          /// 数据缓存
+          this.setData({ 
+            storge: info,
+            category: info.category,
+            cut: info.zscuttype,
+            shape: info.zsshapetype,
+            clarity: info.zsclaritytype,
+            fluorescence: info.zsfluorescencetype
+          })
+        }
+      } catch (error) {}
+    }
     /// 查询出售大厅委托单
     this.data.active == 0 ? this.queryDiamond() : this.queryBuyOrder()
   },

+ 11 - 11
GuangZuan/miniprogram/pages/trade/index.wxml

@@ -8,22 +8,22 @@
     <van-tabs custom-class="van-tabs" sticky animated bind:change="onTabChange" color="#2270D9" title-active-color="#2270D9" title-inactive-color="#8F8AA6">
       <van-tab wx:for="{{tabs}}" wx:for-item="itm" wx:key="id" id="{{itm.id}}" title="{{itm.name}}"/>
     </van-tabs>  
-    <van-icon id="listing-buy" name="plus" size="20" bind:click="onIconClick"/>
-    <van-icon id="listing-sell" name="minus" size="20" bind:click="onIconClick"/>
-    <van-icon id="search" name="search" size="20" bind:click="onIconClick"/>
+    <image id="listing-buy" style="width: 25px; height: 25px;" src="../../images/trade-listingbuy.png" bindtap="onIconClick"/>
+    <image id="listing-sell" style="width: 25px; height: 25px;" src="../../images/trade-listingsell.png" bindtap="onIconClick"/>
+    <image id="search" style="width: 25px; height: 25px;" src="../../images/trade-search.png" bindtap="onIconClick"/>
   </view>
 
   <!-- 下拉菜单 -->
-  <van-dropdown-menu custom-class="dropdown-menu" active-color="#1989fa" wx:if="{{active == 0}}">
-    <van-dropdown-item id="categorys" value="{{ 2 }}" options="{{ categorys }}" bind:change="onDropdownChange" />
-    <van-dropdown-item id="shapes" value="{{ '1' }}" options="{{ shapes }}" bind:change="onDropdownChange" />
-    <van-dropdown-item id="claritys" value="{{ 1 }}" options="{{ claritys }}" bind:change="onDropdownChange" />
-    <van-dropdown-item id="cuts" value="{{ 1 }}" options="{{ cuts }}" bind:change="onDropdownChange" />
-    <van-dropdown-item id="fluorescences" value="{{ 1 }}" options="{{ fluorescences }}" bind:change="onDropdownChange"/>
+  <van-dropdown-menu custom-class="dropdown-menu" active-color="#1989fa">
+    <van-dropdown-item id="categorys" value="{{ category }}" options="{{ categorys }}" bind:change="onDropdownChange" />
+    <van-dropdown-item id="shapes" value="{{ shape }}" options="{{ shapes }}" bind:change="onDropdownChange" />
+    <van-dropdown-item id="claritys" value="{{ clarity }}" options="{{ claritys }}" bind:change="onDropdownChange" />
+    <van-dropdown-item id="cuts" value="{{ cut }}" options="{{ cuts }}" bind:change="onDropdownChange" />
+    <van-dropdown-item id="fluorescences" value="{{ fluorescence }}" options="{{ fluorescences }}" bind:change="onDropdownChange"/>
   </van-dropdown-menu>
 
   <!-- 搜索框 -->
-  <van-search model:value="{{ zsallproperties }}" use-action-slot="{{ true }}" wx:if="{{active != 0}}" shape="round" input-align="center" background="#999" placeholder="请输入商品属性 支持模糊查询">
+  <van-search model:value="{{ zsallproperties }}" use-action-slot="{{ true }}" wx:if="{{ active != 0 }}" shape="round" input-align="center" background="#999" placeholder="请输入商品属性 支持模糊查询">
     <view slot="action" style="color: white;" bind:tap="onClick">搜索</view>
   </van-search>
 
@@ -41,7 +41,7 @@
 <!-- 内容滚动视图 --> 
 <scroll-view class="content-view" style="padding-bottom: {{safeBottom+48}}px;">
   <!-- 数据 --> 
-  <van-swipe-cell wx:if="{{active == 1}}" wx:for="{{values}}" wx:for-item="itm" wx:for-index="idx" wx:key="idx" right-width="{{ width }}">
+  <van-swipe-cell wx:if="{{active == 1}}" wx:for="{{ values }}" wx:for-item="itm" wx:for-index="idx" wx:key="idx" right-width="{{ width }}">
     <view class="item-view">
       <view class="item-view-up">
         <text wx:for="{{itm.up}}" wx:for-item="data" wx:for-index="idx" wx:key="idx">{{data}}</text>

+ 5 - 0
GuangZuan/miniprogram/services/api/orders/index.ts

@@ -92,6 +92,11 @@ export function queryWrPerformancePlanStep(params: HttpRequest<{req: GuangZuan.W
   return httpRequest(service.config.goCommonSearchUrl+'/WrTrade2/QueryWrPerformancePlanStep', 'GET', params)
 }
 
+/* 查询履约模板 */
+export function queryPermancePlanTmp(params: HttpRequest<{req: GuangZuan.PermancePlanTmpReq, rsp: GuangZuan.PermancePlanTmp[]}>) {
+  return httpRequest(service.config.goCommonSearchUrl+'/WrTrade2/QueryPermancePlanTmp', 'GET', params)
+}
+
 
 
 

+ 7 - 7
GuangZuan/project.private.config.json

@@ -52,16 +52,16 @@
           "scene": null
         },
         {
-          "name": "我",
-          "pathName": "pages/mine/index",
+          "name": "我要出售",
+          "pathName": "mTrade/pages/listingsell/index",
           "query": "",
           "launchMode": "default",
           "scene": null
         },
         {
-          "name": "履约详情",
-          "pathName": "mMine/pages/myperformance/detail/index",
-          "query": "id=undefined",
+          "name": "我要求购",
+          "pathName": "mTrade/pages/listingbuy/index",
+          "query": "",
           "launchMode": "default",
           "scene": null
         },
@@ -94,8 +94,8 @@
           "scene": null
         },
         {
-          "name": "我的库存",
-          "pathName": "mMine/pages/myinventorys/list/index",
+          "name": "挂牌大厅",
+          "pathName": "pages/trade/index",
           "query": "",
           "launchMode": "default",
           "scene": null

+ 1 - 1
GuangZuan/typings/types/model/common.d.ts

@@ -228,6 +228,6 @@ declare namespace GuangZuan {
     /// 参数1[币种:币种显示单位]
     param2: string
     /// 备注
-    remark: string
+    remark: string, 
   }
 }

+ 61 - 1
GuangZuan/typings/types/model/order.d.ts

@@ -1272,7 +1272,7 @@ declare namespace GuangZuan {
     /// 商品(查询字段-模糊查询)
     zsallproperties?: string  
     /// 钻石分类, 格式:1,2,3
-    zscategorys?: number  
+    zscategorys?: string  
     /// 仓库ID
     warehouseid?: number  
     /// 是否上架,0-全部 1-是 2-否
@@ -1911,4 +1911,64 @@ declare namespace GuangZuan {
     /// 商品
     wrtypename: string
   }
+
+  /// 查询履约模板 - 请求
+  interface PermancePlanTmpReq {
+    /// 用户id
+    userid?: number
+    /// 模板类型(逗号隔开), 0:通用 1:交割 2:仓单贸易 3:预售集采 7:竞拍-竞价式 8:竞拍-大宗式 9:荷兰式–失效枚举:4:竞拍-降价式 (无仓单) 5:挂牌期权 6:竞拍-降价式
+    tmptype?: string 
+    /// 是否包含公共模板(用户id为空的) 1-包含
+    includepub?: number
+    /// 市场id(天津麦顿指定此参数,其它不用)
+    marketid?: number
+  }
+
+  /// 查询履约模板 - 应答
+  interface PermancePlanTmp {
+    /// AutoID 模板id
+    autoid: number
+    /// 创建时间
+    createtime: string
+    /// 创建人
+    creatorid: number
+    /// 步骤信息列表
+    lstStep: [ListStep] 
+    /// 支付方式 - 1:冻结 2:扣款
+    paymenttype: number
+    /// 提货方式 - 1:无 2:买方自提 3:卖方发货
+    takemode: number
+    /// 模板名称
+    templatename: string
+    /// 模板类型 - 0:通用 1:交割 2:仓单贸易 3:预售集采 7:竞拍-竞价式 8:竞拍-大宗式 9:荷兰式–失效枚举:4:竞拍-降价式 (无仓单) 5:挂牌期权 6:竞拍-降价式
+    templatetype: number
+    /// 所属用户
+    userid: number
+  }
+
+  /// 步骤信息列表
+  interface ListStep {
+    /// AutoID
+    autoid: number
+    /// 是否自动 - 0:不自动 1:自动
+    isauto: number
+    /// 备注
+    remark: string
+    /// 天数信息(T+N)
+    stepdate: string
+    /// 距离上一步天数
+    stepdays: number
+    /// 步骤序号
+    stepindex: number
+    /// 步骤信息(步骤名称+步骤值)
+    stepinfo: string
+    /// 履约步骤类型ID - 1:买方支付 2:卖方收款 3:买方自提 4:卖方发货 5:买方确认货 6:卖方发票 7:买方确认票 8:仓单转移 9:释放卖方冻结 10:货款溢短 11:生成合同[中江] 12:运费 90:确认支付 91. 确认放行 92买方支付(直接扣款) 用于-1模板“
+    steptypeid: number
+    /// 步骤名称
+    steptypename: string
+    /// 步骤值
+    stepvalue: number
+    /// 履约计划模板ID
+    templateid: number
+  }
 }