LiGuang 3 anos atrás
pai
commit
7716848500

+ 0 - 1
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/attendance/mapper/AttendanceMapper.java

@@ -23,7 +23,6 @@ public interface AttendanceMapper extends BaseMapper<Attendance> {
 
     public Attendance getOne(@Param("userId")String userId,@Param("date")String date);
 
-
     /**
      * 根据时间和id删除用户考勤信息
      * @param startDate

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

@@ -188,7 +188,12 @@ public class AttendanceRuleController extends JeecgController<AttendanceRule, IA
 				});
 			attendanceRuleService.updateBatchById(list);
 		}else {
-			userShiftService.deleteUserShift(attendanceRule.getUserId(),attendanceRule.getName()+"-01");//name作为时间传递
+			if (oConvertUtils.isNotEmpty(attendanceRule.getUserId())){
+				String[] split = attendanceRule.getUserId().split(",");
+				for (String s : split) {
+					userShiftService.deleteUserShift(s,attendanceRule.getName()+"-01");//name作为时间传递
+				}
+			}
 		}
 		return Result.OK("编辑成功!");
 	}

+ 25 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysPositionController.java

@@ -20,6 +20,7 @@ import org.jeecg.common.util.ImportExcelUtil;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.quartz.service.IQuartzJobService;
 import org.jeecg.modules.system.entity.SysPosition;
+import org.jeecg.modules.system.entity.SysUser;
 import org.jeecg.modules.system.mapper.SysDepartMapper;
 import org.jeecg.modules.system.service.ISysDepartService;
 import org.jeecg.modules.system.service.ISysPositionService;
@@ -188,7 +189,13 @@ public class SysPositionController {
     @DeleteMapping(value = "/delete")
     public Result<?> delete(@RequestParam(name = "id", required = true) String id) {
         try {
-            sysPositionService.removeById(id);
+            SysPosition byId = sysPositionService.getById(id);
+            List<SysUser> users = sysPositionService.getUsers(byId.getCode());
+            if (users!=null&&users.size()>0){
+                return Result.error("删除失败!该职务已被使用");
+            }else {
+                sysPositionService.removeById(id);
+            }
         } catch (Exception e) {
             log.error("删除失败", e.getMessage());
             return Result.error("删除失败!");
@@ -210,8 +217,23 @@ public class SysPositionController {
         if (ids == null || "".equals(ids.trim())) {
             result.error500("参数不识别!");
         } else {
-            this.sysPositionService.removeByIds(Arrays.asList(ids.split(",")));
-            result.success("删除成功!");
+            int i=0;
+            List<String> list = Arrays.asList(ids.split(","));
+            for (String s : list) {
+                SysPosition byId = sysPositionService.getById(s);
+                List<SysUser> users = sysPositionService.getUsers(byId.getCode());
+                if (users==null||users.size()>0){
+                    i++;
+                   break;
+                }
+            }
+            if (i>0){
+                result.error500("删除失败!存在已被使用的职务!");
+
+            }else {
+                this.sysPositionService.removeByIds(Arrays.asList(ids.split(",")));
+                result.success("删除成功!");
+            }
         }
         return result;
     }

+ 44 - 7
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysUserController.java

@@ -833,6 +833,19 @@ public class SysUserController {
        if(!oConvertUtils.isEmpty(selections)){
            queryWrapper.in("id",selections.split(","));
        }
+        List<String> mySubDepIdsByDepId=null;
+        LoginUser sysUsers = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        List<SysUserRole> userRole = sysUserRoleService.list(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, sysUsers.getId()));
+        if (userRole!=null&&userRole.size()>0){
+            for (SysUserRole role:userRole){
+                if (role.getRoleId().equals("1462659329857978370")){
+                    SysDepart one = sysDepartService.getOne(new QueryWrapper<SysDepart>().lambda().eq(SysDepart::getOrgCode, sysUsers.getOrgCode()));
+                    if (one!=null&&!one.getOrgType().equals("0")){
+                        mySubDepIdsByDepId = sysDepartService.getMySubDepIdsByDepId(one.getId());
+                    }
+                }
+            }
+        }
         //update-end--Author:kangxiaolin  Date:20180825 for:[03]用户导出,如果选择数据则只导出相关数据----------------------
         List<String> subDepIdsByDepId=null;
         List<String> status=null;
@@ -841,25 +854,49 @@ public class SysUserController {
             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(","));
+        }if (sysUser.getCategorys()!=null&&!"".equals(sysUser.getCategorys())){
+            category=Arrays.asList(sysUser.getCategorys().toString().split(","));
         }
-        List<SysUser> pageList = sysUserMapper.kQueryUser(page, sysUser,subDepIdsByDepId,null,status,category);
+        List<SysUser> pageList = sysUserMapper.kQueryUser(page, sysUser,subDepIdsByDepId,mySubDepIdsByDepId,status,category);
 
         List<String>userids=new ArrayList<>();
        if (pageList.size()>0){
            for (SysUser ls:pageList){
                userids.add(ls.getId());
+               if(mySubDepIdsByDepId!=null&&mySubDepIdsByDepId.size()>0){
+                    ls.setSfzCode("");
+                    ls.setAge(null);
+                    ls.setEducation("");
+                    ls.setSchool("");
+                    ls.setShareDept("");
+                    ls.setAddr("");
+                    ls.setTrialMoth("");
+                    ls.setTrialEndDate(null);
+                    ls.setWorkMoth("");
+                    ls.setDivisionMoth("");
+                    ls.setSyFund("");
+                    ls.setBankCard("");
+                    ls.setBankAddr("");
+                    ls.setWagesOne("");
+                    ls.setWagesBase("");
+                    ls.setSfzType("");
+               }if (ls.getSfzType()!=null&&oConvertUtils.isEmpty(mySubDepIdsByDepId)){
+                   if (ls.getSfzType().equals("0")){
+                       ls.setSfzType("中国身份证");
+                   }else {
+                       ls.setSfzType("其他");
+                   }
+               }
            }
            if(userids.size()>0){
                Map<String,String>  useDepNames = sysUserService.getDepNamesByUserIds(userids);
                pageList.forEach(item->{
                    item.setOrgCodeTxt(useDepNames.get(item.getId()));
-                   if (item.getSfzType()!=null){
-                       if (item.getSfzType().equals("0")){
-                            item.setSfzType("中国身份证");
+                   if (oConvertUtils.isNotEmpty(item.getIsAttendance())){
+                       if (item.getIsAttendance().equals("0")){
+                           item.setIsAttendance("是");
                        }else {
-                           item.setSfzType("其他");
+                           item.setIsAttendance("否");
                        }
                    }
                    List<String> orgName = sysUserService.getOrgName(item.getId());

+ 2 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/mapper/SysPositionMapper.java

@@ -24,5 +24,7 @@ public interface SysPositionMapper extends BaseMapper<SysPosition> {
     List<SysPosition>listByDept(Page<SysPosition> page, @Param("deptids")List<String> deptids);
 
     SysPosition getOnes(@Param("code")String code);
+    //根据职位code编码查询员工
+    List<SysUser>getUsers(@Param("code")String code);
 
 }

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

@@ -43,4 +43,11 @@
             and code=#{code}
         </if>
     </select>
+    <select id="getUsers" resultType="org.jeecg.modules.system.entity.SysUser">
+            select *from sys_user where 1=1
+            <if test="code!=null and ''!=code">
+                and post=#{code}
+            </if>
+
+    </select>
 </mapper>

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/ISysPositionService.java

@@ -20,4 +20,7 @@ public interface ISysPositionService extends IService<SysPosition> {
     Page<SysPosition> lists(Page<SysPosition> page,SysPosition sysPosition);
     Page<SysPosition>listByDept(Page<SysPosition> page,List<String> deptids);
     SysPosition getOnes(String code);
+    //根据编码查询用户
+    List<SysUser>getUsers(String code);
+
 }

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

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.jeecg.common.util.PasswordUtil;
 import org.jeecg.modules.system.entity.SysDepart;
 import org.jeecg.modules.system.entity.SysPosition;
+import org.jeecg.modules.system.entity.SysUser;
 import org.jeecg.modules.system.mapper.SysPositionMapper;
 import org.jeecg.modules.system.service.ISysDepartService;
 import org.jeecg.modules.system.service.ISysPositionService;
@@ -89,4 +90,9 @@ public class SysPositionServiceImpl extends ServiceImpl<SysPositionMapper, SysPo
     public SysPosition getOnes(String code) {
         return positionMapper.getOnes(code);
     }
+
+    @Override
+    public List<SysUser> getUsers(String code) {
+        return positionMapper.getUsers(code);
+    }
 }

+ 23 - 22
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/service/impl/WeixinUserImpl.java

@@ -611,16 +611,17 @@ public class WeixinUserImpl implements IWeixinUserService{
         long startDate;
         long endDate;
         Calendar now = Calendar.getInstance();//当前日期
-        now.add(Calendar.DAY_OF_MONTH, -1);
         String format = sft.format(now.getTime());
-        Date parse = sdf.parse(format + " 00:00:00");
-        startDate = parse.getTime()/1000;
         Date parses = sdf.parse(format + " 23:59:59");
         endDate= parses.getTime()/1000;
+        now.add(Calendar.DAY_OF_MONTH, -30);
+        String formats = sft.format(now.getTime());
+        Date parse = sdf.parse(formats + " 00:00:00");
+        startDate = parse.getTime()/1000;
         try {
             List<String> list = WeixinUserIdList();
             if (list != null && list.size() > 0) {
-                //attendanceService.DeleteDateAttendance(sdf.format(stDate2), sdf.format(enDate), list);
+                attendanceService.DeleteDateAttendance(sdf.format(parse), sdf.format(parses), list);
                 weixinSigns.addAll(WeixinSignList(String.valueOf(startDate), String.valueOf(endDate), list));
                 //weixinSigns.addAll(WeixinSignList(String.valueOf(startDate2), String.valueOf(startDate), list));
                 if (weixinSigns != null && weixinSigns.size() > 0) {
@@ -763,15 +764,15 @@ public class WeixinUserImpl implements IWeixinUserService{
             long startDate2;
             long endDate;
         endDate =now.getTime().getTime()/1000;
-        enDate = now.getTime();
+       // enDate = now.getTime();
         now.add(Calendar.DAY_OF_MONTH, -30);
         startDate = now.getTime().getTime()/1000;
-        stDate = now.getTime();
-        now.add(Calendar.DAY_OF_MONTH, -30);
-        startDate2 = now.getTime().getTime()/1000;
-        stDate2 = now.getTime();
+//        stDate = now.getTime();
+//        now.add(Calendar.DAY_OF_MONTH, -30);
+//        startDate2 = now.getTime().getTime()/1000;
+//        stDate2 = now.getTime();
         list.addAll(WeixinVacationList(String.valueOf(startDate), String.valueOf(endDate),"","Bs7yC3swLeNVwa2WyLsSXVL5XV6kVJmnEQTwW4cFS"));
-        list.addAll(WeixinVacationList(String.valueOf(startDate2), String.valueOf(startDate),"","Bs7yC3swLeNVwa2WyLsSXVL5XV6kVJmnEQTwW4cFS"));
+        //list.addAll(WeixinVacationList(String.valueOf(startDate2), String.valueOf(startDate),"","Bs7yC3swLeNVwa2WyLsSXVL5XV6kVJmnEQTwW4cFS"));
             for (String ls:list){//循环审批id
                 workOvertime workOvertime = WeixinWorks(ls);
                 if (workOvertime!=null) {
@@ -953,15 +954,15 @@ public class WeixinUserImpl implements IWeixinUserService{
         long startDate2;
         long endDate;
         endDate =now.getTime().getTime()/1000;
-        enDate = now.getTime();
+        //enDate = now.getTime();
         now.add(Calendar.DAY_OF_MONTH, -30);
         startDate = now.getTime().getTime()/1000;
-        stDate = now.getTime();
+       /* stDate = now.getTime();
         now.add(Calendar.DAY_OF_MONTH, -30);
         startDate2 = now.getTime().getTime()/1000;
-        stDate2 = now.getTime();
+        stDate2 = now.getTime();*/
         list.addAll(WeixinVacationList(String.valueOf(startDate), String.valueOf(endDate),"","3TmB1h5HqrhwHanzxLTSX1x44zz7djoVyWTbQHWn"));
-        list.addAll(WeixinVacationList(String.valueOf(startDate2), String.valueOf(startDate),"","3TmB1h5HqrhwHanzxLTSX1x44zz7djoVyWTbQHWn"));
+        //list.addAll(WeixinVacationList(String.valueOf(startDate2), String.valueOf(startDate),"","3TmB1h5HqrhwHanzxLTSX1x44zz7djoVyWTbQHWn"));
         //makeUpCardService.deleteDate(sdf.format(startDate2),sdf.format(endDate));
         List<MakeUpCard>ls=new ArrayList<>();
         list.forEach(str->{
@@ -969,16 +970,16 @@ public class WeixinUserImpl implements IWeixinUserService{
                 MakeUpCard makeUpCard = WxUpCard(str);
                 if (makeUpCard!=null){
                     makeUpCardService.save(makeUpCard);
-                    Attendance one = attendanceMapper.getOne(makeUpCard.getUserId(), sdf.format(makeUpCard.getTime()));
+                    /*Attendance one = attendanceMapper.getOne(makeUpCard.getUserId(), sdf.format(makeUpCard.getTime()));
                     if (oConvertUtils.isEmpty(one)){
                         Attendance attendance=new Attendance();
                         attendance.setUserDate(makeUpCard.getTime());
                         attendance.setUserId(makeUpCard.getUserId());
                         attendance.setExceptionType("正常");
                        // attendanceService.save()
-                    }
+                    }*/
                 }
-                System.out.println(makeUpCard);
+               // System.out.println(makeUpCard);
             }catch (Exception e){
                 e.printStackTrace();
             }
@@ -1501,12 +1502,12 @@ public class WeixinUserImpl implements IWeixinUserService{
             enDate = now.getTime();
             now.add(Calendar.DAY_OF_MONTH, -30);
             startDate = now.getTime().getTime()/1000;
-            stDate = now.getTime();
-            now.add(Calendar.DAY_OF_MONTH, -30);
-            startDate2 = now.getTime().getTime()/1000;
-            stDate2 = now.getTime();
+//            stDate = now.getTime();
+//            now.add(Calendar.DAY_OF_MONTH, -30);
+//            startDate2 = now.getTime().getTime()/1000;
+//            stDate2 = now.getTime();
              list.addAll(WeixinVacationList(String.valueOf(startDate), String.valueOf(endDate),"","Bs7yC3swLeNVwa2WyLsSXVL5XV6kVDd3Zpjq3Tycy"));
-             list.addAll(WeixinVacationList(String.valueOf(startDate2), String.valueOf(startDate),"","Bs7yC3swLeNVwa2WyLsSXVL5XV6kVDd3Zpjq3Tycy"));
+            // list.addAll(WeixinVacationList(String.valueOf(startDate2), String.valueOf(startDate),"","Bs7yC3swLeNVwa2WyLsSXVL5XV6kVDd3Zpjq3Tycy"));
                     for (String ls:list){//循环审批id
                         Vacation vacation = WeixinVacationdetail(ls);
                         if (vacation!=null) {