Merge pull request 'test_frontmenu' (#147) from test_frontmenu into test
Reviewed-on: #147feature/schedulePullData
commit
a416f8cb2f
@ -0,0 +1,150 @@
|
|||||||
|
<#include "/common/taglibs.html" />
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>前端菜单管理</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<#include "/head/headaddedit.html" />
|
||||||
|
</head>
|
||||||
|
<body class="gray-bg">
|
||||||
|
<div class="wrapper wrapper-content animated fadeInRight">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-12">
|
||||||
|
<div class="ibox float-e-margins">
|
||||||
|
<div class="ibox-title">
|
||||||
|
<h5>基本信息</h5>
|
||||||
|
</div>
|
||||||
|
<div class="ibox-content">
|
||||||
|
<div class="main-content">
|
||||||
|
<form name="SFrontmenuTform" method="post" id="SFrontmenuTform" class="form-horizontal" action="${ctx}/backstage/sfrontmenut/save">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 菜单名称:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="name" id="name" class="form-control" placeholder="菜单名称" class="form-control" type="text" maxlength='25' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 菜单关键字:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="reskey" id="reskey" class="form-control" placeholder="菜单关键字" class="form-control" type="text" maxlength='25' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 菜单链接:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="resurl" id="resurl" class="form-control" placeholder="菜单链接" class="form-control" type="text" maxlength='100' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 描述:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="description" id="description" class="form-control" placeholder="描述" class="form-control" type="text" maxlength='100' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="form-group">
|
||||||
|
<div class="col-sm-offset-5">
|
||||||
|
<button id="savebutton" type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||||
|
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<#include "/head/footadd.html" />
|
||||||
|
<script type="text/javascript">
|
||||||
|
$(document).ready(function () {
|
||||||
|
$('.i-checks').iCheck({
|
||||||
|
checkboxClass: 'icheckbox_square-green',
|
||||||
|
radioClass: 'iradio_square-green',
|
||||||
|
});
|
||||||
|
$("#SFrontmenuTform").attr("action","${ctx}/backstage/oa/frontmenu/save");
|
||||||
|
var form1 = $('#SFrontmenuTform');
|
||||||
|
var error1 = $('.alert-danger', form1);
|
||||||
|
form1.validate({
|
||||||
|
debug: true,
|
||||||
|
errorElement: 'span',
|
||||||
|
errorClass: 'help-block help-block-error',
|
||||||
|
focusInvalid: false,
|
||||||
|
ignore: "",
|
||||||
|
errorPlacement: function (error, element) {
|
||||||
|
if (element.parent(".input-group").size() > 0) {
|
||||||
|
error.insertAfter(element.parent(".input-group"));
|
||||||
|
} else if (element.attr("data-error-container")) {
|
||||||
|
error.appendTo(element.attr("data-error-container"));
|
||||||
|
} else if (element.parents('.radio-list').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||||
|
} else if (element.parents('.radio-inline').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||||
|
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||||
|
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||||
|
} else {
|
||||||
|
error.insertAfter(element);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
highlight: function (element) {
|
||||||
|
$(element).closest('.form-group').addClass('has-error');
|
||||||
|
},
|
||||||
|
unhighlight: function (element) {
|
||||||
|
$(element).closest('.form-group').removeClass('has-error');
|
||||||
|
},
|
||||||
|
success: function (label) {
|
||||||
|
label.closest('.form-group').removeClass('has-error');
|
||||||
|
},
|
||||||
|
submitHandler: function (){
|
||||||
|
parent.layer.load();
|
||||||
|
$("#savebutton").addClass('disabled');
|
||||||
|
$("#SFrontmenuTform").ajaxSubmit({
|
||||||
|
headers:{"logintoken": parent.getLoginToken()},
|
||||||
|
success:function(data){
|
||||||
|
parent.layer.closeAll('loading');
|
||||||
|
if(data.code == "OK"){
|
||||||
|
parent.toastr.success(data.message);
|
||||||
|
rolesback();
|
||||||
|
}else if(data.code == "ERRORM"){
|
||||||
|
$.each(data.message,function(name,anArray) {
|
||||||
|
$.each(anArray,function(n,value){
|
||||||
|
$("#" + n).closest('.form-group').addClass('has-error');
|
||||||
|
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
$("#savebutton").addClass('removeClass');
|
||||||
|
parent.toastr.error(data.message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
function rolesback() {
|
||||||
|
parent.closeItem(window.frameElement.name);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
@ -0,0 +1,166 @@
|
|||||||
|
<#include "/common/taglibs.html" />
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>前端菜单管理</title>
|
||||||
|
|
||||||
|
<#include "/head/headaddedit.html" />
|
||||||
|
</head>
|
||||||
|
<body class="gray-bg">
|
||||||
|
<div class="wrapper wrapper-content animated fadeInRight">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-12">
|
||||||
|
<div class="ibox float-e-margins">
|
||||||
|
<div class="ibox-title">
|
||||||
|
<h5>基本信息</h5>
|
||||||
|
</div>
|
||||||
|
<div class="ibox-content">
|
||||||
|
<div class="main-content">
|
||||||
|
<form name="SFrontmenuTform" method="post" id="SFrontmenuTform" class="form-horizontal" action="${ctx}/backstage/sfrontmenut/edit">
|
||||||
|
|
||||||
|
<input type="hidden" id="id" name="id">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 菜单名称:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="name" id="name" class="form-control" placeholder="菜单名称" class="form-control" type="text" maxlength='25' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 菜单关键字:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="reskey" id="reskey" class="form-control" placeholder="菜单关键字" class="form-control" type="text" maxlength='25' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 菜单链接:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="resurl" id="resurl" class="form-control" placeholder="菜单链接" class="form-control" type="text" maxlength='100' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label is-required">* 描述:</label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input name="description" id="description" class="form-control" placeholder="描述" class="form-control" type="text" maxlength='100' required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="form-group">
|
||||||
|
<div class="col-sm-offset-5">
|
||||||
|
<button type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||||
|
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<#include "/head/footadd.html" />
|
||||||
|
<script type="text/javascript">
|
||||||
|
$(document).ready(function () {
|
||||||
|
parent.axgetXiaoyao('${ctx}/backstage/oa/frontmenu/getdata/${id}',null,false , function(data){
|
||||||
|
if(data.code == "OK"){
|
||||||
|
$("#id").val(data.data.id);
|
||||||
|
$("#name").val(data.data.name);
|
||||||
|
$("#parentid").val(data.data.parentid);
|
||||||
|
$("#reskey").val(data.data.reskey);
|
||||||
|
$("#resurl").val(data.data.resurl);
|
||||||
|
$("#level").val(data.data.level);
|
||||||
|
$("#icon").val(data.data.icon);
|
||||||
|
$("#ordernum").val(data.data.ordernum);
|
||||||
|
$("#ishide").val(data.data.ishide);
|
||||||
|
$("#description").val(data.data.description);
|
||||||
|
}else{
|
||||||
|
parent.toastr.error("非法请求。");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$('.i-checks').iCheck({
|
||||||
|
checkboxClass: 'icheckbox_square-green',
|
||||||
|
radioClass: 'iradio_square-green',
|
||||||
|
});
|
||||||
|
$("#SFrontmenuTform").attr("action","${ctx}/backstage/oa/frontmenu/edit");
|
||||||
|
var form1 = $('#SFrontmenuTform');
|
||||||
|
var error1 = $('.alert-danger', form1);
|
||||||
|
form1.validate({
|
||||||
|
debug: true,
|
||||||
|
errorElement: 'span',
|
||||||
|
errorClass: 'help-block help-block-error',
|
||||||
|
focusInvalid: false,
|
||||||
|
ignore: ":hidden",
|
||||||
|
errorPlacement: function (error, element) {
|
||||||
|
if (element.parent(".input-group").size() > 0) {
|
||||||
|
error.insertAfter(element.parent(".input-group"));
|
||||||
|
} else if (element.attr("data-error-container")) {
|
||||||
|
error.appendTo(element.attr("data-error-container"));
|
||||||
|
} else if (element.parents('.radio-list').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||||
|
} else if (element.parents('.radio-inline').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||||
|
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||||
|
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||||
|
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||||
|
} else {
|
||||||
|
error.insertAfter(element);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
highlight: function (element) {
|
||||||
|
$(element).closest('.form-group').addClass('has-error');
|
||||||
|
},
|
||||||
|
unhighlight: function (element) {
|
||||||
|
$(element).closest('.form-group').removeClass('has-error');
|
||||||
|
},
|
||||||
|
success: function (label) {
|
||||||
|
label.closest('.form-group').removeClass('has-error');
|
||||||
|
},
|
||||||
|
submitHandler: function (){
|
||||||
|
parent.layer.load();
|
||||||
|
$("#SFrontmenuTform").ajaxSubmit({
|
||||||
|
headers:{"logintoken": parent.getLoginToken()},
|
||||||
|
success:function(data){
|
||||||
|
parent.layer.closeAll('loading');
|
||||||
|
if(data.code == "OK"){
|
||||||
|
parent.toastr.success(data.message);
|
||||||
|
rolesback();
|
||||||
|
}else if(data.code == "ERRORM"){
|
||||||
|
$.each(data.message,function(name,anArray) {
|
||||||
|
$.each(anArray,function(n,value){
|
||||||
|
$("#" + n).closest('.form-group').addClass('has-error');
|
||||||
|
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
parent.toastr.error(data.message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
function rolesback() {
|
||||||
|
parent.closeItem(window.frameElement.name);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
@ -0,0 +1,11 @@
|
|||||||
|
package cn.jyjz.xiaoyao.frontmenu.dataDao;
|
||||||
|
|
||||||
|
import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
/**
|
||||||
|
* 数据持久化
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface FrontmenuMybatisDao extends BaseMapper<Frontmenu> {
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
package cn.jyjz.xiaoyao.frontmenu.dataDao;
|
||||||
|
|
||||||
|
import cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
/**
|
||||||
|
* 数据持久化
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface UserFrontmenuMybatisDao extends BaseMapper<UserFrontmenu> {
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
package cn.jyjz.xiaoyao.frontmenu.dataobject;
|
||||||
|
|
||||||
|
import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto;
|
||||||
|
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.AbstractMap.SimpleEntry;
|
||||||
|
import java.util.stream.Stream;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Schema(name = "用户和前端菜单关系表", title = "用户和前端菜单关系表")
|
||||||
|
@TableName(value = "s_user_frontmenu_t")
|
||||||
|
public class UserFrontmenu implements BaseDto,java.io.Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 3139365577414759746L;
|
||||||
|
@Schema(description = "用户主键id")
|
||||||
|
@TableField(value="userId")
|
||||||
|
private Long userid;
|
||||||
|
|
||||||
|
@Schema(description = "菜单ID")
|
||||||
|
@TableField(value="menuId")
|
||||||
|
private Long menuid;
|
||||||
|
|
||||||
|
|
||||||
|
//保存当前登录用户的数据权限范围的搜索条件
|
||||||
|
@TableField(exist = false)
|
||||||
|
private SearchQuery searchQueryrolesShowleave;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private final Map<String,String> query = Stream.of(
|
||||||
|
new SimpleEntry<>("listdept","deptid"),
|
||||||
|
new SimpleEntry<>("userId","userid"),
|
||||||
|
new SimpleEntry<>("menuId","menuid")
|
||||||
|
)
|
||||||
|
.collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue));
|
||||||
|
@Override
|
||||||
|
public String getQueryFiled(String filedname){
|
||||||
|
String obj = null;
|
||||||
|
if(null != query && query.size() > 0){
|
||||||
|
obj = query.get(filedname);
|
||||||
|
}
|
||||||
|
return obj;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
package cn.jyjz.xiaoyao.frontmenu.service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService;
|
||||||
|
import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 业务层
|
||||||
|
*/
|
||||||
|
public interface FrontmenuService extends BaseService<Frontmenu> {
|
||||||
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
package cn.jyjz.xiaoyao.frontmenu.service.impl;
|
||||||
|
|
||||||
|
import cn.jyjz.xiaoyao.frontmenu.dataDao.FrontmenuMybatisDao;
|
||||||
|
import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu;
|
||||||
|
import cn.jyjz.xiaoyao.frontmenu.service.FrontmenuService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseServiceImpl;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 业务层实现
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class FrontmenuServiceImpl extends BaseServiceImpl<FrontmenuMybatisDao, Frontmenu> implements FrontmenuService {
|
||||||
|
@Autowired
|
||||||
|
private FrontmenuMybatisDao frontmenuMybatisDao;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="cn.jyjz.xiaoyao.frontmenu.dataDao.FrontmenuMybatisDao">
|
||||||
|
<resultMap id="BaseResultMap" type="cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu">
|
||||||
|
<id column="id" property="id" jdbcType="BIGINT"/>
|
||||||
|
<result column="name" property="name" jdbcType="VARCHAR"/>
|
||||||
|
<result column="parentId" property="parentid" jdbcType="INTEGER"/>
|
||||||
|
<result column="resKey" property="reskey" jdbcType="VARCHAR"/>
|
||||||
|
<result column="resUrl" property="resurl" jdbcType="VARCHAR"/>
|
||||||
|
<result column="level" property="level" jdbcType="INTEGER"/>
|
||||||
|
<result column="icon" property="icon" jdbcType="VARCHAR"/>
|
||||||
|
<result column="orderNum" property="ordernum" jdbcType="INTEGER"/>
|
||||||
|
<result column="ishide" property="ishide" jdbcType="INTEGER"/>
|
||||||
|
<result column="description" property="description" jdbcType="VARCHAR"/>
|
||||||
|
</resultMap>
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
id AS id,
|
||||||
|
name AS name,
|
||||||
|
parentId AS parentid,
|
||||||
|
resKey AS reskey,
|
||||||
|
resUrl AS resurl,
|
||||||
|
level AS level,
|
||||||
|
icon AS icon,
|
||||||
|
orderNum AS ordernum,
|
||||||
|
ishide AS ishide,
|
||||||
|
description AS description
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<sql id="Base_Where">
|
||||||
|
<where>
|
||||||
|
<trim prefixOverrides="and|or">
|
||||||
|
<if test="id != null"> and id ${id.dataOp} ${id.likestar}#{id.value}${id.likeend}</if>
|
||||||
|
<if test="name != null"> and name ${name.dataOp} ${name.likestar}#{name.value}${name.likeend}</if>
|
||||||
|
<if test="parentid != null"> and parentId ${parentid.dataOp} ${parentid.likestar}#{parentid.value}${parentid.likeend}</if>
|
||||||
|
<if test="reskey != null"> and resKey ${reskey.dataOp} ${reskey.likestar}#{reskey.value}${reskey.likeend}</if>
|
||||||
|
<if test="resurl != null"> and resUrl ${resurl.dataOp} ${resurl.likestar}#{resurl.value}${resurl.likeend}</if>
|
||||||
|
<if test="level != null"> and level ${level.dataOp} ${level.likestar}#{level.value}${level.likeend}</if>
|
||||||
|
<if test="icon != null"> and icon ${icon.dataOp} ${icon.likestar}#{icon.value}${icon.likeend}</if>
|
||||||
|
<if test="ordernum != null"> and orderNum ${ordernum.dataOp} ${ordernum.likestar}#{ordernum.value}${ordernum.likeend}</if>
|
||||||
|
<if test="ishide != null"> and ishide ${ishide.dataOp} ${ishide.likestar}#{ishide.value}${ishide.likeend}</if>
|
||||||
|
<if test="description != null"> and description ${description.dataOp} ${description.likestar}#{description.value}${description.likeend}</if>
|
||||||
|
<if test="userid != null"> and USERID ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend}</if>
|
||||||
|
<if test="listdept != null">
|
||||||
|
and DEPARTID in
|
||||||
|
<foreach collection="listdept.value" item="item" index="index" open="(" separator="," close=")" >
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
</trim>
|
||||||
|
</where>
|
||||||
|
<if test="page != null">
|
||||||
|
<if test="page.sortname != null"> order by ${page.sortname} ${page.sortorder}</if>
|
||||||
|
limit ${page.start}, ${page.Pagesize}
|
||||||
|
</if>
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
</mapper>
|
@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="cn.jyjz.xiaoyao.frontmenu.dataDao.UserFrontmenuMybatisDao">
|
||||||
|
<resultMap id="BaseResultMap" type="cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu">
|
||||||
|
<result column="userId" property="userid" jdbcType="BIGINT"/>
|
||||||
|
<result column="menuId" property="menuid" jdbcType="BIGINT"/>
|
||||||
|
</resultMap>
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
userId AS userid,
|
||||||
|
menuId AS menuid
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<sql id="Base_Where">
|
||||||
|
<where>
|
||||||
|
<trim prefixOverrides="and|or">
|
||||||
|
<if test="userid != null"> and userId ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend}</if>
|
||||||
|
<if test="menuid != null"> and menuId ${menuid.dataOp} ${menuid.likestar}#{menuid.value}${menuid.likeend}</if>
|
||||||
|
<if test="userid != null"> and USERID ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend}</if>
|
||||||
|
<if test="listdept != null">
|
||||||
|
and DEPARTID in
|
||||||
|
<foreach collection="listdept.value" item="item" index="index" open="(" separator="," close=")" >
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
</trim>
|
||||||
|
</where>
|
||||||
|
<if test="page != null">
|
||||||
|
<if test="page.sortname != null"> order by ${page.sortname} ${page.sortorder}</if>
|
||||||
|
limit ${page.start}, ${page.Pagesize}
|
||||||
|
</if>
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
</mapper>
|
Loading…
Reference in new issue