Explorar el Código

加入菜单编辑和删除功能

wuxw hace 6 años
padre
commit
8a459e1aa9

+ 2 - 3
Api/src/main/java/com/java110/api/listener/app/UpdateAppListener.java

@@ -28,11 +28,12 @@ public class UpdateAppListener extends AbstractServiceApiListener {
 
     @Autowired
     private IAppInnerServiceSMO appInnerServiceSMOImpl;
+
     @Override
     protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
 
         Assert.hasKeyAndValue(reqJson, "appId", "应用Id不能为空");
-Assert.hasKeyAndValue(reqJson, "name", "必填,请填写应用名称");
+        Assert.hasKeyAndValue(reqJson, "name", "必填,请填写应用名称");
 
     }
 
@@ -45,7 +46,6 @@ Assert.hasKeyAndValue(reqJson, "name", "必填,请填写应用名称");
         int count = appInnerServiceSMOImpl.updateApp(appDto);
 
 
-
         if (count < 1) {
             throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "修改数据失败");
         }
@@ -71,7 +71,6 @@ Assert.hasKeyAndValue(reqJson, "name", "必填,请填写应用名称");
     }
 
 
-
     public IAppInnerServiceSMO getAppInnerServiceSMOImpl() {
         return appInnerServiceSMOImpl;
     }

+ 28 - 0
Api/src/main/java/com/java110/api/listener/menu/DeleteMenuListener.java

@@ -3,12 +3,19 @@ package com.java110.api.listener.menu;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.listener.AbstractServiceApiListener;
+import com.java110.common.constant.ResponseConstant;
+import com.java110.common.exception.ListenerExecuteException;
 import com.java110.common.util.Assert;
+import com.java110.common.util.BeanConvertUtil;
 import com.java110.core.context.DataFlowContext;
+import com.java110.core.smo.menu.IMenuInnerServiceSMO;
+import com.java110.dto.menu.MenuDto;
 import com.java110.entity.center.AppService;
 import com.java110.event.service.api.ServiceDataFlowEvent;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
+import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import com.java110.common.constant.CommonConstant;
 import com.java110.common.constant.ServiceCodeConstant;
@@ -23,6 +30,9 @@ import com.java110.common.constant.ServiceCodeMenuConstant;
  */
 @Java110Listener("deleteMenuListener")
 public class DeleteMenuListener extends AbstractServiceApiListener {
+
+    @Autowired
+    private IMenuInnerServiceSMO menuInnerServiceSMOImpl;
     @Override
     protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
         //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
@@ -33,7 +43,18 @@ public class DeleteMenuListener extends AbstractServiceApiListener {
 
     @Override
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
+        MenuDto menuDto = BeanConvertUtil.covertBean(reqJson, MenuDto.class);
+
+
+        int count = menuInnerServiceSMOImpl.deleteMenu(menuDto);
+
+        if (count < 1) {
+            throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "删除数据失败");
+        }
 
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>("", HttpStatus.OK);
+
+        context.setResponseEntity(responseEntity);
 
     }
 
@@ -52,4 +73,11 @@ public class DeleteMenuListener extends AbstractServiceApiListener {
         return DEFAULT_ORDER;
     }
 
+    public IMenuInnerServiceSMO getMenuInnerServiceSMOImpl() {
+        return menuInnerServiceSMOImpl;
+    }
+
+    public void setMenuInnerServiceSMOImpl(IMenuInnerServiceSMO menuInnerServiceSMOImpl) {
+        this.menuInnerServiceSMOImpl = menuInnerServiceSMOImpl;
+    }
 }

+ 31 - 0
Api/src/main/java/com/java110/api/listener/menu/UpdateMenuListener.java

@@ -2,12 +2,21 @@ package com.java110.api.listener.menu;
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.listener.AbstractServiceApiListener;
+import com.java110.common.constant.ResponseConstant;
 import com.java110.common.constant.ServiceCodeMenuConstant;
+import com.java110.common.exception.ListenerExecuteException;
 import com.java110.common.util.Assert;
+import com.java110.common.util.BeanConvertUtil;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
+import com.java110.core.smo.menu.IMenuInnerServiceSMO;
+import com.java110.dto.app.AppDto;
+import com.java110.dto.menu.MenuDto;
 import com.java110.event.service.api.ServiceDataFlowEvent;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpMethod;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
 
 /**
  * 编辑菜单侦听
@@ -15,6 +24,9 @@ import org.springframework.http.HttpMethod;
  */
 @Java110Listener("updateMenuListener")
 public class UpdateMenuListener extends AbstractServiceApiListener {
+
+    @Autowired
+    private IMenuInnerServiceSMO menuInnerServiceSMOImpl;
     @Override
     protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
 
@@ -29,6 +41,18 @@ public class UpdateMenuListener extends AbstractServiceApiListener {
     @Override
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
 
+        MenuDto menuDto = BeanConvertUtil.covertBean(reqJson, MenuDto.class);
+
+
+        int count = menuInnerServiceSMOImpl.updateMenu(menuDto);
+
+        if (count < 1) {
+            throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "修改数据失败");
+        }
+
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>("", HttpStatus.OK);
+
+        context.setResponseEntity(responseEntity);
 
     }
 
@@ -48,4 +72,11 @@ public class UpdateMenuListener extends AbstractServiceApiListener {
     }
 
 
+    public IMenuInnerServiceSMO getMenuInnerServiceSMOImpl() {
+        return menuInnerServiceSMOImpl;
+    }
+
+    public void setMenuInnerServiceSMOImpl(IMenuInnerServiceSMO menuInnerServiceSMOImpl) {
+        this.menuInnerServiceSMOImpl = menuInnerServiceSMOImpl;
+    }
 }

+ 43 - 34
WebService/src/main/resources/components/menuPackage/edit-menu/editMenu.html

@@ -1,4 +1,5 @@
-<div id = "editMenuModel" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true" >
+<div id="editMenuModel" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
+     aria-hidden="true">
     <div class="modal-dialog modal-lg">
         <div class="modal-content">
             <div class="modal-body">
@@ -7,41 +8,49 @@
                     <div>
                         <div>
                             <div class="form-group row">
-         <label class="col-sm-2 col-form-label">菜单名称</label>
-         <div class="col-sm-10">
-           <input v-model="editMenuInfo.name"                   type="text" placeholder="必填,请填写菜单名称" class="form-control">
-         </div>
-</div>
-<div class="form-group row">
-         <label class="col-sm-2 col-form-label">菜单地址</label>
-         <div class="col-sm-10">
-           <input v-model="editMenuInfo.url"                   type="text" placeholder="必填,请填写菜单地址" class="form-control">
-         </div>
-</div>
-<div class="form-group row">
-         <label class="col-sm-2 col-form-label">序列</label>
-         <div class="col-sm-10">
-           <input v-model="editMenuInfo.seq"                   type="text" placeholder="必填,请填写序列" class="form-control">
-         </div>
-</div>
-<div class="form-group row">
-         <label class="col-sm-2 col-form-label">菜单显示</label>
-         <div class="col-sm-10">
-<select class="custom-select" v-model="editMenuInfo.isShow">
-         <option selected  disabled value="">必填,请选择菜单显示</option>
-         <option  value="Y">显示菜单</option>
-<option  value="N">不显示菜单</option>
-  </select>         </div>
-</div>
-<div class="form-group row">
-         <label class="col-sm-2 col-form-label">描述</label>
-         <div class="col-sm-10">
-<textarea  placeholder="选填,请填写描述" class="form-control" v-model="editMenuInfo.description"></textarea>         </div>
-</div>
+                                <label class="col-sm-2 col-form-label">菜单名称</label>
+                                <div class="col-sm-10">
+                                    <input v-model="editMenuInfo.name" type="text" placeholder="必填,请填写菜单名称"
+                                           class="form-control">
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">菜单地址</label>
+                                <div class="col-sm-10">
+                                    <input v-model="editMenuInfo.url" type="text" placeholder="必填,请填写菜单地址"
+                                           class="form-control">
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">序列</label>
+                                <div class="col-sm-10">
+                                    <input v-model="editMenuInfo.seq" type="text" placeholder="必填,请填写序列"
+                                           class="form-control">
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">菜单显示</label>
+                                <div class="col-sm-10">
+                                    <select class="custom-select" v-model="editMenuInfo.isShow">
+                                        <option selected disabled value="">必填,请选择菜单显示</option>
+                                        <option value="Y">显示菜单</option>
+                                        <option value="N">不显示菜单</option>
+                                    </select></div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">描述</label>
+                                <div class="col-sm-10">
+                                    <textarea placeholder="选填,请填写描述" class="form-control"
+                                              v-model="editMenuInfo.description"></textarea></div>
+                            </div>
 
                             <div class="ibox-content">
-                                <button class="btn btn-primary float-right" type="button" v-on:click="editMenu()" ><i class="fa fa-check"></i>&nbsp;保存</button>
-                                <button type="button" class="btn btn-warning float-right" style="margin-right:20px;" data-dismiss="modal">取消</button>
+                                <button class="btn btn-primary float-right" type="button" v-on:click="editMenu()"><i
+                                        class="fa fa-check"></i>&nbsp;保存
+                                </button>
+                                <button type="button" class="btn btn-warning float-right" style="margin-right:20px;"
+                                        data-dismiss="modal">取消
+                                </button>
                             </div>
                         </div>
                     </div>