八大员缺员兼职查询接口修改、一键审批
This commit is contained in:
parent
dfa1d87787
commit
4ffee47816
|
|
@ -11,6 +11,7 @@ import com.bonus.common.security.utils.SecurityUtils;
|
|||
import com.bonus.system.att.entity.OrgChangeBean;
|
||||
import com.bonus.system.att.service.OrgChangeService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
|
|
@ -144,6 +145,24 @@ public class OrgChangeController extends BaseController {
|
|||
return error("系统异常");
|
||||
}
|
||||
|
||||
@PutMapping("orgBatchChangeCheck")
|
||||
@Log(title = "流程相关->组织架构变更审核->一键审核", businessType = BusinessType.UPDATE)
|
||||
public AjaxResult orgBatchChangeCheck(@Validated @RequestBody OrgChangeBean o) {
|
||||
try{
|
||||
if(CollectionUtils.isEmpty(o.getIds())){
|
||||
return AjaxResult.error("请选择要审批的数据");
|
||||
}
|
||||
for (Long id : o.getIds()) {
|
||||
o.setId(id);
|
||||
orgChangeService.orgChangeCheck(o);
|
||||
}
|
||||
return success();
|
||||
}catch (Exception e){
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return error("系统异常");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取考勤组
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -147,4 +147,6 @@ public class OrgChangeBean {
|
|||
*/
|
||||
private String isApply;
|
||||
|
||||
private List<Long> ids;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -113,4 +113,6 @@ public class SysOrg {
|
|||
*/
|
||||
private List<String> orgList;
|
||||
|
||||
private List<Long> ids;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -184,6 +184,12 @@ public class ProDeptRoleController extends BaseController {
|
|||
return error("系统异常");
|
||||
}
|
||||
|
||||
@PostMapping("batchRoleCheck")
|
||||
@Log(title = "项目部管理->项目部角色管理->项目部角色一键审批", businessType = BusinessType.UPDATE)
|
||||
public AjaxResult batchRoleCheck(@RequestBody ProDeptRoleDo bean) {
|
||||
return proDeptRoleService.batchRoleCheck(bean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询人员树选择列表
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import com.bonus.system.basic.domain.SysTree;
|
|||
import com.bonus.system.dept.entity.SubOrgBean;
|
||||
import com.bonus.system.dept.service.SubOrgService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
|
|
@ -151,6 +152,24 @@ public class SubOrgController extends BaseController
|
|||
return error("系统异常");
|
||||
}
|
||||
|
||||
@PostMapping("batchChangeStatus")
|
||||
@Log(title = "分公司组织信息->分公司项目部审批->一键审批", businessType = BusinessType.UPDATE)
|
||||
public AjaxResult batchChangeStatus(@RequestBody SubOrgBean org) {
|
||||
try{
|
||||
if(CollectionUtils.isEmpty(org.getIds())){
|
||||
return AjaxResult.error("请选择要审批的数据");
|
||||
}
|
||||
for (Long id : org.getIds()) {
|
||||
org.setId(id);
|
||||
service.changeStatus(org);
|
||||
}
|
||||
return success();
|
||||
}catch (Exception e){
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return error("系统异常");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取组织列表(待审批)
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -98,4 +98,12 @@ public interface ProDeptRoleDao {
|
|||
|
||||
String getOrgChildById(Long orgId);
|
||||
|
||||
/**
|
||||
* 项目部管理->项目部角色管理->项目部角色一键审批
|
||||
* @param bean
|
||||
* @return void
|
||||
* @author cwchen
|
||||
* @date 2025/2/11 15:20
|
||||
*/
|
||||
void batchRoleCheck(ProDeptRoleDo bean);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,5 +68,8 @@ public class ProDeptRoleDo extends BaseBean {
|
|||
*/
|
||||
private Long reviewerUserId;
|
||||
|
||||
/**批量审核ID*/
|
||||
private List<Long> ids;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,9 +4,11 @@ import com.bonus.common.core.web.domain.AjaxResult;
|
|||
import com.bonus.system.dept.dao.EightMembersVacancyDao;
|
||||
import com.bonus.system.dept.entity.EightMembersVacancyVo;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -15,6 +17,8 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.Callable;
|
||||
import java.util.concurrent.Future;
|
||||
|
||||
import static com.bonus.common.core.utils.PageUtils.startPage;
|
||||
|
||||
|
|
@ -27,7 +31,7 @@ import static com.bonus.common.core.utils.PageUtils.startPage;
|
|||
*/
|
||||
@Service(value = "EightMembersVacancyService")
|
||||
@Slf4j
|
||||
public class EightMembersVacancyServiceImpl implements EightMembersVacancyService{
|
||||
public class EightMembersVacancyServiceImpl implements EightMembersVacancyService {
|
||||
|
||||
@Resource(name = "EightMembersVacancyDao")
|
||||
private EightMembersVacancyDao dao;
|
||||
|
|
@ -38,22 +42,34 @@ public class EightMembersVacancyServiceImpl implements EightMembersVacancyServic
|
|||
@Override
|
||||
public List<EightMembersVacancyVo> getList(EightMembersVacancyVo vo) {
|
||||
List<EightMembersVacancyVo> list = new ArrayList<>();
|
||||
List<EightMembersVacancyVo> newList = new ArrayList<>();
|
||||
List<Future> futureList = new ArrayList<>();
|
||||
try {
|
||||
list = dao.getList(vo);
|
||||
for (EightMembersVacancyVo vacancyVo : list) {
|
||||
testTaskExecutor.execute(() -> {
|
||||
// 查询缺员项目部数量
|
||||
List<Long> numList = dao.getNumByType(vacancyVo.getId(),1);
|
||||
// 查询兼职项目部数量
|
||||
List<Long> numList2 = dao.getNumByType(vacancyVo.getId(),2);
|
||||
vacancyVo.setVacancyDeptNum(CollectionUtils.isEmpty(numList) ? 0 : numList.size());
|
||||
vacancyVo.setPartTimeJobNum(CollectionUtils.isEmpty(numList2) ? 0 : numList2.size());
|
||||
Future<EightMembersVacancyVo> future = testTaskExecutor.submit(new Callable<EightMembersVacancyVo>() {
|
||||
@Override
|
||||
public EightMembersVacancyVo call() throws Exception {
|
||||
// 查询缺员项目部数量
|
||||
List<Long> numList = dao.getNumByType(vacancyVo.getId(),1);
|
||||
// 查询兼职项目部数量
|
||||
List<Long> numList2 = dao.getNumByType(vacancyVo.getId(),2);
|
||||
vacancyVo.setVacancyDeptNum(CollectionUtils.isEmpty(numList) ? 0 : numList.size());
|
||||
vacancyVo.setPartTimeJobNum(CollectionUtils.isEmpty(numList2) ? 0 : numList2.size());
|
||||
return vacancyVo;
|
||||
}
|
||||
});
|
||||
futureList.add(future);
|
||||
}
|
||||
for (Future<EightMembersVacancyVo> future : futureList) {
|
||||
EightMembersVacancyVo vacancyVo = future.get();
|
||||
newList.add(vacancyVo);
|
||||
}
|
||||
PageInfo<EightMembersVacancyVo> pageInfo = new PageInfo<>(newList);
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
log.error(e.toString(), e);
|
||||
}
|
||||
return list;
|
||||
return newList;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -61,13 +77,13 @@ public class EightMembersVacancyServiceImpl implements EightMembersVacancyServic
|
|||
List<EightMembersVacancyVo.VacancyDetail> list = new ArrayList<>();
|
||||
try {
|
||||
// 查询缺员项目部id
|
||||
List<Long> underStaffingIds = dao.getNumByType(vo.getId(),1);
|
||||
List<Long> underStaffingIds = dao.getNumByType(vo.getId(), 1);
|
||||
startPage();
|
||||
if(CollectionUtils.isNotEmpty(underStaffingIds)){
|
||||
list = dao.getStaffingList(underStaffingIds,vo);
|
||||
if (CollectionUtils.isNotEmpty(underStaffingIds)) {
|
||||
list = dao.getStaffingList(underStaffingIds, vo);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
log.error(e.toString(), e);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
|
@ -77,24 +93,24 @@ public class EightMembersVacancyServiceImpl implements EightMembersVacancyServic
|
|||
List<EightMembersVacancyVo.VacancyDetail> list = new ArrayList<>();
|
||||
try {
|
||||
// 查询兼职项目部id
|
||||
List<Long> partTimeIds = dao.getNumByType(vo.getId(),2);
|
||||
List<Long> partTimeIds = dao.getNumByType(vo.getId(), 2);
|
||||
startPage();
|
||||
if(CollectionUtils.isNotEmpty(partTimeIds)){
|
||||
list = dao.getStaffingList(partTimeIds,vo);
|
||||
if (CollectionUtils.isNotEmpty(partTimeIds)) {
|
||||
list = dao.getStaffingList(partTimeIds, vo);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
log.error(e.toString(), e);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult getRoleList() {
|
||||
List<Map<String,Object>> list = new ArrayList<>();
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
try {
|
||||
list = dao.getRoleList();
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
log.error(e.toString(), e);
|
||||
}
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.bonus.system.dept.service;
|
||||
|
||||
import com.alibaba.fastjson2.JSONArray;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.system.basic.domain.SysOrg;
|
||||
import com.bonus.system.dept.entity.*;
|
||||
|
||||
|
|
@ -46,4 +47,13 @@ public interface ProDeptRoleService {
|
|||
ProDeptRoleBean getInfoById(ProDeptRoleBean o);
|
||||
|
||||
List<ProDeptRoleBean> getRoleUserNoManagerList(ProDeptRoleBean bean);
|
||||
|
||||
/**
|
||||
* 项目部管理->项目部角色管理->项目部角色一键审批
|
||||
* @param bean
|
||||
* @return AjaxResult
|
||||
* @author cwchen
|
||||
* @date 2025/2/11 15:17
|
||||
*/
|
||||
AjaxResult batchRoleCheck(ProDeptRoleDo bean);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import com.alibaba.fastjson2.JSON;
|
|||
import com.alibaba.fastjson2.JSONArray;
|
||||
import com.bonus.common.core.utils.BuildTreeUtil;
|
||||
import com.bonus.common.core.utils.StringUtils;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.common.security.utils.SecurityUtils;
|
||||
import com.bonus.system.api.domain.MapVo;
|
||||
import com.bonus.system.api.domain.SysUser;
|
||||
|
|
@ -14,8 +15,11 @@ import com.bonus.system.basic.service.SysNoticeService;
|
|||
import com.bonus.system.dept.controller.SubOrgController;
|
||||
import com.bonus.system.dept.dao.ProDeptRoleDao;
|
||||
import com.bonus.system.dept.entity.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
|
|
@ -27,6 +31,7 @@ import java.util.stream.Collectors;
|
|||
* @author fly
|
||||
*/
|
||||
@Service("ProDeptRoleService")
|
||||
@Slf4j
|
||||
public class ProDeptRoleServiceImpl implements ProDeptRoleService {
|
||||
|
||||
@Resource(name = "ProDeptRoleDao")
|
||||
|
|
@ -145,6 +150,27 @@ public class ProDeptRoleServiceImpl implements ProDeptRoleService {
|
|||
return proDeptRoleDao.checkPersonAssignment(bean);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult batchRoleCheck(ProDeptRoleDo bean) {
|
||||
try {
|
||||
if(CollectionUtils.isEmpty(bean.getIds())){
|
||||
return AjaxResult.error("未选择审批数据");
|
||||
}
|
||||
if(StringUtils.isEmpty(bean.getReviewerStatus())){
|
||||
return AjaxResult.error("未选择审批状态");
|
||||
}
|
||||
long loginId = SecurityUtils.getLoginUser().getSysUser().getUserId();
|
||||
bean.setReviewerUserId(loginId);
|
||||
bean.setReviewerTime(DateUtil.date());
|
||||
proDeptRoleDao.batchRoleCheck(bean);
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
||||
return AjaxResult.error();
|
||||
}
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONArray selectOrgUserList(ProDeptRoleBean bean) {
|
||||
JSONArray resultTree;
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ public interface HolidayService {
|
|||
List<HolidayBean> getHolidayListCheck(HolidayBean bean);
|
||||
|
||||
/**
|
||||
* 流程相关->轮休审批->一键审批
|
||||
* 流程相关->轮休审批/临时外出审核->一键审批
|
||||
* @param o
|
||||
* @return void
|
||||
* @author cwchen
|
||||
|
|
|
|||
|
|
@ -135,7 +135,8 @@ public class HolidayServiceImpl implements HolidayService {
|
|||
o.setExamineUserId(updateUserId);
|
||||
SysUser sysUser = SecurityUtils.getLoginUser().getSysUser();
|
||||
String userName =sysUser.getUserName();
|
||||
String orgName = sysUser.getOrgName();
|
||||
// 当前登录人存在多个组织机构时,只取第一个组织机构的名称
|
||||
String orgName = CollectionUtils.isEmpty(sysUser.getOrgList()) ? "" : sysUser.getOrgList().get(0).getName();
|
||||
String now = DateUtil.now();
|
||||
if(Objects.equals(o.getExamineStatus(),"1")){
|
||||
o.setExamineOpinion("同意 " + orgName + " "+userName+" "+ now);
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
sd.value AS roleName
|
||||
FROM sys_dict sd
|
||||
WHERE sd.type = 'deptRole' AND sd.is_active = '1'
|
||||
<if test="id!=null">
|
||||
<if test="id!=null and id!=0L">
|
||||
AND sd.id = #{id}
|
||||
</if>
|
||||
ORDER BY update_time
|
||||
|
|
|
|||
|
|
@ -448,4 +448,15 @@
|
|||
reviewer_time = #{reviewerTime}
|
||||
where id = #{departmentId}
|
||||
</update>
|
||||
<!--项目部管理->项目部角色管理->项目部角色一键审批-->
|
||||
<update id="batchRoleCheck">
|
||||
UPDATE sys_department_role
|
||||
SET reviewer_user_id = #{reviewerUserId},
|
||||
reviewer_status = #{reviewerStatus},
|
||||
reviewer_time = #{reviewerTime}
|
||||
WHERE id IN
|
||||
<foreach collection="ids" separator="," open="(" close=")" item="item">
|
||||
#{item}
|
||||
</foreach>
|
||||
</update>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue