Переглянути джерело

Merge branch 'master' of http://git.iamberry.com/hexiugang/iamberry-common-parent

liujiankang 6 роки тому
батько
коміт
bf1da3b453
17 змінених файлів з 265 додано та 69 видалено
  1. 6 6
      watero-common-core/src/main/java/com/iamberry/wechat/core/entity/WechatUtils.java
  2. 2 1
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/approval/ApplyPickService.java
  3. 7 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/approval/ApprovalOrderService.java
  4. 7 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/SalesOrderService.java
  5. 23 11
      watero-rst-service/src/main/java/com/iamberry/rst/service/approval/ApplyPickServiceImpl.java
  6. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/approval/ApprovalOrderServiceImpl.java
  7. 7 1
      watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/ApprovalOrderMapper.java
  8. 3 1
      watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/applyPickMapper.xml
  9. 17 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/approvalOrderMapper.xml
  10. 9 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/SalesOrderServiceImpl.java
  11. 8 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/SalesOrderMapper.java
  12. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/salesOrderMapper.xml
  13. 77 11
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/approval/ApplyPickController.java
  14. 2 2
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/approval/ApprovalController.java
  15. 13 0
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java
  16. 1 1
      watero-rst-web/src/main/java/com/iamberry/rst/utils/StitchAttrUtil.java
  17. 73 35
      watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/sales_order_list.ftl

+ 6 - 6
watero-common-core/src/main/java/com/iamberry/wechat/core/entity/WechatUtils.java

@@ -71,12 +71,12 @@ public class WechatUtils {
 	 */
 	public static Member getUserBySession(HttpServletRequest request) {
 
-		Member m = new Member();
-		m.setUserId(11861);
-		m.setUserOpenid("oaH_GwObiozJFBypUg0wKJjQpBiU");
-		if(true){
-			return m;
-		}
+//		Member m = new Member();
+//		m.setUserId(1);
+//		m.setUserOpenid("xxx");
+//		if(true){
+//			return m;
+//		}
 
 		//获取一个cookie数组
 		Cookie[] cookies = request.getCookies();

+ 2 - 1
watero-rst-interface/src/main/java/com/iamberry/rst/faces/approval/ApplyPickService.java

@@ -1,6 +1,7 @@
 package com.iamberry.rst.faces.approval;
 
 import com.iamberry.rst.core.approval.ApprovalApplyPick;
+import com.iamberry.rst.core.approval.ApprovalProductionContract;
 import com.iamberry.rst.core.order.OrderBatch;
 import com.iamberry.rst.core.page.PageRequest;
 import com.iamberry.rst.core.page.PagedResult;
@@ -42,7 +43,7 @@ public interface ApplyPickService {
      * @param  approvalApplyPick
      * @return Integer
      */
-    Integer  save(ApprovalApplyPick  approvalApplyPick,String openid, Map<String, Object> tasknfo);
+    Integer  save(ApprovalApplyPick  approvalApplyPick, String openid, Map<String, Object> tasknfo,List<ApprovalProductionContract> approvalProductionContractList);
     /**
      * 修改数据
      * @param  approvalApplyPick

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/approval/ApprovalOrderService.java

@@ -81,6 +81,13 @@ public interface ApprovalOrderService {
      */
     List<ApprovalInfo> getApprovalInfo(ApprovalInfo approvalInfo);
 
+
+    /**
+     * 查询单个审批信息
+     * @return
+     */
+    ApprovalInfo getApprovalInfoById(Integer approvalId);
+
     /**
      * 修改审批订单项
      * @return

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/SalesOrderService.java

@@ -174,6 +174,13 @@ public interface SalesOrderService {
     Integer delOrder(String orderId);
 
     /**
+     * 删除销售订单
+     * @param id
+     * @return
+     */
+    Integer delSalesOrder(Integer id);
+
+    /**
      * 修改订单项数量
      */
     Integer updateOrderItem(SalesOrderItem salesOrderItem);

+ 23 - 11
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/ApplyPickServiceImpl.java

@@ -1,12 +1,7 @@
 package com.iamberry.rst.service.approval;
 
 import com.github.pagehelper.PageHelper;
-import com.iamberry.rst.core.approval.ApprovalApplyPick;
-import com.iamberry.rst.core.approval.ApprovalInfo;
-import com.iamberry.rst.core.approval.HistoricalRecord;
-import com.iamberry.rst.core.approval.ProcessInfo;
-import com.iamberry.rst.core.order.OrderBatch;
-import com.iamberry.rst.core.page.PageRequest;
+import com.iamberry.rst.core.approval.*;
 import com.iamberry.rst.core.page.PagedResult;
 import com.iamberry.rst.core.sys.Admin;
 import com.iamberry.rst.faces.approval.ApplyPickService;
@@ -73,22 +68,26 @@ public class ApplyPickServiceImpl  implements ApplyPickService {
      */
     @Override
     @Transactional
-    public  Integer  save(ApprovalApplyPick  approvalApplyPick, String openid, Map<String, Object> tasknfo){
+    public  Integer  save(ApprovalApplyPick  approvalApplyPick, String openid, Map<String, Object> tasknfo,List<ApprovalProductionContract> approvalProductionContractList){
+        Admin admin = sysMapper.getByOpenid(openid);
+        approvalApplyPick.setAdminId(admin.getAdminId());
+
         Integer flag = applyPickMapper.save(approvalApplyPick);
         if(flag < 1){
             throw new RuntimeException("添加提货失败");
         }
+        for (ApprovalApplyPickItem approvalApplyPickItem:approvalApplyPick.getListApplyPickItem()) {
+            approvalApplyPickItem.setApplyPickId(approvalApplyPick.getApplyPickId());
+        }
         flag = applyPickItemMapper.saveList(approvalApplyPick.getListApplyPickItem());
         if(flag < 1){
             throw new RuntimeException("添加提货项失败");
         }
 
-        Admin admin = sysMapper.getByOpenid(openid);
-
         //添加审批信息
         ApprovalInfo approvalInfo = new ApprovalInfo();
-        approvalInfo.setApprovalName(admin.getAdminName()+"的审批订单");
-        approvalInfo.setApprovalType(1);
+        approvalInfo.setApprovalName(admin.getAdminName()+"的提货订单");
+        approvalInfo.setApprovalType(2);
         approvalInfo.setApprovalStatus(1);
         approvalInfo.setAdminId(admin.getAdminId());
         approvalInfo.setApprovalApplicant(approvalApplyPick.getApplyPickName());
@@ -100,6 +99,18 @@ public class ApplyPickServiceImpl  implements ApplyPickService {
             throw new RuntimeException("添加审批信息失败");
         }
 
+        for (ApprovalProductionContract apc:approvalProductionContractList) {
+            apc.setApprovalId(approvalInfo.getApprovalId());
+            apc.setContractName(admin.getAdminName()+"的提货订单");
+            if(apc.getContractUrl() == null || "".equals(apc.getContractUrl())){
+                throw new RuntimeException("审批合同url地址为空");
+            }
+            flag = approvalOrderMapper.insertProductionContract(apc);
+            if(flag < 1){
+                throw new RuntimeException("添加合同失败");
+            }
+        }
+
         //添加审批历史记录
         ApprovalInfo info = new ApprovalInfo();
         info.setApprovalId(approvalInfo.getApprovalId());
@@ -131,6 +142,7 @@ public class ApplyPickServiceImpl  implements ApplyPickService {
         }
         return  flag;
     }
+
     /**
      * 修改数据
      * @param  approvalApplyPick

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/ApprovalOrderServiceImpl.java

@@ -191,6 +191,11 @@ public class ApprovalOrderServiceImpl implements ApprovalOrderService {
     }
 
     @Override
+    public ApprovalInfo getApprovalInfoById(Integer approvalId) {
+        return approvalOrderMapper.getApprovalInfoById(approvalId);
+    }
+
+    @Override
     public Integer updateProductionItem(ApprovalProductionItem approvalProductionItem) {
         return approvalOrderMapper.updateProductionItem(approvalProductionItem);
     }

+ 7 - 1
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/ApprovalOrderMapper.java

@@ -10,7 +10,13 @@ import java.util.List;
  */
 public interface ApprovalOrderMapper {
 
-    /**
+   /**
+    * 查询单个审批信息
+    * @return
+    */
+   ApprovalInfo getApprovalInfoById(Integer approvalId);
+
+  /**
      * 新增审批信息
      * @return
      */

+ 3 - 1
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/applyPickMapper.xml

@@ -107,10 +107,11 @@
         from tb_rst_approval_apply_pick t
         where t.apply_pick_id= #{applyPickId}
     </select>
-    <insert id="save" parameterType="ApprovalApplyPick" >
+    <insert id="save" parameterType="ApprovalApplyPick" keyProperty="applyPickId" useGeneratedKeys="true"   >
         insert into
         tb_rst_approval_apply_pick
         (
+        apply_pick_id,
         approval_id,
         admin_id,
         apply_pick_name,
@@ -121,6 +122,7 @@
         )
         values
         (
+        #{applyPickId},
         #{approvalId},
         #{adminId},
         #{applyPickName},

+ 17 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/approvalOrderMapper.xml

@@ -255,6 +255,23 @@
     </where>
   </update>
 
+  <!--查询审批信息-->
+  <select id="getApprovalInfoById" parameterType="Integer" resultType="ApprovalInfo">
+    SELECT
+    ai.approval_id,
+    ai.approval_name,
+    ai.approval_type,
+    ai.approval_status,
+    ai.approval_status_details,
+    ai.admin_id,
+    ai.approval_applicant,
+    ai.activiti_id,
+    ai.approval_details,
+    ai.approval_remark,
+    ai.approval_create_time
+    from tb_rst_approval_info ai
+    WHERE ai.approval_id = #{approvalId}
+  </select>
 
 <!--查询审批信息列表-->
   <select id="listApprovalInfo" parameterType="ApprovalInfo" resultMap="ApprovalInfoResultMap">

+ 9 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/SalesOrderServiceImpl.java

@@ -770,6 +770,15 @@ public class SalesOrderServiceImpl implements SalesOrderService {
     }
 
     @Override
+    @Transactional
+    public Integer delSalesOrder(Integer id) {
+        // 检查客诉是否使用订单,如果有使用订单,无法删除
+        salesOrderMapper.delOrderItem(id);
+        salesOrderMapper.delSalesOrder(id);
+        return 1;
+    }
+
+    @Override
     public Integer updateOrderItem(SalesOrderItem salesOrderItem) {
         return salesOrderMapper.updateOrderItem(salesOrderItem);
     }

+ 8 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/SalesOrderMapper.java

@@ -124,6 +124,14 @@ public interface SalesOrderMapper {
      * 删除订单根据Efast订单号
      */
     Integer delOrder(String orderId);
+
+    /**
+     * 删除销售订单
+     * @param id
+     * @return
+     */
+    Integer delSalesOrder(Integer id);
+
     /**
      * 修改订单项数量
      */

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/salesOrderMapper.xml

@@ -904,6 +904,11 @@
     WHERE sales_orderId = #{salesOrderId}
   </delete>
 
+  <delete id="delSalesOrder" parameterType="Integer">
+    DELETE FROM tb_rst_sales_order_info
+    WHERE sales_id = #{salesOrderId}
+  </delete>
+
   <update id="updateOrderItem" parameterType="SalesOrderItem">
     UPDATE tb_rst_sales_order_item
     set

+ 77 - 11
watero-rst-web/src/main/java/com/iamberry/rst/controllers/approval/ApplyPickController.java

@@ -2,6 +2,8 @@ package com.iamberry.rst.controllers.approval;
 
 import com.iamberry.rst.core.approval.ApprovalApplyPick;
 import com.iamberry.rst.core.approval.ApprovalApplyPickItem;
+import com.iamberry.rst.core.approval.ApprovalInfo;
+import com.iamberry.rst.core.approval.ApprovalProductionContract;
 import com.iamberry.rst.core.cm.SendProdcue;
 import com.iamberry.rst.core.order.OrderBatch;
 import com.iamberry.rst.core.page.PageRequest;
@@ -9,6 +11,7 @@ import com.iamberry.rst.core.page.PagedResult;
 import com.iamberry.rst.core.sys.Admin;
 import com.iamberry.rst.faces.approval.ApplyPickItemService;
 import com.iamberry.rst.faces.approval.ApplyPickService;
+import com.iamberry.rst.faces.approval.ApprovalOrderService;
 import com.iamberry.rst.faces.approval.ApprovalTaskService;
 import com.iamberry.rst.faces.sys.SysService;
 import com.iamberry.rst.utils.StitchAttrUtil;
@@ -23,12 +26,12 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
 @Controller
-//@RequestMapping("/wechat/applyPick")
-@RequestMapping("/applyPick")
+@RequestMapping("/wechat/applyPick")
 public class ApplyPickController {
 
     @Autowired
@@ -37,9 +40,10 @@ public class ApplyPickController {
     private ApplyPickItemService applyPickItemService;
     @Autowired
     private ApprovalTaskService approvalTaskService;
-
     @Autowired
     private SysService sysService;
+    @Autowired
+    private ApprovalOrderService approvalOrderService;
 
     /**
      * 获取已审批通过的订单
@@ -54,7 +58,6 @@ public class ApplyPickController {
     }
 
 
-
     /**
      * 获取提货列表
      * @return
@@ -69,7 +72,7 @@ public class ApplyPickController {
         String openId = WechatUtils.getUserBySession(request).getUserOpenid();
         Admin admin = sysService.getByOpenid(openId);
         if(admin == null){
-            return ResponseJson.getFAILURE();
+            return new ResponseJson(500, "FAILURE", 500);
         }
         ApprovalApplyPick approvalApplyPick = new ApprovalApplyPick();
         approvalApplyPick.setAdminId(admin.getAdminId());
@@ -92,25 +95,88 @@ public class ApplyPickController {
      */
     @ResponseBody
     @RequestMapping("/addApplyPick")
-    public ResponseJson addApplyPick(HttpServletRequest request,ApprovalApplyPick approvalApplyPick,String listApplyPickItemJson) {
-        ResponseJson rj = ResponseJson.getFAILURE();
+    public ResponseJson addApplyPick(HttpServletRequest request,ApprovalApplyPick approvalApplyPick,String listApplyPickItemJson,String imageJson) {
+        ResponseJson rj = new ResponseJson(500, "FAILURE", 500);
         String openId = WechatUtils.getUserBySession(request).getUserOpenid();
 
+        Map<String,Object>  map = verification(approvalApplyPick);
+        boolean flag = (boolean) map.get("status");
+        if(!flag){
+            rj.setResultMsg((String) map.get("msg"));
+            return rj;
+        }
+
+        JSONArray imageJSONArray = JSONArray.fromObject(imageJson);
+        List<ApprovalProductionContract> approvalProductionContractList = (List) JSONArray.toCollection(imageJSONArray, ApprovalProductionContract.class);
+
         JSONArray jsonArray = JSONArray.fromObject(listApplyPickItemJson);
         List<ApprovalApplyPickItem> listApplyPickItem = (List) JSONArray.toCollection(jsonArray, ApprovalApplyPickItem.class);
         approvalApplyPick.setListApplyPickItem(listApplyPickItem);
-
+        approvalApplyPick.setApplyPickStruts(1);
         //获取审批任务id
-        Map<String, Object> taskinfo = approvalTaskService.salesmanSubmitApply(1);
+        Map<String, Object> taskinfo = approvalTaskService.salesmanSubmitApply(2);
         try{
-          applyPickService.save(approvalApplyPick,openId,taskinfo);
+          applyPickService.save(approvalApplyPick,openId,taskinfo,approvalProductionContractList);
         }catch (Exception e){
             e.printStackTrace();
-            rj.setResultMsg("添加提货失败");
+            rj.setResultMsg("添加提货失败,"+ e.getMessage());
             return rj;
         }
         rj = ResponseJson.getSUCCESS();
         return rj;
     }
 
+    /**
+     * 验证提货申请
+     * @param approvalApplyPick
+     * @return
+     */
+    public Map<String,Object> verification(ApprovalApplyPick approvalApplyPick){
+        Map<String,Object> map = new HashMap<>();
+        map.put("status",false);
+        if(approvalApplyPick.getApplyPickName() == null || "".equals(approvalApplyPick.getApplyPickName())){
+            map.put("msg","姓名为空");
+            return map;
+        }
+        if(approvalApplyPick.getApplyPickTel() == null || "".equals(approvalApplyPick.getApplyPickTel())){
+            map.put("msg","电话号码为空");
+            return map;
+        }
+        if(approvalApplyPick.getApprovalId() == null || "".equals(approvalApplyPick.getApprovalId())){
+            map.put("msg","未选择审批订单");
+            return map;
+        }else{
+            ApprovalInfo approvalInfo = approvalOrderService.getApprovalInfoById(approvalApplyPick.getApprovalId());
+            if(approvalInfo == null){
+                map.put("msg","审批订单信息id错误");
+                return map;
+            }
+        }
+        map.put("status",true);
+        map.put("msg","success");
+        return map;
+    }
+
+    /**
+     * 获取提货信息
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping("/getApplyPick")
+    public ResponseJson getApplyPick(HttpServletRequest request,Integer applyPickId) {
+        if(applyPickId == null){
+           return new ResponseJson(500, "FAILURE", 500);
+        }
+        ApprovalApplyPick approvalApplyPick = applyPickService.getApprovalApplyPickById(applyPickId);
+
+        ApprovalApplyPickItem approvalApplyPickItem = new ApprovalApplyPickItem();
+        approvalApplyPickItem.setApplyPickId(applyPickId);
+        List<ApprovalApplyPickItem> approvalApplyPickItemList = applyPickItemService.getApprovalApplyPickItemList(approvalApplyPickItem);
+        approvalApplyPick.setListApplyPickItem(approvalApplyPickItemList);
+
+        ResponseJson rj = ResponseJson.getSUCCESS();
+        rj.addResponseKeyValue("approvalApplyPick",approvalApplyPick);
+        return rj;
+    }
+
 }

+ 2 - 2
watero-rst-web/src/main/java/com/iamberry/rst/controllers/approval/ApprovalController.java

@@ -244,12 +244,12 @@ public class ApprovalController {
                 if(taskMap == null){
                     return  ResponseJson.getFAILURE();
                 }
-                if(taskMap.get("status") == 1){//没有下一个审批人,修改审批任务状态为已审批通过
+                if((Integer) taskMap.get("status") == 1){//没有下一个审批人,修改审批任务状态为已审批通过
                     info.setApprovalStatus(2);
                     if(approvalOrderService.updateApprovalInfo(info) < 1){
                         return  ResponseJson.getFAILURE();
                     }
-                }else if(taskMap.get("status") == 0){//还有下一个审批人,需要增加审批历史任务
+                }else if((Integer) taskMap.get("status") == 0){//还有下一个审批人,需要增加审批历史任务
                     if(taskMap.get("users") == null){
                         return  ResponseJson.getFAILURE();
                     }

+ 13 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java

@@ -1087,4 +1087,17 @@ public class AdminSalesOrderController {
         Integer res = storeInfoService.addStoreInfo(storeInfo);
         return res <= 0 ? ResponseJson.getFAILURE() : ResponseJson.getSUCCESS();
     }
+
+    /**
+     * 删除订单
+     * @param id
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping("/delSalesOrder")
+    @RequiresPermissions("salesOrder:select:salesOrder")
+    public ResponseJson delSalesOrder(@RequestParam("id") Integer id) {
+        Integer res = salesOrderService.delSalesOrder(id);
+        return res <= 0 ? ResponseJson.getFAILURE() : ResponseJson.getSUCCESS();
+    }
 }

+ 1 - 1
watero-rst-web/src/main/java/com/iamberry/rst/utils/StitchAttrUtil.java

@@ -154,7 +154,7 @@ public class StitchAttrUtil {
     /**
      * 判断是否还有下一页
      * @param pagedResult
-     * @return
+     * @return false没有下一页   true 有下一页
      */
     public boolean getLastPage( PagedResult<?> pagedResult){
         /* 当前页 >= 总页面数目 */

+ 73 - 35
watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/sales_order_list.ftl

@@ -194,30 +194,35 @@
                         ${(order.salesCreateTime?string("HH:mm:ss"))!''}
                     </td>
                     <td>
-                        <a style="text-decoration:none" href="javascript:void(0);" title="详情" onclick="sales_order_detail(${order.salesId!''})">
-                            <font color=#06c>详情</font>
-                        </a><br/>
+                        <a style="text-decoration:none" href="javascript:void(0);" title="订单详情" alt="订单详情" onclick="sales_order_detail(${order.salesId!''})">
+                            <i class="Hui-iconfont">&#xe695;</i>
+                        </a>
+                        <a style="text-decoration:none" href="javascript:void(0);" title="修改订单" alt="修改订单" onclick="sales_order_update(${order.salesId!''})">
+                            <i class="Hui-iconfont">&#xe6df;</i>
+                        </a>
 
                         <#if order.salesStatus == 0>
-                            <a style="text-decoration:none" href="javascript:void(0);" title="修改" onclick="sales_order_update(${order.salesId!''})">
-                                <font color=#06c>修改</font>
-                            </a><br/>
-                        </#if>
-                        <#if order.salesStatus == 0>
-                            <a style="text-decoration:none" href="javascript:void(0);" title="确认订单" onclick="confirm_one(${order.salesId!''})">
-                                <font color=#06c>确认订单</font>
-                            </a><br/>
+                            <a style="text-decoration:none" href="javascript:void(0);" title="确认订单" alt="确认订单" onclick="confirm_one(${order.salesId!''})">
+                                <i class="Hui-iconfont">&#xe615;</i>
+                            </a>
+                        <#elseif order.salesStatus == 1>
+                            <a style="text-decoration:none" href="javascript:void(0);" title="分配物流" onclick="distribution_express(${order.salesId!''})">
+                                <i class="Hui-iconfont">&#xe669;</i>
+                            </a>
+                            <#if order.salesShippingStatus != 1>
+                                <a style="text-decoration:none" href="javascript:void(0);" title="手动发货" onclick="distribution_postFirm('手动发货','${path}/admin/await_send/to_manual_delivery?salesId=${order.salesId}','570','450');">
+                                    <i class="Hui-iconfont">&#xe642;</i>
+                                </a>
+                            </#if>
                         </#if>
-
-                        <a style="text-decoration:none" href="javascript:void(0);" title="分配物流" onclick="distribution_express(${order.salesId!''})">
-                            <font color=#06c>分配物流</font>
-                        </a><br/>
-
                         <#if order.salesStatus != 3>
-                            <a style="text-decoration:none" href="javascript:void(0);" title="确认订单" onclick="invalidation_order(${order.salesId!''})">
-                                <font color=#06c>作废订单</font>
-                            </a><br/>
+                            <a style="text-decoration:none" href="javascript:void(0);" title="作废订单" onclick="invalidation_order(${order.salesId!''})">
+                                <i class="Hui-iconfont">&#xe631;</i>
+                            </a>
                         </#if>
+                        <a style="text-decoration:none" href="javascript:void(0);" title="删除订单" onclick="delSalesOrder(${order.salesId!''})">
+                            <i class="Hui-iconfont">&#xe609;</i>
+                        </a><br/>
                     </td>
                 </tr>
                 </#list>
@@ -259,6 +264,11 @@
         window.location.href= "${path}/admin/salesOrder/select_sales_order?salesId="+orderSaleId;
     }
 
+    /*手动发货*/
+    function distribution_postFirm(title,url,w,h){
+        layer_show(title,url,w,h);
+    }
+
     /**
      *跳转到修改页面
      * @param employee
@@ -636,24 +646,52 @@
          * 作废订单
          */
         function invalidation_order(salesId) {
-            $.ajax({
-                type:'POST',
-                url: '${path}/admin/salesOrder/invalidationOrder',
-                data:{
-                    "salesId" : salesId
-                },
-                dataType: 'json',
-                success:function(res) {
-                    if(res.resultCode == 200 && res.returnCode == 200){
-                        location.reload();
-                    }else{
-                        layer.alert("确认订单异常!", function(index){
+            layer.confirm('是否确认作废(作废后重新确认即可恢复)',function(index){
+                $.ajax({
+                    type:'POST',
+                    url: '${path}/admin/salesOrder/invalidationOrder',
+                    data:{
+                        "salesId" : salesId
+                    },
+                    dataType: 'json',
+                    success:function(res) {
+                        if(res.resultCode == 200 && res.returnCode == 200){
+                            location.reload();
+                        }else{
+                            layer.alert("作废失败!", function(index){
+                                layer.close(index);
+                            });
                             layer.close(index);
-                        });
-                        layer.close(index);
+                        }
+                        return false;
                     }
-                    return false;
-                }
+                });
+            });
+        }
+        /**
+         * 删除订单
+         */
+        function delSalesOrder(salesId) {
+            layer.confirm('是否确认删除,删除后无法恢复?',function(index){
+                $.ajax({
+                    type:'POST',
+                    url: '${path}/admin/salesOrder/delSalesOrder',
+                    data:{
+                        "id" : salesId
+                    },
+                    dataType: 'json',
+                    success:function(res) {
+                        if(res.resultCode == 200 && res.returnCode == 200){
+                            location.reload();
+                        }else{
+                            layer.alert("删除失败!", function(index){
+                                layer.close(index);
+                            });
+                            layer.close(index);
+                        }
+                        return false;
+                    }
+                });
             });
         }
     </script>