LiGuang 3 years ago
parent
commit
c3185c8732

+ 217 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/attendanceRule/controller/AttendanceRuleController.java

@@ -0,0 +1,217 @@
+package org.jeecg.modules.geke.attendanceRule.controller;
+
+import java.util.*;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.util.UUIDGenerator;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.geke.attendanceRule.entity.AttendanceRule;
+import org.jeecg.modules.geke.attendanceRule.service.IAttendanceRuleService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.modules.geke.userRule.entity.UserRule;
+import org.jeecg.modules.geke.userRule.service.IUserRuleService;
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+ /**
+ * @Description: 打卡规则
+ * @Author: jeecg-boot
+ * @Date:   2021-12-30
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="打卡规则")
+@RestController
+@RequestMapping("/attendanceRule/attendanceRule")
+public class AttendanceRuleController extends JeecgController<AttendanceRule, IAttendanceRuleService> {
+	@Autowired
+	private IAttendanceRuleService attendanceRuleService;
+
+	@Autowired
+	private IUserRuleService userRuleService;
+	/**
+	 * 分页列表查询
+	 *
+	 * @param attendanceRule
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@AutoLog(value = "打卡规则-分页列表查询")
+	@ApiOperation(value="打卡规则-分页列表查询", notes="打卡规则-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(AttendanceRule attendanceRule,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<AttendanceRule> queryWrapper = QueryGenerator.initQueryWrapper(attendanceRule, req.getParameterMap());
+		Page<AttendanceRule> page = new Page<AttendanceRule>(pageNo, pageSize);
+		IPage<AttendanceRule> pageList = attendanceRuleService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+
+
+	 @AutoLog(value = "打卡规则-分页列表查询")
+	 @ApiOperation(value="打卡规则-分页列表查询", notes="打卡规则-分页列表查询")
+	 @GetMapping(value = "/deptlist")
+	 public Result<?> deptlist(AttendanceRule attendanceRule) {
+		 List<AttendanceRule> attendanceRules = attendanceRuleService.AttendanceRuleByDept(attendanceRule.getDept());
+		 return Result.OK(attendanceRules);
+	 }
+	/**
+	 * 添加
+	 *
+	 * @param attendanceRule
+	 * @return
+	 */
+	@AutoLog(value = "打卡规则-添加")
+	@ApiOperation(value="打卡规则-添加", notes="打卡规则-添加")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody AttendanceRule attendanceRule) {
+		List<UserRule>list=new ArrayList<>();
+		attendanceRule.setId(UUIDGenerator.generate());
+		if (attendanceRule.getRuleType().equals("1")){
+			if (attendanceRule.getUserId()!=null&&!attendanceRule.getUserId().equals("")){
+				String[] split = attendanceRule.getUserId().split(",");
+				for (String id:split){
+					UserRule userRule=new UserRule();
+					userRule.setUserId(id);
+					userRule.setRuleId(attendanceRule.getId());
+					list.add(userRule);
+				}
+				userRuleService.saveBatch(list);
+				attendanceRule.setUserId("");
+				attendanceRule.setUserName("");
+			}
+
+		}
+		attendanceRuleService.save(attendanceRule);
+
+		return Result.OK("添加成功!");
+	}
+	
+	/**
+	 * 编辑
+	 *
+	 * @param attendanceRule
+	 * @return
+	 */
+	@AutoLog(value = "打卡规则-编辑")
+	@ApiOperation(value="打卡规则-编辑", notes="打卡规则-编辑")
+	@PutMapping(value = "/edit")
+	public Result<?> edit(@RequestBody AttendanceRule attendanceRule) {
+		List<UserRule>list=new ArrayList<>();
+		List<String>ids=new ArrayList<>();
+		ids.add(attendanceRule.getId());
+		userRuleService.delteusers(ids);
+		if (attendanceRule.getRuleType().equals("1")){
+			if (attendanceRule.getUserId()!=null&&!attendanceRule.getUserId().equals("")){
+				String[] split = attendanceRule.getUserId().split(",");
+				for (String id:split){
+					UserRule userRule=new UserRule();
+					userRule.setUserId(id);
+					userRule.setRuleId(attendanceRule.getId());
+					list.add(userRule);
+				}
+				userRuleService.saveBatch(list);
+				attendanceRule.setUserId("");
+				attendanceRule.setUserName("");
+			}
+		}
+		attendanceRuleService.updateById(attendanceRule);
+		return Result.OK("编辑成功!");
+	}
+	
+	/**
+	 * 通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "打卡规则-通过id删除")
+	@ApiOperation(value="打卡规则-通过id删除", notes="打卡规则-通过id删除")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		attendanceRuleService.removeById(id);
+			List<String>ids=new ArrayList<>();
+			ids.add(id);
+			userRuleService.delteusers(ids);
+		return Result.OK("删除成功!");
+	}
+	
+	/**
+	 * 批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "打卡规则-批量删除")
+	@ApiOperation(value="打卡规则-批量删除", notes="打卡规则-批量删除")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.attendanceRuleService.removeByIds(Arrays.asList(ids.split(",")));
+			userRuleService.delteusers(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+	
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "打卡规则-通过id查询")
+	@ApiOperation(value="打卡规则-通过id查询", notes="打卡规则-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		AttendanceRule attendanceRule = attendanceRuleService.getById(id);
+		return Result.OK(attendanceRule);
+	}
+
+  /**
+   * 导出excel
+   *
+   * @param request
+   * @param attendanceRule
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, AttendanceRule attendanceRule) {
+      return super.exportXls(request, attendanceRule, AttendanceRule.class, "打卡规则");
+  }
+
+  /**
+   * 通过excel导入数据
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, AttendanceRule.class);
+  }
+
+}

+ 89 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/attendanceRule/entity/AttendanceRule.java

@@ -0,0 +1,89 @@
+package org.jeecg.modules.geke.attendanceRule.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+/**
+ * @Description: 打卡规则
+ * @Author: jeecg-boot
+ * @Date:   2021-12-30
+ * @Version: V1.0
+ */
+@Data
+@TableName("geke_attendance_rule")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="geke_attendance_rule对象", description="打卡规则")
+public class AttendanceRule {
+    
+	/**id*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "id")
+	private java.lang.String id;
+	/**上班类型*/
+	@Excel(name = "上班类型", width = 15)
+    @ApiModelProperty(value = "上班类型")
+	private java.lang.String type;
+	/**规则名称*/
+	@Excel(name = "规则名称", width = 15)
+    @ApiModelProperty(value = "规则名称")
+	private java.lang.String name;
+	/**打卡部门*/
+	@Excel(name = "打卡部门", width = 15)
+    @ApiModelProperty(value = "打卡部门")
+	private java.lang.String dept;
+	/**打卡部门名称*/
+	@Excel(name = "打卡部门名称", width = 15)
+	@ApiModelProperty(value = "打卡部门名称")
+	private java.lang.String deptName;
+	/**工作日*/
+	@Excel(name = "工作日", width = 15)
+	@ApiModelProperty(value = "工作日")
+	private java.lang.String workDay;
+	/**白名单人员id*/
+	@Excel(name = "白名单人员id", width = 15)
+	@ApiModelProperty(value = "白名单人员id")
+	private java.lang.String userId;
+	/**白名单人员名称*/
+	@Excel(name = "白名单人员名称", width = 15)
+	@ApiModelProperty(value = "白名单人员名称")
+	private java.lang.String userName;
+	/**制定类型*/
+	@Excel(name = "制定类型", width = 15)
+	@ApiModelProperty(value = "制定类型")
+	private java.lang.String ruleType;
+	/**打卡上班时间*/
+	@Excel(name = "打卡上班时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "打卡上班时间")
+	private java.util.Date startDate;
+	/**打卡下班时间*/
+	@Excel(name = "打卡下班时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "打卡下班时间")
+	private java.util.Date endDate;
+	/**创建人*/
+	@Excel(name = "创建人", width = 15)
+    @ApiModelProperty(value = "创建人")
+	private java.lang.String createBy;
+	/**创建时间*/
+	@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "创建时间")
+	private java.util.Date createTime;
+}

+ 25 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/attendanceRule/mapper/AttendanceRuleMapper.java

@@ -0,0 +1,25 @@
+package org.jeecg.modules.geke.attendanceRule.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.geke.attendanceRule.entity.AttendanceRule;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 打卡规则
+ * @Author: jeecg-boot
+ * @Date:   2021-12-30
+ * @Version: V1.0
+ */
+public interface AttendanceRuleMapper extends BaseMapper<AttendanceRule> {
+
+    List<AttendanceRule>AttendanceRuleByDept(@Param("id")String id);
+
+    boolean updateRule(AttendanceRule attendanceRule);
+
+    //查询用户的考勤规则
+    AttendanceRule UserRule(@Param("userid")String userid);
+
+    AttendanceRule UserRules(@Param("str")String str);
+}

+ 21 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/attendanceRule/mapper/xml/AttendanceRuleMapper.xml

@@ -0,0 +1,21 @@
+<?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="org.jeecg.modules.geke.attendanceRule.mapper.AttendanceRuleMapper">
+
+
+    <select id="AttendanceRuleByDept" resultType="org.jeecg.modules.geke.attendanceRule.entity.AttendanceRule">
+        select *from geke_attendance_rule where  find_in_set(#{id},dept)
+    </select>
+    <select id="UserRule" resultType="org.jeecg.modules.geke.attendanceRule.entity.AttendanceRule">
+        select *from geke_attendance_rule a left join geke_user_rule b on a.id=b.rule_id where 1=1
+          <if test="userid!=null and ''!=userid">
+             and  b.user_id=#{userid}
+          </if>
+    </select>
+    <select id="UserRules" resultType="org.jeecg.modules.geke.attendanceRule.entity.AttendanceRule">
+        select *from geke_attendance_rule
+        <if test="str!=null and ''!=str">
+            #{str}
+        </if>
+    </select>
+</mapper>

+ 21 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/attendanceRule/service/IAttendanceRuleService.java

@@ -0,0 +1,21 @@
+package org.jeecg.modules.geke.attendanceRule.service;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.geke.attendanceRule.entity.AttendanceRule;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * @Description: 打卡规则
+ * @Author: jeecg-boot
+ * @Date:   2021-12-30
+ * @Version: V1.0
+ */
+public interface IAttendanceRuleService extends IService<AttendanceRule> {
+    List<AttendanceRule> AttendanceRuleByDept(String id);
+
+    AttendanceRule UserRule(String userid);
+
+    AttendanceRule UserRules(String str);
+}

+ 38 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/attendanceRule/service/impl/AttendanceRuleServiceImpl.java

@@ -0,0 +1,38 @@
+package org.jeecg.modules.geke.attendanceRule.service.impl;
+
+import org.jeecg.modules.geke.attendanceRule.entity.AttendanceRule;
+import org.jeecg.modules.geke.attendanceRule.mapper.AttendanceRuleMapper;
+import org.jeecg.modules.geke.attendanceRule.service.IAttendanceRuleService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.List;
+
+/**
+ * @Description: 打卡规则
+ * @Author: jeecg-boot
+ * @Date:   2021-12-30
+ * @Version: V1.0
+ */
+@Service
+public class AttendanceRuleServiceImpl extends ServiceImpl<AttendanceRuleMapper, AttendanceRule> implements IAttendanceRuleService {
+        @Autowired
+        private AttendanceRuleMapper attendanceRuleMapper;
+
+    @Override
+    public List<AttendanceRule> AttendanceRuleByDept(String id) {
+        return attendanceRuleMapper.AttendanceRuleByDept(id);
+    }
+
+    @Override
+    public AttendanceRule UserRule(String userid) {
+        return attendanceRuleMapper.UserRule(userid);
+    }
+
+    @Override
+    public AttendanceRule UserRules(String str) {
+        return attendanceRuleMapper.UserRules(str);
+    }
+}

+ 174 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userRule/controller/UserRuleController.java

@@ -0,0 +1,174 @@
+package org.jeecg.modules.geke.userRule.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.geke.userRule.entity.UserRule;
+import org.jeecg.modules.geke.userRule.service.IUserRuleService;
+import java.util.Date;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+ /**
+ * @Description: 用户规则
+ * @Author: jeecg-boot
+ * @Date:   2022-01-04
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="用户规则")
+@RestController
+@RequestMapping("/userRule/userRule")
+public class UserRuleController extends JeecgController<UserRule, IUserRuleService> {
+	@Autowired
+	private IUserRuleService userRuleService;
+	
+	/**
+	 * 分页列表查询
+	 *
+	 * @param userRule
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@AutoLog(value = "用户规则-分页列表查询")
+	@ApiOperation(value="用户规则-分页列表查询", notes="用户规则-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(UserRule userRule,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<UserRule> queryWrapper = QueryGenerator.initQueryWrapper(userRule, req.getParameterMap());
+		Page<UserRule> page = new Page<UserRule>(pageNo, pageSize);
+		IPage<UserRule> pageList = userRuleService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+
+
+
+	 @GetMapping(value = "/lists")
+	 public Result<?> queryPageLists(UserRule userRule) {
+		 List<Map<String, Object>> users = userRuleService.users(userRule.getRuleId());
+		 return Result.OK(users);
+	 }
+	/**
+	 * 添加
+	 *
+	 * @param userRule
+	 * @return
+	 */
+	@AutoLog(value = "用户规则-添加")
+	@ApiOperation(value="用户规则-添加", notes="用户规则-添加")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody UserRule userRule) {
+		userRuleService.save(userRule);
+		return Result.OK("添加成功!");
+	}
+	
+	/**
+	 * 编辑
+	 *
+	 * @param userRule
+	 * @return
+	 */
+	@AutoLog(value = "用户规则-编辑")
+	@ApiOperation(value="用户规则-编辑", notes="用户规则-编辑")
+	@PutMapping(value = "/edit")
+	public Result<?> edit(@RequestBody UserRule userRule) {
+		userRuleService.updateById(userRule);
+		return Result.OK("编辑成功!");
+	}
+	
+	/**
+	 * 通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "用户规则-通过id删除")
+	@ApiOperation(value="用户规则-通过id删除", notes="用户规则-通过id删除")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		userRuleService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+	
+	/**
+	 * 批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "用户规则-批量删除")
+	@ApiOperation(value="用户规则-批量删除", notes="用户规则-批量删除")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.userRuleService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+	
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "用户规则-通过id查询")
+	@ApiOperation(value="用户规则-通过id查询", notes="用户规则-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		UserRule userRule = userRuleService.getById(id);
+		return Result.OK(userRule);
+	}
+
+  /**
+   * 导出excel
+   *
+   * @param request
+   * @param userRule
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, UserRule userRule) {
+      return super.exportXls(request, userRule, UserRule.class, "用户规则");
+  }
+
+  /**
+   * 通过excel导入数据
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, UserRule.class);
+  }
+
+}

+ 43 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userRule/entity/UserRule.java

@@ -0,0 +1,43 @@
+package org.jeecg.modules.geke.userRule.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+/**
+ * @Description: 用户规则
+ * @Author: jeecg-boot
+ * @Date:   2022-01-04
+ * @Version: V1.0
+ */
+@Data
+@TableName("geke_user_rule")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="geke_user_rule对象", description="用户规则")
+public class UserRule {
+    
+	/**id*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "id")
+	private java.lang.String id;
+	/**规则id*/
+	@Excel(name = "规则id", width = 15)
+    @ApiModelProperty(value = "规则id")
+	private java.lang.String ruleId;
+	/**用户id*/
+	@Excel(name = "用户id", width = 15)
+    @ApiModelProperty(value = "用户id")
+	private java.lang.String userId;
+}

+ 22 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userRule/mapper/UserRuleMapper.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.geke.userRule.mapper;
+
+import java.util.List;
+import java.util.Map;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.geke.userRule.entity.UserRule;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 用户规则
+ * @Author: jeecg-boot
+ * @Date:   2022-01-04
+ * @Version: V1.0
+ */
+public interface UserRuleMapper extends BaseMapper<UserRule> {
+
+    List<Map<String,Object>>users(@Param("ruleid")String ruleid);
+
+    int delteusers(@Param("ruleids")List<String > ruleid);
+
+}

+ 20 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userRule/mapper/xml/UserRuleMapper.xml

@@ -0,0 +1,20 @@
+<?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="org.jeecg.modules.geke.userRule.mapper.UserRuleMapper">
+    <delete id="delteusers">
+        delete from geke_user_rule where 1=1
+        <if test="ruleids!=null  and ruleids.size()>0">
+            and rule_id in
+            <foreach collection="ruleids" index="index" item="id" open="(" separator="," close=")">
+                #{id}
+            </foreach>
+        </if>
+    </delete>
+
+    <select id="users" resultType="java.util.Map">
+        select a.*from sys_user a left join geke_user_rule b  on a.id=b.user_id where 1=1
+<if test="ruleid!=null and ''!=ruleid">
+    and b.rule_id=#{ruleid}
+</if>
+    </select>
+</mapper>

+ 20 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userRule/service/IUserRuleService.java

@@ -0,0 +1,20 @@
+package org.jeecg.modules.geke.userRule.service;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.geke.userRule.entity.UserRule;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 用户规则
+ * @Author: jeecg-boot
+ * @Date:   2022-01-04
+ * @Version: V1.0
+ */
+public interface IUserRuleService extends IService<UserRule> {
+    List<Map<String,Object>> users(String ruleid);
+
+    int delteusers(List<String > ruleid);
+}

+ 34 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userRule/service/impl/UserRuleServiceImpl.java

@@ -0,0 +1,34 @@
+package org.jeecg.modules.geke.userRule.service.impl;
+
+import org.jeecg.modules.geke.userRule.entity.UserRule;
+import org.jeecg.modules.geke.userRule.mapper.UserRuleMapper;
+import org.jeecg.modules.geke.userRule.service.IUserRuleService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 用户规则
+ * @Author: jeecg-boot
+ * @Date:   2022-01-04
+ * @Version: V1.0
+ */
+@Service
+public class UserRuleServiceImpl extends ServiceImpl<UserRuleMapper, UserRule> implements IUserRuleService {
+    @Autowired
+    private  UserRuleMapper userRuleMapper;
+
+    @Override
+    public List<Map<String, Object>> users(String ruleid) {
+        return userRuleMapper.users(ruleid);
+    }
+
+    @Override
+    public int delteusers(List<String > ruleid) {
+        return userRuleMapper.delteusers(ruleid);
+    }
+}