lyh
18 小时以前 bc8cd378fd72f43e66120c540f57f630580aa093
Merge remote-tracking branch 'origin/master'
已修改4个文件
100 ■■■■■ 文件已修改
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/listener/FileListener.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentLeanOut.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamEquipmentLeanOutRequest.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentLeanOutServiceImpl.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/listener/FileListener.java
@@ -26,7 +26,7 @@
    @Override
    public void onStart(FileAlterationObserver observer) {
        log.info("开始监听目录: {}", observer.getDirectory().getAbsolutePath());
//        log.info("开始监听目录: {}", observer.getDirectory().getAbsolutePath());
    }
    @Override
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentLeanOut.java
@@ -126,6 +126,10 @@
    @ApiModelProperty(value = "使用车间确认人")
    @Dict(dicCode = "sys_user, realname, username")
    private String useConfirmUser;
    /**使用车间确认审批类型*/
    @ApiModelProperty(value = "使用车间确认审批类型")
    @Dict(dicCode = "approved_rejected")
    private String useConfirmDealType;
    /**确认意见*/
    @Excel(name = "使用车间确认意见", width = 15)
    @ApiModelProperty(value = "使用车间确认意见")
@@ -140,6 +144,10 @@
    @ApiModelProperty(value = "借用车间确认人")
    @Dict(dicCode = "sys_user, realname, username")
    private String leanOutConfirmUser;
    /**借用车间确认审批类型*/
    @ApiModelProperty(value = "借用车间确认审批类型")
    @Dict(dicCode = "approved_rejected")
    private String leanOutConfirmDealType;
    /**借用车间确认意见*/
    @Excel(name = "借用车间确认意见", width = 15)
    @ApiModelProperty(value = "借用车间确认意见")
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamEquipmentLeanOutRequest.java
@@ -159,6 +159,11 @@
    @ApiModelProperty(value = "使用车间确认人")
    private String useConfirmUser;
    /**
     * 使用车间确认审批类型
     */
    @ApiModelProperty(value = "使用车间确认审批类型")
    private String useConfirmDealType;
    /**
     * 确认意见
     */
    @ApiModelProperty(value = "使用车间确认意见")
@@ -176,6 +181,11 @@
    @ApiModelProperty(value = "借用车间确认人")
    private String leanOutConfirmUser;
    /**
     * 借用车间确认审批类型
     */
    @ApiModelProperty(value = "借用车间确认审批类型")
    private String leanOutConfirmDealType;
    /**
     * 借用车间确认意见
     */
    @ApiModelProperty(value = "借用车间确认意见")
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentLeanOutServiceImpl.java
@@ -86,8 +86,6 @@
            //没有选择设备,根据车间过滤设备
            queryWrapper.exists("select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id ", sysUser.getId());
        }
        //控制待提交状态的数据只能本人查看
        queryWrapper.and(i -> i.ne("wmo.lean_status", EquipmentLeanOutStatusEnum.WAIT_SUBMIT).or().eq("wmo.lean_person", sysUser.getUsername()));
        //查询条件过滤
        if (query != null) {
            if (StringUtils.isNotBlank(query.getEquipmentId())) {
@@ -194,7 +192,7 @@
            throw new JeecgBootException("要提交的数据不存在,请刷新重试!");
        }
        if (!EquipmentLeanOutStatusEnum.WAIT_SUBMIT.name().equals(entity.getLeanStatus())) {
            throw new JeecgBootException("当前数据状态不允许编辑!");
            throw new JeecgBootException("该工单已进行过提交!");
        }
        //检查设备
        EamEquipment equipment = eamEquipmentService.getById(entity.getEquipmentId());
@@ -204,9 +202,15 @@
        if (!AssetStatusEnum.NORMAL.name().equals(equipment.getAssetStatus())) {
            throw new JeecgBootException("此设备当前资产状态不允许借出!");
        }
        // 分配给使用单位领导
        List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0008);
        if (CollectionUtil.isEmpty(userSelectors)) {
            throw new JeecgBootException("设备未分配给单位领导,无法进入下级审批!");
        }
        List<String> usernames = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        if (sysUser == null) {
            throw new JeecgBootException("当前用户无法编辑借用记录!");
        if (sysUser == null || !BusinessCodeConst.PCR0004.equals(sysUser.getPost())) {
            throw new JeecgBootException("不是设备管理员,无法提交此工单!");
        }
        UpdateWrapper<EamEquipmentLeanOut> updateWrapper = new UpdateWrapper<>();
        updateWrapper.set("lean_status", EquipmentLeanOutStatusEnum.WAIT_APPROVAL_OUT.name());
@@ -230,8 +234,6 @@
            variables.put("comment", entity.getLeanReason());
        }
        variables.put("proofreading", true);
        List<String> usernames = new ArrayList<>();
        usernames.add(equipment.getEquipmentManager());
        variables.put("NextAssignee", usernames);
        Result result = flowDefinitionService.startProcessInstanceByKey("equipment_lean_out", variables);
        if (result != null) {
@@ -259,9 +261,14 @@
        if (equipment == null) {
            throw new JeecgBootException("设备不存在!");
        }
        // 分配给借用单位领导
        List<UserSelector> userSelectors = sysUserService.selectOperatorList(entity.getLeanDepartId(), BusinessCodeConst.PCR0008);
        if (CollectionUtil.isEmpty(userSelectors)) {
            throw new JeecgBootException("设备未分配给单位领导,无法进入下级审批!");
        }
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        if (sysUser == null) {
            throw new JeecgBootException("当前用户无法编辑封存记录!");
        if (sysUser == null || !BusinessCodeConst.PCR0004.equals(sysUser.getPost())) {
            throw new JeecgBootException("不是设备管理员,无法提交此工单!");
        }
        //启动审批流程
        flowCommonService.initActBusiness("工单号:" + entity.getCode() + ";设备编号: " + equipment.getEquipmentCode() + ";进行设备归还",
@@ -271,11 +278,7 @@
        variables.put("organization", "新增归还默认归还流程");
        variables.put("comment", "新增归还默认归还流程");
        variables.put("proofreading", true);
        // 分配给设备管理员
        List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0004);
        if (CollectionUtil.isEmpty(userSelectors)) {
            throw new JeecgBootException("设备未分配给设备管理员,无法进入下级审批!");
        }
        List<String> usernames = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
        variables.put("NextAssignee", usernames);
        Result result = flowDefinitionService.startProcessInstanceByKey("equipment_return", variables);
@@ -361,10 +364,9 @@
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.WAIT_APPROVAL_IN.name());
                    } else {
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.REJECT.name());
                        equipment.setAssetStatus(AssetStatusEnum.LEAN_OUT.name());
                        equipment.setAssetStatus(AssetStatusEnum.NORMAL.name());
                        eamEquipmentService.updateById(equipment);
                    }
                    request.setComment("使用单位出厂审批结束");
                    break;
                case WAIT_APPROVAL_IN:
                    entity.setLeanOutApprovalUser(user.getUsername());
@@ -375,26 +377,33 @@
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.WAIT_RETURN.name());
                    } else {
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.REJECT.name());
                        equipment.setAssetStatus(AssetStatusEnum.LEAN_OUT.name());
                        equipment.setAssetStatus(AssetStatusEnum.NORMAL.name());
                        eamEquipmentService.updateById(equipment);
                    }
                    request.setComment("借用单位入厂审批结束");
                    break;
                case WAIT_CONFIRM_RETURN:
                    entity.setLeanOutConfirmUser(user.getUsername());
                    entity.setLeanOutConfirmComment(request.getLeanOutConfirmComment());
                    entity.setLeanOutConfirmTime(new Date());
                    entity.setLeanStatus(EquipmentLeanOutStatusEnum.WAIT_CONFIRM_BORROW.name());
                    request.setComment("借用单位归还审批结束");
                    entity.setLeanOutConfirmDealType(request.getLeanOutConfirmDealType());
                    if (CommonConstant.APPROVED.equals(request.getLeanOutConfirmDealType())) {
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.WAIT_CONFIRM_BORROW.name());
                    } else {
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.WAIT_RETURN.name());
                    }
                    break;
                case WAIT_CONFIRM_BORROW:
                    entity.setUseConfirmUser(user.getUsername());
                    entity.setUseConfirmComment(request.getUseConfirmComment());
                    entity.setUseConfirmTime(new Date());
                    entity.setLeanStatus(EquipmentLeanOutStatusEnum.COMPLETE.name());
                    equipment.setAssetStatus(AssetStatusEnum.NORMAL.name());
                    eamEquipmentService.updateById(equipment);
                    request.setComment("使用单位归还确认结束");
                    entity.setUseConfirmDealType(request.getUseConfirmDealType());
                    if (CommonConstant.APPROVED.equals(request.getUseConfirmDealType())) {
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.COMPLETE.name());
                        equipment.setAssetStatus(AssetStatusEnum.NORMAL.name());
                        eamEquipmentService.updateById(equipment);
                    } else {
                        entity.setLeanStatus(EquipmentLeanOutStatusEnum.WAIT_RETURN.name());
                    }
                    break;
            }
        }
@@ -433,31 +442,42 @@
                    // 驳回
                    values.put("approvalDealType", request.getUseApprovalDealType());
                }
                request.setComment("使用单位出厂审批完成");
                break;
            case WAIT_APPROVAL_IN:
                // 借用单位入厂审批完成
                values.put("dataId", entity.getId());
                values.put("organization", request.getLeanOutApprovalComment());
                values.put("comment", request.getLeanOutApprovalComment());
                request.setComment("借用单位入厂审批完成");
                break;
            case WAIT_CONFIRM_RETURN:
                // 归还单位确认完成
                values.put("dataId", entity.getId());
                values.put("organization", request.getLeanOutConfirmComment());
                values.put("comment", request.getLeanOutConfirmComment());
                // 获取下一步审批人
                userSelectors = sysUserService.selectOperatorList(equipment.getOrgId(), BusinessCodeConst.PCR0008);
                if (CollectionUtil.isEmpty(userSelectors)) {
                    throw new JeecgBootException("未分配使用车间单位领导,无法进入下级审批!");
                if (CommonConstant.APPROVED.equals(request.getLeanOutConfirmDealType())) {
                    // 通过
                    values.put("approvalDealType", request.getLeanOutConfirmDealType());
                    // 获取下一步审批人
                    userSelectors = sysUserService.selectOperatorList(equipment.getOrgId(), BusinessCodeConst.PCR0008);
                    if (CollectionUtil.isEmpty(userSelectors)) {
                        throw new JeecgBootException("未分配使用车间单位领导,无法进入下级审批!");
                    }
                    userApprovalList = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
                    values.put("NextAssignee", userApprovalList);
                } else {
                    // 驳回
                    values.put("approvalDealType", request.getLeanOutConfirmDealType());
                }
                userApprovalList = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
                values.put("NextAssignee", userApprovalList);
                request.setComment("借用单位领导确认完成");
                break;
            case WAIT_CONFIRM_BORROW:
                // 借出方确认完成
                values.put("dataId", entity.getId());
                values.put("organization", request.getUseConfirmComment());
                values.put("comment", request.getUseConfirmComment());
                request.setComment("使用单位领导确认完成");
                break;
        }
        request.setValues(values);