You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
weaver-hrm-organization/src/com/engine/organization/wrapper/DepartmentWrapper.java

261 lines
9.0 KiB
Java

3 years ago
package com.engine.organization.wrapper;
import com.alibaba.fastjson.JSON;
3 years ago
import com.api.browser.bean.SearchConditionGroup;
3 years ago
import com.engine.common.util.ServiceUtil;
import com.engine.organization.annotation.Log;
import com.engine.organization.entity.DeleteParam;
import com.engine.organization.entity.department.param.*;
import com.engine.organization.entity.department.po.DepartmentPO;
3 years ago
import com.engine.organization.entity.department.vo.SingleDeptTreeVO;
import com.engine.organization.entity.job.vo.SingleJobTreeVO;
import com.engine.organization.entity.searchtree.SearchTreeParams;
import com.engine.organization.enums.LogModuleNameEnum;
import com.engine.organization.enums.OperateTypeEnum;
import com.engine.organization.mapper.department.DepartmentMapper;
3 years ago
import com.engine.organization.service.DepartmentService;
import com.engine.organization.service.impl.DepartmentServiceImpl;
import com.engine.organization.thread.DepartmentTriggerRunnable;
import com.engine.organization.util.OrganizationWrapper;
import com.engine.organization.util.db.MapperProxyFactory;
3 years ago
import com.engine.organization.util.page.PageInfo;
import com.engine.organization.util.response.ReturnResult;
import weaver.hrm.User;
3 years ago
import java.util.Collection;
3 years ago
import java.util.List;
import java.util.Map;
3 years ago
/**
* @Author weaver_cl
3 years ago
* @description:
3 years ago
* @Date 2022/5/20
* @Version V1.0
**/
public class DepartmentWrapper extends OrganizationWrapper {
3 years ago
public DepartmentService getDepartmentService(User user) {
return ServiceUtil.getService(DepartmentServiceImpl.class, user);
3 years ago
}
private DepartmentMapper getDepartmentMapper() {
return MapperProxyFactory.getProxy(DepartmentMapper.class);
}
3 years ago
public ReturnResult getDeptListByPid(QuerySingleDeptListParam param) {
PageInfo<SingleDeptTreeVO> singleDeptTreeVOS = getDepartmentService(user).getDeptListByPid(param);
return ReturnResult.successed(singleDeptTreeVOS);
}
3 years ago
/**
*
*
* @param param
* @return
*/
public PageInfo<SingleJobTreeVO> getJobListByPid(QuerySingleDeptListParam param) {
return getDepartmentService(user).getJobListByPid(param);
}
/**
*
*
* @param params
* @return
*/
public Map<String, Object> getSearchTree(SearchTreeParams params) {
return getDepartmentService(user).getSearchTree(params);
}
3 years ago
/**
*
*
* @param param
* @return
*/
public Map<String, Object> listPage(DeptSearchParam param) {
return getDepartmentService(user).listPage(param);
}
/**
*
*
* @return
*/
public Map<String, Object> getSaveForm(DeptSearchParam param) {
return getDepartmentService(user).getSaveForm(param);
}
3 years ago
/**
*
*
* @param params
* @return
*/
@Log(operateType = OperateTypeEnum.ADD, operateDesc = "新增部门", operateModule = LogModuleNameEnum.DEPARTMENT)
public Long saveBaseForm(Map<String, Object> params) {
Long departmentId = getDepartmentService(user).saveBaseForm(params);
writeOperateLog(new Object() {
}.getClass(), params.get("dept_name").toString(), JSON.toJSONString(params), "新增部门");
new Thread(new DepartmentTriggerRunnable(departmentId)).start();
return departmentId;
3 years ago
}
/**
*
*
* @param params
*/
@Log(operateType = OperateTypeEnum.UPDATE, operateDesc = "更新部门禁用标记", operateModule = LogModuleNameEnum.DEPARTMENT)
3 years ago
public int updateForbiddenTagById(DeptSearchParam params) {
DepartmentPO deptById = getDepartmentMapper().getDeptById(params.getId());
int updateForbiddenTagById = getDepartmentService(user).updateForbiddenTagById(params);
DepartmentPO newDeptById = getDepartmentMapper().getDeptById(params.getId());
writeOperateLog(new Object() {
}.getClass(), deptById.getDeptName(), JSON.toJSONString(params), deptById, newDeptById);
new Thread(new DepartmentTriggerRunnable(deptById, newDeptById)).start();
return updateForbiddenTagById;
3 years ago
}
/**
*
*
* @param params
* @return
*/
@Log(operateType = OperateTypeEnum.UPDATE, operateDesc = "更新部门", operateModule = LogModuleNameEnum.DEPARTMENT)
public Long updateForm(Map<String, Object> params) {
long id = Long.parseLong(params.get("id").toString());
DepartmentPO deptById = getDepartmentMapper().getDeptById(id);
Long departmentId = getDepartmentService(user).updateForm(params);
DepartmentPO newDeptById = getDepartmentMapper().getDeptById(id);
writeOperateLog(new Object() {
}.getClass(), deptById.getDeptName(), JSON.toJSONString(params), deptById, newDeptById);
new Thread(new DepartmentTriggerRunnable(deptById, newDeptById)).start();
return departmentId;
3 years ago
}
/**
* ID
*
* @param ids
*/
@Log(operateType = OperateTypeEnum.DELETE, operateDesc = "删除部门", operateModule = LogModuleNameEnum.DEPARTMENT)
3 years ago
public int deleteByIds(Collection<Long> ids) {
List<DepartmentPO> departmentPOS = getDepartmentMapper().getDeptsByIds(ids);
int deleteByIds = getDepartmentService(user).deleteByIds(ids);
for (DepartmentPO departmentPO : departmentPOS) {
writeOperateLog(new Object() {
}.getClass(), departmentPO.getDeptName(), JSON.toJSONString(ids), "删除部门");
// 更新组织架构图
new Thread(new DepartmentTriggerRunnable(departmentPO)).start();
}
return deleteByIds;
3 years ago
}
/**
*
*
* @param params
* @return
*/
public Map<String, Object> getSearchCondition(Map<String, Object> params) {
return getDepartmentService(user).getSearchCondition(params);
}
/**
*
*
* @return
*/
public Map<String, Object> getHasRight() {
return getDepartmentService(user).getHasRight();
}
/**
*
*
* @param params
* @return
*/
public Map<String, Object> getDeptBaseForm(Map<String, Object> params) {
return getDepartmentService(user).getDeptBaseForm(params);
}
3 years ago
/**
*
*
* @return
*/
public List<SearchConditionGroup> getCopyForm() {
return getDepartmentService(user).getCopyForm();
}
/**
*
*
* @param copyParam
* @return
*/
@Log(operateType = OperateTypeEnum.COPY, operateDesc = "复制部门", operateModule = LogModuleNameEnum.DEPARTMENT)
3 years ago
public int copyDepartment(DeptCopyParam copyParam) {
List<DepartmentPO> departmentPOS = getDepartmentMapper().getDeptsByIds(DeleteParam.builder().ids(copyParam.getIds()).build().getIds());
int copyDepartment = getDepartmentService(user).copyDepartment(copyParam);
for (DepartmentPO departmentPO : departmentPOS) {
writeOperateLog(new Object() {
}.getClass(), departmentPO.getDeptName(), JSON.toJSONString(copyParam), "复制部门[" + departmentPO.getDeptName() + "]");
}
return copyDepartment;
3 years ago
}
/**
*
*
* @param id
* @return
*/
public List<SearchConditionGroup> getMergeForm(Long id) {
return getDepartmentService(user).getMergeForm(id);
}
/**
*
*
* @param mergeParam
* @return
*/
@Log(operateType = OperateTypeEnum.MERGE, operateDesc = "合并部门", operateModule = LogModuleNameEnum.DEPARTMENT)
public int mergeDepartment(DepartmentMergeParam mergeParam) {
DepartmentPO departmentPO = getDepartmentMapper().getDeptById(mergeParam.getId());
int mergeDepartment = getDepartmentService(user).mergeDepartment(mergeParam);
writeOperateLog(new Object() {
}.getClass(), departmentPO.getDeptName(), JSON.toJSONString(mergeParam), departmentPO, getDepartmentMapper().getDeptById(departmentPO.getId()));
return mergeDepartment;
}
3 years ago
/**
*
*
* @return
*/
public List<SearchConditionGroup> getMoveForm() {
return getDepartmentService(user).getMoveForm();
}
/**
*
*
* @param moveParam
* @return
*/
@Log(operateType = OperateTypeEnum.MOVE, operateDesc = "转移部门", operateModule = LogModuleNameEnum.DEPARTMENT)
public int moveDepartment(DepartmentMoveParam moveParam) {
DepartmentPO departmentPO = getDepartmentMapper().getDeptById(moveParam.getId());
int moveDepartment = getDepartmentService(user).moveDepartment(moveParam);
writeOperateLog(new Object() {
}.getClass(), departmentPO.getDeptName(), JSON.toJSONString(moveParam), departmentPO, getDepartmentMapper().getDeptById(departmentPO.getId()));
return moveDepartment;
}
3 years ago
}