diff --git a/api/behalfAdmin.js b/api/behalfAdmin.js index 03facbd..6a75488 100644 --- a/api/behalfAdmin.js +++ b/api/behalfAdmin.js @@ -17,3 +17,11 @@ export function behalfAdminOrderList(data) { return request.get("behalf_admin/order_list", data); } +/** + * 订单统计 + * + */ +export function behalfAdminNumber(data) { + return request.get("behalf_admin/number", data); +} + diff --git a/components/addInvoicing/index.vue b/components/addInvoicing/index.vue index 511dc88..b4b350b 100644 --- a/components/addInvoicing/index.vue +++ b/components/addInvoicing/index.vue @@ -331,7 +331,7 @@ }); if(value.receipt_type == '增值税专用发票'){ if (!value.bank_name) return that.$util.Tips({ - title: '请填写开户行' + title: '请填写银行卡号' }); if (!value.bank_code) return that.$util.Tips({ title: '请填写银行账号' diff --git a/manifest.json b/manifest.json index 4d5842c..5e36366 100644 --- a/manifest.json +++ b/manifest.json @@ -12,6 +12,9 @@ "nvueCompiler" : "uni-app", "nvueStyleCompiler" : "uni-app", "compilerVersion" : 3, + "compatible":{ + "ignoreVersion": true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, "splashscreen" : { "alwaysShowBeforeRender" : true, "waiting" : true, diff --git a/pages.json b/pages.json index 936c716..c0f9721 100644 --- a/pages.json +++ b/pages.json @@ -235,10 +235,21 @@ } ,{ - "path" : "pages/replace_replenishment/index", + "path" : "pages/replace_replenishment/replace", "style" : { - "navigationBarTitleText": "代发补货", + "navigationBarTitleText": "代发订单", + "enablePullDownRefresh": false, + "navigationBarBackgroundColor": "#ff5c2d", + "navigationBarTextStyle": "white" + } + + }, + { + "path" : "pages/replace_replenishment/replenishment", + "style" : + { + "navigationBarTitleText": "补货订单", "enablePullDownRefresh": false, "navigationBarBackgroundColor": "#ff5c2d", "navigationBarTextStyle": "white" diff --git a/pages/admin/orderRefund/index.vue b/pages/admin/orderRefund/index.vue index 4374450..4a7f18a 100644 --- a/pages/admin/orderRefund/index.vue +++ b/pages/admin/orderRefund/index.vue @@ -40,6 +40,25 @@ {{orderInfo.refund_num}} + + 退款原因 + + {{orderInfo.refund_message}} + + + + 退款备注 + + {{orderInfo.mark}} + + + + 退款凭证 + + + + + @@ -116,7 +135,8 @@ let that = this; getRefundOrderInfo(that.mer_id, that.order_id).then( res => { - that.orderInfo = res.data + res.data.pics4 = res.data.pics.slice(0,4); + that.orderInfo = res.data; that.refundInfo = res.data.refund_info }, err => { @@ -138,7 +158,7 @@ status: that.status, fail_message: that.fail_message } - if(that.orderInfo.refund_type == 2){ + if(that.orderInfo.refund_type == 2 && that.status != -1){ if (!that.refundInfo.mer_delivery_user) { return that.$util.Tips({ title: '请填写收货人姓名' @@ -176,6 +196,13 @@ } ); }, + // 查看图片 + previewImg(){ + uni.previewImage({ + urls: this.orderInfo.pics, + + }) + } } } @@ -191,6 +218,15 @@ justify-content: space-between; border-bottom: 1px solid #f0f0f0; font-size: 30rpx; + .label{ + flex-shrink: 0; + margin-right: 24rpx; + } + .imgs{ + display: flex; + flex-wrap: wrap; + align-items: center; + } } .item-txt{ align-items: center; diff --git a/pages/chat/customer_list/index.vue b/pages/chat/customer_list/index.vue index 517c85c..e9c361c 100644 --- a/pages/chat/customer_list/index.vue +++ b/pages/chat/customer_list/index.vue @@ -121,7 +121,11 @@ //获取商户信息 getindex(){ getUserInfo().then(res => { - + if (res.data.mer_info.length == 0) { + return uni.showModal({ + title: '暂无商户信息' + }) + } this.mer_id = res.data.service.mer_id; if(this.isLogin){ this.getList(this.mer_id) diff --git a/pages/index/index.vue b/pages/index/index.vue index 8a2b7af..1878894 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -277,8 +277,8 @@ - 开户行名称: - 开户银行名称: + @@ -293,8 +293,8 @@ - 开户行: - 银行卡号: + @@ -768,7 +768,7 @@ title: '请输入银行账户姓名' }); if (!value.bank_opening) return that.$util.Tips({ - title: '请输入开户行' + title: '请输入银行卡号' }); if (value.bank_front.length == 0) return that.$util.Tips({ @@ -939,6 +939,7 @@ // console.log(res); this.userid = res.data.uid this.userInfoData = res.data + this.$store.commit('SET_USERINFO', res.data); this.merchantData.phone = res.data.phone if (res.data.service == null) { // console.log('123'); @@ -1638,6 +1639,7 @@ background-color: #d9d9d9; text-align: center; padding-top: 80rpx; + flex-shrink: 0; .content-top_txt { font-size: 18rpx; @@ -1665,6 +1667,7 @@ padding-left: 30rpx; position: relative; padding-top: 80rpx; + flex: 1; .content-right-one { display: flex; @@ -1693,7 +1696,8 @@ height: 70rpx; line-height: 70rpx; border-radius: 20rpx 20rpx; - left: 50%; + right: 50%; + transform: translate(50%, 0); color: #ffffff; background-color: #00a1f1; text-align: center; diff --git a/pages/margin/margin.vue b/pages/margin/margin.vue index 7e48a2a..a4fdcfc 100644 --- a/pages/margin/margin.vue +++ b/pages/margin/margin.vue @@ -49,6 +49,7 @@ paymerchant, marginlist } from '@/api/api.js' +import { Toast } from '../../libs/uniApi' export default { data() { return { @@ -130,7 +131,7 @@ // console.log('用户点击确定'); paymerchant().then((res) => { - + console.log(res); uni.requestPayment({ provider: 'wxpay', orderInfo: res.data @@ -146,12 +147,13 @@ this.$util.Tips({ title: '支付失败' }); - console.log('fail:' + JSON.stringify(err)); } }); }).catch((err) => { - console.log(err) + this.$util.Tips({ + title: err + }); }) } else if (res.cancel) { console.log('用户点击取消'); diff --git a/pages/moreProject/moreProject.vue b/pages/moreProject/moreProject.vue index 5311aa7..db535d6 100644 --- a/pages/moreProject/moreProject.vue +++ b/pages/moreProject/moreProject.vue @@ -38,12 +38,12 @@ @click="navigator(`/pages/admin/order/index?mer_id=${mer_id}&product_type=98&type_id=${userInfoData.mer_info.type_id}`)"> 财务管理 - --> - --> + @@ -224,10 +224,15 @@ 供应链批发 - + - 代发补货 + 代发订单 + + + + + 补货订单 - 线下入库 + 修改库存 -

线下入库

+

修改库存

线上入库

@@ -171,7 +171,7 @@ - 数量: + 数量: @@ -391,6 +391,7 @@ this.show = true this.data.product_id = this.checkboxList1[0].product_id this.data.unique = this.checkboxList1[0].unique + this.data.number = this.checkboxList1[0].stock this.on_line = 1 } else { this.show = false @@ -971,10 +972,13 @@ .shuru { display: flex; - justify-content: flex-start; align-items: center; padding: 5px; - margin-left: 20px; + width: 80%; + margin: 0 auto; + &>view{ + flex-shrink: 0; + } input { background: #F5F5F5; @@ -982,6 +986,7 @@ border: 1px solid #999999; padding-left: 3px; margin-left: 3px; + flex: 1; } } diff --git a/pages/replace_replenishment/index.vue b/pages/replace_replenishment/replace.vue similarity index 93% rename from pages/replace_replenishment/index.vue rename to pages/replace_replenishment/replace.vue index 5e74f3d..b797c3c 100644 --- a/pages/replace_replenishment/index.vue +++ b/pages/replace_replenishment/replace.vue @@ -19,26 +19,26 @@ 搜索我的订单 - + 全部 - {{orderData.orderCount+len || 0}} + - + 待发货 {{orderData.noPostage || 0}} - + 待收货 {{orderData.noDeliver || 0}} - + - + @@ -263,6 +263,9 @@ + + 去发货 + 查看详情 @@ -385,7 +388,8 @@ refundList } from '@/api/order.js'; import{ - behalfAdminOrderList + behalfAdminOrderList, + behalfAdminNumber } from "@/api/behalfAdmin.js" import { getUserInfo @@ -424,7 +428,7 @@ presellProList: [], //定金预售订单 presellOrderCount: 0, orderData: {}, //订单详细统计 - orderStatus: -1, //订单状态 + orderStatus: 'all', //订单状态 page: 1, limit: 20, receivingshow: false, @@ -500,16 +504,16 @@ }, methods: { arrlist() { + + // refundList({ + // product_type: 98, + // type: 0, + // page: 1, + // limit: 1500 - refundList({ - product_type: 98, - type: 0, - page: 1, - limit: 1500 - - }).then(res => { - this.len = res.data.list.length - }) + // }).then(res => { + // this.len = res.data.list.length + // }) }, // 后退 returns() { @@ -585,10 +589,8 @@ */ getOrderData: function() { let that = this; - orderData({ - product_type: 98 - }).then(res => { - // console.log(res.data) + behalfAdminNumber().then(res => { + console.log(res.data) that.$set(that, 'orderData', res.data); }) }, @@ -744,20 +746,13 @@ * 切换类型 */ statusClick: function(status) { - - if (status == 5) { - uni.navigateTo({ - url: '/pages/users/refund/list?type=98' - }) - } else { - if (status == this.orderStatus) return; + if (status == this.orderStatus) return; this.orderStatus = status; this.loadend = false; this.loading = false; this.page = 1; this.$set(this, 'orderList', []); this.getOrderList(); - } }, /** * 获取订单列表 @@ -768,56 +763,29 @@ if (that.loading) return; that.loading = true; that.loadTitle = "加载更多"; + // console.log('点击'); + // console.log(that.isReady); if (that.isReady) { that.isReady = false - if (that.orderStatus == -1) { - behalfAdminOrderList({ - page: that.page, - limit: that.limit, - }).then(res => { - that.isReady = true; - let list = res.data.list || []; - let loadend = list.length < that.limit; - // console.log(that.orderList) - that.orderList = that.page == 1 ? list : that.$util.SplitArray(list, that - .orderList); - that.$set(that, 'orderList', that.orderList); - // console.log(that.orderList) - that.getProductCount(); - that.loadend = loadend; - that.loading = false; - that.loadTitle = loadend ? "我也是有底线的" : '加载更多'; - that.page = that.page + 1 - }) - } else { - let arr; - if (that.orderStatus > -1) { - arr = that.orderStatus - } else { - arr = '' - } - getOrderList({ - status: arr, - page: that.page, - limit: that.limit, - product_type: 98 - }).then(res => { - let list = res.data.list || []; - let loadend = list.length < that.limit; - that.orderList = that.page == 1 ? list : that.$util.SplitArray(list, that - .orderList); - that.$set(that, 'orderList', that.orderList); - that.getProductCount(); - that.loadend = loadend; - that.loading = false; - that.loadTitle = loadend ? "我也是有底线的" : '加载更多'; - that.page = that.page + 1; - that.isReady = true; - }).catch(err => { - that.loading = false; - that.loadTitle = "加载更多"; - }) - } + behalfAdminOrderList({ + page: that.page, + limit: that.limit, + status: that.orderStatus + }).then(res => { + let list = res.data.list || []; + let loadend = list.length < that.limit; + // console.log(that.orderList) + that.orderList = that.page == 1 ? list : that.$util.SplitArray(list, that + .orderList); + that.$set(that, 'orderList', that.orderList); + // console.log(that.orderList) + that.getProductCount(); + that.loadend = loadend; + that.loading = false; + that.loadTitle = loadend ? "我也是有底线的" : '加载更多'; + that.page = that.page + 1; + that.isReady = true; + }) } }, /** @@ -1327,4 +1295,10 @@ font-size: 23rpx; } } + + .all{ + display: flex; + align-items: center; + + } \ No newline at end of file diff --git a/pages/replace_replenishment/replenishment.vue b/pages/replace_replenishment/replenishment.vue new file mode 100644 index 0000000..b2acd96 --- /dev/null +++ b/pages/replace_replenishment/replenishment.vue @@ -0,0 +1,197 @@ + + + \ No newline at end of file diff --git a/pages/users/embody/embody.vue b/pages/users/embody/embody.vue index 147faab..eb10b4b 100644 --- a/pages/users/embody/embody.vue +++ b/pages/users/embody/embody.vue @@ -51,10 +51,10 @@ 当前可提现金额: ¥{{extract_money}},冻结佣金:¥{{userInfo.lock_brokerage}} + class="price">¥{{extract_money}}, 冻结金额: ¥{{lock_money}} - 说明: 每笔佣金的冻结期为{{userInfo.broken_day}}天,到期后可提现 + 说明: 用户确认收货{{lock_time}}天后, 才可提现该订单金额 @@ -92,10 +92,10 @@ 当前可提现金额: ¥{{extract_money}},冻结佣金:¥{{userInfo.lock_brokerage}} + class="price">¥{{extract_money}},冻结金额: ¥{{lock_money}} - 说明: 每笔佣金的冻结期为{{userInfo.broken_day}}天,到期后可提现 + 说明: 用户确认收货{{lock_time}}天后, 才可提现该订单金额 @@ -141,11 +141,11 @@ 当前可提现金额: ¥{{extract_money}},冻结佣金:¥{{userInfo.lock_brokerage}} - - - 说明: 每笔佣金的冻结期为{{userInfo.broken_day}}天,到期后可提现 - + class="price">¥{{extract_money}}, 冻结金额: ¥{{lock_money}} + + + 说明: 用户确认收货{{lock_time}}天后, 才可提现该订单金额 + @@ -194,6 +194,8 @@ data() { return { extract_money:"", + lock_money: "", + lock_time: "", mode: { bank_address: "", bank_code: "", @@ -279,6 +281,8 @@ this.mode.bank_name = res.data.financial_bank_bank this.mode.bank_address = res.data.financial_bank_branch this.extract_money=res.data.extract_money + this.lock_money = res.data.lock_money + this.lock_time = res.data.lock_time console.log(this.extract_money) } catch (err) { //TODO handle the exception diff --git a/pages/users/gather_list/index.vue b/pages/users/gather_list/index.vue index a519421..8221182 100644 --- a/pages/users/gather_list/index.vue +++ b/pages/users/gather_list/index.vue @@ -1,24 +1,23 @@ @@ -63,6 +85,7 @@ sum: 0, count:0, scrollTop: 0, + endDate: '', merId: '', UserApplylist:[] } @@ -77,13 +100,19 @@ }, onLoad(option) { this.merId = option.mer_id - console.log(this.merId); + let date = new Date(); + this.endDate = `${date.getFullYear()}-${date.getMonth()+1}-01` + console.log(this.endDate); + // console.log(this.merId); this.ApplyList() // this.UserApplylist.forEach((item)=>{ // console.log(item.extract_money); // }) }, methods: { + changeDate(e){ + console.log(e.detail.value); + }, /**数字强制转为两位小数*/ returnFloat(value){ var value=Math.round(parseFloat(value)*100)/100; @@ -110,8 +139,10 @@ this.UserApplylist=res.data.list this.count=this.UserApplylist.length this.UserApplylist.forEach(item=>{ - item.create_time=item.create_time.substr(0,10) - console.log(parseInt(item.extract_money)); + item.financial_account.bank_code=item.financial_account.bank_code.substr(-4) + console.log(item.financial_account.bank_code); + // item.create_time=item.create_time.substr(0,10) + // console.log(parseInt(item.extract_money)); }) for(let i =0; i .list { .head { - width: 100%; - height: 150px; - display: flex; - background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%); - position: relative; + // width: 100%; + // height: 150px; + // display: flex; + // background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%); + // position: relative; + // padding-top: 28rpx; + width: 694rpx; + margin: 28rpx auto; + padding: 28rpx; + background-color: #fff; + border-radius: 24rpx; .head_conent { - width: 90%; - height: 150px; - background-color: #fff; - margin: 50px auto; - border-radius: 15px; - box-shadow: 0px 0px 5px rgba(#FA6514, 0.5); + // width: 694rpx; + // margin: 28rpx auto; + // height: 150px; + // margin: 50px auto; + // border-radius: 15px; + // box-shadow: 0px 0px 5px rgba(#FA6514, 0.5); - .tatil { - display: flex; - justify-content: space-around; - align-items: center; - width: 100%; - - .sum { - text-align: center; - margin-top: 30px; - - h3 { - margin-top: 15px; - font-size: 18px; - font-weight: 700; - color: #E93323; - } - } + display: flex; + justify-content: space-around; + align-items: center; + + .line{ + width: 1rpx; + height: 70rpx; + background-color: #dfdfdf; + } + + .sum { + flex: 1; + text-align: center; + color: #737373; + font-size: 30rpx; + .num{ + font-size: 42.06rpx; + margin-bottom: 15rpx; + } + .text{ + margin-bottom: 15rpx; + } } } .tixian { - position: absolute; - background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%); - box-shadow: 0px 0px 5px rgba(#FA6514, 0.5); - width: 100px; - height: 40px; - line-height: 40px; - border-radius: 30px; - text-align: center; - font-size: 18px; - color: #fff; - font-weight: 700; - left: 37%; - top: 150px; + width: 326rpx; + height: 53rpx; + line-height: 53rpx; + text-align: center; + background: #FFFFFF; + border-radius: 25rpx 25rpx 25rpx 25rpx; + opacity: 1; + border: 2rpx solid #F84221; + margin: 0 auto; + margin-top: 20rpx; + font-size: 26rpx; + font-family: PingFang SC-Regular, PingFang SC; + font-weight: 400; + color: #F84221; + // position: absolute; + // background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%); + // box-shadow: 0px 0px 5px rgba(#FA6514, 0.5); + // width: 100px; + // height: 40px; + // line-height: 40px; + // border-radius: 30px; + // text-align: center; + // font-size: 18px; + // color: #fff; + // font-weight: 700; + // left: 37%; + // top: 150px; } } @@ -245,5 +301,75 @@ } } + .recoder{ + padding: 0 28rpx 28rpx 28rpx; + .time{ + height: 42rpx; + font-size: 30rpx; + font-family: PingFang SC-Medium, PingFang SC; + font-weight: 500; + color: #333333; + line-height: 45rpx; + margin-bottom: 20rpx; + display: flex; + align-items: center; + .icon{ + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); + margin-left: 10rpx; + } + } + .card{ + width: 694rpx; + background: #FFFFFF; + border-radius: 21rpx 21rpx 21rpx 21rpx; + opacity: 1; + padding: 28rpx; + margin-bottom: 20rpx; + display: flex; + align-items: center; + .left{ + flex-shrink: 0; + margin-right: 20rpx; + } + .right{ + flex: 1; + .item{ + width: 100%; + display: flex; + justify-content: space-between; + &_title{ + font-size: 30rpx; + font-family: PingFang SC-Medium, PingFang SC; + font-weight: 500; + color: #333333; + line-height: 45rpx; + } + &_money{ + font-size: 33rpx; + font-family: PingFang SC-Medium, PingFang SC; + font-weight: 500; + color: #F84221; + line-height: 50rpx; + } + &_brank{ + font-size: 26rpx; + font-family: PingFang SC-Regular, PingFang SC; + font-weight: 400; + color: #737373; + line-height: 39rpx; + } + &_time{ + font-size: 23rpx; + font-family: PingFang SC-Regular, PingFang SC; + font-weight: 400; + color: #B3B3B3; + line-height: 34rpx; + } + } + } + } + } } \ No newline at end of file diff --git a/pages/users/user_invoice_form/index.vue b/pages/users/user_invoice_form/index.vue index d38bd44..4dccdf4 100644 --- a/pages/users/user_invoice_form/index.vue +++ b/pages/users/user_invoice_form/index.vue @@ -208,7 +208,7 @@ } if(this.receipt_type == 2){ if (!formData.bank_name) return this.$util.Tips({ - title: '请输入开户行' + title: '请输入银行卡号' }); if (!formData.bank_code) return this.$util.Tips({ diff --git a/pages/wholesale/wholesale/wholesale.vue b/pages/wholesale/wholesale/wholesale.vue index 4526184..9a0eb1f 100644 --- a/pages/wholesale/wholesale/wholesale.vue +++ b/pages/wholesale/wholesale/wholesale.vue @@ -150,6 +150,25 @@ + + + + + + + + {{goodsNum}} + + + + ¥{{totalMoney}} + 支持配送 售后无忧 + + + 去结算 + @@ -200,6 +219,11 @@ import { getconfig, } from '@/api/public.js'; + import { + getCartCounts, + getCartList, + + } from '@/api/requesta.js'; const app = getApp(); export default { components: { @@ -231,6 +255,8 @@ domain: HTTP_REQUEST_URL, productList: [], is_switch: true, + goodsNum: 0, + totalMoney: 0, where: { cate_id: '', order: '', @@ -334,8 +360,11 @@ this.get_host_product(); this.getClassfication(); this.getStoreType(); - this.tabIndex = 2 + // this.tabIndex = 2 }, + onShow() { + this.cartFn() + }, onReady() {}, mounted() { uni.getStorage({ @@ -791,6 +820,55 @@ }) } }, + skuaddcart() { + this.showcartpop = false + // this.skuform = {} + let res = postCartAdd({ + cart_num: this.skuNumber, + is_new: 0, + product_attr_unique: this.skuform.sku[this.skusize].unique, + product_id: this.skuform.product_id, + product_type: this.skuform.product_type, + spread_id: "", + }).then((res, err) => { + this.cartFn() + uni.showToast({ + title: "加入成功", + duration: 1000, + + }) + }).catch(err => { + // this.act_cart = false + uni.showToast({ + title: err, + icon: "none", + duration: 1000, + }) + }) + + }, + cartFn() { + getCartList().then(res => { + // console.log(res) + this.totalMoney = 0 + this.cartList = res.data.list + this.cartList.forEach(e => { + e.list.forEach(item => { + this.totalMoney += item.cart_num * item.productAttr.price + }) + + }) + this.totalMoney = this.totalMoney.toFixed(2) + }) + getCartCounts().then(res => { + this.goodsNum = res.data[0].count + }) + }, + navgo(url){ + uni.navigateTo({ + url: url + }) + } }, onPullDownRefresh() { @@ -1661,4 +1739,59 @@ } } } + .card { + width: 720rpx; + z-index: 99; + // margin:auto; + left: 50%; + transform: translateX(-50%); + position: fixed; + // bottom: 0; + background-color: #333333; + height: 101.64rpx; + border-radius: 50.82rpx; + overflow: hidden; + color: white; + display: flex; + justify-content: space-between; + box-sizing: border-box; + + .left { + display: flex; + align-items: center; + padding: 10rpx 35rpx; + + .tot_price { + display: flex; + margin-left: 42rpx; + flex-direction: column; + justify-content: space-between; + } + .badge { + position: absolute; + top: 0; + right: 0; + background-color: #f84221; + transform: translate(50%, -50%); + // padding: 10rpx 10rpx; + border-radius: 35rpx; + text-align: center; + width: 35rpx; + line-height: 35rpx; + height: 35rpx; + } + } + + .right { + font-size: 33.29rpx; + line-height: 50px; + background: linear-gradient(to right, #f84221, #ff6d20); + width: 140.19rpx; + text-align: center; + } + } + .act_cart { + transition: 0.5s; + transform: scale(1.1); + } \ No newline at end of file diff --git a/static/images/SMRK/bar.png b/static/images/SMRK/bar.png index 0baebee..43ad0d8 100644 Binary files a/static/images/SMRK/bar.png and b/static/images/SMRK/bar.png differ diff --git a/static/images/SMRK/img.png b/static/images/SMRK/img.png index c573534..7a35d90 100644 Binary files a/static/images/SMRK/img.png and b/static/images/SMRK/img.png differ diff --git a/static/images/SMRK/name.png b/static/images/SMRK/name.png index ed9c1f6..4f61041 100644 Binary files a/static/images/SMRK/name.png and b/static/images/SMRK/name.png differ diff --git a/static/images/qianbao.png b/static/images/qianbao.png new file mode 100644 index 0000000..8c4b3cf Binary files /dev/null and b/static/images/qianbao.png differ