first commit
This commit is contained in:
1
衣莎项目/源码/YiShaXiYi/user/order/.pydio
Normal file
1
衣莎项目/源码/YiShaXiYi/user/order/.pydio
Normal file
@@ -0,0 +1 @@
|
||||
13b85484-75ea-447f-bac1-3a1dea44011c
|
||||
502
衣莎项目/源码/YiShaXiYi/user/order/order.js
Normal file
502
衣莎项目/源码/YiShaXiYi/user/order/order.js
Normal file
@@ -0,0 +1,502 @@
|
||||
// user/order/order.js
|
||||
const app = getApp();
|
||||
const regeneratorRuntime = app.loadAsync()
|
||||
const model = app.loadModel("index")
|
||||
const http = app.loadHttp()
|
||||
import { $wuxDialog, $wuxToast } from '../../extend/wux/dist/index';
|
||||
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
system: app.globalData.system, //设备相关信息
|
||||
pageTitle: "我的订单", //头部标题
|
||||
isBack: true,//显示返回
|
||||
isLoading: true,//加载显示关闭
|
||||
current: '',//当前所在的标签的 key 值
|
||||
orderData: [],//订单列表数据
|
||||
page: 1,//当前列表第几页
|
||||
isState: true,//如果没数据了false
|
||||
isTips: false,//增减衣服数量弹窗
|
||||
isRemarks: false,//备注弹窗
|
||||
changeCount: {},//增减衣物数量时当前选中的衣物
|
||||
userInfo: {},//个人信息
|
||||
ShowSupplement: false, // 是否显示补款弹窗
|
||||
SupplementClickItem: {}, // 保存用户点击列表中的某个对象
|
||||
defaultPayType: 2, // 支付方式默认显示 1 会员卡, 2 微信
|
||||
defaultCard: 0, // 存放当前用户选中的会员卡数值下标
|
||||
cardList: [] // 存放会员卡
|
||||
},
|
||||
// 支付方式被选择点击事件
|
||||
PayTypeChange(e) {
|
||||
this.setData({ defaultPayType: e.detail.value })
|
||||
},
|
||||
// 会员卡列表被点击选择
|
||||
CardTypeChange(e) {
|
||||
this.setData({ defaultCard: e.detail.value })
|
||||
},
|
||||
// 点击弹窗的 确定 按钮进行补款时候触发
|
||||
|
||||
|
||||
async submitSupplement() {
|
||||
console.log("支付方式: ", this.data.defaultPayType);
|
||||
console.log("订单id: ", this.data.SupplementClickItem.id);
|
||||
console.log("补款金额: ", this.data.SupplementClickItem.extra_money);
|
||||
console.log("会员卡id: ", this.data.cardList[this.data.defaultCard].id);
|
||||
let data = {}
|
||||
// 如果为微信支付
|
||||
if (this.data.defaultPayType == 2) {
|
||||
data = {
|
||||
pay_type: this.data.defaultPayType,
|
||||
order_id: this.data.SupplementClickItem.id,
|
||||
extra_money: this.data.SupplementClickItem.extra_money,
|
||||
};
|
||||
// 如果为会员卡支付
|
||||
} else {
|
||||
data = {
|
||||
pay_type: this.data.defaultPayType,
|
||||
order_id: this.data.SupplementClickItem.id,
|
||||
extra_money: this.data.SupplementClickItem.extra_money,
|
||||
id: this.data.cardList[this.data.defaultCard].id
|
||||
};
|
||||
}
|
||||
|
||||
let submitStatus = await http.http.request2({ url: http.api.latePay, method: "POST", data: data });
|
||||
// 如果为微信支付
|
||||
if (this.data.defaultPayType == 2) {
|
||||
this.wxPay(submitStatus)
|
||||
// 会员卡支付
|
||||
} else {
|
||||
this.setData({
|
||||
ShowSupplement: false
|
||||
})
|
||||
// 重置某些值
|
||||
this.setData({
|
||||
page: 1,
|
||||
orderData: []
|
||||
});
|
||||
// 更新列表
|
||||
this.orderList()
|
||||
}
|
||||
},
|
||||
// 补款按钮被点击处理事件
|
||||
async Supplement(e) {
|
||||
wx.showLoading({ title: '加载中..' })
|
||||
// 请求所有会员卡分类的数据
|
||||
let card_1 = await http.http.request2({ url: `${http.api.userCard}/1`, method: "POST", data: { kind: '' } })
|
||||
let card_2 = await http.http.request2({ url: `${http.api.userCard}/2`, method: "POST", data: { kind: '' } })
|
||||
let card_3 = await http.http.request2({ url: `${http.api.userCard}/3`, method: "POST", data: { kind: '' } })
|
||||
|
||||
// 保存会员卡数据
|
||||
this.setData({
|
||||
cardList: [...card_1.data.data, ...card_2.data.data, ...card_3.data.data ]
|
||||
});
|
||||
// 保存点击的对象
|
||||
this.setData({ SupplementClickItem: e.currentTarget.dataset.items });
|
||||
wx.hideLoading();
|
||||
// 显示弹窗
|
||||
this.setData({ ShowSupplement: true });
|
||||
|
||||
},
|
||||
// 微信支付
|
||||
wxPay(order) {
|
||||
let that = this;
|
||||
wx.requestPayment({
|
||||
timeStamp: order.data.data.timeStamp,
|
||||
nonceStr: order.data.data.nonceStr,
|
||||
package: order.data.data.package,
|
||||
signType: 'md5',
|
||||
paySign: order.data.data.paySign,
|
||||
success: res => {
|
||||
if (res.errMsg == "requestPayment:ok") {
|
||||
wx.showToast({
|
||||
title: '支付成功',
|
||||
icon: 'none',
|
||||
duration: 2000,
|
||||
success: () => {
|
||||
that.setData({
|
||||
ShowSupplement: false
|
||||
})
|
||||
// 重置某些值
|
||||
that.setData({
|
||||
page: 1,
|
||||
orderData: []
|
||||
})
|
||||
// 更新列表
|
||||
that.orderList()
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
fail(res) {
|
||||
wx.showToast({
|
||||
title: '取消支付',
|
||||
icon: 'none',
|
||||
duration: 1000
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
// 关闭弹窗
|
||||
CloseViewInfo() {
|
||||
this.setData({
|
||||
ShowSupplement: false
|
||||
})
|
||||
},
|
||||
// tab选中事件
|
||||
handleChange({ detail }) {
|
||||
this.setData({
|
||||
current: detail.key,
|
||||
orderData: [],
|
||||
page: 1
|
||||
});
|
||||
this.orderList()
|
||||
},
|
||||
// 打开订单详情
|
||||
openOrder(e) {
|
||||
console.log("isopen: ", e.currentTarget.dataset.isopen)
|
||||
wx.navigateTo({
|
||||
url: `/user/orderInfo/orderInfo?id=${e.currentTarget.dataset.id}&isopen=${e.currentTarget.dataset.isopen}`
|
||||
})
|
||||
},
|
||||
// 申请退款
|
||||
refund(event) {
|
||||
var that = this;
|
||||
|
||||
$wuxDialog().prompt({
|
||||
resetOnClose: true,
|
||||
title: '退款',
|
||||
fieldtype: 'text',
|
||||
placeholder: '输入退款金额',
|
||||
maxlength: 8,
|
||||
onConfirm: async function(e, response) {
|
||||
|
||||
let res = await http.http.request2({
|
||||
url: `${http.api.refund}`, method: "POST", data: {
|
||||
id: event.currentTarget.dataset.id,
|
||||
refund_fee: response
|
||||
}
|
||||
});
|
||||
if (res.data.status == 1) {
|
||||
console.log("res: ", res.data.msg)
|
||||
$wuxToast().show({
|
||||
type: 'success',
|
||||
duration: 1500,
|
||||
color: '#fff',
|
||||
text: '申请成功,3个工作日内退款',
|
||||
success: () => {
|
||||
// 重置某些值
|
||||
that.setData({
|
||||
page: 1,
|
||||
orderData: []
|
||||
})
|
||||
// 更新列表
|
||||
that.orderList()
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
},
|
||||
})
|
||||
|
||||
},
|
||||
//取消订单的方法
|
||||
cancelOrder(e) {
|
||||
let id = e.currentTarget.dataset.id
|
||||
var that = this
|
||||
wx.showModal({
|
||||
title: '取消订单',
|
||||
content: '点击确定取消订单',
|
||||
confirmText: "确认",
|
||||
cancelText: "取消",
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
http.http.request2({ url: `${http.api.cancelOrder}`, method: "POST", data: { order_id: id } })
|
||||
.then(rel => {
|
||||
if (rel.data.status == 1) {
|
||||
model.msg.dataMsg({
|
||||
content: "取消成功",
|
||||
type: "success"
|
||||
})
|
||||
that.setData({
|
||||
page: 1,
|
||||
orderData: []
|
||||
})
|
||||
that.orderList()
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
// 订单列表
|
||||
async orderList() {
|
||||
wx.showLoading({
|
||||
title: '加载中',
|
||||
})
|
||||
let data = {
|
||||
status: parseInt(this.data.current),
|
||||
page: this.data.page,
|
||||
limit: 5
|
||||
}
|
||||
let res = await http.http.request2({ url: `${http.api.orderList}`, method: "POST", data: data })
|
||||
if (res.data.data.list.length < 5) {
|
||||
this.setData({
|
||||
isState: false
|
||||
})
|
||||
}
|
||||
let orderData = [...this.data.orderData, ...res.data.data.list]
|
||||
this.setData({
|
||||
orderData: orderData,
|
||||
isLoading: false
|
||||
})
|
||||
wx.hideLoading()
|
||||
// 请求完列表页变为false防止重复刷新
|
||||
app.globalData.isOrderList = false
|
||||
},
|
||||
// 获取用户会员状态
|
||||
async memberState() {
|
||||
let res = await model.storage.getSetting("userInfo")
|
||||
this.setData({
|
||||
pageTitle: res.cupboard_num != -1 ? "我的衣柜订单" : "我的洗衣单",
|
||||
userInfo: res
|
||||
})
|
||||
},
|
||||
// 显示增减衣物
|
||||
openTips(e) {
|
||||
let type = e.currentTarget.dataset.type
|
||||
let item = e.currentTarget.dataset.item
|
||||
if (type == "num") {
|
||||
this.setData({
|
||||
isTips: true,
|
||||
changeCount: item
|
||||
})
|
||||
} else if (type == "remarks") {
|
||||
this.setData({
|
||||
isRemarks: true
|
||||
})
|
||||
}
|
||||
},
|
||||
// 关闭增减衣物
|
||||
closeTips(e) {
|
||||
let type = e.currentTarget.dataset.type
|
||||
if (type == "num") {
|
||||
this.setData({
|
||||
isTips: false,
|
||||
changeCount: {}
|
||||
})
|
||||
} else if (type == "remarks") {
|
||||
this.setData({
|
||||
isRemarks: false
|
||||
})
|
||||
}
|
||||
},
|
||||
// 增加衣物数量
|
||||
add() {
|
||||
let changeCount = this.data.changeCount
|
||||
++changeCount.total_count
|
||||
this.setData({
|
||||
changeCount: changeCount
|
||||
})
|
||||
},
|
||||
// 减少衣物数量
|
||||
reduce() {
|
||||
let changeCount = this.data.changeCount
|
||||
--changeCount.total_count
|
||||
this.setData({
|
||||
changeCount: changeCount
|
||||
})
|
||||
},
|
||||
// 备注
|
||||
remarksInput(e) {
|
||||
let val = e.detail.value
|
||||
this.setData({
|
||||
"changeCount.remarks": val
|
||||
})
|
||||
},
|
||||
// 开箱取衣
|
||||
openCase(e) {
|
||||
let that = this
|
||||
let id = e.currentTarget.dataset.id
|
||||
let data = {
|
||||
order_id: id,
|
||||
lat: "",
|
||||
lng: ""
|
||||
}
|
||||
wx.showModal({
|
||||
title: '确认打开智能衣柜?',
|
||||
content: '为避免衣物遗失,请在洗衣柜附近打开衣柜!',
|
||||
confirmText: '确认',
|
||||
cancelText: '取消',
|
||||
success(res) {
|
||||
if (res.confirm) {
|
||||
wx.getLocation({
|
||||
type: 'gcj02',
|
||||
success(res) {
|
||||
data.lat = res.latitude
|
||||
data.lng = res.longitude
|
||||
wx.showLoading({
|
||||
title: '开柜中',
|
||||
})
|
||||
http.http.request2({ url: `${http.api.openCupboard}`, method: "POST", data: data })
|
||||
.then(res => {
|
||||
if (res.data.status == 1) {
|
||||
wx.hideLoading()
|
||||
wx.showToast({
|
||||
title: '开柜成功',
|
||||
icon: 'none',
|
||||
duration: 1000
|
||||
})
|
||||
// 重置某些值
|
||||
that.setData({
|
||||
page: 1,
|
||||
orderData: []
|
||||
})
|
||||
// 更新列表
|
||||
that.orderList()
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
// 洗衣柜增减衣物接口
|
||||
chCount() {
|
||||
let that = this
|
||||
let changeCount = this.data.changeCount
|
||||
let data = {
|
||||
order_id: changeCount.id,
|
||||
count: changeCount.total_count,
|
||||
remarks: changeCount.remarks
|
||||
}
|
||||
wx.showModal({
|
||||
title: '确认打开智能衣柜?',
|
||||
content: '为避免衣物遗失,请在洗衣柜附近打开衣柜!',
|
||||
confirmText: '确认',
|
||||
cancelText: '取消',
|
||||
success(res) {
|
||||
if (res.confirm) {
|
||||
http.http.request2({ url: `${http.api.changeCount}`, method: "POST", data: data })
|
||||
.then(res => {
|
||||
// 重置某些值
|
||||
that.setData({
|
||||
page: 1,
|
||||
orderData: []
|
||||
})
|
||||
// 更新列表
|
||||
that.orderList()
|
||||
that.setData({
|
||||
isTips: false
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
// 确认收货
|
||||
receivingGoods(e) {
|
||||
let that = this
|
||||
let id = e.detail.target.dataset.id
|
||||
let formId = e.detail.formId
|
||||
wx.showModal({
|
||||
title: '确认收货',
|
||||
content: '请检查是否有缺失,再点击确认收货!',
|
||||
confirmText: '确认',
|
||||
cancelText: '取消',
|
||||
success(res) {
|
||||
if (res.confirm) {
|
||||
http.http.request2({ url: `${http.api.receivOrder}`, method: "POST", data: { order_id: id, form_id: formId } })
|
||||
.then(res => {
|
||||
// 重置某些值
|
||||
that.setData({
|
||||
page: 1,
|
||||
orderData: []
|
||||
})
|
||||
// 更新列表
|
||||
that.orderList()
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad: function (options) {
|
||||
var that = this
|
||||
// 获取页面参数显示对应tab
|
||||
that.setData({
|
||||
current: options.orderState || '1'
|
||||
})
|
||||
this.orderList()
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow: function () {
|
||||
let that = this
|
||||
this.memberState()
|
||||
app.setWatching('isOrderList', (v) => {
|
||||
if (v) {
|
||||
that.setData({
|
||||
orderData: [],
|
||||
page: 1
|
||||
})
|
||||
that.orderList()
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh: function () {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom: function () {
|
||||
if (this.data.isState) {
|
||||
this.setData({
|
||||
page: ++this.data.page
|
||||
})
|
||||
this.orderList()
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage: function () {
|
||||
|
||||
}
|
||||
})
|
||||
15
衣莎项目/源码/YiShaXiYi/user/order/order.json
Normal file
15
衣莎项目/源码/YiShaXiYi/user/order/order.json
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"navigationBarTextStyle": "black",
|
||||
"usingComponents": {
|
||||
"i-tabs": "../../extend/iview/dist/tabs/index",
|
||||
"i-tab": "../../extend/iview/dist/tab/index",
|
||||
"wux-refresher": "../../extend/wux/dist/refresher/index",
|
||||
"wux-dialog": "../../extend/wux/dist/dialog/index",
|
||||
"wux-toast": "../../extend/wux/dist/toast/index",
|
||||
"wux-button": "../../extend/wux/dist/button/index",
|
||||
"wux-popup": "../../extend/wux/dist/popup/index",
|
||||
"wux-input": "../../extend/wux/dist/input/index",
|
||||
"wux-radio-group": "../../extend/wux/dist/radio-group/index",
|
||||
"wux-radio": "../../extend/wux/dist/radio/index"
|
||||
}
|
||||
}
|
||||
156
衣莎项目/源码/YiShaXiYi/user/order/order.wxml
Normal file
156
衣莎项目/源码/YiShaXiYi/user/order/order.wxml
Normal file
@@ -0,0 +1,156 @@
|
||||
<!-- 头部 -->
|
||||
<nav-bar isBack="{{isBack}}" pageTitle="{{pageTitle}}" system="{{system}}"></nav-bar>
|
||||
|
||||
<wux-dialog id="wux-dialog" />
|
||||
<wux-dialog id="wux-dialog--alert" />
|
||||
<wux-toast id="wux-toast" />
|
||||
|
||||
<wux-popup closable visible="{{ ShowSupplement }}" bind:close="CloseViewInfo">
|
||||
|
||||
<view class="default_money">
|
||||
<div class="left_t">补款金额</div>
|
||||
<view class="right_m">{{ SupplementClickItem.extra_money || 0 }}元</view>
|
||||
</view>
|
||||
|
||||
<view class="default_money">
|
||||
<div class="left_t">补款原因</div>
|
||||
<view class="right_m">{{ SupplementClickItem.extra_reason || '无'}}</view>
|
||||
</view>
|
||||
|
||||
<wux-radio-group title="支付方式" name="b" value="{{ defaultPayType }}" bind:change="PayTypeChange">
|
||||
<wux-radio title="微信" value="2" />
|
||||
<wux-radio title="会员卡" value="1" />
|
||||
</wux-radio-group>
|
||||
|
||||
<wux-radio-group wx:if="{{ defaultPayType == 1 }}" title="会员卡选择" name="b" value="{{ defaultCard }}" bind:change="CardTypeChange">
|
||||
<scroll-view scroll-y="true" style="height: 200rpx;" scroll-top="{{0}}">
|
||||
<wux-radio wx:for="{{ cardList }}" wx:key="id" title="{{ item.title }}-{{ item.discount / 10 }}折-{{item.money}}元" value="{{ index }}" />
|
||||
</scroll-view>
|
||||
</wux-radio-group>
|
||||
|
||||
<view slot="footer" class="popup__button" bindtap="submitSupplement">确定</view>
|
||||
|
||||
</wux-popup>
|
||||
|
||||
<view class="order">
|
||||
<view class="order_tab" style="top:{{system.statusHeight+system.titleHeight+'px'}}">
|
||||
<i-tabs current="{{ current }}" color="#1dbf45" bindchange="handleChange">
|
||||
<i-tab key="1" title="全部"></i-tab>
|
||||
<i-tab key="2" title="服务中"></i-tab>
|
||||
<i-tab key="3" title="已完成"></i-tab>
|
||||
</i-tabs>
|
||||
</view>
|
||||
<view wx:if="{{orderData.length>0}}" class="order_list">
|
||||
<view class="order_row mt20" wx:for="{{orderData}}" wx:key="{{index}}">
|
||||
<view class="order_title">
|
||||
<view class="order_icon">
|
||||
<image src="/static/img/icon/order-3_03.png" />
|
||||
</view>
|
||||
<view class="order_num">订单号:{{item.order_num}}</view>
|
||||
<view class="order_state">{{item.status}}</view>
|
||||
</view>
|
||||
<view data-isopen="{{ ( (item.pay_status == 1 && (item.type == 1 || item.type == 2 || item.type == 3 )) || (item.logic_type == 3 && item.type == 4 && item.pay_status == 1)) ? '1':'0' }}" class="order_info flex-con2" data-id="{{item.id}}" catchtap="openOrder">
|
||||
<view>
|
||||
<view class="info_p">
|
||||
衣物数量:{{item.total_count <= 0 ? '待录入' : item.total_count}}
|
||||
</view>
|
||||
<view class="info_p mt10">
|
||||
订单金额:{{item.realPrice == '0.00' ? '待统计' : '¥'+item.realPrice}}
|
||||
</view>
|
||||
<view class="info_p mt10">下单时间:{{item.create_time}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="order_sub flex-con2">
|
||||
<view class="openInfo ml20" data-id="{{item.id}}" wx:if="{{item.type == 9 && item.shop_id == 2}}" catchtap="openCase">
|
||||
开柜取衣
|
||||
</view>
|
||||
<view class="openInfo ml20" data-id="{{item.id}}" wx:if="{{item.type == 10 && item.shop_id == 2}}" catchtap="openCase">
|
||||
开柜取衣
|
||||
</view>
|
||||
<view class="openInfo ml20" data-id="{{item.id}}" wx:if="{{item.type == 5}}" data-id="{{item.id}}" catchtap="openOrder">
|
||||
去支付
|
||||
</view>
|
||||
<view data-type="num" catchtap="openTips" class="openInfo ml20" data-id="{{item.id}}" data-item="{{item}}" wx:if="{{(item.type == 3 || item.type == 1) && item.shop_id == 2}}">
|
||||
增减衣物数量
|
||||
</view>
|
||||
<view class="cancel ml20" data-id="{{item.id}}" data-showextra="{{ (item.pay_status == 2 || (item.logic_type == 3 && item.type == 4 && item.pay_status == 2)) ? 'true': 'false' }}" catchtap="openOrder">查看详情</view>
|
||||
|
||||
<view wx:if="{{ item.extra_status == 2 }}" class="cancel ml20" data-id="{{item.id}}" data-items="{{ item }}" catchtap="Supplement">
|
||||
补款
|
||||
</view>
|
||||
|
||||
<view wx:if="{{ item.extra_status == 3 }}" class="cancel ml20">
|
||||
已补款
|
||||
</view>
|
||||
|
||||
<view data-id="{{item.id}}" wx:if="{{ (item.pay_status == 1 && (item.type == 1 || item.type == 2 || item.type == 3 )) || (item.logic_type == 3 && item.type == 4 && item.pay_status == 1) }}" class="cancel ml20" data-id="{{item.id}}" catchtap="refund">
|
||||
申请退款
|
||||
</view>
|
||||
<view wx:if="{{ item.pay_status == 2 || (item.logic_type == 3 && item.type == 4 && item.pay_status == 2) }}" data-id="{{item.id}}" class="cancel" catchtap="cancelOrder">
|
||||
取消订单
|
||||
</view>
|
||||
<form report-submit bindsubmit="receivingGoods">
|
||||
<button wx:if="{{ item.type == 10 && item.shop_id == 1 }}" class="openInfo ml20" data-id="{{item.id}}" form-type="submit">
|
||||
确认收货
|
||||
</button>
|
||||
</form>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view wx:elif="{{orderData.length<=0}}" class="empty flex-con3">
|
||||
<view>
|
||||
<image class="empty_img" src="/static/img/icon/order-konw-icon.png" />
|
||||
<view class="mt20">暂无内容</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 增减衣物 -->
|
||||
<view wx:if="{{isTips}}" class="backwash_tips flex-con3 tips">
|
||||
<view>
|
||||
<view class="tips_cen">
|
||||
<view class="tips_cen_tit">本次洗护数量</view>
|
||||
<view class="flex-con3 mt30">
|
||||
<view class="tips_cen_num flex-con3">
|
||||
<view class="num_img" catchtap="reduce">
|
||||
<image src="/static/img/icon/j1.png" />
|
||||
</view>
|
||||
<view class="num_text">{{changeCount.total_count}}</view>
|
||||
<view class="num_img" catchtap="add">
|
||||
<image src="/static/img/icon/j2.png" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view data-type="remarks" class="tips_remarks" catchtap="openTips">
|
||||
<view class="flex1 clamp1">{{changeCount.remarks}}</view>
|
||||
<view class="remarks_xiu">修改</view>
|
||||
</view>
|
||||
<view class="tips_cen_sub" catchtap="chCount">提交并打开衣柜</view>
|
||||
<view class="mt20 tips_ts">提示:请在洗衣柜附近开柜!</view>
|
||||
</view>
|
||||
<view class="tips_img" data-type="num" catchtap="closeTips">
|
||||
<image src="/static/img/icon/colse_tips.png" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 修改备注 -->
|
||||
<view wx:if="{{isRemarks}}" class="tipsRemarks flex-con3 tips">
|
||||
<view>
|
||||
<view class="tips_cen">
|
||||
<view class="tips_cen_tit">洗护备注</view>
|
||||
<view class="flex-con3 mt30">
|
||||
<view class="tips_cen_text">
|
||||
<textarea maxlength="50" placeholder="添加备注:如洗护要求、衣物特殊污渍等" bindinput="remarksInput" value="{{changeCount.remarks}}"></textarea>
|
||||
<span class="tips_text_span">{{changeCount.remarks.length}}/50个字</span>
|
||||
</view>
|
||||
</view>
|
||||
<view class="tips_cen_sub" data-type="remarks" catchtap="closeTips">完成</view>
|
||||
</view>
|
||||
<view data-type="remarks" class="tips_img" catchtap="closeTips">
|
||||
<image src="/static/img/icon/colse_tips.png" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 加载动画 -->
|
||||
<loading-prog isLoading="{{isLoading}}"></loading-prog>
|
||||
<!-- toasta提示 -->
|
||||
<i-toast id="toast" />
|
||||
228
衣莎项目/源码/YiShaXiYi/user/order/order.wxss
Normal file
228
衣莎项目/源码/YiShaXiYi/user/order/order.wxss
Normal file
@@ -0,0 +1,228 @@
|
||||
/* user/order/order.wxss */
|
||||
|
||||
.default_money {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
height: 100rpx;
|
||||
}
|
||||
.lable {
|
||||
flex-grow: 1;
|
||||
}
|
||||
.wux-cell {
|
||||
padding: 25rpx 0 !important;
|
||||
}
|
||||
.wux-cell:after {
|
||||
border-bottom: none !important;
|
||||
background: none !important;
|
||||
}
|
||||
|
||||
.order_tab{
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
top: 0;
|
||||
z-index: 998;
|
||||
}
|
||||
.popup__button {
|
||||
display: block;
|
||||
flex: 1;
|
||||
color: #33cd5f;
|
||||
position: relative;
|
||||
}
|
||||
.order_list{
|
||||
margin-top: 52px;
|
||||
}
|
||||
.order_row{
|
||||
width: 100%;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
.order_row:last-child{
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
.order_title{
|
||||
width: 100%;
|
||||
height: 88rpx;
|
||||
padding: 0 35rpx 0 70rpx;
|
||||
border-bottom: 2rpx solid #f2f2f2;
|
||||
position: relative;
|
||||
}
|
||||
.order_num{
|
||||
line-height: 88rpx;
|
||||
width: 70%;
|
||||
display: inline-block;
|
||||
font-size: 26rpx;
|
||||
letter-spacing: 0px;
|
||||
color: #999999;
|
||||
}
|
||||
.order_state{
|
||||
line-height: 88rpx;
|
||||
width: 30%;
|
||||
display: inline-block;
|
||||
font-size: 28rpx;
|
||||
letter-spacing: 0px;
|
||||
color: #ff4737;
|
||||
text-align: right;
|
||||
}
|
||||
.order_icon{
|
||||
position: absolute;
|
||||
left: 30rpx;
|
||||
top: 50%;
|
||||
margin-top: -13rpx;
|
||||
width: 23rpx;
|
||||
height: 26rpx;
|
||||
}
|
||||
.order_icon image{
|
||||
width: 23rpx;
|
||||
height: 26rpx;
|
||||
}
|
||||
.order_info{
|
||||
width: 100%;
|
||||
height: 230rpx;
|
||||
padding: 0 35rpx 0 70rpx;
|
||||
}
|
||||
.info_p{
|
||||
font-size: 26rpx;
|
||||
letter-spacing: 0px;
|
||||
color: #333333;
|
||||
}
|
||||
.order_sub{
|
||||
width: 100%;
|
||||
height: 106rpx;
|
||||
padding-right: 35rpx;
|
||||
border-top: 2rpx solid #f2f2f2;
|
||||
display: -webkit-flex;
|
||||
display: flex;
|
||||
-webkit-flex-direction: row-reverse;
|
||||
flex-direction: row-reverse;
|
||||
}
|
||||
.order_sub view,.order_sub button{
|
||||
padding: 16rpx 30rpx;
|
||||
border-radius: 150rpx;
|
||||
font-size: 28rpx;
|
||||
line-height: normal;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
.cancel{
|
||||
text-align: center;
|
||||
border: solid 1px #ebebeb;
|
||||
color: #333333;
|
||||
}
|
||||
.openInfo{
|
||||
border: solid 1px #1dbf45;
|
||||
color: #1dbf45;
|
||||
}
|
||||
|
||||
/* 弹出层 */
|
||||
.tips{
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.5);
|
||||
z-index: 9999;
|
||||
}
|
||||
.tips_cen{
|
||||
width: 600rpx;
|
||||
background-color: #ffffff;
|
||||
border-radius: 10rpx;
|
||||
padding-top: 58rpx;
|
||||
padding-bottom: 50rpx;
|
||||
}
|
||||
.tips_cen_tit{
|
||||
font-family: PingFang-SC-Bold;
|
||||
font-size: 36rpx;
|
||||
color: #000000;
|
||||
font-weight: 600;
|
||||
text-align: center;
|
||||
}
|
||||
.tips_cen_tit1{
|
||||
text-align: center;
|
||||
font-size: 28rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.tips_cen_tit1 span{
|
||||
color: #ff4838;
|
||||
}
|
||||
.tips_cen_text{
|
||||
width: 520rpx;
|
||||
height: 200rpx;
|
||||
background-color: #f5f5f5;
|
||||
border-radius: 5rpx;
|
||||
position: relative;
|
||||
padding: 34rpx 25rpx;
|
||||
}
|
||||
.tips_cen_text textarea{
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
.tips_cen_num{
|
||||
width: 520rpx;
|
||||
height: 120rpx;
|
||||
background-color: #f5f5f5;
|
||||
border-radius: 5rpx;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.tips_text_span{
|
||||
position: absolute;
|
||||
right: 16rpx;
|
||||
bottom: 13rpx;
|
||||
font-family: PingFang-SC-Medium;
|
||||
font-size: 20rpx;
|
||||
color: #999999;
|
||||
}
|
||||
.tips_cen_sub{
|
||||
margin: 45rpx auto 0;
|
||||
width: 550rpx;
|
||||
height: 80rpx;
|
||||
line-height: 80rpx;
|
||||
text-align: center;
|
||||
background-color: #36d96c;
|
||||
border-radius: 40rpx;
|
||||
font-family: PingFang-SC-Medium;
|
||||
font-size: 32rpx;
|
||||
color: #ffffff;
|
||||
}
|
||||
.tips_img{
|
||||
margin-top: 50rpx;
|
||||
text-align: center;
|
||||
}
|
||||
.tips_img image{
|
||||
width: 69rpx;
|
||||
height: 69rpx;
|
||||
}
|
||||
.tips_ts{
|
||||
text-align: center;
|
||||
font-family: PingFang-SC-Medium;
|
||||
font-size: 26rpx;
|
||||
color: #999999;
|
||||
}
|
||||
.tips_remarks{
|
||||
width: 526rpx;
|
||||
display: flex;
|
||||
margin: 20rpx auto 0;
|
||||
font-family: PingFang-SC-Medium;
|
||||
font-size: 26rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.remarks_xiu{
|
||||
display: inline-block;
|
||||
font-family: PingFang-SC-Medium;
|
||||
font-size: 26rpx;
|
||||
color: #1dbf53;
|
||||
}
|
||||
.num_img image{
|
||||
width: 45rpx;
|
||||
height: 45rpx;
|
||||
}
|
||||
.num_text{
|
||||
line-height: 45rpx;
|
||||
width: 70rpx;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.tipsRemarks{
|
||||
z-index: 99999;
|
||||
}
|
||||
Reference in New Issue
Block a user