1.0.33 项目信息加流程监听、用户信息接口加部门负责人、分管副总ID

dev
yinq 1 month ago
parent d88a273414
commit 3ba19aa3ed

@ -27,7 +27,7 @@ public interface ErpContractInfoMapper extends BaseMapperPlus<ErpContractInfo, E
* @return
*/
@DataPermission({
@DataColumn(key = "deptName", value = "t.dept_id"),
@DataColumn(key = "deptName", value = "t.create_dept"),
@DataColumn(key = "userName", value = "t.create_by")
})
public Page<ErpContractInfoVo> selectCustomErpContractInfoVoList(@Param("page") Page<ErpContractInfoVo> page, @Param(Constants.WRAPPER) MPJLambdaWrapper<ErpContractInfo> queryWrapper);
@ -39,7 +39,7 @@ public interface ErpContractInfoMapper extends BaseMapperPlus<ErpContractInfo, E
* @return
*/
@DataPermission({
@DataColumn(key = "deptName", value = "t.dept_id"),
@DataColumn(key = "deptName", value = "t.create_dept"),
@DataColumn(key = "userName", value = "t.create_by")
})
public List<ErpContractInfoVo> selectCustomErpContractInfoVoList(@Param(Constants.WRAPPER) MPJLambdaWrapper<ErpContractInfo> queryWrapper);

@ -5,6 +5,8 @@ import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.annotation.DataColumn;
import org.dromara.common.mybatis.annotation.DataPermission;
import org.dromara.oa.erp.domain.ErpProjectInfo;
import org.dromara.oa.erp.domain.vo.ErpProjectInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
@ -24,6 +26,10 @@ public interface ErpProjectInfoMapper extends BaseMapperPlus<ErpProjectInfo, Erp
* @param queryWrapper
* @return
*/
@DataPermission({
@DataColumn(key = "deptName", value = "t.dept_id"),
@DataColumn(key = "userName", value = "t.create_by")
})
public Page<ErpProjectInfoVo> selectCustomErpProjectInfoVoList(@Param("page") Page<ErpProjectInfoVo> page, @Param(Constants.WRAPPER) MPJLambdaWrapper<ErpProjectInfo> queryWrapper);
/**
@ -32,6 +38,10 @@ public interface ErpProjectInfoMapper extends BaseMapperPlus<ErpProjectInfo, Erp
* @param queryWrapper
* @return
*/
@DataPermission({
@DataColumn(key = "deptName", value = "t.dept_id"),
@DataColumn(key = "userName", value = "t.create_by")
})
public List<ErpProjectInfoVo> selectCustomErpProjectInfoVoList(@Param(Constants.WRAPPER) MPJLambdaWrapper<ErpProjectInfo> queryWrapper);
}

@ -1,5 +1,10 @@
package org.dromara.oa.erp.service.impl;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.map.MapUtil;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.enums.BusinessStatusEnum;
import org.dromara.common.core.enums.OAStatusEnum;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
@ -8,6 +13,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import lombok.RequiredArgsConstructor;
import org.dromara.common.tenant.helper.TenantHelper;
import org.dromara.workflow.api.event.ProcessEvent;
import org.springframework.context.event.EventListener;
import org.springframework.stereotype.Service;
import org.dromara.oa.erp.domain.bo.ErpProjectInfoBo;
import org.dromara.oa.erp.domain.vo.ErpProjectInfoVo;
@ -23,6 +31,7 @@ import org.dromara.workflow.api.domain.RemoteStartProcess;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import java.util.Objects;
/**
* Service
@ -32,6 +41,7 @@ import java.util.Collection;
*/
@RequiredArgsConstructor
@Service
@Slf4j
public class ErpProjectInfoServiceImpl implements IErpProjectInfoService {
private final ErpProjectInfoMapper baseMapper;
@ -185,4 +195,30 @@ public class ErpProjectInfoServiceImpl implements IErpProjectInfoService {
}
return MapstructUtils.convert(add, ErpProjectInfoVo.class);
}
/**
* (: 稿退)
*
* @param processEvent
*/
@EventListener(condition = "#processEvent.flowCode =='xmsq'")
public void processHandler(ProcessEvent processEvent) {
TenantHelper.dynamic(processEvent.getTenantId(), () -> {
log.info("当前任务执行了{}", processEvent.toString());
ErpProjectInfo projectInfo = baseMapper.selectById(Convert.toLong(processEvent.getBusinessId()));
projectInfo.setFlowStatus(processEvent.getStatus());
Map<String, Object> params = processEvent.getParams();
if (MapUtil.isNotEmpty(params)) {
// 办理人
String handler = Convert.toStr(params.get("handler"));
}
if (Objects.equals(processEvent.getStatus(), BusinessStatusEnum.FINISH.getStatus())) {
projectInfo.setProjectStatus(OAStatusEnum.COMPLETED.getStatus());
} else if (Objects.equals(processEvent.getStatus(), BusinessStatusEnum.INVALID.getStatus())) {
projectInfo.setProjectStatus(OAStatusEnum.INVALID.getStatus());
}
baseMapper.updateById(projectInfo);
});
}
}

@ -139,4 +139,13 @@ public class SysUserVo implements Serializable {
*/
private Long roleId;
/**
*
*/
private Long chargeId;
/**
*
*/
private Long deputyId;
}

@ -24,10 +24,7 @@ import org.dromara.system.domain.SysUserPost;
import org.dromara.system.domain.SysUserRole;
import org.dromara.system.domain.SysRole;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.vo.SysPostVo;
import org.dromara.system.domain.vo.SysRoleVo;
import org.dromara.system.domain.vo.SysUserExportVo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.domain.vo.*;
import org.dromara.system.mapper.*;
import org.dromara.system.service.ISysUserService;
import org.springframework.cache.annotation.CacheEvict;
@ -208,6 +205,11 @@ public class SysUserServiceImpl implements ISysUserService {
if (ObjectUtil.isNull(user)) {
return user;
}
if (ObjectUtil.isNotNull(user.getDeptId())) {
SysDeptVo sysDeptVo = deptMapper.selectVoById(user.getDeptId());
user.setChargeId(sysDeptVo.getLeader());
user.setDeputyId(sysDeptVo.getVicePresident());
}
user.setRoles(roleMapper.selectRolesByUserId(user.getUserId()));
return user;
}

Loading…
Cancel
Save