@@ -165,26 +159,14 @@
{{include file="orderaftersale/delivery" /}}
{{else /}}
{{/if}}
{{/case}}
- {{case 2}}
-
- {{/case}}
-
- {{case 3}}
-
- {{/case}}
-
- {{case 4}}
-
- 当前订单商品售后申请已被拒绝!
详情查看
+ {{case 3|4}}
+
+ {{$new_aftersale_data.tips_msg}}
详情查看
{{/case}}
{{/switch}}
diff --git a/application/index/view/default/orderaftersale/step.html b/application/index/view/default/orderaftersale/step.html
index 747ee7f997bedae6e8ccdeae7b78f338a19d305c..724adcb297ab1ce45d30862d004dbf322bebd474 100644
--- a/application/index/view/default/orderaftersale/step.html
+++ b/application/index/view/default/orderaftersale/step.html
@@ -1,57 +1,33 @@
- -
- 1
- 申请仅退款
-
-
-
- -
- 2
- 管理员审核
- {{if isset($new_aftersale_data['status']) and $new_aftersale_data['status'] elt 3 and $new_aftersale_data['status'] egt 0}}
-
- {{/if}}
-
-
- -
- 3
- 退款完毕
-
+ {{if !empty($step_data['step0'])}}
+ {{foreach $step_data.step0 as $step}}
+ -
+ {{$step.number}}
+ {{$step.name}}
+ {{if $step.is_caret eq 1}}
+
+ {{/if}}
+ {{if $step.is_angle eq 1}}
+
+ {{/if}}
+
+ {{/foreach}}
+ {{/if}}
- -
- 1
- 申请退货退款
-
-
-
- -
- 2
- 管理员确认
- {{if isset($new_aftersale_data['status']) and $new_aftersale_data['status'] elt 2 and $new_aftersale_data['status'] egt 0}}
-
- {{/if}}
-
-
- -
- 3
- 用户退货
- {{if isset($new_aftersale_data['status']) and $new_aftersale_data['status'] elt 3 and $new_aftersale_data['status'] egt 1}}
-
- {{/if}}
-
-
- -
- 4
- 管理员审核
- {{if isset($new_aftersale_data['status']) and $new_aftersale_data['status'] elt 3 and $new_aftersale_data['status'] egt 2}}
-
- {{/if}}
-
-
- -
- 5
- 退款完毕
-
+ {{if !empty($step_data['step1'])}}
+ {{foreach $step_data.step1 as $step}}
+ -
+ {{$step.number}}
+ {{$step.name}}
+ {{if $step.is_caret eq 1}}
+
+ {{/if}}
+ {{if $step.is_angle eq 1}}
+
+ {{/if}}
+
+ {{/foreach}}
+ {{/if}}
\ No newline at end of file
diff --git a/application/service/OrderAftersaleService.php b/application/service/OrderAftersaleService.php
index 528a2130daa6ae2f293f20c30ae1b09fedf0e331..5dc5c2fbf4a9b066aee9436429faab98423c6508 100644
--- a/application/service/OrderAftersaleService.php
+++ b/application/service/OrderAftersaleService.php
@@ -1206,5 +1206,122 @@ class OrderAftersaleService
return DataReturn('操作成功', 0, ['returned_quantity'=>$returned_quantity, 'refund_price'=>PriceNumberFormat($refund_price)]);
}
+
+ /**
+ * 订单售后提示信息
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @datetime 2019-10-04T13:56:35+0800
+ * @desc description
+ * @param [array] $orderaftersale [订单售后数据]
+ */
+ public static function OrderAftersaleTipsMsg($orderaftersale = [])
+ {
+ $msg_all = [
+ 0 => '当前订单商品售后已提交申请,等待管理员确认中!',
+ 1 => '当前订单商品售后,管理员已确认,请尽快完成退货!',
+ 2 => '当前订单商品售后已退货,等待管理员审核中!',
+ 3 => '当前订单商品售后已处理结束!',
+ 4 => '当前订单商品售后申请已被拒绝!',
+ 5 => '当前订单商品售后申请已关闭!',
+ ];
+ if(isset($orderaftersale['status']) && array_key_exists($orderaftersale['status'], $msg_all))
+ {
+ // [status 待退货], [type 0仅退款 1退货退款
+ if($orderaftersale['status'] == 1 && $orderaftersale['type'] == 0)
+ {
+ $msg_all[1] = $msg_all[0];
+ }
+ return $msg_all[$orderaftersale['status']];
+ }
+ return '';
+ }
+
+ /**
+ * 订单售后进度
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @datetime 2019-10-04T15:22:06+0800
+ * @desc description
+ * @param [array] $orderaftersale [订单售后数据]
+ */
+ public static function OrderAftersaleStep($orderaftersale)
+ {
+ // 仅退款
+ $step0 = [
+ [
+ 'number' => 1,
+ 'name' => '申请仅退款',
+ 'is_caret' => 1,
+ 'is_angle' => 1,
+ 'is_active' => 1,
+ 'is_end' => empty($orderaftersale) ? 1 : 0,
+ ],
+ [
+ 'number' => 2,
+ 'name' => '管理员审核',
+ 'is_caret' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [0,1,2,3])) ? 1 : 0,
+ 'is_angle' => 1,
+ 'is_active' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [0,1,2,3])) ? 1 : 0,
+ 'is_end' => (isset($orderaftersale['status']) && $orderaftersale['status'] <= 2) ? 1 : 0,
+ ],
+ [
+ 'number' => 3,
+ 'name' => '退款完毕',
+ 'is_caret' => 0,
+ 'is_angle' => 0,
+ 'is_active' => (isset($orderaftersale['status']) && $orderaftersale['status'] == 3) ? 1 : 0,
+ 'is_end' => 0,
+ ]
+ ];
+
+ // 退货退款
+ $step1 = [
+ [
+ 'number' => 1,
+ 'name' => '申请退货退款',
+ 'is_caret' => 1,
+ 'is_angle' => 1,
+ 'is_active' => 1,
+ 'is_end' => empty($orderaftersale) ? 1 : 0,
+ ],
+ [
+ 'number' => 2,
+ 'name' => '管理员确认',
+ 'is_caret' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [0,1,2])) ? 1 : 0,
+ 'is_angle' => 1,
+ 'is_active' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [0,1,2,3])) ? 1 : 0,
+ 'is_end' => (isset($orderaftersale['status']) && $orderaftersale['status'] == 0) ? 1 : 0,
+ ],
+ [
+ 'number' => 3,
+ 'name' => '用户退货',
+ 'is_caret' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [1,2,3])) ? 1 : 0,
+ 'is_angle' => 1,
+ 'is_active' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [1,2,3])) ? 1 : 0,
+ 'is_end' => (isset($orderaftersale['status']) && $orderaftersale['status'] == 1) ? 1 : 0,
+ ],
+ [
+ 'number' => 4,
+ 'name' => '管理员审核',
+ 'is_caret' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [2,3])) ? 1 : 0,
+ 'is_angle' => 1,
+ 'is_active' => (isset($orderaftersale['status']) && in_array($orderaftersale['status'], [2,3])) ? 1 : 0,
+ 'is_end' => (isset($orderaftersale['status']) && $orderaftersale['status'] == 2) ? 1 : 0,
+ ],
+ [
+ 'number' => 5,
+ 'name' => '退款完毕',
+ 'is_caret' => 0,
+ 'is_angle' => 0,
+ 'is_active' => (isset($orderaftersale['status']) && $orderaftersale['status'] == 3) ? 1 : 0,
+ 'is_end' => 0,
+ ]
+ ];
+
+ return ['step0'=>$step0, 'step1'=>$step1];
+ }
}
?>
\ No newline at end of file
diff --git a/application/service/OrderService.php b/application/service/OrderService.php
index 23c74aceef2da848a80a5d80d3aafa8474d6cbc4..135d42bc0db3461f7bcffeb613352dd3fbd4bd92 100755
--- a/application/service/OrderService.php
+++ b/application/service/OrderService.php
@@ -637,6 +637,7 @@ class OrderService
$is_items = isset($params['is_items']) ? intval($params['is_items']) : 1;
$is_excel_export = isset($params['is_excel_export']) ? intval($params['is_excel_export']) : 0;
$is_orderaftersale = isset($params['is_orderaftersale']) ? intval($params['is_orderaftersale']) : 0;
+ $user_type = isset($params['user_type']) ? $params['user_type'] : 'user';
// 获取订单
$data = Db::name('Order')->where($where)->limit($m, $n)->order($order_by)->select();
@@ -780,7 +781,9 @@ class OrderService
// 是否获取最新一条售后信息
if($is_orderaftersale == 1)
{
- $vs['orderaftersale'] = Db::name('OrderAftersale')->where(['order_detail_id'=>$vs['id']])->order('id desc')->find();
+ $orderaftersale = Db::name('OrderAftersale')->where(['order_detail_id'=>$vs['id']])->order('id desc')->find();
+ $vs['orderaftersale'] = $orderaftersale;
+ $vs['orderaftersale_btn_text'] = self::OrderAftersaleStatusBtnText($v['status'], $orderaftersale);
}
}
}
@@ -811,6 +814,39 @@ class OrderService
return DataReturn('处理成功', 0, $data);
}
+ /**
+ * 订单售后操作名称
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @datetime 2019-10-04T13:11:55+0800
+ * @desc description
+ * @param [int] $order_status [订单状态]
+ * @param [array] $orderaftersale [售后数据]
+ */
+ private static function OrderAftersaleStatusBtnText($order_status, $orderaftersale)
+ {
+ $text = '';
+ if(in_array($order_status, [2,3,4,6]))
+ {
+ if(empty($orderaftersale))
+ {
+ if(in_array($order_status, [2,3]))
+ {
+ $text = '退款/退货';
+ } else {
+ if($order_status == 4)
+ {
+ $text = '申请售后';
+ }
+ }
+ } else {
+ $text = ($orderaftersale['status'] == 3) ? '查看退款' : '查看进度';
+ }
+ }
+ return $text;
+ }
+
/**
* 订单日志添加
* @author Devil
diff --git a/application/service/PluginsAdminService.php b/application/service/PluginsAdminService.php
index e60004699faf1ec21fca0ceed9a29d4571513404..20ebd611cd364f9648d2f683cfa6cfff02353f10 100755
--- a/application/service/PluginsAdminService.php
+++ b/application/service/PluginsAdminService.php
@@ -375,6 +375,12 @@ class PluginsAdminService
{
// 是否需要删除应用数据,sql运行
$is_delete_static = (isset($params['value']) && $params['value'] == 1);
+
+ // 删除数据库附件
+ ResourcesService::AttachmentPathTypeDelete('plugins_'.$params['id']);
+
+ // 删除应用文件
+ self::PluginsResourcesDelete($params['id'], $is_delete_static);
if($is_delete_static === true)
{
$uninstall_sql = APP_PATH.'plugins'.DS.$params['id'].DS.'uninstall.sql';
@@ -383,13 +389,6 @@ class PluginsAdminService
SqlconsoleService::Implement(['sql'=>file_get_contents($uninstall_sql)]);
}
}
-
- // 删除数据库附件
- ResourcesService::AttachmentPathTypeDelete('plugins_'.$params['id']);
-
- // 删除应用文件
- self::PluginsResourcesDelete($params['id'], $is_delete_static);
-
return DataReturn('删除成功');
}
return $ret;
@@ -1080,12 +1079,7 @@ php;
$install_sql = APP_PATH.'plugins'.DS.$plugins_name.DS.'install.sql';
if(!empty($plugins_name) && file_exists($install_sql))
{
- // 开始处理
- $ret = SqlconsoleService::Implement(['sql'=>file_get_contents($install_sql)]);
- if($ret['code'] != 0)
- {
- return $ret;
- }
+ SqlconsoleService::Implement(['sql'=>file_get_contents($install_sql)]);
}
return DataReturn('安装成功');
diff --git a/application/tags.php b/application/tags.php
index 7de8967d719bee34b220efa001e1f2bce0de2530..7fb4b4ce8cf21ddb6f5dd9c94f67aad0e78b5245 100755
--- a/application/tags.php
+++ b/application/tags.php
@@ -32,57 +32,5 @@ return array (
'log_write' =>
array (
),
- 'plugins_css' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_goods_handle_end' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_goods_spec_base' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_buy_handle' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_user_login_success_record' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_goods_spec_extends_handle' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_view_admin_user_save' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_user_save_handle' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_goods_save_handle' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_view_goods_detail_panel_price_top' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_view_home_goods_inside_bottom' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_view_search_goods_inside_bottom' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
- 'plugins_service_goods_spec_type' =>
- array (
- 0 => 'app\\plugins\\membershiplevelvip\\Hook',
- ),
);
?>
\ No newline at end of file