commit
daa151f67f
@ -0,0 +1,97 @@
|
|||||||
|
package com.cyl.manager.ums.controller;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.cyl.h5.config.SecurityUtil;
|
||||||
|
import com.cyl.manager.ums.domain.Member;
|
||||||
|
import com.ruoyi.common.constant.Constants;
|
||||||
|
import com.ruoyi.common.core.domain.model.LoginMember;
|
||||||
|
import com.ruoyi.common.utils.SecurityUtils;
|
||||||
|
import com.ruoyi.framework.config.LocalDataUtil;
|
||||||
|
import com.ruoyi.framework.web.service.TokenService;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import org.springframework.data.domain.PageImpl;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PutMapping;
|
||||||
|
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
import com.ruoyi.common.annotation.Log;
|
||||||
|
import com.ruoyi.common.core.controller.BaseController;
|
||||||
|
import com.ruoyi.common.enums.BusinessType;
|
||||||
|
import com.cyl.manager.ums.convert.MemberLogininforConvert;
|
||||||
|
import com.cyl.manager.ums.domain.MemberLogininfor;
|
||||||
|
import com.cyl.manager.ums.pojo.query.MemberLogininforQuery;
|
||||||
|
import com.cyl.manager.ums.service.MemberLogininforService;
|
||||||
|
import com.cyl.manager.ums.pojo.vo.MemberLogininforVO;
|
||||||
|
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员登录记录Controller
|
||||||
|
*
|
||||||
|
* @author zcc
|
||||||
|
* @date 2023-07-26
|
||||||
|
*/
|
||||||
|
@Api(description ="会员登录记录接口列表")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/ums/memberLogininfor")
|
||||||
|
public class MemberLogininforController extends BaseController {
|
||||||
|
@Autowired
|
||||||
|
private MemberLogininforService service;
|
||||||
|
@Autowired
|
||||||
|
private MemberLogininforConvert convert;
|
||||||
|
@Autowired
|
||||||
|
private TokenService tokenService;
|
||||||
|
|
||||||
|
@ApiOperation("查询会员登录记录列表")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ums:memberLogininfor:list')")
|
||||||
|
@PostMapping("/list")
|
||||||
|
public ResponseEntity<Page<MemberLogininfor>> list(@RequestBody MemberLogininforQuery query, Pageable page) {
|
||||||
|
List<MemberLogininfor> list = service.selectList(query, page);
|
||||||
|
return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("导出会员登录记录列表")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ums:memberLogininfor:export')")
|
||||||
|
@Log(title = "会员登录记录", businessType = BusinessType.EXPORT)
|
||||||
|
@GetMapping("/export")
|
||||||
|
public ResponseEntity<String> export(MemberLogininforQuery query) {
|
||||||
|
List<MemberLogininfor> list = service.selectList(query, null);
|
||||||
|
ExcelUtil<MemberLogininforVO> util = new ExcelUtil<>(MemberLogininforVO.class);
|
||||||
|
return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "会员登录记录数据"));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("获取会员登录记录详细信息")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ums:memberLogininfor:query')")
|
||||||
|
@GetMapping(value = "/{id}")
|
||||||
|
public ResponseEntity<MemberLogininfor> getInfo(@PathVariable("id") Long id) {
|
||||||
|
return ResponseEntity.ok(service.selectById(id));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("修改会员登录记录")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ums:memberLogininfor:edit')")
|
||||||
|
@Log(title = "会员登录记录", businessType = BusinessType.UPDATE)
|
||||||
|
@PutMapping
|
||||||
|
public ResponseEntity<Integer> edit(@RequestBody MemberLogininfor memberLogininfor) {
|
||||||
|
return ResponseEntity.ok(service.update(memberLogininfor));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("删除会员登录记录")
|
||||||
|
@PreAuthorize("@ss.hasPermi('ums:memberLogininfor:remove')")
|
||||||
|
@Log(title = "会员登录记录", businessType = BusinessType.DELETE)
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
public ResponseEntity<Integer> remove(@PathVariable Long id) {
|
||||||
|
return ResponseEntity.ok(service.deleteById(id));
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,16 @@
|
|||||||
|
package com.cyl.manager.ums.convert;
|
||||||
|
|
||||||
|
import org.mapstruct.Mapper;
|
||||||
|
import com.cyl.manager.ums.domain.MemberLogininfor;
|
||||||
|
import com.cyl.manager.ums.pojo.vo.MemberLogininforVO;
|
||||||
|
import java.util.List;
|
||||||
|
/**
|
||||||
|
* 会员登录记录 DO <=> DTO <=> VO / BO / Query
|
||||||
|
*
|
||||||
|
* @author zcc
|
||||||
|
*/
|
||||||
|
@Mapper(componentModel = "spring")
|
||||||
|
public interface MemberLogininforConvert {
|
||||||
|
|
||||||
|
List<MemberLogininforVO> dos2vos(List<MemberLogininfor> list);
|
||||||
|
}
|
||||||
@ -0,0 +1,51 @@
|
|||||||
|
package com.cyl.manager.ums.domain;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import com.ruoyi.common.annotation.Excel;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
/**
|
||||||
|
* 会员登录记录对象 ums_member_logininfor
|
||||||
|
*
|
||||||
|
* @author zcc
|
||||||
|
*/
|
||||||
|
@ApiModel(description="会员登录记录对象")
|
||||||
|
@Data
|
||||||
|
@TableName("ums_member_logininfor")
|
||||||
|
public class MemberLogininfor {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("ID")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty("会员手机号")
|
||||||
|
@Excel(name = "会员手机号")
|
||||||
|
private String phone;
|
||||||
|
|
||||||
|
@ApiModelProperty("会员id")
|
||||||
|
@Excel(name = "会员id")
|
||||||
|
private Long memberId;
|
||||||
|
|
||||||
|
@ApiModelProperty("登录IP地址")
|
||||||
|
@Excel(name = "登录IP地址")
|
||||||
|
private String ipaddr;
|
||||||
|
|
||||||
|
@ApiModelProperty("登录地点")
|
||||||
|
@Excel(name = "登录地点")
|
||||||
|
private String loginLocation;
|
||||||
|
|
||||||
|
@ApiModelProperty("浏览器类型")
|
||||||
|
@Excel(name = "浏览器类型")
|
||||||
|
private String browser;
|
||||||
|
|
||||||
|
@ApiModelProperty("操作系统")
|
||||||
|
@Excel(name = "操作系统")
|
||||||
|
private String os;
|
||||||
|
|
||||||
|
@ApiModelProperty("登陆时间")
|
||||||
|
@Excel(name = "登陆时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private LocalDateTime loginTime;
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,21 @@
|
|||||||
|
package com.cyl.manager.ums.mapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
import com.cyl.manager.ums.domain.MemberLogininfor;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员登录记录Mapper接口
|
||||||
|
*
|
||||||
|
* @author zcc
|
||||||
|
*/
|
||||||
|
public interface MemberLogininforMapper extends BaseMapper<MemberLogininfor> {
|
||||||
|
/**
|
||||||
|
* 查询会员登录记录列表
|
||||||
|
*
|
||||||
|
* @param memberLogininfor 会员登录记录
|
||||||
|
* @return 会员登录记录集合
|
||||||
|
*/
|
||||||
|
List<MemberLogininfor> selectByEntity(MemberLogininfor memberLogininfor);
|
||||||
|
}
|
||||||
@ -0,0 +1,41 @@
|
|||||||
|
package com.cyl.manager.ums.pojo.query;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import lombok.Data;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员登录记录 查询 对象
|
||||||
|
*
|
||||||
|
* @author zcc
|
||||||
|
*/
|
||||||
|
@ApiModel(description="会员登录记录 查询 对象")
|
||||||
|
@Data
|
||||||
|
public class MemberLogininforQuery {
|
||||||
|
@ApiModelProperty("会员手机号 精确匹配")
|
||||||
|
private String phone;
|
||||||
|
|
||||||
|
@ApiModelProperty("会员id 精确匹配")
|
||||||
|
private Long memberId;
|
||||||
|
|
||||||
|
@ApiModelProperty("登录IP地址 精确匹配")
|
||||||
|
private String ipaddr;
|
||||||
|
|
||||||
|
@ApiModelProperty("登录地点 精确匹配")
|
||||||
|
private String loginLocation;
|
||||||
|
|
||||||
|
@ApiModelProperty("浏览器类型 精确匹配")
|
||||||
|
private String browser;
|
||||||
|
|
||||||
|
@ApiModelProperty("操作系统 精确匹配")
|
||||||
|
private String os;
|
||||||
|
|
||||||
|
@ApiModelProperty("登陆时间 精确匹配")
|
||||||
|
private LocalDateTime loginTime;
|
||||||
|
|
||||||
|
private String beginTime;
|
||||||
|
|
||||||
|
private String endTime;
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
package com.cyl.manager.ums.pojo.vo;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import com.ruoyi.common.annotation.Excel;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import lombok.Data;
|
||||||
|
/**
|
||||||
|
* 会员登录记录 数据视图对象
|
||||||
|
*
|
||||||
|
* @author zcc
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class MemberLogininforVO {
|
||||||
|
/** ID */
|
||||||
|
private Long id;
|
||||||
|
/** 会员手机号 */
|
||||||
|
@Excel(name = "会员手机号")
|
||||||
|
private String phone;
|
||||||
|
/** 会员id */
|
||||||
|
@Excel(name = "会员id")
|
||||||
|
private Long memberId;
|
||||||
|
/** 登录IP地址 */
|
||||||
|
@Excel(name = "登录IP地址")
|
||||||
|
private String ipaddr;
|
||||||
|
/** 登录地点 */
|
||||||
|
@Excel(name = "登录地点")
|
||||||
|
private String loginLocation;
|
||||||
|
/** 浏览器类型 */
|
||||||
|
@Excel(name = "浏览器类型")
|
||||||
|
private String browser;
|
||||||
|
/** 操作系统 */
|
||||||
|
@Excel(name = "操作系统")
|
||||||
|
private String os;
|
||||||
|
/** 登陆时间 */
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "登陆时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private LocalDateTime loginTime;
|
||||||
|
}
|
||||||
@ -0,0 +1,121 @@
|
|||||||
|
package com.cyl.manager.ums.service;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.cyl.manager.ums.domain.Member;
|
||||||
|
import com.cyl.manager.ums.mapper.MemberMapper;
|
||||||
|
import com.github.pagehelper.PageHelper;
|
||||||
|
import com.ruoyi.common.core.domain.model.LoginMember;
|
||||||
|
import com.ruoyi.common.utils.AesCryptoUtils;
|
||||||
|
import com.ruoyi.common.utils.ServletUtils;
|
||||||
|
import com.ruoyi.common.utils.ip.AddressUtils;
|
||||||
|
import com.ruoyi.common.utils.ip.IpUtils;
|
||||||
|
import eu.bitwalker.useragentutils.UserAgent;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import com.cyl.manager.ums.mapper.MemberLogininforMapper;
|
||||||
|
import com.cyl.manager.ums.domain.MemberLogininfor;
|
||||||
|
import com.cyl.manager.ums.pojo.query.MemberLogininforQuery;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员登录记录Service业务层处理
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author zcc
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class MemberLogininforService {
|
||||||
|
@Autowired
|
||||||
|
private MemberLogininforMapper memberLogininforMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private MemberMapper memberMapper;
|
||||||
|
|
||||||
|
@Value("${aes.key}")
|
||||||
|
private String aesKey;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询会员登录记录
|
||||||
|
*
|
||||||
|
* @param id 会员登录记录主键
|
||||||
|
* @return 会员登录记录
|
||||||
|
*/
|
||||||
|
public MemberLogininfor selectById(Long id) {
|
||||||
|
return memberLogininforMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询会员登录记录列表
|
||||||
|
*
|
||||||
|
* @param query 查询条件
|
||||||
|
* @param page 分页条件
|
||||||
|
* @return 会员登录记录
|
||||||
|
*/
|
||||||
|
public List<MemberLogininfor> selectList(MemberLogininforQuery query, Pageable page) {
|
||||||
|
QueryWrapper<MemberLogininfor> qw = new QueryWrapper<>();
|
||||||
|
String phone = query.getPhone();
|
||||||
|
if (!StringUtils.isEmpty(phone)) {
|
||||||
|
LambdaQueryWrapper<Member> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.eq(Member::getPhoneEncrypted, AesCryptoUtils.encrypt(aesKey, phone));
|
||||||
|
Member member = memberMapper.selectOne(wrapper);
|
||||||
|
if (member != null){
|
||||||
|
qw.eq("phone", member.getPhoneEncrypted());
|
||||||
|
}else {
|
||||||
|
qw.eq("phone", "-1");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (page != null) {
|
||||||
|
PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize());
|
||||||
|
}
|
||||||
|
String ipaddr = query.getIpaddr();
|
||||||
|
if (!StringUtils.isEmpty(ipaddr)) {
|
||||||
|
qw.eq("ipaddr", ipaddr);
|
||||||
|
}
|
||||||
|
String loginLocation = query.getLoginLocation();
|
||||||
|
if (!StringUtils.isEmpty(loginLocation)) {
|
||||||
|
qw.eq("login_location", loginLocation);
|
||||||
|
}
|
||||||
|
String browser = query.getBrowser();
|
||||||
|
if (!StringUtils.isEmpty(browser)) {
|
||||||
|
qw.eq("browser", browser);
|
||||||
|
}
|
||||||
|
String os = query.getOs();
|
||||||
|
if (!StringUtils.isEmpty(os)) {
|
||||||
|
qw.eq("os", os);
|
||||||
|
}
|
||||||
|
if (query.getBeginTime() != null && query.getEndTime() != null) {
|
||||||
|
qw.ge("login_time", query.getBeginTime());
|
||||||
|
qw.lt("login_time", query.getEndTime());
|
||||||
|
}
|
||||||
|
qw.orderByDesc("login_time");
|
||||||
|
return memberLogininforMapper.selectList(qw);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改会员登录记录
|
||||||
|
*
|
||||||
|
* @param memberLogininfor 会员登录记录
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int update(MemberLogininfor memberLogininfor) {
|
||||||
|
return memberLogininforMapper.updateById(memberLogininfor);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除会员登录记录信息
|
||||||
|
*
|
||||||
|
* @param id 会员登录记录主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteById(Long id) {
|
||||||
|
return memberLogininforMapper.deleteById(id);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
<?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="com.cyl.manager.ums.mapper.MemberLogininforMapper">
|
||||||
|
|
||||||
|
<resultMap type="MemberLogininfor" id="MemberLogininforResult">
|
||||||
|
<result property="id" column="id"/>
|
||||||
|
<result property="phone" column="phone"/>
|
||||||
|
<result property="memberId" column="member_id"/>
|
||||||
|
<result property="ipaddr" column="ipaddr"/>
|
||||||
|
<result property="loginLocation" column="login_location"/>
|
||||||
|
<result property="browser" column="browser"/>
|
||||||
|
<result property="os" column="os"/>
|
||||||
|
<result property="loginTime" column="login_time"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="selectMemberLogininforVo">
|
||||||
|
select id, phone, member_id, ipaddr, login_location, browser, os, login_time from ums_member_logininfor
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<select id="selectByEntity" parameterType="MemberLogininfor" resultMap="MemberLogininforResult">
|
||||||
|
<include refid="selectMemberLogininforVo"/>
|
||||||
|
<where>
|
||||||
|
<if test="phone != null and phone != ''"> and phone = #{phone}</if>
|
||||||
|
<if test="memberId != null "> and member_id = #{memberId}</if>
|
||||||
|
<if test="ipaddr != null and ipaddr != ''"> and ipaddr = #{ipaddr}</if>
|
||||||
|
<if test="loginLocation != null and loginLocation != ''"> and login_location = #{loginLocation}</if>
|
||||||
|
<if test="browser != null and browser != ''"> and browser = #{browser}</if>
|
||||||
|
<if test="os != null and os != ''"> and os = #{os}</if>
|
||||||
|
<if test="loginTime != null "> and login_time = #{loginTime}</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
</mapper>
|
||||||
@ -0,0 +1,22 @@
|
|||||||
|
-- 菜单 SQL
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('会员登录记录', '3', '1', 'memberLogininfor', 'ums/memberLogininfor/index', 1, 0, 'C', '0', '0', 'ums:memberLogininfor:list', '#', 1, sysdate(), '', null, '会员登录记录菜单');
|
||||||
|
|
||||||
|
-- 按钮父菜单ID
|
||||||
|
SELECT @parentId := LAST_INSERT_ID();
|
||||||
|
|
||||||
|
-- 按钮 SQL
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('会员登录记录查询', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', 'ums:memberLogininfor:query', '#', 1, sysdate(), '', null, '');
|
||||||
|
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('会员登录记录新增', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', 'ums:memberLogininfor:add', '#', 1, sysdate(), '', null, '');
|
||||||
|
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('会员登录记录修改', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', 'ums:memberLogininfor:edit', '#', 1, sysdate(), '', null, '');
|
||||||
|
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('会员登录记录删除', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', 'ums:memberLogininfor:remove', '#', 1, sysdate(), '', null, '');
|
||||||
|
|
||||||
|
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
||||||
|
values('会员登录记录导出', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', 'ums:memberLogininfor:export', '#', 1, sysdate(), '', null, '');
|
||||||
Loading…
Reference in new issue