From 11bb86a81c99672e5e51ca7289f49a57346739e8 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Mon, 12 Aug 2024 23:23:37 +0800
Subject: [PATCH] 1

---
 src/main/java/project/admin/AdminFuturesOrderController.java |  564 ++++++++++++++++++++++++++++++++------------------------
 1 files changed, 324 insertions(+), 240 deletions(-)

diff --git a/src/main/java/project/admin/AdminFuturesOrderController.java b/src/main/java/project/admin/AdminFuturesOrderController.java
index c2c13af..3fe21b0 100644
--- a/src/main/java/project/admin/AdminFuturesOrderController.java
+++ b/src/main/java/project/admin/AdminFuturesOrderController.java
@@ -1,5 +1,6 @@
 package project.web.admin;
 
+import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -7,10 +8,15 @@
 
 import javax.servlet.http.HttpServletRequest;
 
+import kernel.bo.RecordObjectMapper;
+import kernel.web.ApplicationUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.jdbc.core.BeanPropertyRowMapper;
+import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 
@@ -21,9 +27,13 @@
 import kernel.web.PageActionSupport;
 import project.Constants;
 import project.futures.AdminFuturesOrderService;
+import project.futures.FuturesOrder;
 import project.futures.FuturesOrderService;
+import project.futures.FuturesRedisKeys;
 import project.item.ItemService;
 import project.item.model.Item;
+import project.redis.RedisHandler;
+import project.wallet.Wallet;
 
 /**
  * 交割合约单
@@ -31,264 +41,338 @@
 @RestController
 public class AdminFuturesOrderController extends PageActionSupport {
 
-	@Autowired
-	private ItemService itemService;
-	
-	@Autowired
-	private FuturesOrderService futuresOrderService;
-	
-	@Autowired
-	private AdminFuturesOrderService adminFuturesOrderService;
+    @Autowired
+    private ItemService itemService;
 
-	private final String action = "normal/adminFuturesOrderAction!";
-	
-	private Logger logger = LoggerFactory.getLogger(AdminFuturesOrderController.class);
-	
-	/**
-	 * 获取 交割合约单 列表
-	 * 
-	 * symbol_para 币种
-	 * direction_para 方向
-	 * volume_para 下单金额
-	 * symbol_map 上线币种
-	 */
-	@RequestMapping(action + "list.action")
-	public ModelAndView list(HttpServletRequest request) {
-		String pageNoStr = request.getParameter("pageNo");
-		String message = request.getParameter("message");
-		String error = request.getParameter("error");
-		String status_para = request.getParameter("status_para");
-		String rolename_para = request.getParameter("rolename_para");
-		String name_para = request.getParameter("name_para");		
-		String order_no_para = request.getParameter("order_no_para");
-		String symbol_para = request.getParameter("symbol_para");
-		String direction_para = request.getParameter("direction_para");
-		String volume_para = request.getParameter("volume_para");
+    @Autowired
+    private FuturesOrderService futuresOrderService;
 
-		ModelAndView modelAndView = new ModelAndView();
-		modelAndView.setViewName("futures_order_list");
-		
-		Map<String, String> symbol_map = new HashMap<String, String>();
+    protected RedisHandler redisHandler;
 
-		int pageNo=1;
-		Page page=null;
-		int pageSize=30;
-		try {
-			List<Item> items = this.itemService.cacheGetAll();			
-			for (Item item : items) {
-				symbol_map.put(item.getSymbol(), item.getSymbol());
-			}
-			
-			pageNo=checkAndSetPageNo(pageNoStr);
+    @Autowired
+    private AdminFuturesOrderService adminFuturesOrderService;
 
-			Double volume_para_double = null;
-			if (StringUtils.isNullOrEmpty(volume_para)) {
-				volume_para_double = null;
-			} else {
-				if (!StringUtils.isDouble(volume_para)) {
-					throw new BusinessException("下单金额不是浮点数");
-				}
-				if (Double.valueOf(volume_para).doubleValue() < 0) {
-					throw new BusinessException("下单金额不能小于0");
-				}
-				
-				volume_para_double = Double.valueOf(volume_para).doubleValue();
-			}
-			
-			String loginPartyId = this.getLoginPartyId();
-			page = this.adminFuturesOrderService.pagedQuery(pageNo, pageSize, status_para,
-					rolename_para, loginPartyId, name_para, order_no_para, symbol_para, direction_para, volume_para_double);
+    private final String action = "normal/adminFuturesOrderAction!";
 
-			List<Map> list = page.getElements();
-			for (int i = 0; i < list.size(); i++) {
-				Map map = list.get(i);
-				if (null == map.get("rolename")) {
-					map.put("roleNameDesc", "");
-				} else {
-					String roleName = map.get("rolename").toString();
-					map.put("roleNameDesc",Constants.ROLE_MAP.containsKey(roleName) ? Constants.ROLE_MAP.get(roleName) : roleName);
-				}
-			}
+    private Logger logger = LoggerFactory.getLogger(AdminFuturesOrderController.class);
 
-		} catch (BusinessException e) {
-			modelAndView.addObject("error", e.getMessage());
-			return modelAndView;
-		} catch (Throwable t) {
-			logger.error(" error ", t);
-			modelAndView.addObject("error", "[ERROR] " + t.getMessage());
-			return modelAndView;
-		}
+    /**
+     * 获取 交割合约单 列表
+     * <p>
+     * symbol_para 币种
+     * direction_para 方向
+     * volume_para 下单金额
+     * symbol_map 上线币种
+     */
+    @RequestMapping(action + "list.action")
+    public ModelAndView list(HttpServletRequest request) {
+        String pageNoStr = request.getParameter("pageNo");
+        String message = request.getParameter("message");
+        String error = request.getParameter("error");
+        String status_para = request.getParameter("status_para");
+        String rolename_para = request.getParameter("rolename_para");
+        String name_para = request.getParameter("name_para");
+        String order_no_para = request.getParameter("order_no_para");
+        String symbol_para = request.getParameter("symbol_para");
+        String direction_para = request.getParameter("direction_para");
+        String volume_para = request.getParameter("volume_para");
 
-		modelAndView.addObject("pageNo", pageNo);
-		modelAndView.addObject("pageSize", pageSize);
-		modelAndView.addObject("page", page);
-		modelAndView.addObject("message", message);
-		modelAndView.addObject("error", error);
-		modelAndView.addObject("status_para", status_para);
-		modelAndView.addObject("rolename_para", rolename_para);
-		modelAndView.addObject("name_para", name_para);
-		modelAndView.addObject("order_no_para", order_no_para);
-		modelAndView.addObject("symbol_para", symbol_para);
-		modelAndView.addObject("direction_para", direction_para);
-		modelAndView.addObject("volume_para", volume_para);
-		modelAndView.addObject("symbol_map", symbol_map);
-		return modelAndView;
-	}
+        ModelAndView modelAndView = new ModelAndView();
+        modelAndView.setViewName("futures_order_list");
 
-	/**
-	 * 获取 交割合约单 列表
-	 * 
-	 * symbol_para 币种
-	 * direction_para 方向
-	 * volume_para 下单金额
-	 */
-	@RequestMapping(action + "holdings_list.action")
-	public ModelAndView holdings_list(HttpServletRequest request) {
-		String pageNoStr = request.getParameter("pageNo");
-		String message = request.getParameter("message");
-		String error = request.getParameter("error");
-		String rolename_para = request.getParameter("rolename_para");
-		String name_para = request.getParameter("name_para");		
-		String order_no_para = request.getParameter("order_no_para");
-		String symbol_para = request.getParameter("symbol_para");
-		String direction_para = request.getParameter("direction_para");
-		String volume_para = request.getParameter("volume_para");
+        Map<String, String> symbol_map = new HashMap<String, String>();
 
-		ModelAndView modelAndView = new ModelAndView();
-		modelAndView.setViewName("futures_holdings_list");
+        int pageNo = 1;
+        Page page = null;
+        int pageSize = 30;
+        try {
+            List<Item> items = this.itemService.cacheGetAll();
+            for (Item item : items) {
+                symbol_map.put(item.getSymbol(), item.getSymbol());
+            }
 
-		int pageNo=1;
-		int pageSize=30;
-		try {
-			pageNo=checkAndSetPageNo(pageNoStr);
-			if (StringUtils.isNullOrEmpty(volume_para)) {
-				throw new BusinessException("下单金额必填");
-			}
-			if (!StringUtils.isDouble(volume_para)) {
-				throw new BusinessException("下单金额不是浮点数");
-			}
-			if (Double.valueOf(volume_para).doubleValue() <= 0) {
-				throw new BusinessException("下单金额不能小于等于0");
-			}
-			
-			double volume_para_double = Double.valueOf(volume_para).doubleValue();
-			
-			String loginPartyId = this.getLoginPartyId();
-			page = this.adminFuturesOrderService.pagedQuery(pageNo, pageSize, "submitted",
-					rolename_para, loginPartyId, name_para, order_no_para, symbol_para, direction_para, volume_para_double);
+            pageNo = checkAndSetPageNo(pageNoStr);
 
-			List<Map> list = page.getElements();
-			for (int i = 0; i < list.size(); i++) {
-				Map map = list.get(i);
-				if (null == map.get("rolename")) {
-					map.put("roleNameDesc", "");
-				} else {
-					String roleName = map.get("rolename").toString();
-					map.put("roleNameDesc",
-							Constants.ROLE_MAP.containsKey(roleName) ? Constants.ROLE_MAP.get(roleName) : roleName);
-				}
-			}
+            Double volume_para_double = null;
+            if (StringUtils.isNullOrEmpty(volume_para)) {
+                volume_para_double = null;
+            } else {
+                if (!StringUtils.isDouble(volume_para)) {
+                    throw new BusinessException("下单金额不是浮点数");
+                }
+                if (Double.valueOf(volume_para).doubleValue() < 0) {
+                    throw new BusinessException("下单金额不能小于0");
+                }
 
-		} catch (BusinessException e) {
-			modelAndView.addObject("error", e.getMessage());
-			return modelAndView;
-		} catch (Throwable t) {
-			logger.error(" error ", t);
-			modelAndView.addObject("error", "[ERROR] " + t.getMessage());
-			return modelAndView;
-		}
+                volume_para_double = Double.valueOf(volume_para).doubleValue();
+            }
 
-		modelAndView.addObject("pageNo",pageNo);
-		modelAndView.addObject("pageSize",pageSize);
-		modelAndView.addObject("page", page);
-		modelAndView.addObject("message", message);
-		modelAndView.addObject("error", error);
-		modelAndView.addObject("rolename_para", rolename_para);
-		modelAndView.addObject("name_para", name_para);
-		modelAndView.addObject("order_no_para", order_no_para);
-		modelAndView.addObject("symbol_para", symbol_para);
-		modelAndView.addObject("direction_para", direction_para);
-		modelAndView.addObject("volume_para", volume_para);
-		return modelAndView;
-	}
+            String loginPartyId = this.getLoginPartyId();
+            page = this.adminFuturesOrderService.pagedQuery(pageNo, pageSize, status_para,
+                    rolename_para, loginPartyId, name_para, order_no_para, symbol_para, direction_para, volume_para_double);
 
-	/**
-	 * ajax定时获取表
-	 * 
-	 * symbol_para 币种
-	 * direction_para 方向
-	 * volume_para 下单金额
-	 */
-	@RequestMapping(action + "getValue.action")
-	public String getValue(HttpServletRequest request) {
-		String pageNoStr = request.getParameter("pageNo");
-		String rolename_para = request.getParameter("rolename_para");
-		String name_para = request.getParameter("name_para");		
-		String order_no_para = request.getParameter("order_no_para");
-		String symbol_para = request.getParameter("symbol_para");
-		String direction_para = request.getParameter("direction_para");
-		String volume_para = request.getParameter("volume_para");
-		
-		int pageNo=1;
-		Page page=null;
-		int pageSize=30;
-		try {
-			pageNo=checkAndSetPageNo(pageNoStr);
-			if (StringUtils.isNullOrEmpty(volume_para)) {
-				throw new BusinessException("下单金额必填");
-			}
-			if (!StringUtils.isDouble(volume_para)) {
-				throw new BusinessException("下单金额不是浮点数");
-			}
-			if (Double.valueOf(volume_para).doubleValue() <= 0) {
-				throw new BusinessException("下单金额不能小于等于0");
-			}
-			
-			double volume_para_double = Double.valueOf(volume_para).doubleValue();
-			
-			String loginPartyId = this.getLoginPartyId();
-			page = this.adminFuturesOrderService.pagedQuery(pageNo, pageSize, "submitted",
-					rolename_para, loginPartyId, name_para, order_no_para, symbol_para, direction_para, volume_para_double);
+            List<Map> list = page.getElements();
+            for (int i = 0; i < list.size(); i++) {
+                Map map = list.get(i);
+                if (null == map.get("rolename")) {
+                    map.put("roleNameDesc", "");
+                } else {
+                    String roleName = map.get("rolename").toString();
+                    map.put("roleNameDesc", Constants.ROLE_MAP.containsKey(roleName) ? Constants.ROLE_MAP.get(roleName) : roleName);
+                }
+            }
 
-		} catch (BusinessException e) {
-			return JsonUtils.getJsonString(new ArrayList());
-		} catch (Throwable t) {
-			logger.error(" error ", t);
-			return JsonUtils.getJsonString(new ArrayList());
-		}
+        } catch (BusinessException e) {
+            modelAndView.addObject("error", e.getMessage());
+            return modelAndView;
+        } catch (Throwable t) {
+            logger.error(" error ", t);
+            modelAndView.addObject("error", "[ERROR] " + t.getMessage());
+            return modelAndView;
+        }
 
-		return JsonUtils.getJsonString(page.getElements());
-	}
+        modelAndView.addObject("pageNo", pageNo);
+        modelAndView.addObject("pageSize", pageSize);
+        modelAndView.addObject("page", page);
+        modelAndView.addObject("message", message);
+        modelAndView.addObject("error", error);
+        modelAndView.addObject("status_para", status_para);
+        modelAndView.addObject("rolename_para", rolename_para);
+        modelAndView.addObject("name_para", name_para);
+        modelAndView.addObject("order_no_para", order_no_para);
+        modelAndView.addObject("symbol_para", symbol_para);
+        modelAndView.addObject("direction_para", direction_para);
+        modelAndView.addObject("volume_para", volume_para);
+        modelAndView.addObject("symbol_map", symbol_map);
+        return modelAndView;
+    }
 
-	/**
-	 * orderProfitLoss
-	 * 
-	 * profit_loss 盈利还是亏损
-	 */
-	@RequestMapping(action + "orderProfitLoss.action")
-	public ModelAndView orderProfitLoss(HttpServletRequest request) {
-		String order_no = request.getParameter("order_no");
-		String profit_loss = request.getParameter("profit_loss");
+    @RequestMapping(action + "saveRemark.action")
+    public ModelAndView saveRemark(HttpServletRequest request) {
+        String orderNo = request.getParameter("orderNo");
+        String remark = request.getParameter("remark");
+        ModelAndView modelAndView = new ModelAndView();
+        modelAndView.setViewName("futures_order_list");
 
-		ModelAndView modelAndView = new ModelAndView();
-		modelAndView.setViewName("redirect:/" + action + "list.action");
-		
-		try {
-			String error = this.futuresOrderService.saveOrderPorfitOrLoss(order_no, profit_loss, this.getUsername_login());
-			if (StringUtils.isNotEmpty(error)) {
-				throw new BusinessException(error);
-			}
-		} catch (BusinessException e) {
-			modelAndView.addObject("error", e.getMessage());
-			return modelAndView;
-		} catch (Throwable t) {
-			logger.error(" error ", t);
-			modelAndView.addObject("error", "[ERROR] " + t.getMessage());
-			return modelAndView;
-		}
+        try {
+            FuturesOrder byOrderNo = futuresOrderService.findByOrderNo(orderNo);
 
-		modelAndView.addObject("message", "操作成功");
-		return modelAndView;
-	}
+            if(null != byOrderNo){
+                List<FuturesOrder> query = futuresOrderService.findByPartyId(byOrderNo.getPartyId().toString());
+                for (FuturesOrder f : query) {
+                    System.out.println("修改之前==="+f);
+                    f.setRemark(remark);
+                    ApplicationUtil.executeUpdate(f);
+                    System.out.println("修改之后==="+f);
+                    futuresOrderService.updateCache(f.getOrder_no(), f);
+                    redisHandler.setSync(FuturesRedisKeys.FUTURES_SUBMITTED_ORDERNO + f.getOrder_no(),f);
+                }
+            }
+        } catch (BusinessException e) {
+            modelAndView.addObject("error", e.getMessage());
+            return modelAndView;
+        } catch (Throwable t) {
+            logger.error(" error ", t);
+            modelAndView.addObject("error", "[ERROR] " + t.getMessage());
+            return modelAndView;
+        }
+
+        return modelAndView;
+    }
+
+    /**
+     * 获取 交割合约单 列表
+     * <p>
+     * symbol_para 币种
+     * direction_para 方向
+     * volume_para 下单金额
+     */
+    @RequestMapping(action + "holdings_list.action")
+    public ModelAndView holdings_list(HttpServletRequest request) {
+        String pageNoStr = request.getParameter("pageNo");
+        String message = request.getParameter("message");
+        String error = request.getParameter("error");
+        String rolename_para = request.getParameter("rolename_para");
+        String name_para = request.getParameter("name_para");
+        String order_no_para = request.getParameter("order_no_para");
+        String symbol_para = request.getParameter("symbol_para");
+        String direction_para = request.getParameter("direction_para");
+        String volume_para = request.getParameter("volume_para");
+
+        ModelAndView modelAndView = new ModelAndView();
+        modelAndView.setViewName("futures_holdings_list");
+
+        int pageNo = 1;
+        int pageSize = 30;
+        try {
+            pageNo = checkAndSetPageNo(pageNoStr);
+            if (StringUtils.isNullOrEmpty(volume_para)) {
+                throw new BusinessException("下单金额必填");
+            }
+            if (!StringUtils.isDouble(volume_para)) {
+                throw new BusinessException("下单金额不是浮点数");
+            }
+            if (Double.valueOf(volume_para).doubleValue() <= 0) {
+                throw new BusinessException("下单金额不能小于等于0");
+            }
+
+            double volume_para_double = Double.valueOf(volume_para).doubleValue();
+
+            String loginPartyId = this.getLoginPartyId();
+            page = this.adminFuturesOrderService.pagedQuery(pageNo, pageSize, "submitted",
+                    rolename_para, loginPartyId, name_para, order_no_para, symbol_para, direction_para, volume_para_double);
+
+            List<Map> list = page.getElements();
+            for (int i = 0; i < list.size(); i++) {
+                Map map = list.get(i);
+                if (null == map.get("rolename")) {
+                    map.put("roleNameDesc", "");
+                } else {
+                    String roleName = map.get("rolename").toString();
+                    map.put("roleNameDesc",
+                            Constants.ROLE_MAP.containsKey(roleName) ? Constants.ROLE_MAP.get(roleName) : roleName);
+                }
+            }
+
+        } catch (BusinessException e) {
+            modelAndView.addObject("error", e.getMessage());
+            return modelAndView;
+        } catch (Throwable t) {
+            logger.error(" error ", t);
+            modelAndView.addObject("error", "[ERROR] " + t.getMessage());
+            return modelAndView;
+        }
+
+        modelAndView.addObject("pageNo", pageNo);
+        modelAndView.addObject("pageSize", pageSize);
+        modelAndView.addObject("page", page);
+        modelAndView.addObject("message", message);
+        modelAndView.addObject("error", error);
+        modelAndView.addObject("rolename_para", rolename_para);
+        modelAndView.addObject("name_para", name_para);
+        modelAndView.addObject("order_no_para", order_no_para);
+        modelAndView.addObject("symbol_para", symbol_para);
+        modelAndView.addObject("direction_para", direction_para);
+        modelAndView.addObject("volume_para", volume_para);
+        return modelAndView;
+    }
+
+    /**
+     * ajax定时获取表
+     * <p>
+     * symbol_para 币种
+     * direction_para 方向
+     * volume_para 下单金额
+     */
+    @RequestMapping(action + "getValue.action")
+    public String getValue(HttpServletRequest request) {
+        String pageNoStr = request.getParameter("pageNo");
+        String rolename_para = request.getParameter("rolename_para");
+        String name_para = request.getParameter("name_para");
+        String order_no_para = request.getParameter("order_no_para");
+        String symbol_para = request.getParameter("symbol_para");
+        String direction_para = request.getParameter("direction_para");
+        String volume_para = request.getParameter("volume_para");
+
+        int pageNo = 1;
+        Page page = null;
+        int pageSize = 30;
+        try {
+            pageNo = checkAndSetPageNo(pageNoStr);
+            if (StringUtils.isNullOrEmpty(volume_para)) {
+                throw new BusinessException("下单金额必填");
+            }
+            if (!StringUtils.isDouble(volume_para)) {
+                throw new BusinessException("下单金额不是浮点数");
+            }
+            if (Double.valueOf(volume_para).doubleValue() <= 0) {
+                throw new BusinessException("下单金额不能小于等于0");
+            }
+
+            double volume_para_double = Double.valueOf(volume_para).doubleValue();
+
+            String loginPartyId = this.getLoginPartyId();
+            page = this.adminFuturesOrderService.pagedQuery(pageNo, pageSize, "submitted",
+                    rolename_para, loginPartyId, name_para, order_no_para, symbol_para, direction_para, volume_para_double);
+
+        } catch (BusinessException e) {
+            return JsonUtils.getJsonString(new ArrayList());
+        } catch (Throwable t) {
+            logger.error(" error ", t);
+            return JsonUtils.getJsonString(new ArrayList());
+        }
+
+        return JsonUtils.getJsonString(page.getElements());
+    }
+
+    /**
+     * orderProfitLoss
+     * <p>
+     * profit_loss 盈利还是亏损
+     */
+    @RequestMapping(action + "orderProfitLoss.action")
+    public ModelAndView orderProfitLoss(HttpServletRequest request) {
+        String order_no = request.getParameter("order_no");
+        String profit_loss = request.getParameter("profit_loss");
+
+        ModelAndView modelAndView = new ModelAndView();
+        modelAndView.setViewName("redirect:/" + action + "list.action");
+
+        try {
+            String error = this.futuresOrderService.saveOrderPorfitOrLoss(order_no, profit_loss, this.getUsername_login());
+            if (StringUtils.isNotEmpty(error)) {
+                throw new BusinessException(error);
+            }
+        } catch (BusinessException e) {
+            modelAndView.addObject("error", e.getMessage());
+            return modelAndView;
+        } catch (Throwable t) {
+            logger.error(" error ", t);
+            modelAndView.addObject("error", "[ERROR] " + t.getMessage());
+            return modelAndView;
+        }
+
+        modelAndView.addObject("message", "操作成功");
+        return modelAndView;
+    }
+
+    /**
+     * 交割合约一键场控
+     * <p>
+     * profit_loss 盈利还是亏损
+     */
+    @RequestMapping(action + "orderProfitLossList.action")
+    public ModelAndView orderProfitLossList(HttpServletRequest request) {
+        ModelAndView modelAndView = new ModelAndView();
+        modelAndView.setViewName("redirect:/" + action + "list.action");
+        String stringOrderNo = request.getParameter("orderNos");
+        String action = request.getParameter("action");
+        logger.info("orderNos:"+stringOrderNo.toString()+"-----action:"+action);
+        String[] orderNos = stringOrderNo.split(",");
+        List<String> errorList = new ArrayList<>();
+        try {
+            for (String orderNo : orderNos) {
+                logger.info("------->"+orderNo);
+                String error = this.futuresOrderService.saveOrderPorfitOrLoss(orderNo, action, this.getUsername_login());
+                if (StringUtils.isNotEmpty(error)) {
+                    error = "订单号:"+orderNo+",原因:"+error;
+                    errorList.add(error);
+                }
+            }
+            if(errorList.size() > 0){
+                throw new BusinessException("部分订单操作失败:"+errorList.toString());
+            }
+        } catch (BusinessException e) {
+            modelAndView.addObject("error", e.getMessage());
+            return modelAndView;
+        } catch (Throwable t) {
+            logger.error("  error  ", t);
+            modelAndView.addObject("error", "[ERROR]  " + t.getMessage());
+            return modelAndView;
+        }
+
+        modelAndView.addObject("message", "操作成功");
+        return modelAndView;
+    }
 
 }

--
Gitblit v1.9.3