@ -0,0 +1,35 @@
|
|||||||
|
/*
|
||||||
|
* @Author: ch
|
||||||
|
* @Date: 2022-05-10 20:50:54
|
||||||
|
* @LastEditors: ch
|
||||||
|
* @LastEditTime: 2022-05-13 14:28:29
|
||||||
|
* @Description: file content
|
||||||
|
*/
|
||||||
|
|
||||||
|
const MSG_TYPE = {
|
||||||
|
// 文本消息
|
||||||
|
TXT: 1,
|
||||||
|
// 语音消息
|
||||||
|
VOICE: 2,
|
||||||
|
// 图片消息
|
||||||
|
IMG: 3,
|
||||||
|
// 视频消息
|
||||||
|
VIDEO: 4,
|
||||||
|
// 自定义类型
|
||||||
|
CUSTOM : 6,
|
||||||
|
// 提示消息
|
||||||
|
TIP : 7
|
||||||
|
}
|
||||||
|
const TYPE = {
|
||||||
|
// 给某个会话发送消息
|
||||||
|
SEND_MSG: 20,
|
||||||
|
// 创建会话
|
||||||
|
CRETAE_SEEION: 21,
|
||||||
|
// 会话心跳
|
||||||
|
SESSION_HEART : 22
|
||||||
|
|
||||||
|
}
|
||||||
|
export {
|
||||||
|
// 消息类型
|
||||||
|
MSG_TYPE
|
||||||
|
}
|
@ -0,0 +1,357 @@
|
|||||||
|
export const emojiData = [
|
||||||
|
//笑脸
|
||||||
|
{
|
||||||
|
type: 'smiley',
|
||||||
|
name: '笑脸',
|
||||||
|
list: [
|
||||||
|
'😀',
|
||||||
|
'😁',
|
||||||
|
'😂',
|
||||||
|
'🤣',
|
||||||
|
'😃',
|
||||||
|
'😄',
|
||||||
|
'😅',
|
||||||
|
'😆',
|
||||||
|
'😉',
|
||||||
|
'😊',
|
||||||
|
'😋',
|
||||||
|
'😎',
|
||||||
|
'😍',
|
||||||
|
'😘',
|
||||||
|
'😗',
|
||||||
|
'😙',
|
||||||
|
'😚',
|
||||||
|
'🙂',
|
||||||
|
'🤗',
|
||||||
|
'🤩',
|
||||||
|
'🤔',
|
||||||
|
'🤨',
|
||||||
|
'😐',
|
||||||
|
'😑',
|
||||||
|
'😶',
|
||||||
|
'🙄',
|
||||||
|
'😏',
|
||||||
|
'😣',
|
||||||
|
'😥',
|
||||||
|
'😮',
|
||||||
|
'🤐',
|
||||||
|
'😯',
|
||||||
|
'😪',
|
||||||
|
'😫',
|
||||||
|
'😴',
|
||||||
|
'😌',
|
||||||
|
'😛',
|
||||||
|
'😜',
|
||||||
|
'😝',
|
||||||
|
'🤤',
|
||||||
|
'😒',
|
||||||
|
'😓',
|
||||||
|
'😔',
|
||||||
|
'😕',
|
||||||
|
'🙃',
|
||||||
|
'🤑',
|
||||||
|
'😲',
|
||||||
|
'🙁',
|
||||||
|
'😖',
|
||||||
|
'😞',
|
||||||
|
'😟',
|
||||||
|
'😤',
|
||||||
|
'😢',
|
||||||
|
'😭',
|
||||||
|
'😦',
|
||||||
|
'😧',
|
||||||
|
'😨',
|
||||||
|
'😩',
|
||||||
|
'🤯',
|
||||||
|
'😬',
|
||||||
|
'😰',
|
||||||
|
'😱',
|
||||||
|
'😳',
|
||||||
|
'🤪',
|
||||||
|
'😵',
|
||||||
|
'😡',
|
||||||
|
'😠',
|
||||||
|
'🤬',
|
||||||
|
'😷',
|
||||||
|
'🤒',
|
||||||
|
'🤕',
|
||||||
|
'🤢',
|
||||||
|
'🤮',
|
||||||
|
'🤧',
|
||||||
|
'😇',
|
||||||
|
'🤠',
|
||||||
|
'🤡',
|
||||||
|
'🤥',
|
||||||
|
'🤫',
|
||||||
|
'🤭',
|
||||||
|
'🧐',
|
||||||
|
'🤓',
|
||||||
|
'😈',
|
||||||
|
'👿',
|
||||||
|
'👹',
|
||||||
|
'👺',
|
||||||
|
'💀',
|
||||||
|
'👻',
|
||||||
|
'👽',
|
||||||
|
'🤖',
|
||||||
|
'💩',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
//手势
|
||||||
|
{
|
||||||
|
type: 'gesture',
|
||||||
|
name: '手势',
|
||||||
|
list: [
|
||||||
|
'🤲',
|
||||||
|
'👐',
|
||||||
|
'🙌',
|
||||||
|
'👏',
|
||||||
|
'🤝',
|
||||||
|
'👍',
|
||||||
|
'👎',
|
||||||
|
'👊',
|
||||||
|
'🤛',
|
||||||
|
'🤜',
|
||||||
|
'🤞',
|
||||||
|
'🤟',
|
||||||
|
'🤘',
|
||||||
|
'👌',
|
||||||
|
'👈',
|
||||||
|
'👉',
|
||||||
|
'👆',
|
||||||
|
'👇',
|
||||||
|
'🤚',
|
||||||
|
'🖐',
|
||||||
|
'🖖',
|
||||||
|
'👋',
|
||||||
|
'🤙',
|
||||||
|
'💪',
|
||||||
|
// "🖕",
|
||||||
|
'🙏',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
//人物
|
||||||
|
{
|
||||||
|
type: 'people',
|
||||||
|
name: '人物',
|
||||||
|
list: [
|
||||||
|
'👦',
|
||||||
|
'👧',
|
||||||
|
'👨',
|
||||||
|
'👩',
|
||||||
|
'👴',
|
||||||
|
'👵',
|
||||||
|
'👶',
|
||||||
|
'👱',
|
||||||
|
'👮',
|
||||||
|
'👲',
|
||||||
|
'👳',
|
||||||
|
'👷',
|
||||||
|
'👸',
|
||||||
|
'💂',
|
||||||
|
'🎅',
|
||||||
|
'👰',
|
||||||
|
'👼',
|
||||||
|
'💆',
|
||||||
|
'💇',
|
||||||
|
'🙍',
|
||||||
|
'🙎',
|
||||||
|
'🙅',
|
||||||
|
'🙆',
|
||||||
|
'💁',
|
||||||
|
'🙋',
|
||||||
|
'🙇',
|
||||||
|
'🙌',
|
||||||
|
'🙏',
|
||||||
|
'👤',
|
||||||
|
'👥',
|
||||||
|
'🚶',
|
||||||
|
'🏃',
|
||||||
|
'👯',
|
||||||
|
'💃',
|
||||||
|
'👫',
|
||||||
|
'👬',
|
||||||
|
'👭',
|
||||||
|
'💏',
|
||||||
|
'💑',
|
||||||
|
'👪',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
//动物
|
||||||
|
{
|
||||||
|
type: 'animal',
|
||||||
|
name: '动物',
|
||||||
|
list: [
|
||||||
|
'🙈',
|
||||||
|
'🙉',
|
||||||
|
'🙊',
|
||||||
|
'🐵',
|
||||||
|
'🐒',
|
||||||
|
'🐶',
|
||||||
|
'🐕',
|
||||||
|
'🐩',
|
||||||
|
'🐺',
|
||||||
|
'🐱',
|
||||||
|
'😺',
|
||||||
|
'😸',
|
||||||
|
'😹',
|
||||||
|
'😻',
|
||||||
|
'😼',
|
||||||
|
'😽',
|
||||||
|
'🙀',
|
||||||
|
'😿',
|
||||||
|
'😾',
|
||||||
|
'🐈',
|
||||||
|
'🐯',
|
||||||
|
'🐅',
|
||||||
|
'🐆',
|
||||||
|
'🐴',
|
||||||
|
'🐎',
|
||||||
|
'🐮',
|
||||||
|
'🐂',
|
||||||
|
'🐃',
|
||||||
|
'🐄',
|
||||||
|
'🐷',
|
||||||
|
'🐖',
|
||||||
|
'🐗',
|
||||||
|
'🐽',
|
||||||
|
'🐏',
|
||||||
|
'🐑',
|
||||||
|
'🐐',
|
||||||
|
'🐪',
|
||||||
|
'🐫',
|
||||||
|
'🐘',
|
||||||
|
'🐭',
|
||||||
|
'🐁',
|
||||||
|
'🐀',
|
||||||
|
'🐹',
|
||||||
|
'🐰',
|
||||||
|
'🐇',
|
||||||
|
'🐻',
|
||||||
|
'🐨',
|
||||||
|
'🐼',
|
||||||
|
'🐾',
|
||||||
|
'🐔',
|
||||||
|
'🐓',
|
||||||
|
'🐣',
|
||||||
|
'🐤',
|
||||||
|
'🐥',
|
||||||
|
'🐦',
|
||||||
|
'🐧',
|
||||||
|
'🐸',
|
||||||
|
'🐊',
|
||||||
|
'🐢',
|
||||||
|
'🐍',
|
||||||
|
'🐲',
|
||||||
|
'🐉',
|
||||||
|
'🐳',
|
||||||
|
'🐋',
|
||||||
|
'🐬',
|
||||||
|
'🐟',
|
||||||
|
'🐠',
|
||||||
|
'🐡',
|
||||||
|
'🐙',
|
||||||
|
'🐚',
|
||||||
|
'🐌',
|
||||||
|
'🐛',
|
||||||
|
'🐜',
|
||||||
|
'🐝',
|
||||||
|
'🐞',
|
||||||
|
'🦋',
|
||||||
|
'🐁',
|
||||||
|
'🐂',
|
||||||
|
'🐅',
|
||||||
|
'🐇',
|
||||||
|
'🐉',
|
||||||
|
'🐍',
|
||||||
|
'🐎',
|
||||||
|
'🐐',
|
||||||
|
'🐒',
|
||||||
|
'🐓',
|
||||||
|
'🐕',
|
||||||
|
'🐖',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
//其他
|
||||||
|
{
|
||||||
|
type: 'other',
|
||||||
|
name: '其他',
|
||||||
|
list: [
|
||||||
|
'🌹',
|
||||||
|
'🍀',
|
||||||
|
'🍎',
|
||||||
|
'💰',
|
||||||
|
'📱',
|
||||||
|
'🌙',
|
||||||
|
'🍁',
|
||||||
|
'🍂',
|
||||||
|
'🍃',
|
||||||
|
'🌷',
|
||||||
|
'💎',
|
||||||
|
'🔪',
|
||||||
|
'🔫',
|
||||||
|
'🏀',
|
||||||
|
'👄',
|
||||||
|
'👍',
|
||||||
|
'🔥',
|
||||||
|
'💘',
|
||||||
|
'💓',
|
||||||
|
'💔',
|
||||||
|
'💕',
|
||||||
|
'💖',
|
||||||
|
'💗',
|
||||||
|
'💙',
|
||||||
|
'💚',
|
||||||
|
'💛',
|
||||||
|
'💜',
|
||||||
|
'💝',
|
||||||
|
'💞',
|
||||||
|
'💟',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
];
|
||||||
|
//emoji表情编码
|
||||||
|
export function utf16toEntities(str) {
|
||||||
|
const patt = /[\ud800-\udbff][\udc00-\udfff]/g; // 检测utf16字符正则
|
||||||
|
str = str.replace(patt, (char) => {
|
||||||
|
let H;
|
||||||
|
let L;
|
||||||
|
let code;
|
||||||
|
let s;
|
||||||
|
|
||||||
|
if (char.length === 2) {
|
||||||
|
H = char.charCodeAt(0); // 取出高位
|
||||||
|
L = char.charCodeAt(1); // 取出低位
|
||||||
|
code = (H - 0xd800) * 0x400 + 0x10000 + L - 0xdc00; // 转换算法
|
||||||
|
s = `&#${code};`;
|
||||||
|
} else {
|
||||||
|
s = char;
|
||||||
|
}
|
||||||
|
|
||||||
|
return s;
|
||||||
|
});
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
// 表情解码
|
||||||
|
export function entitiestoUtf16(strObj) {
|
||||||
|
const patt = /&#\d+;/g;
|
||||||
|
const arr = strObj.match(patt) || [];
|
||||||
|
|
||||||
|
let H;
|
||||||
|
let L;
|
||||||
|
let code;
|
||||||
|
|
||||||
|
for (let i = 0; i < arr.length; i += 1) {
|
||||||
|
code = arr[i];
|
||||||
|
code = code.replace('&#', '').replace(';', '');
|
||||||
|
// 高位
|
||||||
|
H = Math.floor((code - 0x10000) / 0x400) + 0xd800;
|
||||||
|
// 低位
|
||||||
|
L = ((code - 0x10000) % 0x400) + 0xdc00;
|
||||||
|
code = `&#${code};`;
|
||||||
|
const s = String.fromCharCode(H, L);
|
||||||
|
strObj = strObj.replace(code, s);
|
||||||
|
}
|
||||||
|
return strObj;
|
||||||
|
}
|
@ -1,124 +0,0 @@
|
|||||||
<!--
|
|
||||||
* @Author: ch
|
|
||||||
* @Date: 2022-03-26 14:32:03
|
|
||||||
* @LastEditors: ch
|
|
||||||
* @LastEditTime: 2022-04-28 23:43:35
|
|
||||||
* @Description: file content
|
|
||||||
-->
|
|
||||||
<template>
|
|
||||||
<view>
|
|
||||||
<view class="msgItem" v-for="item in msgData" :key="item.id">
|
|
||||||
<view class="msgItem--title">
|
|
||||||
<text>{{item.payload.title }} {{item.id}}</text>
|
|
||||||
<text class="msgItem--time">{{item.createTimeStamp}}</text>
|
|
||||||
</view>
|
|
||||||
<view class="msgItem--con">
|
|
||||||
<image class="msgItem--img" src="@/static/message/xt.png" mode="widthFix"/>
|
|
||||||
<view class="msgItem--desc">{{item.payload.content}}</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<u-loadmore status="loading" v-if="!msgData.length"/>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import {MsbWebSkt, createUUID} from '@/common/utils';
|
|
||||||
export default {
|
|
||||||
data(){
|
|
||||||
return {
|
|
||||||
}
|
|
||||||
},
|
|
||||||
computed:{
|
|
||||||
curSessionData(){
|
|
||||||
return this.$store.state.sessionData.find(i =>i.id == this.$store.state.sessionMsgId)
|
|
||||||
},
|
|
||||||
msgData (){
|
|
||||||
return this.curSessionData ? this.curSessionData.messageList : [];
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
onReachBottom(){
|
|
||||||
this.getHistoryMsg();
|
|
||||||
},
|
|
||||||
onShow(){
|
|
||||||
if(!this.$store.state.sessionMsgId){
|
|
||||||
this.$Router.back();
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
this.getHistoryMsg();
|
|
||||||
this.readMsg();
|
|
||||||
},
|
|
||||||
methods:{
|
|
||||||
/**
|
|
||||||
* 获取历史消息
|
|
||||||
*/
|
|
||||||
getHistoryMsg(){
|
|
||||||
this.loading = true;
|
|
||||||
const lastMsg = this.msgData[this.msgData.length - 1] || {};
|
|
||||||
MsbWebSkt.send({
|
|
||||||
data : JSON.stringify({
|
|
||||||
traceId : createUUID(),
|
|
||||||
traceType : "2",
|
|
||||||
content: {
|
|
||||||
sessionId : this.$store.state.sessionMsgId,
|
|
||||||
topMessageId : lastMsg.id || null
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
/**
|
|
||||||
* 已读消息
|
|
||||||
*/
|
|
||||||
readMsg(){
|
|
||||||
MsbWebSkt.send({
|
|
||||||
data : JSON.stringify({
|
|
||||||
traceId : createUUID(),
|
|
||||||
traceType : "6",
|
|
||||||
content: {
|
|
||||||
sessionId : this.$store.state.sessionMsgId
|
|
||||||
}
|
|
||||||
})
|
|
||||||
});
|
|
||||||
// 计算页头消息数
|
|
||||||
const count = this.$store.state.sessionMsgCount - this.curSessionData.unreadCount;
|
|
||||||
// 计算会话列表消息数
|
|
||||||
this.curSessionData.unreadCount = 0;
|
|
||||||
this.$store.commit('SET_SESSION_MSG_COUNT', count)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.msgItem{
|
|
||||||
padding: 40rpx 0 0 40rpx;
|
|
||||||
&--title{
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
padding-right: 40rpx;
|
|
||||||
font-size: $font-size-lg;
|
|
||||||
color: $color-grey6;
|
|
||||||
}
|
|
||||||
&--time{
|
|
||||||
font-size: $font-size-sm;
|
|
||||||
color: $color-grey4;
|
|
||||||
}
|
|
||||||
&--con{
|
|
||||||
display: flex;
|
|
||||||
border-bottom: 1px solid $color-grey2;
|
|
||||||
padding: 40rpx 0;
|
|
||||||
}
|
|
||||||
&--img{
|
|
||||||
width: 140rpx;
|
|
||||||
height: 140rpx;
|
|
||||||
border-radius: 12rpx;
|
|
||||||
margin-right: 40rpx;
|
|
||||||
}
|
|
||||||
&--desc{
|
|
||||||
width: 455rpx;
|
|
||||||
font-size: $font-size-base;
|
|
||||||
line-height: 39rpx;
|
|
||||||
color: $color-grey5;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -0,0 +1,100 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: ch
|
||||||
|
* @Date: 2022-05-13 15:57:31
|
||||||
|
* @LastEditors: ch
|
||||||
|
* @LastEditTime: 2022-05-14 13:47:05
|
||||||
|
* @Description: file content
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<view class="product" @click="handleDetail">
|
||||||
|
<image class="product--img" :src="goodsInfo.productImageUrl" mode="aspectFit"/>
|
||||||
|
<view class="product--con">
|
||||||
|
<view class="product--con-title">{{goodsInfo.name}}</view>
|
||||||
|
<UiMoney class="product--con-price" :money="goodsInfo.startingPrice" float prefix suffix></UiMoney>
|
||||||
|
</view>
|
||||||
|
<template v-if="position === 'footer'">
|
||||||
|
<UiButton class="product--btn" size="min" type="gradual" @click="send">发送商品</UiButton>
|
||||||
|
<image class="product--close" src="@/static/imxx/close.png" @click="close"/>
|
||||||
|
</template>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import UiButton from '../../../../../components/UiButton.vue'
|
||||||
|
import UiMoney from '../../../../../components/UiMoney.vue'
|
||||||
|
export default {
|
||||||
|
components: { UiMoney, UiButton },
|
||||||
|
props : {
|
||||||
|
goodsInfo : {
|
||||||
|
type : Object,
|
||||||
|
default : ()=>({})
|
||||||
|
},
|
||||||
|
// 显示位置 footer 底部 msg消息框
|
||||||
|
position : {
|
||||||
|
type : String,
|
||||||
|
default : 'footer'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods : {
|
||||||
|
send(){
|
||||||
|
this.$emit('send');
|
||||||
|
},
|
||||||
|
close(){
|
||||||
|
this.$emit('close');
|
||||||
|
},
|
||||||
|
handleDetail(){
|
||||||
|
this.$emit('click')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.product {
|
||||||
|
display: flex;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 16rpx;
|
||||||
|
padding: 30rpx;
|
||||||
|
position: relative;
|
||||||
|
&--img{
|
||||||
|
width: 140rpx;
|
||||||
|
height: 140rpx;
|
||||||
|
}
|
||||||
|
&--con{
|
||||||
|
width: 300rpx;
|
||||||
|
margin-left: 30rpx;
|
||||||
|
&-title{
|
||||||
|
font-size: 28rpx;
|
||||||
|
line-height: 36rpx;
|
||||||
|
@include ellipses(2);
|
||||||
|
}
|
||||||
|
&-price{
|
||||||
|
margin-top: 36rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&--btn{
|
||||||
|
width: 160rpx;
|
||||||
|
padding : 0;
|
||||||
|
position: absolute;
|
||||||
|
right: 30rpx;
|
||||||
|
bottom: 30rpx;
|
||||||
|
}
|
||||||
|
&--close{
|
||||||
|
width: 24rpx;
|
||||||
|
height: 24rpx;
|
||||||
|
position: absolute;
|
||||||
|
top: 30rpx;
|
||||||
|
right:30rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/deep/{
|
||||||
|
.product--con-price{
|
||||||
|
text{
|
||||||
|
color: #FF512B;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
.ui-money--price{
|
||||||
|
font-size: 32rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,93 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: ch
|
||||||
|
* @Date: 2022-05-14 14:00:14
|
||||||
|
* @LastEditors: ch
|
||||||
|
* @LastEditTime: 2022-05-14 15:57:30
|
||||||
|
* @Description: file content
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<view class="order" @click="handleDetail">
|
||||||
|
<view class="order--status">{{orderInfo.orderStatusDesc}}</view>
|
||||||
|
<view class="order--con">
|
||||||
|
<image class="order--con-img" :src="orderInfo.productImageUrl" mode="aspectFit"/>
|
||||||
|
<view class="order--con-right">
|
||||||
|
<view class="order--con-title">{{orderInfo.productName}}</view>
|
||||||
|
<UiMoney class="order--con-price" :money="orderInfo.payAmount" float prefix suffix></UiMoney>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="order--footer">订单编号{{orderInfo.orderNo}}</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import UiButton from '../../../../../components/UiButton.vue'
|
||||||
|
import UiMoney from '../../../../../components/UiMoney.vue'
|
||||||
|
export default {
|
||||||
|
components: { UiMoney, UiButton },
|
||||||
|
props : {
|
||||||
|
orderInfo : {
|
||||||
|
type : Object,
|
||||||
|
default : ()=>({})
|
||||||
|
},
|
||||||
|
// 显示位置 footer 底部 msg消息框
|
||||||
|
position : {
|
||||||
|
type : String,
|
||||||
|
default : 'footer'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods : {
|
||||||
|
handleDetail(){
|
||||||
|
this.$Router.push(`/orderDetail?id=${this.orderInfo.orderId}`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.order {
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 16rpx;
|
||||||
|
&--status{
|
||||||
|
font-size: 28rpx;
|
||||||
|
padding: 30rpx 0 20rpx 30rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
&--con{
|
||||||
|
display: flex;
|
||||||
|
padding: 0 30rpx;
|
||||||
|
&-img{
|
||||||
|
width: 140rpx;
|
||||||
|
height: 140rpx;
|
||||||
|
}
|
||||||
|
&-right{
|
||||||
|
width: 300rpx;
|
||||||
|
margin-left: 30rpx;
|
||||||
|
}
|
||||||
|
&-title{
|
||||||
|
font-size: 28rpx;
|
||||||
|
line-height: 36rpx;
|
||||||
|
@include ellipses(2);
|
||||||
|
}
|
||||||
|
&-price{
|
||||||
|
margin-top: 36rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
&--footer{
|
||||||
|
color: #999;
|
||||||
|
border-top: 1px solid #eee;
|
||||||
|
padding: 20rpx 30rpx;
|
||||||
|
margin-top: 26rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/deep/{
|
||||||
|
.order--con-price{
|
||||||
|
text{
|
||||||
|
color: #FF512B;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
.ui-money--price{
|
||||||
|
font-size: 32rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 872 B |
After Width: | Height: | Size: 306 B |
After Width: | Height: | Size: 219 B |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 463 B |
After Width: | Height: | Size: 576 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 900 B |
After Width: | Height: | Size: 355 B |
After Width: | Height: | Size: 795 B |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 6.6 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 7.6 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 473 B |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 321 B |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 132 KiB |
After Width: | Height: | Size: 7.6 KiB |
After Width: | Height: | Size: 815 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 404 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |