add_refund.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. {extend name="default/base/base_member" /}
  2. {block name="member_main"}
  3. <div class="dsm-flow-layout">
  4. <div class="dsm-flow-container">
  5. <div class="title">
  6. <h3>{$Think.lang.application_refund_service_type}:</h3>
  7. <div class="refund-type-box">
  8. <label><input type="radio" name="refund-type" value="1" checked /><span>{$Think.lang.refund_only}</span></label>
  9. <label><input type="radio" name="refund-type" value="2" /><span>{$Think.lang.refund_returns}</span></label>
  10. </div>
  11. </div>
  12. <div class="alert">
  13. <h4>{$Think.lang.operating_hints}:</h4>
  14. <ul>
  15. <li>{$Think.lang.refund_instructions1|raw}</li>
  16. <li>{$Think.lang.refund_instructions2|raw}</li>
  17. <li>3. {$Think.lang.refund_instructions3|raw}</li>
  18. <li>4. {$Think.lang.refund_instructions4|raw}</li>
  19. </ul>
  20. </div>
  21. <div id="saleRefund" show_id="1">
  22. <div class="dsm-flow-step">
  23. <dl class="step-first current">
  24. <dt>{$Think.lang.buyer_application_refund}</dt>
  25. <dd class="bg"></dd>
  26. </dl>
  27. <dl class="">
  28. <dt>{$Think.lang.merchant_processing_refund_application}</dt>
  29. <dd class="bg"> </dd>
  30. </dl>
  31. <dl class="">
  32. <dt>{$Think.lang.platform_review}<dt>
  33. <dd class="bg"> </dd>
  34. </dl>
  35. </div>
  36. <div class="dsm-default-form">
  37. <form id="post_form1" enctype="multipart/form-data" method="post" action="{:url('Memberrefund/add_refund',['order_id'=>$order.order_id,'goods_id'=>$goods.rec_id])}">
  38. <input type="hidden" name="refund_type" value="1" />
  39. <h3>{$Think.lang.please_fill_refund_application}</h3>
  40. <dl>
  41. <dt><i class="required">*</i>{$Think.lang.refund_buyer_message}:</dt>
  42. <dd>
  43. <select class="select w150" name="reason_id">
  44. <option value="">{$Think.lang.please_select_refund_reason}</option>
  45. {notempty name="$reason_list"}
  46. {foreach name="reason_list" item="val" key="key" }
  47. <option value="{$val.reason_id}">{$val.reason_info}</option>
  48. {/foreach}
  49. {/notempty}
  50. <option value="0">{$Think.lang.ds_other}</option>
  51. </select>
  52. <span class="error"></span> </dd>
  53. </dl>
  54. <dl>
  55. <dt><i class="required">*</i>{$Think.lang.refund_amount_required}:</dt>
  56. <dd>
  57. <input type="text" class="text w50" name="refund_amount" value="{$goods.goods_pay_price}" /><em class="add-on"><i class="iconfont">&#xe65c;</i></em>({$Think.lang.refund_max} <strong class="green" title="{$Think.lang.system_calculated_according_order}">{$goods.goods_pay_price}</strong> {$Think.lang.ds_yuan}) <span class="error"></span>
  58. <p class="hint">{$Think.lang.cannot_exceed_refundable_amount}</p>
  59. </dd>
  60. </dl>
  61. <dl>
  62. <dt><i class="required">*</i>{$Think.lang.refund_instructions}:</dt>
  63. <dd>
  64. <textarea name="buyer_message" rows="3" class="textarea w400"></textarea>
  65. <br />
  66. <span class="error"></span> </dd>
  67. </dl>
  68. <dl>
  69. <dt>{$Think.lang.upload_voucher}:</dt>
  70. <dd>
  71. <p>
  72. <input name="refund_pic1" type="file" />
  73. <span class="error"></span> </p>
  74. <p>
  75. <input name="refund_pic2" type="file" />
  76. <span class="error"></span> </p>
  77. <p>
  78. <input name="refund_pic3" type="file" />
  79. <span class="error"></span> </p>
  80. </dd>
  81. </dl>
  82. <div class="bottom">
  83. <input type="submit" class="submit" value="{$Think.lang.submit_confirmation}" />
  84. <a href="javascript:history.go(-1);" class="dsm-btn ml10">{$Think.lang.cancel_return}</a>
  85. </div>
  86. </form>
  87. </div>
  88. </div>
  89. <div id="saleRefundreturn" show_id="2" style="display: none;">
  90. <div class="dsm-flow-step">
  91. <dl class="step-first current">
  92. <dt>{$Think.lang.uyer_applies_return}</dt>
  93. <dd class="bg"></dd>
  94. </dl>
  95. <dl class="">
  96. <dt>{$Think.lang.business_processing_return_applications}</dt>
  97. <dd class="bg"> </dd>
  98. </dl>
  99. <dl class="">
  100. <dt>{$Think.lang.buyers_return_business}</dt>
  101. <dd class="bg"> </dd>
  102. </dl>
  103. <dl class="">
  104. <dt>{$Think.lang.confirm_goods}</dt>
  105. <dd class="bg"> </dd>
  106. </dl>
  107. </div>
  108. <div class=" dsm-default-form">
  109. <div id="warning"></div>
  110. <form id="post_form2" method="post" enctype="multipart/form-data" action="{:url('Memberrefund/add_refund',['order_id'=>$order.order_id,'goods_id'=>$goods.rec_id])}">
  111. <input type="hidden" name="refund_type" value="2" />
  112. <h3>{$Think.lang.fill_return_refund_application}</h3>
  113. <dl>
  114. <dt><i class="required">*</i>{$Think.lang.reason_return_refund}:</dt>
  115. <dd>
  116. <select class="select w150" name="reason_id">
  117. <option value="">{$Think.lang.please_select_refund_reason}</option>
  118. {notempty name="reason_list"}
  119. {foreach name="reason_list" item="val" key="key" }
  120. <option value="{$val.reason_id}">{$val.reason_info}</option>
  121. {/foreach}
  122. {/notempty}
  123. <option value="0">{$Think.lang.ds_other}</option>
  124. </select>
  125. <span class="error"></span> </dd>
  126. </dl>
  127. <dl>
  128. <dt><i class="required">*</i>{$Think.lang.refund_order_refund}{$Think.lang.ds_colon}</dt>
  129. <dd>
  130. <input type="text" class="text w50" name="refund_amount" value="{$goods.goods_pay_price}" />
  131. <em class="add-on"><i class="iconfont">&#xe65c;</i></em> ({$Think.lang.refund_max} <strong class="green" title="{$Think.lang.system_calculated_according_order}">{$goods.goods_pay_price}</strong> {$Think.lang.ds_yuan}) <span class="error"></span>
  132. <p class="hint">{$Think.lang.cannot_exceed_refundable_amount}</p>
  133. </dd>
  134. </dl>
  135. <dl>
  136. <dt><i class="required">*</i>{$Think.lang.return_order_return}{$Think.lang.ds_colon}</dt>
  137. <dd>
  138. <input type="text" class="text w50" name="goods_num" value="{$goods.goods_num}" />
  139. <span class="error"></span> </dd>
  140. </dl>
  141. <dl>
  142. <dt><i class="required">*</i>{$Think.lang.refund_instructions}:</dt>
  143. <dd>
  144. <textarea name="buyer_message" rows="3" class="textarea w400"></textarea>
  145. <br />
  146. <span class="error"></span> </dd>
  147. </dl>
  148. <dl>
  149. <dt>{$Think.lang.upload_voucher}:</dt>
  150. <dd>
  151. <p>
  152. <input name="refund_pic1" type="file" />
  153. <span class="error"></span> </p>
  154. <p>
  155. <input name="refund_pic2" type="file" />
  156. <span class="error"></span> </p>
  157. <p>
  158. <input name="refund_pic3" type="file" />
  159. <span class="error"></span> </p>
  160. </dd>
  161. </dl>
  162. <div class="bottom">
  163. <input type="submit" class="submit" value="{$Think.lang.submit_confirmation}" />
  164. <a href="javascript:history.go(-1);" class="dsm-btn ml10">{$Think.lang.cancel_return}</a>
  165. </div>
  166. </form>
  167. </div>
  168. </div>
  169. </div>
  170. {include file="default/member/memberrefund/member_refund_right" /}
  171. </div>
  172. <script type="text/javascript">
  173. $(function(){
  174. $('input[name="refund-type"]').click(function(){
  175. var refundtype = $('input[name="refund-type"]:checked').val();
  176. $("div[show_id]").hide();
  177. $("div[show_id='"+refundtype+"']").show();
  178. });
  179. $('#post_form1').validate({
  180. errorPlacement: function(error, element){
  181. error.appendTo(element.nextAll('span.error'));
  182. },
  183. rules : {
  184. reason_id : {
  185. required : true
  186. },
  187. refund_amount : {
  188. required : true,
  189. number : true,
  190. min:0.01,
  191. max:{$goods.goods_pay_price}
  192. },
  193. buyer_message : {
  194. required : true
  195. }
  196. },
  197. messages : {
  198. reason_id : {
  199. required : '<i class="iconfont">&#xe64c;</i>{$Think.lang.please_select_refund_reason}'
  200. },
  201. refund_amount : {
  202. required : '<i class="iconfont">&#xe64c;</i> {$Think.lang.refund_pay_refund}{$goods.goods_pay_price}',
  203. number : '<i class="iconfont">&#xe64c;</i> {$Think.lang.refund_pay_refund}{$goods.goods_pay_price}',
  204. min : '<i class="iconfont">&#xe64c;</i>{$Think.lang.refund_pay_min} 0.01',
  205. max : '<i class="iconfont">&#xe64c;</i>{$Think.lang.refund_pay_refund} {$goods.goods_pay_price}'
  206. },
  207. buyer_message : {
  208. required : '<i class="iconfont">&#xe64c;</i>{$Think.lang.please_fill_refund_instructions}'
  209. }
  210. }
  211. });
  212. $('#post_form2').validate({
  213. errorPlacement: function(error, element){
  214. error.appendTo(element.nextAll('span.error'));
  215. },
  216. rules : {
  217. reason_id : {
  218. required : true
  219. },
  220. refund_amount : {
  221. required : true,
  222. number : true,
  223. min:0.01,
  224. max:{$goods.goods_pay_price}
  225. },
  226. goods_num : {
  227. required : true,
  228. digits : true,
  229. min:1,
  230. max:{$goods.goods_num}
  231. },
  232. buyer_message : {
  233. required : true
  234. }
  235. },
  236. messages : {
  237. reason_id : {
  238. required : '<i class="iconfont">&#xe64c;</i>'
  239. },
  240. refund_amount : {
  241. required : '<i class="iconfont">&#xe64c;</i> {$Think.lang.refund_pay_refund}{$goods.goods_pay_price}',
  242. number : '<i class="iconfont">&#xe64c;</i> {$Think.lang.refund_pay_refund}{$goods.goods_pay_price}',
  243. min : '<i class="iconfont">&#xe64c;</i>{$Think.lang.refund_pay_min} 0.01',
  244. max : '<i class="iconfont">&#xe64c;</i> {$Think.lang.refund_pay_refund}{$goods.goods_pay_price}'
  245. },
  246. goods_num : {
  247. required : '<i class="iconfont">&#xe64c;</i> {$Think.lang.return_add_return}{$goods.goods_num}',
  248. digits : '<i class="iconfont">&#xe64c;</i> {$Think.lang.return_add_return}{$goods.goods_num}',
  249. min : '<i class="iconfont">&#xe64c;</i>{$Think.lang.return_number_min} 1',
  250. max : '<i class="iconfont">&#xe64c;</i>{$Think.lang.return_number_max} {$goods.goods_num}'
  251. },
  252. buyer_message : {
  253. required : '<i class="iconfont">&#xe64c;</i>{$Think.lang.fill_return_refund_instructions}'
  254. }
  255. }
  256. });
  257. });
  258. </script>
  259. {/block}