浏览代码

加footer.jsp

Ben 6 天之前
父节点
当前提交
6e13442744
共有 3 个文件被更改,包括 424 次插入221 次删除
  1. 6 0
      page/clip/footer.jsp
  2. 366 221
      page/sys/mainMenuDefEdit.ss.jsp
  3. 52 0
      page/sys/menuGrpAdd.ss.jsp

+ 6 - 0
page/clip/footer.jsp

@@ -0,0 +1,6 @@
+<%-- 新UI.Ben --%>
+<%@ page language="java" contentType="text/html;charset=UTF-8" pageEncoding="utf-8" isELIgnored="false"%>
+<script type="module" src="/js/vue/initVue.js"></script><%-- 新UI vue组件初始化 Ben(20251217) --%>
+<script type="text/javascript">
+	tokenCleanser("<ss:serv name='ss.clearPageToken'/>", {tokenList:"<%= pageContext.getAttribute(ss.page.PageC.PAGE_tokenList)%>"});
+</script>

+ 366 - 221
page/sys/mainMenuDefEdit.ss.jsp

@@ -1,54 +1,97 @@
 <!DOCTYPE html>
 <html>
 <head>
-<style>
-	#savemb{
-		display: none;
-	}
-	#delmb{
-		display: none;
-	}
-</style>
+	<style>
+		#savemb{
+			display: none;
+		}
+		#delmb{
+			display: none;
+		}
+	</style>
 
 	<ss:skin file='main.css'/>
 
 </head>
 <body>
 
-<div id="app" class="form-container">
-	<div class="content-box fit-height-content"><%-- vue样式要套上这两套DIV Ben(20251217) --%>
+
 
 <form name="ddpOptionForm" action="<serv.ss dest='menuDefOptList'/>" method="post"> <!-- "cdOptionForm"。Lin -->
 	<input type="hidden" name="cdOptionHtml" value="" id="cdOptionHtml" />
-<!-- <@input type='submit' id="cx" value="查询" class="content-invertButton" /> -->
+	<!-- <@input type='submit' id="cx" value="查询" class="content-invertButton" /> -->
 </form>
 <form name="shortcutForm" action='' method="post">
 	<input name="bjid" type="hidden" value="${bjid}" />
-	<div class="search-div">
-		<div style="padding: 15px 25px 12px 25px;">
-			<input type='button' value="增加菜单组" onclick="addGroup();" class="content-button" />
-			<!-- 业务分类 <select id="yy" name="yy" onchange="">
-				<option value="-1">请选择</option>
-			</select> -->
-			&nbsp;
-		 <%--<select id="cdmbselected" class="sel"  onchange="selectMB(this.options[this.options.selectedIndex].value);"  style="float: right;">
-				<option value="0">空白模板</option>
-				<wd:option name="$@{sessionScope['XMMC']}.grcdmb"  />
-			</select>--%>
-			<input type='button' id="savemb" value="保存当前模板" class="content-button" />
-			<input type='button' id="delmb" value="删除该模板" class="content-button" />
-			<input type='button' id="addmb" value="另存为新模板" class="content-button" />
-<%-- 新UI改写法 Ben(20251217)			<input name="grcdmbid" id="grcdmbid" type="hidden" class="sel" onchange="selectMB(this.value)"/>
-			<input name="grcdmbName" placeholder="模板" type="text" style="width: 130px;" />
-			--%>
-			<table class="form"><%-- 这table是为了套上小许样式临时加上 Ben(20251217) --%>
-				<tr><td>
-			<objp.ss name="grcdmbid" cb="grcdmb" inp="true" onChg="selectMB" /> <%-- 原 codebook="grcdmb_all",去掉 根模板 了。Lin --%>
-				</td></tr></table>
-			</br></br></br></br></br></br></br></br></br></br></br></br></br></br></br></br>
+	<div id="app" class="form-container">
+		<div class="content-box fit-height-content"><%-- vue样式要套上这两套DIV Ben(20251217) --%>
+
+			<div class="search-bar">
+				<div class="search-bar-contaienr"> <%-- vue样式要套上这两套DIV Ben(20251217) --%>
+
+
+					<%-- 改为新UI组件写法 Ben(20251225) <input type='button' value="增加菜单组" onclick="addGroup();" class="content-button" />--%>
+					<ss-search-button
+							text="增加菜单组"
+							icon-class="nav-icon-add"
+							onclick="addGroup()"
+							width="250px"
+					></ss-search-button>
+
+					<!-- 业务分类 <select id="yy" name="yy" onchange="">
+                        <option value="-1">请选择</option>
+                    </select> -->
+					&nbsp;
+					<%--<select id="cdmbselected" class="sel"  onchange="selectMB(this.options[this.options.selectedIndex].value);"  style="float: right;">
+                           <option value="0">空白模板</option>
+                           <wd:option name="$@{sessionScope['XMMC']}.grcdmb"  />
+                       </select>--%>
+
+					<%-- 改为新UI组件写法
+					<input type='button' id="savemb" value="保存当前模板" class="content-button" onclick="doSavemb()" />
+					<input type='button' id="delmb" value="删除该模板" class="content-button" onclick="doDelmb()" />
+					<input type='button' id="addmb" value="另存为新模板" class="content-button" onclick="doAddcallback()" />
+					--%>
+
+					<ss-search-button
+							text="保存当前模板"
+							icon-class="nav-icon-add"
+							onclick="doSavemb()"
+							id="savemb"
+							width="250px"
+					></ss-search-button>
+					<ss-search-button
+							text="删除该模板"
+							icon-class="nav-icon-add"
+							onclick="doDelmb()"
+							id="delmb"
+							width="250px"
+					></ss-search-button>
+					<ss-search-button
+							text="另存为新模板"
+							icon-class="nav-icon-add"
+							onclick="doAddcallback()"
+							id="addmb"
+							width="250px"
+					></ss-search-button>
+
+
+
+					<%-- 新UI改写法 Ben(20251217)			<input name="grcdmbid" id="grcdmbid" type="hidden" class="sel" onchange="selectMB(this.value)"/>
+                                <input name="grcdmbName" placeholder="模板" type="text" style="width: 130px;" />
+                                --%>
+					<table class="form"><%-- 这table是为了套上小许样式临时加上 Ben(20251217) --%>
+						<tr><td>
+							<objp.ss name="grcdmbid" cb="grcdmb" inp="true" onChange="selectMB" /> <%-- 原 codebook="grcdmb_all",去掉 根模板 了。Lin --%>
+						</td></tr></table>
+
+				</div>
+			</div>
 
 		</div>
 	</div>
+
+	<div style="height: 400px" ></div>
 	<div id="container" class="dragList-div">
 		<div class="box">
 			<p class="label">已选<span id="ddpDropAll" class="icon-allRight"></span></p> <!-- "cdDropAll"。Lin -->
@@ -70,8 +113,7 @@
 <!-- <div class='bottom-div'>
 <@input type="button" name="button" onclick="wd.display.closeDialog();" value="取消" class="bottom-button" />
 </div> -->
-	</div>
-</div>
+
 </body>
 
 <%-- 去掉,母体也没找到。Lin
@@ -106,6 +148,77 @@
 	// if(parent.menuTree != undefined)
 	//     menuTree = parent.menuTree;
 
+	<%--
+旧UI中,在个人首页顶层的窗口,是有下面的shortcutMenuInfo这个JS数组的,但是在新UI中已经没有了。第一层是shortcutMenuInfo,第二层是 menuRoot
+这个shortcutMenuInfo看着是旧UI顶部应用菜单中,分割符左侧的管理2菜单(分割符右侧是查询/开始菜单)。
+	//------------------  shortcutMenuInfo  start  ------------------
+
+var shortcutMenuInfo={
+  "menuRoot": {
+    "groupId": "menuRoot",
+    "name": "菜单根部",
+    "members": {
+      "#0#yx_admin": {
+        "memberId": "yx_admin",
+        "name": "迎新",
+        "groupId": "menuRoot",
+        "url": "null"
+      },
+      "#1#zy_admin": {
+        "memberId": "zy_admin",
+        "name": "专业",
+        "groupId": "menuRoot",
+        "url": "null"
+      },
+      "#2#bj_admin": {
+        "memberId": "bj_admin",
+        "name": "班级",
+        "groupId": "menuRoot",
+        "url": "null"
+      },
+      "#3#xy_view_admin": {
+        "memberId": "xy_view_admin",
+        "name": "学员",
+        "groupId": "menuRoot",
+        "url": "null"
+      },
+      "#4#kcb_admin": {
+        "memberId": "kcb_admin",
+        "name": "排课",
+        "groupId": "menuRoot",
+        "url": "null"
+      },
+      "#5#m_kcb": {
+        "memberId": "m_kcb",
+        "name": "教学",
+        "groupId": "menuRoot",
+        "url": "/service?token=6a45af3b45ad450c95e3c26fea82e3a9"
+      },
+      "#6#cd_admin": {
+        "memberId": "cd_admin",
+        "name": "场地",
+        "groupId": "menuRoot",
+        "url": "null"
+      },
+      "#7#wp_admin": {
+        "memberId": "wp_admin",
+        "name": "物品",
+        "groupId": "menuRoot",
+        "url": "null"
+      },
+      "#8#kf_admin": {
+        "memberId": "kf_admin",
+        "name": "客房",
+        "groupId": "menuRoot",
+        "url": "null"
+      }
+    }
+  }
+};
+//--------------------  shortcutMenuInfo  end  ---------
+
+	--%>
+
 	/**
 	 * 自定义菜单
 	 * 1--shortcutMenuInfo(各个自定义id(不清楚来源),menuRoot)
@@ -114,11 +227,23 @@
 	 *
 	 * example:shortcutMenuInfo[440112878].members["#0#44014346"].name
 	 */
-	var shortcutMenuInfo;//这是快捷组的数据,也就是最顶上那一排,这是个三层键值对?
-	for(var i = 0; i < 10 && parent1.shortcutMenuInfo == undefined; i++)
-		parent1 = parent1.parent
-	if(parent1.shortcutMenuInfo != undefined)
-		shortcutMenuInfo = parent1.shortcutMenuInfo;
+			<%-- 注释掉,菜单模板不应该在home.jsp中取初始值 Ben(202501220)
+            var shortcutMenuInfo;//这是快捷组的数据,也就是最顶上那一排,这是个三层键值对?
+            for(var i = 0; i < 10 && parent1.shortcutMenuInfo == undefined; i++)
+                parent1 = parent1.parent
+            if(parent1.shortcutMenuInfo != undefined)
+                shortcutMenuInfo = parent1.shortcutMenuInfo;
+            --%>
+
+			<%-- 为了让后面程序能跑,补回原来的json结构 Ben(20251220) --%>
+	var shortcutMenuInfo= {
+				"menuRoot": {
+					"groupId": "menuRoot",
+					"name": "菜单根部",
+					"members": {}
+				}
+			};
+
 
 	//自定义栏目的子栏目的根id
 	var shortcutGroup=[];
@@ -128,7 +253,7 @@
 	function isNumber(o) {
 		var reg = /^[0-9]*$/;
 		if (!reg.test(o)) {
-				return false;
+			return false;
 		}
 		return true;
 	}
@@ -182,10 +307,10 @@
 	$(function () { selectByParentId(); })
 
 	/**
-	* 根据父id查询出对应的子对象
-	* @param  {[type]} id [description]
-	* @return {[type]}    [description]
-	*/
+	 * 根据父id查询出对应的子对象
+	 * @param  {[type]} id [description]
+	 * @return {[type]}    [description]
+	 */
 	function selectByParentId() {
 		//用来加载出右边拖拽框的所有选项
 		var cdOptionHtml = "";
@@ -224,54 +349,54 @@
 	/**
 	 * 创建一个新的快捷组,也就是顶上一排那种有第二层的东西
 	 */
-/* 改,改用 wd.display.confirm({ -- 新UI,增加 个人菜单.业务名 -- 实现 新UI 的图标体系。Lin
- * 把 addGroup() 分开为 addGroup() + addGroupCallback( -- 抄自 "另存为新模板" 按钮
-	function addGroup(){
-		//全都是快捷组这东西惹的祸   因为它既是shortcutMenuInfo中menuRoot的成员,也是shortcutMenuInfo的成员
-		//var groupSel = document.getElementById('cdwz');
-		var groupDivs = $('#ddpSelected').children();	// '#cdSelected'。Lin
-		//下面这段都是用来判断为空或者重复
-		var newname=prompt("新菜单名称","未定义");
-		if(''==newname||null==newname){
-			alert('名称不能为空!!\n');
-			return false;
-		}
-		var hasGroupName = false;
-/// *	for(var i=0;i<groupSel.options.length;i++){
- //	 if(newname==groupSel.options[i].text){
- //	 hasGroupName = true;
- //	 break;
- //	 }
- //	 }
-/// *
-		$.each(groupDivs, function(i){
-			var name = $(groupDivs[i]).attr('name');
-			if(newname == name){
-				hasGroupName = true;
-				return true;
-			}
-		});
-		if(hasGroupName){
-			alert('菜单名称'+newname+'已存在');
-			return false;
-		}
-		//用当前系统的毫秒值作为groupId
-		var groupId = new Date().getTime()+'';
-		//console.info("测试组id: "+groupId);
-		//shortcutMenuInfo中新建一个键值对,键为groupId
-		shortcutMenuInfo[groupId] = {
-			'groupId':groupId,
-			'name':newname,//输入的名字
-			'members':{} //成员为空
-		}
-
-		shortcutGroup.push(groupId);
-		DM.addItem(groupId,'<div class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + groupId + '" memberid="' + groupId + '" name="'+ newname +'" groupId="menuRoot" url="null" ><span >'+ newname +'</span></div>',null,true);
-	}
-*/
-///// Start 改用 wd.display.confirm({ -- 新UI,增加 个人菜单.业务名 -- 实现 新UI 的图标体系。Lin
+	/* 改,改用 wd.display.confirm({ -- 新UI,增加 个人菜单.业务名 -- 实现 新UI 的图标体系。Lin
+     * 把 addGroup() 分开为 addGroup() + addGroupCallback( -- 抄自 "另存为新模板" 按钮
+        function addGroup(){
+            //全都是快捷组这东西惹的祸   因为它既是shortcutMenuInfo中menuRoot的成员,也是shortcutMenuInfo的成员
+            //var groupSel = document.getElementById('cdwz');
+            var groupDivs = $('#ddpSelected').children();	// '#cdSelected'。Lin
+            //下面这段都是用来判断为空或者重复
+            var newname=prompt("新菜单名称","未定义");
+            if(''==newname||null==newname){
+                alert('名称不能为空!!\n');
+                return false;
+            }
+            var hasGroupName = false;
+    /// *	for(var i=0;i<groupSel.options.length;i++){
+     //	 if(newname==groupSel.options[i].text){
+     //	 hasGroupName = true;
+     //	 break;
+     //	 }
+     //	 }
+    /// *
+            $.each(groupDivs, function(i){
+                var name = $(groupDivs[i]).attr('name');
+                if(newname == name){
+                    hasGroupName = true;
+                    return true;
+                }
+            });
+            if(hasGroupName){
+                alert('菜单名称'+newname+'已存在');
+                return false;
+            }
+            //用当前系统的毫秒值作为groupId
+            var groupId = new Date().getTime()+'';
+            //console.info("测试组id: "+groupId);
+            //shortcutMenuInfo中新建一个键值对,键为groupId
+            shortcutMenuInfo[groupId] = {
+                'groupId':groupId,
+                'name':newname,//输入的名字
+                'members':{} //成员为空
+            }
+
+            shortcutGroup.push(groupId);
+            DM.addItem(groupId,'<div class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + groupId + '" memberid="' + groupId + '" name="'+ newname +'" groupId="menuRoot" url="null" ><span >'+ newname +'</span></div>',null,true);
+        }
+    */
+	///// Start 改用 wd.display.confirm({ -- 新UI,增加 个人菜单.业务名 -- 实现 新UI 的图标体系。Lin
 	function addGroup() {
-		wd.display.confirm({ title: "增加菜单组", url: "<serv.ss dest='menuGrpAdd'/>", width: 300, height: 240, callback: addcallback });
+		wd.display.confirm({ title: "增加菜单组", url: "<serv.ss dest='menuGrpAdd'/>", width: 300, height: 240, callback: addGroupCallback });<%-- addcallback改为addGroupCallback Ben(20251220) --%>
 	}
 
 	var addGroupCallback = (function (t) {
@@ -281,6 +406,11 @@
 				alert('名称不能为空!!\n');
 				return false;
 			}
+
+			let newname = data.newMc;<%-- add by Ben(20251220) --%>
+			let bizName = data.bizName;<%-- add by Ben(20251220) --%>
+
+			var groupDivs = $('#ddpSelected').children();<%-- 补回groupDivs初始化 Ben(20251220) --%>
 			var hasGroupName = false;
 			$.each(groupDivs, function(i){
 				var name = $(groupDivs[i]).attr('name');
@@ -310,7 +440,7 @@
 					'<span >'+ newname +'</span></div>',null,true);
 		}
 	})(this);
-///// End 改用 wd.display.confirm({ -- 新UI,增加 个人菜单.业务名 -- 实现 新UI 的图标体系。Lin
+	///// End 改用 wd.display.confirm({ -- 新UI,增加 个人菜单.业务名 -- 实现 新UI 的图标体系。Lin
 
 
 	/**
@@ -323,26 +453,36 @@
 		var dragList = $('#ddpSelected');	// '#cdSelected'。Lin
 		//下级div
 		var groupDivs = dragList.children();
-		console.log(groupDivs.size());
+		<%-- console.log(groupDivs.length); 注释掉 Ben(20251219) --%>
 		var menuRootMembers = {};
 		/**
 		 * 初始化菜单根部menuRoot
 		 */
 		var menuRoot = {};
+
+
+		<%-- Ben(20251219)
+		shortcutMenuInfo这个对象在老UI的home.jsp才有,下面代码先注释掉
 		//copy
 		$.extend(menuRoot,shortcutMenuInfo['menuRoot']);
+
+		从父页面home.jsp读取当前用户的菜单,这逻辑只对编辑当前登录用户的菜单,才能说得通。
+		但是对于编辑菜单模板来说,是错的。菜单模板应该从当前选择的模板,从后台重新加载。
+		--%>
+
+
 		menuRootMembers['menuRoot'] = menuRoot;
 		menuRoot['members'] = {};
 		$.each(groupDivs, function(i){
 			//或条件
 			//改为li
-			if(shortcutGroup.indexOf($(groupDivs[i]).attr('memberid')) != -1 || $(groupDivs[i]).find('div div[ssObjId]').size() != 0){
+			if(shortcutGroup.indexOf($(groupDivs[i]).attr('memberid')) != -1 || $(groupDivs[i]).find('div div[ssObjId]').length != 0){
 				var menuRootMember = {};
 				var members = {};
 				menuRootMember['groupId'] = $(groupDivs[i]).attr('memberid');
 				menuRootMember['name'] = $(groupDivs[i]).attr('name');
 				menuRootMember['bizName'] = $(groupDivs[i]).attr('bizName');	// 增加,增加 个人菜单.业务名。Lin
-				if($(groupDivs[i]).find('div div[ssObjId]').size() != 0){
+				if($(groupDivs[i]).find('div div[ssObjId]').length != 0){
 					//下级div的再下级
 					var childDivs = $(groupDivs[i]).find('div div[ssObjId]');
 					$.each(childDivs, function(j){
@@ -364,7 +504,7 @@
 			var member = {};
 			member['memberId'] = $(groupDivs[i]).attr('memberId');
 			member['name'] = $(groupDivs[i]).attr('name');
-			if($(groupDivs[i]).find('div div[ssObjId]').size() != 0){
+			if($(groupDivs[i]).find('div div[ssObjId]').length != 0){
 				member['groupId'] = "menuRoot";
 				member['url'] = "null";
 				shortcutGroup.push($(groupDivs[i]).attr('memberId'));
@@ -404,95 +544,96 @@
 		}
 	}
 
-/**
- * 设值到表单中
- * @param  {[type]} _form [description]
- * @param  {[type]} name  [description]
- * @param  {[type]} value [description]
- * @return {[type]}       [description]
- */
-function generateHiddenForm(_form,name,value){
+	/**
+	 * 设值到表单中
+	 * @param  {[type]} _form [description]
+	 * @param  {[type]} name  [description]
+	 * @param  {[type]} value [description]
+	 * @return {[type]}       [description]
+	 */
+	function generateHiddenForm(_form,name,value){
 		var hiddenInput = document.createElement('input');
 		hiddenInput.type='hidden';
 		hiddenInput.name = name;
 		hiddenInput.value = value;
 		_form.appendChild(hiddenInput);
-}
+	}
 
-/**
- * 生成菜单显示数据
- * @param  {[type]} shortcutMenuInfo [description]
- * @return {[type]}                  [description]
- */
-function initShortCutMenu(shortcutMenuInfo){
+	/**
+	 * 生成菜单显示数据
+	 * @param  {[type]} shortcutMenuInfo [description]
+	 * @return {[type]}                  [description]
+	 */
+	function initShortCutMenu(shortcutMenuInfo){
 
 		var menuRoot;
 		if(typeof(shortcutMenuInfo.menuRoot) == 'undefined')
-				menuRoot = [];
+			menuRoot = [];
 		else
-				menuRoot = shortcutMenuInfo.menuRoot.members;
+			menuRoot = shortcutMenuInfo.menuRoot.members;
 		DM.getDrager().selectedList.empty();
 		$.each(menuRoot, function(i){
-				//menuRootSize++;
-				var menuRootMember = menuRoot[i];
+			//menuRootSize++;
+			var menuRootMember = menuRoot[i];
 
-				//
-				var isItem = false;
-				if(menuRootMember.url != "null"){
+			//
+			var isItem = false;
+			if(menuRootMember.url != "null"){
+				isItem = true;
+			}else{
+				if(shortcutMenuInfo[menuRootMember.memberId] != undefined){
+					var j = 0;
+					$.each(shortcutMenuInfo[menuRootMember.memberId].members, function(i){
+						j++;
+					});
+					if(j > 0){
 						isItem = true;
-				}else{
-						if(shortcutMenuInfo[menuRootMember.memberId] != undefined){
-								var j = 0;
-								$.each(shortcutMenuInfo[menuRootMember.memberId].members, function(i){
-										j++;
-								});
-								if(j > 0){
-										isItem = true;
-								}
-						}
+					}
 				}
+			}
 
-				if(isItem){
+			if(isItem){
 
-						if(menuRootMember.memberId.indexOf("_search")>0){
-								var ele = $('<div class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + menuRootMember.memberId + '" memberid="' + menuRootMember.memberId
-										+ '"  name="'+ menuRootMember.name +'" groupId="'+ "search"
-										+'" url="'+ menuRootMember.url +'" class="item dragList"><span>'+ menuRootMember.name+"[搜索]" +'</ span ></div>');
+				if(menuRootMember.memberId.indexOf("_search")>0){
+					var ele = $('<div class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + menuRootMember.memberId + '" memberid="' + menuRootMember.memberId
+							+ '"  name="'+ menuRootMember.name +'" groupId="'+ "search"
+							+'" url="'+ menuRootMember.url +'" class="item dragList"><span>'+ menuRootMember.name+"[搜索]" +'</ span ></div>');
+				}else{
+					var ele = $('<div class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + menuRootMember.memberId + '" memberid="' + menuRootMember.memberId
+							+ '"  name="'+ menuRootMember.name +'" groupId="'+ menuRootMember.groupId
+							+'" url="'+ menuRootMember.url +'" class="item dragList"><span>'+ menuRootMember.name +'</ span ></div>');
+				}
+				DM.getDrager().selectedList.append(ele[0]);
+				var parentId = menuRootMember.memberId;
+				//放入子栏目,子栏目不为dragList
+				if(shortcutMenuInfo[menuRootMember.memberId] != null){
+					$.each(shortcutMenuInfo[menuRootMember.memberId].members, function(j){
+						var member = shortcutMenuInfo[menuRootMember.memberId].members[j];
+						if(member.memberId.indexOf("_search")>0){
+							var cele = $('<div class="list-background list" style="height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + j.split("#")[2] + '" ssPobjId="'+parentId
+									+'" memberid="' + j.split("#")[2]  + '" name="' + member.name+ '" groupId="' + member.groupId
+									+ '" url="'+ member.url +'" ><span>' + member.name +"[搜索]" +'</ span ></div>');
 						}else{
-								var ele = $('<div class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + menuRootMember.memberId + '" memberid="' + menuRootMember.memberId
-										+ '"  name="'+ menuRootMember.name +'" groupId="'+ menuRootMember.groupId
-										+'" url="'+ menuRootMember.url +'" class="item dragList"><span>'+ menuRootMember.name +'</ span ></div>');
-						}
-						DM.getDrager().selectedList.append(ele[0]);
-						var parentId = menuRootMember.memberId;
-						//放入子栏目,子栏目不为dragList
-						if(shortcutMenuInfo[menuRootMember.memberId] != null){
-								$.each(shortcutMenuInfo[menuRootMember.memberId].members, function(j){
-										var member = shortcutMenuInfo[menuRootMember.memberId].members[j];
-										if(member.memberId.indexOf("_search")>0){
-												var cele = $('<div class="list-background list" style="height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + j.split("#")[2] + '" ssPobjId="'+parentId
-												+'" memberid="' + j.split("#")[2]  + '" name="' + member.name+ '" groupId="' + member.groupId
-												+ '" url="'+ member.url +'" ><span>' + member.name +"[搜索]" +'</ span ></div>');
-										}else{
-												var cele = $('<div class="list-background list" style="height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + j.split("#")[2] + '" ssPobjId="'+parentId
-												+'" memberid="' + j.split("#")[2]  + '" name="' + member.name + '" groupId="' + member.groupId
-												+ '" url="'+ member.url +'" ><span>' + member.name +'</ span ></div>');
-										}
-										DM.getDrager().selectedList.append(cele[0]);
-								});
+							var cele = $('<div class="list-background list" style="height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" ssObjId="' + j.split("#")[2] + '" ssPobjId="'+parentId
+									+'" memberid="' + j.split("#")[2]  + '" name="' + member.name + '" groupId="' + member.groupId
+									+ '" url="'+ member.url +'" ><span>' + member.name +'</ span ></div>');
 						}
+						DM.getDrager().selectedList.append(cele[0]);
+					});
 				}
+			}
 		});
 		DM.getDrager().selectedList.reload();
 		selectByParentId();
-}
-
-/**
- * 删除菜单组模板
- * @param  {[type]} ){  } [description]
- * @return {[type]}        [description]
- */
-$('#delmb').click(function(){
+	}
+
+	/**
+	 * 删除菜单组模板
+	 * @param  {[type]} ){  } [description]
+	 * @return {[type]}        [description]
+	 */
+	function doDelmb(){
+	// $('#delmb').click(function(){
 //	var mbid = $('#cdmbselected').val();
 		var mbid = $('#grcdmbid').val();
 		var json = JSON.parse('{"mbid":"' + mbid + '"}');
@@ -501,69 +642,73 @@ $('#delmb').click(function(){
 
 		$('form[name="shortcutForm"]').attr('action', url);
 		$('form[name="shortcutForm"]').submit();
-});
-
-/**
- * 保存菜单组模板
- * @param  {[type]} ){  } [description]
- * @return {[type]}        [description]
- */
-$('#savemb').click(function(){
-		//封装
-		beforeSubmit();
-
-		var _form = document.forms['shortcutForm'];
-		var cdmbid = $('#cdmbselected').val();
-		var shortcutInfoStr = JSON.stringify(shortcutMenuInfo);
-		var shortcutGroupStr = JSON.stringify(shortcutGroup);
-
-		generateHiddenForm(_form,'grcdmbid',cdmbid);
-		generateHiddenForm(_form,'shortcutGroup',shortcutGroupStr);
-		generateHiddenForm(_form,'shortcutMenuInfo',shortcutInfoStr);
-		generateHiddenForm(_form,'cdz','1');
-
-		$('form[name="shortcutForm"]').attr('action', "<serv.ss name='saveMenuDef' dest='menuDefSaveOk' parm='{mblx:1}'/>");
-		$('form[name="shortcutForm"]').submit();
-});
-
-/**
- * 新增菜单组模板
- * @param  {[type]} ){  } [description]
- * @return {[type]}        [description]
- */
- var addcallback = (function (t) {
+	// });
+	}
+
+	/**
+	 * 保存菜单组模板
+	 * @param  {[type]} ){  } [description]
+	 * @return {[type]}        [description]
+	 */
+	function doSavemb(){
+		// $('#savemb').click(function(){
+			//封装
+			beforeSubmit();
+
+			var _form = document.forms['shortcutForm'];
+			var cdmbid = $('#cdmbselected').val();
+			var shortcutInfoStr = JSON.stringify(shortcutMenuInfo);
+			var shortcutGroupStr = JSON.stringify(shortcutGroup);
+
+			generateHiddenForm(_form,'grcdmbid',cdmbid);
+			generateHiddenForm(_form,'shortcutGroup',shortcutGroupStr);
+			generateHiddenForm(_form,'shortcutMenuInfo',shortcutInfoStr);
+			generateHiddenForm(_form,'cdz','1');
+
+			$('form[name="shortcutForm"]').attr('action', "<serv.ss name='saveMenuDef' dest='menuDefSaveOk' parm='{mblx:1}'/>");
+			$('form[name="shortcutForm"]').submit();
+		// });
+	}
+
+	/**
+	 * 新增菜单组模板
+	 * @param  {[type]} ){  } [description]
+	 * @return {[type]}        [description]
+	 */
+	var addcallback = (function (t) {
 		var THIS = t;
 		return function (data) {
-				if (data.newMc != null && data.newMc != "") {
-						//封装
-						beforeSubmit();
-
-						var _form = document.forms['shortcutForm'];
-						//添加newMc 表单元素
-						generateHiddenForm(_form, "newMc", data.newMc);
-						generateHiddenForm(_form, "ms", data.ms);
-						generateHiddenForm(_form, "grcdmbh", data.grcdmbh);
-
-						var cdmbid = $('#cdmbselected').val();
-						var shortcutInfoStr = JSON.stringify(shortcutMenuInfo);
-						var shortcutGroupStr = JSON.stringify(shortcutGroup);
-
-						generateHiddenForm(_form, 'grcdmbid', cdmbid);
-						generateHiddenForm(_form, 'shortcutGroup', shortcutGroupStr);
-						generateHiddenForm(_form, 'shortcutMenuInfo', shortcutInfoStr);
-						generateHiddenForm(_form, 'cdz', '1');
-
-						$('form[name="shortcutForm"]').attr('action', "<serv.ss name='saveMenuDef' dest='menuDefSaveOk' parm='{mblx:1}'/>");
-						$('form[name="shortcutForm"]').submit();
-				}
+			if (data.newMc != null && data.newMc != "") {
+				//封装
+				beforeSubmit();
+
+				var _form = document.forms['shortcutForm'];
+				//添加newMc 表单元素
+				generateHiddenForm(_form, "newMc", data.newMc);
+				generateHiddenForm(_form, "ms", data.ms);
+				generateHiddenForm(_form, "grcdmbh", data.grcdmbh);
+
+				var cdmbid = $('#cdmbselected').val();
+				var shortcutInfoStr = JSON.stringify(shortcutMenuInfo);
+				var shortcutGroupStr = JSON.stringify(shortcutGroup);
+
+				generateHiddenForm(_form, 'grcdmbid', cdmbid);
+				generateHiddenForm(_form, 'shortcutGroup', shortcutGroupStr);
+				generateHiddenForm(_form, 'shortcutMenuInfo', shortcutInfoStr);
+				generateHiddenForm(_form, 'cdz', '1');
+
+				$('form[name="shortcutForm"]').attr('action', "<serv.ss name='saveMenuDef' dest='menuDefSaveOk' parm='{mblx:1}'/>");
+				$('form[name="shortcutForm"]').submit();
+			}
 		}
-})(this);
+	})(this);
 
-	$('#addmb').click(function () {
-		wd.display.confirm({ title: "另存为新模板", url: "<serv.ss dest='menuDefAdd'/>", width: 300, height: 240, callback: addcallback });
-	});
+	function doAddcallback(){
+		// $('#addmb').click(function () {
+		wd.display.confirm({ title: "另存为新模板", url: "<ss:serv parm='{"wdConfirmationCaptchaService":"0"}' dest='menuDefAdd'/>", width: 300, height: 240, callback: addcallback });
+		// });
+	}
 
 </script>
 <drag.ss name="ddp" grp="true" func="editGroup,editOrder"/> <%-- name="cd"。再改为统一的名字 -- 同一页面,不会有多个拖放选择。Lin --%>
-<script type="module" src="/js/vue/initFormElem.js"></script><%-- 新UI vue组件初始化 Ben(20251217) --%>
 </html>

+ 52 - 0
page/sys/menuGrpAdd.ss.jsp

@@ -0,0 +1,52 @@
+<html>
+<head>
+</head>
+<body>
+<div id="app" class="form-container" >
+	<div class="content-div" ssFith="true">
+		<table class='form'>
+			<tr>
+				<th style="width:87px">名称</th>
+				<td>
+					<inper.ss name="newMc" desc="名称" width="400px"  val="${newMc}" />
+				</td>
+			</tr>
+			<tr>
+				<th style="width:102px">业务名</th>
+				<td>
+					<%--		<@input type="text" name="bizName"/>--%>
+					<objp.ss name="bizName" cb="biz" inp="true"/>
+				</td>
+			</tr>
+		</table>
+	</div>
+	<div class='bottom-div'>
+<%--		再改为新UI写法 Ben(20251225)	<input type="button" value="确认" class="bottom-button" onclick="confirm()"/> --%>
+			<%-- onclick="confirm(true)。Lin --%>
+			<ss-bottom-button
+					text="确认"
+					onclick="confirm()"
+					icon-class="bottom-div-save"
+			></ss-bottom-button>
+	<%--	改为新UI写法 <input type="button" value="取消" class="bottom-button" onclick="ss.display.closeDialog()"/> --%>
+                <ss-bottom-button
+                        text="取消"
+                        onclick='ss.display.closeDialog();'
+                        icon-class="bottom-div-close"
+                ></ss-bottom-button>
+        </div>
+        <script>
+            /* 改,去掉 bool_,都是 true。Lin
+                function confirm(bool_) {
+                    if (bool_) {
+            */function confirm() {
+                var pw = wd.display.getwdDialogOpener();
+                var data = { newMc: document.querySelector("[name=newMc]").value, bizName: document.querySelector("[name=bizName]").value };
+                pw[wd.display.getwdDialogId() + wd.display.callback_suffix]&&pw[wd.display.getwdDialogId() + wd.display.callback_suffix](data);
+    //	}	// 去掉,去掉 bool_,都是 true。Lin
+                wd.display.closeDialog();
+            }
+        </script>
+    </div>
+    </body>
+    </html>