更新工作汇报相关代码
This commit is contained in:
parent
dc28a00757
commit
d7ce59ce52
@ -1,8 +1,10 @@
|
|||||||
package cn.iocoder.yudao.module.workReport.service.impl;
|
package cn.iocoder.yudao.module.workReport.service.impl;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
|
||||||
import cn.iocoder.yudao.module.system.api.dict.DictDataApi;
|
import cn.iocoder.yudao.module.system.api.dict.DictDataApi;
|
||||||
import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO;
|
import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO;
|
||||||
|
import cn.iocoder.yudao.module.system.api.permission.PermissionApi;
|
||||||
import cn.iocoder.yudao.module.system.api.user.dto.UserDTO;
|
import cn.iocoder.yudao.module.system.api.user.dto.UserDTO;
|
||||||
import cn.iocoder.yudao.module.system.service.permission.RoleService;
|
import cn.iocoder.yudao.module.system.service.permission.RoleService;
|
||||||
import cn.iocoder.yudao.module.workReport.entity.WorkReport;
|
import cn.iocoder.yudao.module.workReport.entity.WorkReport;
|
||||||
@ -15,11 +17,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
||||||
@ -41,6 +47,9 @@ public class WorkReportServiceImpl extends ServiceImpl<WorkReportMapper, WorkRep
|
|||||||
@Resource
|
@Resource
|
||||||
private RoleService roleService;
|
private RoleService roleService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private PermissionApi permissionApi;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Integer createReport(WorkReportSaveReqVO createReqVO) {
|
public Integer createReport(WorkReportSaveReqVO createReqVO) {
|
||||||
// 插入
|
// 插入
|
||||||
@ -58,6 +67,8 @@ public class WorkReportServiceImpl extends ServiceImpl<WorkReportMapper, WorkRep
|
|||||||
public void updateReport(WorkReportSaveReqVO updateReqVO) {
|
public void updateReport(WorkReportSaveReqVO updateReqVO) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
validateReportExists(updateReqVO.getId());
|
validateReportExists(updateReqVO.getId());
|
||||||
|
// 将汇报对象集合转换为字符串
|
||||||
|
updateReqVO.setReportTo(updateReqVO.getReportTos().stream().map(String::valueOf).collect(Collectors.joining(",")));
|
||||||
// 更新
|
// 更新
|
||||||
WorkReport updateObj = BeanUtils.toBean(updateReqVO, WorkReport.class);
|
WorkReport updateObj = BeanUtils.toBean(updateReqVO, WorkReport.class);
|
||||||
reportMapper.updateById(updateObj);
|
reportMapper.updateById(updateObj);
|
||||||
@ -84,6 +95,19 @@ public class WorkReportServiceImpl extends ServiceImpl<WorkReportMapper, WorkRep
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IPage<WorkReportRespVO> getReportPage(Page<WorkReport> page, WorkReportPageReqVO pageReqVO) {
|
public IPage<WorkReportRespVO> getReportPage(Page<WorkReport> page, WorkReportPageReqVO pageReqVO) {
|
||||||
|
//根据dictType查询角色
|
||||||
|
List<DictDataRespDTO> roleList = dictDataApi.getDictDataList(pageReqVO.getDictType());
|
||||||
|
//公司高层角色code集合
|
||||||
|
List<String> codes = roleList.stream().map(DictDataRespDTO::getValue).collect(Collectors.toList());
|
||||||
|
|
||||||
|
Map<Long, List<String>> longListMap = permissionApi.roleCodesByUserIds(Collections.singletonList(SecurityFrameworkUtils.getLoginUserId()));
|
||||||
|
List<String> roleKey = longListMap.get(SecurityFrameworkUtils.getLoginUserId());
|
||||||
|
|
||||||
|
//判断当前登陆人的角色是否是公司高层
|
||||||
|
boolean isCompanyLeader = roleKey != null && roleKey.stream().anyMatch(codes::contains);
|
||||||
|
if (isCompanyLeader) {
|
||||||
|
pageReqVO.setUserId(null);
|
||||||
|
}
|
||||||
return reportMapper.selectPage(page, pageReqVO);
|
return reportMapper.selectPage(page, pageReqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package cn.iocoder.yudao.module.workReport.vo;
|
package cn.iocoder.yudao.module.workReport.vo;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateTime;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
@ -22,8 +23,8 @@ public class WorkReportPageReqVO extends PageParam {
|
|||||||
private String reportTopic;
|
private String reportTopic;
|
||||||
|
|
||||||
@Schema(description = "汇报时间")
|
@Schema(description = "汇报时间")
|
||||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
private LocalDateTime[] reportTime;
|
private String[] reportTime;
|
||||||
|
|
||||||
@Schema(description = "创建时间")
|
@Schema(description = "创建时间")
|
||||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||||
@ -38,4 +39,7 @@ public class WorkReportPageReqVO extends PageParam {
|
|||||||
@Schema(description = "用户id")
|
@Schema(description = "用户id")
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
|
||||||
|
@Schema(description = "字典类型(公司高层的字典类型)")
|
||||||
|
private String dictType;
|
||||||
|
|
||||||
}
|
}
|
@ -37,4 +37,9 @@ public class WorkReportSaveReqVO {
|
|||||||
@Schema(description = "汇报对象集合")
|
@Schema(description = "汇报对象集合")
|
||||||
private List<Long> reportTos;
|
private List<Long> reportTos;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 汇报对象
|
||||||
|
*/
|
||||||
|
private String reportTo;
|
||||||
|
|
||||||
}
|
}
|
@ -35,6 +35,7 @@
|
|||||||
OR FIND_IN_SET(#{pageReqVO.userId}, wr.report_to) > 0) -- 查询汇报给自己的汇报
|
OR FIND_IN_SET(#{pageReqVO.userId}, wr.report_to) > 0) -- 查询汇报给自己的汇报
|
||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
|
ORDER BY wr.create_time DESC
|
||||||
</select>
|
</select>
|
||||||
<select id="queryReportCount" resultType="java.lang.Long" parameterType="java.lang.Long">
|
<select id="queryReportCount" resultType="java.lang.Long" parameterType="java.lang.Long">
|
||||||
SELECT COUNT(*)
|
SELECT COUNT(*)
|
||||||
|
@ -217,7 +217,7 @@ where sig.partner_id =#{partnerId}
|
|||||||
info.customer_source as customerSource, info.other_phone as otherPhone,oi.sku_id as skuId, oi.sku_name as skuName,oi.goods_price as goodsPrice
|
info.customer_source as customerSource, info.other_phone as otherPhone,oi.sku_id as skuId, oi.sku_name as skuName,oi.goods_price as goodsPrice
|
||||||
from
|
from
|
||||||
inspection_info info
|
inspection_info info
|
||||||
LEFT JOIN inspection_step_info step ON info.id = step.inspection_info_id
|
LEFT JOIN inspection_step_info step ON info.id = st ep.inspection_info_id
|
||||||
INNER JOIN system_users su on su.id = info.user_id
|
INNER JOIN system_users su on su.id = info.user_id
|
||||||
INNER JOIN order_info oi on oi.id = info.inspection_order_id
|
INNER JOIN order_info oi on oi.id = info.inspection_order_id
|
||||||
WHERE info.status = #{status} and info.partner_id = #{partnerId}
|
WHERE info.status = #{status} and info.partner_id = #{partnerId}
|
||||||
|
Loading…
Reference in New Issue
Block a user