Pārlūkot izejas kodu

分账+商户明细

xiaomei 1 gadu atpakaļ
vecāks
revīzija
a65034244b

+ 14 - 0
src/pages.json

@@ -569,6 +569,14 @@
 						"navigationStyle": "custom"
 					}
 				},
+				{
+					"path": "settledMerchant/shopOrderLog",
+					"style": {
+						"navigationBarTitleText": "店铺订单明细",
+						"navigationBarTextStyle": "white",
+						"navigationStyle": "custom"
+					}
+				},
 				{
 					"path": "settledMerchant/merchantDetail",
 					"style": {
@@ -581,6 +589,12 @@
 						"navigationBarTitleText": "修改信息"
 					}
 				},
+				{
+					"path": "settledMerchant/editBilling",
+					"style": {
+						"navigationBarTitleText": "绑定收款信息"
+					}
+				},
 				{
 					"path": "convert/index",
 					"style": {

+ 18 - 6
src/pagesC/settledMerchant/addShop.vue

@@ -26,6 +26,12 @@
             <uni-forms-item label="店铺名称" required name="name">
                 <uni-easyinput v-model="formData.name" type="text" placeholder="请输入店铺名称" />
             </uni-forms-item>
+            <uni-forms-item label="店铺全称" required name="full_name">
+                <uni-easyinput v-model="formData.full_name" type="text" placeholder="请输入营业执照相同公司全称" />
+            </uni-forms-item>
+            <uni-forms-item label="统一社会信用代码" required name="credit_code">
+                <uni-easyinput v-model="formData.credit_code" type="text" placeholder="请输入统一社会信用代码" />
+            </uni-forms-item>
             <uni-forms-item label="商家logo" required name="logo">
                 <upimg v-model="formData.logo"/>
             </uni-forms-item>
@@ -81,18 +87,21 @@
             <uni-forms-item label="开票类型" required name="billing_type">
                 <uni-data-select v-model="formData.billing_type" :localdata="TypeDesc.billing_type" placeholder="请选择开票类型"></uni-data-select>
             </uni-forms-item>
-            <uni-forms-item label="开户行" required name="bank">
+            <!-- <uni-forms-item label="开户行" required name="bank">
                 <uni-easyinput v-model="formData.bank" type="text" placeholder="请输入开户行" />
             </uni-forms-item>
             <uni-forms-item label="银行卡号" required name="card_no">
                 <uni-easyinput v-model="formData.card_no" type="text" placeholder="请输入银行卡号" />
-            </uni-forms-item>
+            </uni-forms-item> -->
             <uni-forms-item label="开户名称" required name="account_name">
-                <uni-easyinput v-model="formData.account_name" type="text" placeholder="请输入开户名" />
+                <uni-easyinput v-model="formData.account_name" type="text" placeholder="请输入开户名" />
             </uni-forms-item>
-            <!-- <uni-forms-item label="身份证号" required name="card_id">
+            <uni-forms-item label="开户姓名" required name="account_holder">
+                <uni-easyinput v-model="formData.account_holder" type="text" placeholder="请输入开户姓名" />
+            </uni-forms-item>
+            <uni-forms-item label="身份证号" required name="card_id">
                 <uni-easyinput v-model="formData.card_id" type="text" placeholder="请输入身份证号" />
-            </uni-forms-item> -->
+            </uni-forms-item>
             <!-- <uni-forms-item label="开户手机" required name="open_phone">
                 <uni-easyinput v-model="formData.open_phone" type="text" placeholder="请输入开户手机" />
             </uni-forms-item> -->
@@ -155,10 +164,13 @@ export default {
                 bank: { rules: [{ required: true, errorMessage: '请输入开户行' }] },
                 card_no: { rules: [{ required: true, errorMessage: '请输入银行卡号' }] },
                 account_name: { rules: [{ required: true, errorMessage: '请输入开户名称' }] },
-                // card_id: { rules: [{ required: true, errorMessage: '请输入身份证号' }] },
+                account_holder: { rules: [{ required: true, errorMessage: '请输入开户姓名' }] },
+                card_id: { rules: [{ required: true, errorMessage: '请输入身份证号' }] },
                 // open_phone: { rules: [{ required: true, errorMessage: '请输入开户手机' }] },
                 atlas: { rules: [{ required: true, errorMessage: '请上传店铺图集' }] },
                 settled: { rules: [{ required: true, errorMessage: '请上传入驻协议' }] },
+                full_name: { rules: [{ required: true, errorMessage: '请输入营业执照相同公司全称' }] },
+                credit_code: { rules: [{ required: true, errorMessage: '请输入统一社会信用代码' }] },
             },
             TypeDesc: {},
             address: {

+ 1 - 1
src/pagesC/settledMerchant/balanceLog.vue

@@ -46,7 +46,7 @@
     </div>
 
     <!-- 资金列表 -->
-    <div class="detailList" v-if="list.length">
+    <div class="detailList">
       <div class="tit"><span>流水明细</span></div>
       <!-- 顶部导航 -->
       <view class="Tab_con flex_r flex_ac flex_jb">

+ 156 - 0
src/pagesC/settledMerchant/editBilling.vue

@@ -0,0 +1,156 @@
+<template>
+  <div class="editmerchant">
+    <uni-forms
+      ref="form"
+      :modelValue="formData"
+      validateTrigger="blur"
+      label-width="80px"
+    >
+      <uni-forms-item label="开户名称">
+        <div class="label">{{ formData.account_name }}</div>
+      </uni-forms-item>
+      <!-- <uni-forms-item label="开户类型" required name="account_type">
+        <uni-data-select
+          v-model="formData.account_type"
+          :localdata="TypeDesc.account_type"
+          placeholder="请选择开户类型"
+          @change="selectChange"
+          clearable=""
+        ></uni-data-select>
+      </uni-forms-item> -->
+      <!-- <uni-forms-item label="姓名" required name="account_holder">
+        <uni-easyinput
+          v-model="formData.account_holder"
+          type="text"
+          placeholder="请输入姓名"
+        />
+      </uni-forms-item> -->
+      <!-- <uni-forms-item label="身份证号" required name="card_id">
+        <uni-easyinput
+          v-model="formData.card_id"
+          type="text"
+          placeholder="请输入身份证号"
+        />
+      </uni-forms-item> -->
+      <uni-forms-item label="开户手机" required name="open_phone">
+        <uni-easyinput
+          v-model="formData.open_phone"
+          type="text"
+          placeholder="请输入开户手机号码"
+        />
+      </uni-forms-item>
+      <uni-forms-item label="银行卡号" required name="card_no">
+        <uni-easyinput
+          v-model="formData.card_no"
+          type="text"
+          placeholder="请输入银行卡号"
+        />
+      </uni-forms-item>
+    </uni-forms>
+    <div class="btnbar" @click="submit">确认绑定</div>
+  </div>
+</template>
+
+<script>
+import upimg from "@/pagesC/components/up/index";
+import { post } from "@/request/api.js";
+export default {
+  name: "editmerchant",
+  props: {},
+  components: { upimg },
+  data() {
+    return {
+      formData: {},
+      TypeDesc: {},
+      rules: {
+        // account_type: {
+        //   rules: [{ required: true, errorMessage: "请选择开户类型" }],
+        // },
+        // account_holder: {
+        //   rules: [{ required: true, errorMessage: "请输入姓名" }],
+        // },
+        // card_id: {
+        //   rules: [{ required: true, errorMessage: "请输入身份证号" }],
+        // },
+        open_phone: { rules: [{ required: true, errorMessage: "请输入开户手机号" }] },
+        card_no: { rules: [{ required: true, errorMessage: "请输入银行卡号" }] },
+      },
+    };
+  },
+  methods: {
+    loadData() {
+      post("v1/merchant/shopDetail", { shop_id: this.shopID }).then((res) => {
+        if (res.code == 0) {
+          this.formData = res.data;
+        }
+      });
+    },
+    async getTypeDesc() {
+      let res = await post("v1/merchant/typeDesc");
+      if (res.code == 0) {
+        this.TypeDesc = res.data;
+      }
+    },
+    submit() {
+      let that = this;
+      uni.showModal({
+        title: "温馨提示",
+        content: "确认绑定当前关联信息吗?",
+        success(res) {
+          if (res.confirm) {
+            that.$refs.form
+              .validate()
+              .then((res) => {
+                post("v1/merchant/edit", { ...res, shop_id: that.shopID }).then(
+                  (res) => {
+                    if (res.code == 0) {
+                      that.$toast("绑定成功");
+                      setTimeout(() => {
+                        uni.navigateBack({ delta: 1 });
+                      }, 1500);
+                    }
+                  }
+                );
+              })
+              .catch((err) => {
+                console.log(err);
+              });
+          }
+        },
+      });
+    },
+  },
+  onLoad(da) {
+    this.shopID = da.id;
+    this.loadData();
+    this.getTypeDesc();
+  },
+  onReady() {
+    this.$refs.form.setRules(this.rules);
+  },
+  onShow() {},
+  mounted() {},
+};
+</script>
+
+<style scoped lang='scss'>
+.editmerchant {
+  padding: 28rpx 32rpx;
+}
+.btnbar {
+  width: calc(100% - 60rpx);
+  height: 80rpx;
+  background-color: rgba($color: #2e57fd, $alpha: 0.6);
+  border-radius: 45rpx;
+  position: fixed;
+  bottom: 50rpx;
+  left: 30rpx;
+  color: #fff;
+  font-size: 36rpx;
+  text-align: center;
+  line-height: 80rpx;
+}
+.label {
+  line-height: 80rpx;
+}
+</style>

+ 52 - 14
src/pagesC/settledMerchant/merchantDetail.vue

@@ -21,23 +21,37 @@
                 <div class="r" @click="copyText(detail.user_mobile)"><span class="iconfont">&#xe9d3;</span>电话:{{detail.user_mobile}}<span class="iconfont copy">&#xe602;</span></div>
             </div>
         </div>
+        <div class="elseMoney flex_r flex_jb flex_ac">
+            <div class="total_money" @click="goto('/pagesC/settledMerchant/shopOrderLog',{s:1,shop_id: detail.id})">总收入<span>¥{{detail.total_money || "0.00"}}</span></div>
+            <div class="day_income" @click="goto('/pagesC/settledMerchant/shopOrderLog',{s:1,shop_id: detail.id})">今日收入<span>¥{{detail.day_income || "0.00"}}</span></div>
+        </div>
         <div class="card detail">
-            <div class="tit">关联信息</div>
-            <view class="label">
-                <view class="title">开户银行:</view>
-                <view class="nums">{{ detail.bank }}</view>
-            </view>
+            <div class="tit">收款信息</div>
             <view class="label">
                 <view class="title">开户名称:</view>
                 <view class="nums">{{ detail.account_name }}</view>
             </view>
+            <view class="label">
+                <view class="title">身份证号:</view>
+                <view class="nums">{{ detail.card_id }}</view>
+            </view>
+            <view class="label">
+                <view class="title">开户手机:</view>
+                <view class="nums">{{ detail.open_phone }}</view>
+            </view>
             <view class="label">
                 <view class="title">银行卡号:</view>
                 <view class="nums">{{ detail.card_no }}</view>
             </view>
+            <div class="btnbar" @click="goto('/pagesC/settledMerchant/editBilling',{id:shopID})">
+                {{ detail.card_no? '修改收款信息': '绑定收款信息' }}
+            </div>
+        </div>
+        <div class="card detail">
+            <div class="tit">关联信息</div>
             <view class="label">
                 <view class="title">让利比例:</view>
-                <view class="nums">{{ detail.discount * 100 }}%</view>
+                <view class="nums">{{ Math.floor(detail.discount * 100 *100)/100 }}%</view>
             </view>
             <view class="label">
                 <view class="title">联系人:</view>
@@ -55,8 +69,8 @@
                 <view class="title">店铺简介:</view>
                 <view class="nums ellipsis2">{{ detail.summary }}</view>
             </view>
+            <div class="btnbar" @click="goto('/pagesC/settledMerchant/editmerchant',{id:shopID})">修改信息</div>
         </div>
-        <div class="btnbar" @click="goto('/pagesC/settledMerchant/editmerchant',{id:shopID})">修改信息</div>
     </div>
 </template>
 
@@ -108,11 +122,12 @@ export default {
     padding: 28rpx 32rpx;
 }
 .list-item {
-    margin-bottom: 50rpx;
-    border-radius: 16rpx;
+    // margin-bottom: 50rpx;
+    border-radius: 16rpx 16rpx 0 0;
     padding: 28rpx 32rpx;
     border: 2rpx solid rgba(0, 0, 0, 0.12);
-    box-shadow: 4rpx 4rpx 8rpx 4rpx rgba(0, 0, 0, 0.12);
+    box-shadow: 4rpx -4rpx 8rpx 4rpx rgba(0, 0, 0, 0.12);
+    position: relative;
     .head_info_row {
         .logo {
             width: 120rpx;
@@ -157,6 +172,26 @@ export default {
         }
     }
 }
+.elseMoney {
+    height: 90rpx;
+    background-color: #dfdfdf;
+    border-radius: 0 0 30rpx 30rpx;
+    // margin-top: -6rpx;
+    padding: 0rpx 32rpx 0;
+    font-size: 26rpx;
+    color: #666;
+    box-shadow: 4rpx 4rpx 8rpx 4rpx rgba(0, 0, 0, 0.12);
+
+    div:last-child {
+        text-align: right;
+    }
+
+    span {
+        color: #2E57FD;
+        font-size: 28rpx;
+        margin-left: 8rpx;
+    }
+}
 .card {
     background-color: #fff;
     border-radius: 16rpx;
@@ -187,19 +222,22 @@ export default {
     .title {
         color: #888;
         width: 160rpx;
+        white-space: nowrap;
+        margin-right: 2rpx;
     }
 }
 .btnbar {
-    width: calc(100% - 60rpx);
+    // width: calc(100% - 60rpx);
     height: 80rpx;
     background-color: rgba($color: #2e57fd, $alpha: 0.6);
     border-radius: 45rpx;
-    position: fixed;
-    bottom: 50rpx;
-    left: 30rpx;
+    // position: fixed;
+    // bottom: 50rpx;
+    // left: 30rpx;
     color: #fff;
     font-size: 36rpx;
     text-align: center;
     line-height: 80rpx;
+    margin-top: 40rpx;
 }
 </style>

+ 37 - 3
src/pagesC/settledMerchant/myShop.vue

@@ -39,6 +39,10 @@
                     <div class="l"><span class="iconfont">&#xe9b9;</span>区域商:{{i.user_nickname}}</div>
                     <div class="r" @click.stop="copyText(i.user_mobile)"><span class="iconfont">&#xe9d3;</span>电话:{{i.user_mobile}}<span class="iconfont copy">&#xe602;</span></div>
                 </div>
+                <div class="elseMoney1 flex_r flex_jb flex_ac">
+                    <div class="total_money" @click="goto('/pagesC/settledMerchant/shopOrderLog',{s:1,shop_id: i.shop_id})">总收入<span>¥{{i.total_money || "0.00"}}</span></div>
+                    <div class="day_income" @click="goto('/pagesC/settledMerchant/shopOrderLog',{s:1,shop_id: i.shop_id})">今日收入<span>¥{{i.day_income || "0.00"}}</span></div>
+                </div>
             </div>
         </div>
         <empty v-else />
@@ -206,11 +210,41 @@ export default {
     padding: 60rpx 0 30rpx;
 
     .list-item {
-        margin-bottom: 50rpx;
-        border-radius: 16rpx;
+        margin-bottom: 150rpx;
+        border-radius: 16rpx 16rpx 0 0;
         padding: 28rpx 32rpx;
         border: 2rpx solid rgba(0, 0, 0, 0.12);
-        box-shadow: 4rpx 4rpx 8rpx 4rpx rgba(0, 0, 0, 0.12);
+        box-shadow: 4rpx 0 8rpx 4rpx rgba(0, 0, 0, 0.12);
+        position: relative;
+        width: 100%;
+
+        .elseMoney1{
+            height: 90rpx;
+            background-color: #ECECEC;
+            border-radius: 0 0 30rpx 30rpx;
+            // margin-top: -50rpx;
+            padding: 0 32rpx 0;
+            font-size: 26rpx;
+            color: #666;
+            position: absolute;
+            width: 100%;
+            bottom: -86rpx;
+            left: 0;
+            box-shadow: 4rpx 4rpx 8rpx 4rpx rgba(0, 0, 0, 0.12);
+            // border-right: 2rpx solid rgba(0, 0, 0, 0.12);
+            // border-left: 2rpx solid rgba(0, 0, 0, 0.12);
+            // border-bottom: 2rpx solid rgba(0, 0, 0, 0.12);
+
+            div:last-child {
+                text-align: right;
+            }
+
+            span {
+                color: #2E57FD;
+                font-size: 28rpx;
+                margin-left: 8rpx;
+            }
+        }
     }
 
     .head_info_row {

+ 5 - 2
src/pagesC/settledMerchant/pay.vue

@@ -151,8 +151,11 @@ export default {
         },
         pay(){
             post("v1/merchant/orders",this.Body).then(res=>{
-                if (res.code == 0 && res.data.prepayid) {
-                    toPayOpre.toPay(res.data, (rea) => {
+                let data = JSON.parse(res.data)
+                console.log(data,data.prepayid);
+                data.prepayid = data.package?data.package.split('prepay_id=')[1]:''
+                if (res.code == 0 && data.prepayid) {
+                    toPayOpre.toPay(data, (rea) => {
                         if (!rea) {
                             this.$toast(res.msg)
                             setTimeout(() => {

+ 464 - 0
src/pagesC/settledMerchant/shopOrderLog.vue

@@ -0,0 +1,464 @@
+<template>
+  <view class="container">
+    <view class="hander-top">
+      <view class="icon-back-wrap" @click="onBack">
+        <image
+          class="icon-back"
+          src="@/static/preview/icon-back.png"
+          mode="widthFix"
+        />
+      </view>
+      <!-- <view class="count">数智钱包</view> -->
+      <view class="capsule"></view>
+    </view>
+    <div class="h_top">
+      <div class="balance_box">
+        <div class="b_teg">可提现余额(元)</div>
+        <div class="dinB balance">¥{{ count.unsettle_money }}</div>
+        <div class="b_static flex_r flex_ac flex_jb">
+          <div>
+            <span>总收入</span>
+            <span class="fw">¥{{ count.total_money || 0 }}</span>
+          </div>
+          <div>
+            <span>今日收入</span>
+            <span class="fw">¥{{ count.day_income || 0 }}</span>
+          </div>
+        </div>
+      </div>
+    </div>
+    <!-- <div class="btn_bar flex_r flex_jb">
+      <div
+        class="btn_item"
+        @click="getToCash"
+      >
+        <span class="ico iconfont">&#xe603;</span>
+        <span class="btn_txt">去提现</span>
+      </div>
+      <div
+        class="btn_item conv"
+        @click="goto('/pagesC/convert/index')"
+      >
+        <image class="ico" src="@/static/icon/convert.png" mode="widthFix" />
+        <span class="btn_txt">去转化</span>
+      </div>
+    </div> -->
+
+    <!-- 资金列表 -->
+    <div class="detailList">
+      <div class="tit"><span>订单明细</span></div>
+      <!-- 顶部导航 -->
+      <view class="Tab_con flex_r flex_ac flex_jb">
+        <view
+          class="tab_list flex_r flex_ac"
+          :class="current == index ? 'active' : ''"
+          v-for="(item, index) in TabList"
+          :key="index"
+          @tap="SetStatus(index)"
+          >{{ item.title }}</view
+        >
+      </view>
+      <!-- 顶部导航-end -->
+      <div class="li" v-for="(i, s) in list" :key="s">
+        <p class="flex_r flex_jb">
+          <span class="s5">消费:<span class="s2">{{i.pay_amount}}</span> <span class="s4" v-if="Number(i.not_discount)>0">(不优惠:{{i.not_discount}})</span></span>
+          <span class="s5">结算:
+            <span class="s2">{{i.num}}</span>
+          </span>
+        </p>
+        <image class="settle" src="@/static/icon/settle.png" v-if="i.status == 0" />
+        <p class="flex_r flex_jb">
+          <span class="s3">{{ i.update_time }}</span>
+          <span class="s3">{{ i.type_id == 4 ? '智慧结算' : i.type_id == 1 ? '自助结算' : '其它' }}</span>
+        </p>
+      </div>
+    </div>
+    <!-- <view class="con">
+      <view class="list" v-for="(item, index) in list" :key="index">
+        <view class="list_head flex_r flex_ac flex_jb">
+          <view class="head_name">{{ item.remark }}</view>
+          <view :class="['head_price',item.act == '+' ? 'g_color' : '']">{{ item.act }}{{item.num }}</view>
+        </view>
+        <view class="list_con flex_r flex_ac flex_jb">
+          <view class="list_time">{{ item.create_time }}</view>
+          <view class="list_balance">余额{{ item.after }}</view>
+        </view>
+      </view>
+      <not-goods v-if="haveGoods" textStr="暂无流水信息"></not-goods>
+    </view> -->
+    <!-- 资金列表 -->
+  </view>
+</template>
+<script>
+let page = 1;
+import { post } from "@/request/api.js";
+import notGoods from "@/components/not-goods/index.vue";
+export default {
+  components: {
+    notGoods,
+  },
+  data() {
+    return {
+      haveGoods: false, // 是否有商品
+      current: 0,
+      TabList: [
+        { title: "全部", sauts: 0 },
+        { title: "自助结算", sauts: 1 },
+        { title: "智慧结算", sauts: 2 },
+      ],
+      list: [],
+      page:1,
+      localInfo: uni.getStorageSync("localInfo"),
+      statusList: {},
+      shop_id: null,
+      count: {
+        day_income: 0,
+        total_money: 0,
+        unsettle_money: 0
+      }
+    };
+  },
+  onLoad(da) {
+    console.log(da);
+    this.current = da.s || 0
+    this.shop_id = da.shop_id
+  },
+  onShow() {
+    this.page = 1;
+    this.list = [];
+    this.loadData();
+    // this.getData()
+  },
+  methods: {
+    loadData() {
+      let data = {
+        page: this.page,
+        rows:20,
+        type_id: this.current,
+        shop_id: this.shop_id
+      };
+      uni.showLoading({ mask: true });
+      post("v1/merchant/settleCommission", data).then((res) => {
+        uni.hideLoading();
+        if (res.code === 0) {
+          this.statusList = JSON.parse(res.data.statusList)
+          this.count = res.data.data.count
+          if (res.data.data.data.data.length > 0) {
+            this.list = this.list.concat(res.data.data.data.data);
+          } else {
+            if (this.page == 1) {
+              this.haveGoods = true;
+              this.page = -1;
+            } else {
+              this.page = -1;
+              this.$toast("暂无更多");
+            }
+          }
+        } else {
+          if (page == 1) {
+            this.haveGoods = true;
+            this.page = -1;
+          } else {
+            this.page = -1;
+            this.$toast("暂无更多");
+          }
+        }
+      });
+    },
+    // getData(){
+    //   post("v1/merchant/myShop").then((res) => {
+    //     if (res.code == 0) {
+    //       this.total_money = res.data.total_money,
+    //       this.day_income = res.data.day_income
+    //     }
+    //   });
+    // },
+    SetStatus(i) {
+      this.current = i;
+      this.page = 1;
+      this.list = [];
+      this.haveGoods = false;
+      this.loadData();
+    },
+    onBack() {
+      uni.navigateBack();
+    },
+    // 跳转到提现页面
+    getToCash(type) {
+      this.goto("/pages/cash/index", { type })
+    },
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+    let _this = this
+    if (this.page != -1) {
+      setTimeout(function () {
+        ++_this.page;
+        _this.loadData();
+      }, 800);
+    }
+  },
+};
+</script>
+<style lang="scss">
+// 页面配置
+// 页面配置-end
+
+// 顶部列表
+.tab_list {
+  height: 100%;
+  box-sizing: border-box;
+  font-size: 30rpx;
+  color: #808080;
+
+}
+
+.Tab_con {
+  width: 100%;
+  height: 92rpx;
+  background: #fff;
+  padding: 0 30rpx;
+  box-sizing: border-box;
+  border-bottom: 1rpx solid rgba($color: #d3aa79, $alpha: 0.3);
+}
+
+.active {
+  color: #1bbd89;
+  border-bottom: 6rpx solid #1bbd89;
+}
+
+// 顶部列表-end
+
+// 资金列表
+.con {
+  border-top: 16rpx solid #f4f4f4;
+}
+
+.list_con {
+  width: 100%;
+  overflow: hidden;
+}
+
+.list_head {
+  width: 100%;
+  overflow: hidden;
+  margin-bottom: 5rpx;
+}
+
+.list_time {
+  font-size: 24rpx;
+  color: #a1a1a1;
+}
+
+.list_balance {
+  font-size: 24rpx;
+  color: #a1a1a1;
+}
+
+.head_price {
+  font-size: 32rpx;
+  font-family: "SourceHanSansCN-Medium";
+}
+
+.head_name {
+  font-size: 30rpx;
+  color: #212121;
+  font-family: "SourceHanSansCN-Medium";
+}
+
+.list {
+  width: 100%;
+  overflow: hidden;
+  padding: 30rpx;
+  box-sizing: border-box;
+  border-bottom: 3rpx solid #f4f4f4;
+}
+
+// 资金列表-end
+
+// 状态颜色
+.g_color {
+  color: #1bbd89;
+}
+
+.y_color {
+  color: #f15b21;
+}
+
+// 状态颜色-end
+
+.h_top {
+  background: linear-gradient(#d3aa79, #f3d6b2);
+  height: 420rpx;
+  position: relative;
+  .balance_box {
+    position: absolute;
+    bottom: 0;
+    left: 0;
+    padding: 0 32rpx 38rpx;
+    width: 100%;
+    text-align: center;
+    .b_teg {
+      font-size: 28rpx;
+      margin-bottom: 3rpx;
+      // color: rgba($color: #000, $alpha: 0.65);
+    }
+    .balance {
+      font-size: 60rpx;
+      color: #333;
+    }
+    .b_static {
+      font-size: 28rpx;
+      padding: 30rpx 30rpx 0;
+      .fw{
+        font-weight: 700;
+      }
+    }
+  }
+}
+.hander-top {
+  position: absolute;
+  z-index: 1000;
+  top: 108rpx;
+  left: 0;
+  display: flex;
+  justify-content: space-between;
+  width: 100%;
+  padding: 0 32rpx;
+  box-sizing: border-box;
+
+  .icon-back-wrap {
+    width: 64rpx;
+    height: 64rpx;
+
+    .icon-back {
+      width: 64rpx;
+      height: 64rpx;
+    }
+  }
+
+  .count {
+    color: #222;
+    font-size: 35rpx;
+    line-height: 64rpx;
+  }
+  .capsule {
+    width: 120rpx;
+  }
+}
+
+.btn_bar {
+  padding: 30rpx 32rpx;
+  .btn_item {
+    width: 280rpx;
+    height: 70rpx;
+    line-height: 70rpx;
+    text-align: center;
+    background: rgba($color: #000, $alpha: 0.15);
+    display: flex;
+    flex-direction: row;
+    align-items: center;
+    justify-content: center;
+    border-radius: 10rpx;
+    &.corc {
+      background-color: #d3aa79;
+      color: #fff;
+    }
+    &.conv {
+      color: #fff;
+      background-color: #18bb88;
+    }
+    image {
+      width: 50rpx;
+      height: 50rpx;
+      background: #fff;
+      border-radius: 50%;
+    }
+  }
+  .ico {
+    color: #d3aa79;
+    width: 50rpx;
+    height: 50rpx;
+    background: #fff;
+    border-radius: 50%;
+    display: flex;
+    flex-direction: row;
+    align-items: center;
+    justify-content: center;
+    font-size: 36rpx;
+  }
+  .btn_txt {
+    height: 50rpx;
+    width: calc(76% - 50rpx);
+    line-height: 50rpx;
+  }
+}
+.detailList {
+  width: calc(100% - 64rpx);
+  padding: 0 10rpx;
+  border-radius: 12rpx;
+  margin-bottom: 36rpx;
+  margin-left: 32rpx;
+  margin-top: 32rpx;
+  background-color: #fff;
+
+  .tit {
+    padding: 28rpx 32rpx 10rpx;
+    span {
+      display: inline-block;
+      padding-left: 16rpx;
+      font-size: 32rpx;
+      font-weight: 700;
+      height: 32rpx;
+      line-height: 32rpx;
+      border-left: 8rpx solid #d3aa79;
+    }
+  }
+  .li {
+    padding: 22rpx 0;
+    border-bottom: 1px solid rgba($color: #d3aa79, $alpha: 0.3);
+    margin: 0 30rpx;
+    position: relative;
+
+    p {
+      margin-bottom: 8rpx;
+      font-size: 30rpx;
+      &:last-child {
+        margin-bottom: 0;
+        font-size: 25rpx;
+        color: #999;
+      }
+    }
+    .s5{
+      font-weight: bold;
+    }
+    .s2 {
+      font-weight: bold;
+      &::before {
+        content: "¥";
+        font-size: 25rpx;
+      }
+    }
+    .s4{
+      font-size: 22rpx;
+      color: #999;
+      font-weight: normal;
+    }
+    &:last-child {
+      border: none;
+    }
+    .settle{
+      position: absolute;
+      opacity: 0.6;
+      width: 90rpx;
+      height: 78.3rpx;
+      right: calc((100% - 90rpx) / 2 - 80rpx);
+      top: calc((100% - 78.3rpx) / 2);
+      // margin: calc((100% - 100rpx) / 2);
+    }
+  }
+}
+</style>

BIN
src/static/icon/settle.png