Authored by 郭成尧

Merge remote-tracking branch 'remotes/origin/feature/backGoodsOptzmtn' into release/4.7

@@ -31,7 +31,7 @@ class Yohobuy @@ -31,7 +31,7 @@ class Yohobuy
31 // const SERVICE_NOTIFY = 'http://service.yoho.cn/'; 31 // const SERVICE_NOTIFY = 'http://service.yoho.cn/';
32 32
33 // 测试环境 */ 33 // 测试环境 */
34 - const API_URL = 'http://testapi.yoho.cn:28078/'; // 'http://192.168.102.205:8080/gateway/' 34 + const API_URL = 'http://devapi.yoho.cn:28078/'; // 'http://192.168.102.205:8080/gateway/' devapi.yoho.cn:58078 testapi.yoho.cn:28078
35 const SERVICE_URL = 'http://testservice.yoho.cn:28077/'; 35 const SERVICE_URL = 'http://testservice.yoho.cn:28077/';
36 const YOHOBUY_URL = 'http://www.yohobuy.com/'; 36 const YOHOBUY_URL = 'http://www.yohobuy.com/';
37 const API_OLD = 'http://test2.open.yohobuy.com/'; 37 const API_OLD = 'http://test2.open.yohobuy.com/';
@@ -129,7 +129,7 @@ class ReturnsData @@ -129,7 +129,7 @@ class ReturnsData
129 * @param $isChange 129 * @param $isChange
130 * @return mixed 130 * @return mixed
131 */ 131 */
132 - public static function setExpressNumber($id, $expressId, $expressNumber,$uid, $expressCompany, $isChange) 132 + public static function setExpressNumber($id, $expressId, $expressNumber, $uid, $expressCompany, $isChange)
133 { 133 {
134 $param = array(); 134 $param = array();
135 $param = Yohobuy::param(); 135 $param = Yohobuy::param();
@@ -140,7 +140,7 @@ class ReturnsData @@ -140,7 +140,7 @@ class ReturnsData
140 $param['uid'] = $uid; 140 $param['uid'] = $uid;
141 $param['express_company'] = $expressCompany; 141 $param['express_company'] = $expressCompany;
142 $param['client_secret'] = Sign::getSign($param); 142 $param['client_secret'] = Sign::getSign($param);
143 - 143 +
144 return Yohobuy::post(yohobuy::API_URL, $param); 144 return Yohobuy::post(yohobuy::API_URL, $param);
145 } 145 }
146 146
@@ -236,6 +236,39 @@ class ReturnsData @@ -236,6 +236,39 @@ class ReturnsData
236 return Yohobuy::post(yohobuy::API_URL, $param); 236 return Yohobuy::post(yohobuy::API_URL, $param);
237 } 237 }
238 238
  239 +
  240 + /**
  241 + * 取消退货申请
  242 + * @param $id
  243 + * @param $uid
  244 + * @return mixed
  245 + */
  246 + public static function cancelRefund($id, $uid)
  247 + {
  248 + $param = Yohobuy::param();
  249 + $param['method'] = 'app.refund.cancel';
  250 + $param['id'] = $id;
  251 + $param['uid'] = $uid;
  252 + $param['client_secret'] = Sign::getSign($param);
  253 + return Yohobuy::post(yohobuy::API_URL, $param);
  254 + }
  255 +
  256 + /**
  257 + * 取消换货申请
  258 + * @param $id
  259 + * @param $uid
  260 + * @return mixed
  261 + */
  262 + public static function cancelChange($id, $uid)
  263 + {
  264 + $param = Yohobuy::param();
  265 + $param['method'] = 'app.change.cancel';
  266 + $param['id'] = $id;
  267 + $param['uid'] = $uid;
  268 + $param['client_secret'] = Sign::getSign($param);
  269 + return Yohobuy::post(yohobuy::API_URL, $param);
  270 + }
  271 +
239 /** 272 /**
240 * 获取换货方式 273 * 获取换货方式
241 * @param $uid 274 * @param $uid
@@ -56,7 +56,7 @@ @@ -56,7 +56,7 @@
56 {{> home/pager}} 56 {{> home/pager}}
57 </div> 57 </div>
58 58
59 - {{> home/help-us}} 59 + {{!> home/help-us}}
60 </div> 60 </div>
61 {{/ meOrders}} 61 {{/ meOrders}}
62 </div> 62 </div>
@@ -13,7 +13,8 @@ @@ -13,7 +13,8 @@
13 {{# exchange}} 13 {{# exchange}}
14 <div class="return-prompt"> 14 <div class="return-prompt">
15 换货须知:<br> 15 换货须知:<br>
16 - <p>自您签收商品7日内可以退货,15日内可以换货,在商品不影响二次销售的情况下(包括产品吊牌和外包装),YOHO!有货将为您办理退换货服务,请在网站提交"退换货"申请。<span>特别提醒:非质量问题的退换货,来回运费由您承担。寄回商品时需垫付运费,到付件无法签收。</span>换货后VIP积分累计时间重新计算,以您收到换货订单后15个工作日累加,如有疑问,请致电客服电话:400-889-9646。</p> 16 + <p>自您签收商品7日内可以退货,15日内可以换货,在商品不影响二次销售的情况下(包括产品吊牌和外包装),YOHO!有货将为您办理退换货服务,请在网站提交"退换货"申请。<span>特别提醒:非质量问题的退换货,来回运费由您承担。寄回商品时需垫付运费,到付件无法签收。</span>换货后VIP积分累计时间重新计算,以您收到换货订单后15个工作日累加,如有疑问,请联系 <a
  17 + href="http://chat8.live800.com/live800/chatClient/chatbox.jsp?companyID=620092&configID=149091&jid=8732423409&info=" target="_blank"><i class="icon-onlineservice"></i> 在线客服</a></p>
17 {{# tips}} 18 {{# tips}}
18 {{> home/return-tips}} 19 {{> home/return-tips}}
19 {{/ tips}} 20 {{/ tips}}
@@ -43,6 +44,15 @@ @@ -43,6 +44,15 @@
43 <td class="return-goods-info"> 44 <td class="return-goods-info">
44 <a href="{{href}}">{{name}}</a> 45 <a href="{{href}}">{{name}}</a>
45 <span>颜色:{{color}} 尺码:{{size}}</span> 46 <span>颜色:{{color}} 尺码:{{size}}</span>
  47 + {{#if specialNoticeBo}}
  48 + <div class="special-tip">
  49 + <span>{{specialNoticeBo.title}} <i class="doubt"></i></span>
  50 + <div class="special-content">
  51 + <span>{{specialNoticeBo.remark}}</span>
  52 + <i class="arrow"></i>
  53 + </div>
  54 + </div>
  55 + {{/if}}
46 </td> 56 </td>
47 57
48 {{#if banMsg}} 58 {{#if banMsg}}
@@ -79,7 +89,7 @@ @@ -79,7 +89,7 @@
79 <option value="0">请选择换货原因</option> 89 <option value="0">请选择换货原因</option>
80 {{#with exchange}} 90 {{#with exchange}}
81 {{# reason}} 91 {{# reason}}
82 - <option value="{{id}}">{{name}}</option> 92 + <option value="{{id}}" {{#if inactive}}disabled{{/if}}>{{name}}</option>
83 {{/ reason}} 93 {{/ reason}}
84 {{/with}} 94 {{/with}}
85 </select> 95 </select>
@@ -135,7 +145,8 @@ @@ -135,7 +145,8 @@
135 {{# refund}} 145 {{# refund}}
136 <div class="return-prompt"> 146 <div class="return-prompt">
137 退货须知:<br> 147 退货须知:<br>
138 - <p>自您签收商品7日内可以退货,15日内可以换货,在商品不影响二次销售的情况下(包括产品吊牌和外包装),YOHO!有货将为您办理退换货服务,请在网站提交"退换货"申请。如您退货之后无法满足购买时参加的活动条件,请您将赠品同时申请退货。<span>特别提醒:非质量问题的退换货,来回运费由您承担,寄回商品时需垫付运费,到付件无法签收,如有疑问,请致电客服电话:400-889-9646。</span></p> 148 + <p>自您签收商品7日内可以退货,15日内可以换货,在商品不影响二次销售的情况下(包括产品吊牌和外包装),YOHO!有货将为您办理退换货服务,请在网站提交"退换货"申请。如您退货之后无法满足购买时参加的活动条件,请您将赠品同时申请退货。<span>特别提醒:非质量问题的退换货,来回运费由您承担,寄回商品时需垫付运费,到付件无法签收,如有疑问,请联系 <a
  149 + href="http://chat8.live800.com/live800/chatClient/chatbox.jsp?companyID=620092&configID=149091&jid=8732423409&info=" target="_blank"><i class="icon-onlineservice"></i> 在线客服</a> </span></p>
139 {{# tips}} 150 {{# tips}}
140 {{> home/returns-tips}} 151 {{> home/returns-tips}}
141 {{/ tips}} 152 {{/ tips}}
@@ -164,6 +175,15 @@ @@ -164,6 +175,15 @@
164 <td class="return-goods-info"> 175 <td class="return-goods-info">
165 <a href="{{href}}">{{name}}</a> 176 <a href="{{href}}">{{name}}</a>
166 <span>颜色:{{color}} 尺码:{{size}}</span> 177 <span>颜色:{{color}} 尺码:{{size}}</span>
  178 + {{#if specialNoticeBo}}
  179 + <div class="special-tip">
  180 + <span>{{specialNoticeBo.title}} <i class="doubt"></i></span>
  181 + <div class="special-content">
  182 + <span>{{specialNoticeBo.remark}}</span>
  183 + <i class="arrow"></i>
  184 + </div>
  185 + </div>
  186 + {{/if}}
167 </td> 187 </td>
168 <td class="refund-price"> 188 <td class="refund-price">
169 {{price}} 189 {{price}}
@@ -253,7 +273,7 @@ @@ -253,7 +273,7 @@
253 </div> 273 </div>
254 </div> 274 </div>
255 </div> 275 </div>
256 - {{> home/help-us}} 276 + {{!> home/help-us}}
257 </div> 277 </div>
258 {{/ returns}} 278 {{/ returns}}
259 </div> 279 </div>
@@ -21,6 +21,11 @@ @@ -21,6 +21,11 @@
21 {{/ statusList}} 21 {{/ statusList}}
22 </ul> 22 </ul>
23 </div> 23 </div>
  24 + {{#if canCancelUrl}}
  25 + <div class="cancel-return">
  26 + 如果您不想退货了,您可以 <a href="javascript:;" data-id="{{returnId}}" class="cancel-trigger" data-url="{{canCancelUrl}}">取消申请</a>
  27 + </div>
  28 + {{/if}}
24 <div class="detail-container"> 29 <div class="detail-container">
25 {{# express}} 30 {{# express}}
26 <h2>请填写寄回快递单号,以便我们查询</h2> 31 <h2>请填写寄回快递单号,以便我们查询</h2>
@@ -79,7 +84,7 @@ @@ -79,7 +84,7 @@
79 </div> 84 </div>
80 {{/ detail}} 85 {{/ detail}}
81 </div> 86 </div>
82 - {{> home/help-us}} 87 + {{!> home/help-us}}
83 </div> 88 </div>
84 {{/ returns}} 89 {{/ returns}}
85 </div> 90 </div>
@@ -65,8 +65,9 @@ @@ -65,8 +65,9 @@
65 <div class="return-status"> 65 <div class="return-status">
66 {{returnStatus}} 66 {{returnStatus}}
67 </div> 67 </div>
68 - <div class="operation">  
69 - <a class="op-item" href="{{moreHref}}" target="_blank">查看详情</a> 68 + <div class="operation {{#if canCancelUrl}}cancel-return{{/if}}">
  69 + {{#if canCancelUrl}}<a class="op-item cancel-trigger" href="javascript:;" data-id="{{returnId}}" data-url="{{canCancelUrl}}">取消申请</a>{{/if}}
  70 + <a class="op-item" href="{{moreHref}}" target="_blank">查看详情</a>
70 </div> 71 </div>
71 </div> 72 </div>
72 </div> 73 </div>
@@ -77,7 +78,7 @@ @@ -77,7 +78,7 @@
77 {{> home/pager}} 78 {{> home/pager}}
78 </div> 79 </div>
79 80
80 - {{> home/help-us}} 81 + {{!> home/help-us}}
81 </div> 82 </div>
82 {{/ returns}} 83 {{/ returns}}
83 </div> 84 </div>
@@ -33,7 +33,7 @@ @@ -33,7 +33,7 @@
33 </a> 33 </a>
34 <div class="text-info"> 34 <div class="text-info">
35 {{#if refundStatus}} 35 {{#if refundStatus}}
36 - <span class="had-refund">已退换</span> 36 + <a href="{{goRefundUrl}}"><span class="had-refund">已退换</span></a>
37 {{/if}} 37 {{/if}}
38 <a class="name" href="{{href}}" target="_blank">{{name}}</a> 38 <a class="name" href="{{href}}" target="_blank">{{name}}</a>
39 <span class="color-size"> 39 <span class="color-size">
@@ -44,6 +44,19 @@ if (defaultPhone) { @@ -44,6 +44,19 @@ if (defaultPhone) {
44 $exchange.find('input[name="phone"]').val(disPhone); 44 $exchange.find('input[name="phone"]').val(disPhone);
45 } 45 }
46 46
  47 +$goodsTable.on('mouseenter mouseleave', '.doubt', function(e) {
  48 + var $this = $(this);
  49 + var $tipwrapper = $this.parents('.special-tip');
  50 + var $tipcontent = $tipwrapper.find('.special-content');
  51 + var width = $tipwrapper.find('> span').width();
  52 + if(e.type === 'mouseenter'){
  53 + $tipcontent.css({left: width+10,zIndex:1}).show();
  54 + }else if(e.type ==='mouseleave'){
  55 + $tipcontent.css({zIndxex:0}).hide();
  56 + }
  57 +
  58 +});
  59 +
47 function syncRefundMode(code) { 60 function syncRefundMode(code) {
48 $.ajax({ 61 $.ajax({
49 type: 'POST', 62 type: 'POST',
@@ -4,7 +4,9 @@ @@ -4,7 +4,9 @@
4 * @date: 2016/2/26 4 * @date: 2016/2/26
5 */ 5 */
6 6
7 -var $ = require('yoho.jquery'); 7 +var $ = require('yoho.jquery'),
  8 + Handlebars = require('yoho.handlebars'),
  9 + dialog = require('../common/dialog');
8 10
9 var $returnState = $('.visual-return-state li'), 11 var $returnState = $('.visual-return-state li'),
10 $detail = $('.detail-container'), 12 $detail = $('.detail-container'),
@@ -20,6 +22,10 @@ var returnId = $('#return-id').val(), @@ -20,6 +22,10 @@ var returnId = $('#return-id').val(),
20 expList = {}, 22 expList = {},
21 isChange = false; 23 isChange = false;
22 24
  25 +var Dialog = dialog.Dialog,
  26 + active,
  27 + cancelApplyDialog = '<p class="message-title"><i class="{{messageIcon}}"></i>{{messageTitle}}</p><p class="message-summary">{{messageSummary}}</p>';;
  28 +
23 function syncExpressInfo() { 29 function syncExpressInfo() {
24 expCompany = expList[expId] ? expList[expId] : ''; 30 expCompany = expList[expId] ? expList[expId] : '';
25 $expressViewBox.html(expCompany + ' 快递单号:' + expNumber); 31 $expressViewBox.html(expCompany + ' 快递单号:' + expNumber);
@@ -74,6 +80,49 @@ function sendExpressCode() { @@ -74,6 +80,49 @@ function sendExpressCode() {
74 }); 80 });
75 } 81 }
76 82
  83 +function cancelApply(id, url) {
  84 + var template = Handlebars.compile(cancelApplyDialog);
  85 + var html = template({messageIcon: 'icon-warn', messageTitle: '取消申请', messageSummary: '您确定要请取消申请吗?'});
  86 + var options = {
  87 + mask: true,
  88 + btns: [
  89 + {
  90 + id: 'cancel-sure',
  91 + name: '确定',
  92 + btnClass: ['cancel-sure'],
  93 + cb: function() {
  94 + $.ajax({
  95 + type: 'POST',
  96 + url: url,
  97 + data: {
  98 + id: id
  99 + }
  100 + }).then(function(data) {
  101 + active.close();
  102 + if (data.code === 200) {
  103 + location.reload();
  104 + } else {
  105 + new dialog.Alert(data.message).show();
  106 + }
  107 + });
  108 + }
  109 + },
  110 + {
  111 + id: 'cancel-no',
  112 + name: '取消',
  113 + btnClass: ['cancel-no'],
  114 + cb: function() {
  115 + active.close();
  116 + }
  117 + }
  118 + ],
  119 + content: html,
  120 + className: 'cancel-dialog'
  121 + };
  122 + return new Dialog(options);
  123 +}
  124 +
  125 +
77 if ($detail.parent().hasClass('exchange-detail')) { 126 if ($detail.parent().hasClass('exchange-detail')) {
78 isChange = true; 127 isChange = true;
79 } 128 }
@@ -92,4 +141,9 @@ $('#modify').click(function() { @@ -92,4 +141,9 @@ $('#modify').click(function() {
92 141
93 $('#submit-btn').click(function() { 142 $('#submit-btn').click(function() {
94 sendExpressCode(); 143 sendExpressCode();
95 -});  
  144 +});
  145 +
  146 +$('.cancel-return').on('click', '.cancel-trigger', function() {
  147 + active = cancelApply($(this).data('id'), $(this).data('url'));
  148 + active.show();
  149 +})
@@ -40,6 +40,14 @@ @@ -40,6 +40,14 @@
40 margin-bottom: 15px; 40 margin-bottom: 15px;
41 } 41 }
42 } 42 }
  43 + .icon-onlineservice{
  44 + display: inline-block;
  45 + width: 16px;
  46 + height: 16px;
  47 + margin-left: 10px;
  48 + background: resolve(home/onlineservice.png) no-repeat;
  49 + vertical-align: text-bottom;
  50 + }
43 } 51 }
44 h2 { 52 h2 {
45 height: 21px; 53 height: 21px;
@@ -91,6 +99,39 @@ @@ -91,6 +99,39 @@
91 color: #999; 99 color: #999;
92 } 100 }
93 } 101 }
  102 + .special-tip{
  103 + position:relative;
  104 + span {
  105 + color: #3a3a3a;
  106 + }
  107 + .doubt{
  108 + display: inline-block;
  109 + margin-left: 5px;
  110 + width: 14px;
  111 + height: 14px;
  112 + background:resolve(home/return-doubt.png) no-repeat;
  113 + vertical-align: text-bottom;
  114 + }
  115 + .special-content{
  116 + display:none;
  117 + position: absolute;
  118 + top:0;
  119 + width: 280px;
  120 + padding: 10px 15px;
  121 + border: 1px solid #3a3a3a;
  122 + background: #fff;
  123 + color: #3a3a3a;
  124 + word-break: break-word;
  125 + i.arrow{
  126 + position: absolute;
  127 + top: 5px;
  128 + left: -7px;
  129 + width: 7px;
  130 + height: 12px;
  131 + background: resolve(home/return-arrow.png) no-repeat;
  132 + }
  133 + }
  134 + }
94 .exchange-choose-wrap { 135 .exchange-choose-wrap {
95 width: 185px; 136 width: 185px;
96 border: 1px solid #e6e6e6; 137 border: 1px solid #e6e6e6;
@@ -30,6 +30,22 @@ @@ -30,6 +30,22 @@
30 background: resolve(/home/detail-act.png) no-repeat top center 30 background: resolve(/home/detail-act.png) no-repeat top center
31 } 31 }
32 } 32 }
  33 + .cancel-return{
  34 + height: 26px;
  35 + margin: 0 10px;
  36 + padding-top: 10px;
  37 + padding-left: 10px;
  38 + line-height: 26px;
  39 + border-top: 1px solid #e0e0e0;
  40 + a{
  41 + display: inline-block;
  42 + padding: 0 10px;
  43 + margin-left: 15px;
  44 + color: #fff;
  45 + background: #3a3a3a;
  46 + text-align: center;
  47 + }
  48 + }
33 .detail-container { 49 .detail-container {
34 padding: 10px; 50 padding: 10px;
35 51
@@ -60,4 +60,64 @@ @@ -60,4 +60,64 @@
60 } 60 }
61 } 61 }
62 62
63 -}  
  63 +}
  64 +.cancel-dialog{
  65 + width: 350px;
  66 + background: #fff;
  67 + padding: 20px 30px 35px 30px;
  68 + .message-title{
  69 + margin-top: 40px;
  70 + margin-bottom: 27px;
  71 + font-size: 24px;
  72 + font-weight: 700;
  73 + }
  74 + .message-summary{
  75 + width: 250px;
  76 + margin: 0 auto 22px;
  77 + font-size: 14px;
  78 + word-wrap: break-word;
  79 + line-height: 20px;
  80 + color: #444;
  81 + }
  82 + .btns {
  83 + padding: 15px 30px 0;
  84 + text-align: center;
  85 +
  86 + .btn {
  87 + height: 35px;
  88 + font-size: 15px;
  89 + line-height: 35px;
  90 + }
  91 +
  92 + .cancel-sure {
  93 + width: 130px;
  94 + color: #fff;
  95 + background: #000;
  96 + border: none;
  97 + }
  98 +
  99 + .cancel-no {
  100 + margin-left: 30px;
  101 + background: #fff;
  102 + color: #000;
  103 + border-color: #000;
  104 + width: 126px;
  105 + }
  106 + }
  107 + .close{
  108 + top: 15px;
  109 + right: 15px;
  110 + .iconfont{
  111 + font-size: 30px;
  112 + }
  113 + }
  114 + .icon-warn{
  115 + display: inline-block;
  116 + margin-right: 10px;
  117 + background: resolve(/home/icon-warn.png) no-repeat;
  118 + width: 30px;
  119 + height: 30px;
  120 + vertical-align: -6px;
  121 + }
  122 +}
  123 +
@@ -69,6 +69,7 @@ class OrderModel @@ -69,6 +69,7 @@ class OrderModel
69 $goods[$gokey]['count'] = $buyNum; 69 $goods[$gokey]['count'] = $buyNum;
70 $refundStatus = ($refundNum > 0) ? true : false; //只要发生一件退换,退换过的标记 70 $refundStatus = ($refundNum > 0) ? true : false; //只要发生一件退换,退换过的标记
71 $goods[$gokey]['refundStatus'] = $refundStatus; 71 $goods[$gokey]['refundStatus'] = $refundStatus;
  72 + $goods[$gokey]['goRefundUrl'] = Helpers::url('/home/returns');
72 $refundFlag[] = (($buyNum == $refundNum) && $refundNum > 0) ? 'finished' : 'unfinished'; //某一件商品全部退换结束 73 $refundFlag[] = (($buyNum == $refundNum) && $refundNum > 0) ? 'finished' : 'unfinished'; //某一件商品全部退换结束
73 $goods[$gokey]['arrivalDate'] = $goval['expect_arrival_time']; 74 $goods[$gokey]['arrivalDate'] = $goval['expect_arrival_time'];
74 $goodsTagName = self::getGoodsTag($orderV['attribute'], $goval['goods_type']); 75 $goodsTagName = self::getGoodsTag($orderV['attribute'], $goval['goods_type']);
@@ -34,25 +34,32 @@ class ReturnsModel @@ -34,25 +34,32 @@ class ReturnsModel
34 if (isset($returnsData['code']) && $returnsData['code'] == 200 && !empty($returnsData['data']['list'])) { 34 if (isset($returnsData['code']) && $returnsData['code'] == 200 && !empty($returnsData['data']['list'])) {
35 //设置分页 35 //设置分页
36 $pager = self::setPager($returnsData['data']['page'], $returnsData['data']['total'], $returnsData['data']['total_page'], $limit); 36 $pager = self::setPager($returnsData['data']['page'], $returnsData['data']['total'], $returnsData['data']['total_page'], $limit);
37 - foreach($returnsData['data']['list'] as $key => $value){ 37 + foreach ($returnsData['data']['list'] as $key => $value) {
  38 + $param = array(
  39 + 'id' => $value['id']
  40 + );
  41 + $list[$key]['returnId'] = $value['id'];
38 $list[$key]['orderNum'] = $value['order_code']; 42 $list[$key]['orderNum'] = $value['order_code'];
39 - $list[$key]['orderTime'] = str_replace('-','/',$value['order_create_time']); 43 + $list[$key]['orderTime'] = str_replace('-', '/', $value['order_create_time']);
40 $list[$key]['returnTime'] = $value['create_time']; 44 $list[$key]['returnTime'] = $value['create_time'];
41 - if ($value['refund_type'] == 1) { 45 + if ($value['refund_type'] == 1) { // tar note 160624 终止退货
42 $list[$key]['isChange'] = false; 46 $list[$key]['isChange'] = false;
43 $uri = '/home/returns/refundDetail'; 47 $uri = '/home/returns/refundDetail';
44 - }elseif ($value['refund_type'] == 2) { 48 + if ($value['canCancel'] === 'Y') {
  49 + $list[$key]['canCancelUrl'] = Helpers::url('/home/returns/cancelRefund');
  50 + }
  51 + } elseif ($value['refund_type'] == 2) { // tar note 160624 终止换货
45 $list[$key]['isChange'] = true; 52 $list[$key]['isChange'] = true;
46 $uri = '/home/returns/exchangeDetail'; 53 $uri = '/home/returns/exchangeDetail';
  54 + if ($value['canCancel'] === 'Y') {
  55 + $list[$key]['canCancelUrl'] = Helpers::url('/home/returns/cancelChange');
  56 + }
47 } 57 }
48 $list[$key]['returnStatus'] = $value['status_name']; 58 $list[$key]['returnStatus'] = $value['status_name'];
49 - $param = array(  
50 - 'id' => $value['id']  
51 - );  
52 - $list[$key]['moreHref'] = helpers::url($uri,$param); 59 + $list[$key]['moreHref'] = helpers::url($uri, $param);
53 $list[$key]['goods'] = self::getGoodsData($value['goods']); 60 $list[$key]['goods'] = self::getGoodsData($value['goods']);
54 } 61 }
55 - }else{ 62 + } else {
56 $list = array( 63 $list = array(
57 'empty' => '您没有退/换货订单' 64 'empty' => '您没有退/换货订单'
58 ); 65 );
@@ -62,8 +69,8 @@ class ReturnsModel @@ -62,8 +69,8 @@ class ReturnsModel
62 $path = UserModel::getCenterCrumb('退货/换货'); 69 $path = UserModel::getCenterCrumb('退货/换货');
63 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid); 70 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid);
64 $data = array( 71 $data = array(
65 - 'path'=>$path,  
66 - 'homeNav'=>$leftNav, 72 + 'path' => $path,
  73 + 'homeNav' => $leftNav,
67 'orders' => $list, 74 'orders' => $list,
68 'userThumb' => UserModel::getUserHeadImg($uid), 75 'userThumb' => UserModel::getUserHeadImg($uid),
69 'pager' => $pager 76 'pager' => $pager
@@ -97,13 +104,17 @@ class ReturnsModel @@ -97,13 +104,17 @@ class ReturnsModel
97 $detail['express']['number'] = isset($res['notice']['express_number']) ? $res['notice']['express_number'] : ''; 104 $detail['express']['number'] = isset($res['notice']['express_number']) ? $res['notice']['express_number'] : '';
98 $detail['express']['id'] = isset($res['notice']['express_id']) ? $res['notice']['express_id'] : ''; 105 $detail['express']['id'] = isset($res['notice']['express_id']) ? $res['notice']['express_id'] : '';
99 } 106 }
100 - foreach($res['statusList'] as $key=>$value){  
101 - $detail['statusList'][$key]['act'] = ($value['act' ] == 'Y') ? true : false; 107 + foreach ($res['statusList'] as $key => $value) {
  108 + $detail['statusList'][$key]['act'] = ($value['act'] == 'Y') ? true : false;
102 $detail['statusList'][$key]['name'] = $value['name']; 109 $detail['statusList'][$key]['name'] = $value['name'];
103 } 110 }
104 $detail['goods'] = self::getDetailGoods($res['goods_list']); 111 $detail['goods'] = self::getDetailGoods($res['goods_list']);
105 $detail['expressList'] = self::getExpressCompany(); 112 $detail['expressList'] = self::getExpressCompany();
106 - }else{ 113 +
  114 + if ($res['canCancel'] === 'Y') {
  115 + $detail['canCancelUrl'] = Helpers::url('/home/returns/cancelChange');
  116 + }
  117 + } else {
107 return false; 118 return false;
108 } 119 }
109 120
@@ -111,10 +122,10 @@ class ReturnsModel @@ -111,10 +122,10 @@ class ReturnsModel
111 $path = UserModel::getCenterCrumb('退货/换货'); 122 $path = UserModel::getCenterCrumb('退货/换货');
112 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid); 123 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid);
113 $data = array( 124 $data = array(
114 - 'path'=>$path,  
115 - 'homeNav'=>$leftNav, 125 + 'path' => $path,
  126 + 'homeNav' => $leftNav,
116 'userThumb' => UserModel::getUserHeadImg($uid), 127 'userThumb' => UserModel::getUserHeadImg($uid),
117 - 'detail'=>$detail 128 + 'detail' => $detail
118 ); 129 );
119 130
120 return $data; 131 return $data;
@@ -145,7 +156,7 @@ class ReturnsModel @@ -145,7 +156,7 @@ class ReturnsModel
145 $detail['express']['company'] = isset($res['notice']['express_company']) ? $res['notice']['express_company'] : ''; 156 $detail['express']['company'] = isset($res['notice']['express_company']) ? $res['notice']['express_company'] : '';
146 $detail['express']['number'] = isset($res['notice']['express_number']) ? $res['notice']['express_number'] : ''; 157 $detail['express']['number'] = isset($res['notice']['express_number']) ? $res['notice']['express_number'] : '';
147 } 158 }
148 - foreach($res['statusList'] as $key=>$value){ 159 + foreach ($res['statusList'] as $key => $value) {
149 $detail['statusList'][$key]['act'] = ($value['act'] == 'Y') ? true : false; 160 $detail['statusList'][$key]['act'] = ($value['act'] == 'Y') ? true : false;
150 $detail['statusList'][$key]['name'] = $value['name']; 161 $detail['statusList'][$key]['name'] = $value['name'];
151 } 162 }
@@ -153,17 +164,21 @@ class ReturnsModel @@ -153,17 +164,21 @@ class ReturnsModel
153 $detail['backMode'] = isset($res['return_amount_mode_name']) ? $res['return_amount_mode_name'] : ''; 164 $detail['backMode'] = isset($res['return_amount_mode_name']) ? $res['return_amount_mode_name'] : '';
154 $detail['goods'] = self::getDetailGoods($res['goods_list']); 165 $detail['goods'] = self::getDetailGoods($res['goods_list']);
155 $detail['expressList'] = self::getExpressCompany(); 166 $detail['expressList'] = self::getExpressCompany();
156 - }else{ 167 +
  168 + if ($res['canCancel'] === 'Y') {
  169 + $detail['canCancelUrl'] = Helpers::url('/home/returns/cancelRefund');
  170 + }
  171 + } else {
157 return false; 172 return false;
158 } 173 }
159 //面包屑-左侧导航 174 //面包屑-左侧导航
160 $path = UserModel::getCenterCrumb('退货/换货'); 175 $path = UserModel::getCenterCrumb('退货/换货');
161 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid); 176 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid);
162 $data = array( 177 $data = array(
163 - 'path'=>$path,  
164 - 'homeNav'=>$leftNav, 178 + 'path' => $path,
  179 + 'homeNav' => $leftNav,
165 'userThumb' => UserModel::getUserHeadImg($uid), 180 'userThumb' => UserModel::getUserHeadImg($uid),
166 - 'detail'=>$detail 181 + 'detail' => $detail
167 ); 182 );
168 183
169 return $data; 184 return $data;
@@ -184,7 +199,7 @@ class ReturnsModel @@ -184,7 +199,7 @@ class ReturnsModel
184 $cnAlphabet = $value['cn_alphabet']; 199 $cnAlphabet = $value['cn_alphabet'];
185 } 200 }
186 $result[$key]['href'] = Helpers::getUrlBySkc($value['product_id'], $value['goods_id'], $cnAlphabet); 201 $result[$key]['href'] = Helpers::getUrlBySkc($value['product_id'], $value['goods_id'], $cnAlphabet);
187 - $result[$key]['thumb'] = Helpers::getImageUrl($value['goods_image'],60,60); 202 + $result[$key]['thumb'] = Helpers::getImageUrl($value['goods_image'], 60, 60);
188 $result[$key]['name'] = $value['product_name']; 203 $result[$key]['name'] = $value['product_name'];
189 $result[$key]['color'] = $value['color_name']; 204 $result[$key]['color'] = $value['color_name'];
190 $result[$key]['size'] = $value['size_name']; 205 $result[$key]['size'] = $value['size_name'];
@@ -241,7 +256,7 @@ class ReturnsModel @@ -241,7 +256,7 @@ class ReturnsModel
241 $expressList = ReturnsData::getExpressCompany(); 256 $expressList = ReturnsData::getExpressCompany();
242 if (isset($expressList['code']) && $expressList['code'] == 200) { 257 if (isset($expressList['code']) && $expressList['code'] == 200) {
243 $result = array_values($expressList['data']); 258 $result = array_values($expressList['data']);
244 - foreach($result as $key=>$value){ 259 + foreach ($result as $key => $value) {
245 $res = array_merge_recursive($res, $value); 260 $res = array_merge_recursive($res, $value);
246 } 261 }
247 } 262 }
@@ -260,9 +275,9 @@ class ReturnsModel @@ -260,9 +275,9 @@ class ReturnsModel
260 * @param $isChange 275 * @param $isChange
261 * @return mixed 276 * @return mixed
262 */ 277 */
263 - public static function setExpressNumber($id, $expressId, $expressNumber,$uid, $expressCompany, $isChange) 278 + public static function setExpressNumber($id, $expressId, $expressNumber, $uid, $expressCompany, $isChange)
264 { 279 {
265 - $data = ReturnsData::setExpressNumber($id, $expressId, $expressNumber,$uid, $expressCompany, $isChange); 280 + $data = ReturnsData::setExpressNumber($id, $expressId, $expressNumber, $uid, $expressCompany, $isChange);
266 return $data; 281 return $data;
267 } 282 }
268 283
@@ -282,13 +297,13 @@ class ReturnsModel @@ -282,13 +297,13 @@ class ReturnsModel
282 //调用接口成功,封装数据 297 //调用接口成功,封装数据
283 if (isset($data['code']) && $data['code'] == 200 && isset($data['data']['goods_list']) && !empty($data['data']['goods_list'])) { 298 if (isset($data['code']) && $data['code'] == 200 && isset($data['data']['goods_list']) && !empty($data['data']['goods_list'])) {
284 $amount = ''; 299 $amount = '';
285 - foreach($data['data']['goods_list'] as $key=>$value){ 300 + foreach ($data['data']['goods_list'] as $key => $value) {
286 $cnAlphabet = ''; 301 $cnAlphabet = '';
287 if (!empty($value['cn_alphabet'])) { 302 if (!empty($value['cn_alphabet'])) {
288 $cnAlphabet = $value['cn_alphabet']; 303 $cnAlphabet = $value['cn_alphabet'];
289 } 304 }
290 $result['goods'][$key]['href'] = Helpers::getUrlBySkc($value['product_id'], $value['goods_id'], $cnAlphabet); 305 $result['goods'][$key]['href'] = Helpers::getUrlBySkc($value['product_id'], $value['goods_id'], $cnAlphabet);
291 - $result['goods'][$key]['thumb'] = Helpers::getImageUrl($value['goods_image'],60,60); 306 + $result['goods'][$key]['thumb'] = Helpers::getImageUrl($value['goods_image'], 60, 60);
292 $result['goods'][$key]['name'] = $value['product_name']; 307 $result['goods'][$key]['name'] = $value['product_name'];
293 $result['goods'][$key]['color'] = $value['color_name']; 308 $result['goods'][$key]['color'] = $value['color_name'];
294 $result['goods'][$key]['size'] = $value['size_name']; 309 $result['goods'][$key]['size'] = $value['size_name'];
@@ -306,12 +321,25 @@ class ReturnsModel @@ -306,12 +321,25 @@ class ReturnsModel
306 } 321 }
307 $result['orderCode'] = $orderCode; 322 $result['orderCode'] = $orderCode;
308 $result['reason'] = $data['data']['return_reason']; 323 $result['reason'] = $data['data']['return_reason'];
  324 +
  325 + // tar note 对数组做处理,为不显示的添加 inactive
  326 + if (isset($data['data']['special_exchange_reason'])) {
  327 + foreach ($result['reason'] as $key => $item) {
  328 + if (!in_array($item, $data['data']['special_exchange_reason'])) {
  329 + $result['reason'][$key]['inactive'] = true;
  330 + }
  331 + }
  332 + }
  333 +
  334 + // 对原因排序
  335 + asort($result['reason']);
  336 +
309 //计算相关支付细节 337 //计算相关支付细节
310 $result['amount'] = $amount - $data['data']['yoho_coin_num'] - $data['data']['coupon_amount']; 338 $result['amount'] = $amount - $data['data']['yoho_coin_num'] - $data['data']['coupon_amount'];
311 $result['yohoCoin'] = $data['data']['yoho_coin_num']; 339 $result['yohoCoin'] = $data['data']['yoho_coin_num'];
312 $result['coupon'] = $data['data']['coupon_amount']; 340 $result['coupon'] = $data['data']['coupon_amount'];
313 $result['cash'] = $amount; 341 $result['cash'] = $amount;
314 - foreach($data['data']['return_amount_mode'] as &$value){ 342 + foreach ($data['data']['return_amount_mode'] as &$value) {
315 if ($value['is_default'] == 'Y') { 343 if ($value['is_default'] == 'Y') {
316 $value['default'] = true; 344 $value['default'] = true;
317 } 345 }
@@ -324,8 +352,8 @@ class ReturnsModel @@ -324,8 +352,8 @@ class ReturnsModel
324 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid); 352 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid);
325 $pager = array(); 353 $pager = array();
326 $data = array( 354 $data = array(
327 - 'path'=>$path,  
328 - 'homeNav'=>$leftNav, 355 + 'path' => $path,
  356 + 'homeNav' => $leftNav,
329 'refund' => $result, 357 'refund' => $result,
330 'pager' => $pager 358 'pager' => $pager
331 ); 359 );
@@ -349,13 +377,13 @@ class ReturnsModel @@ -349,13 +377,13 @@ class ReturnsModel
349 $productSkn = array(); 377 $productSkn = array();
350 //数据获取成功,封装数据 378 //数据获取成功,封装数据
351 if (isset($data['code']) && $data['code'] == 200 && isset($data['data']) && !empty($data['data'])) { 379 if (isset($data['code']) && $data['code'] == 200 && isset($data['data']) && !empty($data['data'])) {
352 - foreach ($data['data']['goods_list'] as $key=>$value) { 380 + foreach ($data['data']['goods_list'] as $key => $value) {
353 $cnAlphabet = ''; 381 $cnAlphabet = '';
354 if (!empty($value['cn_alphabet'])) { 382 if (!empty($value['cn_alphabet'])) {
355 $cnAlphabet = $value['cn_alphabet']; 383 $cnAlphabet = $value['cn_alphabet'];
356 } 384 }
357 $result['goods'][$key]['href'] = Helpers::getUrlBySkc($value['product_id'], $value['goods_id'], $cnAlphabet); 385 $result['goods'][$key]['href'] = Helpers::getUrlBySkc($value['product_id'], $value['goods_id'], $cnAlphabet);
358 - $result['goods'][$key]['thumb'] = Helpers::getImageUrl($value['goods_image'],60,60); 386 + $result['goods'][$key]['thumb'] = Helpers::getImageUrl($value['goods_image'], 60, 60);
359 $result['goods'][$key]['name'] = $value['product_name']; 387 $result['goods'][$key]['name'] = $value['product_name'];
360 $result['goods'][$key]['color'] = $value['color_name']; 388 $result['goods'][$key]['color'] = $value['color_name'];
361 $result['goods'][$key]['size'] = $value['size_name']; 389 $result['goods'][$key]['size'] = $value['size_name'];
@@ -364,6 +392,12 @@ class ReturnsModel @@ -364,6 +392,12 @@ class ReturnsModel
364 $result['goods'][$key]['skc'] = $value['product_skc']; 392 $result['goods'][$key]['skc'] = $value['product_skc'];
365 $result['goods'][$key]['sku'] = $value['product_sku']; 393 $result['goods'][$key]['sku'] = $value['product_sku'];
366 $result['goods'][$key]['goods_type_id'] = $value['goods_type_id']; 394 $result['goods'][$key]['goods_type_id'] = $value['goods_type_id'];
  395 +
  396 + // tar note 为每个特殊商品都添加标识
  397 + if ($value['is_limit_skn'] === 'Y') {
  398 + $result['goods'][$key]['specialNoticeBo'] = $data['data']['specialNoticeBo'];
  399 + }
  400 +
367 //给前端标识出鞋类 401 //给前端标识出鞋类
368 if ($value['hasShoes']) { 402 if ($value['hasShoes']) {
369 $result['tips']['footwear'] = true; 403 $result['tips']['footwear'] = true;
@@ -371,6 +405,19 @@ class ReturnsModel @@ -371,6 +405,19 @@ class ReturnsModel
371 $productSkn[] += $value['product_skn']; 405 $productSkn[] += $value['product_skn'];
372 } 406 }
373 $result['reason'] = $data['data']['exchange_reason']; 407 $result['reason'] = $data['data']['exchange_reason'];
  408 +
  409 + // tar note 对数组做处理,为不显示的添加 inactive
  410 + if (isset($data['data']['special_exchange_reason'])) {
  411 + foreach ($result['reason'] as $key => $item) {
  412 + if (!in_array($item, $data['data']['special_exchange_reason'])) {
  413 + $result['reason'][$key]['inactive'] = true;
  414 + }
  415 + }
  416 + }
  417 +
  418 + // 对原因排序
  419 + asort($result['reason']);
  420 +
374 $result['orderCode'] = $orderCode; 421 $result['orderCode'] = $orderCode;
375 422
376 //换货地址相关数据(邮编为可空参数) 423 //换货地址相关数据(邮编为可空参数)
@@ -393,8 +440,8 @@ class ReturnsModel @@ -393,8 +440,8 @@ class ReturnsModel
393 440
394 foreach ($product as $key => $value) {//遍历得到每件商品 441 foreach ($product as $key => $value) {//遍历得到每件商品
395 $num = '0';//初始化每件商品的库存为0 442 $num = '0';//初始化每件商品的库存为0
396 - foreach ($value['goods_list'] as $k=>$v) {//遍历商品得到每个颜色  
397 - foreach ($v['size_list'] as $k1=>$v1) {//遍历颜色得到每个尺码 443 + foreach ($value['goods_list'] as $k => $v) {//遍历商品得到每个颜色
  444 + foreach ($v['size_list'] as $k1 => $v1) {//遍历颜色得到每个尺码
398 $num += $v1['storage_number'];//将商品颜色对应尺码下的每个商品的库存相加 445 $num += $v1['storage_number'];//将商品颜色对应尺码下的每个商品的库存相加
399 if ($v1['storage_number'] > 0) {//当某个尺码下有库存时,将该颜色及其对应的尺码加入该商品选项下 446 if ($v1['storage_number'] > 0) {//当某个尺码下有库存时,将该颜色及其对应的尺码加入该商品选项下
400 $result['goods'][$key]['colorSize'][$k]['color'] = $v['color_name']; 447 $result['goods'][$key]['colorSize'][$k]['color'] = $v['color_name'];
@@ -412,14 +459,14 @@ class ReturnsModel @@ -412,14 +459,14 @@ class ReturnsModel
412 $result['goods'][$key]['banMsg'] = '库存不足不能换货'; 459 $result['goods'][$key]['banMsg'] = '库存不足不能换货';
413 } 460 }
414 } 461 }
415 - 462 +
416 //面包屑-左侧导航 463 //面包屑-左侧导航
417 $path = UserModel::getCenterCrumb('退货/换货'); 464 $path = UserModel::getCenterCrumb('退货/换货');
418 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid); 465 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid);
419 $pager = array(); 466 $pager = array();
420 $data = array( 467 $data = array(
421 - 'path'=>$path,  
422 - 'homeNav'=>$leftNav, 468 + 'path' => $path,
  469 + 'homeNav' => $leftNav,
423 'exchange' => $result, 470 'exchange' => $result,
424 'pager' => $pager 471 'pager' => $pager
425 ); 472 );
@@ -435,7 +482,7 @@ class ReturnsModel @@ -435,7 +482,7 @@ class ReturnsModel
435 */ 482 */
436 public static function getSizeList($sizeList) 483 public static function getSizeList($sizeList)
437 { 484 {
438 - foreach ($sizeList as $key=>$value) { 485 + foreach ($sizeList as $key => $value) {
439 if ($value['storage_number'] <= 0) { 486 if ($value['storage_number'] <= 0) {
440 unset($sizeList[$key]); 487 unset($sizeList[$key]);
441 } 488 }
@@ -498,7 +545,7 @@ class ReturnsModel @@ -498,7 +545,7 @@ class ReturnsModel
498 //调取接口查询订单详情 545 //调取接口查询订单详情
499 $order = OrderData::viewOrderData($orderCode, $uid, ''); 546 $order = OrderData::viewOrderData($orderCode, $uid, '');
500 if (empty($order)) { 547 if (empty($order)) {
501 - return array('code'=>403,'message'=>'没有找到该订单'); 548 + return array('code' => 403, 'message' => '没有找到该订单');
502 } 549 }
503 // //订单7天后不能退款 550 // //订单7天后不能退款
504 // if (isset($order['code']) && $order['code'] == 200) { 551 // if (isset($order['code']) && $order['code'] == 200) {
@@ -538,7 +585,7 @@ class ReturnsModel @@ -538,7 +585,7 @@ class ReturnsModel
538 //调取接口查询订单详情 585 //调取接口查询订单详情
539 $order = OrderData::viewOrderData($orderCode, $uid, ''); 586 $order = OrderData::viewOrderData($orderCode, $uid, '');
540 if (empty($order)) { 587 if (empty($order)) {
541 - return array('code'=>403,'message'=>'没有找到该订单'); 588 + return array('code' => 403, 'message' => '没有找到该订单');
542 } 589 }
543 // //订单15天后不能换货 590 // //订单15天后不能换货
544 // if (isset($order['code']) && $order['code'] == 200) { 591 // if (isset($order['code']) && $order['code'] == 200) {
@@ -573,8 +620,8 @@ class ReturnsModel @@ -573,8 +620,8 @@ class ReturnsModel
573 $path = UserModel::getCenterCrumb('退货/换货'); 620 $path = UserModel::getCenterCrumb('退货/换货');
574 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid); 621 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid);
575 $data = array( 622 $data = array(
576 - 'path'=>$path,  
577 - 'homeNav'=>$leftNav, 623 + 'path' => $path,
  624 + 'homeNav' => $leftNav,
578 'save' => array( 625 'save' => array(
579 'type' => '退货', 626 'type' => '退货',
580 'ordersHref' => Helpers::url('/home/orders'), 627 'ordersHref' => Helpers::url('/home/orders'),
@@ -603,8 +650,8 @@ class ReturnsModel @@ -603,8 +650,8 @@ class ReturnsModel
603 $path = UserModel::getCenterCrumb('退货/换货'); 650 $path = UserModel::getCenterCrumb('退货/换货');
604 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid); 651 $leftNav = UserModel::getCenterLeftNav('我的退/换货', $uid);
605 $data = array( 652 $data = array(
606 - 'path'=>$path,  
607 - 'homeNav'=>$leftNav, 653 + 'path' => $path,
  654 + 'homeNav' => $leftNav,
608 'save' => array( 655 'save' => array(
609 'type' => '换货', 656 'type' => '换货',
610 'ordersHref' => Helpers::url('/home/orders'), 657 'ordersHref' => Helpers::url('/home/orders'),
@@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
2 use Action\WebAction; 2 use Action\WebAction;
3 use Home\ReturnsModel; 3 use Home\ReturnsModel;
4 use WebPlugin\Helpers; 4 use WebPlugin\Helpers;
  5 +use LibModels\Web\Home\ReturnsData;
5 6
6 class ReturnsController extends WebAction 7 class ReturnsController extends WebAction
7 { 8 {
@@ -53,7 +54,7 @@ class ReturnsController extends WebAction @@ -53,7 +54,7 @@ class ReturnsController extends WebAction
53 { 54 {
54 /* 判断是不是AJAX请求 */ 55 /* 判断是不是AJAX请求 */
55 if (!$this->isAjax()) { 56 if (!$this->isAjax()) {
56 - return; 57 + return;
57 } 58 }
58 $areaCode = $this->post('areaCode'); 59 $areaCode = $this->post('areaCode');
59 //获取必要参数 60 //获取必要参数
@@ -82,14 +83,14 @@ class ReturnsController extends WebAction @@ -82,14 +83,14 @@ class ReturnsController extends WebAction
82 $uid = $this->getUid(); 83 $uid = $this->getUid();
83 $goods = $this->post('goods'); 84 $goods = $this->post('goods');
84 $payment = $this->post('payment'); 85 $payment = $this->post('payment');
85 - if (empty($orderCode) || $orderCode<1 || empty($goods) || empty($payment)) {  
86 - $this->echoJson(array('code'=>203,'message'=>'非法提交')); 86 + if (empty($orderCode) || $orderCode < 1 || empty($goods) || empty($payment)) {
  87 + $this->echoJson(array('code' => 203, 'message' => '非法提交'));
87 } 88 }
88 //调用模型提交退货申请 89 //调用模型提交退货申请
89 $res = ReturnsModel::saveRefund($orderCode, $uid, $goods, $payment); 90 $res = ReturnsModel::saveRefund($orderCode, $uid, $goods, $payment);
90 //退货申请成功,返回前端相应格式,并返回退货成功页跳转地址 91 //退货申请成功,返回前端相应格式,并返回退货成功页跳转地址
91 if (isset($res['code']) && $res['code'] == 200) { 92 if (isset($res['code']) && $res['code'] == 200) {
92 - $successUrl = Helpers::url('/home/returns/refundSuccess', array('orderCode'=>$orderCode)); 93 + $successUrl = Helpers::url('/home/returns/refundSuccess', array('orderCode' => $orderCode));
93 $res['data']['refer'] = $successUrl; 94 $res['data']['refer'] = $successUrl;
94 } 95 }
95 $this->echoJson($res); 96 $this->echoJson($res);
@@ -117,8 +118,8 @@ class ReturnsController extends WebAction @@ -117,8 +118,8 @@ class ReturnsController extends WebAction
117 $deliveryType = $this->post('deliveryType'); 118 $deliveryType = $this->post('deliveryType');
118 119
119 //判断参数合法性 120 //判断参数合法性
120 - if (empty($orderCode) || $orderCode<1 || empty($goods) || empty($deliveryType) || empty($consigneeName) || empty($areaCode) || empty($address) || empty($mobile)) {  
121 - $this->echoJson(array('code'=>203,'message'=>'非法提交')); 121 + if (empty($orderCode) || $orderCode < 1 || empty($goods) || empty($deliveryType) || empty($consigneeName) || empty($areaCode) || empty($address) || empty($mobile)) {
  122 + $this->echoJson(array('code' => 203, 'message' => '非法提交'));
122 return; 123 return;
123 } 124 }
124 //调用模型提交换货申请 125 //调用模型提交换货申请
@@ -126,7 +127,7 @@ class ReturnsController extends WebAction @@ -126,7 +127,7 @@ class ReturnsController extends WebAction
126 127
127 //换货成功,返回前端相应格式,并返回换货成功页跳转链接 128 //换货成功,返回前端相应格式,并返回换货成功页跳转链接
128 if (isset($res['code']) && $res['code'] == '200') { 129 if (isset($res['code']) && $res['code'] == '200') {
129 - $successUrl = Helpers::url('/home/returns/exchangeSuccess', array('orderCode'=>$orderCode)); 130 + $successUrl = Helpers::url('/home/returns/exchangeSuccess', array('orderCode' => $orderCode));
130 $res['data']['refer'] = $successUrl; 131 $res['data']['refer'] = $successUrl;
131 } 132 }
132 133
@@ -204,6 +205,7 @@ class ReturnsController extends WebAction @@ -204,6 +205,7 @@ class ReturnsController extends WebAction
204 //头部导航 205 //头部导航
205 $channel = Helpers::getChannelNameByCookie(); 206 $channel = Helpers::getChannelNameByCookie();
206 $this->setWebNavHeader($channel); 207 $this->setWebNavHeader($channel);
  208 +
207 $this->_view->display('returns-detail', array('meReturnsPage' => true, 'returns' => $data)); 209 $this->_view->display('returns-detail', array('meReturnsPage' => true, 'returns' => $data));
208 } 210 }
209 211
@@ -224,6 +226,7 @@ class ReturnsController extends WebAction @@ -224,6 +226,7 @@ class ReturnsController extends WebAction
224 //头部导航 226 //头部导航
225 $channel = Helpers::getChannelNameByCookie(); 227 $channel = Helpers::getChannelNameByCookie();
226 $this->setWebNavHeader($channel); 228 $this->setWebNavHeader($channel);
  229 +
227 $this->_view->display('returns-detail', array('meReturnsPage' => true, 'returns' => $data)); 230 $this->_view->display('returns-detail', array('meReturnsPage' => true, 'returns' => $data));
228 } 231 }
229 232
@@ -246,11 +249,11 @@ class ReturnsController extends WebAction @@ -246,11 +249,11 @@ class ReturnsController extends WebAction
246 $expressNumber = $this->post('expressNumber'); 249 $expressNumber = $this->post('expressNumber');
247 $uid = $this->getUid(); 250 $uid = $this->getUid();
248 $expressCompany = $this->post('expressCompany'); 251 $expressCompany = $this->post('expressCompany');
249 - $res = array('code'=>201,'message'=>'请求失败'); 252 + $res = array('code' => 201, 'message' => '请求失败');
250 if (!isset($id) || !isset($expressId) || !isset($expressNumber) || !isset($uid) || !isset($expressCompany) || !isset($isChange)) { 253 if (!isset($id) || !isset($expressId) || !isset($expressNumber) || !isset($uid) || !isset($expressCompany) || !isset($isChange)) {
251 return $res; 254 return $res;
252 } 255 }
253 - $res = ReturnsModel::setExpressNumber($id, $expressId, $expressNumber,$uid, $expressCompany, $isChange); 256 + $res = ReturnsModel::setExpressNumber($id, $expressId, $expressNumber, $uid, $expressCompany, $isChange);
254 257
255 $this->echoJson($res); 258 $this->echoJson($res);
256 } 259 }
@@ -263,7 +266,7 @@ class ReturnsController extends WebAction @@ -263,7 +266,7 @@ class ReturnsController extends WebAction
263 { 266 {
264 //判断是否登录,未登录则退出 267 //判断是否登录,未登录则退出
265 if (!$this->getUid()) { 268 if (!$this->getUid()) {
266 - $this->echoJson(array('code'=>'400','message'=>'请登录')); 269 + $this->echoJson(array('code' => '400', 'message' => '请登录'));
267 exit; 270 exit;
268 } 271 }
269 $result = ReturnsModel::saveRefundImg('fileData'); 272 $result = ReturnsModel::saveRefundImg('fileData');
@@ -271,7 +274,35 @@ class ReturnsController extends WebAction @@ -271,7 +274,35 @@ class ReturnsController extends WebAction
271 $this->echoJson($result); 274 $this->echoJson($result);
272 } 275 }
273 276
  277 + /**
  278 + * 取消退货申请
  279 + */
  280 + public function cancelRefundAction()
  281 + {
  282 + if (!$this->isAjax()) {
  283 + return;
  284 + }
  285 + $orderId = $this->post('id');
  286 + $uid = $this->getUid();
  287 + $result = ReturnsData::cancelRefund($orderId, $uid);
274 288
  289 + $this->echoJson($result);
  290 + }
  291 +
  292 + /**
  293 + * 取消换货申请
  294 + */
  295 + public function cancelChangeAction()
  296 + {
  297 + if (!$this->isAjax()) {
  298 + return;
  299 + }
  300 + $orderId = $this->post('id');
  301 + $uid = $this->getUid();
  302 + $result = ReturnsData::cancelChange($orderId, $uid);
  303 +
  304 + $this->echoJson($result);
  305 + }
275 306
276 /** 307 /**
277 * 个人中心-根据商品skn,颜色,尺码返回商品的sku,goodsId(待用) 308 * 个人中心-根据商品skn,颜色,尺码返回商品的sku,goodsId(待用)