tb-transport-refund-deal.html 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>货运订单退款表-详情</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  6. <meta name="viewport"
  7. content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  8. <!-- 所有的 css js 资源 -->
  9. <link rel="stylesheet" href="../../static/kj/element-ui/theme-chalk/index.css">
  10. <link rel="stylesheet" href="../../static/sa.css">
  11. <script src="../../static/kj/vue.min.js"></script>
  12. <script src="../../static/kj/element-ui/index.js"></script>
  13. <script src="../../static/kj/httpVueLoader.js"></script>
  14. <script src="../../static/kj/jquery.min.js"></script>
  15. <script src="../../static/kj/layer/layer.js"></script>
  16. <script src="../../static/sa.js"></script>
  17. <style type="text/css">
  18. .c-panel .c-label {
  19. width: 8em;
  20. }
  21. .c-panel .el-form .el-input{
  22. width: 250px;
  23. }
  24. .c-panel .el-form .el-textarea {
  25. width: 600px;
  26. }
  27. .info-table {
  28. width: 100%;
  29. border-collapse: collapse;
  30. margin-bottom: 20px;
  31. }
  32. .info-table th, .info-table td {
  33. border: 1px solid #ebeef5;
  34. padding: 12px 10px;
  35. font-size: 14px;
  36. line-height: 1.5;
  37. }
  38. .info-table th {
  39. border: 1px solid darkgray;
  40. text-align: left;
  41. height: 22px;
  42. padding: 8px;
  43. background-color: #dddddd;
  44. width: 15%;
  45. min-width: 120px;
  46. }
  47. .info-table td {
  48. border: 1px solid darkgray;
  49. text-align: left;
  50. width: 35%;
  51. }
  52. h3 {
  53. margin: 20px 0 15px 0;
  54. color: #303133;
  55. font-size: 16px;
  56. font-weight: bold;
  57. }
  58. </style>
  59. </head>
  60. <body>
  61. <div class="vue-box sbot" style="display: none;" :style="'display: block;'">
  62. <!-- ------- 内容部分 ------- -->
  63. <div class="s-body">
  64. <div class="c-panel">
  65. <el-form v-if="m">
  66. <h3>货运单信息</h3>
  67. <table class="info-table">
  68. <tr>
  69. <th>货运单号</th>
  70. <td>{{m.orderId}}</td>
  71. <th>订单状态</th>
  72. <td>
  73. <span v-if="m.order.status === 0">待进场</span>
  74. <span v-else-if="m.order.status === 1">待装货</span>
  75. <span v-else-if="m.order.status === 2">已装货</span>
  76. <span v-else-if="m.order.status === 3">运输中</span>
  77. <span v-else-if="m.order.status === 4">待卸货</span>
  78. <span v-else-if="m.order.status === 5">卸货中</span>
  79. <span v-else-if="m.order.status === 6">已卸货</span>
  80. <span v-else-if="m.order.status === 7">已结算</span>
  81. <span v-else-if="m.order.status === 11">退款中</span>
  82. <span v-else-if="m.order.status === 12">已退款</span>
  83. </td>
  84. </tr>
  85. <tr>
  86. <th>货主</th>
  87. <td>{{m.shipperName}}</td>
  88. <th>商品名称</th>
  89. <td>{{m.order.itemName}}</td>
  90. </tr>
  91. <tr>
  92. <th>起运地</th>
  93. <td>{{m.order.originAddress}}</td>
  94. <th>目的地</th>
  95. <td>{{m.order.destAddress}}</td>
  96. </tr>
  97. <tr>
  98. <th>接单司机</th>
  99. <td>{{m.order.driverName}}</td>
  100. <th>接单车辆</th>
  101. <td>{{m.order.plateNo}}</td>
  102. </tr>
  103. <tr>
  104. <th>运输里程</th>
  105. <td>{{m.order.distance}}公里</td>
  106. <th>运输单价</th>
  107. <td>{{m.order.unitPrice}}元/公里</td>
  108. </tr>
  109. <tr>
  110. <th>应收金额</th>
  111. <td>{{m.receivableAmount}}元</td>
  112. <th>实收金额</th>
  113. <td>{{m.receivedAmount}}元</td>
  114. </tr>
  115. </table>
  116. <h3>退款申请信息</h3>
  117. <table class="info-table">
  118. <tr>
  119. <th>申请理由</th>
  120. <td>{{m.reason}}</td>
  121. <th>申请说明</th>
  122. <td>{{m.reasonMemo}}</td>
  123. </tr>
  124. <tr>
  125. <th>货主意见</th>
  126. <td>
  127. <span v-if="m.shipperAgree === 0">未确认</span>
  128. <span v-else-if="m.shipperAgree === 1">同意</span>
  129. <span v-else-if="m.shipperAgree === 2">拒绝</span>
  130. </td>
  131. <th>司机意见</th>
  132. <td>
  133. <span v-if="m.driverAgree === 0">未确认</span>
  134. <span v-else-if="m.driverAgree === 1">同意</span>
  135. <span v-else-if="m.driverAgree === 2">拒绝</span>
  136. </td>
  137. </tr>
  138. <tr>
  139. <th>申请时间</th>
  140. <td>{{m.applyTime}}</td>
  141. <th>处理状态</th>
  142. <td>
  143. <span v-if="m.dealStatus === 0">未处理</span>
  144. <span v-else>已处理</span>
  145. </td>
  146. </tr>
  147. </table>
  148. <h3>退款处理</h3>
  149. <template v-if="m.dealStatus == 0">
  150. <table class="info-table">
  151. <tr>
  152. <th><span style="color: red;">*</span>处理结果</th>
  153. <td colspan="3">
  154. <el-select v-model="dealInfo.dealStatus" style="width: 100%;">
  155. <el-option label="确认退款:费用返还货主" value="1"></el-option>
  156. <el-option label="关闭退款:订单继续" value="2"></el-option>
  157. </el-select>
  158. </td>
  159. </tr>
  160. <tr>
  161. <th>处理备注</th>
  162. <td colspan="3">
  163. <el-input v-model="dealInfo.dealMemo" type="textarea" :rows="2" placeholder="请输入处理备注" />
  164. </td>
  165. </tr>
  166. </table>
  167. </template>
  168. <template v-else>
  169. <table class="info-table">
  170. <tr>
  171. <th>处理时间</th>
  172. <td>{{m.dealTime}}</td>
  173. <th>处理备注</th>
  174. <td>{{m.dealMemo}}</td>
  175. </tr>
  176. </table>
  177. </template>
  178. </el-form>
  179. </div>
  180. </div>
  181. <!-- ------- 底部按钮 ------- -->
  182. <div class="s-foot">
  183. <el-button type="success" @click="doDeal()">确定处理</el-button>
  184. <el-button @click="sa.closeCurrIframe()">取消</el-button>
  185. </div>
  186. </div>
  187. <script>
  188. var app = new Vue({
  189. components: {
  190. "sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue')
  191. },
  192. el: '.vue-box',
  193. data: {
  194. refundNo: sa.p('refundNo', 0), // 获取数据ID
  195. m: null,
  196. dealInfo: {
  197. refundNo: sa.p('refundNo', 0),
  198. dealStatus: '',
  199. dealMemo: ''
  200. }
  201. },
  202. methods: {
  203. doDeal() {
  204. let m = this.dealInfo;
  205. sa.checkNull(m.dealStatus, '请选择 [处理结果]');
  206. sa.checkNull(m.dealMemo, '请输入 [处理备注]');
  207. sa.ajax('/transport-server/TbTransportRefund/dealRefund', m, function (res) {
  208. sa.alert('处理成功');
  209. sa.closeCurrIframe();
  210. }.bind(this));
  211. }
  212. },
  213. mounted: function () {
  214. sa.ajax('/transport-server/TbTransportRefund/getById?refundNo=' + this.refundNo, function (res) {
  215. this.m = res.data;
  216. if (res.data == null) {
  217. sa.alert('未能查找到 refundNo=' + this.refundNo + " 详细数据");
  218. }
  219. }.bind(this))
  220. }
  221. })
  222. </script>
  223. </body>
  224. </html>