用户管理-用户类型vpn调整

vpn服务器ip添加业务字典数据类型
ip校验、cgi服务国际化添加
This commit is contained in:
leijun
2018-12-05 10:03:45 +08:00
parent 53555aa73a
commit dd1862abce
14 changed files with 123 additions and 62 deletions

View File

@@ -113,7 +113,7 @@ public class ServiceDictInfoController extends BaseController {
* @param model
* @return
*/
@RequiresPermissions(value={"basics:classification:view","basics:attribute:view","basics:label:view"},logical=Logical.OR)
@RequiresPermissions(value={"basics:classification:view","basics:attribute:view","basics:label:view","basics:vpn_ip:view"},logical=Logical.OR)
@RequestMapping(value = {"list", ""})
public String list(String itType, ServiceDictInfo serviceDictInfo,HttpServletRequest request, HttpServletResponse response, Model model) {
//处理数据
@@ -183,7 +183,7 @@ public class ServiceDictInfoController extends BaseController {
* @param model
* @return
*/
@RequiresPermissions(value={"basics:classification:add","basics:attribute:add","basics:label:add","basics:classification:edit","basics:attribute:edit","basics:label:edit","basics:classification:view","basics:attribute:view","basics:label:view"},logical=Logical.OR)
@RequiresPermissions(value={"basics:classification:add","basics:attribute:add","basics:vpn_ip:add","basics:label:add","basics:classification:edit","basics:attribute:edit","basics:vpn_ip:edit","basics:label:edit","basics:classification:view","basics:attribute:view","basics:label:view","basics:vpn_ip:view"},logical=Logical.OR)
@RequestMapping(value={"form"})
public String form(ServiceDictInfo serviceDictInfo, Model model,String doAction,String itType) {
if(doAction!=null&&doAction.equals("0")){
@@ -207,7 +207,7 @@ public class ServiceDictInfoController extends BaseController {
* @param redirectAttributes
* @return
*/
@RequiresPermissions(value={"basics:classification:add","basics:attribute:add","basics:label:add","basics:classification:edit","basics:attribute:edit","basics:label:edit"},logical=Logical.OR)
@RequiresPermissions(value={"basics:classification:add","basics:attribute:add","basics:label:add","basics:vpn_ip:add","basics:classification:edit","basics:attribute:edit","basics:label:edit","basics:vpn_ip:edit"},logical=Logical.OR)
@RequestMapping(value = "saveOrUpdate")
public String saveOrUpdate(ServiceDictInfo serviceDictInfo,Model model, RedirectAttributes redirectAttributes,String itType) {
@@ -231,7 +231,7 @@ public class ServiceDictInfoController extends BaseController {
* @param model
* @return
*/
@RequiresPermissions(value={"basics:classification:del","basics:attribute:del","basics:label:del"},logical=Logical.OR)
@RequiresPermissions(value={"basics:classification:del","basics:attribute:del","basics:label:del","basics:vpn_ip:del"},logical=Logical.OR)
@RequestMapping(value={"delete"})
public String delete(ServiceDictInfo serviceDictInfo, RedirectAttributes redirectAttributes, String itType, String mulitId) {
try {

View File

@@ -22,6 +22,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.nis.domain.Page;
import com.nis.domain.basics.IpReuseIpCfg;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.configuration.UserManage;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.Constants;
@@ -82,11 +83,11 @@ public class UserManageController extends BaseController{
userManageService.delete(-1,user,ip,lastIp);
deleteIpLenth++;
} catch (MaatConvertException e) {
message=msgProp.getProperty("user")+" "+user.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("delete_failed");
message=msgProp.getProperty("user")+" "+user.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("delete_failed");
logger.error("用户vpn新增失败",e);
throw e;
}catch (Exception e) {
message=msgProp.getProperty("user")+" "+user.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("delete_failed");
message=msgProp.getProperty("user")+" "+user.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("delete_failed");
logger.error("用户vpn新增失败",e);
throw e;
}
@@ -113,8 +114,6 @@ public class UserManageController extends BaseController{
,String ids,UserManage entity
,RedirectAttributes redirectAttributes) {
Date createTime=new Date();
String errorIp="";
String errorType="";
String addIp="";
String addSuccessIp="";
String deleteIp="";
@@ -145,11 +144,11 @@ public class UserManageController extends BaseController{
addSuccessIp+=addSuccessIp+",";
}
} catch (MaatConvertException e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("save_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("save_failed");
logger.error("用户vpn新增失败",e);
throw e;
}catch (Exception e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("save_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("save_failed");
logger.error("用户vpn新增失败",e);
throw e;
}
@@ -171,11 +170,11 @@ public class UserManageController extends BaseController{
userManageService.updatePwd(entity,ip);
}
} catch (MaatConvertException e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+msgProp.getProperty("password")+msgProp.getProperty("update_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+msgProp.getProperty("password")+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("update_failed");
logger.error("用户vpn密码修改失败",e);
throw e;
}catch (Exception e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+msgProp.getProperty("password")+msgProp.getProperty("update_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+msgProp.getProperty("password")+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("update_failed");
logger.error("用户vpn密码修改失败",e);
throw e;
}
@@ -206,11 +205,11 @@ public class UserManageController extends BaseController{
addSuccessIp+=addSuccessIp+",";
}
} catch (MaatConvertException e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("save_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("save_failed");
logger.error("用户vpn新增失败",e);
throw e;
}catch (Exception e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("save_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("save_failed");
logger.error("用户vpn新增失败",e);
throw e;
}
@@ -226,11 +225,11 @@ public class UserManageController extends BaseController{
deleteSuccessIp+=deleteSuccessIp+",";
}
} catch (MaatConvertException e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("save_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("save_failed");
logger.error("用户vpn删除失败",e);
throw e;
}catch (Exception e) {
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("vpn_ip")+" "+msgProp.getProperty("save_failed");
message=msgProp.getProperty("user")+" "+entity.getUserName()+" "+ip+" "+msgProp.getProperty("cgi_failed")+" "+msgProp.getProperty("save_failed");
logger.error("用户vpn删除失败",e);
throw e;
}
@@ -288,13 +287,12 @@ public class UserManageController extends BaseController{
mapList.add(map2);
IpReuseIpCfg ip=new IpReuseIpCfg();
ip.setFunctionId(636);
List<IpReuseIpCfg> list=ipReuseIpCfgService.findList(ip);
for (int i = 0; i < list.size(); i++) {
IpReuseIpCfg ipReuseIpCfg=list.get(i);
List<ServiceDictInfo> allList = serviceDictInfoService.findAllNoLeafDictList("5");
for (int i = 0; i < allList.size(); i++) {
Map<String, Object> map = Maps.newHashMap();
map.put("id", ipReuseIpCfg.getDestIpAddress());
map.put("id", allList.get(i).getItemValue());
map.put("pId", 0);
map.put("name",ipReuseIpCfg.getDestIpAddress());
map.put("name",allList.get(i).getItemValue());
mapList.add(map);
}
return mapList;
@@ -309,16 +307,21 @@ public class UserManageController extends BaseController{
Map<String,Object> mess=new HashMap<String,Object>();
for(String ip :ipArray){
Map<String,String> map=new HashMap<String,String>();
UserManage user=new UserManage();
IpReuseIpCfg ipReuseIpCfg=ipReuseIpCfgService.getIpByIp(ip);
ServiceDictInfo sysDictInfo=serviceDictInfoService.getByItemValue(ip, 5);
//根据ip调用接口获取数据
try{
String recv=userManageService.getUser(ip,userName);
if (StringUtils.isNotBlank(recv)) {
map=(Map<String,String>)JSON.parse(recv);
if(ipReuseIpCfg!=null ){
map.put("serverIp", ipReuseIpCfg.getDestIpAddress());
if(sysDictInfo!=null ){
map.put("serverIp", sysDictInfo.getItemValue());
userManageList.add(map);
}else{
if(message==""){
message=ip;
}else{
message+=","+ip;
}
}
}
} catch (Exception e) {

View File

@@ -79,7 +79,7 @@ public interface ServiceDictInfoDao extends CrudDao<ServiceDictInfo> {
void auditCancleRequestInfo(@Param("cancelRequestId")Integer cancelRequestId, @Param("indexTable")String indexTable,@Param("id") String id);
Integer requestCancleInfoNumber(@Param("indexTable")String indexTable,@Param("id")Long id);
ServiceDictInfo getByItemValue(@Param("itemValue")String itemValue,@Param("itemType")Integer itemType);

View File

@@ -313,5 +313,13 @@
<select id="requestCancleInfoNumber" resultType="Integer">
select cancel_request_id cancelRequestId from ${indexTable} where cfg_id = #{id}
</select>
<select id="getByItemValue" resultType="com.nis.domain.basics.ServiceDictInfo">
select
<include refid="serviceDictInfoColumns"/>
from
service_dict_info s
where
s.is_valid = 1 AND s.item_value = #{itemValue}
AND s.item_type = #{itemType}
</select>
</mapper>

View File

@@ -9,7 +9,6 @@ import org.springframework.transaction.annotation.Transactional;
import com.google.common.collect.Lists;
import com.nis.domain.Page;
import com.nis.domain.SysMenu;
import com.nis.domain.SysUser;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.util.ConfigDictUtils;
@@ -321,7 +320,15 @@ public class ServiceDictInfoService extends BaseService{
/**
* 根据itemValue查出对象集合
* @param itemCode
* @return
*/
public ServiceDictInfo getByItemValue(String itemValue,Integer itemType) {
return serviceDictInfoDao.getByItemValue(itemValue, itemType);
}

View File

@@ -1333,8 +1333,10 @@ available_ip_total=Available IP Total
address_pool_id=Address Pool ID
log_to_cfg=Config
address_pool_is_used=Address pool is used and cannot perform this operation!
cgi_service_failed=Request CGI server failed
cgi_service_failed=Request CGI Server Failed
available_ip=Available IP
config_sync=Configuration Synchronization
info_failed=Information Acquisition Failure
address_pool_ip_configuration=Address Pool IP Configuration
address_pool_ip_configuration=Address Pool IP Configuration
cgi_failed=CGI Server
ip_check=Please enter a correct IP address

View File

@@ -1335,4 +1335,6 @@ cgi_service_failed=\u8BF7\u6C42CGI\u670D\u52A1\u63A5\u53E3\u5931\u8D25
available_ip=\u53EF\u7528IP\u5730\u5740
config_sync=\u914D\u7F6E\u540C\u6B65
info_failed=\u4FE1\u606F\u83B7\u53D6\u5931\u8D25
address_pool_ip_configuration=\u5730\u5740\u6C60 IP\u914D\u7F6E
address_pool_ip_configuration=\u5730\u5740\u6C60 IP\u914D\u7F6E
cgi_failed=CGI\u670D\u52A1
ip_check=\u8BF7\u586B\u5199\u6B63\u786E\u7684IP\u5730\u5740

View File

@@ -1,5 +1,6 @@
#用户管理字典信息
INSERT INTO `sys_data_dictionary_name` (`id`, `module_name`, `mark`, `remark`, `revision`, `create_time`, `modify_time`, `status`) VALUES ('145', '用户管理', 'USER_TYPE', '', 'user:管理员,2018-11-28 09:48:13edit|user:管理员,2018-11-27 17:50:11edit', '2018-11-27 17:38:36', '2018-11-28 09:48:13', '1');
INSERT INTO `sys_data_dictionary_item` (`id`, `item_code`, `item_value`, `item_desc`, `item_sort`, `status`, `type`, `dictionary_id`) VALUES ('3146', '0', 'VPN', '', '0', '1', '1', '145');
INSERT INTO `sys_data_dictionary_item` (`id`, `item_code`, `item_value`, `item_desc`, `item_sort`, `status`, `type`, `dictionary_id`) VALUES ('3147', '1', 'SIP', '', '0', '1', '1', '145');
INSERT INTO `sys_data_dictionary_item` (`id`, `item_code`, `item_value`, `item_desc`, `item_sort`, `status`, `type`, `dictionary_id`) VALUES ('3181', 'VPN', 'VPN', '', '0', '1', '1', '145');
INSERT INTO `sys_data_dictionary_item` (`id`, `item_code`, `item_value`, `item_desc`, `item_sort`, `status`, `type`, `dictionary_id`) VALUES ('3182', 'SIP', 'SIP', '', '0', '1', '1', '145');

View File

@@ -5,7 +5,7 @@ CREATE TABLE `user_manage` (
`user_name` varchar(255) NOT NULL,
`user_pwd` varchar(255) NOT NULL,
`server_ip` varchar(1000) NOT NULL,
`user_type` varchar(50) DEFAULT NULL,
`user_type` varchar(256) DEFAULT NULL,
`is_valid` int(11) NOT NULL COMMENT '0无效1有效-1删除\r\n',
`is_audit` int(11) NOT NULL COMMENT '0未审核1审核通过2审核未通过3取消审核通过\r\n1 审核未通过,配置可修改\r\n2 审核通过,配置不可删除,只能取消审核通过',
`creator_id` int(11) NOT NULL COMMENT '取自sys_user.id',

View File

@@ -5,3 +5,8 @@ INSERT INTO `sys_data_dictionary_name` (`id`, `module_name`, `mark`, `remark`, `
#日志查询-出入口字典添加
INSERT INTO `sys_data_dictionary_item` (`id`, `item_code`, `item_value`, `item_desc`, `item_sort`, `status`, `type`, `dictionary_id`) VALUES ('3168', '1', 'astana', 'astana', '0', '1', '1', '81');
INSERT INTO `sys_data_dictionary_item` (`id`, `item_code`, `item_value`, `item_desc`, `item_sort`, `status`, `type`, `dictionary_id`) VALUES ('3169', '2', 'almaty', 'almaty', '0', '1', '1', '81');
#VPN服务地址-业务字典数据类型添加
INSERT INTO `sys_data_dictionary_item` (`id`, `item_code`, `item_value`, `item_desc`, `item_sort`, `status`, `type`, `dictionary_id`) VALUES ('3163', '5', 'vpn_ip', '数据类型VPN 服务器IP', '0', '1', '1', '37');

View File

@@ -104,6 +104,11 @@ label.errorShow {
return flagLeafChange;
},"<spring:message code='leafChange'/>");
jQuery.validator.addMethod("ipchecks",function(value,element){
var tel=/^(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(0|1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$/;
return this.optional(element) || (tel.test(value));
},"<spring:message code='ip_check'/>");
$("#name").focus();
validateForm=$("#inputForm").validate({
rules: {
@@ -166,6 +171,10 @@ label.errorShow {
<spring:message code="label"/>
<c:set var="title" value="label"></c:set>
</c:if>
<c:if test="${itType==5 }">
<spring:message code="vpn_ip"/>
<c:set var="title" value="vpnIp"></c:set>
</c:if>
</h3>
<div class="row">
@@ -191,7 +200,7 @@ label.errorShow {
<form:form id="inputForm" modelAttribute="serviceDictInfo" action="${ctx}/basics/serviceDictInfo/saveOrUpdate?itType=${itType}" method="post" class="form-horizontal">
<form:hidden path="serviceDictId"/>
<sys:message content="${message}"/>
<div class="form-group">
<div class="form-group <c:if test="${itType==5 }"> hidden </c:if> " >
<label class="col-md-3 control-label"><spring:message code="superior_config"/>:</label>
<div class="col-md-4">
<c:if test="${itType==1 }">
@@ -203,13 +212,16 @@ label.errorShow {
<c:if test="${itType==3 }">
<c:set var="fatherName"><spring:message code="label"/></c:set>
</c:if>
<c:if test="${itType==5 }">
<c:set var="fatherName"><spring:message code="vpn_ip"/></c:set>
</c:if>
<sys:treeselect id="serviceDictInfo" name="parent.serviceDictId" value="${serviceDictInfo.parent.serviceDictId}" labelName="parent.itemValue"
labelValue="${serviceDictInfo.parent.serviceDictId eq '0'?fatherName:fns:getServiceDictInfoById(serviceDictInfo.parent.serviceDictId).itemValue}"
title="${title }" url="/basics/serviceDictInfo/treeData?itType=${itType}" cssClass="required form-control"/>
<label class="errorShow" style="display: none;"><spring:message code="isLevelNoSure"/></label>
</div>
</div>
<div class="form-group">
<div class="form-group <c:if test="${itType==5 }"> hidden </c:if>">
<label class="col-md-3 control-label radio-lable"><font color="red">*</font> <spring:message code="item_type"/>:</label>
<div class="col-md-4">
<select id="itemTypeCheckChild" name="itemType" class="form-control childrenType typeSame">
@@ -230,12 +242,24 @@ label.errorShow {
</div>
</div> --%>
<div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font><spring:message code="config_content"/>:</label>
<label class="col-md-3 control-label"><font color="red">*</font>
<c:if test="${itType==5 }">
<spring:message code="vpn_ip"/>:
</c:if>
<c:if test="${itType!=5 }">
<spring:message code="config_content"/>:
</c:if>
</label>
<div class="col-md-4">
<form:input path="itemValue" htmlEscape="false" maxlength="64" class="form-control required noBlankSpace"/>
<c:if test="${itType==5 }">
<input class="form-control required ipchecks " id="itemValue" type="text" name="itemValue" value="${serviceDictInfo.itemValue}">
</c:if>
<c:if test="${itType!=5 }">
<form:input path="itemValue" htmlEscape="false" maxlength="64" class="form-control required "/>
</c:if>
</div>
</div>
<div class="form-group">
<div class="form-group <c:if test="${itType==5 }"> hidden </c:if>">
<label class="col-md-3 control-label"><font color="red">*</font><spring:message code="is_leaf"/>:</label>
<div class="col-md-4">
<form:select path="isLeaf" class="form-control leafChange">

View File

@@ -7,9 +7,6 @@
<script src="${ctxStatic}/global/plugins/treeTable/jquery.treeTable.min.js" type="text/javascript"></script>
<script src="${ctxStatic}/pages/scripts/dict.js" type="text/javascript"></script>
<script type="text/javascript">
function reset(){
$("#searchForm").reset();
}
/**
处理全选、全取消
**/
@@ -77,8 +74,9 @@
//reset
$("#resetBtn").on("click",function(){
$(".Wdate").attr("value",'');
$("#searchForm")[0].reset();
$("#itemType").val("");
$("#searchForm")[0].reset();
$("#intype").attr("placeholder","<spring:message code='input'/> "+$("#seltype").find("option:selected").text().trim());
});
//筛选功能初始化
@@ -89,14 +87,7 @@
});
$("#seltype").change(function(){
$("#intype").val("");
var reg = /[A-Za-z]/;
if (reg.test($(".page-title").text())){
$("#intype").attr("placeholder","<spring:message code='input'/>"+" "+$(this).find("option:selected").text());
} else {
$("#intype").attr("placeholder","<spring:message code='input'/>"+$(this).find("option:selected").text());
}
$("#intype").attr("name",$(this).find("option:selected").val());
$("#intype").attr("placeholder","<spring:message code='input'/> "+$(this).find("option:selected").text().trim());
});
$("#treeTable").treeTable({expandLevel : 3}).show();
@@ -163,19 +154,23 @@
<div class="input-group-btn">
<select id="seltype" class="selectpicker select2 input-small" >
<%-- <option value="itemCode"><spring:message code="item_code"></spring:message></option> --%>
<option value="itemValue"><spring:message code="config_content"></spring:message></option>
<option value="itemValue">
<c:if test="${itType!=5 }">
<spring:message code="config_content"></spring:message>
</c:if>
<c:if test="${itType==5 }">
<spring:message code="vpn_ip"></spring:message>
</c:if>
</option>
</select>
</div>
<input id="intype" class="form-control input-medium" placeholder="<spring:message code='config_content'></spring:message>" type="text" maxlength="60">
<input id="intype" class="form-control input-medium" placeholder="<c:if test="${itType!=5 }"><spring:message code='input'/> <spring:message code='config_content'></spring:message></c:if><c:if test="${itType==5 }"><spring:message code='input'/> <spring:message code='vpn_ip'/></c:if>" type="text" maxlength="60">
</div>
</div>
<div class="pull-left">
<button type="button" class="btn blue" onClick="page()"> <i class="fa fa-search"></i> <spring:message code="search"/> </button>
<button type="button" class="btn btn-default" onClick="resetx()" id="resetBtn"> <i class="fa fa-refresh"></i> <spring:message code="reset"/> </button>
<button type="button" class="btn btn-default" id="resetBtn"> <i class="fa fa-refresh"></i> <spring:message code="reset"/> </button>
<button type="button" class="btn btn-default" id="filter-btn"> <spring:message code="filter"></spring:message> <i class="fa fa-angle-double-down"></i></button>
</div>
@@ -279,10 +274,17 @@
<th><input type="checkbox" class="ckboxs" id="selAll" onclick="selectAll()"></th>
<!-- <th>序号</th> -->
<%-- <th><spring:message code="item_code"/></th> --%>
<th><spring:message code="config_content"/></th>
<c:if test="${itType==5 }">
<th><spring:message code="vpn_ip"/></th>
</c:if>
<c:if test="${itType!=5 }">
<th><spring:message code="config_content"/></th>
</c:if>
<th><spring:message code="desc"/></th>
<c:if test="${itType!=5 }">
<th><spring:message code="item_type"/></th>
<th><spring:message code="is_leaf"/></th>
</c:if>
<th><spring:message code="creator"/></th>
<th class="sort-column create_time"><spring:message code="create_time"/>
</th><th><spring:message code="editor"/></th>
@@ -296,10 +298,17 @@
<td><input type="checkbox" class="ckbox" name="check" value="${serviceDictInfo.serviceDictId}"></td>
<%-- <td>${serviceDictInfo.showSequence}</td> --%>
<%-- <td nowrap><i class="icon-icon-tablet"></i><a href="${ctx}/basics/serviceDictInfo/form?serviceDictId=${serviceDictInfo.serviceDictId}&doAction=0">${serviceDictInfo.itemCode}</a></td> --%>
<td nowrap><i class="icon-icon-tablet"></i><a href="${ctx}/basics/serviceDictInfo/form?serviceDictId=${serviceDictInfo.serviceDictId}&doAction=0">${serviceDictInfo.itemValue}</a></td>
<td nowrap><i class="icon-icon-tablet"></i>
<c:if test="${itType!=5 }">
<a href="${ctx}/basics/serviceDictInfo/form?serviceDictId=${serviceDictInfo.serviceDictId}&doAction=0">${serviceDictInfo.itemValue}</a>
</c:if>
<c:if test="${itType==5 }">${serviceDictInfo.itemValue}</c:if>
</td>
<td title="${serviceDictInfo.itemDesc}">${fns:abbr(serviceDictInfo.itemDesc,15)}</td>
<c:if test="${itType!=5 }">
<td><spring:message code='${fns:getDictLabel("SERVICE_DICT_ITM_TYPE",serviceDictInfo.itemType,"0")}'/></td>
<td><spring:message code='${fns:getDictLabel("INT_YES_NO",serviceDictInfo.isLeaf,"0")}'/></td>
</c:if>
<td><c:if test="${serviceDictInfo.serviceDictCreator != null}">
${fns:getUserById(serviceDictInfo.serviceDictCreator.id).name}
</c:if></td>

View File

@@ -104,7 +104,7 @@
html+="</div>";
top.$.jBox(html,{width: $(document).width()*0.6,height: 480,title:"<spring:message code="user_info"/>", buttons:{"<spring:message code="close"/>":true}});
if(data.message !=null && data.message !=""){
var mes="<spring:message code="user"/> "+userName+" "+data.message+" <spring:message code="vpn_ip"/> <spring:message code="info_failed"/>";
var mes="<spring:message code="user"/> "+userName+" "+data.message+" <spring:message code="cgi_failed"/> <spring:message code="info_failed"/>";
top.$.jBox.tip(mes);
}
}

View File

@@ -106,7 +106,7 @@
<div class="col-md-4">
<select name="userType" data-live-search="true" class="selectpicker form-control required">
<c:forEach items="${fns:getDictList('USER_TYPE')}" var="userTypes">
<option value="${userTypes.itemCode}" <c:if test="${user.userType==userTypes.itemCode || (user.userType==null && userTypes.itemCode eq '0')}">selected</c:if>><spring:message code="${userTypes.itemValue}"/></option>
<option value="${userTypes.itemCode}" <c:if test="${user.userType==userTypes.itemCode || (user.userType==null && userTypes.itemCode eq 'VPN')}">selected</c:if>><spring:message code="${userTypes.itemValue}"/></option>
</c:forEach>
</select>
</div>