LiGuang 3 年之前
父節點
當前提交
22ac04e939

+ 2 - 1
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userchange/entity/UserChage.java

@@ -56,7 +56,7 @@ public class UserChage {
     @ApiModelProperty(value = "调整后职位")
 	private java.lang.String endPost;
 	/**原薪资*/
-	@Excel(name = "原薪资", width = 15)
+
     @ApiModelProperty(value = "原薪资")
 	private java.lang.String startWages;
 	/**调整后薪资*/
@@ -72,6 +72,7 @@ public class UserChage {
 	@Dict(dicCode = "id",dictTable = "sys_user",dicText = "realname")
 	private java.lang.String conmitId;
 	/**生效日期*/
+	@Excel(name = "生效日期", width = 15,format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "生效日期")

+ 1 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/usercontract/mapper/xml/UserContractMapper.xml

@@ -23,5 +23,6 @@
         <if test="userid!=null and ''!=userid">
             and user_id=#{userid}
         </if>
+        order by create_time desc
     </select>
 </mapper>

+ 22 - 1
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userquit/controller/UserQuitController.java

@@ -6,10 +6,14 @@ import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+
+import org.apache.shiro.SecurityUtils;
 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.system.vo.LoginUser;
 import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.geke.userPrize.entity.UserPrize;
 import org.jeecg.modules.geke.userchange.entity.UserChage;
 import org.jeecg.modules.geke.userchange.service.IUserChageService;
 import org.jeecg.modules.geke.usercontract.entity.UserContract;
@@ -28,6 +32,7 @@ import org.jeecgframework.poi.excel.entity.ImportParams;
 import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
@@ -55,6 +60,9 @@ public class UserQuitController extends JeecgController<UserQuit, IUserQuitServi
 
 	@Autowired
 	private IUserContractService userContractService;
+
+	 @Value("${jeecg.path.upload}")
+	 private String upLoadPath;
 	
 	/**
 	 * 分页列表查询
@@ -176,7 +184,20 @@ public class UserQuitController extends JeecgController<UserQuit, IUserQuitServi
    */
   @RequestMapping(value = "/exportXls")
   public ModelAndView exportXls(HttpServletRequest request, UserQuit userQuit) {
-      return super.exportXls(request, userQuit, UserQuit.class, "入职,离职信息");
+	  Page<UserQuit> page = new Page<UserQuit>(1, 10000);
+	  //IPage<UserQuit> pageList = userQuitService.page(page, queryWrapper);
+	  Page<UserQuit> list = userQuitService.list(page, userQuit);
+	  LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+	  ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+	  mv.addObject(NormalExcelConstants.FILE_NAME, "离职信息列表"); //此处设置的filename无效 ,前端会重更新设置一下
+	  mv.addObject(NormalExcelConstants.CLASS, UserQuit.class);
+	  //update-begin--Author:liusq  Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
+	  ExportParams  exportParams=new ExportParams("离职信息列表", "导出人:" + sysUser.getRealname(), "离职信息列表");
+	  exportParams.setImageBasePath(upLoadPath);
+	  //update-end--Author:liusq  Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
+	  mv.addObject(NormalExcelConstants.PARAMS,exportParams);
+	  mv.addObject(NormalExcelConstants.DATA_LIST, list.getRecords());
+	  return mv;
   }
 
   /**

+ 18 - 16
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userquit/entity/UserQuit.java

@@ -34,69 +34,71 @@ public class UserQuit {
     @ApiModelProperty(value = "id")
 	private java.lang.String id;
 	/**spNo*/
-	@Excel(name = "spNo", width = 15)
     @ApiModelProperty(value = "spNo")
 	private java.lang.String spNo;
 	/**spName*/
-	@Excel(name = "spName", width = 15)
     @ApiModelProperty(value = "spName")
 	private java.lang.String spName;
 	/**applyTime*/
-	@Excel(name = "applyTime", 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 = "applyTime")
 	private java.util.Date applyTime;
 	/**userId*/
-	@Excel(name = "userId", width = 15)
     @ApiModelProperty(value = "userId")
 	private java.lang.String userId;
 	/**userName*/
-	@Excel(name = "userName", width = 15)
+	@Excel(name = "姓名", width = 15)
     @ApiModelProperty(value = "userName")
 	private java.lang.String userName;
 	/**dept*/
-	@Excel(name = "dept", width = 15)
+	@Excel(name = "部门", width = 15)
     @ApiModelProperty(value = "dept")
 	private java.lang.String dept;
+
+	@Excel(name = "职位", width = 20)
+	private java.lang.String post;
 	/**deptId*/
-	@Excel(name = "deptId", width = 15)
     @ApiModelProperty(value = "deptId")
 	private java.lang.String deptId;
 	/**startDate*/
-	@Excel(name = "startDate", 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 = "startDate")
 	private java.util.Date startDate;
 	/**endDate*/
-	@Excel(name = "endDate", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+	@Excel(name = "预计离职日期", width = 20, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "endDate")
 	private java.util.Date endDate;
+
+	@Excel(name = "实际离职日期", width = 20, format = "yyyy-MM-dd")
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+	@DateTimeFormat(pattern="yyyy-MM-dd")
+	@ApiModelProperty(value = "newDate")
+	private java.util.Date newDate;
+
 	/**workDate*/
-	@Excel(name = "workDate", 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 = "workDate")
 	private java.util.Date workDate;
 	/**zzDate*/
-	@Excel(name = "zzDate", 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 = "zzDate")
 	private java.util.Date zzDate;
 
 	/**remarks*/
-	@Excel(name = "remarks", width = 15)
+	@Excel(name = "备注", width = 15)
 	@ApiModelProperty(value = "remarks")
 	private java.lang.String remarks;
 
-	private java.lang.String post;
-	private java.util.Date newDate;
-
+	@Excel(name = "状态", width = 15 ,dicCode = "state")
 	@Dict(dicCode = "state")
-	private java.lang.String state;
+	private java.lang.Integer state;
+
+	private java.lang.Integer status;
 
 }

+ 2 - 1
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userquit/mapper/UserQuitMapper.java

@@ -17,10 +17,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface UserQuitMapper extends BaseMapper<UserQuit> {
     int deleteDate(@Param("startDate")String startDate,@Param("endDate")String endDate);
-    List<UserQuit>list(Page<UserQuit> page,@Param("userQuit")UserQuit userQuit,@Param("deptids")List<String>deptids);
+    List<UserQuit>list(Page<UserQuit> page,@Param("userQuit")UserQuit userQuit,@Param("deptids")List<String>deptids,@Param("state")String state,@Param("newDate")String newDate);
     boolean updateUserSate(@Param("userid")String userid);
 
     List<UserQuit>lists(@Param("startDate")String startDate);
+
     List<UserQuit>getUserIds(@Param("userid")String userid);
 
     boolean updateByUserid(@Param("userid")List<String>userid);

+ 5 - 2
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userquit/mapper/xml/UserQuitMapper.xml

@@ -26,8 +26,8 @@
         <if test="userQuit.userName!=null and ''!=userQuit.userName">
             and user_name like concat(concat('%',#{userQuit.userName}),'%')
         </if>
-        <if test="userQuit.state!=null and ''!=userQuit.state">
-            and state=#{userQuit.state}
+        <if test="state!=null and ''!=state">
+            and state=#{state}
         </if>
         <if test="deptids!=null and deptids.size()>0">
             and dept_id in
@@ -35,6 +35,9 @@
                 #{id}
             </foreach>
         </if>
+        <if test="newDate!=null and ''!=newDate">
+          and   date_format(new_date,'%Y-%m-%d')=date_format(#{newDate},'%Y-%m-%d')
+        </if>
     </select>
     <select id="lists" resultType="org.jeecg.modules.geke.userquit.entity.UserQuit">
         select *from geke_user_quit where state='1' and status='0'

+ 8 - 1
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userquit/service/impl/UserQuitServiceImpl.java

@@ -1,6 +1,7 @@
 package org.jeecg.modules.geke.userquit.service.impl;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.common.util.DateUtils;
 import org.jeecg.modules.geke.makeUpCard.mapper.MakeUpCardMapper;
 import org.jeecg.modules.geke.userquit.entity.UserQuit;
 import org.jeecg.modules.geke.userquit.mapper.UserQuitMapper;
@@ -42,10 +43,16 @@ public class UserQuitServiceImpl extends ServiceImpl<UserQuitMapper, UserQuit> i
     @Override
     public Page<UserQuit> list(Page<UserQuit> page, UserQuit userQuit) {
         List<String> subDepIdsByDepId=null;
+        String state=null;
+        String newDate=null;
         if (userQuit.getDeptId()!=null){
             subDepIdsByDepId= makeUpCardMapper.getSubDepIdsByDepId(userQuit.getDeptId());
+        }if (userQuit.getState()!=null){
+            state=userQuit.getState().toString();
+        }if (userQuit.getNewDate()!=null){
+            newDate= DateUtils.formatDate(userQuit.getNewDate());
         }
-        List<UserQuit> list = userQuitMapper.list(page, userQuit, subDepIdsByDepId);
+        List<UserQuit> list = userQuitMapper.list(page, userQuit, subDepIdsByDepId,state,newDate);
         return page.setRecords(list);
     }
 

+ 110 - 12
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysUserController.java

@@ -45,6 +45,8 @@ import org.jeecg.modules.geke.userShift.entity.UserShiftVo;
 import org.jeecg.modules.geke.userShift.service.IUserShiftService;
 import org.jeecg.modules.geke.userchange.entity.UserChage;
 import org.jeecg.modules.geke.userchange.service.IUserChageService;
+import org.jeecg.modules.geke.usercontract.entity.UserContract;
+import org.jeecg.modules.geke.usercontract.service.IUserContractService;
 import org.jeecg.modules.geke.userquit.entity.UserQuit;
 import org.jeecg.modules.geke.userquit.service.IUserQuitService;
 import org.jeecg.modules.geke.vacation.entity.Vacation;
@@ -140,6 +142,9 @@ public class SysUserController {
     @Autowired
     private ISysDepartRoleService departRoleService;
 
+    @Autowired
+    private IUserContractService userContractService;
+
     @Autowired
     private SysDepartMapper departMapper;
 
@@ -308,6 +313,7 @@ public class SysUserController {
         String state="0";
         List<String> mySubDepIdsByDepId=null;
         List<String> status=null;
+        List<String> category=null;
         LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         List<SysUserRole> userRole = sysUserRoleService.list(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, sysUser.getId()));
         if (userRole!=null&&userRole.size()>0){
@@ -325,8 +331,10 @@ public class SysUserController {
             subDepIdsByDepId= sysDepartService.getSubDepIdsByDepId(user.getOrgCodeTxt());
         }if (user.getEmpStatus()!=null&&!"".equals(user.getEmpStatus())){
             status=Arrays.asList(user.getEmpStatus().split(","));
+        }if (user.getCategory()!=null&&!"".equals(user.getCategory())){
+            category=Arrays.asList(user.getCategory().toString().split(","));
         }
-        Page<SysUser> pageList = sysUserService.kQueryUser(page, user,subDepIdsByDepId,mySubDepIdsByDepId,status);
+        Page<SysUser> pageList = sysUserService.kQueryUser(page, user,subDepIdsByDepId,mySubDepIdsByDepId,status,category);
         //批量查询用户的所属部门
         //step.1 先拿到全部的 useids
         //step.2 通过 useids,一次性查询用户的所属部门名字
@@ -334,6 +342,11 @@ public class SysUserController {
         if(userIds!=null && userIds.size()>0){
             Map<String,String>  useDepNames = sysUserService.getDepNamesByUserIds(userIds);
             pageList.getRecords().forEach(item->{
+                List<UserContract> list = userContractService.list(item.getId());
+                if (list!=null&&list.size()>0){
+                    item.setContractType(list.get(0).getContractType());
+                    item.setCEndDate(list.get(0).getEndDate());
+                }
                 String bankCard = item.getBankCard();
                 item.setOrgCodeTxt(useDepNames.get(item.getId()));
                 List<UserQuit> userIds1 = userQuitService.getUserIds(item.getId());
@@ -418,6 +431,14 @@ public class SysUserController {
             }
 			sysUserService.addUserWithRole(user, selectedRoles);
             sysUserService.addUserWithDepart(user, selectedDeparts);
+            UserContract userContract=new UserContract();
+            userContract.setUserId(user.getId());
+            userContract.setRealname(jsonObject.get("realname").toString());
+            userContract.setContractType(user.getContractType());
+            userContract.setDeptId(jsonObject.get("departIds").toString());
+            userContract.setStartDate(user.getEntryDate());
+            userContract.setEndDate(user.getCEndDate());
+            userContractService.save(userContract);
             if (jsonObject.getString("type")!=null){
                 AttendanceRule attendanceRule=new AttendanceRule();
                 attendanceRule.setUserId(String.valueOf(codeVo.getSeqNo()));
@@ -804,12 +825,15 @@ public class SysUserController {
         //update-end--Author:kangxiaolin  Date:20180825 for:[03]用户导出,如果选择数据则只导出相关数据----------------------
         List<String> subDepIdsByDepId=null;
         List<String> status=null;
+        List<String> category=null;
         if (sysUser.getOrgCodeTxt()!=null){
             subDepIdsByDepId= sysDepartService.getSubDepIdsByDepId(sysUser.getOrgCodeTxt());
         }if (sysUser.getEmpStatus()!=null&&!"".equals(sysUser.getEmpStatus())){
             status=Arrays.asList(sysUser.getEmpStatus().split(","));
+        }if (sysUser.getCategory()!=null&&!"".equals(sysUser.getCategory())){
+            category=Arrays.asList(sysUser.getCategory().toString().split(","));
         }
-        List<SysUser> pageList = sysUserMapper.kQueryUser(page, sysUser,subDepIdsByDepId,null,status);
+        List<SysUser> pageList = sysUserMapper.kQueryUser(page, sysUser,subDepIdsByDepId,null,status,category);
 
         List<String>userids=new ArrayList<>();
        if (pageList.size()>0){
@@ -862,7 +886,6 @@ public class SysUserController {
         if (sysUser.getOrgCodeTxt()!=null&&!sysUser.getOrgCodeTxt().equals("")&&sysUser.getOrgCodeTxt().equals("空白模板")){
             sName="员工信息模板";
             SysUser u=new SysUser();
-            /*SysUser u=new SysUser();
             u.setRealname("例:李四");
             u.setEgName("例:cent");
             u.setEmail("例:cent.li@gksports.com.cn");
@@ -880,7 +903,24 @@ public class SysUserController {
             u.setBankCard("例:622************142");
             u.setBankAddr("例:上海工商银行徐汇支行");
             u.setSyFund("例:061***********245");
-            u.setWagesOne("例:10000");*/
+            u.setWagesOne("例:10000");
+            u.setAge(20);
+            u.setSfzType("例:中国身份证");
+            u.setNationality("101");
+            u.setEducation("101");
+            u.setSchool("例:上海师范大学");
+            u.setShareDept("1");
+            u.setTrialMoth("6");
+            u.setTrialEndDate(new Date());
+            u.setWorkMoth("6");
+            u.setDivisionMoth("120");
+            u.setWagesBase("8000");
+            u.setPost("zongcaibansiji");
+            u.setHomeAddr("例:上海市徐汇区1022号");
+            u.setAddr("例:广东省广州市");
+            u.setIsAttendance("是");
+            u.setType("2");
+            u.setRemarks("国外友人");
             pageList=new ArrayList<>();
             pageList.add(u);
         }
@@ -918,7 +958,7 @@ public class SysUserController {
 
             try {
                 List<SysUser> listSysUsers = ExcelImportUtil.importExcel(file.getInputStream(), SysUser.class, params);
-                //listSysUsers.remove(0);
+                listSysUsers.remove(0);
                 for (int i = 0; i < listSysUsers.size(); i++) {
                     SysUser sysUserExcel = listSysUsers.get(i);
                     int lineNumber = i + 1;
@@ -937,7 +977,6 @@ public class SysUserController {
                     sysUserExcel.setCode(workNo);
                     sysUserExcel.setId(workNo);
                     sysUserExcel.setTrialMoth("6");
-                    sysUserExcel.setIsAttendance("0");
                     if (sysUserExcel.getEmploymentStatus()==null||sysUserExcel.getEmploymentStatus().equals("")){
                         sysUserExcel.setEmploymentStatus(40);
                     }if(sysUserExcel.getEntryDate()!=null){
@@ -953,6 +992,10 @@ public class SysUserController {
                         now.setTime(date);
                         now.add(Calendar.DAY_OF_MONTH,-1);
                         sysUserExcel.setTrialEndDate(now.getTime());
+                    }if (sysUserExcel.getIsAttendance().equals("否")){
+                        sysUserExcel.setIsAttendance("1");
+                    }if (sysUserExcel.getIsAttendance().equals("是")){
+                        sysUserExcel.setIsAttendance("0");
                     }
                     sysUserExcel.setUsername(workNo);
                     if (StringUtils.isBlank(sysUserExcel.getPassword())) {
@@ -999,10 +1042,20 @@ public class SysUserController {
                                                             if (sysUserExcel.getBirthday()!=null){
                                                                     if (!"".equals(sysUserExcel.getSex())&&sysUserExcel.getSex()!=null){
                                                                         sysUserService.addUserWithRole(sysUserExcel, "1473241527673765890");
-                                                                        AttendanceRule attendanceRule=new AttendanceRule();
-                                                                        attendanceRule.setUserId(workNo);
-                                                                        attendanceRule.setType("2");
-                                                                        attendanceRuleService.save(attendanceRule);
+                                                                        if (sysUserExcel.getIsAttendance().equals("0")){
+                                                                            AttendanceRule attendanceRule=new AttendanceRule();
+                                                                            attendanceRule.setUserId(workNo);
+                                                                            attendanceRule.setType(sysUserExcel.getType());
+                                                                            attendanceRuleService.save(attendanceRule);
+                                                                        }
+                                                                        UserContract userContract=new UserContract();
+                                                                        userContract.setUserId(sysUserExcel.getId());
+                                                                        userContract.setRealname(sysUserExcel.getRealname());
+                                                                        userContract.setContractType(sysUserExcel.getContractType());
+                                                                        userContract.setDeptId(sysUserExcel.getDepartId());
+                                                                        userContract.setStartDate(sysUserExcel.getEntryDate());
+                                                                        userContract.setEndDate(sysUserExcel.getCEndDate());
+                                                                        userContractService.save(userContract);
                                                                         successLines++;
                                                                     }else {
                                                                         errorLines++;
@@ -2237,10 +2290,10 @@ public class SysUserController {
                                 str.setStartPost(ones.getName());
                             }
                         }
-                    lst.add(sysUser);
+                   // lst.add(sysUser);
                     });
                     userChageService.saveBatch(list);
-                    sysUserService.updateBatchById(lst);
+                    //sysUserService.updateBatchById(lst);
                 }
                 //400条 saveBatch消耗时间1592毫秒  循环插入消耗时间1947毫秒
                 //1200条  saveBatch消耗时间3687毫秒 循环插入消耗时间5212毫秒
@@ -2260,5 +2313,50 @@ public class SysUserController {
         return Result.error("文件导入失败!");
     }
 
+    @RequestMapping(value = "/emails", method = RequestMethod.GET)
+    public  String emails(String email,String userid) {
+        String eml=null;
+        if (userid!=null&&!"".equals(userid)){
+            List<String> emails = sysUserService.emails(email.split("@")[0],userid);
+            if (emails!=null&&emails.size()>0){
+                eml=emails.get(0);
+            }else {
+                List<String> ema = sysUserService.emails(email.split("@")[0],null);
+                if (ema!=null&&ema.size()>1){
+                    String[] split = ema.get(0).split("@");
+                    String el = split[0].substring(0, split[0].length() - 2);
+                    String substring = split[0].substring(split[0].length() - 2, split[0].length());
+                    int i = Integer.parseInt(split[0].substring(split[0].length() - 2, split[0].length()));
+                    i++;
+                    String sum=String.valueOf(i);
+                    if (i<10){
+                        sum="0"+i;
+                    }
+                    eml=el+sum+"@"+split[1];
+                }else  if (ema!=null&&ema.size()==1){
+                    String[] split = ema.get(0).split("@");
+                    eml=split[0]+"01"+"@"+split[1];
+                }
+            }
+        }else {
+            List<String> emails = sysUserService.emails(email.split("@")[0],null);
+            if (emails!=null&&emails.size()>1){
+                String[] split = emails.get(0).split("@");
+                String el = split[0].substring(0, split[0].length() - 2);
+                String substring = split[0].substring(split[0].length() - 2, split[0].length());
+                int i = Integer.parseInt(split[0].substring(split[0].length() - 2, split[0].length()));
+                i++;
+                String sum=String.valueOf(i);
+                if (i<10){
+                    sum="0"+i;
+                }
+                eml=el+sum+"@"+split[1];
+            }else  if (emails!=null&&emails.size()==1){
+                String[] split = emails.get(0).split("@");
+                eml=split[0]+"01"+"@"+split[1];
+            }
+        }
 
+        return eml;
+    }
 }

+ 13 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysUser.java

@@ -314,10 +314,7 @@ public class SysUser implements Serializable {
 
 
 
-    /**
-     * 是否考勤 0是 1否
-     */
-    private String isAttendance;
+
 
     /**
      * 是否算薪 0是 1否
@@ -432,6 +429,12 @@ public class SysUser implements Serializable {
     @Excel(name = "上班类型", width = 15,dicCode = "type")
     @Dict(dicCode = "type")
     private transient  String type;
+
+    /**
+     * 是否考勤 0是 1否
+     */
+    @Excel(name = "*是否打卡", width = 15)
+    private String isAttendance;
     /***
      * 预计离职时间
      */
@@ -449,4 +452,10 @@ public class SysUser implements Serializable {
     private transient  String demo;
 
     private transient String empStatus;
+
+    private transient String contractType;
+
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private transient Date cEndDate;
+
 }

+ 3 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java

@@ -220,7 +220,7 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
 	//获取下一个工号
 	void getNextNo(CodeVo params);
 
-	List<SysUser>kQueryUser(Page<SysUser> page,@Param("user") SysUser user,@Param("deptids")List<String> deptids,@Param("mydeptids")List<String>mydeptids,@Param("status")List<String>status);
+	List<SysUser>kQueryUser(Page<SysUser> page,@Param("user") SysUser user,@Param("deptids")List<String> deptids,@Param("mydeptids")List<String>mydeptids,@Param("status")List<String>status,@Param("category")List<String>category);
 
 	//根据员工姓名查询部门
 	List<Map<String,Object>>getDeptByUserName(@Param("username")String username);
@@ -229,4 +229,6 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
 
 	List<SysUser>RoleUser(Page<SysUser> page,@Param("sysUser")SysUser sysUser);
 
+	List<String>emails(@Param("email")String email,@Param("userid")String userid);
+
 }

+ 17 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml

@@ -447,6 +447,13 @@ on a.depart_name=b.orgCodeTxt
 				#{id}
 			</foreach>
 		</if>
+		<if test="category!=null and category.size()>0">
+			and a.category in
+			<foreach collection="category" index="index" item="id" open="(" separator="," close=")">
+				#{id}
+			</foreach>
+		</if>
+
 		<if test="user.phone!=null and ''!=user.phone">
 			and a.phone like concat(concat('%',#{user.phone}),'%')
 		</if>
@@ -493,4 +500,14 @@ on a.depart_name=b.orgCodeTxt
 			and b.role_id!=#{sysUser.del5}
 		</if>
 	</select>
+	<select id="emails" resultType="java.lang.String">
+		select email from sys_user where 1=1
+		<if test="email!=null and ''!=email">
+			and email like concat(concat(#{email}),'%')
+		</if>
+		<if test="userid!=null and ''!=userid">
+			and id=#{userid}
+		</if>
+		order by  create_time desc
+	</select>
 </mapper>

+ 3 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/ISysUserService.java

@@ -310,10 +310,12 @@ List<String>  departIds(String userid);
 
 	Page<SysUser>deptUser(Page<SysUser> page,String username,List<String>deptids,Integer sex,String realname,String ipone,Integer state);
 
-	Page<SysUser>kQueryUser(Page<SysUser> page,SysUser user,List<String> deptids,List<String>mydeptids,List<String>status);
+	Page<SysUser>kQueryUser(Page<SysUser> page,SysUser user,List<String> deptids,List<String>mydeptids,List<String>status,List<String>category);
 
 	List<Map<String,Object>>getDeptByUserName(String username);
 
 	boolean updateByState(List<String>userids);
 
+	List<String>emails(String email,String userid);
+
 }

+ 6 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java

@@ -626,8 +626,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 	}
 
 	@Override
-	public Page<SysUser> kQueryUser(Page<SysUser> page, SysUser user,List<String> deptids,List<String>mydeptids,List<String>status) {
-		return page.setRecords(userMapper.kQueryUser(page,user,deptids,mydeptids,status));
+	public Page<SysUser> kQueryUser(Page<SysUser> page, SysUser user,List<String> deptids,List<String>mydeptids,List<String>status,List<String>category) {
+		return page.setRecords(userMapper.kQueryUser(page,user,deptids,mydeptids,status,category));
 	}
 
 	@Override
@@ -642,7 +642,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 		return userMapper.updateByState(userids);
 	}
 
-
+	@Override
+	public List<String> emails(String email,String userid) {
+		return userMapper.emails(email,userid);
+	}
 
 
 	/**