diff --git a/application/api/controller/Order.php b/application/api/controller/Order.php
index e5996bf16163ac321965405abfbd51e71d33cba2..0ec34935b565d1b85c14c4f7fac78c8f1ec8de82 100755
--- a/application/api/controller/Order.php
+++ b/application/api/controller/Order.php
@@ -66,9 +66,10 @@ class Order extends Common
// 获取列表
$data_params = array(
- 'm' => $start,
- 'n' => $number,
- 'where' => $where,
+ 'm' => $start,
+ 'n' => $number,
+ 'where' => $where,
+ 'is_orderaftersale' => 1,
);
$data = OrderService::OrderList($data_params);
diff --git a/application/api/controller/Orderaftersale.php b/application/api/controller/Orderaftersale.php
new file mode 100644
index 0000000000000000000000000000000000000000..f64e60126500d0bdb4462728c4d449607debaada
--- /dev/null
+++ b/application/api/controller/Orderaftersale.php
@@ -0,0 +1,191 @@
+IsLogin();
+ }
+
+ /**
+ * 订单列表
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @date 2018-09-28
+ * @desc description
+ */
+ public function Index()
+ {
+ // 参数
+ $params = $this->data_post;
+ $params['user'] = $this->user;
+ $params['user_type'] = 'user';
+
+ // 分页
+ $number = 10;
+ $page = max(1, isset($this->data_post['page']) ? intval($this->data_post['page']) : 1);
+
+ // 条件
+ $where = OrderService::OrderListWhere($params);
+
+ // 获取总数
+ $total = OrderAftersaleService::OrderAftersaleTotal($where);
+ $page_total = ceil($total/$number);
+ $start = intval(($page-1)*$number);
+
+ // 获取列表
+ $data_params = array(
+ 'm' => $start,
+ 'n' => $number,
+ 'where' => $where,
+ 'is_orderaftersale' => 1,
+ );
+ $data = OrderAftersaleService::OrderAftersaleList($data_params);
+
+ // 返回数据
+ $result = [
+ 'total' => $total,
+ 'page_total' => $page_total,
+ 'data' => $data['data'],
+ 'aftersale_type_list' => lang('common_order_aftersale_type_list'),
+ ];
+ return DataReturn('success', 0, $result);
+ }
+
+ /**
+ * 售后页面
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @date 2019-05-21
+ * @desc description
+ */
+ public function Aftersale()
+ {
+ $order_id = isset($this->data_post['oid']) ? intval($this->data_post['oid']) : 0;
+ $order_detail_id = isset($this->data_post['did']) ? intval($this->data_post['did']) : 0;
+ $ret = OrderAftersaleService::OrdferGoodsRow($order_id, $order_detail_id, $this->user['id']);
+ if($ret['code'] == 0)
+ {
+ // 获取当前订单商品售后最新的一条纪录
+ $data_params = [
+ 'm' => 0,
+ 'n' => 1,
+ 'where' => [
+ ['order_detail_id', '=', $order_detail_id],
+ ['user_id', '=', $this->user['id']],
+ ],
+ ];
+ $new_aftersale = OrderAftersaleService::OrderAftersaleList($data_params);
+ if(!empty($new_aftersale['data'][0]))
+ {
+ $new_aftersale_data = $new_aftersale['data'][0];
+ $new_aftersale_data['tips_msg'] = OrderAftersaleService::OrderAftersaleTipsMsg($new_aftersale_data);
+ } else {
+ $new_aftersale_data = [];
+ }
+
+ // 进度
+ $step_data = OrderAftersaleService::OrderAftersaleStep($new_aftersale_data);
+
+ // 可退款退货
+ $returned = OrderAftersaleService::OrderAftersaleCalculation($order_id, $order_detail_id);
+
+ // 仅退款原因
+ $return_only_money_reason = MyC('home_order_aftersale_return_only_money_reason');
+
+ // 退款退货原因
+ $return_money_goods_reason = MyC('home_order_aftersale_return_money_goods_reason');
+
+ // 返回数据
+ $result = [
+ 'order_data' => $ret['data'],
+ 'new_aftersale_data' => $new_aftersale_data,
+ 'step_data' => $step_data,
+ 'returned_data' => $returned['data'],
+ 'return_only_money_reason' => empty($return_only_money_reason) ? [] : explode("\n", $return_only_money_reason),
+ 'return_money_goods_reason' => empty($return_money_goods_reason) ? [] : explode("\n", $return_money_goods_reason),
+ 'aftersale_type_list' => lang('common_order_aftersale_type_list'),
+ ];
+ return DataReturn('success', 0, $result);
+ }
+ return DataReturn($ret['msg'], -1);
+ }
+
+ /**
+ * 申请售后创建
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @date 2019-05-23
+ * @desc description
+ */
+ public function Create()
+ {
+ $params = $this->data_post;
+ $params['user'] = $this->user;
+ return OrderAftersaleService::AftersaleCreate($params);
+ }
+
+ /**
+ * 用户退货
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @date 2019-05-23
+ * @desc description
+ */
+ public function Delivery()
+ {
+ $params = $this->data_post;
+ $params['user'] = $this->user;
+ return OrderAftersaleService::AftersaleDelivery($params);
+ }
+
+ /**
+ * 订单取消
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @date 2018-09-30
+ * @desc description
+ */
+ public function Cancel()
+ {
+ $params = $this->data_post;
+ $params['user'] = $this->user;
+ return OrderAftersaleService::AftersaleCancel($params);
+ }
+}
+?>
\ No newline at end of file
diff --git a/public/appmini/old/weixin/app.js b/public/appmini/old/weixin/app.js
index c38b4e50673d828df2912aa7eef2d2516d3dabea..d450326aa0198d5b86a4439901bcce04c2a17237 100755
--- a/public/appmini/old/weixin/app.js
+++ b/public/appmini/old/weixin/app.js
@@ -57,6 +57,8 @@ App({
"user_integral": "我的积分",
"user_goods_browse": "我的足迹",
"goods_comment": "商品评论",
+ "user_orderaftersale": "退款/售后",
+ "user_orderaftersale_detail": "售后详情",
},
// 请求地址
diff --git a/public/appmini/old/weixin/app.json b/public/appmini/old/weixin/app.json
index daae64076bd5222808e153cf9aa4dd1bdc1db2a5..9fd615c3b7d1e7f57aee486dc4ed886cd178b789 100755
--- a/public/appmini/old/weixin/app.json
+++ b/public/appmini/old/weixin/app.json
@@ -1,9 +1,10 @@
{
"pages": [
+ "pages/user-order/user-order",
+ "pages/user/user",
"pages/index/index",
"pages/goods-category/goods-category",
"pages/cart/cart",
- "pages/user/user",
"pages/web-view/web-view",
"pages/login/login",
"pages/paytips/paytips",
@@ -14,7 +15,6 @@
"pages/buy/buy",
"pages/user-address/user-address",
"pages/user-address-save/user-address-save",
- "pages/user-order/user-order",
"pages/user-order-detail/user-order-detail",
"pages/user-faovr/user-faovr",
"pages/user-answer-list/user-answer-list",
@@ -22,7 +22,9 @@
"pages/answer-form/answer-form",
"pages/message/message",
"pages/user-integral/user-integral",
- "pages/user-goods-browse/user-goods-browse"
+ "pages/user-goods-browse/user-goods-browse",
+ "pages/user-orderaftersale/user-orderaftersale",
+ "pages/user-orderaftersale-detail/user-orderaftersale-detail"
],
"window": {
"navigationBarTitleText": "{{application_title}}",
diff --git a/public/appmini/old/weixin/images/user-index-nav-order-icon-101.png b/public/appmini/old/weixin/images/user-index-nav-order-icon-101.png
new file mode 100644
index 0000000000000000000000000000000000000000..d8cd649a284bf5f0150afd8d21c3733afab936e9
Binary files /dev/null and b/public/appmini/old/weixin/images/user-index-nav-order-icon-101.png differ
diff --git a/public/appmini/old/weixin/pages/user-order/user-order.js b/public/appmini/old/weixin/pages/user-order/user-order.js
index 31d025a988f3b88287eb976c1984ed822ffd8df6..1e3b91c962d3080b4d0b5e81c4d42fe5bd472485 100755
--- a/public/appmini/old/weixin/pages/user-order/user-order.js
+++ b/public/appmini/old/weixin/pages/user-order/user-order.js
@@ -370,4 +370,20 @@ Page({
});
this.get_data_list(1);
},
+
+ // 售后订单事件
+ orderaftersale_event(e) {
+ var oid = e.currentTarget.dataset.oid || 0;
+ var did = e.currentTarget.dataset.did || 0;
+ if(oid == 0 || did == 0)
+ {
+ app.showToast("参数有误");
+ return false;
+ }
+
+ // 进入售后页面
+ wx.navigateTo({
+ url: "/pages/user-orderaftersale-detail/user-orderaftersale-detail?oid=" + oid+"&did="+did
+ });
+ },
});
diff --git a/public/appmini/old/weixin/pages/user-order/user-order.wxml b/public/appmini/old/weixin/pages/user-order/user-order.wxml
index 017c2a2a1432288738619af05ca8990f4e27b005..5781bcf7c8f44265dffc264eaef239cc999d4eb6 100755
--- a/public/appmini/old/weixin/pages/user-order/user-order.wxml
+++ b/public/appmini/old/weixin/pages/user-order/user-order.wxml
@@ -24,6 +24,7 @@
{{spec.type}}:{{spec.value}}
+ {{detail.orderaftersale_btn_text}}
¥{{detail.price}}
diff --git a/public/appmini/old/weixin/pages/user-order/user-order.wxss b/public/appmini/old/weixin/pages/user-order/user-order.wxss
index 0f72eea39f20b1a8e95277a3b304fb713f0a19d0..b052afd8cb0bb17fc679973fae45f24d37a3e974 100755
--- a/public/appmini/old/weixin/pages/user-order/user-order.wxss
+++ b/public/appmini/old/weixin/pages/user-order/user-order.wxss
@@ -19,6 +19,7 @@
.goods-base {
min-height: 160rpx;
margin-left: 180rpx;
+ position: relative;
}
.goods-title {
line-height: 36rpx;
@@ -59,6 +60,12 @@
.item-operation button {
padding: 0 35rpx;
}
+.orderaftersale-btn-text {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ color: #4d7fa7;
+}
/**
* 支付方式
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.js b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.js
new file mode 100644
index 0000000000000000000000000000000000000000..5ff1bcad6502cbae5e15ce5d719b1f1f7accd4c6
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.js
@@ -0,0 +1,88 @@
+const app = getApp();
+Page({
+ data: {
+ params: null,
+ data_list_loding_status: 1,
+ data_list_loding_msg: '',
+ data_bottom_line_status: false,
+
+ order_data: [],
+ new_aftersale_data: [],
+ step_data: [],
+ returned_data: [],
+ return_only_money_reason: [],
+ return_money_goods_reason: [],
+ aftersale_type_list: [],
+ },
+
+ onLoad(params) {
+ this.setData({ params: params });
+ this.init();
+ },
+
+ onShow() {
+ wx.setNavigationBarTitle({ title: app.data.common_pages_title.user_orderaftersale_detail });
+ },
+
+ init() {
+ var self = this;
+ wx.showLoading({ title: "加载中..." });
+ this.setData({
+ data_list_loding_status: 1
+ });
+
+ wx.request({
+ url: app.get_request_url("aftersale", "orderaftersale"),
+ method: "POST",
+ data: {
+ oid: this.data.params.oid,
+ did: this.data.params.did
+ },
+ dataType: "json",
+ success: res => {
+ wx.hideLoading();
+ wx.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ var data = res.data.data;
+ self.setData({
+ data_list_loding_status: 3,
+ data_bottom_line_status: true,
+ data_list_loding_msg: '',
+
+ order_data: data.order_data || [],
+ new_aftersale_data: data.new_aftersale_data || [],
+ step_data: data.step_data || [],
+ returned_data: data.returned_data || [],
+ return_only_money_reason: data.return_only_money_reason || [],
+ return_money_goods_reason: data.return_money_goods_reason || [],
+ aftersale_type_list: data.aftersale_type_list || [],
+ });
+ } else {
+ self.setData({
+ data_list_loding_status: 2,
+ data_bottom_line_status: false,
+ data_list_loding_msg: res.data.msg,
+ });
+ app.showToast(res.data.msg);
+ }
+ },
+ fail: () => {
+ wx.hideLoading();
+ wx.stopPullDownRefresh();
+ self.setData({
+ data_list_loding_status: 2,
+ data_bottom_line_status: false,
+ data_list_loding_msg: '服务器请求出错',
+ });
+
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.init();
+ },
+
+});
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.json b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.json
new file mode 100644
index 0000000000000000000000000000000000000000..331ad4f3d98660918818a7657404ac8cb0a6f312
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.json
@@ -0,0 +1,3 @@
+{
+ "enablePullDownRefresh": true
+}
\ No newline at end of file
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.wxml b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..fc453ca4aaf2f0dddf242bddbd09752b01353b2b
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.wxml
@@ -0,0 +1,2 @@
+
+pages/user-orderaftersale-detail/user-orderaftersale-detail.wxml
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.wxss b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..a2f209ad5cad6b4e6259b3cabfd05573411077a2
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale-detail/user-orderaftersale-detail.wxss
@@ -0,0 +1 @@
+/* pages/user-orderaftersale-detail/user-orderaftersale-detail.wxss */
\ No newline at end of file
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.js b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.js
new file mode 100644
index 0000000000000000000000000000000000000000..95e857d8ae34a2c1d44727bcdf342a6b006efe9e
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.js
@@ -0,0 +1,66 @@
+const app = getApp();
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload: function () {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh: function () {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom: function () {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage: function () {
+
+ }
+})
\ No newline at end of file
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.json b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.json
new file mode 100644
index 0000000000000000000000000000000000000000..8835af0699ccec004cbe685ef938cd2d63ea7037
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.json
@@ -0,0 +1,3 @@
+{
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.wxml b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.wxml
new file mode 100644
index 0000000000000000000000000000000000000000..a8f1ac6ca5d95881b22e8d4aa8a667257db8daad
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.wxml
@@ -0,0 +1,2 @@
+
+pages/user-orderaftersale.wxml
diff --git a/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.wxss b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.wxss
new file mode 100644
index 0000000000000000000000000000000000000000..7904dd1707e57686aa14e8676c041214369a1383
--- /dev/null
+++ b/public/appmini/old/weixin/pages/user-orderaftersale/user-orderaftersale.wxss
@@ -0,0 +1 @@
+/* pages/user-orderaftersale.wxss */
\ No newline at end of file
diff --git a/public/appmini/old/weixin/pages/user/user.js b/public/appmini/old/weixin/pages/user/user.js
index 781e7c743d8240c4fabb2bb5465803ec6203f284..c003370feeb508d87f059f238db9f852a9ebaa0c 100755
--- a/public/appmini/old/weixin/pages/user/user.js
+++ b/public/appmini/old/weixin/pages/user/user.js
@@ -13,10 +13,11 @@ Page({
{ name: "我的积分", url: "user-integral", count: 0 },
],
user_order_status_list: [
- { name: "待付款", status: 1, count: 0 },
- { name: "待发货", status: 2, count: 0 },
- { name: "待收货", status: 3, count: 0 },
- { name: "已完成", status: 4, count: 0 },
+ { name: "待付款", status: 1, count: 0, url: "/pages/user-order/user-order?status=1" },
+ { name: "待发货", status: 2, count: 0, url: "/pages/user-order/user-order?status=2" },
+ { name: "待收货", status: 3, count: 0, url: "/pages/user-order/user-order?status=3" },
+ { name: "已完成", status: 4, count: 0, url: "/pages/user-order/user-order?status=4" },
+ { name: "退款/售后", status: 101, count: 0, url: "/pages/user-orderaftersale/user-orderaftersale" },
],
nav_lists: [
{
diff --git a/public/appmini/old/weixin/pages/user/user.wxml b/public/appmini/old/weixin/pages/user/user.wxml
index 3cd93d9a296eefdacfc97b9bceea69736328ab41..dcb2c837888bdb10c6d2ddc562c7232ff587d4e6 100755
--- a/public/appmini/old/weixin/pages/user/user.wxml
+++ b/public/appmini/old/weixin/pages/user/user.wxml
@@ -36,7 +36,7 @@
-
+
diff --git a/public/appmini/old/weixin/pages/user/user.wxss b/public/appmini/old/weixin/pages/user/user.wxss
index 08a3777383678fc27d7141229f1a9a6bbf7851d4..5b593a0df8355f04809ded2c3fd20e900f266edc 100755
--- a/public/appmini/old/weixin/pages/user/user.wxss
+++ b/public/appmini/old/weixin/pages/user/user.wxss
@@ -76,7 +76,7 @@
padding: 15rpx 0;
}
.items-list .items {
- width: 25%;
+ width: 20%;
position: relative;
}
.items-list .items .items-icon {