jsk 新购到货管理 数据权限改造

This commit is contained in:
jiask 2026-01-08 16:51:57 +08:00
parent aaaa60c517
commit 033019224b
8 changed files with 71 additions and 4 deletions

View File

@ -107,6 +107,8 @@ public class PurChaseReportInfo {
private Long userId; private Long userId;
private Long companyId;
@ApiModelProperty(value = "状态已验收1未入库2") @ApiModelProperty(value = "状态已验收1未入库2")
private String status; private String status;
} }

View File

@ -9,6 +9,7 @@ import com.bonus.material.basic.domain.report.*;
import com.bonus.material.basic.mapper.BmFileInfoMapper; import com.bonus.material.basic.mapper.BmFileInfoMapper;
import com.bonus.material.basic.mapper.BmReportMapper; import com.bonus.material.basic.mapper.BmReportMapper;
import com.bonus.material.basic.service.BmReportService; import com.bonus.material.basic.service.BmReportService;
import com.bonus.material.ma.service.ITypeService;
import org.hibernate.validator.internal.util.StringHelper; import org.hibernate.validator.internal.util.StringHelper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -32,6 +33,9 @@ public class BmReportServiceImpl implements BmReportService {
@Resource @Resource
private BmFileInfoMapper fileInfoMapper; private BmFileInfoMapper fileInfoMapper;
@Resource
private ITypeService iTypeService;
/** /**
* 新购入库报表查询 * 新购入库报表查询
* @param bean * @param bean
@ -40,6 +44,11 @@ public class BmReportServiceImpl implements BmReportService {
@Override @Override
public List<PurChaseReportInfo> getPurChaseReportList(PurChaseReportInfo bean) { public List<PurChaseReportInfo> getPurChaseReportList(PurChaseReportInfo bean) {
bean.setUserId(SecurityUtils.getLoginUser().getUserid()); bean.setUserId(SecurityUtils.getLoginUser().getUserid());
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
bean.setCompanyId(companyId);
BigDecimal totalPurchaseNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP); BigDecimal totalPurchaseNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
BigDecimal totalPassNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP); BigDecimal totalPassNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);
BigDecimal totalInputNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP); BigDecimal totalInputNum = BigDecimal.ZERO.setScale(3, RoundingMode.HALF_UP);

View File

@ -29,6 +29,9 @@ public class PurchaseQueryDto {
@ApiModelProperty(value = "登录用户id") @ApiModelProperty(value = "登录用户id")
private Long userId; private Long userId;
@ApiModelProperty(value = "所属公司")
private Long companyId;
@ApiModelProperty(value = "任务单号") @ApiModelProperty(value = "任务单号")
private String code; private String code;

View File

@ -18,6 +18,7 @@ import com.bonus.material.basic.mapper.BmFileInfoMapper;
import com.bonus.material.basic.service.IBmConfigService; import com.bonus.material.basic.service.IBmConfigService;
import com.bonus.material.codeCollection.domain.WsMaInfo; import com.bonus.material.codeCollection.domain.WsMaInfo;
import com.bonus.material.codeCollection.mapper.WsMaInfoMapper; import com.bonus.material.codeCollection.mapper.WsMaInfoMapper;
import com.bonus.material.ma.service.ITypeService;
import com.bonus.material.purchase.config.RemoteConfig; import com.bonus.material.purchase.config.RemoteConfig;
import com.bonus.common.biz.domain.purchase.PurchaseDto; import com.bonus.common.biz.domain.purchase.PurchaseDto;
import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.PurchaseCheckDetails;
@ -86,6 +87,8 @@ public class PurchaseBindServiceImpl implements IPurchaseBindService {
@Resource @Resource
private BmFileInfoMapper bmFileInfoMapper; private BmFileInfoMapper bmFileInfoMapper;
@Resource
private ITypeService iTypeService;
// 引入新购任务阶段常量 // 引入新购任务阶段常量
private static final int PURCHASE_TASK_STAGE_MANAGE = 1; private static final int PURCHASE_TASK_STAGE_MANAGE = 1;
private static final int PURCHASE_TASK_STAGE_CHECK = 2; private static final int PURCHASE_TASK_STAGE_CHECK = 2;
@ -607,7 +610,11 @@ public class PurchaseBindServiceImpl implements IPurchaseBindService {
@Override @Override
public List<PurchaseCheckInfo> selectPurchaseCheckInfoList(PurchaseQueryDto purchaseQueryDto) { public List<PurchaseCheckInfo> selectPurchaseCheckInfoList(PurchaseQueryDto purchaseQueryDto) {
log.info("=== MaterialLeaseInfoServiceImpl.selectPurchaseCheckInfoList开始执行purchaseQueryDto: {}", purchaseQueryDto); log.info("=== MaterialLeaseInfoServiceImpl.selectPurchaseCheckInfoList开始执行purchaseQueryDto: {}", purchaseQueryDto);
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
purchaseQueryDto.setCompanyId(companyId);
final List<PurchaseCheckInfo> purchaseCheckInfos = purchaseCheckInfoMapper.selectPurchaseCheckInfoJoinList(purchaseQueryDto); final List<PurchaseCheckInfo> purchaseCheckInfos = purchaseCheckInfoMapper.selectPurchaseCheckInfoJoinList(purchaseQueryDto);
if (org.springframework.util.CollectionUtils.isEmpty(purchaseCheckInfos)) { if (org.springframework.util.CollectionUtils.isEmpty(purchaseCheckInfos)) {
return Collections.emptyList(); return Collections.emptyList();

View File

@ -5,6 +5,7 @@ import com.bonus.common.core.exception.ServiceException;
import com.bonus.common.core.utils.DateUtils; import com.bonus.common.core.utils.DateUtils;
import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.security.utils.SecurityUtils; import com.bonus.common.security.utils.SecurityUtils;
import com.bonus.material.ma.service.ITypeService;
import com.bonus.material.purchase.domain.dto.PurchaseCheckFileDto; import com.bonus.material.purchase.domain.dto.PurchaseCheckFileDto;
import com.bonus.material.purchase.mapper.PurchaseCheckFileMapper; import com.bonus.material.purchase.mapper.PurchaseCheckFileMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -29,6 +30,8 @@ public class PurchaseCheckDetailsServiceImpl implements IPurchaseCheckDetailsSer
@Resource @Resource
private PurchaseCheckFileMapper purchaseCheckFileMapper; private PurchaseCheckFileMapper purchaseCheckFileMapper;
@Resource
private ITypeService iTypeService;
/** /**
* 查询新购验收任务详细 * 查询新购验收任务详细
* *
@ -108,6 +111,11 @@ public class PurchaseCheckDetailsServiceImpl implements IPurchaseCheckDetailsSer
public int updatePurchaseCheckDetails(PurchaseCheckDetails purchaseCheckDetails) { public int updatePurchaseCheckDetails(PurchaseCheckDetails purchaseCheckDetails) {
purchaseCheckDetails.setUpdateTime(DateUtils.getNowDate()); purchaseCheckDetails.setUpdateTime(DateUtils.getNowDate());
try { try {
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
purchaseCheckDetails.setCompanyId(companyId);
return purchaseCheckDetailsMapper.updatePurchaseCheckDetails(purchaseCheckDetails); return purchaseCheckDetailsMapper.updatePurchaseCheckDetails(purchaseCheckDetails);
} catch (Exception e) { } catch (Exception e) {
throw new ServiceException("错误信息描述"); throw new ServiceException("错误信息描述");

View File

@ -26,6 +26,7 @@ import com.bonus.material.countersign.domain.SignProcessVo;
import com.bonus.material.countersign.mapper.SignProcessMapper; import com.bonus.material.countersign.mapper.SignProcessMapper;
import com.bonus.material.ma.domain.Type; import com.bonus.material.ma.domain.Type;
import com.bonus.material.ma.mapper.TypeMapper; import com.bonus.material.ma.mapper.TypeMapper;
import com.bonus.material.ma.service.ITypeService;
import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.PurchaseCheckDetails;
import com.bonus.material.purchase.domain.PurchaseSignRecord; import com.bonus.material.purchase.domain.PurchaseSignRecord;
import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto;
@ -36,6 +37,7 @@ import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo;
import com.bonus.material.purchase.mapper.PurchaseMacodeInfoMapper; import com.bonus.material.purchase.mapper.PurchaseMacodeInfoMapper;
import com.bonus.material.task.domain.TmTask; import com.bonus.material.task.domain.TmTask;
import com.bonus.material.task.mapper.TmTaskMapper; import com.bonus.material.task.mapper.TmTaskMapper;
import com.bonus.system.api.domain.SysUser;
import com.bonus.system.api.model.LoginUser; import com.bonus.system.api.model.LoginUser;
import io.swagger.models.auth.In; import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -84,6 +86,11 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
@Resource @Resource
private SignProcessMapper signProcessMapper; private SignProcessMapper signProcessMapper;
/**
* jsk
*/
@Resource
private ITypeService iTypeService;
// 引入新购任务阶段常量 // 引入新购任务阶段常量
private static final int PURCHASE_TASK_STAGE_MANAGE = 1; private static final int PURCHASE_TASK_STAGE_MANAGE = 1;
private static final int PURCHASE_TASK_STAGE_CHECK = 2; private static final int PURCHASE_TASK_STAGE_CHECK = 2;
@ -198,7 +205,11 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
@Override @Override
public List<PurchaseCheckInfo> selectPurchaseCheckInfoList(PurchaseQueryDto purchaseQueryDto) { public List<PurchaseCheckInfo> selectPurchaseCheckInfoList(PurchaseQueryDto purchaseQueryDto) {
log.info("=== MaterialLeaseInfoServiceImpl.selectPurchaseCheckInfoList开始执行purchaseQueryDto: {}", purchaseQueryDto); log.info("=== MaterialLeaseInfoServiceImpl.selectPurchaseCheckInfoList开始执行purchaseQueryDto: {}", purchaseQueryDto);
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
purchaseQueryDto.setCompanyId(companyId);
final List<PurchaseCheckInfo> purchaseCheckInfos = purchaseCheckInfoMapper.selectPurchaseCheckInfoJoinList(purchaseQueryDto); final List<PurchaseCheckInfo> purchaseCheckInfos = purchaseCheckInfoMapper.selectPurchaseCheckInfoJoinList(purchaseQueryDto);
if (CollectionUtils.isEmpty(purchaseCheckInfos)) { if (CollectionUtils.isEmpty(purchaseCheckInfos)) {
return Collections.emptyList(); return Collections.emptyList();
@ -682,6 +693,11 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
tmTaskMapper.insertTmTask(tmTask); tmTaskMapper.insertTmTask(tmTask);
Long taskId = tmTask.getTaskId(); Long taskId = tmTask.getTaskId();
purchaseCheckInfo.getPurchaseCheckInfo().setTaskId(taskId); purchaseCheckInfo.getPurchaseCheckInfo().setTaskId(taskId);
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
purchaseCheckInfo.getPurchaseCheckInfo().setCompanyId(companyId);
final int count = purchaseCheckInfoMapper.insertPurchaseCheckInfo(purchaseCheckInfo.getPurchaseCheckInfo()); final int count = purchaseCheckInfoMapper.insertPurchaseCheckInfo(purchaseCheckInfo.getPurchaseCheckInfo());
if (0 < count) { if (0 < count) {
return insertPurchaseCheckDetails(purchaseCheckInfo.getPurchaseCheckDetailsList(), taskId); return insertPurchaseCheckDetails(purchaseCheckInfo.getPurchaseCheckDetailsList(), taskId);
@ -703,8 +719,13 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
*/ */
private AjaxResult insertPurchaseCheckDetails(List<PurchaseCheckDetails> purchaseCheckDetailsList, Long taskId) { private AjaxResult insertPurchaseCheckDetails(List<PurchaseCheckDetails> purchaseCheckDetailsList, Long taskId) {
if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) { if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) {
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
for (PurchaseCheckDetails details : purchaseCheckDetailsList) { for (PurchaseCheckDetails details : purchaseCheckDetailsList) {
details.setTaskId(taskId); details.setTaskId(taskId);
details.setCompanyId(companyId);
details.setStatus(Objects.equals(PurchaseTaskStatusEnum.TO_CHECK_AFTER_REJECT.getStatus(), details.getStatus()) ? details.setStatus(Objects.equals(PurchaseTaskStatusEnum.TO_CHECK_AFTER_REJECT.getStatus(), details.getStatus()) ?
PurchaseTaskStatusEnum.TO_CHECK.getStatus() : PurchaseTaskStatusEnum.TO_CHECK.getStatus() :
PurchaseTaskStatusEnum.TO_NOTICE.getStatus()); PurchaseTaskStatusEnum.TO_NOTICE.getStatus());
@ -1093,6 +1114,11 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
final Long[] ids = {purchaseCheckDto.getPurchaseCheckInfo().getId()}; final Long[] ids = {purchaseCheckDto.getPurchaseCheckInfo().getId()};
purchaseCheckDetailsMapper.deletePurchaseCheckDetailsByParentIds(ids); purchaseCheckDetailsMapper.deletePurchaseCheckDetailsByParentIds(ids);
insertPurchaseCheckDetails(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); insertPurchaseCheckDetails(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId());
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
purchaseCheckDto.getPurchaseCheckInfo().setCompanyId(companyId);
purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo()); purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo());
return true; return true;
} catch (final Exception e) { } catch (final Exception e) {
@ -1180,9 +1206,14 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
bmFileInfoMapper.deleteBmFileList(purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); bmFileInfoMapper.deleteBmFileList(purchaseCheckDto.getPurchaseCheckInfo().getTaskId());
} }
try { try {
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
final Long[] ids = {purchaseCheckDto.getPurchaseCheckInfo().getId()}; final Long[] ids = {purchaseCheckDto.getPurchaseCheckInfo().getId()};
purchaseCheckDetailsMapper.deleteDetails(ids); purchaseCheckDetailsMapper.deleteDetails(ids);
insertPurchaseCheckDetailsInfo(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); insertPurchaseCheckDetailsInfo(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId());
purchaseCheckDto.getPurchaseCheckInfo().setCompanyId(companyId);
return purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo()); return purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo());
} catch (final Exception e) { } catch (final Exception e) {
throw new ServiceException("错误信息描述"); throw new ServiceException("错误信息描述");
@ -1198,8 +1229,13 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
private int insertPurchaseCheckDetailsInfo(List<PurchaseCheckDetails> purchaseCheckDetailsList, Long taskId) { private int insertPurchaseCheckDetailsInfo(List<PurchaseCheckDetails> purchaseCheckDetailsList, Long taskId) {
int count = 0; int count = 0;
if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) { if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) {
/**
* jsk
*/
Long companyId=iTypeService.getUserDeptId();
for (PurchaseCheckDetails details : purchaseCheckDetailsList) { for (PurchaseCheckDetails details : purchaseCheckDetailsList) {
details.setTaskId(taskId); details.setTaskId(taskId);
details.setCompanyId(companyId);
details.setStatus(Objects.equals(PurchaseTaskStatusEnum.TO_CHECK_AFTER_REJECT.getStatus(), details.getStatus()) ? details.setStatus(Objects.equals(PurchaseTaskStatusEnum.TO_CHECK_AFTER_REJECT.getStatus(), details.getStatus()) ?
PurchaseTaskStatusEnum.TO_CHECK.getStatus() : PurchaseTaskStatusEnum.TO_CHECK.getStatus() :
PurchaseTaskStatusEnum.TO_NOTICE.getStatus()); PurchaseTaskStatusEnum.TO_NOTICE.getStatus());

View File

@ -47,6 +47,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="userId != null "> <if test="userId != null ">
and mtm.user_id = #{userId} and mtm.user_id = #{userId}
</if> </if>
<if test="companyId != null and companyId != ''">
and pcd.company_id=#{companyId}
</if>
<if test="keyWord != null and keyWord != ''"> <if test="keyWord != null and keyWord != ''">
AND ( AND (
mt2.type_name LIKE CONCAT('%', #{keyWord}, '%') mt2.type_name LIKE CONCAT('%', #{keyWord}, '%')

View File

@ -149,8 +149,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="supplierId != null "> and pci.supplier_id = #{supplierId}</if> <if test="supplierId != null "> and pci.supplier_id = #{supplierId}</if>
<if test="taxRate != null "> and pci.tax_rate = #{taxRate}</if> <if test="taxRate != null "> and pci.tax_rate = #{taxRate}</if>
<if test="taskStatus != null "> and t.task_status = #{taskStatus}</if> <if test="taskStatus != null "> and t.task_status = #{taskStatus}</if>
<if test="companyId != null "> and pci.company_id = #{companyId}</if>
order by pci.create_time desc order by pci.create_time desc
</select> </select>