瀏覽代碼

新增修改快递功能

hyq 6 年之前
父節點
當前提交
0eafad2ce1

+ 17 - 0
kmall-admin/src/main/java/com/kmall/admin/controller/OrderController.java

@@ -787,4 +787,21 @@ public class OrderController {
         return datdString;
     }
 
+    /**
+     * 订单修改快递
+     */
+    @RequestMapping("/updateExpressInfo")
+    @RequiresPermissions("order:updateExpressInfo")
+    public Object updateExpressInfo(@RequestBody OrderEntity orderEntity) {
+        OrderEntity orderInfo = orderService.queryObject(orderEntity.getId());
+        if (orderInfo != null){
+            OrderEntity order = new OrderEntity();
+            order.setId(orderInfo.getId());
+            order.setShippingName(orderEntity.getShippingName());
+            order.setShippingCode(orderEntity.getShippingCode());
+            order.setShippingNo(orderEntity.getShippingNo());
+            orderService.update(order);
+        }
+        return R.ok();
+    }
 }

+ 22 - 0
kmall-admin/src/main/webapp/WEB-INF/page/shop/order.html

@@ -66,12 +66,34 @@
                 #if($shiro.hasPermission("shop:comment"))
                 <i-button type="info" @click="openComment">评价</i-button>
                 #end
+                #if($shiro.hasPermission("order:updateExpressInfo"))
+                <i-button type="info" @click="getExpressInfo">修改快递信息</i-button>
+                #end
             </div>
         </Row>
         <table id="jqGrid"></table>
         <div id="jqGridPager"></div>
     </div>
 
+    <Card v-show="showDiv == 8">
+        <p slot="title">{{title}}</p>
+        <i-form ref="formValidate" :model="order" :rules="ruleValidate" :label-width="100">
+            <Form-item label="快递公司名称" prop="shippingName">
+                <i-input v-model="order.shippingName" placeholder="快递公司"/>
+            </Form-item>
+            <Form-item label="快递简写" prop="shippingCode">
+                <i-input v-model="order.shippingCode" placeholder="快递简写"/>
+            </Form-item>
+            <Form-item label="配送单号" prop="shippingNo">
+                <i-input v-model="order.shippingNo" placeholder="快递单号"/>
+                <i-input v-model="order.id" placeholder="快递单号" hidden/>
+            </Form-item>
+            <Form-item>
+                <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>
+                <i-button type="warning" @click="reload" style="margin-left: 8px"/>返回</i-button>
+            </Form-item>
+        </i-form>
+    </Card>
     <Card v-show="showDiv == 7">
         <p slot="title">清关信息</p>
         <i-form :label-width="150">

+ 39 - 1
kmall-admin/src/main/webapp/js/shop/order.js

@@ -227,7 +227,12 @@ let vm = new Vue({
         orderGoodsList: [],
         stores: [],
         orderStatusList:[],
-        payStatusList:[]
+        payStatusList:[],
+        ruleValidate: {
+            /*name: [
+                {required: true, message: '名称不能为空', trigger: 'blur'}
+            ]*/
+        }
     },
     methods: {
         query: function () {
@@ -253,6 +258,39 @@ let vm = new Vue({
                 vm.title = "快递信息";
             });
         },
+        getExpressInfo: function (event) {
+            let id = getSelectedRow();
+            if (id == null) {
+                return;
+            }
+            $.get("../order/infos/" + id, function (r) {
+                vm.order = r.order;
+                vm.showDiv = 8;
+                vm.title = "修改快递信息";
+            });
+        },
+        updateExpressInfo: function (event) {
+            $.ajax({
+                type: "POST",
+                url: '../order/updateExpressInfo',
+                contentType: "application/json",
+                data: JSON.stringify(vm.order),
+                success: function (r) {
+                    if (r.code === 0) {
+                        alert('操作成功', function (index) {
+                            vm.reload();
+                        });
+                    } else {
+                        alert(r.msg);
+                    }
+                }
+            });
+        },
+        handleSubmit: function (name) {
+            // handleSubmitValidate(this, name, function () {
+            vm.updateExpressInfo()
+            // });
+        },
         getProcess: function (event) {
             let orderSn = getSelectedRowData().orderSn;
             if (orderSn == null) {