From 9a8d9ef43c70fe6d70b494f49b19e5ca6ef01d4b Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期五, 14 三月 2025 17:52:46 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java | 89 +++++++++++++++++++++++++++++++++++++------- 1 files changed, 75 insertions(+), 14 deletions(-) diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java index 9a775e3..4204924 100644 --- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java +++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java @@ -1,11 +1,13 @@ package org.jeecg.modules.dnc.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; +import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.dnc.dto.ComponentExt; import org.jeecg.modules.dnc.entity.*; @@ -106,7 +108,7 @@ ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR); } //娣诲姞缁撴瀯鏍� - ProductMix productMix = new ProductMix(Long.parseLong(productInfo.getProductId()),0,productInfo.getProductName(),productInfo.getProductNo(),"1"); + ProductMix productMix = new ProductMix(Long.parseLong(productInfo.getProductId()),0L,productInfo.getProductName(),productInfo.getProductNo(),1); productMixService.save(productMix); //娣诲姞鐢ㄦ埛鏉冮檺 PermissionStreamNew stream = new PermissionStreamNew(); @@ -131,6 +133,11 @@ productInfo.setProductId(id); productInfo.setProductStatus(null); boolean b = super.updateById(productInfo); + //鍚屾淇敼缁撴瀯鏍� + ProductMix productMix = productMixService.getById(Long.parseLong(id)); + productMix.setName(productInfo.getProductName()); + productMix.setCode(productInfo.getProductNo()); + productMixService.updateById(productMix); if (!b) return false; ProductPermission permission = productPermissionService.getByProductIdAndUserId(id, userId); @@ -946,6 +953,51 @@ return false; } + @Override + public Result<?> getTreeById(String id, Integer type){ + if (StrUtil.isNotEmpty(id)||type!=null){ + switch (type){ + case 1: + //浜у搧 + QueryWrapper<ProductInfo> productInfoQueryWrapper = new QueryWrapper<>(); + productInfoQueryWrapper.eq("product_id",id); + List<ProductInfo> productInfos = this.list(productInfoQueryWrapper); + return Result.OK(productInfos); + case 2: + //缁勪欢 + QueryWrapper<ComponentInfo> componentInfoQueryWrapper = new QueryWrapper<>(); + componentInfoQueryWrapper.eq("component_id",id); + List<ComponentInfo> componentInfos = componentInfoService.list(componentInfoQueryWrapper); + return Result.OK(componentInfos); + case 3: + //闆朵欢 + QueryWrapper<PartsInfo> partsInfoQueryWrapper = new QueryWrapper<>(); + partsInfoQueryWrapper.eq("parts_id",id); + List<PartsInfo> partsInfos = partsInfoService.list(partsInfoQueryWrapper); + return Result.OK(partsInfos); + case 4: + //宸ヨ壓瑙勫垝鐗堟湰 + QueryWrapper<ProcessSpecVersion> processSpecVersionQueryWrapper = new QueryWrapper<>(); + processSpecVersionQueryWrapper.eq("id",id); + List<ProcessSpecVersion> processSpecVersions = processSpecVersionService.list(processSpecVersionQueryWrapper); + return Result.OK(processSpecVersions); + case 5: + //宸ュ簭 + QueryWrapper<ProcessStream> processStreamQueryWrapper = new QueryWrapper<>(); + processStreamQueryWrapper.eq("process_id",id); + List<ProcessStream> processStreams = processStreamService.list(processStreamQueryWrapper); + return Result.OK(processStreams); + case 6: + //宸ユ + QueryWrapper<WorkStep> workStepQueryWrapper = new QueryWrapper<>(); + workStepQueryWrapper.eq("id",id); + List<WorkStep> workSteps = workStepService.list(workStepQueryWrapper); + return Result.OK(workSteps); + } + } + return Result.error("鍙傛暟閿欒"); + } + /** * 楠岃瘉杈撳叆鍙傛暟 */ @@ -997,8 +1049,11 @@ .map(PartsInfo::getPartsId) .collect(Collectors.toList()); handlePartsPermissions(partsIds, userList, partsPermissionList, permissionStreamList); - List<String> psvIds = processSpecVersionService.getByPartsIds(partsIds).stream().map(ProcessSpecVersion::getId).collect(Collectors.toList()); - handlePsvPermissions(psvIds, userList, processSpecVersionPermissionList, permissionStreamList); + List<ProcessSpecVersion> processSpecVersionList = processSpecVersionService.getByPartsIds(partsIds); + if (processSpecVersionList!= null &&!processSpecVersionList.isEmpty()) { + List<String> psvIds = processSpecVersionList.stream().map(ProcessSpecVersion::getId).collect(Collectors.toList()); + handlePsvPermissions(psvIds, userList, processSpecVersionPermissionList, permissionStreamList); + } List<ProcessStream> processStreamList = processStreamService.getByComponentIdList(productId, componentIds, partsIds); processStreamApi(productId, userList, processionPermissionList, workStepPermissionList, permissionStreamList, processStreamList); } @@ -1093,8 +1148,8 @@ componentPermissionList.add(cp); ComponentInfo cpInfo = componentInfoMap.get(cp.getComponentId()); PermissionStreamNew s = new PermissionStreamNew(); - s.setBusinessId(cpInfo.getProductId()); - s.setBusinessType("1"); + s.setBusinessId(cpInfo.getComponentId()); + s.setBusinessType("2"); s.setUserId(cp.getUserId()); permissionStreamList.add(s); } @@ -1394,6 +1449,8 @@ .collect(Collectors.toList()); } componentIds.add(componentInfo.getComponentId()); + + handleRelativePermissions(componentInfo.getProductId(), componentIds, null, null,null, userList); } }else { @@ -2067,18 +2124,22 @@ private void handlePartsRemovals(String productId, List<String> componentIds,Collection<SysUser> userList) { List<PartsInfo> partsInfoList = partsInfoService.getByComponentIdList(productId, componentIds); - partsInfoList.forEach(item->{ - partsInfoService.assignRemoveUser(item,userList); - //鍒犻櫎 - handlePartRelatedRemovals(item, userList); - }); + if (partsInfoList!=null){ + partsInfoList.forEach(item->{ + partsInfoService.assignRemoveUser(item,userList); + //鍒犻櫎 + handlePartRelatedRemovals(item, userList); + }); + } } private void handlePartsDepartmentRemovals(String productId, List<String> componentIds, Collection<MdcProduction> mdcProductionList) { List<PartsInfo> partsInfoList = partsInfoService.getByComponentIdList(productId, componentIds); - partsInfoList.forEach(item->{ - partsInfoService.assignRemoveDepart(item,mdcProductionList); - handlePartRelatedDepartmentRemovals(item, mdcProductionList); - }); + if (partsInfoList!=null) { + partsInfoList.forEach(item->{ + partsInfoService.assignRemoveDepart(item,mdcProductionList); + handlePartRelatedDepartmentRemovals(item, mdcProductionList); + }); + } } private void handleComponentRelatedRemovals(ComponentInfo componentInfo, Collection<SysUser> userList, Collection<MdcProduction> mdcProductionList) { -- Gitblit v1.9.3