lyh
2025-02-20 757bfa4a2865b3066e82a7e80bea1efd8bdcd72c
去除原有日志  默认新增管理员权限
已修改8个文件
205 ■■■■■ 文件已修改
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/entity/ProductPermission.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/IProductPermissionService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java 51 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/PartsInfoServiceImpl.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessStreamServiceImpl.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductPermissionServiceImpl.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/WorkStepServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/entity/ProductPermission.java
@@ -14,6 +14,11 @@
@NoArgsConstructor
@TableName(value = "nc_product_permission")
public class ProductPermission {
    public ProductPermission(String productId, String userId) {
        this.productId = productId;
        this.userId = userId;
    }
    @TableId(value = "id")
    private String id;
    @TableField(value = "product_id")
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/IProductPermissionService.java
@@ -50,4 +50,13 @@
     * @return
     */
    List<ProductPermission> getByProductId(String productId);
    /**
     * 新增权限数据
     * @param id
     * @param userId
     * @param type
     * @return
     */
    boolean add(String id,String userId,String type);
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java
@@ -52,9 +52,9 @@
    @Autowired
    private IDocInfoService docInfoService;
    @Autowired
    private INcLogInfoService iNcLogInfoService;
    @Autowired
    private IDocRelativeService iDocRelativeService;
    @Autowired
    private IProductPermissionService productPermissionService;
    @Override
    @Transactional(rollbackFor = {Exception.class})
@@ -93,15 +93,6 @@
        }
        componentInfo.setComponentStatus(1);
        //添加日志
        NcLogInfo ncLogInfo = new NcLogInfo();
        //模块
        ncLogInfo.setModuleInfo("产品结构树");
        //类型
        ncLogInfo.setOperateType(2);
        //日志内容
        ncLogInfo.setLogContent("部件名称:"+componentInfo.getComponentName()+",部件代号:"+componentInfo.getComponentCode());
        iNcLogInfoService.saveLogNcInfos(ncLogInfo);
        boolean b = super.save(componentInfo);
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
@@ -131,30 +122,11 @@
            if(!b)
                ExceptionCast.cast(CommonCode.FAIL);
        }
        ComponentPermission permission = new ComponentPermission();
        permission.setComponentId(componentInfo.getComponentId());
        permission.setUserId(userId);
        b = componentPermissionService.save(permission);
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        b = productPermissionService.add(componentInfo.getComponentId(), userId,"2");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //去除默认新增工序,转为手动添加
        /*/添加默认工序
        ProcessStream processStream = new ProcessStream();
        processStream.setProductId(componentInfo.getProductId());
        processStream.setComponentId(componentInfo.getComponentId());
        processStream.setProcessCode("1");
        //添加日志
        NcLogInfo ncLogInfogx = new NcLogInfo();
        //模块
        ncLogInfogx.setModuleInfo("产品结构树");
        //类型
        ncLogInfogx.setOperateType(2);
        //日志内容
        ncLogInfogx.setLogContent("部件名称:"+componentInfo.getComponentName()+"生成默认工序,工序号:"+processStream.getProcessCode());
        iNcLogInfoService.saveLogNcInfos(ncLogInfogx);
        b = processStreamService.save(processStream);
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);*/
        //添加权限
        PermissionStream stream = new PermissionStream();
        stream.setUserId(userId);
@@ -182,17 +154,6 @@
        componentInfo.setComponentStatus(null);
        componentInfo.setRankLevel(null);
        componentInfo.setProductId(null);
        //添加日志
        NcLogInfo ncLogInfo = new NcLogInfo();
        //模块
        ncLogInfo.setModuleInfo("产品结构树");
        //类型
        ncLogInfo.setOperateType(3);
        //日志内容
        ncLogInfo.setLogContent("修改部件名称:"+productInfoMapper.selectById(en.getProductId()).getProductName()+"子集部件");
        //修改保存备注
        ncLogInfo.setRemark(JSONObject.toJSONString(en));
        iNcLogInfoService.saveLogNcInfos(ncLogInfo);
        boolean b = super.updateById(componentInfo);
        if(!b)
            return false;
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/PartsInfoServiceImpl.java
@@ -57,6 +57,8 @@
    private INcLogInfoService iNcLogInfoService;
    @Autowired
    private IDocRelativeService iDocRelativeService;
    @Autowired
    private IProductPermissionService productPermissionService;
    @Override
    @Transactional(rollbackFor = {Exception.class})
    public boolean addPartsInfo(PartsInfo partsInfo) {
@@ -114,12 +116,10 @@
        }
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        PartsPermission permission = new PartsPermission();
        permission.setPartsId(partsInfo.getPartsId());
        permission.setUserId(userId);
        b = partsPermissionService.save(permission);
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        b = productPermissionService.add(partsInfo.getPartsId(), userId,"3");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //添加用户权限
        PermissionStream stream = new PermissionStream();
        stream.setProductId(partsInfo.getProductId());
@@ -145,17 +145,6 @@
        partsInfo.setPartsStatus(null);
        partsInfo.setProductId(null);
        partsInfo.setComponentId(null);
        //添加日志
        NcLogInfo ncLogInfo = new NcLogInfo();
        //模块
        ncLogInfo.setModuleInfo("产品结构树");
        //类型
        ncLogInfo.setOperateType(3);
        //修改保存备注
        ncLogInfo.setRemark(JSONObject.toJSONString(en));
        //日志内容
        ncLogInfo.setLogContent("修改部件名称:"+productInfoMapper.selectById(en.getProductId()).getProductName()+"子集零件");
        iNcLogInfoService.saveLogNcInfos(ncLogInfo);
        boolean b = super.updateById(partsInfo);
        if(!b)
            return false;
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessStreamServiceImpl.java
@@ -47,8 +47,6 @@
    @Lazy
    private IDeviceInfoService deviceInfoService;
    @Autowired
    private INcLogInfoService iNcLogInfoService;
    @Autowired
    private IPermissionStreamService permissionStreamService;
    @Autowired
    private IProcessionDepartmentService processionDepartmentService;
@@ -58,6 +56,8 @@
    private IDocRelativeService iDocRelativeService;
    @Autowired
    private IProcessStreamPermissionService processStreamPermissionService;
    @Autowired
    private IProductPermissionService productPermissionService;
    @Override
    @Transactional(rollbackFor = {Exception.class})
@@ -104,10 +104,10 @@
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        //添加用户权限
        ProcessionPermission permission = new ProcessionPermission();
        permission.setProcessId(stream.getProcessId());
        permission.setUserId(userId);
        processStreamPermissionService.save(permission);
        b = productPermissionService.add(stream.getProcessId(), userId,"5");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //添加权限验证
        PermissionStream permissionStream = new PermissionStream();
        permissionStream.setUserId(userId);
@@ -136,16 +136,6 @@
        stream.setPartsId(null);
        stream.setProcessName(stream.getProcessName().toUpperCase());
        stream.setProcessCode(null);
        //添加日志
        NcLogInfo ncLogInfo = new NcLogInfo();
        //模块
        ncLogInfo.setModuleInfo("产品结构树");
        //类型
        ncLogInfo.setOperateType(3);
        //日志内容
        ncLogInfo.setLogContent("工序号:"+en.getProcessCode());
        ncLogInfo.setRemark(JSONObject.toJSONString(en));
        iNcLogInfoService.saveLogNcInfos(ncLogInfo);
        boolean b = super.updateById(stream);
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java
@@ -60,8 +60,6 @@
    @Autowired
    private IWorkStepService workStepService;
    @Autowired
    private INcLogInfoService iNcLogInfoService;
    @Autowired
    private IWorkStepDepartmentService workStepDepartmentService;
    @Autowired
    private IProcessionDepartmentService processionDepartmentService;
@@ -96,10 +94,7 @@
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        ProductPermission permission = new ProductPermission();
        permission.setProductId(productInfo.getProductId());
        permission.setUserId(userId);
        b = productPermissionService.save(permission);
        b = productPermissionService.add(productInfo.getProductId(), userId,"1");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductPermissionServiceImpl.java
@@ -3,12 +3,17 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.dnc.entity.ProductPermission;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.ProductPermissionMapper;
import org.jeecg.modules.dnc.response.CommonCode;
import org.jeecg.modules.dnc.service.*;
import org.jeecg.modules.dnc.ucenter.UserDepartExt;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.jeecg.modules.system.entity.DncDevicePermission;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.dnc.service.IProductPermissionService;
import org.jeecg.modules.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -18,6 +23,16 @@
@Service
public class ProductPermissionServiceImpl extends ServiceImpl<ProductPermissionMapper, ProductPermission> implements IProductPermissionService {
    @Autowired
    private IComponentPermissionService componentPermissionService;
    @Autowired
    private IPartsPermissionService partsPermissionService;
    @Autowired
    private IProcessStreamPermissionService processStreamPermissionService;
    @Autowired
    private IWorkStepPermissionService workStepPermissionService;
    @Autowired
    private ISysUserService sysUserService;
    @Override
    public ProductPermission getByProductIdAndUserId(String productId, String userId) {
        if(!ValidateUtil.validateString(productId) || !ValidateUtil.validateString(userId))
@@ -69,4 +84,61 @@
            list = Collections.emptyList();
        return list;
    }
    /**
     * 新增权限数据
     * @param id
     * @param userId
     * @param type
     * @return
     */
    @Override
    public boolean add(String id, String userId, String type) {
        // 验证参数有效性
        if (!ValidateUtil.validateString(userId) || !ValidateUtil.validateString(id) || !ValidateUtil.validateString(type)) {
            return false;
        }
        // 获取管理员用户
        SysUser adminUser = sysUserService.getUserByName("admin");
        try {
            boolean isAdmin = userId.equals(adminUser.getId());
            savePermission(id, userId, type);
            if (!isAdmin) {
                savePermission(id, adminUser.getId(), type);
            }
            return true;
        } catch (Exception e) {
            ExceptionCast.cast(CommonCode.INVALID_PARAM);
            return false;
        }
    }
    private void savePermission(String id, String userId, String type) {
        switch (type) {
            case "1":
                // 组件权限
                super.save(new ProductPermission(id, userId));
                break;
            case "2":
                // 部件权限
                componentPermissionService.save(new ComponentPermission(id, userId));
                break;
            case "3":
                // 零件权限
                partsPermissionService.save(new PartsPermission(id, userId));
                break;
            case "5":
                // 工序权限
                processStreamPermissionService.save(new ProcessionPermission(id, userId));
                break;
            case "6":
                // 工序步骤权限
                workStepPermissionService.save(new WorkStepPermission(id, userId));
                break;
            default:
                // 处理未知类型
                throw new IllegalArgumentException("Unknown permission type: " + type);
        }
    }
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/WorkStepServiceImpl.java
@@ -52,6 +52,9 @@
    @Autowired
    private IDocRelativeService iDocRelativeService;
    @Autowired
    private IProductPermissionService productPermissionService;
    @Override
    public List<WorkStep> getByUserPerms(String userId) {
        if(!ValidateUtil.validateString(userId))
@@ -110,10 +113,11 @@
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        //添加用户权限
        WorkStepPermission workStepPermission = new WorkStepPermission();
        workStepPermission.setUserId(userId);
        workStepPermission.setStepId(workStep.getId());
        workStepPermissionService.save(workStepPermission);
        //添加用户权限
        b = productPermissionService.add(workStep.getId(), userId,"6");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //添加权限验证
        PermissionStream permissionStream = new PermissionStream();
        permissionStream.setUserId(userId);